Serversettings.xml

From Official Barotrauma Wiki
Revision as of 14:27, 17 January 2021 by 31percent (talk | contribs) (fixed red link)
Jump to: navigation, search

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.
  • True - Server randomizes seed when starting a new round.
  • False - Server doesn't randomize seed, uses the same seed set in the lobby.
userespawnshuttle True True/False (Bool) Allows or disallows the use of a respawn shuttle for respawning.

Only works if respawning is allowed.

  • True - Uses respawn shuttle, respawning players spawn in a shuttle a distance from the main submarine and must dock or otherwise merge with the crew.
  • False - Doesn't use respawn shuttle, players are spawned in the submarine on certain job spawnpoints, depending on their job.
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.
  • True - Starts automatically if the set client ratio is met.
  • False - Ignores ready clients, must be manually started.
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.
  • True - Dead players can spectate.
  • False - Dead players cannot spectate and are sent into the lobby.
endroundatlevelend True True/False (Bool) Sets if the round should be ended once the submarine reaches the end of the level.
  • True - Once the submarine docks, or is close to the last outpost and a player entered the outpost the round is automatically ended.
  • False - Players must vote to end or an admin must use the endround command to manually end the round.
saveserverlogs True True/False (Bool) Sets if server logs should be saved once the server is turned off.
  • True - Server logs are saved in the ServerLogs folder upon server shutdown.
  • False - Server logs aren't saved.
allowragdollbutton True True/False (Bool) Allows or disallows the use of the ragdoll button. (Exact key depends on keybind configuration)
  • True - Players can ragdoll on their own if they hold the button down.
  • False - Players cannot ragdoll on their own, players must be stunned (or be dead) to ragdoll.
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.

  • True - Server will send missing files to clients.
  • False - Server won't send missing files to clients, if a client is missing the required files they will not be able to spawn and will be sent back into the lobby.
voicechatenabled True True/False (Bool) Allows or disallows the use of voicechat.
  • True - Players can use voicechat.
  • False - Players cannot use voicechat.
playstyle Casual Serious/Casual/Roleplay/Rampage/SomethingDifferent (String) Sets server playstyle displayed in the server browser and lobby.
  • Serious - "The crew should focus on working together efficiently and completing their objective. No unnecessary messing around."
  • Casual - "Having fun is more important than completing the objective. A good choice for new players."
  • Roleplay - "The crew should aim to act like a real submarine crew. Chain of command is important, as is taking care of your responsibilities and following orders. Speaking out-of-character should be avoided when a round is running."
  • Rampage - "Get ready to fight for your life! A server heavily geared toward combat. This can mean player-versus-player combat, PvE or both—the server description should include guidelines as to what kind of violence is allowed on the server."
  • SomethingDifferent - "Gameplay differs significantly from the usual Barotrauma gameplay. Modded servers, very unconventional subs, battle royale rounds, shuttle racing, deathrun maps... Anything goes!"
allowvotekick True True/False (Bool) Allows or disallows players from voting to kick other players.
  • True - Players can vote to kick.
  • False - Players cannot vote to kick.
allowendvoting True True/False (Bool) Allows or disallows players from voting to end the round.
  • True - Players can vote to end the round.
  • False - Players cannot vote to end the round, the tick box also doesn't appear at all.
allowrespawn True True/False (Bool) Allows or disallows respawning.
  • True - Players can respawn once dead.
  • False - Players cannot respawn and will have to spectate until the round ends.
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.
  • Normal - Bots fill the amount of slots set in botcount.
  • Fill - Bots skip the botcount value and fully fill the rest of the empty player slots.
allowdisguises True True/False (Bool) Allows or disallows players to disguise themselves.
  • True - Players can disguise themselves by using another player's id card.
  • False - Players cannot disguise themselves and will always have their names above them even when covering their face.
allowrewiring True True/False (Bool) Allows or disallows players from rewiring anything.
  • True - Players can rewire anything except if it has been set otherwise in the submarine.
  • False - Players cannot rewire anything in a submarine.
allowfriendlyfire True True/False (Bool) Allows or disallows friendly fire between players.
  • True - Players can deal damage to each other.
  • False - Players don't deal damage to each other.
banafterwrongpassword True True/False (Bool) Enables or disables auto-banning after too many failed password retries.
  • True - Players are auto-banned after exceeding max password retries, set in maxpasswordretriesbeforeban.
  • False - Players can't be auto-banned for too many 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.
  • Yes - Traitors definitely appear in a round.
  • No - Traitors do not appear in a round.
  • Maybe - Traitors have a 50/50 chance of 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.
  • Manual - Only a client with the SelectSub permission can select a submarine.
  • Random - Submarine is randomly picked on round start.
  • Vote - All players can vote for a submarine.
modeselectionmode Manual Manual/Random/Vote (String) Sets how the Game Mode should be chosen.
  • Manual - Only a client with the SelectMode permission can select the game mode.
  • Random - Game mode is randomized on round start.
  • Vote - All players can vote to pick a game mode.
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.
  • True - Server is visible in the server browser.
  • False - Server isn't visible 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).
  • True - Server attempts UPnP.
  • False - Server doesn't attempt UPnP.

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.
  • True - Server auto-restarts rounds after the interval passes.
  • False - Server doesn't auto-restart rounds, rounds must be started in another way (Players readying up/manually starting).

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.
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" />