Satisfactory Dedicated Server Commands, API and Settings
Every Satisfactory dedicated server console command, startup parameter, INI setting and HTTPS API function — plus what the Server Manager genuinely can and cannot do.
Satisfactory administers its dedicated servers through the in-game Server Manager, a short list of server console commands, and an HTTPS API — not through slash commands. This guide covers the two passwords, claiming the server, every documented command, the INI settings that matter, and remote administration.
Satisfactory has no in-game admin commands
There is no
/kick, no/ban, no/giveand no/tp. If a page lists those for Satisfactory, they were copied from another game. Real administration happens in the Server Manager UI, in its Console tab, in the INI config files, or over the HTTPS API. The complete documented server console command set is eight commands, and they are all in section 4.
1. The Two Passwords
A Satisfactory dedicated server has two separate passwords that do different jobs. You can set either, both, or only the admin one.
| Password | What it controls | Required? |
|---|---|---|
| Admin Password | "The Password used to limit Administrator privileges (such as Save Game loading, Server Options and New Game creation) to a certain set of players on a Dedicated Server." | Yes — set when claiming |
| Player Password Protection | "A password that limits who can connect to the server and see information about the ongoing game session." | No — off by default |
Admin status attaches to your game client once you enter the Admin Password in the Server Manager. You do not re-enter it every session.
Setting only the Admin Password gives a public server that anyone can join but only you can administer. Adding a Player Password makes it private. Because Satisfactory has no ban list, the Player Password is your only access control — see section 10.
2. Claim the Server
A freshly installed server is unclaimed, has no admin password, and will hand InitialAdmin privilege to the first client that connects. Claim it before you give the IP out, and claim it again after any rebuild or reinstall.
- Launch Satisfactory and open Server Manager from the main menu.
- Click Add Server and enter the IP and port (default
7777). - Give the server a name.
- Set the Admin Password.
- Create a new game, or upload an existing save.
Ports, as of Patch 1.1.0.0 — a server needs two forwarded:
| Port | Protocol | Set with | Purpose |
|---|---|---|---|
| 7777 | TCP | -Port= |
Server traffic and the HTTPS API |
| 7777 | UDP | -Port= |
Game traffic and the Lightweight Query API |
| 8888 | TCP | -ReliablePort=, -ExternalReliablePort= |
Reliable messaging |
Ports 15000 and 15777 have not been used since Patch 1.0. The two ports behave differently on conflict: if the standard port is taken, the server tries the next higher number until one is free, but if the reliable port is taken the server fails to initialise. If you forward 7777 but forget 8888, players connect and then hang forever on the loading screen — that single symptom is almost always a missing reliable port.
3. The Server Manager
The Server Manager is the actual admin panel. It carries the settings, save management and the console.
Settings — Dedicated Server section:
| Setting | What it does |
|---|---|
| Server Name | Name shown as the title of the server in the Server Manager |
| Admin Password | Limits administrator privileges to holders of this password |
| Player Password Protection | Limits who can connect and see session information |
| Auto-Load Session Name | Session whose most recent save loads automatically on startup |
| Auto Pause | Pauses the game when no players are connected |
| Auto-Save on Player Disconnect | Saves the game whenever a player disconnects |
Settings — Gameplay section:
| Setting | What it does |
|---|---|
| Server Restart Interval (hours) | The hour of day at which the server restarts daily |
| Autosave Interval (minutes) | How often the server autosaves |
| Send Gameplay Data | Sends telemetry to Coffee Stain Studios; uncheck to disable |
| Network Quality | Higher values improve client load times and network performance at the cost of server framerate |
"Server Restart Interval (hours)" is not an interval
Despite the label and the in-game description, this is not "restart every N hours". It sets the hour of the day at which the server restarts daily. A value of
6means a restart at 06:00, not a restart every six hours. Note also that the UI takes autosave in minutes while theFG.AutosaveIntervalconsole command takes seconds — the two are easy to confuse.
Manage Saves tab — all session and save file work:
- Create a new game, choosing starting location and Creative Mode options
- Load any save present on the server
- Upload a local single-player or client save to the server
- Download a server save back to your machine
- Delete an individual save file, or an entire session and all of its saves
Uploading is how you migrate a solo world onto a dedicated server. Downloading is a real backup — take one before every game patch.
Use the panel Console tab for server-side commands
The commands in section 4 need a console attached to the server process, and the server offers no interactive prompt of its own on Linux. The Console tab on your hosted Satisfactory server is the fastest route — you can fire off a
server.SaveGamebefore a risky change without launching the game and opening an admin session first.
4. Server Console Commands
This is the full documented command set. The wiki flags the list as incomplete, so treat it as the verified floor rather than an exhaustive dump — but nothing beyond this is confirmed.
| Command | What it does |
|---|---|
quit |
Shuts down the game server process |
stop |
Identical to quit |
exit |
Identical to quit |
server.SaveGame <saveName> |
Creates a save of the current session named <saveName> |
FG.AutosaveInterval <seconds> |
Sets the autosave interval, in seconds. Default 300 |
server.GenerateAPIToken |
Generates an Application Token for the Server HTTPS API |
server.InvalidateAPITokens |
Invalidates all previously generated Application Tokens |
FG.DedicatedServer.AllowInsecureLocalAccess 1 |
Allows unrestricted Server API access from localhost until restart |
Save names containing spaces must be quoted.
server.SaveGame "PreUpdate Backup"
FG.AutosaveInterval 600 There is no help command, no player list, and no moderation commands. quit, stop and exit are three names for the same shutdown — and on any supervised server (systemd, NSSM, a container with a restart policy) the supervisor restarts the process immediately, which makes them a restart in practice. To actually stop the server, stop the service, not the game.
You can reach this console two ways: the Console tab in the Server Manager, or the RunCommand function of the HTTPS API (section 9).
5. Startup Parameters
| Parameter | What it does |
|---|---|
-Port=<portnum> |
Override the game port. Default 7777 (UDP and TCP), valid 0–65535 |
-ReliablePort=<portnum> |
Override the reliable messaging port. Default 8888 (TCP) |
-ExternalReliablePort=<portnum> |
Use with -ReliablePort when external port remapping is in play |
-DisablePacketRouting |
Disables the packet router |
-DisableSeasonalEvents |
Disables all seasonal events, such as FICSMAS |
-ini:<FILE>:[<SECTION>]:<KEY>=<VALUE> |
Set any INI value from the command line |
-Log |
Show logs in a window on Windows, or the active terminal on Linux (default on Linux) |
-NewConsole |
Run using the Satisfactory 1.0 Unreal console |
-Unattended |
Suppress dialogs that would otherwise interrupt the server |
6. Configuration Files
Two different things get confused here. ServerSettings.<PORT>.sav is a binary file holding what the Server Manager UI writes — it is not a config file. The editable INI files live under the install directory:
| Platform | Config path |
|---|---|
| Linux | <install_directory>/FactoryGame/Saved/Config/LinuxServer/ |
| Windows | <install_directory>\FactoryGame\Saved\Config\WindowsServer\ |
Edit INI files only while the server is shut down
The server writes its INI files on graceful shutdown, so any edit made while it is running gets overwritten on the next stop. This is the number one reason people report that "the wiki settings don't work". Shut the server down first, edit, then start. Do not mark the files read-only to work around it — that breaks future patches. The files may not exist at all until the server has been started and gracefully stopped once.
The settings worth knowing:
| Setting | File / section | Default | What it does |
|---|---|---|---|
MaxPlayers |
Game.ini — [/Script/Engine.GameSession] |
4 | Player cap |
mNumRotatingAutosaves |
Engine.ini — [/Script/FactoryGame.FGSaveSession] |
3 | How many rotating autosaves are kept |
NetServerMaxTickRate |
Engine.ini — [/Script/OnlineSubsystemUtils.IpNetDriver] |
30 | Server tick rate ceiling |
LanServerMaxTickRate |
same section | 30 | LAN tick rate ceiling |
NetClientTicksPerSecond |
Engine.ini — [/Script/Engine.Engine] |
30 | Client-side tick rate |
InitialConnectTimeout |
Engine.ini — [/Script/OnlineSubsystemUtils.IpNetDriver] |
30 | Seconds to wait for a new connection to establish |
ConnectionTimeout |
same section | 30 | Seconds before an established connection is considered timed out |
PortRangeBegin / PortRangeLength |
Engine.ini — [/Script/ReliableMessaging.ReliableMessagingTCPFactory] |
8888 / 512 | Reliable-port auto-allocation range (Version 1.1+) |
Port |
Engine.ini — [URL] |
7777 | Fixed game port |
bImplicitSend |
Engine.ini — [CrashReportClient] |
True | Set False to stop Linux crash-report uploads |
FG.DisableSeasonalEvents |
GameUserSettings.ini — [/Script/FactoryGame.FGGameUserSettings] |
0 | 1 disables FICSMAS and similar |
[/Script/Engine.GameSession]
MaxPlayers=8 Or as a startup parameter, which survives INI rewrites: -ini:Game:[/Script/Engine.GameSession]:MaxPlayers=8
Up to 127 players is theoretically possible but not practical. The server is tuned to be most performant at the default cap of four, and raising it costs stability, performance and RAM — 16 GB is recommended for large saves or more than four players. Raising the tick rate is not a lag fix either: if the hardware cannot sustain 30, asking for more will not help.
[/Script/FactoryGame.FGSaveSession]
mNumRotatingAutosaves=10
[/Script/OnlineSubsystemUtils.IpNetDriver]
InitialConnectTimeout=120.0
ConnectionTimeout=120.0 Save games, blueprints and ServerSettings.<PORT>.sav live somewhere else entirely:
| What | Linux | Windows (user account) |
|---|---|---|
| Server settings | ~/.config/Epic/FactoryGame/Saved/SaveGames/ServerSettings.PORT.sav |
%LocalAppData%\FactoryGame\Saved\SaveGames\ServerSettings.PORT.sav |
| Save games | ~/.config/Epic/FactoryGame/Saved/SaveGames/server |
%LocalAppData%\FactoryGame\Saved\SaveGames\server |
| Blueprints | ~/.config/Epic/FactoryGame/Saved/SaveGames/blueprints |
%LocalAppData%\FactoryGame\Saved\SaveGames\blueprints |
PORT is the configured port, so normally ServerSettings.7777.sav. On Windows the paths shift when the server runs as a service: NSSM uses %WINDIR%\System32\config\systemprofile\AppData\Local\..., a native Windows service uses %WINDIR%\ServiceProfiles\NetworkService\AppData\Local\....
Deleting
ServerSettings.PORT.savis the only admin password reset — and it wipes more than the passwordThere is no password recovery. Losing the admin password means deleting that file and re-claiming the server. Doing so also clears the server name, player password, auto-load session name and the server's certificate. Your saves survive, because they sit in a different directory.
7. Creative Mode (formerly Advanced Game Settings)
Creative Mode is where the abilities other games expose as cheat commands actually live. It was called Advanced Game Settings (AGS) until Update 1.2 renamed it. On a dedicated server the host or an admin enables it, after which all players get access to the settings.
| Group | Options |
|---|---|
| Gameplay | No Build Cost, Flight Mode, No Power, No Unlock Cost, Unlock Alternative Recipes Instantly, Keep Inventory, Give Items, God Mode, No Fuel |
| Creatures | Disable Arachnid Creatures |
| Progression | Set Starting Tier, Set Game Phase, Unlock All Tiers, Unlock All Research in the MAM, Unlock All in the AWESOME Shop |
Some options are per-player (Flight Mode); others apply to everyone (No Unlock Cost). Enable it with the Creative Mode button when creating a session, or the Enable Creative Mode box below the Load Game button for an existing save. Over the API, GetAdvancedGameSettings and ApplyAdvancedGameSettings read and write these values.
Creative Mode is a one-way door
Enabling Creative Mode disables achievements, and it cannot be disabled once enabled. There is no turning it off after a quick fix. If you need it temporarily, download the save first (section 3), enable it on a copy, and reload the clean save afterwards.
8. The In-Game Debug Console
Press ` (backtick), ~ (tilde) or § (paragraph) to open the console. Press again for the larger window, which at least one command requires. Nothing has to be enabled first.
This console is client-side. It cannot spawn items, teleport, or change anything on the server — the wiki is explicit that "it cannot be used for cheating". Effects persist between sessions but reset when the game closes to desktop. Fly, Ghost, GiveItem, Cheats, Teleport and God all appear in autocomplete and have never worked. Typing a space without pressing enter lists every command, over 5,700 of them. The useful ones:
| Command | Window | Default | What it does |
|---|---|---|---|
Pause |
Small | Pauses the game; enter again to continue | |
ShowDebug <DebugType> |
Small | Debug overlay for a named subsystem | |
Stat FPS |
Small | Built-in FPS counter | |
Stat Unit |
Small | Frame time and GPU time breakdown | |
t.MaxFPS [number] |
Small | 0 | Framerate cap; 0 is unlimited |
FOV [number] |
Small | Field of view; unstable above 150 | |
Gamma [number] |
Small | 2.2 | Brightness level |
Suicide |
Small | Same as Respawn from the ESC menu | |
ToggleDebugOverlay [0/1] |
Small | 0 | Debug info window |
SaveWithNewSessionName [save] [session] |
Small | Saves under a new session name | |
materialFlowAnalysis <recipeName> |
Large | Items required per second for a craftable item |
Dozens of Unreal r.*, foliage.*, fx.* and Grass.* variables also exist for graphics tuning. None of them touch the server.
ShowDebug takes a subsystem name. CIRCUITS (power networks) and FACTORY (building counts) are the genuinely useful ones for diagnosing a factory, alongside PHYSICS, RADIATION, TRAINS, TRAINSIGNALS and VEHICLE. ShowDebug Reset clears everything. Avoid FACTORYCONNNECTIONS (three Ns — that is the real spelling), which causes extreme lag; TRAINCOUPLERS does not work at all.
To rebind the console key, edit Input.ini and mark it read-only afterwards or the game will overwrite it:
[/Script/Engine.InputSettings]
ConsoleKeys=F6 9. The HTTPS API
Satisfactory 1.0 added a proper remote administration API at /api/v1 on the server's TCP port — https://<ip>:7777/api/v1. Every request is a POST carrying a function name and a data object.
Authentication is a Bearer token. Privilege levels are NotAuthenticated, Client, Administrator, InitialAdmin and APIToken. Three ways to get one: PasswordlessLogin (unclaimed or unprotected servers), PasswordLogin with the admin or client password, or server.GenerateAPIToken for a non-expiring application token.
| Function | Privilege | What it does |
|---|---|---|
HealthCheck |
None | Health check; can exchange custom data with modded clients |
PasswordlessLogin |
None | Log in as a player when no password is set |
PasswordLogin |
None | Log in with the Admin or Client Protection password |
VerifyAuthenticationToken |
— | Validate a token |
QueryServerState |
— | Current server state and player information |
GetServerOptions |
— | Current and pending server options |
GetAdvancedGameSettings |
— | Current Creative Mode / AGS values |
ApplyAdvancedGameSettings |
— | Apply new Creative Mode / AGS values |
ClaimServer |
InitialAdmin | Claim an unclaimed server; takes ServerName and AdminPassword |
RenameServer |
Admin | Change the server name |
SetClientPassword |
Admin | Set the client protection password |
SetAdminPassword |
Admin | Set the admin password |
SetAutoLoadSessionName |
Admin | Set the session loaded on startup |
RunCommand |
Admin | Run a console command and return its output |
Shutdown |
Admin | Shut the server down |
ApplyServerOptions |
Admin | Apply new server options |
CreateNewGame |
Admin | Create and load a new session |
SaveGame |
Admin | Save the current session to a new file |
LoadGame |
Admin | Load a specified save file |
DeleteSaveFile |
Admin | Delete one save file |
DeleteSaveSession |
Admin | Delete every save in a session |
EnumerateSessions |
Admin | List all save sessions |
UploadSaveGame |
Admin | Upload a save to the server |
DownloadSaveGame |
Admin | Download a save from the server |
RunCommand takes {"Command": "<string>"} and returns CommandResult (output, \n-separated) and a ReturnValue boolean. It is how you script the section 4 commands. InitialAdmin — the level ClaimServer needs — is only obtainable by attempting a passwordless login while the server has no Admin Password set.
curl --insecure -X POST https://127.0.0.1:7777/api/v1 \
-H 'Content-Type: application/json' \
-d '{"function":"PasswordLogin","data":{"MinimumPrivilegeLevel":"Administrator","Password":"YOUR_ADMIN_PASSWORD"}}'
curl --insecure -X POST https://127.0.0.1:7777/api/v1 \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-d '{"function":"RunCommand","data":{"Command":"server.SaveGame Nightly"}}' --insecure is required because servers present a self-signed certificate that cURL rejects by default.
AllowInsecureLocalAccessturns off authentication for anything on the box
FG.DedicatedServer.AllowInsecureLocalAccess 1removes all authentication for API calls originating from localhost. On a shared or containerised host, "localhost" is not only you. Use it for a scripted first-time claim and then restart the server to clear it, or set it per-boot with-ini:Engine:[SystemSettings]:FG.DedicatedServer.AllowInsecureLocalAccess=1only for as long as you need it.
There is also a Lightweight Query API: a request-response UDP protocol on the same port number, protocol version 1, no authentication. It returns Cookie, ServerState, ServerNetCL, ServerFlags, sub-state IDs and versions, and the server name. It exists so monitoring tools can poll cheaply and only fall back to the heavier HTTPS API when a sub-state version actually changes.
10. What Satisfactory Does Not Have
Worth stating plainly, because people lose hours looking for these:
- No kick command. Nothing in the Server Manager, the console command set, or the HTTPS API kicks a player.
- No ban list and no whitelist. Access control is the Player Password — all or nothing.
- No in-game admin chat commands. No
/commands of any kind on a vanilla server. - No item spawning or teleporting from the console. Creative Mode's Give Items and Flight Mode are the sanctioned equivalents.
- No player list command. Use
QueryServerStateover the API.
If someone needs removing, the practical route is to set a Player Password and restart, which drops everyone who does not have it. Mods can go further — see How to install mods for Satisfactory — but nothing in the base game does.
11. FAQ
How do I become admin on a Satisfactory server?
Open the Server Manager from the main menu, add your server, and enter the Admin Password. On a brand-new server there is no password yet — you claim it by setting a server name and an admin password, which makes you the administrator. Admin status is remembered per account, so you do not re-enter it each session.
What are the Satisfactory admin commands?
Eight: quit, stop and exit (three names for the same shutdown), server.SaveGame <name>, FG.AutosaveInterval <seconds>, server.GenerateAPIToken, server.InvalidateAPITokens and FG.DedicatedServer.AllowInsecureLocalAccess. Everything else — settings, saves, sessions, restarts — happens in the Server Manager UI, the INI files, or the HTTPS API. There are no kick, ban, give or teleport commands.
How do I open the console in Satisfactory?
Press `, ~ or § in-game, and again for the larger window. That console is client-side only: it changes graphics settings and shows debug overlays, and cannot spawn items or affect other players. The server console is separate, reached through the Server Manager's Console tab or your host's panel.
How do I restart my Satisfactory server?
Set a daily restart hour under Server Restart Interval (hours) in the Server Manager, remembering it is an hour of day and not an interval. For an immediate restart, run quit in the console — any supervised server comes straight back up. Run server.SaveGame first if there is unsaved progress.
I lost my admin password. How do I reset it?
Delete ServerSettings.<PORT>.sav from the SaveGames directory and restart the server. It becomes unclaimed and you can claim it again with a new password. This also erases the server name, player password, auto-load session name and certificate, but your saves live in a separate folder and are untouched.
How do I add more than 4 players to my server?
Set MaxPlayers under [/Script/Engine.GameSession] in Game.ini, or pass -ini:Game:[/Script/Engine.GameSession]:MaxPlayers=8 at startup. Up to 127 is theoretically possible but not practical — the server is tuned for the default of four, and going higher costs stability and performance. Budget 16 GB of RAM for large saves or more than four players.
Can I enable cheats on a Satisfactory server?
Use Creative Mode, called Advanced Game Settings before Update 1.2. It covers No Build Cost, Flight Mode, No Power, God Mode, Give Items, Unlock All Tiers and more. Enable it when creating a session or with the checkbox below Load Game. It permanently disables achievements for that save and cannot be switched off once on.
12. What to Read Next
- Getting started with your Satisfactory server — first boot, ports and connecting
- Configuring your Satisfactory server — settings, INI files and performance tuning
- How to install mods for Satisfactory — adding what the base game lacks
Made with 💜 by GameServerKings

Need a Satisfactory server?
Deploy an instantly-provisioned Satisfactory server on high-clock hardware — DDoS protected, no contracts, cancel anytime.
From $10.40 /month