Duke Nukem 3D uses the DeluxePaint Animation format for displaying its cutscenes and logos. These are a sequence of ZSoft PCX images within the ANM file.
You can create your own ANM files, as well as extract the PCX files from an existing ANM file by using the ANIM2PCX tool.
Although ANM files are limited to a 8bit palette, you can have a custom one in every animation for higher image quality. Please note that the first color in the palette used is used as background color during blitting and filling of the screen. All resulted letterboxing will use this color as the background color. While the animation changes, it's also possible that you will see the screen filled with this color for a single game tick.
Unless each of the PCX images within the ANM file have the same palette, the palette of the first file will be used for the remainder of frames.Template:Citation needed
List of animations
These are all the animations that exist by default in Duke Nukem 3D (1.5) and their framerates.
#
|
Name
|
Framerate
|
1
|
cineov2
|
120/10
|
2
|
cineov3
|
120/10
|
3
|
RADLOGO
|
120/10
|
4
|
DUKETEAM
|
120/10
|
5
|
logo
|
120/9
|
6
|
vol41a
|
120/14
|
7
|
vol42a
|
120/18
|
8
|
vol4e1
|
120/10
|
9
|
vol43a
|
120/10
|
10
|
vol4e2
|
120/14
|
11
|
vol4e3
|
120/10
|
By default, the game looks for a file with the extension .ANM for each animation file, but with the addition of IVF support in EDuke32, you can also use the IVF container for custom animations.
Full list of sounds played for each animation
By replacing these sounds, you can customize your own animation files with new sound files. The frames they're played on are hard-coded, but listed here for ease of use.
cineov2
Frame
|
Sounds
|
1
|
WIND_AMBIENCE
|
26
|
ENDSEQVOL2SND1
|
36
|
ENDSEQVOL2SND2
|
54
|
THUD
|
62
|
ENDSEQVOL2SND3
|
75
|
ENDSEQVOL2SND4
|
81
|
ENDSEQVOL2SND5
|
115
|
ENDSEQVOL2SND6
|
124
|
ENDSEQVOL2SND7
|
|
cineov3
Frame
|
Sounds
|
1
|
WIND_REPEAT
|
98
|
DUKE_GRUNT
|
82+20
|
THUD, SQUISHED
|
104+20
|
ENDSEQVOL3SND3
|
114+20
|
ENDSEQVOL3SND2
|
158
|
PIPEBOMB_EXPLODE
|
|
logo
Frame
|
Sounds
|
1
|
FLY_BY
|
19
|
PIPEBOMB_EXPLODE
|
|
vol41a
Frame
|
Sounds
|
1
|
INTRO4_1
|
12
|
INTRO4_2
|
7
|
INTRO4_3
|
26
|
INTRO4_4
|
|
vol42a
Frame
|
Sounds
|
1
|
INTRO4_B
|
12
|
SHORT_CIRCUIT
|
34
|
SHORT_CIRCUIT
|
18
|
INTRO4_5
|
|
vol4e1
Frame
|
Sounds
|
3
|
DUKE_UNDERWATER
|
35
|
VOL4ENDSND1
|
|
vol43a
Frame
|
Sounds
|
10
|
INTRO4_6
|
|
vol4e2
Frame
|
Sounds
|
11
|
DUKE_UNDERWATER
|
20
|
VOL4ENDSND1
|
39
|
VOL4ENDSND2
|
50
|
FX_StopAllSounds();
|
|
vol4e3
Frame
|
Sounds
|
1
|
BOSS4_DEADSPEECH
|
40
|
VOL4ENDSND1, DUKE_UNDERWATER
|
50
|
BIGBANG
|