Space Engineers
| Platform | Support | Notes |
|---|---|---|
| Windows | ✅ Native | Recommended (official support) |
| Linux | ⚠️ Wine/Proton | Requires compatibility layer, higher overhead |
Space Engineers
Space Engineers supports dedicated servers on both Windows (native, recommended) and Linux (Wine/Proton).
Windows Server (Recommended)
System Requirements
Step 1: Download Server on Windows
steamcmd +force_install_dir "C:\SpaceEngineers-Server" +login your_steam_username your_steam_password +app_update 298740 validate +quit
Step 2: Configure SpaceEngineers-Dedicated.cfg
Create C:\SpaceEngineers-Server\SpaceEngineers-Dedicated.cfg (use same config as Linux guide in Configuration File section).
Step 3: Create Startup Batch
Create C:\SpaceEngineers-Server\start-server.bat:
@echo off
cd /d C:\SpaceEngineers-Server
SpaceEngineers-Dedicated.exe
pause
Step 4: Run as Service (Optional)
nssm install SpaceEngServer "C:\SpaceEngineers-Server\SpaceEngineers-Dedicated.exe"
nssm start SpaceEngServer
- RAM: 8GB minimum (12GB+ recommended for large worlds with active players)
- vCPU: 4 cores minimum (more for large grids and high player counts)
- Storage: SSD required, 50GB+ available space
- Network: Stable upstream bandwidth for player synchronization
- OS: Windows Server 2016+ or Windows 10/11
Linux Server (Wine/Proton)
System Requirements
Space Engineers is extremely RAM-intensive when running under Wine. Large persistent worlds with multiple active grids consume 8-12GB+ of RAM. An SSD is mandatory for adequate save performance. We recommend 12GB+ RAM for production servers.
Install Wine
Update your system:
sudo apt update && sudo apt upgrade -y
sudo dpkg --add-architecture i386
sudo apt install -y wine wine32 wine64 libwine libwine:i386 winetricks
Install Wine-GE for better compatibility:
cd ~/
git clone https://github.com/GloriousEggroll/wine-ge-custom.git
cd wine-ge-custom
./install.sh
Initialize Wine prefix:
export WINEPREFIX=~/.wine
export WINEARCH=win64
wine wineboot
Install SteamCMD and Download Server (Linux)
Create a dedicated user:
sudo useradd -m -s /bin/bash spaceeng
sudo su - spaceeng
Install SteamCMD:
mkdir -p ~/steamcmd
cd ~/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
Download Space Engineers server tool (AppID 298740):
cd ~/steamcmd
./steamcmd.sh +login your_steam_username your_steam_password +app_update 298740 validate +quit
The server tool installs to ~/steamapps/common/SpaceEngineers/.
Configuration File (Linux)
Create SpaceEngineers-Dedicated.cfg in the server directory:
nano ~/steamapps/common/SpaceEngineers/SpaceEngineers-Dedicated.cfg
SpaceEngineers-Dedicated.cfg:
[ServerName]
ServerName=DeluxHost Space Engineers Server
[World]
WorldName=DW_DeluxHost
WorldPath=./Saves/DW_DeluxHost
LoadWorld=true
SessionName=DeluxHost World
Description=Survival world hosted on DeluxHost
[ServerRules]
ServerPassword=your_server_password
AdminPassword=your_admin_password
MaxPlayers=4
MaxFloatingObjects=256000
MaxGridSize=100000
MaxBlocksPerPlayer=500000
MaxBackupSaveSize=50000
PersistentEditsTimeLimit=8
EnableRemoteBlockRemoval=true
AutoSaveInMinutes=5
EnvironmentHostility=Moderate
[Gameplay]
Difficulty=Normal
GameMode=Survival
EnableWeapons=true
EnableRespawnShips=true
StartInRespawnScreen=false
EnableContainerDrops=true
EnableSpiders=true
EnableDrones=true
EnableWolves=false
EnableRats=false
VoxelGeneratorVersion=2
ProceduralDensity=0.4
ProceduralSeed=0
AsteroidAmount=Normal
[Network]
Port=27016
ServerQueryPort=27017
GroupId=0
WorldDataModifierId=
[Logging]
LogFile=./Logs/server.log
LogLevel=Debug
Configuration Explanation
Running with Wine (Linux)
Create a wrapper script:
nano ~/start-space-engineers.sh
start-space-engineers.sh:
#!/bin/bash
export WINEPREFIX=~/.wine
export WINEARCH=win64
export STAGING_SHARED_MEMORY=1
export DXVK_HUD=off
cd ~/steamapps/common/SpaceEngineers/
echo "Starting Space Engineers Server..."
wine SpaceEngineers-Dedicated.exe
Make it executable:
chmod +x ~/start-space-engineers.sh
./start-space-engineers.sh
The first startup will create necessary world files. This can take 5-10 minutes. Monitor the process and ensure it completes before connecting players.
Port Configuration
Open required UDP ports:
sudo ufw allow 27016/udp
sudo ufw allow 27017/udp
Port assignments:
Systemd Service (Linux)
Create /etc/systemd/system/space-engineers.service:
sudo tee /etc/systemd/system/space-engineers.service > /dev/null <<'EOF'
[Unit]
Description=Space Engineers Dedicated Server
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=spaceeng
WorkingDirectory=/home/spaceeng/steamapps/common/SpaceEngineers
Environment="WINEPREFIX=/home/spaceeng/.wine"
Environment="WINEARCH=win64"
Environment="STAGING_SHARED_MEMORY=1"
ExecStart=/usr/bin/wine SpaceEngineers-Dedicated.exe
Restart=on-failure
RestartSec=30
StandardOutput=journal
StandardError=journal
TimeoutStartSec=180
[Install]
WantedBy=multi-user.target
EOF
Enable and start:
sudo systemctl daemon-reload
sudo systemctl enable space-engineers
sudo systemctl start space-engineers
Monitor:
sudo systemctl status space-engineers
sudo journalctl -u space-engineers -f
Save Files and Backup
Save files are stored in the Saves/ directory. Back them up regularly:
tar -czf space-engineers-saves-backup-$(date +%Y%m%d_%H%M%S).tar.gz \
~/steamapps/common/SpaceEngineers/Saves/
Store backups remotely:
scp space-engineers-saves-backup-*.tar.gz user@backup.server:/backups/
To restore:
cd ~/steamapps/common/SpaceEngineers/
tar -xzf space-engineers-saves-backup-YYYYMMDD_HHMMSS.tar.gz
sudo systemctl restart space-engineers
Workshop Mods and Plugins (Linux)
Download Workshop Mods
Find the mod ID on Steam Workshop, then download:
./steamcmd.sh +login your_steam_username your_steam_password +workshop_download_item 244850 mod_id +quit
Mods download to ~/steamcmd/steamapps/workshop/content/244850/.
Enable Mods
Copy mod folders to your world's Mods/ directory:
mkdir -p ~/steamapps/common/SpaceEngineers/Saves/DW_DeluxHost/Mods
cp -r ~/steamcmd/steamapps/workshop/content/244850/mod_id \
~/steamapps/common/SpaceEngineers/Saves/DW_DeluxHost/Mods/
Mods must match across server and all clients. Mismatched mods will prevent players from connecting. Always test mods on a test world before production.
Performance Tuning (Linux)
Memory Allocation
Enable shared memory for Wine:
export STAGING_SHARED_MEMORY=1
export WINE_CPU_TOPOLOGY=4:2
Add to your start script or systemd service.
Monitor Resource Usage (Linux)
top -p $(pgrep -f "wine.*SpaceEngineers")
free -h
df -h ~/steamapps/common/SpaceEngineers/
Reduce Lag (Linux)
- RAM: 8GB minimum (12GB+ recommended for large worlds with active players)
- vCPU: 4 cores minimum (more for large grids and high player counts)
- Storage: SSD required, 50GB+ available space
- Network: Stable upstream bandwidth for player synchronization
- OS: Ubuntu 20.04+ or similar
- Wine: Wine 7.0+ or Wine-GE
- MaxPlayers — Set between 1 and 16 (higher = more resources)
- MaxGridSize — Maximum blocks per grid (100000 is reasonable)
- MaxFloatingObjects — Floating object limit
- AutoSaveInMinutes — Backup interval (5 min minimum recommended)
- EnvironmentHostility — Peaceful, Normal, or Realistic
- AsteroidAmount — None, Normal, or High
- ProceduralDensity — World generation density (0.3-0.6 recommended)
- 27016/UDP — Game server port
- 27017/UDP — Query port (server discovery)
- Limit MaxPlayers to 4-6 for stable performance
- Reduce MaxGridSize if grids are causing slowdowns
- Increase AutoSaveInMinutes to reduce I/O overhead
- Decrease ProceduralDensity for asteroid fields
Troubleshooting
Server won't start: Check logs in ./Logs/server.log
tail -50 ~/steamapps/common/SpaceEngineers/Logs/server.log
Players can't connect: Verify UDP ports 27016/27017 are open
sudo ufw status numbered
Out of memory: Monitor with free -h and consider reducing MaxPlayers
Lag/Slowdown: Reduce MaxGridSize, disable dynamic voxels, or add RAM
free -h
watch -n 1 free -h
World won't load: Check that world directory exists and has correct permissions
ls -la ~/steamapps/common/SpaceEngineers/Saves/DW_DeluxHost/
Mods cause crashes: Remove mods from Mods/ folder and restart
rm -rf ~/steamapps/common/SpaceEngineers/Saves/DW_DeluxHost/Mods/*
Tips & Tweaks
Sandbox.sbc Key Settings
| Parameter | Value | Impact |
|---|---|---|
MaxPlayers | 1-16 | Server capacity |
MaxGridSize | 50000-500000 | Maximum blocks per grid |
MaxBlocksPerPlayer | 50000-500000 | Per-player block limit |
PCULimit | 100000-1000000 | Total Performance Cost Units |
MaxFloatingObjects | 100000-500000 | Floating wreckage limit |
AutoSaveInMinutes | 5-15 | Backup interval |
EnvironmentHostility | Peaceful/Normal/Realistic | Difficulty setting |
AsteroidAmount | None/Normal/High | Asteroid density |
Admin Commands (DS Configurator Tool)
Space Engineers uses DS Configurator for admin control. Key features:
Download: DS Configurator
World Backup Strategy
Critical for persistent worlds:
# Windows (PowerShell)
$source = "C:\SpaceEngineers-Server\Saves\YourWorld"
$dest = "C:\Backups\space-engineers-$(Get-Date -f 'yyyyMMdd-HHmmss')"
Copy-Item -Path $source -Destination $dest -Recurse
# Linux
tar -czf /backups/space-engineers-world-$(date +%Y%m%d-%H%M%S).tar.gz ~/steamapps/common/SpaceEngineers/Saves/YourWorld/
Schedule via cron (Linux) or Task Scheduler (Windows).
PCU (Performance Cost Unit) Management
Each block has a PCU value. Limit total per-player or per-world to prevent lag:
Set appropriate limits based on your hardware and player count.
- Player kick/ban management
- Save file manipulation
- Server property editing
- World backup/restore
- Heavy blocks (reactors, thrusters): 10-50 PCU each
- Medium blocks (cargo, assembler): 1-10 PCU
- Light blocks (armor, windows): 0.01-1 PCU
Maintenance
Regular Updates (Windows/Linux)
cd ~/steamcmd
./steamcmd.sh +login your_steam_username your_steam_password +app_update 298740 validate +quit
sudo systemctl restart space-engineers
Check World Integrity
After server restart, verify saves loaded correctly:
tail -100 ~/steamapps/common/SpaceEngineers/Logs/server.log | grep -i "error\|warning"
Recommended Backup Schedule
# Daily backup
0 3 * * * cd ~/steamapps/common/SpaceEngineers && tar -czf /backups/space-engineers-$(date +\%Y\%m\%d).tar.gz Saves/
# Weekly full backup
0 4 * * 0 cd ~ && tar -czf /backups/space-engineers-full-$(date +\%Y\%m\%d).tar.gz steamapps/common/SpaceEngineers/
Add to crontab:
crontab -e
Related articles
CS2
How to install and configure a Counter-Strike 2 dedicated server on Linux VPS with SteamCMD
Palworld
Create a dedicated Palworld server on Linux with SteamCMD. Configuration, ports and automatic startup.
Rust
Install and manage a Rust server (Facepunch) on Linux with SteamCMD. Includes automatic updates, Oxide plugins and optimizations.
