Lua
Description
Lua is a very nice and easy-to-learn scripting language specifically designed to be embeddable and able to represent complex data.
Features
- Clean syntax
- Simple, yet extremely powerful and extensible, data structure: tables (can be used as hashtables, vectors, arrays, lists, namespaces, objects, …)
- Easily embeddable into existing projects
- Lightweight
- Very fast
- Compiled to bytecode, which can be saved to a file
- Easy integrated with all languages that can load C libraries (also FreePascal
- Many other nifty things ;)
- lua makes info files obsolete
Roguelike libraries
Lua Engines
- T-Engine is a fully fledged roguelike engine designed to be programmed in Lua
Lua Roguelikes
Lua is probably the most popular scripting language for roguelikes.
rotLove based
T-Engine based
Slang based
Standalone
Custom support
- Angband - between Angband 3.0.0 and 3.0.6. Since then it no longer supports Lua scripts.
- DoomRL - internally keeping all it’s data in Lua. Since 0.9.9.1 a limited form of modding using Lua is possible.
- Portralis - uses Lua a lot to create monster attacks and complex story and quest events. Many gameplay mechanics are now entirely script-based, and future versions will aim to expand it’s use even further.
- H-World - all modding in this engine is done through Lua scripts
- Necropolis (Timothy Pruett) Using Lua scripting and custom-built tools users can create new areas, classes, items, etc.
Links