Lua

From RogueBasin
Revision as of 01:19, 25 December 2011 by Rustle (talk | contribs) (added ascii wilderness to the list of lua roguelikes)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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
  • Run from the Shadow made using the T-Engine4
  • Harrowed made using the T-Engine4
  • Ascii Wilderness made using LUA 5 and the Slang graphics interpereter.

Links