The Forest's dedicated server is a free SteamCMD download (app id 556450), it holds eight players, it runs happily in 3 GB of memory, and it is configured by a plain text file where each line is a key, a space and a value. It is a genuinely small, well-behaved server by modern standards, and the game has been feature-complete long enough that nothing about it moves under you any more. The two things that catch people are that the server tool is a Windows build with no native Linux version, and that the config file is not where you installed the server - it lives in your user profile unless you point at one with -configfilepath. Get those two settled and the rest is one file and three ports.
What the dedicated server gives you#
The Forest can be hosted from inside the game, and for two people who always play together that is fine. A dedicated server buys you three things: the world exists when the host is asleep, nobody's frame rate is everybody's simulation, and the save is not sitting in one person's AppData waiting for them to reinstall Windows.
What the server supports out of the box:
- Eight players. That is the documented default and the number the game is built around. Endnight never publishes a maximum, and some hosts advertise more slots, but eight is what is tested.
- Five save slots, selected in the config, each an independent world.
- The three difficulty presets - Peaceful, Normal and Hard - plus a set of individual switches for tree regrowth, building destruction, enemies in creative and so on.
- An admin password that turns chat into an administration console for whoever knows it.
- VAC, optionally, which is unusual for a co-op survival game and worth switching on for a public server.
- Automatic saves on a timer, minimum fifteen minutes.
What it does not have: RCON, a whitelist, a ban list you can edit as a file, scheduled messages, or any official mod support. Administration is the admin password and the chat commands it unlocks. If you have come here from the sequel, this server is in several ways better equipped than the Sons of the Forest dedicated server, which shipped with less.
Requirements and resource usage#
This is one of the cheapest survival servers you can run. Memory grows with the size of the built world and the number of structure holes cut into it, not much with the number of players.
| Group | RAM | CPU | Notes |
|---|---|---|---|
| 2-4 players, fresh save | 2-3 GB | 1-1.5 cores | Comfortable from the start |
| 5-8 players, established base | 3-4 GB | 1.5-2 cores | The common case |
| Long-lived save, large builds | 4-6 GB | 2 cores | Structures and terrain edits add up |
| Modded | 6-8 GB | 2 cores | Entirely dependent on the mods |
- CPU: one thread carries the simulation, so clock speed beats core count. The peak is a cannibal raid on a big base, not eight people standing in different places.
- Disk: the server install is a few gigabytes and a save slot is small - tens of megabytes. Twenty gigabytes covers the install, five slots and a stack of backups.
- Network: light. The Forest sends little per player and the join transfer is modest, which is the main practical difference from the sequel.
A server that has been running the same save for a year gets heavier for a specific reason: every hole cut in a structure, every piece of terrain modified and every dropped item is state that is saved and reloaded. The config has resetHolesMode for exactly this, and turning it on for one restart is a blunt but effective way of clearing a save that has grown awkward. It also deletes every window and doorway anyone cut, so tell people first.
Installing and the first start#
The dedicated server is anonymous on SteamCMD, so no account and no game server token:
$ steamcmd +force_install_dir C:\theforest-server +login anonymous \ +app_update 556450 validate +quitSteamCMD explained has the general version of that command, including how to script updates. The executable is TheForestDedicatedServer.exe. There is no Linux build - on Linux it runs under Wine, which works well and is what most hosts are doing on your behalf.
Start it once with no arguments and stop it with Ctrl+C. The first run creates the profile folder and writes a default config:
C:\Users\<user>\AppData\LocalLow\SKS\TheForestDedicatedServer\ds\Server.cfgThat default location is fine for one server and a nuisance for anything else, which is why nearly every real setup passes -configfilepath and keeps the config next to the install. Once you know where the file is, stop the server before you edit it, and read the IP address the server printed on that first run - it is the internal address the server bound to, and it is what serverIP wants.
Server.cfg, key by key#
Every line is key value, comments start with //, and a missing key falls back to the default. This is the full set:
// Server display nameserverName My Forest Server// Server password. blank means no passwordserverPassword// Steam game server login token. See the warning belowserverSteamAccount YOURTOKENHERE// Server administration password. blank means no passwordserverPasswordAdmin changeme// Server IP address (the internal address if you are behind a router)serverIP 10.5.0.6// Steam communication portserverSteamPort 8766// Game communication portserverGamePort 27015// Query communication portserverQueryPort 27016// Maximum number of playersserverPlayers 8// Valve Anti-cheat. off or onenableVAC on// Minutes between auto saves. Minimum 15, default 30serverAutoSaveInterval 30// Peaceful, Normal, Hard (and HardSurvival on current builds)difficulty Normal// New or ContinueinitType Continue// Save slot, 1 to 5slot 1// Show the event log. off or onshowLogs on// Contact email for the server adminserverContact// No enemies at allveganMode off// No enemies during the dayvegetarianMode off// Reset all structure holes when loading a saveresetHolesMode off// Regrow 10% of cut trees when sleepingtreeRegrowMode on// Allow cannibals to break your buildingsallowBuildingDestruction on// Allow enemies in creative gamesallowEnemiesCreativeMode off// Allow clients to use the built-in debug consoleallowCheats off// Full weapon damage when players hit each otherrealisticPlayerDamage off// Custom folder for save slots, blank for the defaultsaveFolderPath// Target FPS with nobody connectedtargetFpsIdle 5// Target FPS with at least one player connectedtargetFpsActive 60The ones that decide what kind of server you are running:
| Key | Why it matters |
|---|---|
initType | New regenerates the slot on every start, not once |
slot | Which of the five worlds loads; changing it swaps worlds |
serverPasswordAdmin | The only administration credential the server has |
allowCheats | on lets every client use the debug console. Leave it off |
difficulty | Peaceful means no cannibals at all, not fewer |
treeRegrowMode | The difference between a forest and a stump field after six months |
serverAutoSaveInterval | Minimum 15 minutes, so 15 is your smallest possible loss window |
serverSteamAccount needs a paragraph of its own, because the comment the server writes next to it is misleading. It is not your Steam user name. It is a Steam game server login token, the same kind of credential described in Steam game server tokens, created against The Forest's app id 242760 in the Steam game server account page. Treat it as a secret and never share it.
targetFpsIdle 5 is why an empty Forest server costs almost nothing in CPU. Leave it. enableVAC on is worth it on any server you have advertised, and irrelevant on a private one. allowCheats on is the switch people turn on to build something and forget to turn off; it hands every player who joins a cheat console - and note that it only gates the built-in console, not mods, so it is not an anti-grief measure.
On difficulty: Endnight's original documentation lists Peaceful, Normal and Hard, while the wiki for current builds adds HardSurvival. If you want the fourth one, set it and check the log line on start rather than assuming.
Launch parameters and running more than one server#
Every config key has a matching command-line parameter in lower case, and the command line wins. That is how you run two servers from one install:
TheForestDedicatedServer.exe -batchmode -showlogs ^ -configfilepath "C:\theforest-server\server1.cfg" ^ -savefolderpath "C:\theforest-server\saves1\"-batchmode runs it without a window, which is what you want for anything unattended, and -nographics alongside it keeps the CPU down by not rendering anything. -showlogs prints the event log so you can see joins, saves and errors. -configfilepath is effectively required in any setup you did not leave entirely on defaults, and -savefolderpath keeps the saves next to the server instead of in a profile folder that a Windows reinstall takes with it.
Two traps in the parameter list. The names are lower case and do not always match the config keys, so serverPasswordAdmin in the file is -serverpassword_admin on the command line. And one of them is inverted: the config key is allowBuildingDestruction on, but the parameter is -nobuildingdestruction. Setting both without noticing gives you the opposite of what you meant.
If you are weighing this against a panel, the practical difference is not the config file - it is everything around it. Self-hosting at home versus renting goes through the port forwarding, the uplink and the electricity. On a panel-based host the config file is already written and the same values appear as fields on the Startup tab; on RE:NODE you edit Server.cfg in the browser or over SFTP and restart, and the ports are allocated with the server.
Ports and connecting#
| Port | Purpose |
|---|---|
8766 | Steam communication |
27015 | Game traffic |
27016 | Steam query - the server browser |
The developer's own instructions say to open all three for both TCP and UDP, and there is no cost to doing exactly that. If you are opening them one protocol at a time, UDP is the one that carries the game. A server that runs but never appears in the browser is almost always the query port; a server that appears but refuses connections is the game port. Game server ports explained covers why those are two different things.
Players join through Multiplayer, then the dedicated server list, which is filterable by name. Adding the server by address works from the same screen and is the reliable route when the list is being slow. If you have pointed a domain at the address, note that The Forest's browser still shows the IP; the name helps people type it, not find it. Connecting a domain to a game server has the record you need.
The admin password and the chat commands#
Set serverPasswordAdmin to something long. A player who joins the server using that password gets administration rights, and the commands are typed into multiplayer chat with a leading slash:
| Command | Effect |
|---|---|
/help | Lists the commands the server knows |
/save | Saves immediately to the active slot |
/save [1-5] | Saves to a specific slot |
/kick [SteamID64] | Removes a player |
/ban [SteamID64] | Bans a player |
/unban [SteamID64] | Lifts a ban |
/restart | Restarts the server. Treat as destructive - see below |
/shutdown | Stops the server |
/openlogs / /closelogs | Opens and closes the log window |
/treeregrowmode on|off | Toggles tree regrowth live |
/allowbuildingdestruction on|off | Toggles building destruction live |
/allowenemiescreative on|off | Toggles enemies in creative live |
Kick and ban take the 17-digit SteamID64, and since the update that fixed them they also accept a player name. showLogs on puts each connection in the log with the ID attached, which is the easiest place to read one from when a name is ambiguous.
The last three commands in that table were added in an early patch and change the running server without a restart, which is genuinely handy for a group deciding mid-session whether cannibals should be allowed to eat the walls. /help on your own server is authoritative in a way that any list, including this one, is not.
The debug console that players talk about, opened with F1, is a different thing entirely. That is a client-side cheat console, it is gated by allowCheats, and it is not an administration tool. Leaving allowCheats off is the right default for anything but a private building session.
Save slots, moving a save and backups#
Saves live in the folder set by saveFolderPath or -savefolderpath, and under it each slot is its own directory. Five slots means five worlds on one server; changing slot and restarting swaps between them without losing either.
Moving an existing world onto the server works, and it is one of the things this game does better than its sequel. Your own saves live under AppData\LocalLow\SKS\TheForest\<SteamID64>\, in a SinglePlayer or MultiPlayer folder with Slot1 to Slot5 beneath it. Both kinds transfer. Stop the server, copy the contents of your local SlotX folder into the server's Multiplayer/SlotX, set slot to that number and initType to Continue, then start. Copy the whole folder's contents rather than picking out files, and take a backup of whatever was in that slot first.
- The autosave is not a backup. It overwrites the same slot, so a save written in a bad state replaces the good one.
- The minimum interval is fifteen minutes. Whatever else you do, that is the floor on how much a crash can cost.
- A clean stop saves.
/shutdown, or a normal stop from your panel. Killing the process does not.
So the backup plan is a copy of the save folder, somewhere else, on a schedule, restored once to prove it works. Backups that actually restore makes the case for that last clause better than a sentence here can. On RE:NODE the plans include backup slots, backups are stored off the machine they protect and restore with one button, and the Schedules tab will run a nightly copy and a weekly restart on a cron expression.
Mods, updates and what breaks#
The Forest has no official mod support and no workshop pipeline for servers. What the community uses is ModAPI, which does list the dedicated server as a target of its own, separate from the game client. Mechanically it is a patcher: you point its launcher at the server's files, pick mods, and it rewrites assemblies in place. The rules are the familiar ones - the server and every client need the same mods at the same versions, a mismatch shows up as a failed connection or a desynced session, and none of it is supported by the developer. Not every client mod has a server-compatible build, so check per mod rather than per collection.
Two practical consequences. Patched assemblies are overwritten by every app_update, so the mods have to be reapplied after each server update, and that is the moment to have a save backup rather than an hour later. And allowCheats off does not stop mods - it only gates the built-in console - so it is not the anti-grief setting people assume it is.
The unusual part is that this is a much safer bet here than in most games. The Forest has been feature-complete for years, so the thing that normally breaks a modded server - a patch arriving on a Tuesday - has effectively stopped happening. A modded Forest server set up correctly tends to stay set up. If one does break, what to do when a mod update breaks is the recovery order, and the short version is that you kept a copy of the working folder or you did not.
Vanilla updates still need the server to match the client exactly. Run app_update after any patch and before anyone tries to join.
Troubleshooting#
The server does not show in the list. Query port 27016 is closed or wrong. Test by adding the server by address; if that works, the game port is fine and only the browser is broken.
"Could not connect". The game port 27015, or serverIP set to an address the server cannot bind to. The address the server printed on its first run is the one it wants.
My world resets every restart. initType is New. Set it to Continue.
My config changes do nothing. You edited a different file from the one the server loads. Pass -configfilepath explicitly and there is no ambiguity.
A command-line change is ignored. It is not - it is the other way round. Command-line parameters override the config file, so a leftover parameter in a start script beats the value you just edited.
The server never saves at all. Not the interval, not the slot: serverSteamAccount is blank. A Forest server with no game server login token can run for hours and write nothing.
The server saves but people still lose progress. The interval is fifteen minutes at best, and a killed process saves nothing. Use /save before anything risky and stop the server cleanly.
The log is full of `NullReferenceException` lines. Almost certainly harmless. A headless Forest server produces a steady stream of null-reference spam from the input system that has nothing to do with the game, and the reference container projects filter it out by default. Look for a real error above or below it before you start changing things.
Adding the server to Steam favourites does not find it. Sources disagree about whether the Steam favourites list wants the game port or the query port for this game. Try address:27016 first and address:27015 second; one of them will work.
Cannibals never appear. difficulty Peaceful, or veganMode on. Peaceful is not "fewer enemies".
FAQ#
How many players can a The Forest dedicated server hold?
Eight is the default and the number Endnight documents. There is no published maximum, and a handful of hosts sell more slots, but nothing in the game's own documentation supports going higher and the balance certainly does not. Setting serverPlayers lower is a good way to keep a group small and the memory use predictable.
Does The Forest dedicated server run on Linux?
Not natively. Endnight shipped a Windows executable only, and on Linux it runs under Wine. That is a well-trodden path and is how a lot of hosted Forest servers work, but every path in the documentation is a Windows path.
Can I move my single-player world to the server?
Yes. Copy the contents of your local SlotX folder - single-player or multiplayer, both work - into the server's Multiplayer/SlotX, set slot and initType Continue, and start. Back up whatever was in that slot first, because the copy overwrites it.
What is the difference between the server password and the admin password?
serverPassword decides who can join at all. serverPasswordAdmin decides who gets the slash commands. A player who joins using the admin password is an admin, so treat it like a root password rather than a shared secret.
How often does the server save?
Every serverAutoSaveInterval minutes, with a minimum of fifteen and a default of thirty. It also saves on a clean shutdown and whenever an admin types /save. It does not save when the process is killed.
Is it worth enabling VAC?
On a public server, yes - it costs nothing and removes the laziest cheaters. On a private password-protected server for friends it makes no difference, and it will occasionally complicate things if anyone is running mods.




კომენტარები
სრულიად ანონიმურად: ანგარიშის, ელფოსტის და cookie-ის გარეშე. ინახება მხოლოდ სახელი, ტექსტი და დრო - სხვა არაფერი. ბმულების რაოდენობა ლიმიტირებულია.