Decoda

Decoda — популярная среди разработчиков игр[1][2] интегрированная среда разработки профессионального уровня[3] для Windows, удобная для разработки и отладки скриптов-сценариев к существующим играм и игровым движкам, созданная в 2007 году студией Unknown Worlds Entertainment и открытая на условиях GPL в начале 2013 года[4][5].

Что важно знать
Decoda
Тип Интегрированная среда разработки/отладчик для Lua
Разработчик Unknown Worlds Entertaiment
Написана на C++
Интерфейс wxWidgets
Операционная система Windows
Первый выпуск 2007
Последняя версия 1.16 (25 октября 2011)
Бета-версия 1.17 beta 1 (28 марта 2014)
Репозиторий github.com/unknownworlds…
Лицензия GNU GPL, до 2013 года Shareware
Сайт unknownworlds.com/decoda/

Особенности

Decoda представляет собой IDE, по словам разработчиков «похожее на Visual Studio», позволяющее работать с проектом[6], редактировать исходные тексты lua-скриптов (с подсветкой синтаксиса) и отлаживать их, используя контрольные точки[3], пошаговое выполнение программы[7], наблюдение и изменение значений переменных[8] (в том числе lua-таблиц) и слежение за стеком вызовов[4][9][2].

В отдельном окне отладчика показываются все виртуальные lua-машины, запускаемые из отлаживаемого хост-приложения[10]. Подобно Visual Studio[11], Decoda может подключаться для отладки к уже запущенному приложению[12].

Уникальной особенностью Decoda является то, что она использует при этом файлы с отладочными символами, которые генерирует Visual Studio. В отличие от других Lua IDE (таких, как ZeroBrane Studio), Decoda не требует модифицировать исходный код отлаживаемого скрипта (путём подключения к нему библиотеки mobdebug), или скриптуемого приложения[3]. Lua скрипты для приложений, к которым Lua не прикомпилирован статически, а вызывается из динамической библиотеки, (к примеру, INSTEAD), могут отлаживаться даже если соответствующих отладочных символов у вас нет[13].

Decoda поддерживает интеграцию с системами управления версиями[4], для чего к ней могут подключаться Microsoft SCC плагины[14].

Недостатки

Версии Decoda, по крайней мере до 1.17, работают только под Windows (интерфейсная часть написана с использованием кроссплатформенной wxWidgets и может быть легко портирована, трудности — с используемой при отладке «магией»[15]) и только в 32-разрядном режиме[4]. Decoda не может отлаживать игры, собранные для Win64. При попытке сделать это, начиная с версии 1.16, выводится сообщение о соответствующей ошибке[16]. Поддержка Lua 5.2 появилась только в бета-версии Decoda[17].

История

Эта среда разработки была создана студией Unknown Worlds Entertainment, когда они начинали разработку игры Natural Selection 2 в 2007 году. Decoda была приобретена рядом студий разработчиков игр, и, по словам разработчиков Unknown Worlds, лицензирование Decoda было основным источником дохода компании в 2007–2013 годах[4].

После успешного запуска Natural Selection 2 14 февраля 2013 года программа перешла в категорию свободных, разработчики открыли её под лицензией GPL. Они объяснили это действие тем, что дополнительный источник доходов в виде лицензирования IDE им больше не нужен[4].

См. также

Примечания

Литература

  • David Young. Learning Game AI Programming With Lua. — Packt Publishing, 2014. — 680 p. — ISBN 978-1-78328-133-6.
  • James Clarendon. Chapter 11. Scripting with Lua → Introducing Decoda // Game Coding Complete / Mike “MrMike” McShaffry. — 3-rd ed.. — Charles River Media, 2009. — P. 346. — 908 p. — ISBN 978-1-58450-680-5.

Ссылки