upcoming-survival-games pc-survival-games

SurvivalGamingClub.Com

Not Dying, does not a survival game make.

How to set up your Sons of the Forest Dedicated Server

Sons of the Forest Server Setup

Want to host a Sons of the Forest dedicated Server? What about an Sons of the Forest private server? Maybe even a Sons of the Forest Nondedicated Server, Good News you came to the right place. For the purposes of this article All these things will be considered the same thing, these instructions are for those that want to setup their own private server on an extra pc. 

Technical Warning

Icarus can be installed on a standard windows machine, despite what you read, it works just fine. You will also need knowledge of dynamic vs static ip’s and port forwarding. These things can be set in windows and some in your router, you will need your router username and password. If you are unsure about performing these yourself you can review the steps in the post on the right. 

Note: If you don’t want to leave your computer on all the time, another option is server hosting, I work together with G-Portal and Survival Servers. Mostly G-Portal but sometimes on popular games they can become full. G-Portal offers a discount If you use my link.

Things to Know

How many players you plan to have will greatly effect your experience. Most people are looking to setup something for just a couple of their friends or even solo, and that is the main focus of this information. 

Bandwidth, your upload speed, will affect how many people can play on your server, generally for every 1mb upload speed you can support 2 players. Also remember anyone using your internet connection while you are playing will effect this.  If you are setting this up on your home lan for single player, you do not have to worry about bandwidth.

There are no specs for Sons of the forest currently, dedicated server hosting is pretty new, based on normal unreal engine specs you should have the following. 

Ram usage, You will need a minimum of 8GB but 16GB is recommended.

CPU, You will need at least 2 cores running at 3.0 ghz or faster, in todays world you will have to hunt to find something this slow. (reference) I have personal run ark on a I7- 4700 laptop on my lan and it was a flawless experience.

GPU, there are no requirements for a GPU (graphics processor) as a server does not draw on a monitor screen, it simply runs in the background. 

Storage, You will need at least 20GB of diskspace, This will increase depending on the number of players, data, saves,  backups etc. Storage is cheap so this shouldn’t be an obstacle for most people. Also it is highly recommended to use an SSD.  

Pay Options

If you don’t want to run your own old computer for a server, you can pay for a service. They are extremely affordable especially if you don’t already have the hardware or are low on bandwidth. Companies such as Gportal have services worldwide. 

Step 1

Download This Batch File (text)

Download Note++ 

Download Steamcmd

Step 2

Extract the Steamcmd file to the folder you want your Icarus server to be located in. For this example I will be using the file exactly as provided.

D:\SOTFserver

Copy the SOTF.txt file into this folder 

Right click on the file and edit the SOTF.txt file with note++, on line 31 change the -steamservername to the name you prefer. 

Save as type: Batch file

Copy the batch file to your SOTFserver folder

Sons of the Forest dedicated server Sons of the Forest private server Sons of the Forest nondedicated server Sons of the Forest self hosted server

Your folder should look like the following. (sorry the pic says icarus it is the same for SOTF.) 

Note: Make sure if you need or want to change the install location you edit the SOTF.batch file to match, You will need to edit the first 3 lines that contain the drive letters inside the batch file. 

SOTF sons of the forest

Step 3

Create a shortcut to the SOTF batch file on your desktop. Right click and run as administrator. 

Step 4

Wait, Your files will be automatically downloaded and your server will start. 

After Clicking install you will get the following download screen, until the server files are fully downloaded. 

Step 5

Close this window (X in upper right corner).

Navigate to 

C:\Users\username\appdata\locallow\endnight\sonsoftheforestds

Edit the Dedicatedserver.cfg with Note++ as needed.

Right click and edit with Note++, set your password, and server name.

Step 6

Now we will need to get the server administration setup.

The server manager already has the correct ports listed you will need to go into your router and allow the server IP to use the ports. 

Ports

game port 8766

query port 27016

Blobsyncport 9700

Before assigning ports in your router make sure to setup a static ip address. Ports will be forwarded according to your ip and on a dynamic ip your address could change every time your pc restarts breaking your server. 

Port Forwarding.com is the best resource I have found, Click this link and find your router to learn how to forward ports.

https://portforward.com/router.htm

Done! Run your server. 

Issues

When you start your game, after selecting a character, navigate to the lan tab to locate your server, it will also be in the internet tab but there are over 1000 servers so it’s easier to locate in lan.  When your server doesn’t show and it states its running, I always start with a shutdown of the server and a restart. Servers of any kind can be very goofy. If the server doesn’t show after a second startup check your port forwarding first, that is the most common issue. 

When that doesn’t solve the problem start at the top of this page, go slow and make sure you didn’t miss any steps

Configuration File

The dedicated game server can be configured with a JSON file in the configurations folder, called dedicatedserver.cfg

How to create the default configuration file

When first starting the server, the default configuration file will be created in the configurations folder, if it doesn’t exist already. You can either create it like this or simply create a JSON file as described in the following paragraph.

