DDF Styles - edge-classic/EDGE-classic GitHub Wiki
Stored in the DDFSTYLE data lump, or the styles.ddf file.
DDFSTYLE allows you to define the background color/image and text font/color/scaling information (and sounds too) for various parts of EDGE-Classic's user interface.
Each entry describes a section of the UI and consists of a unique name, enclosed in square brackets, followed by a series of commands that define the "style" to use. To modify one of the default styles EDGE uses you must use the appropriate hard-coded entry name:
MENU MAIN_MENU CHOOSE_SKILL CHOOSE_EPISODE LOAD_MENU SAVE_MENU OPTIONS EXIT_SCREEN STATS CONSOLE INTERLEVEL_TEXT CAST_SCREEN MESSAGES IMPORTANT_MESSAGES RTS_TIP AUTOMAP HOST_NETGAME
Note that RTS_TIP is limited to allow only the TEXT.FONT command: other stuff like text size, colour etc. depends on the RTS tip slot definition.
BACKGROUND COMMANDS
The following is a list of the commands that are accepted by BACKGROUND:
| COMMAND | TYPE | EXPLANATION |
|---|---|---|
| BACKGROUND.COLOUR | [hex] | Specify a colour directly without needing any lumps. Example: BACKGROUND.COLOUR = #FF9030; //Orange |
| BACKGROUND.IMAGE | [image name] | The image to show behind any text. |
| BACKGROUND.TRANSLUCENCY | [percentage] | The percentage of translucency. 0% is invisible, while 100% is visible. |
| BACKGROUND.ASPECT | [float] | Adjusts the width of the image. 1 is normal, 0.5 makes for tall and skinny, 2.0 makes for obese. |
| BACKGROUND.SCALE | [float] | Stretches or shrinks the total size (width and height) of the image. 1 is normal perspective, 0.5 will make image half normal size. Used when you wish to use a larger and more detailed image than normal DOOM. |
| SPECIAL | [special] | A comma separated list of special flags. See below. |
TEXT, ALT, TITLE, HELP, HEADER or SELECTED COMMANDS
The following is a list of the commands that can be used after the ".": i.e. TEXT.FONT:
| COMMAND | TYPE | EXPLANATION |
|---|---|---|
| .COLOURMAP | [colourmap] | Used to remap text colours. The value is a reference to an entry in colmap.ddf. Examples: 'TEXT_RED', 'TEXT_LT_BLUE', 'ALLWHITE'. |
| .FONT | [font name] | The font(defined in DDFFONTS) to use for the text. |
| .TRANSLUCENCY | [percentage] | The percentage of translucency. 0% is invisible, while 100% is visible. |
| .ASPECT | [float] | Adjusts the width of the text. 1 is normal, 0.5 makes for tall and skinny, 2.0 makes for obese. |
| .SCALE | [float] | Stretches or shrinks the total size (width and height) of the text. 1 is normal perspective, 0.5 will make image half normal size. Used when you wish to use a larger and more detailed image than normal DOOM. |
| .X_OFFSET | [float] | Can be used to offset text-based menus |
| .Y_OFFSET | [float] | Can be used to offset text-based menus |
Specific COMMANDS for Menu items
The following is a list of the commands can be used to change ECs Menus:
| COMMAND | TYPE | EXPLANATION |
|---|---|---|
| ENTRY_ALIGNMENT | [string] | Used to set text/image alignment for menu item names. The value can be: 'LEFT', 'CENTER' or 'RIGHT'. |
| CURSOR.POSITION | [string] |
Used to determine cursor position relative to menu item. The value can be: 'LEFT', 'CENTER', 'RIGHT' or 'BOTH'. "BOTH" will drawn the cursor in both LEFT/RIGHT positions. Defaults to "LEFT". |
| CURSOR.BORDER | [boolean] | Only has an effect when the cursor position is set to CENTER. Will scale up to the dimensions of the tallest menu item. Good for highlights/frames/border style cursors. |
| CURSOR.TRANSLUCENCY | [percentage] | The percentage of translucency. 0% is invisible, while 100% is visible. |
| CURSOR.IMAGE | [image name] | The image to use instead of the default for this menu's cursor. |
| CURSOR.STRING | [string] | If present, will use these characters from the style's font as the cursor instead of an image. |
| CURSOR.SCALING | [boolean] | Will set whether or not the cursor scales proportionally to menu item heights. Defaults to true. |
SPECIALS
These allow some control over the ways the image is used.
| SPECIAL | EXPLANATION |
|---|---|
| TILED | Background image should tile (otherwise covers whole area). |
| TILED_NOSCALE | Background image should tile (1:1 pixels) |
| NO_STRETCH_FULLSCREEN | Background image will NOT be stretched to fill the screen |
| CURSOR_RIGHT | Menu cursor will be drawn on the right side of menu entries |
The following is an example of an RTS_MENU style entry:
[MENU3]
BACKGROUND.IMAGE="WNTPSTR2";//background image
BACKGROUND.TRANSLUCENCY=100%; //solid image
//TITLE controls the question part of the RTS menu
TITLE.FONT="DOOM";
TITLE.COLOURMAP="TEXT_YELLOW";
TITLE.SCALE=1.1; //make the text a bit bigger
//TEXT controls the menu options
TEXT.FONT="VERDANA";
TEXT.COLOURMAP="TEXT_GREEN";
TEXT.SCALE=0.9;//make the text a bit smaller
DDF docs written by Andy Baker and Ziggy Gnarly, with updates by Andrew Apted, Andy Brewood and Luke Brennan. © EDGE Team, et al. 1998 - 2024.