KDScript is a custom script module for the Dark Engine games Thief: The Dark Project and Thief II: The Metal Age. It provides access to the new script services available with the unofficial NewDark patch, including dynamic weather and fog and nonlinear campaigns. It offers custom HUD elements including quest arrows, statistic meters, and tool sights. It also includes other useful features such as automatic subtitling of AI speech and voiceovers. The included mission demonstrates the scripts in this module; load this ZIP file as an FM to try it.

This is version 0.7.0 of KDScript, released on 2013-09-01 as KDScript-0.7.0.zip. (See the version history for what has changed.) Please follow my announcements on TTLG for updated versions. This module is in a public beta testing phase, and the script specifications below may change prior to the first official version. If you are interested in using any of these scripts in your mission, please follow my announcements on TTLG so you can have an up-to-date version. I would be glad to assist you in using these scripts and testing them in your mission; see my contact information below.

This module owes its existence to Telliamed's robust base libraries and to our NewDark benefactor Le Corbeau. Thank you!


This module works with one of the following games and engine versions on one of the following operating systems:

Operating system

* A version of KDScript is available for use with Thief Gold (TG) and Thief: The Dark Project (T1/TDP). Not all of the scripts and features are available for these games; see individual scripts for details. Note that the module has not been tested with T1, only with TG. The TG/T1 version of the module, along with a limited demo mission, is located in the thief1 directory inside this ZIP file.

Using the scripts

To use these scripts while creating a mission, they must be available to the Dark Engine. Place the KDScript.osm and ThiefLib.osl files in your mission's root (main) directory, to be included in the distributed ZIP file. (No other files from the KDScript archive are required.)

Next, open your mission in DromEd and add this module with the command script_load KDScript. You are now ready to add the scripts in this module to archetypes and objects.

Many of these scripts are configured using Design Note parameters in addition to standard properties and links. See that section for more details.

If you want more information in the monolog about the activities of KDScript scripts, create a quest variable named debug and set it to 1 (some extra output) or 2 (lots of extra output).

The source code for KDScript and its ThiefLib support library are available on GitHub. This module is licensed under the GPL, which usually requires you to distribute it along with its source code. However, you may distribute the module in a fan mission without including the source; see the legal notes below.

If you have any questions or issues related to these scripts, please post them in the KDScript thread on TTLG, contact me by private message on TTLG, or email me at <kevin AT kdau DOT com>.

Copyright © 2012–2013 Kevin Daughtridge. The script module is licensed under terms of the GNU General Public License. The demo missions may be distributed in any way as long as it remains unmodified and I am credited for it. The module and missions are provided “as is” without warranty of any kind, either expressed or implied. This level was not made and is not supported by Looking Glass Studios or Eidos Interactive.

In addition to your rights under the GPL, you may distribute unmodified copies of KDScript.osm along with fan missions and expansion packs intended for use with Dark Engine based games without providing the source code for this software. The fan mission or expansion pack must be distributed in compliance with the terms of the DromEd End-User License Agreement issued by Eidos Interactive. The mission or pack must also include a notice in its documentation that it uses KDScript and that KDScript is copyright © 2012–2013 Kevin Daughtridge (kdau).

The following works of others are included in or inspired the script module or demo mission:

Copyright © 2012–2014 Kevin Daughtridge.