Difference between revisions of "Doom Definition File"
UsernameAK (talk | contribs) |
UsernameAK (talk | contribs) (Undo revision 400 by UsernameAK (talk)) |
||
Line 19: | Line 19: | ||
<BR>eg // This is ignored.'' | <BR>eg // This is ignored.'' | ||
− | '''Spaces are ignored.''' So this means that calling your monster | + | '''Spaces are ignored.''' So this means that calling your monster [EVIL |
− | MONSTER] | + | MONSTER] is exactly the same as calling it [EVILMONSTER] since the DDF |
parser will ignore the space. ''The underscore '_' character is | parser will ignore the space. ''The underscore '_' character is | ||
converted to a space.'' So you'd use EVIL_MONSTER if you wanted the DDF | converted to a space.'' So you'd use EVIL_MONSTER if you wanted the DDF |
Revision as of 01:06, 20 April 2016
DDF stands for Doom Definition File, and is EDGE's answer to DehackEd. However, DDF is much easier to learn than DehackEd, and allows you to do a number of unique things were simply not possible with DehackEd.
Indeed, DDF has more in common with the .CON files that enabled users to modify the gameplay of Duke Nukem 3D. Unlike DehackEd, which could be complex and not particularly intuitive, DDF uses fairly simple, easily understood commands.
Getting Started
To get started, use the SIDEBAR to the left of this Wiki (click on DDF to expand each DDF entry).
How DDF works
A DDF file is a simple text file that describes an object.
Comments: Anything after // are comments. They are
ignored by the parser.
eg // This is ignored.
Spaces are ignored. So this means that calling your monster [EVIL MONSTER] is exactly the same as calling it [EVILMONSTER] since the DDF parser will ignore the space. The underscore '_' character is converted to a space. So you'd use EVIL_MONSTER if you wanted the DDF parser to recognise a monster called EVIL MONSTER.
Upper and lower case is ignored (so writing SHOTGUN is the same as writing shotgun).
Anything between quotes '"' is parsed as is eg "MAP01: Containment area". This means that spaces and upper and lower case characters will be recognized. This is especially important for names of lumps or textures, since any '_' characters would normally be converted to spaces and 3DGE would complain about a missing lump/texture.
The main structure to define an object is
[name]
param1=data1;
param2=data2;
The name of the object is the name used to refer to it. Names should be unique, since when there are two entries with the same the later one will override the earlier one. In some DDF files the names are ignored. Param1 and data1 etc are dependent on what type of object you are trying to define. Put a semicolon after each define.
param=data1,data2,data3;
is the same as
param=data1;
param=data2;
param=data3;