======================================= Medal Of Honor Airborne™ Dedicated Server Readme File Version 1.1 September 25, 2007 Last Updated: October 23, 2007 ======================================= **** ********************************************** This d ocument contains information about setting up and running the Medal Of Honor Airborne Dedicated Server as well as information about administrating it remotely. ************************************************** TABLE OF CONTENTS I. System Requirements II. Local Server Setup III. Remote Server Setup IV. Running The Server V. Administrating Remotely VI. Server Commands VII. Configuring the dedicated server VIII. Frequently Asked Questions IX. Credits I. System Requirements ======================================= < br/>The following items are required to run a Medal Of Honor Airborne dedicated server: 1. A broadband Internet connection or LAN connection. 2. A system that meets or exceeds the minimum system requirements for the game (no graphics card required). II. Local Server Setup ======================================= To set up a server locally or remotely using VNC, follow these steps: 1. Run the dedicated server launcher (DSLauncher.exe) 2. In the 'Basic' tab, enter the username and password you registered with EA. (If you have not created an account: run the game, in the main menu choose 'Multiplayer', and click 'Create Account'). 3. In the 'Miscellaneous' tab, enter the port you wish to run your server on as well as the password to administrate it remotely. 4. In the 'Map Rotation' tab, add at least one map to your rotation by selecting the map name and pressing the 'Add' button. 5. Configure any other options you wish to set. 6. Save your config file using File>Save to any folder. You can open and save multiple dedicated server configurations. The configuration that is currently open is the one that will be launched. III. Remote Server Setup ======================================= To set up a server remotely (where you do not have physical access to the computer or VNC), follow these steps: 1. Run the dedicated server launcher (DSLauncher. exe) locally. 2. In the 'Basic' tab, enter the username and password you registered with EA. (If you have not created an account: run the game, in the main menu choose 'Multiplayer', and click 'Create Account'). 3. In the 'Miscellaneous' tab, enter the port you wish to run your server on as well as the password to administrate it remotely. 4. In the 'Map Rotation' tab, add at least one map to your rotation by selecting the map name and pressing the 'Add' button. 5. Configure any other options you wish to set. 6. Save your config file using File>Save. 7. Upload your saved config file (MOHADedicatedServer.ini by default) to a folder of your choice on target machine. IV. Running The Server ======================================= To run the server locally: 1. Follow the instructions in "II. Local Server Setup". 2. Run the dedicated server launcher (DSLauncher.exe). 3. Open the config file you want to run if it is not already open. 4. Press the 'Launch!' button. NOTE: If you already have .ini files setup on your machine, you can run the server without using DSLauncher. See section VII for more info. To run the server remotely: 1. Follow the instructions in "III. Remote Server Setup". 2. Run MOHAServer.exe with the config file as a parameter: MOHAServer.exe -configfile="" e.g. MOHAServer.exe -configfile="C: \MOHA\MyDedicatedServer.ini" (Make sure you have quotes around the path) NOTE: See section VII for more information on running server via commandline. If you run MOHAServer.exe without any parameters, it will attempt to load the default config name: MOHADedicatedServer.ini on the default savepath (My Documents /EA Games/Medal of Honor Airborne(tm)/Config) or the savepath that is provided in commandline. V. Administrating Remotely ======================================= Once connected, the dedicated server remote (DSRemote.exe) looks and functions identically to the dedicated server. To connect to a dedicated server remotely: 1. You need to have Visual Studio 2005 Redistributable package installed to run RCon software. Please see "Standalone Server Setup" for details. 2. Run DSRemote.exe. 3. Enter the host name (IP address) of the server. 4. Enter the server's remote admin port (RemotePort) and password as specified in the config file. NOTE: Port and RemotePort are different. Make sure you use RemotePort here. 5. If successful, the login dialog should disappear and "Remote connection accepted" will be printed. If you receive the "Connection failed." message, the host name or port number was invalid. You may receive this message even with correct values if the dedicated server has not yet initialized. If you receive the "Login failed." message, the connection was successful but your password was invalid. VI. Server Commands ======================================= These commands can be executed using either the dedicated server or the remote tool. Simply type your command in the text field at the bottom of the application and press the 'Execute' button; alternatively, press the enter key. NOTES: - The commands are case insensitive. - Arguments within parentheses "(" and ")" are optional - Arguments separated by "|" are an "or" - pick one of the arguments - In general, commands takes effect when the map starts, a map is restarted or when the next map starts. - As noted below, many commands will print the current value when no input argument is given. AllowAutoRifle ( On | Off ) alias: okautorifle Controls whether or not the AutoRifle weapon class is allowed within the game. Note: With no arguments, the current value is displayed. AllowRifle ( On | Off ) alias: okrifle Controls whether or not the Rifle weapon class is allowed within the game. Note: With no arguments, the current value is displayed. AllowRocket ( On | Off ) alias: okrocket Controls whether or not the Rocket weapon class is allowed within the game. Note: With no arguments, the current value is displayed. AllowSMG ( On | Off ) alias: oksmg Controls whether or not the sub-machine gun weapon class is allowed within the game. Note: With no arguments, the current value is displayed. AllowSniper ( On | Off ) alias: oksniper Controls whether or not the sniper rifle weapon class is allowed within the game. Note: With no arguments, the current value is displayed. AmmoDrop ( On | Off ) alias: ad Toggle for the dropping of ammo upon player death. Note: With no arguments, the current value is displayed. Ban alias: b Kicks and bans the specified player from the server. e.g. ban user Note: The player will be able to join the server but will be kicked at the weapons selection screen. BanList alias: bl Prints a list of the banned players and their IDs. BestOf alias: bo Sets the number of number of rounds that will be played and the number of rounds which must be won to declare a winner. e.g. bestof 7 - For this example, whichever team wins 4 rounds first will be declared the winner. Note: With no arguments, the current value is displayed. The maximum number of rounds that may be played is capped at 99. EndMatch alias: em Ends the current match and starts a new match on the next map in the rotation list. Note: There is no winner for the round that is currently in progress when this command is called. FriendlyFire ( On | Off ) alias: ff Toggles whether or not you can shoot your team mates. Note: With no arguments, the current value is displayed. GameName < name> alias: gn Sets the name that the game will be called. This is displayed on the game selection screen when choosing a server. The message should not be enclosed within "quotes". e.g. gamename This is My Game Note: With no arguments, the current value is displayed. GameType < ObjectiveAirborne | TeamDeathmatch | TeamDeathmatchAirborne> alias: gt Sets the type of game that will be played on the server. e.g. gametype ObjectiveAirborne Note: With no arguments, the current value is displayed. HealthDrop ( On | Off ) alias: hd Toggle for the dropping of health packs upon player death. Note: With no arguments, the current value is displayed. Invincibility alias: inv Set the time that players do not take damage after a respawn. e.g. invincibility 7 Note: With no arguments, the current value is displayed. Kick alias: k Kicks the specified player from the server. e.g. kick user MaxPlayers alias: mp Sets the maximum numbers of players that can enter a game. Note: With no arguments, the current value is displayed. MessageOfTheDay alias: motd Sets the message that will be displayed when the game starts. The message should not contain any carriage returns, it should just be a string. The message should also not be enclosed within "quotes". e.g. motd Welcome to My Game Note: Maximum string length is 255 characters. With no arguments, the current value is displayed. NextMap alias: nm Same as EndMatch PlayerList alias: pl Prints a list of the players currently in the game. PrivatePassword alias: pp Sets the password that must be entered for players to join a private game. e.g. privatepassword supersecret RemotePassword < password> alias: rp Sets the password that must be entered for an admin to use the remote admin tool (DSRemote.exe). e.g. remotepassword reallysecret RestartMatch alias: rsm Ends the current match and starts a new match on the same map. Note: There is no winner for the round that is currently in progress when this command is called. RestartRound alias: rsr Ends the current round and starts a new round in the same match, on the same map. Note: There is no winner for the round that is currently in progress when this command is called. RestartServer alias: rss Ends the current match and starts a new match on the first map in the rotation list. Note: There is no winner for the round that is currently in progress when this command is called. RotationList alias: rl Prints the map rotation list and specifies the current map. Rounds alias: rnds rs Sets the number of number rounds that will be played. e.g. rounds 7 Note: With no arguments, the current value is displayed. The maximum number of rounds that may be played is capped at 99. RoundTime < minutes> alias: rtime rt Sets the time for the round. Note: With no arguments, the current value is displayed. The maximum time is capped at 59 minutes. RunMap alias: rm Ends the current match and starts a new match on the specified map. e.g. runmap Remagen Note: There is no winner for the round that is currently in progress when this command is called. SaveSettings alias: ss Saves the current server setting as a config file to be used upon restart. ShowCompass ( On | Off ) alias: showcp Toggles the display of the compass. Note: With no arguments, the current value is displayed. ShowCrosshairs ( On | Off ) alias: showch Toggles the display of the weapon crosshairs. Note: With no arguments, the current value is displayed. ShowEnemyCompassDots ( On | Off ) alias: showecd Toggles the display of the compass dots for the enemies. Note: With no arguments, the current value is displayed. ShowEnemyNames ( On | Off ) alias: showen Toggles the display of the names for the enemies. Note: With no arguments, the current value is displayed. ShowFriendlyCompassDots ( On | Off ) alias: showfcd Toggles the display of the compass dots for your teammates. Note: With no arguments, the current value is displayed. ShowFriendlyNames ( On | Off ) alias: showfn Toggles the display of the names for your teammates. Note: With no arguments, the current value is displayed. ShowGrenadeIndicators ( On | Off ) alias: showgi Toggles the display of the indicators for when a grenade is active. Note: With no arguments, the current value is displayed. ShowHealthBar ( On | Off ) alias: showhb Toggles the display of the health bar. Note: With no arguments, the current value is displayed. ShowHitIndicators ( On | Off ) alias: showhi Toggles the display of the hit indicators when players are shot. Note: With no arguments, the current value is displayed. ShowHUD ( On | Off ) Toggles the display of the heads-up-display. Note: With no arguments, the current value is displayed. ShowKiller ( On | Off ) alias: showkl Before respawning, displays the player who just killed the player. Note: With no arguments, the current value is displayed. ShowKillerTime alias: showkt The number of seconds for display that the "ShowKiller" command uses. Note: With no arguments, the current value is displayed. ShowMessageWindow ( On | Off ) alias: showmw Toggles the display of the message window. Note: With no arguments, the current value is displayed. ShowScoreAndTime ( On | Off ) alias: showst Toggles the display of the score and time within the HUD. Note: With no arguments, the current value is displayed. ShowStanceIndicator ( On | Off ) alias: showsi Toggles the display of the stance indicator. Note: With no arguments, the current value is displayed. SpawnPostDelayAllies alias: spostal Sets the delay time between when a player respawns until the player becomes active for Allied player types. Note: With no arguments, the current value is displayed. SpawnPostDelayAxis alias: spostax Sets the delay time between when a player respawns until the player becomes active for Axis player types. Note: With no arguments, the current value is displayed. SpawnPostDelayNonAir alias: spostna Sets the delay time between when a player respawns until the player becomes active for non-airdrop game types. Note: With no arguments, the current value is displayed. SpawnPreDelayAllies alias: spreal Sets the delay time between when a player dies until the respawn begins for Allied player types. Note: With no arguments, the current value is displayed. SpawnPreDelayAxis alias: spreax Sets the delay time between when a player dies until the respawn begins for Axis player types. Note: With no arguments, the current value is displayed. SpawnPreDelayNonAir < seconds> alias: sprena Sets the delay time between when a player dies until the respawn begins for non-airdrop game types. Note: With no arguments, the current value is displayed. TimeBetweenMatches alias: tbm Number of seconds to delay between matches. Note: With no arguments, the current value is displayed. TimeBetweenRounds alias: tbr Number of seconds to delay between rounds. Note: With no arguments, the current value is displayed. TimeLimit alias: tl Same as the "RoundTIme" command. Unban alias: ub Lifts the server ban on the specified player. e.g. unban user UnbanAll Lifts the server ban on all players. The internal list of banned players is wiped after issuing this command... use with caution, there is no undo. Upgrades ( On | Off ) alias: up Toggles weapon upgrades. Note: With no arguments, the current value is displayed. VoiceCommands ( On | Off ) alias: voice Toggles the display of display of voice commands within the chat window. Note: With no arguments, the current value is displayed. WeaponDrop ( On | Off ) alias: wd Toggle for the dropping of weapons upon player death. Note: With no arguments, the current value is displayed. WeaponTracers ( On | Off ) alias: tracers Toggles the display of tracers when weapons are fired. Note: With no arguments, the current value is displayed. WelcomeMessage alias: wm Same as the "MessageOfTheDay" command. VII. Configuring the Dedicated Server ======================================= Mo st dedicated server options can be configured via the dedicated server launcher (DSLauncher.exe). You can also manually edit the ini files that are created by the launcher. There are some additional configuration options: -configfile="\filename.ini" The ini file that server is going to use. Make sure you have quotes around the path. - ip= Network adapter to run dedicated server (and RCon) on - port= Listen port for dedicated server. Default is port 10000 -nolog Turns server side logging off. - remoteport= Sets up remote admin server port (different than listening port) - username= EA account username to use for the server -password= EA account password to use for the server -savepath="" Custom directory that the game will use for logs and config files. Default is under My Documents for config files and under /UnrealEngine3/ MOHAGame/Logs for logfiles. Make sure you have quotes around the path. Example Commandlines: MOHAServer.exe -configfile="C:\My Games\MOHA\MyServerConfig.ini" -ip=10.25.24.12 -port=2432 - remoteport=24156 MOHAServer.exe -savepath="C: \AwesomeServer" -nolog -username=myeaaccount password=myeapassword. In addition to the command line options, both ip and port can be configured in your dedicated server ini file by adding the following config vars: ip= port=< port_number> VIII. Frequently Asked Questions ======================================= Q: When I try to launch the server, I get a dialog box saying "Application configuration is incorrect". A: Make sure you have Visual Studio 2005 Redistributables installed on your machine. You can find the installer on your MOHA DVD or the standalone package. If you have the redistributables installed but still getting this message, uninstall the version you have and install the one included in the standalone package. Q: I get an error message saying "Transaction parameters are invalid" A: Make sure you are giving the server a proper ini file with correct path. If you are running the server off the commandline, make sure you surround the path in quotes for -configfile parameter. Try deleting the ini file and recreating it using DSLauncher. Q: Do I need to have a copy of MOHA installed to run the dedicated server? A: Starting with MOHA v1.1ds, you can just download the standalone dedicated server, extract and run it from any folder you want on your computer. Q: How do I run multiple servers on one PC? A: You can create multiple .ini files using DSLauncher. Configure and save multiple server configurations on DSLauncher. Then, you can either use DSLauncher to run the server or use commandline option "- configfile" to launch servers. For more information, see section VII. Q: Do I need multiple copies of the game to run multiple servers? A: No, you can run as many servers as you want on one machine with a single copy of the game. Q: Do I need to install Punkbuster manually when deploying the server on multiple PCs? A: You can install Punkbuster on one machine and upload the dedicated server folder to a target PC instead of the self-extracting file. IX. Credits ======================================= T he dedicated server team consisted of the following... Project Manager: Matt Sentell Project Lead: Tom McDevitt Engineering: Torin Kampa, Kwasi Mensah, Kinshuk Mishra, Giray Ozil