OpenTomb

OpenTomb (also formerly known as Tomb Raider 1-5 port project and, lately, TRE) is an open-source engine replacement project for classic Tomb Raider games (from TR1 to TRC). It is characterized by extensive Lua scripting usage, as well as advanced physics and audio engine.

Engine is being developed completely from scratch, without any use of original source code, because all attempts to retrieve sources from Eidos and Core were in vain, despite many petitions and requests by the community.

Lead programmer of OpenTomb is Konstantin Chistyakov (also known as TeslaRus), who resides in Russian Federation.

Development history
Development of OpenTomb began around 2012, but it was not widely known by Tomb Raider community, until it was found in 2013 on SourceForge by Anatoly Grishin (known as Lwmte, also Russian origin, who previously reverse-engineered original engines and contributed in development of TREP and FLEP patchers). He brought attention to it through Tomb Raider Forums software development category, which is now one of the most discussed topics in this section.

Eventually, by the 2014, a team of programmers formed around OpenTomb project, with involvement of Torsten Kammer (aka Cochrane), who did a major rewrite of rendering section, Volker Schneider (aka vobject), who provided Linux port and cross-platform compilation script, Gh0stBlade (known for homebrew version of Tomb Raider Gold and Tomb Raider II Gold for PlayStation), Saracen (programmed support for proper in-game lighting) and many others.

Relation to similar projects
OpenTomb is not the first attempt to recreate original Tomb Raider game engine. Probably, the most known one is OpenRaider, which was discontinued back in 2003. Another attempt was VT engine by Icculus.org project, but only level loader was completed. Source code from both of these is used in OpenTomb to some extent.

Similar projects are IrisEngine and FexEngine (both use their own file format, although with resources derived from original games), RetroFit, TrPlayer, Tomb Raider Java and Tomb Raider Nostalgie (these four were intended to play original level files). All these projects are currently halted or status is unknown.

However, OpenTomb, being the most active Tomb Raider open-source project, is not the only one in development — there is recent OpenRaider fork by Thomas Buck (as stated above, original branch isn't active since 2003).

Current status
Engine is still in pre-alpha stage, as many game aspects aren't developed yet. There is no menu, enemies have no AI, traps are inactive. Lara's physics and states are programmed up to Tomb Raider Chronicles, but still buggy and unoptimized. Renderer is very basic, as it doesn't support transparency, shadows, dynamic lighting and so on. On the other hand, audio engine, controls and on-screen meters functionality is fully developed, and game already features basic inventory.

Key features

 * Bullet physics engine, which offers complex collision calculation.
 * Lua-driven scripting and entity control.
 * OpenAL audio, with environmental FX and automated soundtrack player.
 * SDL-based user input, with support of game contollers and force feedback.
 * Framerate is not locked to 30 FPS, hence everything is animated much more smoothly than in originals.
 * Loads any retail TR levels, from Tomb Raider 1 to Tomb Raider chronicles, as well as custom levels created in classic Tomb Raider Level Editor.

Supported platforms
Initially, OpenTomb was Windows-only engine, but its open nature allowed to create ports for Linux and Mac. Linux version is currently maintained by vobject and pmatulka, while Mac version is maintained by Cochrane.

Links

 * Official SourceForge project page
 * ModDB page
 * Twitter account
 * Forum thread at Tomb Raider Forums