|[ LiB ]|
Lua has been a part of the game industry for many years , and it probably comes as no surprise that it's been used in dozens of commercial titles. Lua can take pride in being part of many very successful products, including several that are on shelves today. In addition, a number of titles slated for release in the next few years are also jumping on the Lua bandwagon.
Angband is a freeware dungeon -exploration game based on the works of J.R.R. Tolkein ( Angaband was a citadel constructed by Morgoth in Tolkein's The Silmarillion ). Angband has been around in one variation or another for quite sometime. Its predecessors include Moria (1985) and Rogue (late 1970s). It was originally text-based, but now sports some nifty graphics
There are three main points to keep in mind with Angband . First, it runs on just about every platform, including Windows, Windows CE, DOS, Mac, Amiga, OS/2, Linux, BeOS, Atari, Solaris, and several others. Second, it is considered to be extremely addictive . Third, the game still fits on a 1.44 floppy disk!
Lua has been added to the C Angband distribution for customizations. There are literally dozens of Angband variants, with everything from psionics to multiplayer Iron Man adventures added. Lua scripting is available to handle using objects (like wands, rods, staves, food, potions, and scrolls ) and player spells. Event handling exists for Lua functions for in-game events; for instance, Lua scripts handle which objects stores in the game will buy and sell.
Angband can be found online, at http://www.thangorodrim.net, and is currently maintained by Robert Ruhlmann.
Bioware used Lua as the primary script engine for its popular game Baldur's Gate . All of the game's debugging commands were exposed to Lua, and the script engine was exposed and available via command line from the game. For Bioware, this allowed a deep level of debugging without having to develop extensive debugging tools for the engine. For the fans, this allowed a window into the engine that also help spawn numerous hacks and independent projects utilizing the Infinity engine.
Baldur's Gate can be found on Bioware's site at http://www.bioware.com/games/baldurs_gate/.
Bioware also used Lua to some extent in another popular game you may have heard of, MDK2 .
Lucas Arts was one of the first game studios to really start utilizing Lua. A large amount of Grim Fandango , the main adventure game Lucas Arts released in 1997, was written in Lua.
Lua replaced an in-house scripting engine Lucas Arts used, called SCUMM. Lua was also used in the game Monkey Island as the development script engine. In Monkey Island there is a small tribute to Luaapparently the designers renamed a bar inside the game from SCUMM to the Lua Bar.
Relic Entertainment's Homeworlds was released with Lua hooks to allow its hardcore fans the ability to create mods. The result was numerous enjoyable mods and hacks from the community, including Homeworld variants set in the worlds of Star Trek , Babylon 5 , Battlestar Galactica , and Star Wars . Relic says they chose Lua for the same reasons so many other companies do: because it is easy to use, performs speedily, and is small in size.
Relic is also working on a new game that uses Lua scripts for its AI decision engine. The plan is for an interpretive AI layer to help programmers test out the different behavior easily, and therefore tweak game settings with scripting instead of having to do complete re-compiled source code builds. Relic can be found at http://www.relic.com/.
There are dozens of other titles that have used Lua. Criterion Studios is one of the larger companies, located online at http://www.criterionstudios.com.
Criterion has released several 3D game titles here and in Japan that use Lua as their primary game scripting language. The popular fantasy RPG Pern made extensive use of Lua, so much so that the community spawned several hacks to the engine overriding some of the common Lua files that handled races and classes. Slingshot Game Technologies produced a snowboarding game using Lua called Soulride , which can be found online at http://soulride.com.
The former chief programmer at Slingshot, Thatcher Ulrich, has written a few open -source Lua 2D script tools (you used one in the last chapter). Now he works for Oddworld, which we expect to release an X-Box title any day now.
|[ LiB ]|