File name and format

Our configuration file is written in JSON format. You can find online a multitude of resources that can teach you how to deal with such files. We will list below some basic mistakes when editing JSON files:

  • keys are always written in quotation marks and followed up by a semicolon
  • a textual value will always be written in between quotation marks “the text”
  • integers, floating point values, and boolean (true/false), will be written without quotation marks
  • each setting (key-value pair) must be followed up by a comma (,)

Notes:

  • some settings can be set to null, which means that they have no value. The outcome depends on the settings and is described in the documentation below
  • no setting is mandatory, if the setting doesn’t exist it will be replaced by its default value
  • the order doesn’t matter

The file name has to be dedicatedserver.cfg and contains a JSON formatted document that defines all parameters related to the game server configuration. It has to be placed in the configurations folder. Below is the default file.

{ “IpAddress”: “0.0.0.0”, “GamePort”: 8766, “QueryPort”: 27016, “BlobSyncPort”: 9700, “ServerName”: “Sons Of The Forest Server (dedicated)”, “MaxPlayers”: 8, “Password”: “”, “LanOnly”: false, “SaveSlot”: 1, “SaveMode”: “Continue”, “GameMode”: “Normal”, “SaveInterval”: 600, “IdleDayCycleSpeed”: 0.0, “IdleTargetFramerate”: 5, “ActiveTargetFramerate”: 60, “LogFilesEnabled”: false, “TimestampLogFilenames”: true, “TimestampLogEntries”: true, “SkipNetworkAccessibilityTest”: false, “GameSettings”: {}, “CustomGameModeSettings”: {} }
 
The following is a table and did not copy well. use the above link to see this information in a better format. 
 
Key Effect Accepted Values
IpAddress
Listening interface for the game server, usually 0.0.0.0 if listening on all interfaces.
any string formatted ipv4 address
GamePort
UDP port used for gameplay netcode (Bolt).
integer
QueryPort
UDP port used by Steam to list the server and enable the discovery services.
integer
BlobSyncPort
BlobSyncPort UDP port used by the BlobSync system to initialize game systems and exchange data.
nteger
ServerName
Name of the server visible in the server list, and in the Steam contacts.
any string
MaxPlayers
The maximum number of players allowed simultaneously on the server.
integer (1-8)
Password
Adds a password to make your server “private”. Upon connection, this password will be requested before the client can proceed.
any string up to 40 characters long
LanOnly
Allows or restricts the server visibility to LAN only.
true, false
SaveSlot
When creating a new save, this number will be the id of the save.
integer greater or equal to 1
SaveMode
Game save initialization mode.
 “continue”: will create a new save on SaveSlot if it doesn’t exist, or load it if it exist.
 “new”: will create a new game, with a new game id, and overwrite any game previously saved on the SaveSlot. If the server stops and restarts, the previous save will be overwritten for as long as the mode is set to “new”.
new, continue
GameMode
Sets the difficulty game mode when creating a new save. This parameter is ignored if loading a save (save mode set to “continue” with a save that exists on the slot). If the game mode is set to “custom”, then the custom game mode settings will be read from CustomGameModeSettings option, described later.
normal, hard, hardsurvival, peaceful, custom
SaveInterval
How often the game server automatically saves the game to SaveSlot, in seconds.
integer
IdleDayCycleSpeed
A multiplier to how quickly the time passes compared to normal gameplay when the server is considered idle (no player connected).
floating point value between 0 and 1, greater than or equal to 0
IdleTargetFramerate
Target framerate of the server when it’s considered idle (no player connected).
integer greater or equal to 1
ActiveTargetFramerate
Target framerate of the server when it’s NOT considered idle (one or more player connected).
integer greater of equal to 10
LogFilesEnabled
Defines if the logs will be written to files. The logs will be output in <user data folder>/logs.
true, false
TimestampLogFilenames
Enabled log files timestamping.
• “true”: every time the server runs will dump log output to a new file, with filename having the following format: sotf_log_{DateTime:yyyy-MM-dd_HH-mm-ss}.txt
• “false”: the filename will be sotf_log.txt and previous log will be overwritten if it already exists.
true, false
TimestampLogEntries
Enables each log entry written to file to be timestamped.
true, false
SkipNetworkAccessibilityTest
Opt-out of network accessibility self tests: retrieval of the public IP and listing on Steam Master Server, as well as port accessibility check. Please note that only IPv4 is officially supported.
true, false
GameSettings
A key value map of all game settings you can use to tweak your game (in any mode). All parameters will be listed in a later paragraph along with their possible values. If the value is null, or empty, default settings will be used.
Refer to Game Settings section
CustomGameModeSettings
A key value map of all settings available to customize your game in custom mode. All parameters are listed later in this guide along with their possible values. If the value is null, or empty, default settings will be used. This parameter is ignored if the game mode is not “custom” or if loading a save (save mode set to “continue” with a save that exists on the slot), whether is it “custom” or not.
Refer to Custom Game Mode Settings section
 
 
Game Settings

