Variable Information
Out of the box, Odamex will function nearly identical to how Doom did when it was originally released. However, with two decades of progress, Odamex has given players and server administrators a number of options that allow for a wide range of play types. A wide variety of sample configurations are provided with the Odamex installation in the "config-samples" directory. There are a number of terms you should know when dealing with the variables listed below.
Value Types
- Boolean - A binary variable. These variables only respond to the values 0 and 1. Imagine it as a light switch where 0 is off and 1 is on.
- Float - A number value that can have a variety of ranges. For the purposes of Odamex, these values are typically represented in a decimal form (e.g. "1.5")
- Integer - A whole number value, no decimals.
- String - A non-numerical value, usually a word or phrase.
Variable Types
- Archived - The value for this variable will be saved and stored to the config file if it is changed.
- Latched - A change to this type of variable will not take effect until after a map change.
- Server Info - The values of these variables are sent to clients and launchers.
- Read-Only - These variables cannot be changed. Used to output information.
Server Variables
Network/Broadcast/Administrative Settings
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
configver |
Integer |
|
If blank, outputs value of Odamex version that config was generated on. |
Y |
N |
N |
N
|
developer |
Boolean |
0 |
Debugging mode. |
N |
N |
N |
N
|
join_password |
String |
|
Clients can connect if they have this password. |
Y |
N |
N |
N
|
log_fulltimestamps |
Boolean |
0 |
Extended timestamp info (dd/mm/yyyy hh:mm:ss). |
Y |
N |
N |
N
|
log_packetdebug |
Boolean |
0 |
Print debugging messages for each packet sent. |
Y |
N |
N |
N
|
port |
Integer |
10666 |
Display currently used network port number. |
N |
N |
N |
Y
|
rcon_password |
String |
|
Remote console password. |
Y |
N |
N |
N
|
sv_banfile |
String |
banlist.json |
Default file to save and load the banlist. |
Y |
N |
N |
N
|
sv_banfile_reload |
Integer |
0 |
Number of seconds to wait before automatically loading the banlist. |
Y |
N |
N |
N
|
sv_email |
String |
email@domain.com |
Administrator email address. |
Y |
N |
Y |
N
|
sv_flooddelay |
Float |
1.5 |
Chat flood protection time, in seconds. |
Y |
N |
N |
N
|
sv_hostname |
String |
Untitled Odamex Server |
Server name to appear on masters, clients, and launchers. |
Y |
N |
Y |
N
|
sv_maxrate |
Integer |
200 |
Forces clients to be on or below this rate, in kbps. |
Y |
N |
N |
N
|
sv_motd |
String |
Welcome to Odamex |
Message of the day to display to clients upon connecting. |
Y |
N |
Y |
N
|
sv_natport |
Integer |
|
NAT firewall workaround, this is a port number. |
Y |
N |
N |
N
|
sv_ticbuffer |
Boolean |
1 |
Buffer controller input from players experiencing sudden latency spikes for smoother movement. |
Y |
N |
Y |
N
|
sv_usemasters |
Boolean |
1 |
Advertise on the Odamex master servers. |
Y |
N |
N |
N
|
sv_waddownload |
Boolean |
0 |
Allow downloading of wads from this server. |
Y |
N |
Y |
N
|
sv_waddownloadcap |
Integer |
200 |
Cap wad file downloading to a specific rate, in kbps. |
Y |
N |
N |
N
|
sv_website |
String |
http://odamex.net/ |
Server or admin website. Some third-party wad downloading utilities may refer to this url. |
Y |
N |
Y |
N
|
waddirs |
String |
|
Allow custom WAD directories to be specified. |
Y |
N |
N |
N
|
General Game Conditions
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
sv_allowcheats |
Boolean |
0 |
Allow usage of cheats in all game modes. |
Y |
N |
Y |
N
|
sv_allowexit |
Boolean |
1 |
Allow use of Exit switch/teleports in all game modes. |
Y |
N |
Y |
N
|
sv_clientcount |
Integer |
|
Read-only. Set to the number of connected players (for scripting). |
N |
N |
N |
Y
|
sv_emptyfreeze |
Boolean |
0 |
Freezes the game state when no clients are connected. |
Y |
N |
N |
N
|
sv_emptyreset |
Boolean |
0 |
Reloads the current map when all clients disconnect. |
Y |
N |
N |
N
|
sv_fraglimit |
Integer |
0 |
Sets the amount of frags a player can accumulate before the game ends. |
Y |
N |
Y |
N
|
sv_gametype |
Integer |
0 |
Sets the game mode, values are: 0 = Cooperative, 1 = Deathmatch, 2 = Team Deathmatch, 3 = Capture The Flag |
Y |
Y |
Y |
N
|
sv_intermissionlimit |
Integer |
10 |
Sets the time limit for the intermission to end, in seconds. |
Y |
N |
Y |
N
|
sv_maxclients |
Integer |
4 |
Maximum clients that can connect to a server. |
Y |
Y |
Y |
N
|
sv_maxplayers |
Integer |
4 |
Maximum number of players that can join the game, the rest are limited to spectating. |
Y |
Y |
Y |
N
|
sv_scorelimit |
Integer |
5 |
Game ends when team score is reached in Teamplay/CTF. |
Y |
N |
Y |
N
|
sv_shufflemaplist |
Boolean |
0 |
Randomly shuffle the map list. |
Y |
N |
N |
N
|
sv_skill |
Integer |
3 |
Sets the skill level, values are: 0 - No things mode, 1 - I'm Too Young To Die, 2 - Hey, Not Too Rough, 3 - Hurt Me Plenty, 4 - Ultra-Violence, 5 - Nightmare |
Y |
Y |
Y |
N
|
sv_timelimit |
Integer |
0 |
Sets the time limit for the game to end, in seconds. |
Y |
N |
Y |
N
|
General Gameplay
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
sv_allowjump |
Boolean |
0 |
Allows players to jump when set in all game modes. |
Y |
N |
Y |
N
|
sv_dmfarspawn |
Boolean |
0 |
When enabled, players will spawn at the farthest point from each other. |
Y |
Y |
Y |
N
|
sv_doubleammo |
Boolean |
0 |
Give double ammo regardless of difficulty. |
Y |
N |
Y |
N
|
sv_forcerespawn |
Boolean |
0 |
Force a player to respawn. |
Y |
N |
Y |
N
|
sv_forcerespawntime |
Integer |
30 |
Force a player to respawn after a set amount of time, in seconds. |
Y |
N |
Y |
N
|
sv_fragexitswitch |
Boolean |
0 |
When enabled, exit switch will kill a player who uses it. Prevents exiting. |
Y |
N |
Y |
N
|
sv_freelook |
Boolean |
0 |
Allow looking up and down. |
Y |
N |
Y |
N
|
sv_infiniteammo |
Boolean |
0 |
Infinite ammo for all players. |
Y |
N |
Y |
N
|
sv_itemrespawntime |
Integer |
30 |
If sv_itemsrespawn is set, items will respawn after this time, in seconds. |
Y |
N |
Y |
N
|
sv_itemsrespawn |
Boolean |
0 |
Items will respawn after a fixed period, see sv_itemrespawntime. |
Y |
Y |
Y |
N
|
sv_maxcorpses |
Integer |
200 |
Maximum corpses to appear on a map. |
Y |
N |
N |
N
|
sv_unblockplayers |
Boolean |
0 |
Allows players to walk through other players |
Y |
Y |
Y |
N
|
sv_weapondamage |
Float |
1 |
Amount to multiply player weapon damage by. (1.0 = 100%) |
Y |
Y |
Y |
N
|
sv_weaponstay |
Boolean |
1 |
Weapons stay after pickup. |
Y |
Y |
Y |
N
|
Single Player/Coop
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
sv_coopspawnvoodoodolls |
Boolean |
1 |
Spawn voodoo dolls in cooperative mode. |
N |
Y |
Y |
N
|
sv_coopunassignedvoodoodolls |
Boolean |
1 |
Insert explanation for this. |
N |
Y |
Y |
N
|
sv_coopunassignedvoodoodollsfornplayers |
Integer |
1 |
Insert explanation for this. |
N |
Y |
Y |
N
|
sv_fastmonsters |
Boolean |
0 |
Monsters are at nightmare speed. |
Y |
N |
Y |
N
|
sv_keepkeys |
Boolean |
0 |
Keep keys on death. |
Y |
Y |
Y |
N
|
sv_loopepisode |
Boolean |
0 |
Determines whether Doom 1 episodes carry over. |
Y |
N |
N |
N
|
sv_monsterdamage |
Float |
1.0 |
Amount to multiply monster weapon damage by. (1.0 = 100%) |
Y |
Y |
Y |
N
|
sv_monstershealth |
Float |
1.0 |
Amount to multiply monster health by. (1.0 = 100%) |
Y |
Y |
Y |
N
|
sv_monstersrespawn |
Boolean |
0 |
Monsters will respawn after a period of time. |
Y |
N |
Y |
N
|
sv_nomonsters |
Boolean |
0 |
No monsters will be present. |
Y |
Y |
Y |
N
|
Team Game Specific Variables
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
ctf_flagathometoscore |
Boolean |
1 |
A team's flag must be at home on their own stand in order to capture the enemy flag for a point. |
Y |
N |
Y |
N
|
ctf_flagtimeout |
Integer |
10 |
Time for a dropped flag to be automatically returned to its home base. |
Y |
N |
Y |
N
|
ctf_manualreturn |
Boolean |
0 |
Flags dropped must be returned manually. |
Y |
N |
Y |
N
|
sv_friendlyfire |
Boolean |
1 |
When set, players can injure others on the same team, it is ignored in deathmatch. |
Y |
N |
Y |
N
|
sv_maxplayersperteam |
Integer |
3 |
Maximum number of players that can be on a team. |
Y |
Y |
Y |
N
|
sv_teamsinplay |
Integer |
2 |
Number of teams in play. |
Y |
Y |
Y |
N
|
sv_teamspawns |
Boolean |
1 |
When disabled, treat team spawns like normal deathmatch spawns in Teamplay/CTF. |
Y |
Y |
Y |
N
|
Compatibility Related Options
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
co_allowdropoff |
Boolean |
0 |
Allow monsters to be pushed or thrusted off of ledges. |
Y |
Y |
Y |
N
|
co_blockmapfix |
Boolean |
0 |
Fix the blockmap collision bug. |
Y |
Y |
Y |
N
|
co_boomphys |
Boolean |
0 |
Use a finer-grained, faster, and more accurate test for actors, sectors, and lines. |
Y |
N |
Y |
N
|
co_fineautoaim |
Boolean |
0 |
Increase precision of vertical auto-aim. |
Y |
N |
Y |
N
|
co_fixweaponimpacts |
Boolean |
0 |
Corrected behavior for impact of projectiles and bullets on surfaces. |
Y |
N |
Y |
N
|
co_globalsound |
Integer |
0 |
Make pickup sounds global. |
Y |
N |
Y |
N
|
co_nosilentspawns |
Boolean |
0 |
Turns off the west-facing silent spawns vanilla bug. |
Y |
N |
Y |
N
|
co_realactorheight |
Boolean |
0 |
Enable/Disable infinitely tall actors. |
Y |
Y |
Y |
N
|
co_zdoomphys |
Boolean |
0 |
Enable/disable ZDoom-based gravity and physics interactions. |
Y |
N |
Y |
N
|
co_zdoomsound |
Boolean |
0 |
Enable Zdoom-style sound attenuation curve + attenuation of switches in distance (e.g hear things from longer distance). |
Y |
N |
Y |
N
|
sv_aircontrol |
Float |
0.00390625 |
How much control the player has over their movement in the air. 0 = none, 1 = completely. |
Y |
N |
Y |
N
|
sv_forcewater |
Boolean |
0 |
Makes water more "realistic". Affects Boom maps. |
Y |
N |
Y |
N
|
sv_gravity |
Integer |
800 |
Gravity of the environment. |
Y |
N |
Y |
N
|
sv_spawndelaytime |
Integer |
0 |
Force a player to wait a period (in seconds) before they can respawn. |
Y |
N |
Y |
N
|
sv_splashfactor |
Float |
1 |
When co_zdoomphys is enabled, rocket explosion thrust effect's damage value. |
Y |
N |
Y |
N
|
Forcing Client Options
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
sv_allowmovebob |
Boolean |
0 |
Allow weapon & view bob changing. |
Y |
N |
Y |
N
|
sv_allowpwo |
Boolean |
0 |
Allow clients to set their preferences for automatic weapon switching. |
Y |
N |
Y |
N
|
sv_allowredscreen |
Boolean |
0 |
Allow clients to adjust amount of red pain screen intensity. |
Y |
N |
Y |
N
|
sv_allowshowspawns |
Boolean |
1 |
Allow clients to see spawn points as particle fountains. |
Y |
Y |
Y |
N
|
sv_allowtargetnames |
Boolean |
0 |
When set, names of players appear in the FOV. |
Y |
N |
Y |
N
|
sv_allowwidescreen |
Boolean |
1 |
Allow clients to use true widescreen (extended fov). |
Y |
Y |
Y |
N
|
sv_globalspectatorchat |
Boolean |
1 |
In-game players can see spectator chat. |
Y |
N |
N |
N
|
sv_maxunlagtime |
Float |
1.0 |
Cap the maxiumum time allowed for player reconciliation, in seconds. |
Y |
N |
Y |
N
|
sv_unlag |
Boolean |
1 |
Allow reconciliation for players on lagged connections. |
Y |
Y |
Y |
N
|
Vote Settings
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
sv_callvote_coinflip |
Boolean |
0 |
Clients can flip a coin. |
Y |
N |
N |
N
|
sv_callvote_forcespec |
Boolean |
0 |
Clients can vote to force a player to spectate. |
Y |
N |
N |
N
|
sv_callvote_forcestart |
Boolean |
0 |
Clients can vote to force the match to start. |
Y |
N |
N |
N
|
sv_callvote_fraglimit |
Boolean |
0 |
Clients can vote on a new fraglimit. |
Y |
N |
N |
N
|
sv_callvote_kick |
Boolean |
0 |
Clients can votekick other players. |
Y |
N |
N |
N
|
sv_callvote_map |
Boolean |
0 |
Clients can vote to switch to a specific map from the server's map list. |
Y |
N |
N |
N
|
sv_callvote_nextmap |
Boolean |
0 |
Clients can vote on progressing to the next map. |
Y |
N |
N |
N
|
sv_callvote_randcaps |
Boolean |
0 |
Clients can vote to force the server to pick two players from the in-game pool of players and force-spectate everyone else. |
Y |
N |
N |
N
|
sv_callvote_randmap |
Boolean |
0 |
Clients can vote to switch to a random map from the server's maplist. |
Y |
N |
N |
N
|
sv_callvote_randpickup |
Boolean |
0 |
Clients can vote to force the server to pick a certain number of players from the in-game pool of players and force-spectate everyone else. |
Y |
N |
N |
N
|
sv_callvote_restart |
Boolean |
0 |
Clients can vote to restart a game. |
Y |
N |
N |
N
|
sv_callvote_scorelimit |
Boolean |
0 |
Clients can vote on a new scorelimit. |
Y |
N |
N |
N
|
sv_callvote_timelimit |
Boolean |
0 |
Clients can vote on a new timelimit. |
Y |
N |
N |
N
|
sv_vote_countabs |
Boolean |
1 |
Count absent voters as 'no' if the vote time runs out. |
Y |
N |
N |
N
|
sv_vote_majority |
Float |
0.5 |
Ratio of yes votes needed for vote to pass. |
Y |
N |
N |
N
|
sv_vote_speccall |
Boolean |
1 |
Spectators are allowed to callvote. |
Y |
N |
N |
N
|
sv_vote_specvote |
Boolean |
1 |
Spectators are allowed to vote. |
Y |
N |
N |
N
|
sv_vote_timelimit |
Integer |
30 |
Amount of time a vote takes, in seconds. |
Y |
N |
N |
N
|
sv_vote_timeout |
Integer |
60 |
Time between votes, in seconds. |
Y |
N |
N |
N
|
Warmup Mode
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
sv_countdown |
Integer |
5 |
Number of seconds to wait before starting the game from warmup or restart. |
Y |
Y |
N |
N
|
sv_warmup |
Boolean |
0 |
Enable a 'warmup' mode before the match starts. |
Y |
Y |
N |
N
|
sv_warmup_autostart |
Float |
1.0 |
Ratio of players needed for warmup mode to automatically start the game. |
Y |
Y |
N |
N
|
Misc. Variables
Variable |
Value |
Default |
Description |
A |
L |
S |
R
|
sv_curmap |
String |
|
Read-only. Displays the current map loaded. |
N |
N |
N |
Y
|
sv_endmapscript |
|
|
Script to run at the end of each map (e.g. to choose next map) |
Y |
N |
N |
N
|
sv_nextmap |
String |
|
Read-only. Displays the next map to be played. |
N |
N |
N |
Y
|
sv_startmapscript |
|
|
Script to run at the start of each map (e.g. to override cvars) |
Y |
N |
N |
N
|