Definition Scripts
Definition Scripts
MapInfo
The MapInfo script is used to define characteristics of the levels. Currently it only can contain map definitions (note: this
doesnʼt seem to be up-to-date information, skill definitions can also be tuned using MapInfo).
Map definition
A map definition begins with the “map” keyword. You can also specify standard characteristics for later map definitions
by using the word “defaultmap” instead.
defaultmap
levelnum <number>
Defines a number of this map that is used in MapTeleport and StartACS specials.
warptrans <number>
Actual map number in case maps are not sequential. A map with ”WARPTRANS 1” is a map where Vavoom running will
start the game (from the main menu) in Doom 2 and Hexen. All other values are ignored (thereʼs no more ”-warp” option
and the console command MAP takes the mapʼs lump name, not number).
next <mapname>
Map to teleport to upon exit of timed deathmatch or with the normal exit action special
Note (for timed deathmatches): In the normal gameplay, there is no linear fashion in which the game progresses from one
level to another; you just go through a teleport somewhere on a level, and it takes you to somewhere on another level. For
timed deathmatch, the game needs to know what level to proceed to because it isnʼt always just the next higher level.
secret <mapname>
music <lumpname>
MUS or MIDI to play during the level, replaces entries in SNDINFO script
cdtrack <number>
cluster <number>
1 of 6
The game maps are divided into clusters. When you enter a new cluster, you can never again visit any of the levels from
the previous cluster. This makes it so each individual save game only needs to backup map archives for about 6-7 maps,
and provides a milestone marker of sorts for gameplay, like an episode — a Hexen backdrop and some text are given at
the end of each cluster.
If you donʼt enter a cluster, it defaults to 0. Cluster 0 is treated as no-cluster, all maps in cluster 0 are treated as in
different clusters.
doublesky
lightning
Keyword indicating the use of lightning on the level flashes from sky1 to sky2 (see also: IndoorLightning special)
skybox <name>
fadetable <lumpname>
When set to FOGMAP, the level will have fog, other values are ignored
gravity <value>
This parameter can set the gravity of the whole map, you can combine this parameter with the SetGravity special, if itʼs
not specified its default value is 0. Not that here it uses an integer instead of a float, so “gravity 800” would be the same
as not using the argument, “gravity 1600” would double the gravity and “gravity 400” would halve it.
Episode Definitions
An episode definition begins with the word “episode”. You can also clear previous episodes by using the “clearepisodes”
word. If there is only one episode, then the player will not be prompted.
episode <maplump>
Substitute the map name of the map that you want the episode to start on for <maplump>. <maplump> can be any lump
in the WAD, as long as it is a valid map file.
This is the episodeʼs name as text. If you do not provide a picname, then Vavoom will display this text.
picname <piclump>
Replace <piclump> with the graphic lump that you wish to use on episode selection menu screen. If you specify an invalid
lump, the invalid graphic image will be used. If you specify “”, no graphic will be used. If you omit this word, then the
name that you provided in name will be displayed instead.
key <key>
2 of 6
This sets a shortcut key for the menu selection. Any key on the keyboard is valid.
remove
This removes the episode. I donʼt see why you would remove an episode that you have just defined, but the option is
there.
noskillmenu
Disables the skill menu for this episode, instead it always starts on skill 2.
clearepisodes
This clears all previous episodes. This could be used if you wish to have fewer episodes than are originally present in the
IWAD that you are using.
Examples
episode e1m1
name "Knee Deep in the Dead"
picname m_epi1
key k
SndInfo
SndInfo contains many sound-related definitions. It allows any sound referred to by its lump name (DSSAWHIT,
DSBAREXP, etc) to be associated with any game event sound such as player pain, or death. The names by which the
3 of 6
predefined sounds are referred to in SndInfo are fairly self-explanatory, so I will not cover them now.
SndInfo lumps are cumulative. All SndInfo lumps found are read in WAD directory order. This means that you donʼt have
to (in fact you must not) copy all information from the original SndInfo lump if you want to change something.
An interesting note: the Vavoom engine supports different player pain sounds depending on health. In Doom, Heretic and
Hexen there is only one player pain sound, so it is handled like this in SndInfo:
The *pain100 used instead of a lump name for pain75, pain50, and pain25 to refer to tells those sounds to refer to
pain100 for a sound lump to play.
If you want, you can change this so that you really have different pain sounds.
SkyBoxes
This script describes how to define skyboxes for use ingame.
Skyboxes are special sky textures drawn similarly to those used in Quake engine games, the game draws a cube filled
with the textures used for each side of the cube, these textures can be in any format supported by the Vavoom engine:
JPG, PNG, BMP, PCX or TGA.
The script is a simple text file, defining each of the six sides of the cube in a separate segment.
Example:
rock_dawn
{
{
// Right
map textures/skies/rkdawnrt.tga
}
{
// Front
map textures/skies/rkdawnft.tga
}
{
// Left
map textures/skies/rkdawnlf.tga
}
{
// Back
map textures/skies/rkdawnbk.tga
}
{
// Up
map textures/skies/rkdawnup.tga
5 of 6
}
{
// Down
map textures/skies/rkdawndn.tga
}
}
6 of 6