Space Engineers: Settings, Mods and Sim Speed
Which file the server actually reads, how to add mods in the right order, what drags sim speed down - and why your changes keep getting reset.
Two files - and only one matters for your world
This explains just about every "my settings were reset" case on Space Engineers.
| File | When it is used |
|---|---|
SpaceEngineers-Dedicated.cfg |
The server's own settings: name, ports, admins, auto-restart |
Saves/<World>/Sandbox_config.sbc |
Your world's settings. This is what the server reads once the world exists |
SpaceEngineers-Dedicated.cfg also contains a full <SessionSettings> block with every gameplay setting - but it is only used when the server creates a brand new world. If you already have a world, that block is dead and changes to it do nothing.
The order is:
Sandbox_config.sbcbeatsSandbox.sbc, which beats<SessionSettings>in the.cfgfile.
Note the file extensions too: it is .sbc, not .sav. Guides writing Sandbox_config.sav are wrong.
How to change a setting properly
- Stop the server in the Potionhost control panel and let it finish saving.
- Delete the file
Saves/LastSession.sbl. - Edit
Saves/<World>/Sandbox_config.sbcunder Files. - Start the server.
Why delete
LastSession.sbl? It remembers which world was last loaded and with which settings. If it does not match<WorldName>in your.cfg, the server can load a completely different save - and it looks exactly as if your changes and your mods vanished.
Never edit the files while the server is running. The server only reads them at startup, keeps everything in memory, and writes memory back on every autosave. Your change is either ignored or overwritten within minutes.
The server's own settings
In SpaceEngineers-Dedicated.cfg:
<ServerName>My server</ServerName>
<ServerDescription>Description</ServerDescription>
<WorldName>My world</WorldName>
<ServerPort>27016</ServerPort>
<SteamPort>8766</SteamPort>
<PauseGameWhenEmpty>false</PauseGameWhenEmpty>
<IgnoreLastSession>false</IgnoreLastSession>
<GroupID>0</GroupID>
<Administrators>
<unsignedLong>76561198000000000</unsignedLong>
</Administrators>
| Key | Meaning |
|---|---|
ServerPort |
The game port, UDP. Default 27016 |
SteamPort |
UDP. Default 8766 |
Administrators |
One <unsignedLong> per admin, holding a SteamID64 |
Banned / Reserved |
Same format as Administrators |
GroupID |
Steam group ID. 0 means no restriction |
PauseGameWhenEmpty |
Pauses the world when nobody is online |
AutoRestartEnabled |
Automatic restart |
IgnoreLastSession |
Skips the last autosave and uses the config values. A troubleshooting tool - it can cost progress |
There is no
<ServerPassword>. The password is stored as<ServerPasswordHash>and<ServerPasswordSalt>, and you cannot write it in plain text. Set it through the control panel or the server's own tool.
The world's gameplay settings
In Sandbox_config.sbc they live under <Settings>. The most-used ones:
| Setting | Default | Meaning |
|---|---|---|
InventorySizeMultiplier |
3 |
How much fits in an inventory |
AssemblerSpeedMultiplier |
3 |
Production speed |
AssemblerEfficiencyMultiplier |
3 |
Material use in production |
RefinerySpeedMultiplier |
3 |
Refining speed |
WelderSpeedMultiplier |
2 |
Welding speed |
GrinderSpeedMultiplier |
2 |
Grinding speed |
MaxFloatingObjects |
100 |
Maximum loose objects in the world |
MaxGridSize |
0 |
Maximum blocks per grid. 0 = unlimited |
MaxBlocksPerPlayer |
0 |
Maximum blocks per player. 0 = unlimited |
TotalPCU |
100000 |
Total PCU budget |
BlockLimitsEnabled |
- | NONE, GLOBALLY, PER_FACTION or PER_PLAYER |
SyncDistance |
3000 |
How far out the world is simulated |
ViewDistance |
15000 |
How far players can see |
AutoSaveInMinutes |
- | Minutes between autosaves |
EnableIngameScripts |
- | Programmable Blocks. Turn it off if the server lags |
Plus the classic on/off settings: EnableCopyPaste, EnableSpectator, EnableJetpack, AutoHealing, ThrusterDamage, EnableSpiders, EnableWolfs, EnableDrones, EnableEncounters, DestructibleBlocks and ExperimentalMode.
AutoSaveInMinuteslives inside<Settings>- not as a standalone line in the.cfgfile, as many guides claim.
Mods
Mods go in Sandbox_config.sbc in the <Mods> block:
<Mods>
<ModItem FriendlyName="Definition Extension API">
<Name>2756894170.sbm</Name>
<PublishedFileId>2756894170</PublishedFileId>
<PublishedServiceName>Steam</PublishedServiceName>
</ModItem>
<ModItem FriendlyName="Transparent LCD Panels">
<Name>1913557465.sbm</Name>
<PublishedFileId>1913557465</PublishedFileId>
<PublishedServiceName>Steam</PublishedServiceName>
</ModItem>
</Mods>
Three things have to line up:
<Name>is<PublishedFileId>.sbm- the ID followed by.sbm<PublishedFileId>is the number after?id=in the workshop address<PublishedServiceName>is writtenSteamwith a capital S. Get it wrong and the mod is dropped without an error
The order is the opposite of what you expect
In the file, mods load from top to bottom - the bottom one wins. That is the reverse of the in-game mod list, where the top has the highest priority.
In practice: put frameworks and dependencies at the top, and mods meant to override something at the bottom.
The mod has to be public or unlisted on the workshop. The server cannot download private or friends-only mods.
The server downloads mods itself at startup. To force a mod to download again, delete its folder in the mod cache and restart.
The admin tools in-game
If you are on the Administrators list, open the admin panel with Alt+F10. From there you can:
- Enable creative mode, invulnerability and terminal access for yourself
- Use Cycle Objects to walk through every grid sorted by size - your primary tool for finding what is lagging
- Run Trash Removal manually
- Use Entity List to teleport to or delete grids
Sim speed - the server's most important number
Simulation speed is the ratio between game time and real time. 1.00 is full speed. Drop to 0.7 and the entire world runs in slow motion for everyone on the server.
The usual culprits, in order:
- Physics - large grids, lots of rotors and pistons, things stuck inside each other
- Ingame scripts - one badly written script can take the whole server down. Turn off
EnableIngameScripts, or useEnableScripterRoleto limit who may run them - Loose objects - components from grinding and combat. Keep
MaxFloatingObjectslow - Abandoned grids - the slow killer. Builds from players who quit pile up forever
- Mods with scripts that run every tick
ViewDistanceandSyncDistance- the further out, the more has to be simulated and sent
The counter-move is trash removal: TrashRemovalEnabled, BlockCountThreshold, PlayerDistanceThreshold, PlayerInactivityThreshold and StopGridsPeriodMin. Set them up via the admin panel's Trash Removal tab rather than editing the XML.
PCU is not a performance dial.
TotalPCUis a budget that protects sim speed. Raising it does not make the server faster - it removes the guardrail that was keeping it running. RememberPiratePCUtoo, which governs NPC spawns if you run withEnableEncounters.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| The settings were reset | You edited while the server was running | Stop, delete LastSession.sbl, edit, start |
Changes to .cfg do nothing |
The world already exists, so Sandbox_config.sbc wins |
Edit the world file instead |
| Mods do not load | <WorldName> does not match the world actually being loaded |
Check LastSession.sbl and WorldName |
| Mods do not load (2) | The mod is private or friends-only | It has to be public or unlisted |
| One mod overrides another incorrectly | The order in the file | Move dependencies up, overriding mods down |
MOD PARTIALLY SKIPPED in the log |
A corrupt download, or a blueprint added to the mod list | Clear the mod cache and remove non-mods from the list |
An item with the same key has already been added |
Two mods use the same faction tag | Remove one of them |
| The server is not in the browser | Wrong ServerPort or SteamPort |
Check the ports match the ones you were assigned |
| The world will not save | A trailing space in the world name, or corrupt entities | Rename the world and clean up via the admin panel |
| Sim speed decays over days | Debris and abandoned grids piling up | Enable trash removal |
| The server starts on default values | Invalid XML | Check every tag is closed correctly |
Good advice
- Change one thing at a time and restart in between.
- Back up
Saves/<World>/before touching the XML. One missing tag can cost you the whole file. - Keep
EnableIngameScriptsoff until you know who is writing scripts on your server. - Check sim speed once a week. A slow decline is almost always accumulation - not hardware.
- Turn on trash removal from day one. It is far easier than cleaning up afterwards.
Sim speed dropping and you cannot find the cause? Contact our support and we will take a look with you.