Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kolen/2d1492febe1fa50031864ba0cba59ed0 to your computer and use it in GitHub Desktop.
Save kolen/2d1492febe1fa50031864ba0cba59ed0 to your computer and use it in GitHub Desktop.
Dungeon Keeper Map Files Format Reference v1.1

Originally from http://keeper.lubie.org/dk1_docs/

Dungeon Keeper Map Files Format Reference v1.1

Created by fans

Contents

1.0 Introduction to map files

1.1 Overview of map files

1.2 RNC compression

2.0 Map layout files

2.1 Tiles and subtiles

2.2 Slab .SLB files

2.3 Ownership .OWN files

3.0 Object lists files

3.1 Thing .TNG files

3.2 Action point .APT files

3.3 Static light .LGT files

4.0 Level graphics files

4.1 Making a world using cubes

4.2 Level style .INF files

4.3 Column .CLM files

4.4 Column position data .DAT files

4.5 Wibble .WIB files

4.6 Water/Lava Block .WLB files

5.0 Script files

5.1 Level script .TXT files

5.2 Script backup .OLD files

5.3 Adikted script .ADI files

6.0 Misellanous/unused files

6.1 Effects .EFF files

6.2 Description word .DOC files

6.3 Tile flags .FLG files

6.4 Room origin .ORI files

6.5 Version .VSN files

6.6 .TMN files

7.0 Credits

8.0 Changes log

9.0 References

1.0 Introduction to map files

Levels in Dungeon Keeper are written in multiple files. Storing a map in more than one file makes it easier to modify the map, but also may lead to problems when copying it, renaming or sharing with other people. Knowlegde of what specific files do, and how they look from inside is not crucial for mapmaker. Mapmaker only needs to know file format of the level script (.TXT file), which is explained in Dungeon Keeper Script Commands Reference.

1.1 Overview of map files

Levels are stored in .\Levels\ directory on Dungeon Keeper CD. If you want to modify them and use the modified ones, you will have to copy all the levels to your Dungeon Keeper directory. See Mapmakers Installation Instructions for details.

Level 1 (the first level), consists of the following files:

map00001.apt
map00001.clm
map00001.dat
map00001.doc
map00001.eff
map00001.flg
map00001.inf
map00001.lgt
map00001.old
map00001.ori
map00001.own
map00001.slb
map00001.tmn
map00001.tng
map00001.txt
map00001.vsn
map00001.wib
map00001.wlb

Not all of these files are required to play the map. The crucial files are listed above. If you want to save disk space, or publish the map in Internet, you only require those files:

map00001.apt
map00001.clm
map00001.dat
map00001.inf
map00001.lgt
map00001.own
map00001.slb
map00001.tng
map00001.txt
map00001.wib
map00001.wlb

Rest of the files is not used by the game. Note that if you're using ADiKtEd to modify the map files, there may be another file in the list:

map00001.adi

This file isn't used by the game, only by ADiKtEd. If you're uploading level for end users, and the uploaded version won't be edited anymore, then you may skip this file.

1.2 RNC compression

Several of the Dungeon Keeper files are compressed with Rob Northern Compression (RNC). You can tell if a file is compressed, as the first three bytes will be 'R' 'N' 'C'. The fourth byte is a 1 (as distinct from '1').

There's a compressor/decompressor available to download in many places, for example on Syndicate Series Unofficial Fan Site. Source code in C is available too. There is also version of the decompression with graphical interface in DKTools package.

2.0 Map layout files

.

2.1 Tiles and subtiles

Each map is divided into 85x85 playing tiles, as seen on the map. Each tile is sub-divided into 3x3 subtiles - look at the game carefully, examining tiles, and trying to break them into subtiles, and you'll see what I mean. I'll use the terminology above extensively, be sure you understand what I mean.

2.2 Slab .SLB files

  • Size: 2*85*85=14450
  • Required?: Yes.
  • Compressed?: Sometimes (22/58).
  • Description: Determines type of "room" each tile is.
  • Format: 85 lines of 85 tiles, each having a two byte entry. Each entry only uses the first byte, the second byte being 0.
  • Notes: None.

The .SLB file is basically main file of every map. It contains information about map layout - says which subtile is places on which position. The file consist of a two-byte entry for every map tile.

Using .SLB file, the .CLM and .DAT files can be autogenerated.

Slab values used in Dungeon Keeper are:

