Server Configuration Files

Server configuration files are plain text files containing settings defining the server setup and the maps/game modes available in rotation. There are three types of lines:
- Setting lines:
<setting> <value>— the important ones. - Comment lines: starting with
#— ignored; good for notes and saved rotations. - Empty lines: spacing only — ignored.
The usual layout: global server settings at the top, followed by a list of map-rotation settings. Further examples ship with the server (see Server Hosting).
Server-Wide Settings
These define how the server shows up to players, how it talks to the server browser, and basic restrictions.
Ports — all must be unique per instance on the same machine:
server_port 20100 steam_communications_port 8700 steam_query_port 27000
Display & access:
server_name New Server - Army Battlefield server_welcome_message Welcome to my new game server! server_region europe server_admin_password ChangeThisPassword #server_password ChangeThisPassword server_intro_title Welcome to my server! server_intro_body Greetings fellow humans
server_passwordis optional (leave commented to keep the server public).server_admin_passwordis used for Remote Console Commands.server_intro_*shows a join popup.
Server regions (shown in the browser):
| Region codes | ||||
|---|---|---|---|---|
| europe | usa | usaeast | usawest | australia |
| china | japan | russia | southkorea | brazil |
Broadcast mode — network usage focus for close-range combat:
| Parameter | Usage |
|---|---|
| Standard | Reduced packet rate on close range (high player count). Default. |
| Competitive | Highest bandwidth; use only for Melee Arena with lower player counts. (Max of 64 players) |
Example:
network_broadcast_mode Standard
Artillery respawn (seconds, defaults are 120s):
artillery_fieldgun_respawn_timer 120 artillery_rocketlauncher_respawn_timer 120
Artillery dynamic spawns
Artillery dynamic spawns are set up for official maps, mostly used to allow event hosts to remove specific artillery pieces in their config without having to use a spawnable object to "block" the piece. You can obtain the dynamic spawn IDs from the server log when the map loads. Section IDs always start from 0.
| ArtilleryType | Usage |
|---|---|
| FieldGun | Spawns 9PDR |
| Howitzer | Spawns Howitzer |
| RocketLauncher | Spawns Rocket Launcher |
| Mortar | Spawns Mortar |
| None | Nothing spawns |
| Random | Spawns random artillery piece. Pieces able to spawn are pre-set per spawn point by map developers. |
| RandomSymmetric | Spawns random artillery piece; artillery spawn sections that share the same RandomSymmetric ID will spawn the same artillery piece. |
artillery_spawn_override <slotId> <ArtilleryType>
Population thresholds (gate maps by player counts):
population_low_min_players 30 population_medium_min_players 50 population_high_min_players 100
Warnings & rotation randomization:
show_serverperformance_warning true map_rotation_start_randomise true
Objective capture (Conquest/flag modes):
conquest_stealthcap_reqplayers_verylow 0 conquest_stealthcap_reqplayers_low 2 conquest_stealthcap_reqplayers_medium 3 conquest_stealthcap_reqplayers_high 4
Auto Shutdown/Restart System
An auto-shutdown and auto-restart system can be configured in the config or via the VapuriLoadTester launcher.
Auto Shutdown
The server can shut itself down after a set number of minutes (doesn't require VLT). VLT helper also closes on shutdown.
server_autoshutdown_interval_minutes 240
If the round is still running, the server won't wait; it proceeds after interval + overtime. Make sure players get warned.
server_autoshutdown_overtime_minutes 10
Broadcast message and frequency:
server_autoshutdown_broadcasted_message Server will be shutting down. server_autoshutdown_broadcasted_message_interval_minutes 2
Auto Restart
Restarts the server every N minutes (doesn't require VLT). It waits for round end unless overtime is hit.
server_autorestart_interval_minutes 320
Overtime and messaging:
server_autorestart_overtime_minutes 10 server_autorestart_broadcasted_message Auto restart at the end of the round. server_autorestart_broadcasted_message_interval_minutes 2
Map Rotations
A number of example configs ship with the server files. Big Mamba also compiled AGS examples: here.
Basic Map Settings
Common per-rotation keys:
map_name game_mode game_type round_time_minutes ships_respawn_timer allow_midround_spawning allow_faction_switching allow_spectating max_player_respawns deathmatch_max_kills reinforcements_per_faction minimum_players maximum_players melee_weapons_only faction_balancing faction_balancing_discrepancy_amount max_accumulated_faction_points ships_preset faction_attacking faction_defending max_tickets ships_spawn rowboat_cooldown_timer rowboat_cooldown_while_sinking_timer ships_spacemode sappers_buildlimit sappers_attacking_starting_materials sappers_defending_starting_materials max_player_respawn officers_spawn_mounted
Most map rotation commands can now be placed at the top of the server config file, before the map rotations section, and they will be applied to all map rotations that don't already have the same command. Some exceptions are commands that are map-specific such as map_name and game_mode.
Spawn Settings
Spawn wave timers (defaults shown). vehicle = Cavalry; dynamic = Frontlines tables:
wave_spawn_time_seconds 10 wave_spawn_vehicle_time_seconds 20 wave_spawn_dynamic_time_seconds 15
Spawn immunity (max 5s):
spawn_immunity_timer 5
Set whether dynamic artillery come with cannoneer spawn sections or not, and whether they should be locked to their owners or usable by anyone (Note: If disabled, you may want to use spawn overrides to add cannoneer slots to the HQ spawns, since they don’t come with cannoneer slots any more on default maps.)
artillery_spawn_sections_enabled <true/false>
Melee Arena Settings
First round grace to let players load/spawn:
round_spawn_close_timer_seconds 45
Subsequent rounds:
round_spawn_close_timer_seconds_between_rounds 15
Rounds to win:
amount_of_rounds 50
Maps
Visit Maps or Server Configuration Enums for a full list of all maps.
Officer Orders
Enable/disable officer orders system:
class_system_orders <true/false>
Enable/disable squad camp system (tent in NaW, table in Frontlines):
class_system_orders_reinforce <true/false>
Spawn limit on placed squad camp (set to -1 on Frontlines):
class_system_orders_reinforce_limit 25
Enable/disable hoist flag order in naval:
hoist_flag_order_enabled <true/false>
Abilities
Enable/disable throwable grenade abilities for grenadiers and carpenters:
grenade_abilities_enabled <true/false>
Enable/disable grenade damage on artillery pieces:
grenades_damage_artillery <true/false>
Conquest Config
(Also applies to Offensive in Frontlines and American Revolution.)
conquest_tick_reward 3 conquest_ticker_time_seconds 1 conquest_tickets_per_capture 100 conquest_max_tickets 7500 conquest_territory_lock_time_seconds 0
Weather and Time of Day
Preset on map load (set to none for random valid presets):
nature_preset none
Friendly Fire
Enable FF:
friendly_fire <true/false>
Melee "bounce" when FF is off:
friendly_fire_melee_bounce <true/false>
Reflect % of FF damage back to attacker:
damage_split 50
Frontlines
Domination time (Offensive):
frontline_offensive_domination_duration_seconds 120
Capture point override:
capture_point_override <objective> <num_respawns> <time_for_1_person_to_capture> <max_people_affecting_time>
Example:
capture_point_override A 150 30 1 capture_point_override B 175 30 1 capture_point_override C 350 60 2 capture_point_override D -1 90 3
Other Commands
Set whether muskets start with their bayonets attached or not on spawn:
start_bayonet_attached <true/false>
Set whether enemy players should still show their name tags:
show_enemy_player_name_tags <true/false>
Automatic Console Commands
You can issue any RCON at rotation start to reset defaults, spawn bots, or stage scenarios.
Override Commands
Server administrators can craft RP scenarios: limits per class, spawn lists per point, starting equipment, racks, props, artillery, etc.
Land
Class Limit Override On Spawn Points

spawn_override <Spawn Point> <Class> <Class Limit>
<Spawn Point>= A/B/C… (see spawn menu)- Overwrites the classes available at that point.
Example (200 Carpenters vs 200 Riflemen):
# Override Commands spawn_override A Carpenter 200 spawn_override B Rifleman 200
exclusive_modded_uniforms — restrict to mod uniforms:
exclusive_modded_uniforms british french
Starting Weapon Override
starting_weapons_selection_override <Faction> <Class> <MaxFirearms> <MaxMelee> <WeaponClass1>* <WeaponClass2>* <WeaponClass3>*
Multiple types in a slot: separate with commas.
Example:
# Override Commands starting_weapons_selection_override British Grenadier 4 2 Rifle starting_weapons_selection_override French Grenadier 4 3 Rifle Pike,Spontoon,Sword Pistol
Starting Weapon Bayonet Override
starting_weapons_bayonet_enabled <Faction> <Class> <true/false>
Firearm Ammo Override
firearm_ammo_override <Faction> <Class> <Firearm> <StartingAmmo> <LoadedInBarrel> <MaxCarry>
Example:
# Override Commands firearm_ammo_override British LightInfantry Musket_NewLandPatternBrownBess 2 0 firearm_ammo_override French LightInfantry Musket_NewLandPatternBrownBess 0 1
Weapon Class Ammo Override
weapon_class_ammo_override <Faction> <Class> <WeaponClass> <StartingAmmo> <LoadedInBarrel> <MaxCarry>
Sapper Buildable Defences — Limits
sappers_buildlimit <EmplacementType> <attacking|defending> <Limit>
Example:
# Sapper Configuration Commands sappers_buildlimit ExplosiveBarrel defending 0
Sapper Starting Materials
sappers_attacking_starting_materials <MaterialLimit> sappers_defending_starting_materials <MaterialLimit>
Example:
# Sapper Configuration Commands sappers_attacking_starting_materials 50 sappers_defending_starting_materials 200
Spawn Overrides (Land)
objects_override spawnsection <Position> <Rotation> <ID>,<Spawn_Name>,<Category>,<Attacking|Defending|Neutral>,<SizeX>,<SizeY>
Categories: BaseSpawn, FortifiedPosition, OpenPlains, Farm, Field, Village, Camp, Lodge, Church, Ruins, Port, Ship.
For these commands, "FactionSide" needs to be set to either "Attacking", "Defending", or "Both".
Class Limit Override On Ships
ships_spawn_detail_override <ShipType> <FactionSide> <Class> <ClassLimit>
Example:
# Override Commands ships_spawn_detail_override Frigate50gun Attacking Rifleman 200 ships_spawn_detail_override Frigate50gun Defending Rifleman 200
Ship Spawning
Spawn ships with custom names and colors:
ships_spawn <ShipType> <Amount> <FactionSide> <shipVariationIndex> <shipNameIndex / shipNameOverride> <hullColor1Override> <hullColor2Override>
Custom ship names can include spaces by putting an underscore in place of each space.
Example:
# Override Commands ships_spawn Frigate50gun 1 Attacking 0 The_Most_Amazing_Ship Black Green ships_spawn Rocketboat 2 Defending 0 The_Sturdy_Rocketboat Black White
Set whether port spawners spawn gunboats instead of rowboats (default true):
gunboat_spawner_enabled <true/false>
Health Override For Ships
Override the starting HP of each ship type:
ships_health_detail_override <ShipType> <FactionSide> <HP>
Example:
# Override Commands ships_health_detail_override Frigate50gun Attacking 20000 ships_health_detail_override Frigate50gun Defending 70
Set whether ships inside the spawn area should be protected from enemy damage:
ship_spawn_protection <ShipType> <FactionSide> <woodResources> <metalResources>
Ship Resource Overrides
Set the starting amounts of wood resources and metal resources for each ship type:
ships_starting_resources_detail_override <ShipType> <FactionSide> <woodResources> <metalResources>
Set details about how much loot each ship type drops:
ships_resources_loot_detail_override <ShipType> <FactionSide> <percentStartingResourcesDroppedWhenCaptured> <percentResourcesLooted>
Parameter 1: You can change the percentage of starting resources a ship drops when captured. Parameter 2: You can set certain ship types to acquire fewer resources than other ships when looting the same crate.
Ship Stealing Overrides
Enable ship stealing globally:
ship_stealing <true/false>
Set whether capturing an enemy ship should instantly sink it or let it be controlled by the new faction:
sink_ships_on_capture <true/false>
Set whether players can still respawn on a ship that is currently being contested:
allow_respawn_on_contested_ships <true/false>
Set whether players from the new ship faction owner can start spawning after capturing a ship:
allow_spawn_on_captured_ships <true/false>
Override the score obtained when capturing a specific ship type:
ship_score_override <ShipType> <FactionSide> <score> <stealMultiplier>
Set the time required to capture a ship:
ship_steal_time_override <ShipType> <FactionSide> <seconds>
Set the time required for rowboats to be auto destroyed when abondoned:
ship_auto_kill_override <ShipType> <FactionSide> <seconds>
Ship Ramming Damage Overrides
Set whether ships should drop any resources at all when sunk:
ships_drop_resources_on_sink <true/false>
Override ramming damage details for each ship type:
ships_ramming_detail_override <ShipType> <FactionSide> <ramBaseDamage> <ramDamageReflectionPercent> <ramMinVelocity> <ramImpactSlowdownPercent>
Parameter 1: Base damage dealt when ramming. Parameter 2: Percentage damage that is reflected back to the ship when ramming. Parameter 3: Minimum velocity the ship needs to be travelling at to deal any ramming damage. Parameter 4: Percentage reduction in ship speed when ramming.
Ship Spacemode
ships_spacemode true
objects_override shipspawnsection <Position> <Rotation>
Buffs & Traits
These override commands make use of the BuffPropertyType enum. A single buff or trait can have one, more than one, or none of these buff properties that you can override. You can typically tell which property types a buff or trait has by looking at its barracks description, or just its behaviour in-game. The full list of BuffPropertyType values can be found in this page: Server Configuration Enums. As an example, the SteadyAim buff can have these 2 buff property types overridden: Accuracy, CameraZoom
Class Traits
Each player class can have multiple traits that give the player some specific benefits. The values of these trait properties can be overridden with this command:
trait_property_override <Trait> <BuffPropertyType> <Value>
Buff Types
Buffs can be applied either through high command orders or through class specific abilities. You can override their property values via this command:
buff_property_override <BuffType> <BuffPropertyType> <Value>
High Command Orders
The cooldown duration of any high command order can be overridden via this command:
order_cooldown_override <HighCommandOrderType> <CooldownDuration>
Note that most orders and class abilities in the game have both a HighCommandOrderType and a BuffType. These can have different enum names for the same order or ability.
Festive Season Override
Festive seasonal events are usually active during specific periods of the year, but they can be overridden via this command:
festive_season_override <HoldfastSeason>
A value of 'None' will disable any festive seasonal objects.
Object Overrides
Objects can be added following Map Editing.
Map Voting
Basics
Global settings (not in a rotation):
map_voting_enabled true map_voting_duration 15 map_voting_allow_same_map false map_voting_history_count 3 map_voting_max_choices 3 map_voting_gameplay_modes ArmyBattlefield ArmyBattlefield ArmyConquest ArmySiege map_voting_log_file_path logs_output/mapvotinglogs.txt
Help My Map Can't Be Voted For
Per-rotation flags (buckets by player count & mode). Set all to false to ignore; set all to true to allow regardless of count.
population_verylow_playable <true/false> population_low_playable <true/false> population_medium_playable <true/false> population_high_playable <true/false>
Note: load order matters — put modded maps first in the mod load order.
Map Vote History by Population
map_voting_history_count_verylow 1 map_voting_history_count_low 2 map_voting_history_count_medium 4 map_voting_history_count_high 10
Can I Manually Trigger Map Voting?
Not directly. Workaround: end the round via a win-condition object or the dynamic win-condition flag.
Including a "Random" Option
map_voting_include_random_choice <true/false>
Workshop Mods
For creators, see Script Modding Guide.
Install Mods
Global (not in a rotation):
mods_installed_server_only <steamid> mods_installed <steamid>
Per-rotation (requires the SteamID to be installed on server):
load_mod <steamid> # loads on client and server load_mod_client_only <steamid> # loads only on clients load_mod_server_only <steamid> # loads only on server
Mod Variables
mod_variable <string> # global; not in a rotation mod_variable_local <string> # only for the rotation it's in
Discord Admin Webhook Logger
Basics
Enable Discord developer mode (Settings → Advanced). Warnings show admin PMs, slays, kicks, revives, slaps. Banmutes log config-writing actions (kicks, VOIP/text mutes, VOIP spammer).
discord_webhook_warning_tag_admin <@!ID> | <@!ID> discord_webhook_warning_id <webhookID> discord_webhook_warning_token <webhookToken> discord_webhook_banmute_tag_admin <@!ID> | <@!ID> discord_webhook_banmute_id <webhookID> discord_webhook_banmute_token <webhookToken>
How To Set Up
- Put these in the global settings area (not inside a rotation).
- Create two webhooks in Discord (one for warnings, one for ban/mute).
- Click Copy Webhook URL and open it; extract the
idandtokenand paste into the *_id/*_token settings. _tag_adminlets you prefix text or pings. To ping a user, enable Dev Mode, right-click → Copy ID and use<@!USERID>.
If configured correctly, each admin action posts:
- Action performed
- Title from
_tag_admin - Admin (linked to Steam)
- Target user (linked to Steam)
- Server name
- Reason
- Date/time
![]() |
![]() |
![]() |



