Managing Sons of the Forest Dedicated Servers via AMP
Sons of the Forest ships with a Unity based dedicated server that has unusually heavy single threaded CPU demands (AI pathing on the cannibal NPCs is the dominant cost). It also patches frequently during Early Access cycles, which historically caught operators off guard with mid session crashes. CubeCoders AMP on Windows Server solves both problems: it pins the process to a high priority core set, and its scheduled task chain can detect a Steam manifest delta and trigger an automated update in a maintenance window.
Prerequisites
- Windows Server 2022 with at least 16 GB RAM and a 6 core CPU.
- An AMP license tier that supports the Generic Module or the dedicated Sons of the Forest module.
- TCP 8766 and UDP 8766, 27015, 27016 open at the Windows firewall.
Step 1: Install AMP
Download the AMP Windows installer from the CubeCoders portal, run it elevated, and follow the wizard. The installer registers AMP as a Windows service, provisions the ADS (Application Deployment Server) on port 8080, and sets up the local SQLite user database.
# Verify the AMP service registered correctlyGet-Service AMP_ADS | Format-Table -AutoSize# Open the firewall portsNew-NetFirewallRule -DisplayName "SOTF Game" -Direction Inbound -Protocol UDP -LocalPort 8766,27015,27016 -Action AllowNew-NetFirewallRule -DisplayName "AMP Web" -Direction Inbound -Protocol TCP -LocalPort 8080 -Action AllowStep 2: Create the Instance
- Log into
http://your-server:8080with the admin account created during install. - Click Create Instance, pick the Sons of the Forest module (or the Generic module if your tier does not include the dedicated one).
- Set memory to 8192 MB, CPU affinity to cores 2 through 5 (leave core 0 and 1 for the OS).
Step 3: Server Configuration
Sons of the Forest reads its config from dedicatedserver.cfg inside the instance directory. AMP exposes this via the Configuration tab. Set tickrate, max players, and the save slot.
{ "ServerName": "Cannibal Coast", "MaxPlayers": 8, "Password": "", "LANOnly": false, "GameMode": "Multiplayer", "SaveSlot": 1, "SaveMode": "Continue", "Tickrate": 60, "BindIP": "0.0.0.0", "GamePort": 8766, "QueryPort": 27016, "GameNetworkProtocol": "UDP"}Step 4: Automated Patch Schedule
AMP's Scheduler is the right place to wire automated SteamCMD updates. Create a task chain that runs nightly, checks for a new manifest, broadcasts a warning, restarts the instance, and exits without action when nothing has changed.
- Trigger: Every Day at 04:00.
- Action 1: Send a message
Server will restart in 5 minutes for an automated patch check. - Action 2: Wait 5 minutes.
- Action 3: Stop instance.
- Action 4: Run SteamCMD update for app 2465200.
- Action 5: Start instance.
Step 5: CPU Affinity and Priority
$proc = Get-Process SonsOfTheForestDS -ErrorAction SilentlyContinueif ($proc) { $proc.PriorityClass = "High" # Pin to cores 2-5 (bitmask: 0011 1100 = 0x3C) $proc.ProcessorAffinity = 0x3C}Performance and Tuning
- Lower
Tickrateto 30 only if your CPU cannot hold 60. Visible AI desync at 30 is unavoidable. - Keep the Steam validate step out of the nightly chain. It is unnecessary on most patches and adds 30 minutes of downtime.
- Run AMP itself with its own dedicated 1 GB memory ceiling, not unbounded.
Conclusion
AMP on Windows gives Sons of the Forest the two things its Unity backend desperately needs: tight CPU affinity for the AI dominated main thread, and a hands off patch loop that survives the Early Access patch cadence without paging an operator.