Number Slab Number Slab
0 Rock 22 Torture room
1 Gold 24 Training room
2 Earth 26 Dungeon Heart pedestal
3 Earth with torch plate 28 Workshop
4 Wall 30 Scavenger room
5 Wall 32 Temple
6 Wall 34 Graveyard
7 Wall 36 Hatchery
8 Wall 38 Lair
9 Wall 40 Barracks
10 Unclaimed path 42/43 Wooden door
11 Claimed land 44/45 Braced door
12 Lava 46/47 Iron door
13 Water 48/49 Magic door
14 Portal 51 Bridge
16 Treasure room 52 Gem
18 Library 53 Guardpost
20 Prison

2.3 Ownership .OWN files

  • Size: (85*3+1)*(85*3+1)=65536
  • Required?: Yes.
  • Compressed?: All but the first map.
  • Description: Determine ownership of tiles.
  • Notes: I can't see why this is in subtile format when only one byte (or 3 bits, in fact) is needed per tile.

The file has one byte corresponding to every subtile on the map. It also defines the border subtiles, which are invisible. Border subtiles are: one at start and one at end of every column/row, so they are indexed 0 and 255.

Here is the list of proper values as C defines:

#define PLAYER0                0x00
#define PLAYER1                0x01
#define PLAYER2                0x02
#define PLAYER3                0x03
#define PLAYER_GOOD            0x04
#define PLAYER_UNSET           0x05

Note: All nine subtiles of every tile should be owned by the same player.

3.0 Object lists files

These files consists of number of entries followed by the list of entries. Every entry in such file has identical length.

For objects which are placed on map, entries contain coordinates where the object is. Those coordinates are always stored in same form:

  • For 2D coordinates: 4 unsigned bytes: sx tx sy ty
    The object is placed on a subtile (tx,ty) and its position within subtile is (sx,sy). These are horizontal and vertical positions, counting from 0. The values can be also interpreted as two 16-bit values (words). In that case, every word stores global position in the map coordinate system.
  • For 3D coordinates: 6 unsigned bytes: sx tx sy ty sz tz
    The object is placed on a cube (tx,ty,tz) and its position within cube is (sx,sy,sz). The values can be also interpreted as three 16-bit values (words). It's same as with 2D coordinates, only there's Z coord which is height. So, tz is the number of cubes above ground level (note there is usually one cube above ground level, forming a floor). There are up to eight cubes in total per subtile. The sz gives the height within the cube.

3.1 Thing .TNG files

  • Size: 2+(21*number of entries)
  • Required?: Yes.
  • Compressed?: Sometimes (18/58).
  • Description: List of "things" in the dungeon.
  • Format:
  • 2 bytes: Number of 21 byte entries
  • Each entry:
  • 0-5: Location
  • 6: Thing type
  • 7: Thing subtype (eg creature race, trap type)
  • 8: Owner
  • 9-20: Type specific data

Notes: A table of known values is below.

Most of objects in Dungeon Keeper are things. These are all objects which generate graphics effects with bitmap (2D) images.

Things can have various "types". Each thing type has different features. Here is a list of known types as C defines:

#define THING_TYPE_NONE        0x00
#define THING_TYPE_ITEM        0x01
#define THING_TYPE_CREATURE    0x05
#define THING_TYPE_ROOMEFFECT  0x07
#define THING_TYPE_TRAP        0x08
#define THING_TYPE_DOOR        0x09

For every thing type, the meaning of some data is different:

Type 1=Item/decoration

  • 11-12: Sensitive tile; usually y*85+x (y and x being the tile co-ordinates, not subtile). Value -1 (0xffff) means none.

Type 5=Creature

  • 14: Level-1 (eg 0 for a level 1 creature, 9 for level 10)

Type 7=Room effect

Type 8=Trap

Type 9=Door

  • 13: Orientation. 0=door in N/S passage, 1=door in E/W passage
  • 14: Locks. 0=unlocked, 1=locked (note the spinning key above the door needs to be added as a .tng entry).

Item/decoration subtype values (numbers are decimal):

