DO/Modding
From Dark Omen Wiki
Contents |
Modifying and Editing Dark Omen
Overview
Dark Omen consists of battles and campaign flow. The campaign flow is not yet understood, though we suspect it is largely hard-coded into the executable itself. The design of battles, however, is almost completely understood.
Each battle is located in its own folder under the gamedata/1pbat path. Using the first battle "B1_01" (Defending the Trading Post) as an example. the principal files are
Filename | Description | Edit tools |
B1_01.PRJ | Battleground layout file. | user:Mikademus' CLI Editor (PRJ section). |
B1_01.BTB | Battle zone definitions; f.i. deployment zones and map boundaries. | User:Rob's BTB Editor; CLI Editor (BTB section) |
B1_01.ARM | Army definitions. After the first battle, only the opposing side army is used. The players' is overwritten from the save file. | Both ARM and save files can be edited with Mikademus' (old) WH2EDIT and User:Ghabry's new Wh32Edit. |
B1_01.SHD | Contains a heightmap with vegetation. Initially thought to be a shadow map for the terrain, now thought to be either used for path finding costs, or a useless vestigal. You can extract these as .TGA images by the "export shadow" command from the PRJ Text Mode Editor. | Currently not editable (no real reason to). |
B1_01.LIT | Light sources for the map. These are only used fully when running in hardware acceleration, which in turn only works on genuine 3dfx cards under DirectX6 on Windows98, which makes them difficult to test. The data format is cracked, though. | Currently not editable (low priority, doesn't influence battles) |
B101.CTL | Battle scripts are stored in this file. This controls events that occur in game. | Viewable in CLI Editor (CTL section), Rob is making an editor. |
*.M3D | All the 3D models used for and on the map in this battle | Rob's M3D <--> 3DS converter |
TEXTURES/*.BMP | All the textures used by the M3D models. | Use any image editor, 8 bit 256 colours only. |
Project overwiew
Name | Description | Developer | Language | Binary | Source |
---|---|---|---|---|---|
WARTBED | Code name for a regimental tactical real-time wargame engine, in which Bright Prospects will be implemented. | Community | C++ | ||
Bright Portents | Code name for the Dark Omen 3D editor (and possible game engine) project. Well underway and currently capable of loading and rendering an entire Dark Omen level. Not yet publicly available. | Community | C++ |
Tools
Tools currently being developed and in a more-or-less working state:
Name | Description | Developer | Language | Binary | Source |
---|---|---|---|---|---|
WH2EDIT | The original army file editor, written in 1998 in Borland Pascal by Mikademus. Allows editing virtually every aspect of an army, but is relatively buggy. To be supplanted by Ghabry's forthcoming editor WH32EDIT. | Mikademus | Pascal | link | link |
Wh32Edit | The new and shiny army file editor written by Ghabry in WXWidgets/C++ and runs both under Win32 and Linux. Like WH2EDIT allows editing virtually every aspect of an army, but is relatively not buggy :). | Mikademus | Pascal | link | link |
CLI Editor | All of Dark Omen's data can be accessed and edited through the source base's parser classes. These include a PRJParser, BTBParser, CTLParser, SHDParser and LITParser classes. The Currenty front-end is a CLI (text mode) editor using literal expressions for commands, but the final version will be a 3D map editor (the parser classes are fully independent and decoupled from platform and front end). Allows editing most aspects of every existing map. Also includes functionality to view data of .M3D files. Developed in C++ by Mikademus. | Mikademus | C++ | link | link |
BTB file editor | Parser and editor for the .BTB battle boundaries and special regions file format. Written in C# by Rob. | Rob | C# | link | link |
DOT file editor | A program to modify the path of the dots on the overworld | Ghabry | unknown | link | link |
MDose SPR editor | The original .SPR sprite file editor. Function-complete but buggy. Written in Delphi in 1998 by Mikademus. To be supplanted by Rob's C# editor. (LINK TO DOWNLOAD AND SOURCE) | Mikademus | Delphi | link | link |
RDose (Rob's SPR editor) | A newer and improved editor incorporating new information about the .SPR format. Written in C# by Rob. (LINK TO DOWNLOAD AND SOURCE) | Rob | C# | link | link |
.M3D-to-Belnder Model Converter | Tool to import and export DO's .M3D models to the Blender 3D editor. | Rob | Blender API (Python with Blender functions) | link | link |
Data Formats
The .PRJ Battle Description File Format
Short description <WIKILINK TO THE PRJ ARTICLE>
The .BTB Battle Boundaries File Format
Contains information about the mission, such as troop placement, obstacles, accesibility etc. BTB
The .DOT Campaign Map File Format
Short description <WIKILINK TO THE DOT ARTICLE>
The .LIT Lighting File Format
Contains information about the lighting of the level LIT
Lists
Items and magic item codes used on maps Particle effect codes used on maps Sound effect codes used on maps Graphic effect codes used on maps