Holdfast Server Config and Map Rotation Explained
How a Holdfast: Nations At War server config file works: global settings, !map_rotation blocks, per map keys like round_time_minutes, and mods_installed lines.
Updated Oct 7, 2026 · 5 min read
On this page
A Holdfast: Nations At War server reads one plain text config file, chosen at launch with -serverConfigFilePath. The top of the file holds global settings such as server_name, server_region, server_admin_password, the three ports and maximum_players. Below that come one or more !map_rotation start ... !map_rotation end blocks, each naming a map_name, a game_mode and optional per map rules like round_time_minutes or faction_attacking. Mods are listed with mods_installed lines. Changes apply on the next restart.
How the file is laid out
Each line is a key, a space, and a value. Lines starting with # are ignored, which is how optional settings ship switched off. Keep the order simple:
- Global server settings
- Mod lines
- Map rotation blocks, in the order you want them played
Always edit a copy, never serverconfig_default.txt itself, since game updates can overwrite the default.
Global settings
server_name [49th] Public Linebattle
server_welcome_message Line up, wait for the order to fire.
server_region usa
server_admin_password ChangeThisNow
#server_password eventnight
server_port 20100
steam_communications_port 8700
steam_query_port 27000
maximum_players 150
| Key | What it does |
|---|---|
server_name |
Name in the server browser |
server_welcome_message |
Message shown in chat when players join |
server_region |
Region tag used by browser filters, such as europe or usa |
server_admin_password |
Password for rc login in the F1 console |
server_password |
Join password; remove the # to enable it |
server_port |
Game port, UDP 20100 by default |
steam_communications_port |
Steam port, UDP 8700 by default |
steam_query_port |
Query port for the browser, UDP 27000 by default |
maximum_players |
Player cap, up to 150 |
If you run more than one server on a machine, all three ports must be unique per server.

Map rotation blocks
Every map in the rotation gets its own block:
!map_rotation start
map_name crosshills
game_mode ArmyBattlefield
round_time_minutes 20
reinforcements_per_faction 570
allow_faction_switching false
!map_rotation end
!map_rotation start
map_name countryside
game_mode ArmyConquest
round_time_minutes 25
!map_rotation end
The server plays the blocks from top to bottom, then loops. A typo in one block can stop the server from loading the rotation, so after edits watch the console as it starts.
Keys you can use inside a block
| Key | Purpose |
|---|---|
map_name |
The map to load. Written without spaces |
game_mode |
Mode for that map, for example ArmyBattlefield, ArmyConquest, ArmySiege or CoastalSiege |
game_type |
Variant of the mode, where the mode has more than one |
round_time_minutes |
Length of a round |
faction_attacking / faction_defending |
Which nations take each side |
faction_balancing |
Auto balances team sizes |
allow_faction_switching |
Whether players can swap sides mid round |
allow_midround_spawning |
Whether late joiners spawn in during a round |
minimum_players |
Players needed before the round starts |
reinforcements_per_faction |
Respawn tickets per side |
max_tickets |
Ticket cap for ticket based modes |
max_player_respawns |
Lives per player |
deathmatch_max_kills |
Kill target in deathmatch style modes |
Not every key fits every mode. If a value does nothing, it probably does not apply to that game mode. The official wiki lists which modes and maps go together.
Building rotations for different nights
Most regiments keep several config files and switch between them:
- Public rotation: six to ten blocks mixing Army Battlefield, Conquest and Siege so random players stay for the next map.
- Drill or training: one block on a quiet map with
allow_faction_switching falseandminimum_players 1, plusserver_passwordenabled. - Event night: a fixed order agreed with the opposing regiment, set factions with
faction_attackingandfaction_defending, and round times that match the event rules.
Because only one file loads per launch, switching from training to event means a restart with the other file, so do it before players arrive.
Mods in the config
Workshop mods are referenced by their Workshop item ID:
mods_installed 1234567890
mods_installed_server_only 2345678901
mods_installed is for mods every player needs, like uniforms, flags or custom maps; players download them when they join. mods_installed_server_only is for mods that run only on the server. There are also load_mod style lines for controlling when a mod loads. Since update 3.0 brought PS5 and Xbox Series crossplay, remember console players cannot load map or script mods. A server that needs those should be Steam only, set with server_platform.
Common mistakes
- Editing the default file. Updates replace it. Use your own copy.
- Spaces in map names.
map_namevalues are written without spaces. - Forgetting the
#. A password line that still starts with#is ignored, so the server stays open. - Editing during an event. The file is read at launch. Edits apply on the next restart, so line them up between events.

On a hosted server
A GamezServers Holdfast server gives you a configs folder in the file manager and a Config Name field in the control panel that picks which file loads. The name must end in .txt and match a file exactly, or the server will not start. The panel also shows name, welcome message, region and password fields, but they only partly make it into the config file, so set those values in the config file itself and treat it as the final word. You can find the install basics in how to host a Holdfast server and the admin side in Holdfast admin commands.
FAQ
How do I change the map rotation on a Holdfast server?
Edit the !map_rotation start and !map_rotation end blocks in your config file, one block per map, then restart the server.
Where is the Holdfast server config file?
In the server's configs folder, or wherever your -serverConfigFilePath launch option points. Start from a copy of serverconfig_default.txt.
How do I set a password on a Holdfast server?
Remove the # in front of server_password, set the password and restart.
What does mods_installed_server_only do?
It loads a Workshop mod on the server without making players download it. Use mods_installed for anything players must see, like maps or uniforms.
Skip the setup. Your own Holdfast: Nations At War server.
Then $9.99/mo. Just trying it? $2.50 for 3 days