Maps (folder)

The maps directory contains a sub-directory, “game”. Within this directory are the files of the actual Doom 3 levels. All files here are named after the level that the file belongs to. Maps in Doom 3 are defined by four different files, all of which are in ascii (plain text) so it should be very easy for other people to write editors and tools for them. For a map to work properly, all four files must be included (the only exception is that .AAS files are not needed for multiplayer maps).

Mapping Filetypes

[levelname]. MAP
The .MAP file is the main file that is created when you edit a file, it defines all the entities , brushes and patches in the map. The other three files are all generated from the .MAP file with the dmap command. The format hasn’t changed much from the Quake series. Unlike previous generation Quake MAP/BSP’s, Doom3 map files are used both in the editor as well as in-game - eliminating the need to compile the editor ‘map’ file into a ‘bsp’. Doom3 maps are pretty much executed on the fly. As well, map files are ‘open’ allowing developers to open any completed map in the editor for inspection.

[levelname]. CM
The .CM file defines the collision geometry in the map. It is used by the physics system for collision detection.

[levelname]. PROC
The .PROC contains all the pre-processed geometry in the map. It stores all the visible triangles, batched up in to surfaces. It also stores all the portal information, and any precalculated shadow volumes (if a light doesn’t move, and a brush doesn’t move, the shadow volume can be precalculated).

[levelname]. AAS [suffix]
The .AAS files contain the ‘area awareness’ data for the AI to navigate through the level. The .AAS file is generated to reflect the playable volume of the map that the monsters are allowed to roam about. For Doom 3 there are several different types of .AAS files signified by the suffix. These are used depending on the physical dimensions of monsters. For example, most monsters use .AAS48, while larger demons like the hell-knight use .AAS96. In addition, there are also special .AAS files for special monster types, .AAS_CYBERDEMON, .AAS_GUARDIAN, .AAS_MANCUBUS, .AAS_SABAOTH.