Num Item Num Item Num Item
1 Barrel 46 Chicken spell 91 Increase level
2 Torch 47 Destroy walls spell 92 Make safe
3 Gold Chest (500) 48 Time bomb spell 93 Reveal hiddn world
4 Temple statue 49 Hero gate 94 Boulder trap box
5 Dungeon heart 50 Spinning key 2 95 Alarm trap box
6 Gold Pot (250) 51 Armour 96 Poison gas trapbx
7 Unlit torch 52 Gold Hoarde 1 97 Lightning trap bx
8 Statue w/o flame 53 Gold Hoarde 2 98 Word of Pwr trpbx
9 Growing Chicken 54 Gold Hoarde 3 99 Lava trap box
10 Chicken 55 Gold Hoarde 4 100 Trap Dummy 2
11 Hand of evil spell 56 Gold Hoarde 5 101 Trap Dummy 3
12 Create imp spell 57 Wizard Lair 102 Trap Dummy 4
13 Must obey spell 58 Barbarian Lair 103 Trap Dummy 5
14 Slap spell 59 Archer Lair 104 Trap Dummy 6
15 Sight of evil spell 60 Monk Lair 105 Trap Dummy 7
16 Call to arms spell 61 Dwarfa Lair 106 Door Wood box
17 Cave in spell 62 Knight Lair 107 Door Brace box
18 Heal creature spell 63 Avatar Lair 108 Door Steel box
19 Hold audience spell 64 Tunneller Lair 109 Door Magic box
20 Lightning spell 65 Witch Lair 110 Workshop Item
21 Speed creature spell 66 Giant Lair 111 Heart flame(red)
22 Protect creatr spell 67 Fairy Lair 112 Disease
23 Conceal creatr spell 68 Thief Lair 113 Scavenger eye
24 Null1 69 Samurai Lair 114 Workshop machine
25 Null2 70 Horny Lair 115 Guard Flag(red)
26 Anvil 71 Skeleton Lair 116 Guard Flag(blue)
27 Prison bar 72 Goblin Lair 117 Guard Flag(green)
28 Candlestick 73 Dragon Lair 118 Guard Flag(yellow)
29 Gravestone 74 Demonspawn Lair 119 Flagpost
30 Horny Statue 75 Fly Lair 120 Heart flame(blue)
31 Training post 76 Dark Mistress Lair 121 Heart flame(green)
32 Torture spike 77 Sorceror Lair 122 Heart flame(yellw)
33 Temple Spangle 78 Bile Demon Lair 123 Power Sight
34 Potion1 79 Imp Lair 124 Power Lightning
35 Potion2 80 Bug Lair 125 Torturer
36 Potion3 81 Vampire Lair 126 Orc Lair
37 Power hand 82 Spider Lair 127 Power Hand Gold
38 Power hand grab 83 Hell Hound Lair 128 Spinning Coin
39 Power hand whip 84 Ghost Lair 129 Statue 2
40 Chicken stable 85 Tentacle Lair 130 Statue 3
41 Chicken wobble 86 Reveal map 131 Statue 4
42 Chicken crack 87 Resurrect creatre 132 Statue 5
43 Gold (200) 88 Transfer creature 133 Statue 6
44 Spinning key 89 Steal hero 134 Armageddon Spell
45 Disease spell 90 Multiply creatres

Creature subtype values (numbers are hexadecimal):

Number (hex) Creature Number (hex) Creature
1 Wizard 11 Dragon
2 Barbarian 12 Demon spawn
3 Archer 13 Fly
4 Monk 14 Dark Mistress
5 Dwarf 15 Warlock
6 Knight 16 Bile demon
7 Avatar 17 Imp
8 Tunneller 18 Beetle
9 Witch 19 Vampire
a Giant 1a Spider
b Fairy 1b Hell hound
c Thief 1c Ghost
d Samurai 1d Tentacle
e Horned Reaper 1e Orc
f Skeleton 1f Floating spirit
10 Troll

Room effect subtype values

Number (hex) Effect
2 Dripping water
4 Dry ice

Trap values

Number (hex) Trap
1 Boulder
2 Alarm
3 Poison gas
4 Lightning
5 Word of Power
6 Lava

Door subtype values

Number (hex) Door
1 Wooden
2 Braced
3 Iron
4 Magic

