Serversettings.xml
serversettings.xml is a file that stores all the settings for the Barotrauma dedicated and client-hosted server.
It is located in the Barotrauma root directory (same place as the Barotrauma.exe).
Configuration Fields
Config Field | Default Value | Allowed Values | Description |
---|---|---|---|
tickrate | 20 | 0< (Int) | Sets the server's tickrate. |
randomizeseed | True | True/False (Bool) | Sets if the server should generate a new seed each round.
|
userespawnshuttle | True | True/False (Bool) | Allows or disallows the use of a respawn shuttle for respawning.
Only works if respawning is allowed.
|
respawninterval | 300 | 0< (Int) | Sets time between each respawn wave, in seconds. |
maxtransporttime | 180 | 0< (Int) | Sets maximum time the respawn shuttle has to dock to the submarine, in seconds.
If time runs out before the shuttle docks it will automatically return to the first outpost. |
minrespawnratio | 0.2 | 0.0-1.0 (Float) | Sets minimum percentage of dead players required for the respawn timer to start. |
autorestartinterval | 60 | 0< (Float) | Sets time for automatic starting of a round, in seconds.
Only works if "autorestart" is set to True. |
startwhenclientsready | False | True/False (Bool) | Allows or disallows the server to automatically start a round if enough players are ready.
|
startwhenclientsreadyratio | 0.8 | 0.0-1.0 (Float) | Sets minimum ratio of players required to be ready for a round to be automatically started.
Only works if "startwhenclientsready" is set to True. |
allowspectating | True | True/False (Bool) | Allows or disallows players from spectating.
|
endroundatlevelend | True | True/False (Bool) | Sets if the round should be ended once the submarine reaches the end of the level.
|
saveserverlogs | True | True/False (Bool) | Sets if server logs should be saved once the server is turned off.
|
allowragdollbutton | True | True/False (Bool) | Allows or disallows the use of the ragdoll button. (Exact key depends on keybind configuration)
|
allowfiletransfers | True | True/False (Bool) | Allows or disallows file transfers for server files to clients.
Note: currently only .sub files can be transferred, if a client is missing a content package they won't be able to connect at all.
|
voicechatenabled | True | True/False (Bool) | Allows or disallows the use of voicechat.
|
playstyle | Casual | Serious/Casual/Roleplay/Rampage/SomethingDifferent (String) | Sets server playstyle displayed in the server browser and lobby.
|
allowvotekick | True | True/False (Bool) | Allows or disallows players from voting to kick other players.
|
allowendvoting | True | True/False (Bool) | Allows or disallows players from voting to end the round.
|
allowrespawn | True | True/False (Bool) | Allows or disallows respawning.
|
botcount | 0 | 0-maxbotcount (Int) | Sets number of bots that should be spawned in a round. |
maxbotcount | 16 | 0-16 (Int) | Sets maximum allowed bots in a round. |
botspawnmode | Normal | Normal/Fill (String) | Sets how bots should be spawned.
|
allowdisguises | True | True/False (Bool) | Allows or disallows players to disguise themselves.
|
allowrewiring | True | True/False (Bool) | Allows or disallows players from rewiring anything.
|
allowfriendlyfire | True | True/False (Bool) | Allows or disallows friendly fire between players.
|
banafterwrongpassword | True | True/False (Bool) | Enables or disables auto-banning after too many failed password retries.
|
maxpasswordretriesbeforeban | 3 | 0< (Int) | Sets after how many failed password retries the player is auto-banned.
Only works if "banafterwrongpassword" is set to True. |
selectedsubmarine | N/A (Alphabetically picks first submarine) | String | Sets submarine that will be used in a round. |
selectedshuttle | N/A (Alphabetically picks first shuttle) | String | Sets respawn shuttle that will be used in a round. |
traitorsenabled | No | Yes/No/Maybe (String) | Sets the chance of traitors appearing in a round.
|
traitorsminplayercount | 1 | 0< (Int) | Sets minimum number of players required for a traitor to be picked. |
traitorsminstartdelay | 90 | 0< (Float) | Sets minimum amount of time that must pass before a traitor is selected, in seconds. |
traitorsmaxstartdelay | 180 | 0< (Float) | Sets maximum amount of time that must pass before a traitor is selected, in seconds. |
traitorsminrestartdelay | 30 | 0< (Float) | Sets minimum amount of time that must pass before another traitor is selected, in seconds. |
traitorsmaxrestartdelay | 90 | 0< (Float) | Sets maximum amount of time that must pass before another traitor is selected, in seconds. |
subselectionmode | Manual | Manual/Random/Vote (String) | Sets how the next submarine should be picked.
|
modeselectionmode | Manual | Manual/Random/Vote (String) | Sets how the Game Mode should be chosen.
|
endvoterequiredratio | 0.6 | 0.0-1.0 (Float) | Sets amount of endround votes required to end the round.
Only used if "allowendvoting" is set to True. |
kickvoterequiredratio | 0.6 | 0.0-1.0 (Float) | Sets amount of votekick votes required to kick a player.
Only used if "allowvotekick" is set to True. |
killdisconnectedtime | 120 | 0< (Float) | Sets amount of time a player must be disconnected from their body for the character to be killed. |
kickafktime | 120 | 0< (Float) | Sets amount of time a player must be AFK to be auto-kicked. |
karmaenabled | False | True/False (Bool) | Enables or disables the Karma system. |
karmapreset | default | default/strict/custom (String) | Sets the karma rules preset that should be used.
Only works if "karmaenabled" is set to True. |
gamemodeidentifier | sandbox | Sandbox/Mission/Campaign (String) | Sets game mode |
missiontype | All | Salvage/Monster/Cargo/Combat/All (String) | Sets mission types that the server should run, if multiple are selected the server randomly chooses one. All includes all. |
autobantime | 3600 | 0< (Float) | Sets ban length for players who are vote-kicked, in seconds. |
maxautobantime | 86400 | 0< (Float) | Sets maximum auto-ban length that can be set in the lobby host UI. |
name | Server | String | Sets server name. |
public | false | True/False (Bool) | Sets if the server should be shown in the server browser.
Note: Even if the server isn't public any player can still connect to it unless it has a whitelist or password. |
port | 27015 | Valid port (Int) | Sets server's port for player connections.
Port must be port-forwarded for the server to be connectable and visible in the server browser. |
queryport | 27016 | Valid port (Int) | Sets server's port for querying with steam for connections.
Port must be port-forwarded for the server to be connectable and visible in the server browser. |
maxplayers | 10 | 1-16 (Int) | Sets max players. |
enableupnp | false | True/False (Bool) | Sets if the server should attempt to use UPnP to allow players to connect (instead of port-forwarding).
Note: Not all routers support UPnP This is also unnecessary if hosting from a client (not dedicated server), as client-hosting uses Steam P2P for connections. |
autorestart | false | True/False (Bool) | Allows or disallows the server from auto-starting rounds in the lobby.
Uses time set in autorestartinterval. |
LevelDifficulty | 20 | 0-100 (Int) | Sets level difficulty. |
AllowedRandomMissionTypes | Salvage,Monster,Cargo,Combat,All | Deprecated, missiontype is able to randomize now. | N/A |
AllowedClientNameChars | 32-33,38-46,48-57,65-90,91-91,93-93,95-122,192-255,384-591,1024-1279,19968-40959,13312-19903, 131072-15043983,15043985-173791,173824-178207,178208-183983,63744-64255,194560-195103 |
UTF-16 character code ranges (Int) | Sets characters that are allowed in player's names. |
ServerMessage | String | Sets the text displayed in the server's info box. Due to technical limtations, dedicated servers have maximum of 128 characters displayed in Server Browser, however upon joining info box is fully intact. | |
Password | String | Sets password required to enter the server. |
Default
Default settings for new game installs.
<?xml version="1.0" encoding="utf-8"?> <serversettings name="Server" public="false" port="27015" queryport="27016" password="" enableupnp="false" autorestart="false" LevelDifficulty="20" ServerMessage="" AllowedRandomMissionTypes="Salvage,Monster,Cargo,Combat,All" AllowedClientNameChars="32-33,38-46,48-57,65-90,91-91,93-93,95-122,192-255,384-591,1024-1279,19968-40959,13312-19903,131072-15043983,15043985-173791,173824-178207,178208-183983,63744-64255,194560-195103" tickrate="20" randomizeseed="True" userespawnshuttle="True" respawninterval="300" maxtransporttime="180" minrespawnratio="0.2" autorestartinterval="60" startwhenclientsready="False" startwhenclientsreadyratio="0.8" allowspectating="True" endroundatlevelend="True" saveserverlogs="True" allowragdollbutton="True" allowfiletransfers="True" voicechatenabled="True" playstyle="Casual" allowvotekick="True" allowendvoting="True" allowrespawn="True" botcount="0" maxbotcount="16" botspawnmode="Normal" allowdisguises="True" allowrewiring="True" allowfriendlyfire="True" banafterwrongpassword="True" maxpasswordretriesbeforeban="3" traitorsenabled="No" traitorsminplayercount="1" traitorsminstartdelay="90" traitorsmaxstartdelay="180" traitorsminrestartdelay="30" traitorsmaxrestartdelay="90" subselectionmode="Manual" modeselectionmode="Manual" endvoterequiredratio="0.6" kickvoterequiredratio="0.6" killdisconnectedtime="120" kickafktime="120" karmaenabled="False" karmapreset="default" gamemodeidentifier="sandbox" missiontype="All" maxplayers="10" autobantime="3600" maxautobantime="86400" />
Guides | |||||
---|---|---|---|---|---|
Gameplay | |||||
Hosting | |||||
In-Game | Dedicated Servers | ||||
Tools & Modding | |||||
Editors | XML | Other | |||
XML and how Barotrauma uses it |