Язык программирования Lua в Fable |
Автор статьи: Torionel |
Интересный факт: Fable 2 и Fable 3 пользуются языком Lua, который придумали отнюдь не разработчики в Lionhead. Его, например, используют в Adobe Lightroom, Angry Birds, Apache HTTP Server, Apache Traffic Server, Mozilla Firefox, MediaWiki и World of Warcraft.
Вот как описывает язык официальный сайт:
Lua — мощный, эффективный, легкий встраиваемый язык сценариев. Он поддерживает процедурное программирование, объектно-ориентированное программирование, функциональное программирование, программирование, управляемое данными, и описание данных.
Lua сочетает в себе простой процедурный синтаксис с мощными конструкциями описания данных, основанными на ассоциативных массивах и расширяемой семантике. Lua имеет динамическую типизацию, запускается путем интерпретации байт-кода с помощью виртуальной машины на основе регистров и имеет автоматическое управление памятью с инкрементной сборкой мусора, что делает его идеальным для настройки, создания сценариев и быстрого прототипирования.
Lua придумали в 1993 году, название означает "луна" на португальском. Здесь документация, а здесь простое руководство.
Для работы с Lua в Fable 3 существует программа "Fable3LUADecompiler", которую сделал известный англоязычный моддер Keshire. Он размещает дистрибутив на Github, также можно скачать с нашего сайта. К сожалению, lua-скрипты игры сами по себе запакованы в другие файлы, так что по сути требуется двойная распаковка.