Game Configuration - Map Format Settings

formatinterface (string)
Interface class name in Doom Builder that is used to read and write the map data.


gamedetect (structure)
This is used to determine if the Game Configuration is suitable for the opened WAD file. None of the settings in this structure have any impact on the actual editing, limitations or storage of the map, but only assist the user when opening WAD files that have not been opened with Doom Builder before (when no .dbs file is available). The setting names in this structure are the lump names that must be checked for. The value of these settings (integers) indicates which rule applies to the lump name for a positive check. Valid values are: Example:
gamedetect
{
	TEXTMAP = 2;
	ENDMAP = 2;
	EXTENDED = 2;
	BEHAVIOR = 3;
	E1M1 = 2;
	E1M2 = 2;
	E1M3 = 2;
	MAP01 = 1;
	MAP02 = 1;
	MAP03 = 1;
}

maplumpnames (structure)
This structure describes the lumps that make up the complete map, including scripts and nodes. It must also indicate what Doom Builder is supposed to do with these lumps and/or where the lumps come from. These lumps are normally written by the map format interface class, but some could be generated by the nodebuilder compiler or stored by Doom Builder directly. In this structure, there should be a structure for every map lump. The name of the structure should be the lump name, in uppercase. For the map header (which name differs) you can use the name ~MAP. The following settings should be in the lump structure (unless the default value applies):
Example:
maplumpnames
{
	~MAP
	{
		required = true;
		blindcopy = true;
		nodebuild = false;
	}
	
	THINGS
	{
		required = true;
		nodebuild = true;
		allowempty = true;
	}
	
	LINEDEFS
	{
		required = true;
		nodebuild = true;
		allowempty = false;
	}
	
	SIDEDEFS
	{
		required = true;
		nodebuild = true;
		allowempty = false;
	}
	
	VERTEXES
	{
		required = true;
		nodebuild = true;
		allowempty = false;
	}
	
	SEGS
	{
		required = false;
		nodebuild = true;
		allowempty = false;
	}
	
	SSECTORS
	{
		required = false;
		nodebuild = true;
		allowempty = false;
	}
	
	NODES
	{
		required = false;
		nodebuild = true;
		allowempty = false;
	}
	
	SECTORS
	{
		required = true;
		nodebuild = true;
		allowempty = false;
	}
	
	REJECT
	{
		required = false;
		nodebuild = true;
		allowempty = false;
	}
	
	BLOCKMAP
	{
		required = false;
		nodebuild = true;
		allowempty = false;
	}
	
	SCRIPTS
	{
		required = false;
		nodebuild = false;
		script = "ZDoom_ACS.cfg";
	}
}