Que yo sepa, Relic's Essence Engine Series (como se usa en Company of Heroes y Dawn of War II ) usa Lua o un dialecto de él para las estadísticas de la unidad y las secuencias de comandos de la misión. No hay fuentes web reales para ello, pero siempre puede consultar algunos de los mods en RelicNews.com para preguntar si está interesado.
El Spark Engine de Unknown Worlds como se usa en su próximo juego Natural Selection 2 permite que la mayor parte del código del juego esté en Lua hasta donde yo sé. El SDK viene con el pedido anticipado del juego y actualmente está en versión beta, al igual que el juego.
Otro juego que una vez fue promovido en gran medida confiando en Lua sería Eufloria (anteriormente Dyson ). También hay una referencia de modificación de Lua en sus foros.
El juego cooperativo gratuito de Valve, Alien Swarm, utiliza en gran medida un lenguaje de secuencias de comandos llamado "Squirrel" que ha sido influenciado por Lua. El Alien Swarm SDK debería estar disponible para descargar en Steam. ( Wiki de desarrollo )
EDITAR: ¡Cómo podría haberme olvidado de World in Conflict ! El juego hace muchas cosas en Python como se hace obvio cuando se observan modificaciones como Modern Warfare Mod que implementan mecánicas completamente nuevas.
Estos son algunos ejemplos de juegos (de código abierto) que utilizan secuencias de comandos para implementar el comportamiento de la entidad:
Frogato implementa entidades usando un lenguaje de script personalizado. Battle for Wesnoth implementa entidades que utilizan un lenguaje de descripción personalizado en el que se pueden incrustar los scripts de Lua. KQ implementa el comportamiento de la entidad utilizando scripts Lua.
Editar: enlaces publicados ahora que se me permite ...
fuente
Lo hago en mi motor ( fuente disponible , pero probablemente no valga la pena descifrarlo).
En mi caso, una "entidad" es un concepto que existe totalmente dentro de Lua. No hay respaldo de C ++ para "entidades". Como tal, una "entidad" es lo que ese juego específico necesita. A veces es solo una tabla con un poco de datos adjuntos, a veces es un elemento 2D Frame (tenga en cuenta que los marcos también son construcciones completamente Lua, solo tengo una biblioteca de interfaz de usuario estándar), a veces es algo complicado con AI y renderizado y luego es sigue siendo solo una cosa creada en Lua.
Muchas personas usan Lua para guiar sistemas de objetos que tienen respaldo de C ++, de modo que la entidad "vive" en C ++ y llama a Lua por sus secuencias de comandos. Solía hacerlo, pero me encontré cada vez más feliz a medida que movía el código de C ++ a Lua. En este punto, uso C ++ únicamente para manejar las llamadas a la API del sistema operativo, y toda la lógica de diseño / renderización / AI / juego está en Lua 100% puro.
Recomendado.
Siéntase libre de hacer preguntas, estoy dispuesto a responder :)
fuente