Palette (environment)
This page is an exhaustive listing of the 8-bit palette swaps in Duke Nukem 3D.
The data controlling them can be found and modified in the palette data files.
Colors of the base palette
The following plot shows the red, green and blue color intensities of Duke3D's base palette on a 0--1 scale. Base palette colors
It can be seen that it contains six ramps (sequences in which R, G and B all increase monotonically) of 32 colors, three blocks of 16 colors (two of which are ramps), and 16 remaining fullbright colors. Rearranging consecutive blocks of 16 colors by the permutation [0 1 2 3 5 4 6 7 8 13 10 11 12 9 14 15] makes this stand out more clearly: Rearranged base palette colors
Global Palettes
For use with setgamepalette:
ID | Palette | Image |
---|---|---|
0 | Normal | |
1 | Underwater | |
2 | Night Vision Goggles Submersible Slime |
|
3 | 3D Realms Logo (changed in v1.4) |
|
4 | Title Screen | |
5 | Episode 1 Ending | |
6 | Temporary slot for self-contained ANM palettes. Example provided is LOGO.ANM. |
Palette Swaps
For use with spritepal, pal, et cetera:
ID | Image | Effect | Description |
---|---|---|---|
0 3 9 empty |
Normal | Default color Player 1 (ID 9) | |
1 | All blue | Frozen creatures Unavailable menu option Blue lights | |
2 | All red | Blood pool Red lights | |
4 | Full black (including fullbrights) | Shadows | |
5 | Red to brown | Brown Team (Duke-Tag) Exit Level Nuke | |
6 | All reverse green | Night Vision Goggles heat Protozoid Slimer, Protector Drone, and Alien Queen gibs | |
7 | All yellow | Slime splash, FECES puddle Yellow/Brown lights | |
8 | All green | Green lights | |
10 | Blue to dark red | Player 2 | |
11 22 |
Blue to green | Player 3 (ID 11) Assault Trooper (ID 22) | |
12 18 |
Blue to gray | Player 4 (ID 12) | |
13 | Blue and red to dark gray | Player 5 | |
14 | Blue and red to dark green | Player 6 Secret Exit Level Nuke | |
15 | Blue to brown | Player 7 | |
16 | Blue to dark blue | Player 8 | |
17 | Brown, green, orange and purple to blue Blue to green |
||
19 | Brown, green, orange and purple to red Blue to green |
||
20 | Brown, green, orange and purple to blue Blue to gray |
||
21 | Blue to red | Red Key Card Assault Captain Battlelord Sentry | |
23 | Blue to yellow | Yellow Key Card | |
24 | Gray to red Red to gray |
||
25 | Green to red |
Fog Palettes
EDuke32 includes four fog palettes starting at palette index 26.
Note that lookup.dat can be modified to support more than 25 palette remaps for 8-bit sprites; in this case, the included fog palettes start wherever the first unused palette position is. For example, a modified copy of lookup.dat with 30 remaps instead of 25 would result in the fog palettes occupying indexes 31, 32, 33, and 34 instead of 26, 27, 28, and 29.
They are:
fogpal 26 63 63 63 fogpal 27 63 0 0 fogpal 28 0 63 0 fogpal 29 0 0 63
This gives the fog colors of white (26), red (27), green (28) and blue (29).
Empty Slots
All empty palette swaps, including those without fog palettes, default to pal 0.
If you are using defs to add additional skins or variations to empty palette slots of a model or texture which do not correspond to any palette swap, or fog palettes, it is very highly recommended to begin the indices for your custom variations at palette value #133. This is because modified LOOKUP.DAT and PALETTE.DAT files such as ExtCLUT can contain up to 128 palette entries. These additional values may conflict with your custom feature. The extra four spaces are to account for the predefined fogpals explained above.