Skip to content

Barotrauma ​

This tutorial explains how to set up a Barotrauma server in the Cobalt dashboard.

Changing configs ​

  1. Open the servers page.

  2. Find the server you want to change settings in the table and click the first button in the actions column.

  3. Click the stop button in the control block.

  4. Open the files tab at the top.


    serversettings.xml ​

    1. Open the serversettings.xml file in the file editor.

    2. Update the settings.

    List of settings

    This table refers to version 23799137. Some settings may not be available in earlier versions. Cobalt overrides some default values when a server is created.

    KeyTypeDefaultDescription
    namestringServerSets server name.
    portinteger27015Sets server's port for player connections. Port must be port-forwarded for the server to be connectable and visible in the server browser.
    queryportinteger27016Sets 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.
    passwordstring(blank)Sets password required to enter the server. Leave blank for no password.
    enableupnpbooleanfalseSets 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. Also unnecessary when hosting from a client (uses Steam P2P).
    HiddenSubsstring(blank)Hides selected submarines in the lobby, can be changed in the lobby.
    ServerMessagestring(blank)Sets the text displayed in the server's description. Also sets Message of the Day presented in chat upon joining.
    AllowedRandomMissionTypesstringAbandonedOutpost,Beacon,Cargo,ClearAlienRuins,EliminateTargets,Escort,KingOfTheHull,Mineral,Monster,Nest,OutpostCombat,OutpostDestroy,Pirate,SalvageCave,SalvageRuin,SalvageWreck,ScanAlienRuins,SubVsSubCombat,jailbreakDeprecated, missiontype is able to randomize now.
    AllowedClientNameCharsinteger32-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-195103Sets characters (UTF-16 code ranges) that are allowed in player's names.
    ServerNamestring(blank)Server name. Edit name field instead — changes to this value won't apply, it's duplicated from name.
    ServerMessageTextstring(blank)Server description/MOTD. Edit ServerMessage field instead — changes to this value won't apply, it's duplicated from ServerMessage.
    IsPublicbooleantrueSets if the server should be visible in Server Browser. Can be changed in lobby settings.
    true - Public server, displayed on Server Browser.
    false - Private server, not visible on the list.
    Note: players can still join private sessions if unprotected by password/whitelist.
    TickRateinteger20Sets the server's tickrate. Not recommended to go above default, as game already struggles with networking. Lowering may cause issues with mods.
    MaxLagCompensationinteger150The maximum time the server will compensate hitscan weapons for.
    RequireAuthenticationbooleantrueEnables player authentication via Steam services.
    RandomizeSeedbooleantrueSets if the server should generate a new seed each round.
    true - Randomizes seed each round.
    false - Uses the same seed set in the lobby.
    UseRespawnShuttlebooleantrueAllows or disallows the use of a respawn shuttle for respawning (only if respawning is allowed).
    true - Respawning players spawn in a shuttle and must dock/merge with the crew.
    false - Players spawn on the submarine at job spawnpoints.
    RespawnIntervalinteger300Sets time between each respawn wave, in seconds.
    MaxTransportTimeinteger180Sets maximum time the respawn shuttle has to dock to the submarine, in seconds. If time runs out it returns to the first outpost.
    MinRespawnRationumber0.2Sets minimum percentage of dead players required for the respawn timer to start.
    SkillLossPercentageOnDeathinteger20Sets skill loss percentage on death.
    SkillLossPercentageOnImmediateRespawninteger10Sets additional skill loss percentage for immediate respawn.
    ReplaceCostPercentageinteger100Permadeath specific. Modifies the cost of respawning as a new character at the HR manager. If 0 — characters are free and no extra permissions are needed to buy them.
    AllowBotTakeoverOnPermadeathbooleantruePermadeath specific. If enabled, players can take over existing bots instead of buying a new character.
    IronmanModebooleanfalsePermadeath specific. Removes all respawn options: once a player dies, they can only spectate.
    AutoRestartIntervalnumber60Sets time for automatic starting of a round, in seconds. Only works if AutoRestart is true.
    StartWhenClientsReadybooleanfalseAllows or disallows the server to automatically start a round if enough players are ready.
    PvPTeamSelectionModestringPlayerPreferencePvP gamemode specific. PlayerPreference - server balances teams by preference. PlayerChoice - players choose freely, subject to auto-balance if enabled.
    PvpAutoBalanceThresholdinteger1PvP gamemode specific. 0 - disable auto-balancing. 1-3 - enable and set threshold of extra players needed to trigger auto-balance. Resets to 0 if invalid.
    StartWhenClientsReadyRationumber0.8Sets minimum ratio of players required to be ready for auto-start. Only works if StartWhenClientsReady is true.
    PvPStunResistinteger0PvP gamemode specific. Sets the amount of Stun resistance for players.
    PvPSpawnMonstersbooleanfalsePvP gamemode specific. Allows monsters to spawn on the map. Mostly useful in KOTH/Sub vs. Sub mission types.
    PvPSpawnWrecksbooleantruePvP gamemode specific. Allows wrecks to spawn on the map. Mostly useful in KOTH/Sub vs. Sub mission types.
    BiomestringRandomSets the preferred biome (coldcaverns/europanridge/theaphoticplateau/thegreatsea/hydrothermalwastes). Applies to every gamemode except Campaign.
    SelectedOutpostNamestringRandomPvP gamemode specific. Sets the outpost for Outpost Deathmatch mission type. Unavailable if that mission type isn't chosen.
    AllowSpectatingbooleantrueAllows or disallows players from spectating.
    true - Dead players can spectate.
    false - Dead players are sent into the lobby.
    SaveServerLogsbooleantrueSets if server logs should be saved once the server is turned off.
    AllowModDownloadsbooleantrueAllows or disallows download of missing mods from the server. If disabled and files mismatch, players won't be able to join.
    AllowFileTransfersbooleantrueAllows or disallows file transfers for server files to clients (currently only .sub files). If disabled, clients missing required files can't spawn and are sent back to the lobby.
    VoiceChatEnabledbooleantrueAllows or disallows the use of voicechat.
    PlaystylestringCasualSets server playstyle displayed in the server browser/lobby (Serious/Casual/Roleplay/Rampage/SomethingDifferent).
    LosModestringTransparentLine of sight mode. Transparent - dim view through walls. Opaque - walls block line of sight. None - players see through walls.
    ShowEnemyHealthBarstringShowAllShowAll/BossHealthBarsOnly/HideAll — sets if enemy healthbars should be visible.
    LinesPerLogFileinteger800Maximum length of logfile.
    AutoRestartbooleanfalseAllows or disallows the server from auto-starting rounds in the lobby, using time set in AutoRestartInterval.
    AllowVoteKickbooleantrueAllows or disallows players from voting to kick other players.
    AllowEndVotingbooleantrueAllows or disallows players from voting to end the round.
    RespawnModestringMidRoundMidRound - respawn during a round. BetweenRounds - only at start of a new round. Permadeath - characters die permanently (see Permadeath settings).
    BotCountinteger0Sets number of bots that should be spawned in a round.
    MaxBotCountinteger16Sets maximum allowed bots in a round.
    BotSpawnModestringNormalNormal - bots fill BotCount slots. Fill - bots fully fill the rest of empty player slots.
    DisableBotConversationsbooleanfalseDisables bots from filling text chat with flavor dialogue (doesn't affect callouts like crying for help).
    SelectedLevelDifficultyinteger0Sets the difficulty for the mission. Not configurable during Campaign (follows a pre-defined difficulty curve).
    AllowDisguisesbooleantrueAllows or disallows players to disguise themselves using another player's id card.
    AllowRewiringbooleantrueAllows or disallows players from rewiring anything on a submarine.
    AllowImmediateItemDeliverybooleantrueEnables option of direct item delivery to a player's inventory during a purchase.
    LockAllDefaultWiresbooleanfalseLocks all default connections on a submarine if true.
    AllowLinkingWifiToChatbooleanfalseAllows linking wifi signals to chat if true.
    AllowFriendlyFirebooleantrueAllows or disallows friendly fire between players.
    AllowDragAndDropGivebooleantrueAllows giving items to another player/bot's inventory by dragging and dropping the item on the character.
    DestructableOutpostsbooleanfalseAllows outposts to be destructible (doesn't affect Abandoned Outposts, always destructible).
    KillableNPCsbooleantrueMakes NPCs killable if true.
    BanAfterWrongPasswordbooleantrueEnables or disables auto-banning after too many failed password retries, set in MaxPasswordRetriesBeforeBan.
    MaxPasswordRetriesBeforeBaninteger3Sets after how many failed password retries the player is auto-banned. Only works if BanAfterWrongPassword is true.
    EnableDoSProtectionbooleantrueEnables DoS protection, kicking players who send more packets than MaxPacketAmount.
    MaxPacketAmountinteger4000Sets the maximum amount of packets a client might send before being regarded as spamming/DoS. May need increasing with many mods; increasing too much may cause networking issues.
    SelectedSubmarinestringAzimuth (alphabetically picks first submarine)Sets submarine that will be used in a round.
    SelectedShuttlestringHemulen (alphabetically picks first shuttle)Sets respawn shuttle that will be used in a round.
    TraitorProbabilityinteger0Traitor mode specific. Sets the traitor probability during a new round. 0 disables traitor mode.
    TraitorDangerLevelinteger1Traitor mode specific. 1 - harmless tasks. 2 - tasks that may cause injuries/damage. 3 - tasks with high chance of injuries, damage or casualties.
    TraitorsMinPlayerCountinteger1Traitor mode specific. Sets the minimal number of players required for a traitor to be picked.
    MinPercentageOfPlayersForTraitorAccusationinteger50Traitor mode specific. Sets the voting threshold for traitor accusation.
    LanguagestringEnglishLanguage the game is shown as.
    SubSelectionModestringManualManual - only a client with SelectSub permission can pick. Random - randomized on round start. Vote - all players vote.
    ModeSelectionModestringManualManual - only a client with SelectMode permission can pick. Random - randomized on round start. Vote - all players vote.
    EndVoteRequiredRationumber0.6Sets amount of endround votes required to end the round. Only used if AllowEndVoting is true.
    VoteTimeoutinteger30Time to vote before it runs out.
    KickVoteRequiredRationumber0.6Sets amount of votekick votes required to kick a player. Only used if AllowVoteKick is true.
    KillDisconnectedTimenumber120Sets amount of time a player must be disconnected from their body for the character to be killed.
    DespawnDisconnectedPermadeathTimenumber10Permadeath specific. Sets time a player must be disconnected from their body for the character to be despawned.
    KickAFKTimenumber120Sets amount of time a player must be AFK to be auto-kicked.
    MinimumRoundSyncTimeoutnumber10Sets amount of time a player must be in desync with the server to be auto-kicked.
    KarmaEnabledbooleantrueEnables or disables the Karma system.
    KarmaPresetstringdefaultSets the karma rules preset (default/strict/custom). Only works if KarmaEnabled is true.
    GamemodeIdentifierstringsandboxSets current gamemode (sandbox/mission/campaign/pvp).
    MissionTypesstringAbandonedOutpost,Beacon,Cargo,ClearAlienRuins,EliminateTargets,Escort,KingOfTheHull,Mineral,Monster,Nest,OutpostCombat,OutpostDestroy,Pirate,SalvageCave,SalvageRuin,SalvageWreck,ScanAlienRuins,SubVsSubCombat,jailbreakSets mission types the server should run; if multiple are selected, the server randomly chooses one.
    MaxPlayersinteger8Sets the maximum amount of people who can join the server; can be changed in the main menu when hosting.
    AutoBanTimenumber3600Sets ban length for vote-kicked players, in seconds.
    MaxAutoBanTimenumber86400Sets maximum auto-ban length settable in the lobby host UI.
    LootedMoneyDestinationstringBankDecides whether looted money goes to bank or the player's wallet (Bank/Wallet).
    MaximumMoneyTransferRequestinteger999999Sets the maximum amount of money that may be transferred at once.
    NewCampaignDefaultSalaryinteger0Sets the default salary for new players.
    TrackOpponentInPvPbooleantruePvP gamemode specific. STUB.
    DisembarkPointAllowanceSTUB7PvP gamemode specific. STUB.
    SelectedCoalitionPerksSTUBengineeringshiprepair;armorysmall;airlockbasic;medbayfirstaid;hullupgradesteePvP gamemode specific. STUB.
    WinScorePvPinteger200PvP gamemode specific. Sets the amount of points that a team needs to score in order to win.
    SelectedSeparatistsPerksSTUBengineeringshiprepair;armorysmall;airlockbasic;medbayfirstaid;hullupgradesteeSTUB.
    DisabledMonstersSTUB(blank)STUB.
    PresetNamestringNormalCampaign gamemode specific. Loads the selected campaign difficulty preset (Custom/Easy/Normal/Hard/Abyssal) when starting campaign.
    TutorialEnabledbooleantrueSTUB.
    RadiationEnabledbooleanfalseCampaign gamemode specific. Enables Jovian radiation in campaign.
    MaxMissionCountinteger2Campaign gamemode specific. Limits the number of missions one may take for a route between two stations (beacons not counted).
    WorldHostilitystringMediumCampaign gamemode specific (Low/Medium/High). Affects how dangerous Europa is — enemies, hazards, and new mechanics like untreated infections.
    StartItemSetSTUBnormalCampaign gamemode specific. Selects the amount of starting items.
    StartingBalanceAmountstringMediumCampaign gamemode specific (Low/Medium/High). Starting funds of the campaign.
    CrewVitalityMultipliernumber1Campaign gamemode specific. Multiplies base Vitality of crew characters.
    NonCrewVitalityMultipliernumber1Campaign gamemode specific. Multiplies base Vitality of non-crew characters (e.g. monsters).
    OxygenMultiplierSTUB1Campaign gamemode specific. STUB.
    FuelMultiplierSTUB1Campaign gamemode specific. Multiplies base Fuel Rod durability.
    MissionRewardMultiplierSTUB1Campaign gamemode specific. Multiplies base mission credit reward.
    ExperienceRewardMultiplierSTUB1Campaign gamemode specific. Multiplies base mission experience reward.
    ShopPriceMultiplierSTUB1Campaign gamemode specific. Multiplies base purchase price of items in stores.
    ShipyardPriceMultiplierSTUB1Campaign gamemode specific. Multiplies base purchase price of upgrades/submarines in the shipyard.
    RepairFailMulitplierSTUB1Campaign gamemode specific. Multiplies base damage values of unsuccessful electrical repairs.
    ShowHuskWarningbooleantrueCampaign gamemode specific. Shows a warning on screen if Husk Infection exceeds a certain strength (doesn't affect visibility on Health GUI).
    PatdownProbabilitystringMediumCampaign gamemode specific (Low/Medium/High/Off). Modifies how likely outpost security is to inspect crewmembers for stolen items.
    EndRoundAtLevelEndbooleantrueSets if the round should be ended once the submarine reaches the end of the level. Likely legacy.
    AllowRagdollButtonbooleantrueDeprecated. Allows or disallows the use of the ragdoll button.
    AllowRespawnbooleantrueDeprecated, use RespawnMode instead. Allows or disallows respawning.
    TraitorsEnabledstringNoDeprecated, use TraitorProbability instead (Yes/No/Maybe).
    TraitorsMinStartDelaynumber90Deprecated. Sets minimum time before a traitor is selected, in seconds.
    TraitorsMaxStartDelaynumber180Deprecated. Sets maximum time before a traitor is selected, in seconds.
    TraitorsMinRestartDelaynumber30Deprecated. Sets minimum time before another traitor is selected, in seconds.
    TraitorsMaxRestartDelaynumber90Deprecated. Sets maximum time before another traitor is selected, in seconds.
    PublicbooleanfalseDeprecated, use IsPublic instead. Sets if the server should be shown in the server browser.
    LevelDifficultyinteger20Deprecated, use SelectedLevelDifficulty instead. Sets level difficulty.

    WARNING

    Do not change the port and queryport settings.

    1. Click the save button in the bottom left corner.

    clientpermissions.xml ​

    1. Open the Data/clientpermissions.xml file in the file editor.

    2. Update the settings.

    List of settings

    This table refers to version 23799137. Some settings may not be available in earlier versions.

    KeyTypeDefaultDescription
    namestring(blank)Player name.
    accountidstring(blank)A player's Steam ID in the format STEAM64_<steam_id>.
    permissionsstring(blank)List of permissions.
    ManageRound - Allows players to start and end rounds.
    Kick - Allows players to kick other players.
    Ban - Allows players to ban other players.
    Unban - Allows players to unban other players.
    SelectSub - Allows players to select the sub when the selection mode is on "Manual".
    SelectMode - Allows players to select the gamemode.
    ManageCampaign - Same as giving ManageMoney, SellInventoryItems, SellSubItems, ManageMap, and ManageHires permissions.
    ConsoleCommands - Allows players to use Console Commands. Permissions for individual console commands are also required.
    ServerLog - Allows players to read the server logs.
    ManageSettings - Allows players to change the server's settings.
    ManagePermissions - Allows players to change the permissions of other clients. Players can only grant permissions that they already have.
    KarmaImmunity - Immunizes players against the effects of Karma.
    ManageMoney - Allows players to take money from the bank without needing a vote, set salaries, and take money from other player's wallets.
    SellInventoryItems - Allows players to sell items to shops from their inventories.
    SellSubItems - Allows players to sell items to shops directly from the submarine.
    ManageMap - Allows players to select missions and destinations on the campaign map.
    ManageHires - Allows players to hire and fire NPC crewmates.
    ManageBotTalents - Allows players to select talents for NPC crewmates.
    All - Grants players all permissions.
    Example

    For more details, see the official Wiki.

    xml
    <?xml version="1.0" encoding="utf-8"?>
    <ClientPermissions> 
      <Client
        name="Artorias"
        accountid="STEAM64_1234567890"
        permissions="All">
      </Client>
    </ClientPermissions>
    1. Click the save button in the bottom left corner.

  5. Open the overview tab at the top.

  6. Click the restart button in the control block.

Adding mods ​

  1. Open the servers page.

  2. Find the server you want to add mods in the table and click the first button in the actions column.

  3. Click the stop button in the control block.

  4. Upload mods using one of the following methods:

File manager
  1. Open the files tab at the top.

  2. Open the LocalMods folder in the file manager.

  3. Click the upload button in the bottom left corner.

TIP

You can find mods on Steam Workshop.

  1. Select the mods files from your device.

  2. Open the config_player.xml file in the file manager.

  3. Add the mod paths to the list inside the <contentpackages> block:

xml
<contentpackages>
  <!--Vanilla-->
  <corepackage
    path="Content/ContentPackages/Vanilla.xml" />
  <regularpackages> 
    <package
      path="LocalMods/3756243869/filelist.xml" /> 
    <package
      path="LocalMods/3756485107/filelist.xml" /> 
  </regularpackages> 
</contentpackages>
  1. Click the save button in the bottom right corner.
  1. Open the overview tab at the top.

  2. Click the start button in the control block.