Type none Guide
Summary How colour works in the game's text, and the tool that builds gradients.
Tags text, colour
For Anyone writing a description
Commands help colors
First version
Game text takes colour from pipe codes. `help colors` in the game lists every code the server accepts; the short version is that a code starts with a pipe and colours whatever follows it.
## The codes
- `|r`–`|x` set the sixteen terminal colours. Lowercase letters are the bright half; uppercase letters are the dark half.
- `|500`–`|555` set any of the 216 xterm256 cube colours, and `|=a`–`|=z` walk the greys from black to white.
- `|#rrggbb` sets a 24-bit colour, and `|#rgb` is the short form. A client without 24-bit colour is shown the nearest xterm256 colour instead.
- `|[` before any of these sets a background instead of a text colour. `|n` resets, and `||` writes a literal pipe.
Colour codes do not count against the visible-character limit on authored fields such as worn descriptions. The words do.
## The colour tool
The [colour tool](https://underspire.net/tools/colors/) builds gradients: choose a ramp, type the line, and it prints the result the way the game will, with the codes ready to copy. Every ramp is interpolated in OKLab, so it stays even across its length instead of crossing a muddy middle, and the tool works with JavaScript off.
Each ramp carries its character, a value fade or a hue sweep, warm or cool, deep or bright, and the filter finds ramps by those words, as well as by name and family. Backgrounds have a text-safe variant that keeps the ramp dark enough for a light foreground.
Every ramp prints as truecolor or as xterm256. Xterm output picks the nearest terminal colour, cube or grey, so a dark line keeps its shape instead of collapsing to near-black. The `Xterm` family is drawn in the cube's own colours. `Mirror` reads a ramp out and back, so the line turns at its middle.
Tailoring, tattoos, and body descriptions take text colour and not backgrounds. Artwork canvases take any colour, backgrounds included.
Line by line
…
+ Game text takes colour from pipe codes. `help colors` in the game lists every code the server accepts; the short version is that a code starts with a pipe and colours whatever follows it.
+
+ ## The codes
+
+ - `|r`–`|x` set the sixteen terminal colours. Lowercase letters are the bright half; uppercase letters are the dark half.
+ - `|500`–`|555` set any of the 216 xterm256 cube colours, and `|=a`–`|=z` walk the greys from black to white.
+ - `|#rrggbb` sets a 24-bit colour, and `|#rgb` is the short form. A client without 24-bit colour is shown the nearest xterm256 colour instead.
+ - `|[` before any of these sets a background instead of a text colour. `|n` resets, and `||` writes a literal pipe.
+
+ Colour codes do not count against the visible-character limit on authored fields such as worn descriptions. The words do.
+
+ ## The colour tool
+
+ The [colour tool](https://underspire.net/tools/colors/) builds gradients: choose a ramp, type the line, and it prints the result the way the game will, with the codes ready to copy. Every ramp is interpolated in OKLab, so it stays even across its length instead of crossing a muddy middle, and the tool works with JavaScript off.
+
+ Each ramp carries its character, a value fade or a hue sweep, warm or cool, deep or bright, and the filter finds ramps by those words, as well as by name and family. Backgrounds have a text-safe variant that keeps the ramp dark enough for a light foreground.
+
+ Every ramp prints as truecolor or as xterm256. Xterm output picks the nearest terminal colour, cube or grey, so a dark line keeps its shape instead of collapsing to near-black. The `Xterm` family is drawn in the cube's own colours. `Mirror` reads a ramp out and back, so the line turns at its middle.
+
+ Tailoring, tattoos, and body descriptions take text colour and not backgrounds. Artwork canvases take any colour, backgrounds included.
This is the current version.