Modding:Colors & Object Rendering

From Caves of Qud Wiki
Revision as of 14:42, 24 June 2019 by Egocarib (talk | contribs) (add a link to the qud-colorgen utility.)
Jump to navigation Jump to search

Overview

Colors are defined in display.text.

Each color is defined by a single letter. &<code> means to set the foreground color, ^<code> means to set the background color.

Only the preset letter codes are allowed, adding new colors isn't totally trivial at the moment.

Code Color
r dark red
R bright red
o dark orange
O bright orange
w brown
W yellow
g dark green
G bright green
b dark blue
B bright blue
c dark cyan
C bright cyan
m dark magenta
M bright magenta
k black
K dark grey
y bright grey
Y white

In XML files, such as ObjectBlueprints.xml, the ampersand (&) must be replaced by the encoded ampersand (&amp;)

Prefix Text Xml
Foreground &<code> &amp;<code>
Background ^<code> ^<code>

Render Part

ColorString contains the foreground and background string for the ascii and tiles. Example: &B^r

DetailColor changes the "third" color used only for tiles, not the ascii. DetailColor is always just a single character. Example: g

So ColorString="&M^g" would be foreground bright magenta with a background color of green.

TileColor overrides ColorString when tiles are being used.

If you want to color an item's display name, you enter color codes directly in the display name itself, for example the beaded bracelet:

<part Name="Render" DisplayName="&amp;Cb&amp;Be&amp;ba&amp;cd&amp;Ce&amp;Bd&amp;y bracelet" ColorString="&amp;C"></part>

Additional Notes

Most default text in the game is colored with the bright grey (&y) color, so you'll often see an &y at the end of strings to reset the color back to normal.

For help formatting a string with colors, check out the super-useful qud-colorgen utility (created by crayon).