MOHAA server.cfg Explained: Game Types, Map Rotation and RCON

Medal of Honor: Allied Assault server.cfg line by line: g_gametype 1 to 4, sv_maplist, time and round limits, team damage, passwords and RCON commands.

Updated Oct 7, 2026 · 6 min read

On this page

A Medal of Honor: Allied Assault server reads its settings from main/server.cfg. The lines that shape a match are g_gametype (1 free for all, 2 team match, 3 round based, 4 objective), sv_maplist for the rotation, timelimit, fraglimit and roundlimit for when a map ends, and g_teamdamage for friendly fire. rconPassword lets you change any of them live with rcon commands, and the final map line starts the first map.

The single most common mistake in MOHAA configs is a mismatched game type: many config files in circulation label the numbers wrongly, and an objective map loaded as round based plays without its bombs and objectives. The table below is the correct one.

Game types

g_gametype Mode How it plays
1 Free for all Everyone against everyone, respawns on
2 Team match Allies against Axis, respawns on, team frags win
3 Round based Teams, no respawn. Dead players wait for the next round
4 Objective Round based with objectives: plant or defuse, destroy or defend

Objective maps (obj/...) need g_gametype 4 to run their objectives. Deathmatch maps (dm/...) are for types 1 to 3. If you want both on one server, run objective and change the type with RCON for a deathmatch night, rather than mixing both map kinds in one rotation.

The stock maps

Map file Name Best with
dm/mohdm1 Southern France 1, 2, 3
dm/mohdm2 Destroyed Village 1, 2, 3
dm/mohdm3 Remagen 1, 2, 3
dm/mohdm4 Crossroads 1, 2, 3
dm/mohdm5 Snowy Park 1, 2, 3
dm/mohdm6 Stalingrad 1, 2, 3
dm/mohdm7 Algiers 1, 2, 3
obj/obj_team1 The Hunt 4
obj/obj_team2 V2 Rocket Facility 4
obj/obj_team3 Omaha Beach 4
obj/obj_team4 The Bridge 4

V2 Rocket Facility style objective combat in Allied Assault

A full server.cfg, line by line

// Identity and slots
seta sv_hostname "Old Friends | Objective 24/7"
seta sv_maxclients "20"
seta sv_privateclients "2"
seta sv_privatepassword "clan-only"

// Passwords
seta rconPassword "long-random-string"
seta g_password ""

// Match rules
seta g_gametype "4"
seta timelimit "20"
seta fraglimit "0"
seta roundlimit "4"
seta g_teamdamage "1"
seta g_teamkillwarn "3"
seta g_teamkillkick "5"
seta g_teamswitchdelay "15"
seta g_allowjointime "30"
seta g_teamForceBalance "1"

// Idle players and chat
seta g_inactivespectate "60"
seta g_inactivekick "900"
seta sv_floodprotect "1"
seta g_allowvote "1"

// Network
seta sv_maxping "0"
seta sv_gamespy "1"

// Rotation and first map
seta sv_maplist "obj/obj_team2 obj/obj_team4 obj/obj_team1 obj/obj_team3"
map obj/obj_team2

Identity and slots

Cvar What it does
sv_hostname Server name in browsers and the scoreboard
sv_maxclients Total slots, up to 32
sv_privateclients Slots reserved for players who know sv_privatepassword
sv_privatepassword Password for those reserved slots

Private slots let clan members get in when the server is full of public players. Players set the password in their console with password clan-only before connecting. For a fully private server, see how to set a password on a game server.

Passwords

Cvar What it does
rconPassword Remote admin password. Empty disables RCON
g_password Password to join at all. Empty for a public server

Match rules

Cvar What it does
timelimit Minutes before the map ends. 0 for no limit
fraglimit Score that ends the map. 0 for no limit
roundlimit In round based and objective, minutes per round
g_teamdamage 1 turns friendly fire on, 0 off
g_teamkillwarn Team kills before a warning
g_teamkillkick Team kills before an automatic kick
g_teamswitchdelay Seconds a player must wait between team switches
g_allowjointime Seconds into a round that late joiners can still spawn
g_teamForceBalance Stops players joining the bigger team

On objective servers, friendly fire on with team kill kicks is the traditional setting: it stops grenade spam into your own spawn. On public deathmatch, friendly fire off is friendlier to new players.

Idle players, chat and votes

Cvar What it does
g_inactivespectate Seconds idle before a player is moved to spectator
g_inactivekick Seconds idle before a player is kicked
sv_floodprotect Limits chat spam
g_allowvote Lets players call votes

Network

Cvar What it does
sv_maxping Highest ping allowed to join. 0 means anyone
sv_minping Lowest ping allowed. Rarely used
sv_gamespy 1 reports the server to master servers for the in game browser
sv_master1 to sv_master3 Master server addresses the server reports to

Rotation

sv_maplist is a space separated list, played in order and then looped. The map line at the end loads the first map; without it the server starts empty and idle. Custom .pk3 maps go in the same list by their map name, as long as the .pk3 is in main on the server and on every player's PC.

An Allied Assault team match in a ruined town

Changing settings live with RCON

Any cvar can be changed without a restart. In the game console:

rconpassword long-random-string
rcon status
rcon g_gametype 2
rcon map dm/mohdm6

A game type change applies when the next map loads, which is why the map command follows it. Useful commands:

Command What it does
rcon status Players, client numbers, pings and IPs
rcon kick Name Kicks by name
rcon clientkick 4 Kicks by client number from status
rcon map obj/obj_team3 Changes map now
rcon restart Restarts the current map
rcon say Server restarts in 5 minutes Message to everyone
rcon addip 203.0.113.45 Bans an address (needs g_filterBan 1)

Running a few setups on one server

Keep a second config, for example main/dm.cfg, with a team match setup and deathmatch rotation, and switch to it from the console with:

rcon exec dm.cfg

Because exec runs the file's map line too, the switch happens immediately.

server.cfg on GamezServers

On a GamezServers Allied Assault server, the panel writes four things into server.cfg each time the server starts: sv_hostname, sv_maxClients, the two passwords and the starting Map line, chosen from V2 Rocket Facility and the stock team maps. Change those in the panel. Everything else, from g_gametype to sv_maplist, stays exactly as you set it in the file manager. Check the g_gametype line first: the template's comment labels the numbers in the wrong order, so use the table above. If you have not set a server up yet, see how to host a Medal of Honor: Allied Assault server.

FAQ

What is g_gametype 4 in MOHAA?

Objective: round based team play where one side completes objectives, such as destroying the V2 rocket, and the other defends. Objective maps need it to work.

How do I make my MOHAA server rotate maps?

List the maps in sv_maplist, separated by spaces, and end the file with a map line for the first one. The server plays them in order and loops.

How do I turn on friendly fire in MOHAA?

Set g_teamdamage 1 in server.cfg, or rcon g_teamdamage 1 live.

Why does my objective map have no objectives?

The server is not on g_gametype 4. Set it, then reload the map with rcon map.

Skip the setup. Your own Medal of Honor: Allied Assault server.

$1.49USD first month

Then $2.99/mo. Just trying it? $0.75 for 3 days

Keep reading