Skip to content
Cataclysm: Bright Nights
GitHubDiscord

Colors

BN is a colorful game. You can use several foreground and background colors in various places:

  • map data (terrain and furniture);
  • item data;
  • text data;
  • etc.

Note: Map data objects can only have one color-related node defined (either color or bgcolor).

Color string format

Whenever color is defined in JSON it should be defined in following format: Prefix_Foreground_Background.

Prefix can take one of following values:

  • c_ - default color prefix (can be omitted);
  • i_ - optional prefix which indicates that foreground color should be inverted (special rules will be applied to foreground and background colors);
  • h_ - optional prefix which indicates that foreground color should be highlighted (special rules will be applied to foreground and background colors).

Foreground - defines mandatory color of foreground/ink/font.

Background - defines optional color of background/paper.

Note: Not all foreground + background pairs are defined by their full name. Use in-game Color manager to see all color names.

Note: If color was not found by its name, then c_unset is used for Foreground and i_white for Background.

Examples of color strings

  • c_white - white color (with default prefix c_);
  • black - black color (default prefix c_ is omitted);
  • i_red - inverted red color;
  • dark_gray_white - dark_gray foreground color with white background color;
  • light_gray_light_red - light_gray foreground color with light_red background color;
  • dkgray_red - dark_gray foreground color with red background color (deprecated prefix dk instead of dark_);
  • ltblue_red - light_blue foreground color with red background color (deprecated prefix lt instead of light_).

Color code

Color code is short string which defines color and can be used, for example, in maps notes.

Possible colors

Color (image)Color name (cataclysm)Color name (curses)Default R,G,B valuesColor codeNotes
#000000blackBLACK0,0,0
#ff0000redRED255,0,0R
#006e00greenGREEN0,110,0G
#5c3317brownBROWN92,51,23br
#0000c8blueBLUE0,0,200B
#8b3a62magenta or pinkMAGENTA139,58,98P
#0096b4cyanCYAN0,150,180C
#969696light_grayGRAY150,150,150lgdeprecated lt prefix can be used instead of light_
#636363dark_grayDGRAY99,99,99dgdeprecated dk prefix can be used instead of dark_
#ff9696light_redLRED255,150,150deprecated lt prefix can be used instead of light_
#00ff00light_greenLGREEN0,255,0gdeprecated lt prefix can be used instead of light_
#ffff00light_yellowYELLOW255,255,0deprecated lt prefix can be used instead of light_
#6464fflight_blueLBLUE100,100,255bdeprecated lt prefix can be used instead of light_
#fe00felight_magentaLMAGENTA254,0,254lmdeprecated lt prefix can be used instead of light_
#00f0fflight_cyanLCYAN0,240,255cdeprecated lt prefix can be used instead of light_
#ffffffwhiteWHITE255,255,255W

Note: Default RGB values are taken from file \data\raw\colors.json. Note: RGB values can be redefined in file \config\base_colors.json.

Color rules

There are two types of special color transformation which can affect both foreground and background color:

  • inversion;
  • highlight.

Note: Color rules can be redefined (for example, \data\raw\color_templates\no_bright_background.json).