These are extra settings that can be injected in the configuration file inside the “GameSettings” parameter.

“GameSettings”: { “Gameplay.TreeRegrowth”: true, “Structure.Damage”: true },
Key
Effect
Accepted Values
Gameplay.TreeRegrowth
Enable automatic tree regrowth, triggered when sleeping.
true, false
Structure.Damage
Allow buildings to be damaged.
true, false

Custom game mode settings

These are extra settings that can be injected into the configuration file inside the “CustomGameModeSettings” parameter. They will be ignored if the game mode is not “custom” or if loading a save (save mode set to “continue” with a save that exists on the slot), whether is it “custom” or not, since they are set once upon save creation.

“CustomGameModeSettings”: { “GameSetting.Vail.EnemySpawn”: true, “GameSetting.Vail.EnemyHealth”: “Normal”, “GameSetting.Vail.EnemyDamage”: “Normal”, “GameSetting.Vail.EnemyArmour”: “Normal”, “GameSetting.Vail.EnemyAggression”: “Normal”, “GameSetting.Vail.AnimalSpawnRate”: “Normal”, “GameSetting.Environment.StartingSeason”: “Summer”, “GameSetting.Environment.SeasonLength”: “Default”, “GameSetting.Environment.DayLength”: “Default”, “GameSetting.Environment.PrecipitationFrequency”: “Default”, “GameSetting.Survival.ConsumableEffects”: “Normal”, “GameSetting.Survival.PlayerStatsDamage”: “Off”, “GameSetting.Survival.ColdPenalties”: “Off”, “GameSetting.Survival.ReducedFoodInContainers”: false, “GameSetting.Survival.SingleUseContainers”: false, },
Key
Effect
Accepted Values
GameSetting.Vail.EnemySpawn
Enable enemies spawning.
true, false
GameSetting.Vail.EnemyHealth
AAdjust enemy starting health.
low, normal, high
GameSetting.Vail.EnemyDamage
Adjust damage enemies can do.
low, normal, high
GameSetting.Vail.EnemyArmour
Adjust enemies armor strength.
low, normal, high
GameSetting.Vail.EnemyAggression
Adjust enemy aggression level.
low, normal, high
GameSetting.Vail.AnimalSpawnRate
Adjust animal spawn rate.
low, normal, high
GameSetting.Environment.StartingSeason
Set environmental starting season.
spring, summer, autumn, winter
Structure.Damage
Allow buildings to be damaged.
true, false
GameSetting.Environment.SeasonLength
Adjust season length.
short, default, long, realistic
GameSetting.Environment.DayLength
Adjust day length.
short, default, long, realistic
GameSetting.Environment.PrecipitationFrequency
Adjust the frequency of rain and snow.
ow, default, high
GameSetting.Survival.ConsumableEffects
Enable damage taken when low hydration and low fullness.
normal, hard
GameSetting.Survival.PlayerStatsDamage
Enable damage from each bad or rotten food and drink.
off, normal, hard
GameSetting.Survival.ColdPenalties
Adjusts the severity that cold will affect health and stamina regeneration.
off, normal, hard
GameSetting.Survival.ReducedFoodInContainers
Reduces the amount of food found in containers.
true, false
GameSetting.Survival.SingleUseContainers
Containers can only be opened once.
true, false
 
 
Special Cases
  • if a parameter is missing from the config, the default value is used
  • if the game runs without a config file, the default configuration is used
  • all parameters can also be overridden by a command line argument (see paragraph below)

Overriding parameters with command line arguments

Every parameter listed in the configuration file can be overridden via the command line to allow more flexibility. You can even create the full configuration via command line if you want to. The format goes as below:

SonsOfTheForestDS.exe -dedicatedserver.<parameter> “<value>” # For example SonsOfTheForestDS.exe -dedicatedserver.ServerName “My Custom Server” -dedicatedserver.MaxPlayers “4”

Note: If you don’t want to leave your computer on all the time, another option is server hosting, I work together with G-Portal and Survival Servers. Mostly G-Portal but sometimes on popular games they can become full. G-Portal offers a discount If you use my link.

You don’t need to leave an email in order to comment.

5 thoughts on “Sons of the Forest Dedicated Server”

  1. Hi, nice guide, i have some issue following your suggestion, the bat file doesn’t find: file SonsOfTheForestDS.exe.

    Any suggestion?

    Reply
    • In the bat file, on line 30, it tells the computer to “change directory to the variable set in line 8” with the command cd “%Executable_Dir%”. With windows, if the drive letter of the directory is something other than your default (which is c: for most) then you need to also have /D on the cd command.

      For example:

      Change
      cd “%Executable_Dir%”
      TO
      cd /D “%Executable_Dir%”

      Reply

Leave a Comment

Receive the latest news

Subscribe To Our Update Notification

Get notified about new articles