Insurgency: Sandstorm Server Config: Game.ini, Admins.txt, Ports
An Insurgency: Sandstorm dedicated server is configured in two places: the launch command (map, scenario, max players, password, hostname, ports, tokens) and a set of files. Game.ini and Engine.ini sit in Insurgency/Saved/Config/WindowsServer/ or LinuxServer/, while the plain-text lists (Admins.txt, MapCycle.txt, Mods.txt, Motd.txt) sit in Insurgency/Config/Server/.
This page follows the developers' Server Admin Guide, with notes where host guides differ. The game updates regularly, so check the current patch notes if something no longer behaves as described. Checked November 2026.
- Install the server with SteamCMD using app
581330and an anonymous login. Launch the server binary with a map, a scenario and your ports. - Game and query ports are set with
-Portand-QueryPort(the official examples use27102and27131). The guide says to forward both TCP and UDP. - Admins go in
Insurgency/Config/Server/Admins.txt, one steamID64 per line; the list is read after a restart or level change. - Password and player count are travel parameters on the map argument:
?password=...?MaxPlayers=....
On this page
File locations
| File | Location | Purpose |
|---|---|---|
Game.ini, Engine.ini | Insurgency/Saved/Config/WindowsServer/ or .../LinuxServer/ | Gameplay rules, RCON, mod.io settings |
Admins.txt | Insurgency/Config/Server/ | Admin steamID64 list |
MapCycle.txt | Insurgency/Config/Server/ | Rotation of scenarios |
Mods.txt | Insurgency/Config/Server/ | Mod IDs (see the mods guide) |
Motd.txt | Insurgency/Config/Server/ | Plain-text message on the loading screen |
If the Config or Server folders do not exist, create them. The .txt names can be overridden with -AdminList=, -MapCycle=, -ModList= and -motd=, so a host or script may use different filenames. Stop the server before editing and restart afterwards.
The launch command
The map and options come first, then dash-prefixed flags. The official syntax for Linux and Windows is the same apart from the binary name:
InsurgencyServer-Linux-Shipping Oilfield?Scenario=Scenario_Refinery_Push_Security?MaxPlayers=28?password=secret -Port=27102 -QueryPort=27131 -log -hostname="My Server" -GSLTToken=YOUR_TOKEN -GameStats| Option | Type | What it does |
|---|---|---|
Map?Scenario=Scenario_... | Travel | Start map and scenario (default cycle is all Versus scenarios) |
?MaxPlayers=N | Travel | Player cap; on co-op servers it counts humans only |
?password=... | Travel | Join password |
-hostname="Name" | Flag | Name in the server browser |
-Port= / -QueryPort= | Flag | UDP game port / Steam query port |
-AdminList=, -MapCycle=, -motd= | Flag | Use alternative list files (no extension needed in the examples) |
-ruleset=OfficialRules | Flag | Lists the server under the "official rules" filter and locks down some options |
-EnableCheats | Flag | Cheats, for testing only |
Some panels and older guides pass the password as a -password= flag. The developers' guide documents password as a travel parameter, so use that form if you build the command yourself.
Ports and firewall
The official guide's examples use game port 27102 and query port 27131, set with -Port and -QueryPort. These are example values, not enforced defaults, so choose your own if you run more than one server on a machine.
For the server to appear in the browser, the guide says to forward both TCP and UDP for the game and query ports, and on Windows to create inbound firewall rules for both protocols. One host guide points out the query port is what lists the server: without it players can still direct connect but will not see it in the list. If you self-host behind a router, forward the ports there as well.
Game.ini: the format and the rules most admins change
Game.ini is standard Unreal Engine ini. Each setting must sit under its section header in square brackets, each header should appear only once, and there must be no blank line between a header and its settings (a blank line makes the game read what follows as a headerless section and throw errors). Leave a blank line before starting a new section.
[/Script/Insurgency.INSGameMode]
bKillFeed=True
TeamKillLimit=3
[/Script/Insurgency.INSMultiplayerMode]
bAllowFriendlyFire=True
FriendlyFireModifier=0.2
bMapVoting=True
bUseMapCycle=True| Section and key | Documented default | Notes |
|---|---|---|
INSGameMode bKillFeed | False | Shows the kill feed |
INSGameMode bKillerInfo | True | Shows who killed you |
INSGameMode TeamKillLimit | 3 | Team kills before a penalty |
INSMultiplayerMode bAllowFriendlyFire | True | Friendly fire on or off |
INSMultiplayerMode FriendlyFireModifier | 0.2 | Scale of friendly-fire damage |
INSMultiplayerMode bMapVoting / bUseMapCycle | True / True | Voting and the map cycle file |
INSMultiplayerMode bAutoBalanceTeams | True | Automatic team balancing |
INSMultiplayerMode GameTimeLimit | -1 (off) | Match time limit |
INSMultiplayerMode bBots | False | Bots in versus (see the bots guide) |
The sections are written as [/Script/Insurgency.INSGameMode] and so on; the developers' guide lists many more keys for each mode.
GSLT, stats and RCON
A Game Server Login Token (GSLT) comes from Steam's Game Server Account Management page, one token per server, passed as -GSLTToken=. The developers' guide ties it to the stats system: add -GameStats to opt in, and optionally a -GameStatsToken from the stats token generator, which you should keep private. The guide itself says to enter app ID 581320 for the token while giving 581330 for the server install, and flags the mismatch, so double-check on Steam. Panel templates describe the token as needed for browser listing, while the guide only describes it for stats, so set it to be safe.
To enable RCON, add flags or set it in Game.ini:
-Rcon -RconPassword=password -RconListenPort=27015
[Rcon]
bEnabled=True
Password=password
ListenPort=27015The RCON section also supports MaxPasswordAttempts (default 3) and IncorrectPasswordBanTime (default 30 minutes). Pick a strong password and keep it different from your join password.
Doing this on a hosted server
Hosting with ChicagoServers? The Insurgency Sandstorm server hosting page lists what is included, such as a built-in mod installer, free server backups and SFTP file access. The file layout is the same as above. Server name, ports and tokens belong to the launch command, so ask live support if you cannot find where your server sets them.
Frequently asked questions
Where is Game.ini on an Insurgency: Sandstorm server?
In Insurgency/Saved/Config/WindowsServer/ or LinuxServer/. The text lists such as Admins.txt and MapCycle.txt are in Insurgency/Config/Server/.
What ports does an Insurgency: Sandstorm server use?
The official examples use 27102 for the game port and 27131 for the query port, set with -Port and -QueryPort. The guide says to forward both TCP and UDP.
How do I add admins on an Insurgency: Sandstorm server?
Put each admin's steamID64 on its own line in Insurgency/Config/Server/Admins.txt and restart or change level.
Do I need a GSLT for an Insurgency: Sandstorm server?
The developers' guide describes it for stats authentication, while other templates call it required for listing. Generate one per server and add it with -GSLTToken.