Lua

From RogueBasin
Revision as of 11:57, 29 March 2011 by Darren Grey (talk | contribs) (→‎Lua Roguelikes: - Added Broken Bottle)
Jump to navigation Jump to search

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 Roguelikes

Lua is probably the most popular scripting language for roguelikes. Some of the projects that use Lua:

  • 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.
  • ToME - a good part of the engine is in Lua and the game itself will be completly in Lua in the next version.
  • 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.
  • Bone to be Wild Runs with T-Engine from ToME.
  • ODE Runs with T-Engine from ToME.
  • Broken Bottle made using the T-Engine4

Links