Скрипты Lua располагаются в папке Data\Scripts или "Имя мода\Data\Scripts" и имеют расширение *.lua.
Библиотечные скрипты располагаются в подпапке libs и libs\[имя библиотеки], например: libs\era\*.lua.
Библиотечные скрипты подключаются через require "имя" или require "имя подпапки в libs.имя файла без расширения". Пример: require "era.mem" для libs\era\mem.lua
Скрипты бывают системными и обычными. Системные загружаются только один раз при событии
OnBeforeWoG (до создания окна и выполнения кода инициализации WoG) и работают всю игру, как привычные плагины. Обычные скрипты работают схоже с ЕРМ скриптами.
Системные скрипты имеют двойное расширение *.sys.lua и загружаются в алфавитном порядке. Первым загружается скрипт _core_.sys.lua, поскольку его имя начинается с подчёркивания.
Пример
Data\Scripts\test.sys.lua
Глобальная функция
print использует системные диалоги (MessageBox) для отображения сообщений, пока не будет создано игровое окно. После чего функция отображает сообщения в виде внутриигровых окошек аналогично команде ЕРМ IF:M. Помимо этого, функция позволяет выводить в отладочном виде содержимое любых переменных (таблиц, cdata, логических и т.д.), что делает её безопасным и удобным средством для отладки. Если передать функции более одного аргумента, аргументы будут объединены пробелом.