Risposte:
Consiglio di dare un'occhiata a LÖVE "un fantastico framework che puoi usare per creare giochi 2D in Lua. È gratuito, open-source e funziona su Windows, Mac OS X e Linux." Non è chiaramente un'alternativa al Cryengine, ma dovrebbe certamente dimostrare come utilizzare efficacemente il potenziale di Lua per la creazione di entità e la logica di gioco. Combina questa conoscenza con il modo in cui Cryengine / altri motori AAA utilizzano backend di script e dovresti avere tutta l'ispirazione di cui hai bisogno per creare il tuo motore con solide capacità di scripting. :)
Per quanto ne so, la serie Essic Engine di Relic (usata in Company of Heroes e Dawn of War II ) usa Lua o un suo dialetto per le statistiche delle unità e gli script delle missioni. Non ci sono vere fonti web per questo, ma puoi sempre dare un'occhiata ad alcune delle mod su RelicNews.com per chiedere se ti interessa.
Il motore Spark da mondi sconosciuti come quello usato nella loro prossimo gioco di Natural Selection 2 permette la maggior parte del codice di gioco per essere in Lua per quanto ne so. L'SDK viene fornito con il preordine del gioco ed è attualmente in versione beta così come il gioco.
Un altro gioco che una volta era stato fortemente promosso affidandosi a Lua sarebbe stato Eufloria (ex Dyson ). C'è un riferimento al modding Lua anche nei loro forum.
Il gioco cooperativo gratuito di Valve, Alien Swarm, usa pesantemente un linguaggio di scripting chiamato "Scoiattolo" che è stato influenzato da Lua. Alien Swarm SDK dovrebbe essere disponibile per il download su Steam. ( Dev wiki )
EDIT: Come avrei potuto dimenticare World in Conflict ! Il gioco fa un sacco di cose in Python come diventa ovvio quando si guardano mod come la Mod Modern Warfare che implementano meccaniche completamente nuove.
Ecco alcuni esempi di giochi (open source) che utilizzano script per implementare il comportamento delle entità:
Frogato implementa le entità utilizzando un linguaggio di scripting personalizzato. Battle for Wesnoth implementa entità usando un linguaggio di descrizione personalizzato in cui gli script Lua possono essere incorporati. KQ implementa il comportamento dell'entità usando gli script Lua.
Modifica: link pubblicati ora che mi è permesso ...
Lo faccio nel mio motore ( fonte disponibile , ma probabilmente non vale la pena decifrare).
Nel mio caso, un '"entità" è un concetto che esiste interamente all'interno di Lua. Non esiste un supporto C ++ per "entità". In quanto tale, una "entità" è qualunque cosa abbia bisogno di quel gioco specifico. A volte è solo una tabella con alcuni piccoli dati collegati, a volte è un elemento Frame 2d (nota che anche i frame sono interamente costruzioni Lua, ho solo una libreria UI standard), a volte è qualcosa di complicato con AI e rendering e poi è ancora solo una cosa creata in Lua.
Molte persone usano Lua per scriptare sistemi di oggetti con supporto C ++, in modo tale che l'entità "viva" in C ++ e chiami Lua per i suoi script. Lo facevo, ma mi sono ritrovato sempre più felice mentre spostavo il codice da C ++ a Lua. A questo punto, utilizzo C ++ esclusivamente per gestire le chiamate API del sistema operativo e tutta la logica di layout / rendering / AI / gioco è in Lua pura al 100%.
Consigliato.
Sentiti libero di fare domande, sono abbastanza disposto a rispondere :)