A 7 Days to Die server reads its settings from one XML file at start. On your Connect server that file is serverconfig.connect.xml, the Server Settings tab edits it for you, and every change takes effect on the next restart. Since V3.0 the settings most groups care about, difficulty, blood moons, day length, loot and XP, are no longer separate lines in that file. They live in one Sandbox code that you make in the game.
Why the file is serverconfig.connect.xml
The game ships with a file called serverconfig.xml. It is part of the game's own files, so when Steam installs an update that includes a changed copy, the new copy replaces yours, along with any edits you made to it.
Your server never reads that file. On its first start it copies serverconfig.xml to serverconfig.connect.xml and runs on the copy. Steam does not know the copy exists, so updates leave it alone. Treat serverconfig.xml as the game's default: it is safe to look at and pointless to edit.
Three more things worth knowing:
- Edits survive restarts. The game does not rewrite its settings file when it shuts down. What you save on the tab, or change by hand on the Files tab, is what the next start reads.
- To start again from the defaults, delete
serverconfig.connect.xmlon the Files tab and restart. The server copies a fresh one from the game's default. - A setting an update adds is not in your copy yet, so the game uses its own default for it until you set it.
The settings
The tab groups every setting players change:
| Group | What is in it |
|---|---|
| Identity | Server name, description, join password, join message, website, visibility, browser region, language |
| Console crossplay | Allow PS5 and Xbox players, EasyAntiCheat, Ignore EOS sanctions |
| World | World (Navezgane, RWG, a pregenerated map or one you uploaded), world seed and world size for RWG, save name |
| Gameplay | Sandbox code, creative mode |
| Players & PvP | Player killing, reserved and admin slots, new-player safe zone, party XP range, bedroll settings |
| Land claims | Claims per player, claim size and spacing, claim expiry, block hardness with the owner online and offline |
| Performance | Max zombies, max animals, max view distance |
Each field on the tab carries a one-line description of what it does.
The Sandbox code
TFP's V3.0 release notes explain the change: "With the addition of over 150 Sandbox Options, some of the legacy options previously set in serverconfig.xml have been moved to a new SandboxCode XML property."
The 30 properties that moved are, in TFP's list: GameDifficulty, BlockDamagePlayer, BlockDamageAI, BlockDamageAIBM, XPMultiplier, DayNightLength, DayLightLength, BiomeProgression, StormFreq, DeathPenalty, DropOnDeath, DropOnQuit, JarRefund, EnemySpawnMode, EnemyDifficulty, ZombieFeralSense, ZombieMove, ZombieMoveNight, ZombieFeralMove, ZombieBMMove, AISmellMode, BloodMoonFrequency, BloodMoonRange, BloodMoonWarning, BloodMoonEnemyCount, LootAbundance, LootRespawnDays, AirDropFrequency, AirDropMarker and QuestProgressionDailyLimit.
None of them is on the tab, on purpose. A slider for a setting the game no longer reads would do nothing.
To make a code:
- Start 7 Days to Die on your PC and open the New Game menu.
- Open Sandbox Options and set things the way you want them: difficulty, blood moon frequency and size, day length, loot, XP and the rest.
- Copy the code the menu gives you.
- Paste it into Sandbox code on the Server Settings tab, save, and restart.
A new server's code is the game's default, AAAJABJACJADJARFBNC. TFP describes it as "an equivalent setup of the legacy default GameDifficulty setting of 'Adventurer' or 1."
Check it took. Since V3.0 the server prints its sandbox settings to the log when the game starts, and the console command getsandboxoptions (short form gso) lists them. Type it in the Console tab after the restart and read back what the server is actually running.
Codes from before V3.1 may be out of date. V3.1 split some options into separate day and night values, and TFP warned: "please check your preset codes to make sure they are still valid. Invalid codes may default some or all settings." If you saved a code before V3.1, make it again in the current game.
Coming from V2.6? TFP's advice for continuing a V2.6 save on V3 is to "recreate your legacy serverconfig.xml settings using the in-game Sandbox Options menu" and paste the result as the SandboxCode.
"I edited serverconfig and nothing changed"
Work through these in order:
- The setting moved into the Sandbox code. If it is one of the 30 above, editing it in the file does nothing on V3. Make a code instead.
- You edited
serverconfig.xml. The server readsserverconfig.connect.xml. Make the change there, or on the tab. - You did not restart. The game reads the file once, at start.
- The setting is controlled by the start command. The port, the player cap, the network protocol and telnet are passed when the server starts, which overrides the file. They show on the tab as fixed, with the reason.
Pinned versions have their own settings
If you pin an older version on the Game version card, that version gets its own settings file, and the tab shows the settings of the version the server runs. Your Latest settings are kept and come back when you choose Latest again.
This is not tidiness. We measured that V2.6 refuses to start on a V3 settings file, because to V2.6 SandboxCode is an unknown option. For the same reason, the tab will not let you add a setting from a newer version to an older version's file. Details in Game versions.
The crossplay check on save
Some combinations quietly switch console crossplay off: crossplay on with EasyAntiCheat off, with "Ignore EOS sanctions" on, or with a generated world larger than 8K. When crossplay is on, the tab refuses to save one of those combinations and tells you why, rather than leave you to find out from a console friend. See Console crossplay.
What is not on the tab
- Port and player cap. The port is assigned to your server and shown on the dashboard. Every plan has 8 player slots.
- The web dashboard. The game's own web dashboard needs a second open port, which your server does not have. Use the Console tab instead.
- Everything else in the file. Settings such as the admin file name, dynamic mesh tuning and the Twitch options are still in
serverconfig.connect.xml. Edit them on the Files tab and restart.
Related
- First run: Getting started
- Blood moon lag and the Performance settings: Plans & resources
- The longer explainer: SandboxCode explained