Server variables

From OdaWiki

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