Есть игры в которых можно писать моды/аддоны на Lua.
Подскажите где можно почитать про это, библиотеки для этого и подобное.
Я использую Godot Engine.
Я не знаю, какие есть библиотеки для интеграции Lua, как позволить влиять на игру через скрипты Lua.
Откуда мне начать и что изучать?
Интеграция ЯП в ЯП не подойдет, так как в Godot поверх C/C++ пишется свой скрипт на GDScript, а уже поверх него игроку/мододелу нужно писать Lua. Как я понял в моем случае нужно либо писать dll на C/C++ (API для интеграции Lua в GDScript) либо писать модуль для Godot и каждый раз перекомпилировать сам редактор (Godot), и то, и то занимает много времени + я в C/C++ плох :/
Ваш ответ немного не подходит, так как тут поверх C/C++ пишется свой скрипт на GDScript, а уже поверх него нужно писать Lua. Как я понял в моем случае нужно либо писать dll на C/C++ (API для интеграции Lua в GDScript) либо писать модуль для Godot и каждый раз перекомпилировать сам редактор (Godot), и то, и то занимает много времени + я в C/C++ плох :/
Кроме Lua добавляют и Python и другие интерпретируемые языки.
Это называется "встраивание Lua" в свое приложение (embeded Lua, embeded Python, ...). Гуглите в этом направлении.
В официальной документации по питону, есть отдельный раздел на эту тему. Видимо, то же и в Lua должно быть.
Да, вроде нашел встраивание Lua в Godot, про Python ничего не нашел, но я и не искал, все же Lua привычнее как "язык модов" чем Python. Вроде то что я искал, но возможно немного не то по функционалу.
Спасибо за ответ!
dollar, По моему в WoT используется питон для модов. Я далек от игроделания, так что по играм меня спрашивать бесполезно. С данной темой немного знаком, т.к. в свое время приходилось писать модули для питона на С/С++. Это противоположная от встраивания технология, но подходы похожи.
Встраивание интерпретаторов в приложения достаточно универсальная технология. Игры только один из вариантов ее применения. Встраивать можно в любое приложение, если вам это зачем то нужно.
На мой взгляд самый популярный встроенный интерпретатор в РФ - это 1С.
res2001, как инструмент для создания модов, Питон может и не плох, но у него есть существенный недостаток - он гораздо сложнее Луа. Как результат, язык модов - это именно Луа, повсеместно.
Я тут понял что ваш ответ немного не подходит, так как тут поверх C/C++ пишется свой скрипт на GDScript, а уже поверх него нужно писать Lua. Как я понял в моем случае нужно либо писать dll на C/C++ (API для интеграции Lua в GDScript) либо писать модуль для Godot и каждый раз перекомпилировать сам редактор (Godot), и то, и то занимает много времени + я в C/C++ плох :/
Сам по себе С++ сложный язык. А тут стык двух языков (а то и трех, судя по тому что вы пишете). Нужно хорошо разбираться во всех и понимать что ты делаешь и для чего. Сложность этого процесса много больше обычного использования С++. Подобная работа не для новичка.
Насколько я понимаю, это не то, это конкретно потдержка Lua как встроенного языка как тотже GDScript. Если это не так, и если не трудно, опишите возможный сценарий этого аддона/библиотеки как языка модинга. Спасибо за ответ! Вроде то что я искал, но возможно немного не то по функционалу.