What Endnight ships
Endnight added dedicated servers in Patch 07 and documents them in one official Steam guide. The server is its own free download: it appears under Tools in a Steam library, or downloads through SteamCMD with login anonymous, so the account that fetches it needs no copy of the game. The guide is written for Windows throughout: SonsOfTheForestDS.exe, a StartSOTFDedicated.bat launcher, Windows paths for the data folder.
There is no Linux build in Endnight's documentation. Wine and Proton setups that run the Windows binary on Linux are community-made; Endnight does not cover them, so any fault there is yours to debug. Valve's SteamCMD can fetch Windows files from a Linux host with @sSteamCmdForcePlatformType windows, but that only downloads them; it does not make them run.
On this hardware the plain route is Windows Server installed on the machine. Windows Server carries its own licence charge, worked out per core and added to each month's invoice, and it runs on the x86 lines only: no ARM line takes a Windows image.
Ports and the boot self-test
The guide names three ports, all UDP, all changeable in the config:
| Setting | Protocol | Default | What it carries |
|---|---|---|---|
| GamePort | UDP | 8766 | Gameplay netcode |
| QueryPort | UDP | 27016 | Steam listing and discovery |
| BlobSyncPort | UDP | 9700 | BlobSync: initialises game systems and exchanges data |
At every boot the server tests itself: it asks Steam for its public IPv4, then checks that each port is reachable. If any check fails the server does not start, and the console names the cause. Endnight asks for a valid static public IPv4 and states that only IPv4 is officially supported. Since Patch 09, players can also connect straight to an IP and game port from the multiplayer menu instead of waiting for the list.
The network failures in Endnight's guide are home-network problems: port forwarding, firewall rules, and routers that lack NAT loopback (hairpin NAT). Our reading is that a machine whose IPv4 sits on its own network interface removes the forwarding layer, which leaves the Windows firewall as the one thing to open. Allow inbound UDP on the three ports and nothing else new. SkipNetworkAccessibilityTest exists, but Endnight calls it expert-only and expects a server that fails the test to be unreachable anyway.
Sizing the machine
Endnight publishes no CPU, memory or disk figures for the dedicated server. The system requirements listed for the game on Steam describe a player's PC with a graphics card, not a headless host, so do not size from them. What the guide does give are the knobs that set the load:
MaxPlayersaccepts 1 to 8. The ceiling is small and fixed.ActiveTargetFramerate(default 60, minimum 10) is the server's target framerate while anyone is connected;IdleTargetFramerate(default 5) applies when the server is empty.SaveInterval(default 600 seconds) sets how often the world is written to disk.- Windows Server itself takes its share of memory and disk before the game starts.
Measure rather than guess: run a full session with every player in, and watch CPU and memory on the host. Our view is that a few fast cores matter more than many slow ones for a single game process; and because the Windows licence is counted per core, a machine with fewer, quicker cores also keeps that line smaller. The game server machines can be configured for that; every line we run is on the dedicated range, and Intel Xeon processors are listed there with their clocks.
Installing with SteamCMD
- Choose Windows Server as the operating system on the order form.
- Download Valve's
steamcmd.zip, create a folder for it and extract it there. - Run the install line below. Valve recommends setting
force_install_dirbefore logging in. - Start
StartSOTFDedicated.batfrom the install folder once. The first boot stops on purpose: it writes a default dedicatedserver.cfg and ownerswhitelist.txt and reports that they were missing. - Edit both files (below), open UDP 8766, 27016 and 9700 in the Windows firewall, and start the server again.
steamcmd.exe +force_install_dir "c:/sons-dedicated/" +login anonymous +app_update 2465200 validate +quit
That is Endnight's own command. The same line, run again later, updates the server.
dedicatedserver.cfg, key by key
The config and everything else the server writes live in its user data folder, by default AppData\LocalLow\Endnight\SonsOfTheForestDS under the Windows profile that runs it. The -userdatapath argument moves it. The file is strict JSON: a missing comma or a stray quote fails the self-test. A trimmed example with the keys most servers change:
{
"IpAddress": "0.0.0.0",
"GamePort": 8766,
"QueryPort": 27016,
"BlobSyncPort": 9700,
"ServerName": "Example Forest",
"MaxPlayers": 8,
"Password": "set-a-long-random-one",
"LanOnly": false,
"SaveSlot": 1,
"SaveMode": "Continue",
"GameMode": "Normal",
"SaveInterval": 600,
"LogFilesEnabled": true,
"SkipNetworkAccessibilityTest": false
}
SaveMode:continueloads the slot or creates it if empty.newoverwrites the slot with a fresh world, and repeats that at every restart while the value stays. Switch back tocontinuestraight after the first boot.GameMode: normal, hard, hardsurvival, peaceful, creative or custom. It only applies when a save is created; an existing save keeps its mode. The same goes forCustomGameModeSettings.Password: up to 40 characters, asked of every player on connect.GameSettings: tree regrowth and structure damage, adjustable in any mode.IdleDayCycleSpeed: a multiplier from 0 to 1 on how fast time passes with nobody connected; the default is 0.0.
The password is a secret stored in plain text. Keep dedicatedserver.cfg readable only by the account that runs the server and by administrators. Every key can also be set on the command line as -dedicatedserver.Password and so on, but a password passed that way shows in the process list and in whatever script holds it.
Owners, updates, saves and logs
Administration happens in game, from the pause menu, for the SteamIDs listed one per line in ownerswhitelist.txt. Owners can promote players to admin, demote them, kick, ban and unban. Endnight's guide describes owners as having essentially the rights of a peer-to-peer host, so list only people you trust with the world.
- Updates. Rerun the SteamCMD line. Valve warns that
validateoverwrites changed files that belong to the install, and Endnight warns that edits toStartSOTFDedicated.batare lost at the next update. Valve also notes that files outside the default installation are not affected, so our advice is to keep any changed launcher as a copy under a new name rather than edit the original. The user data folder is not in the install folder, so the config and saves survive. - Saves. They sit in the
Savesfolder inside the user data folder. Copy it off the machine on a schedule; our advice is to copy while the server is stopped, so no write is caught halfway. Since Patch 08 the server saves immediately before shutdown. - Logs. Set
LogFilesEnabledto true and they land in alogsfolder there, one timestamped file per run by default. Add-verboseLoggingonly while chasing a fault: it inflates the files. - Remote access. Keep Remote Desktop limited to your own addresses. On rack servers and blades the out-of-band controller gives a browser console and power control if Windows stops answering.
Where it runs, and when not to bother
The machine is a whole server: every core and all the memory go to one Windows install and one world, on an unmetered port with one IPv4 included. The game server page lists five cities: New York, Miami, San Francisco, Amsterdam and Bucharest. Pick the one nearest the group and ping its test IP on our locations page first.
It is the wrong tool when the group only plays together while one of you is online anyway: the in-game peer-to-peer host costs nothing. It earns its place when the world must keep running between sessions, when nobody wants their home connection to carry the game, or when you already run other Windows game servers. Other Windows-only game servers, such as Enshrouded and V Rising, follow the same pattern of licence and firewall.
Questions
Does the Sons of the Forest server run on Linux?
Endnight's guide documents Windows only. People run the Windows build on Linux under Wine or Proton, but that is a community arrangement Endnight does not support, so updates that break it are yours to fix. On our hardware the supported route is Windows Server, which is a paid per-core licence.
Which ports have to be open?
Three UDP ports by default: 8766 for gameplay, 27016 for Steam queries and 9700 for BlobSync. They can be changed in dedicatedserver.cfg, and whatever values you set there are the ones the firewall must allow. The boot self-test will refuse to start the server if any of them is unreachable.
Can more than eight players join?
The config accepts MaxPlayers from 1 to 8, so eight is the ceiling the official settings allow. A bigger machine does not change that number. Size for eight players and the save, not for a larger crowd.
Do I need to own the game to install the server?
No. SteamCMD downloads app 2465200 with login anonymous, and Endnight states that no Steam account is needed for it. Each player still needs the game to join.
How do I move a local co-op save onto the server?
Endnight's guide does not document a transfer procedure. It only says saves live in the Saves folder of the user data folder and that SaveSlot picks the slot. Keep a copy of both sides before experimenting.
Why does the server stop on first launch?
That is the self-test doing its job. With no dedicatedserver.cfg or ownerswhitelist.txt present it writes default ones and halts. Edit them, then start again.