3.2 Action point .APT files

  • Size: 4+8*(number of entries)
  • Required?: Yes.
  • Compressed?: Never.
  • Description: Gives location of action points for reference in script (.txt) files.
  • Format:
    • 4 bytes: Number of 8 byte entries.
    • Each entry:
      • 4 bytes: XY Location
      • 2 bytes: Range
      • 2 bytes: Action point number (points are usually in order, but they don't have to be.
  • Notes: None.

This file defines action points. After the four-byte header, there comes a list of 8-byte action points.

3.3 Static light .LGT files

  • **Size:**4+(20*number of entries)
  • Required?: Yes.
  • Compressed?: Not usually (2/58).
  • Description: Provides extra lighting.
  • Format:
    • 4 bytes: Number of 20 byte entries.
    • Each entry:
      • 2 bytes: Range
      • 1 byte: Light intensivity
      • 7 bytes: unknown
      • 6 bytes: XYZ Location
      • 2 bytes: unknown.
      • 2 bytes: always -1 (0xffff).

The LGT file defines lights which, unlike torches, cannot be destroyed. It should be put in centre of large rooms and on lava.

4.0 Level graphics files

.

4.1 Making a world using cubes

Graphic on every subtile can be called column. Every column consists of textured cubes, put one on another. Typically, the tall columns (like rock, gems, earth...) are built using 5 cubes and a base block (which is the lowest cube).

4.2 Level style .INF files

  • Size: 1
  • Required?: Yes.
  • Compressed?: Never.
  • Description: Specifies the landscape style, or in other words, texture file number (making the dungeon icy, for instance).
  • Format: Always 1 byte, which is a 0 for all but the following maps:
    • 01 for maps 13, 14, 15, 16, 17, 104
    • 02 for maps 9, 10
    • 03 for maps 19, 20
  • Notes: There are more textures available in Deeper Dungeons.

The single byte defines texture number. Short description of available textures:

Number Texture
1 Standard texture
Used in most of original campaign maps.
2 Ancient texture
This one has brighter walls than the first. Walls have Aztec drawings on these testures.
3 Winter texture
Walls with snow and ice drawings representing snow drops.
4 Snake Key texture
Walls with key of life and snake. The wall brick is brown in this texture, not red like on standard one.
5 Stone Face texture
Rough walls with red eyed face on. The walls are bright on this texture, nearly yellow.
6 Big Breasts texture
The woman reliefs on these textures have bigger breasts than standard.
7 Rough Ancient texture
Texture with ancient relief theme and rougher earth.
8 Skull Relief texture
On this texture walls are brighter than standard, and reliefs are representing skulls of various size.

4.3 Column .CLM files

Size: 49160

Required?: Yes.

Compressed?: Sometimes (22/58).

**Description:**Along with the .dat file, this determines the graphics for the level. Each entry gives the data for a subtile.

Format:

8 bytes: Number of 24 byte entries (always 2048).

Each entry:

24 bytes:

0-1: Use - Counter of the column uses for non-permanent columns; For permanent colums, this value has an offset.

2: Byte with bitfields:

  • Bit 0: Permanent - if set, the column is never overwritten
  • Bits 1-3: Lintel (unknown)
  • Bits 4-7: Height - in subtiles; proper values are 0..7

3-4: Solidmask - appears to be a bitmask for which of the cubes are non-zero, with the lowest cube being represented by the least significant bit.

5-6: Baseblock - determines the very lowest level (below the lowest cube). I think the block numbers here are different to the ones used by the cubes, but I'm not sure yet. This entry is mostly useful for water, lava, and hatcheries.

7: Orientation (always 0)

8-23: Cubes - there are 8 cubes, each having a 2 byte entry. The first cube usually forms the floor, etc, up to the ceiling.

Notes: .dat entries are pointers into this file.

Cube values:

Number (hex) Description
1-3 Earth
4 Unknown
5 Earth
6-c Unknown
d-f Pillar for portal
10-17 Lair wall bits (main+corner)
18 Earth torch plate
19 Wall bottom section
1a Path
1e-25 Lair border floor
26-2a Unknown
2b Rock
2c Rock
2d Rock
2e-30 Unknown
31 Gold
32 Gold
33 Gold
34-38 Unknown
39-3a Treasure room pillar
3b-3d Unknown
3e Treasure room pillar
3f-40 Unknown
41 Treasure room pillar
42 Unknown
43-47 Wall centres (players 0-4)
48 Wall torch plate
49-4a Dungeon heart pedestal pillar
4b-4c Unknown
4d-4e Top of blank wall
4f-50 Stone wall bits
51 Training wall main (bottom right)
52 Brick
53 Training wall main (bottom left)
54-5f Woman wall (4 layers)
60-68 Twin wall (top 3 layers)
69-74 Shagging wall (4 layers)
75-76 Unknown
77 Torch plate
78-7f Unknown
80 Claimed non-centre
81-88 Unknown
89-91 Round portal centre
95-98 Wall corner
99-9e Treasure wall main
9f Treasure room floor
a0-a2 Drapes (player 0)
a3 Unknown
a4 Dungeon heart pedestal edge
a5-a7 Unknown
a8-ad Library wall main (2 layers)
ae Library floor
af Library floor (why two different?)
b0-b5 Library bookcase
b6-bb Unknown
bc-bd Prison wall corner centre
be-bf Unknown
c0 Claimed player 0 centre
c1 Claimed player 1 centre
c2 Claimed player 2 centre
c3 Claimed player 3 centre
c7 Claimed player 4 centre
c8-d0 Prison floor/borders
d1-db Unknown
dc Dungeon heart pedestal centre
dd-e0 Unknown
e1-e6 Prison wall main (2 layers)
e8-f0 Torture wall main (2 layers)
f2-f7 Training wall main (top 2 layers)
f8 Unknown
f9-fa Training wall pillar
fb Training wall main (bottom middle)
fc Training wall pillar
fd Unknown
fe Training border
ff-104 Workshop wall main (2 layers)
105-106 Unknown
107-109 Workshop non-centre
10a-10b Unknown
10c-10e Workshop wall corner centre
10f-114 Scavenger wall main (2 layers)
115 Unknown
116-118 Scavenger wall corner
119-11d Unknown
11e Temple wall corner
11f Unknown
120 Temple wall corner
121 Dungeon heart part
122 Temple wall corner
123 Temple pool
124-125 Unknown
126-12e Temple pool/magic door
12f-13a Temple wall main
14b-14e Library bookcase (ends)
14f-156 Hatchery wall main
157 Unknown
158 Hatchery wall corner centre
159 Hatchery pillar
15a Hatchery border
15b Hatchery wall corner centre
15c-162 Unknown
163-16b Wooden door
16c-174 Braced door
175-17d Iron door
17e-18d Unknown
185-18d Barracks main wall
18e-18f Axe for barracks pillar
190 Centre of barracks corner column
191-1a8 Unknown
1a9 Centre of portal
1aa-1b1 Unknown
1b2 Graveyard wall right/left (middle layer)
1b3 Graveyard wall right/left (bottom layer)
1b4-1b8 Unknown
1b9 Gems
1ba Gems
1bb Gems
1bc Gems
195-197 Twin wall (bottom layer of picture)
19a-1a5 Drapes (players 1-4)

In the original levels (and Unded ones, IIRC), only used subtiles have non-zero .clm entries. Adikted generates a standard .clm file, as this is much easier and has very few drawbacks as far as I can see. The table below gives (most of!) the values I know about. I haven't been particularly rigorous generating this table, but I'll add to it when I find some time. I've taken this entirely from my own source code (which in turn took most values from observations of original DK levels). Some cubes are used in several places; I've usually only put one use below. In the future, I hope to be able to show a picture of what each cube looks like (only one face is used, it's just rotated).

4.4 Column position data .DAT files

  • Size: 2*(85*3+1)*(85*3+1)=131072
  • Required?: Yes.
  • Compressed?: Always.
  • Description: Determines the graphics at the start of the game. When new areas are dug out or rooms are changed, computer automatically generates different graphics for these areas, but otherwise everything is in this file.
  • Format: Subtile map format, with 2 bytes per entry.
  • Notes: None.

The file has two bytes corresponding to every subtile on the map. It also defines the border subtiles, which are invisible. Border subtiles are: one at start and one at end of every column/row, so they are indexed 0 and 255.

If you treat the value for a subtile as a signed integer, and take the absolute value (or rather, just reverse the sign - I've never seen a positive one), you get the entry number in the .clm file.

How visibility is calculated:
At the start of the game, a square is visible to a player if either it is owned by them or it is possible to reach that square from the dungeon heart without going through walls.

4.5 Wibble .WIB files

  • Size: 65536
  • Required?: Yes.
  • Compressed?: Always.
  • Description: Determines which subtiles are animated.
  • Format: Subtile map with single byte entries. Each byte is 00, 01, or 02:
    • 00: Display the subtile without any change
    • 01: Skew the subtile slightly (default)
    • 02: Animate the subtile
  • Notes: Don't think individual subtiles can be animated... putting one animated subtile in a load of non-animated ones makes no difference.

The file has one byte corresponding to every subtile on the map. It also defines the border subtiles, which are invisible. Border subtiles are: one at start and one at end of every column/row, so they are indexed 0 and 255.

4.6 Water/Lava Block .WLB files

  • Size: 85*85=7225
  • Required?: No.
  • Compressed?: Unknown.
  • Description: Determines type of liquid each tile is.
  • Format: 85 lines of 85 tiles, each having one byte entry.
  • Notes: None.

Water and Lava Block files are used to mark where on the map the water and lava is located. Normally, liquid blocks are defined in SLB file. But if you will put a bridge over the water or lava, the information about what it really was is stored here.

5.0 Script files

.

5.1 Level script .TXT files

  • Size: Varies.
  • Required?: Yes.
  • Compressed?: Never.
  • Description: Level script which determines victory conditions, enemy keepers actions, training mode, etc.
  • Format: Text file.
  • Notes: Description of the language can be found in Script Commands Reference.

This is a pretty simple scripting language. There are no loops or jumps, and condition testing is very basic. There are only three statement forms - conditions, commands, and condition terminators. Conditions are naturally nested, but that's about as complicated as it gets.

Each line contains a single instruction. Whitespace in the form of spaces and tabs is ignored. Comments begin with REM. All unconditional commands (ie ones outside any condition statements) are executed at the beginning of the game, then ignored. All conditions are checked at regular intervals.

5.2 Script backup .OLD files

This file contains just a previous version of the level script (.TXT file). The .OLD files are created by some text editors as a backup.

5.3 Adikted script .ADI files

This is a text file which contains ADiKtEd script for levels which were edited using ADiKtEd. The script stores commands which are specific to ADiKtEd and cannot be used by the game or any other editor. Using this file, ADiKtEd can support some special functions, which were originally not supported by the game, such as Graffiti or Custom Columns.

6.0 Misellanous/unused files

Here you can find description of files which are unused because of various reasons.

6.1 Effects .EFF files

  • Size: 4804
  • Required?: No. Present for 21/58 levels.
  • Compressed?: Never.
  • Description: Unknown effects.
  • Format: Always the same - first 5 bytes are C8 00 00 00 04, rest are zeros.
  • Notes: None.

These were planned to be one of Object lists files. Unfortunately, they were never finished. The game never even tries to load the .EFF files. They are completely unused.

6.2 Description word .DOC files

These files are Microsoft Word documents, which were made as a text description of the map. Using a commercial program to write map descriptions wasn't very good idea, so the descriptions were abandoned.

Descriptions of the original maps in DOC files are inaccurate, incomplete and sometimes they are only templates without any information.

If you wish to create description of your map, you should use text files (ie. call it .NFO), HTML documents (.HTM), or Rich Text Format (.RTF). Using Ms Word format is not recommended.

6.3 Tile flags .FLG files

  • Size: 131072
  • Required?: Probably - doesn't exist for map 80.
  • Compressed?: Always
  • Description: Unknown.
  • Format: Subtile map with 2 byte entries. High byte of each entry is 0.
  • Notes: No idea what it does yet. On first map, seems to be very similar to the slab file (when you've changed the format and key) but the path to the North/North West of the dungeon heart is in the wrong place. All rooms seem to have a distinguishing byte or so in the bottom right corner. Could this be an old slab format?

.

6.4 Room origin .ORI files

  • Size: 65536
  • Required?: Probably not.
  • Compressed?: Always.
  • Description: Unknown.
  • Format: Always just zeros.
  • Notes: Obsolete file?

.

6.5 Version .VSN files

  • Size: 1
  • Required?: No.
  • Compressed?: Never.
  • Description: Versioning system.
  • Format: Single byte, 01 in every case.
  • Notes: None.

These files were supposed to create versioning system. The file contains one byte, which is always 01 in original maps.

The game engine isn't loading these files, neither any of the level editors.

6.6 .TMN files

  • Size: 1
  • Required?: No.
  • Compressed?: Never.
  • Description: The function of these files is not known.
  • Format: Always 1 byte, which is a 0.
  • Notes: none.

These files, similar to INF, consists on only one byte. But it is not certain if they always have size of 1 - maybe the first byte defines number of entries.

7.0 Credits

Documentation creator: Tomasz Lis

Used information provided by: Jon Skeet

8.0 Changes log

Version 1.1

  • Added more content; still much to do
  • Fixed .WLB explanation
  • Added position format explanation in object list files

Version 1.0

  • First reference, by Tomasz Lis
  • Used materials from Jon Skeet's webpage

9.0 References

  1. Dungeon Keeper Mapmaker's Documentation
  2. Dungeon Keeper Script Commands Reference
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment