If you are having trouble with setting up a MOHAA Server and it has to
do with maps, firewalls and console things then here is my small contribution...
cg_drawFPS 1
Getting Started - MOHAA.exe and server.cfg are your friends!
Step 1
Create a shortcut on the desktop to the MOHAA.exe and then add the following
to the Target field in the properties (right-hand mouse click on the shortcut)
window.
It will look something like this: Target: X:\Games\MOHAA\MOHAA.exe
Add the following after MOHAA.exe and make sure these is a space between
them:
+set dedicated 1 +exec server.cfg
+set dedicated 1
// make it a dedicated server (1=ON 0=OFF)
+exec server.cfg
// Name of the server script you wish to execute. NOTE: Be
sure it is in your X:\MOHAA\main\ directory or it will
not work
You now should have a shortcut named MOHAA on your desktop with properties
that look like this:
Target: X:\Games\MOHAA\MOHAA.exe +set dedicated
1 +exec server.cfg
Click apply. Now onto step 2.
Step 2
Create a server.cfg (create a text file with notepad/editpad
whatever, and change the file extent ion to .cfg) script and put it into
the MOHAA\main\ directory. The contents of the server.cfg file should
be most of the following:
// LANage (example) MoHAA Server Config File
seta sv_hostname LANage_MOHAA_Server
sets Admin hachiroku
sets URL www.lanage.ca
sets Connection T1
seta sv_gamespy 1
// NETWORK SETTINGS
net_noipx 1
net_port 12203
// SERVER SECURITY
set rconpassword your_password_here
seta sv_floodProtect 1
seta flood_waitdelay 10
seta flood_persecond 4
seta flood_msgs 4
set sv_pure 1
//SERVER VARIABLES
seta sv_allowDownload 0
seta sv_maxRate 9000
seta sv_fps 20
seta sv_maxping 200
//CLIENT CONTROL
set sv_maxclients 16
set sv_privateClients 3
set sv_privatepassword insert_your_private_password
//GAME VARIABLES
seta timelimit 20
seta fraglimit 0
set g_gametype 4
set g_teamdamage 0
set g_inactiveSpectate 30
set g_inactiveKick 60
// MAP LIST
seta sv_maplist "obj/obj_team1 obj/obj_team2 obj/obj_team3
obj/obj_team4"
map obj/obj_team3
|
Save this file as server.cfg (or whatever name as long as it matches your shortcut from Step 1) and save it in your MOHAA\main\ folder. To start the server - just double click the MOHAA shortcut on your desktop ...experiment as necessary ...and...ENOJY!
Server .CFG File Descriptions
// LANage (example) MoHAA Server Config File
seta sv_hostname LANage_MOHAA_Server
//Set your server name
sets Admin hachiroku
// Display your admin name
sets URL www.lanage.ca
// Display your website URL. Not needed for LAN.
sets Connection T1
// Advertises what speed your Internet server is. Not needed for LAN.
seta sv_gamespy 1
// Advertises your server on Gamespy (1=ON 0=OFF)
// NETWORK SETTINGS
net_noipx 1
// disables the IPX protocol
net_port 12203
// specifies port 12203 for client connections
// SERVER SECURITY
set rconpassword your_password_here
//Set password for the remote console
seta sv_floodProtect 1
//Don't allow players to flood server
seta flood_waitdelay 10
seta flood_persecond 4
seta flood_msgs 4
set sv_pure 1
//Will not allow clients with non-standard pak files to connect.
//SERVER VARIABLES
seta sv_allowDownload 0
// Allow players to download the maps if they don't have them.
// Handy if you are server modded maps (1=ON 0=OFF)
seta sv_maxRate 9000
// Allow players to pull up to 9,000 bps
seta sv_fps 20
// Process 20 frames per second
seta sv_maxping 200
// Players must ping below 200 to connect
//CLIENT CONTROL
set sv_maxclients 16
// Maximum of 16 players on server
set sv_privateClients 3
// 3 of 16 slots require a password
set sv_privatepassword insert_your_private_password
// the password for the private slots
//GAME VARIABLES
seta timelimit 20
// Games will run for 20 minutes
// Use for Objective maps
seta fraglimit 0
// Games will not end based on frags
// Use for Death Match maps
set g_gametype 4
// Type of game the server will host
// 1 - Free for All
// 2 - Team Deathmatch
// 3 - Round Based
// 4 - Objective
set g_teamdamage 0
// Friendly fire is off (1=ON 0=OFF)
set g_inactiveSpectate 30
// Players become spectators after 30s of inactivity
set g_inactiveKick 60
// Players get kicked after 60s of inactivity
// MAP LIST - The list of maps in order that the server will run
// If you change the gametype to something other than Objective,
// don't forget to change the maps (i.e.: dm/mohdm1) as well
// Do not remove the "" as the maps will not rotate without them.
seta sv_maplist "obj/obj_team1 obj/obj_team2 obj/obj_team4"
map obj/obj_team1
// the first map to run
// TDM/DM Round Based Maps
// mohdm1 Southern France
// mohdm2 Destroyed Village
// mohdm3 Remagen
// mohdm4 The Cross Roads
// mohdm5 Snowy Parks
// mohdm6 Stalingrad
// mohdm7 Algiers
// Objective Maps
// obj_team1 The Hunt
// obj_team2 Rocket Facility
// obj_team3 Omaha Beach
// obj_team4 The Bridge
Serving MOHAA (Medal of Honor)
Behind a Firewall
(Putting your server behind a firewall is a BEST PRACTICE)
If you plan on putting your MOHAA Server behind a firewall
(ie: residential ones D-Link, Linksys, SMC) you will need to open and forward
the following UDP (not TCP) ports in order for Medal of Honor to work.
| UDP 12201 |
MOHAA Monitoring Port |
| UDP 12202 |
MOHAA Alternate Monitoring Port |
| UDP 12203 |
MOHAA Default Server Port * |
| UDP 12210 |
MOHAA Alternate Game Port |
| UDP 12300 |
GameSpy Monitoring Port * |
| UDP 13139 |
GameSpy UDP Pings |
| UDP 27900 |
GameSpy Master Server Heartbeat |
| TCP 28900 |
GameSpy Master Server List |
| TCP 29900 |
GameSpy Connection Manager |
| TCP 29901 |
GameSpy Search Manager |
| UDP 6500 |
GameSpy Query Port |
| UDP 6515 |
GameSpy DPlay Port |
| UDP 3783 |
GameSpy Voice Chat |
| UDP 6667 |
GameSpy IRC Chat |
* denotes ports that absolutely have to be open and forwarded to the
Server in order for MOHAA to work online. You don't have to have any
of the other ports open in order to serve games via the in game Gamespy
server list, but you may want to open them for other reasons.
Setting the RCON password on the Server for remote Admin
(do this in your server config file "server.cfg")
rconpassword - sets remote console password so clients may change server
settings without direct access to the server console. The default is set to none.
Client can control the server by entering commands on the console with the format
of /rconpassword <mypass> and then adding server commands after the /rcon
command.
Now you can issue other rcon commands such as:
| /rconpassword password" |
- Logs you into the server. password is the rcon password from your server config. |
| /rcon status |
- status (gives client numbers) |
| /rcon clientkick "#" |
- kicks individual client by client number. The easiest way to kick players that use name scripts to change their names to
letters that are hard to type in and clients with spaces in their names. |
| /rcon kick "playername" |
- kicks individual client by playername. |
| /rcon timelimit 20 |
- map will cycle in 20 minutes, change number to whatever you want |
| /rcon map obj/obj_team1 |
- changes map to Objective Map "The Hunt". |
| /rcon map dm/mohdm1 |
- changes map to Death Match "Southern France" |
Calling a Vote
Open the console ( ~ key) and call for a vote, to change maps, turn team damage
on or off, or KICK someone. To call a vote to kick someone called JerkWad,
enter the console and type the following:
/callvote kick JerkWad
It will be broadcast to everyone in the game that a vote has been called
for. Anyone who has the ui_console option enabled can now enter one of
these two very simple options:
vote yes
vote no
Server Console Commands
Remember to open the console by hitting the "~" also known as
the tilde key.
| Commands |
Comment |
| cd "folder" |
- change current directory to folder |
| cheats "0 or 1" |
- sets cheats off (0) or on (1) |
| cmdlist |
- list all console commands |
| dir |
- list all files in current directory |
| echo |
- echoes text to the console |
| fdir "filter" |
- list all files in current directory, applying filter
(ex. fdir *.bsp) |
| kick all |
- kicks all players |
| kick "player" |
- kicks player |
| killserver |
- kills the server |
| maplist |
- list maps |
| meminfo |
- gives info about memory |
| path |
- echo current search path to console |
| reload |
- reload current weapon |
| restart |
- restarts server |
| say "message" |
- send message to all players in the game |
| serverinfo |
- echo server information to console |
| status |
- echo status/player info to console |
| systeminfo |
- echo system information to console |
| (var) add "var" "amount" |
- add amount to var |
| (var) append "var" "string" |
- append string to var |
| (var) reset "var" |
- set var to its default |
| (var) set "var" "value" |
- sets var to value |
| (var) subtract "var" "amount" |
- subtract amount from var |
| (var) toggle "var" |
- toggle var value to 0 or 1 |
Client Console Commands
Remember to open the console by hitting the "~"
also known as the tilde key.
| Commands |
Comment |
| launchgamespy |
- launches gamespy |
| bind "key" "command" |
- bind command to a key |
| bindlist |
- list all key bindings |
| altbind "key" "command" |
- bind command to alt+key |
| ctrlbind "key" "command" |
- bind command to ctrl+key |
| altbindlist |
- list all alt+key bindings |
| ctrlbindlist |
- list all ctrl+key bindings |
| unbind "key" |
- unbind key |
| unaltbind "key" |
- unbind alt+key |
| unctrlbind "key" |
- unbind ctrl+key |
| unbindall |
- unbind all keys |
| say "message" |
- send message to all players in the game |
| sayteam "message" |
- send message to all players in your team |
| exec "file.cfg" |
- execute commands in file.cfg |
| kill |
- suicide |
| quit |
- exit moh |
| cvarlist |
- list all variables |
| name "myname" |
- sets your player name to myname |
| sensitivity "<number>" |
- sets your mouse sensitivity (5-20) |
| m_filter "0 or 1" |
- set mouse filter off (0) or on (1) |
| fps "0 or 1" |
- toggle fps info display off (0) or on(1) |
| map "mymap" |
- change to map mymap |
| pause |
- pause/unpause game |
| scale "var" "amount" |
- multiply var by amount |
| savegame |
- save current game |
| autosavegame |
- save current game as autosave |
| loadgame |
- load saved game |
| loadlastgame |
- load last saved game |
| gamemap "mymap" |
- change to map mymap |
| connect "ip" |
- connects to server at ip |
| difficultyHard |
- sets difficulty to hard |
| difficultyMedium |
- sets difficulty to medium |
| difficultyEasy |
- sets difficulty to easy |
| clear |
- clear all text from the console |
| error |
- exits moh with error message |
|