Dedicated servers/Configuration files

From Satisfactory Wiki
Jump to navigation Jump to search

This page details configuration files used by dedicated servers.

Overview

Satisfactory uses Unreal Engine, which stores many of its vital settings and configurations in various "ini" (short for "initialization") files. These files are located in a directory relative to the server's base installation folder, as noted below:

Config file location
Platform Path
Linux <installation_directory>/FactoryGame/Saved/Config/LinuxServer/
Windows <installation_directory>\FactoryGame\Saved\Config\WindowsServer\

While the basic server settings may be edited via the in-game options menus, there are many, many more settings that may be changed by manually editing the appropriate ini files.

Configuration Editing

Always make ini edit changes with the game server shut down. The ini files are written to on graceful shutdown, and you may find your changes overwritten otherwise.[1]

Be aware that any changes to ini files may be overwritten when a new update or patch is released, possibly necessitating a re-edit. Also, do not set the ini files to be "read-only" after you modify them as this can cause issues with future patches.

If you are unable to locate any of the listed ini files, you will need to start the server at least once first. See Dedicated_servers#Claiming_the_Server_and_Starting_a_Game.

If a section to be added already exists in the file, append or overwrite its contents to the section. If a section is not present or the file does not exist, create the section or file.

Below are a few configuration settings that the community has discovered.

Disabling Server Crash Reporting

When running on Linux, the server uploads crash reports by default. The developers can then use these crash reports to help pinpoint issues for future patches.

Engine.ini

[CrashReportClient]
bImplicitSend=False

Client disconnected for Timeout

Client systems with older hardware or slower connections may need a higher connection timeout limit than the default 30 seconds.

Engine.ini

[/Script/OnlineSubsystemUtils.IpNetDriver]
InitialConnectTimeout=XX.0
ConnectionTimeout=XX.0

XX is the number of seconds for the connection timeout counter to use.

  • InitialConnectTimeout = Number of seconds to wait for a new network connection to be established before destroying the connection.
  • ConnectionTimeout = Number of seconds to wait before considering an established connection timed out.

Number of Kept Autosaves

Currently, the server defaults to three autosaves that are rotated (when the server creates a new autosave, the oldest is deleted and the others are moved down the list. Currently these are:

  • SessionName_autosave_0.sav
  • SessionName_autosave_1.sav
  • SessionName_autosave_2.sav

To override the default, replace XX with the number of autosaves the server should rotate through.

Engine.ini

[/Script/FactoryGame.FGSaveSession]
mNumRotatingAutosaves=XX

Increasing Player Count

Before changing the following setting, note that the server is tuned to be most performant with the default player cap of four. Increasing this limit may have negative effects on server stability, performance, and resource usage.

In Server Configuration

Set MaxPlayers to the desired player cap for the server:

Game.ini

[/Script/Engine.GameSession]
MaxPlayers=8

As a Startup Parameter

Add -ini:Game:[/Script/Engine.GameSession]:MaxPlayers=8 as a parameter to the server startup script.

Autosave Interval

Currently the server defaults to saving the game every 300 seconds (5 minutes). Keep in mind that shorter times mean that while the server will save the game more often, it also means a drop in server performance while the server is saving. To override the default, do the following:

  1. Start the game client and click on Server Manager
  2. Select the server to modify and authenticate if required
  3. Click on the Console tab
  4. Enter in the command FG.AutosaveInterval xxx, replacing xxx with the number of seconds between saves.

Server tick rate

There are three sections of modifications to make. Replace XX with the desired number of ticks per second (default: 30):

Engine.ini

[/Script/OnlineSubsystemUtils.IpNetDriver]
NetServerMaxTickRate=xx
LanServerMaxTickRate=xx

[/Script/SocketSubsystemEpic.EpicNetDriver]
NetServerMaxTickRate=xx
LanServerMaxTickRate=xx

[/Script/Engine.Engine]
NetClientTicksPerSecond=xx

Note that this is an upper limit (up-to), and the server will only reach the specified tickrate if hardware allows. Also note that if undesirable side effects are observed, lower the tick rate and retest before further troubleshooting.

Note that the game's default tick rate is good for most scenarios. Increasing it will not help with lags - if the hardware can't hit the default 30, increasing it won't help.

Seasonal events

Seasonal events, such as FICSMAS, can be disabled (0) or enabled (1). Note that the line will disappear after the server is restarted, but will take effect regardless.

GameUserSettings.ini

[/Script/FactoryGame.FGGameUserSettings]
FG.DisableSeasonalEvents 0

UObject Limit Increase

See also