Dark Engine

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Dark engine
Written inC++
PlatformMicrosoft Windows

The Dark Engine is a game engine developed by Looking Glass Studios and was used from 1998 to 2000, mainly in the early Thief games.


The Dark Engine's renderer, originally created by Sean Barrett in 1995, supports graphics similar to that of the original Quake, with Unreal-like skybox effects and colored lighting introduced in Thief II. Due to the limited hardware of the time, the Dark Engine was not designed with scalability in mind, and can therefore only display 1024 terrain polygons onscreen at once, as well as various other limits on objects and lights. In terms of textures, the game supports palletized PCX and TGA textures, in powers of two up to 256x256. Textures are grouped in "families" which share the same palette. There is a maximum of 216 textures and independent palettes, excluding 8 animated water textures.

The engine does not natively support advanced game scripting, with AI and object behavior being controlled by "Object Script Module" (.OSM) files, which are DLLs that are loaded at runtime. As such, new modules can be written and plugged into the level editor, DromEd, but are limited due to the scope of the functions made available by the core engine. In order to overcome this, editors must resort to complicated Rube Goldberg machine-like effects using a combination of its other systems.

For its time, the Dark Engine offered advanced AI and sound features, as well as a powerful object-oriented object system. The designer has full control of sound propagation within the level, and the "artificial intelligence" of the non-player characters (NPCs) allows for three levels of awareness: vague acknowledgement caused by mild visual or auditive disturbances, which only prompts a startled bit of dialogue; definite acknowledgement caused by significant visual or auditive disturbances, which causes the NPC to enter "search mode", and definite acquisition (triggered by visual on the fully lit player, or face-first contact with a player regardless of the light level), prompting a direct attack.

Source code[edit]

In 2009, a complete copy of the Dark Engine source code was discovered in the possession of an ex-Looking Glass Studios employee who was at the time continuing his work for Eidos Interactive.[1] The code was a complete set of the engine's resources, and included the libraries needed to compile the code. Fans of the Thief and System Shock series subsequently petitioned the publisher to consider releasing the code.

In late April 2010, a user on the Dreamcast Talk forum disassembled the contents of a Dreamcast development kit he had purchased. The contents of the kit included, among other things, items pertaining to ports of Thief 2 and System Shock 2 to that system. By December 2010, it had been discovered by the user and subsequently the greater Looking Glass Studios fan community that a compact disc included with the kit - the contents of which had been uploaded to the Internet - included a second copy of the Dark Engine source, minus the libraries needed to compile the code.[2]

In September 2012, a significant unofficial update to the Dark Engine was published anonymously in a French forum, most probably based on the leaked Dreamcast source code.[3][4] This unofficial patch extended the limits of the engine, introduced support for recent graphics and sound hardware, as well as better support for newer versions of Windows.[5][6]


DromEd 2
DromEd 2

DromEd is the level editor for the Dark Engine. It was originally used in the design of Thief: The Dark Project, but after a petition from the fan community it was released to the public, as were later versions.

There are four different versions of DromEd: for Thief: The Dark Project, for Thief Gold, for Thief II, and lastly for System Shock 2, commonly called "ShockEd." DromEd for Thief: The Dark Project and Thief Gold use the same version of the Dark Engine and therefore can open levels created for each game, although Thief Gold levels may refer to in-game objects that are not found in Thief. Thief II uses a revised version of the Dark Engine, and therefore it is difficult to open levels created for Thief with DromEd for Thief II. ShockEd is not compatible with any Dark Engine games aside from System Shock 2. However, basic level geometry can be moved between editors using a geometry export feature called "multibrush". System Shock 2 levels can be loaded by DromEd 2 with some work.

The name of the level editor, DromEd, is a reference to the original project it was designed for — a game based on the Arthurian legend of Camelot — the Camel becoming Dromedary and thence Dromed. DromEd has been used by fans to create hundreds of fan missions for Thief and Thief II, and several missions for System Shock 2.

Games using Dark Engine[edit]

Year Title Developer(s) Publisher(s)
1998 Thief: The Dark Project[7] Looking Glass Studios Eidos Interactive
1999 System Shock 2 Irrational Games, Looking Glass Studios Electronic Arts
2000 Thief II: The Metal Age Looking Glass Studios Eidos Interactive


  1. ^ Smith, Quintin (2010-12-14). "Dark Engine Source Code Found In A Bag". Rock Paper Shotgun. Retrieved 2011-04-15. As of this weekend, Christmas has come early for the Through the Looking Glass community. A CD’s been discovered containing the source code for the Dark Engine, aka the engine used by Thief, Thief II and System Shock 2 (not to mention Irrational and Looking Glass’ cancelled cold war spy game Deep Cover).
  2. ^ Humphries, Matthew (2010-12-14). "Game engine used for Thief/System Shock 2 found with Dreamcast dev kitGames". Rock Paper Shotgun. Archived from the original on 2017-09-13. Retrieved 2015-07-04. If you asked me which is my favorite all time video game, my number one would be Thief II. So it’s with more than a little excitement that I report the source code for the Dark Engine, used to create Thief, Thief II, and System Shock 2, has been found.
  3. ^ Bonke, Michael (2012-09-26). "System Shock 2 - System Shock 2 und Dark Project 2: Neue Fan-Patches machen die Looking Glass-Klassiker fit für moderne Hardware" (in German). PC Games. Retrieved 2015-07-07. Ein bislang unbekannter Modder hat zwei extrem umfangreiche Fan-Patches für die beiden Looking Glass-Klassiker Dark Project 2: The Metal Age und System Shock 2 veröffentlicht. In der Meldung findet ihr den Download-Link zum Dark Project 2-Patch V. 1.19 und zum System-Shock 2-Patch in der Meldung.
  4. ^ "Le Corbeau" (2012-09-25). "Thief 2 V1.19 & System Shock 2 V2.4". www.ttlg.com. Retrieved 2012-11-10. This is an unofficial patch for Thief II: The Metal Age (T2) which updates the game from v1.18 to v1.19, providing improved support for modern hardware and correcting many known bugs.
  5. ^ Pearson, Craig (2012-02-07). "Thief 2 Is Now On Good Old Games". Rock Paper Shotgun. Retrieved 2012-11-10. [...]discovered that it suffers much of the same resolution and widescreen based trouble from the previous release, but this utility [Tafferpatch] fixed all my troubles [...]
  6. ^ "Tafferpatcher: unofficial complete patch for Thief 2". www.ttlg.com. 2012-11-10. Retrieved 2012-11-10. Included patches: - Patch 1.19 which eliminates all issues with modern hardware, widescreen resolutions, multi-core systems, etc.- Various mission, gamesys, model and texture fixes.[...]
  7. ^ Leonard, Tom (1999-07-09). "Thief: The Dark Project - Postmortem". Gamasutra.com. Retrieved 2012-11-12.