|This article is about an older version of DF.|
Color is used to express various information, from a dwarf's profession to the natural color of a terrain feature to the material an item is made of.
Wall vs. floor color
- If the BASIC_COLOR tag is specified, it will use that color. Note that the BASIC_COLOR tag only has foreground and brightness as arguments.
- If BASIC_COLOR is left out:
- The background color is forced to 0 (effectively stripping it).
- If the foreground color is 0, the game will display it as dark grey, color 8 (in other words, color 0 with brightness 1).
This is effective for stairs, floors, ramps, and constructions (in the case of stone). When stone is engraved, it returns to the original color specified in MATGLOSS. The relevant matgloss files are the ones that begin with "matgloss_stone_".
If you wish to change how a specific item appears in the game, you can modify what colors are associated with that item.* Various moddable files use one of the two color definitions below.
Colors are primarily defined using the [COLOR:foreground:background:brightness] flag. The three arguments are:
- Foreground color [0-7]
- Background color [0-7]
- Brightness of the foreground color [0 or 1]
The brightness of the background color is always 0.
By default*, the following 8 pairs of colors are displayed:
- (* See color scheme for information about how to change the actual various colors as displayed.)
Sometimes the color numbers are part of another flag, e.g. the last three arguments of
[EXTRACT:golden salve:6:0:1] express the color yellow on black.
Interesting Color Effects
If the brightness value is 1 or another nonzero number, it adds 8 to the foreground color. If the final value of the foreground or background is 8-15, it appears as a "bright" color. As these values can be manually typed in instead of using the brightness value, you can also give the background a bright color with this method.
Values higher than 15:
If the foreground color is higher than 15 for any reason, the tile or creature will take the color of whatever tile was in that position on the screen in the previous frame. If the background color value is higher than 15, it also acts this way, taking the background color of the previous tile to inhabit that location.
Dyes do not use color flags, they reference color tokens defined in descriptor_color_standard.txt. Color tokens are simply referenced by the token name, e.g.
[MILL_DYE:EMERALD]. However, the defined RGB values are never actually displayed in-game - instead, the game uses one of the above 16 colors, choosing the one with the closest RGB values.
The following colors are defined via tokens:
NOTE: Often these number must be expressed in "hexadecimal" (base 16) - do a web search for key words "decimal hex converter", and you should find several. For further information, see this article.