| # Server Setup & Advanced Commands Wolfenstein: Enemy Territory Game - Server Guide Server Minimum System Hosting Dedicated Servers Command Line Options for Expert Admins Server Only Settings for Expert Admins Server Console Commands for Expert Admins Game Commands Creating a Server for Expert Admins (using the .cfg) Server Minimum System There are two types of servers you can create to run Enemy Territory: Listen servers and Dedicated servers. Listen servers allow you to play the game and host it at the same time, while Dedicated servers only host the game. Dedicated servers use fewer resources than Listen servers, and are therefore more stable to play on. Listen servers work well if you’re playing on a LAN. To run a Dedicated server, we suggest you have at least: · Intel® Pentium® IV 1.3ghz processor or equivalent ET needs about 30 MHz dedicated to the ET process per player slot. Here is a table with suggested server speeds based upon maximum client settings. o For a 32 player dedicated server, ET will need 1ghz. o For a 16 player dedicated server, ET will need 500mhz. o For an 8 player dedicated server, ET will need 250mhz. · 128 MB RAM This assumes no other applications are running in the background. If other server applications are running, you should expect to need more system RAM. · Excellent connection to the Internet or LAN. We strongly recommend T1 connection speed. Servers on Cable or DSL connections should limit their games to only to 2-4 players (depending on upstream). Hosting Dedicated Servers To create a server, click on “Host Game” at the main menu. The “Host Game” screen contains a number of options that allow you to configure the server. This section contains explanations of these settings, to help you get the most out of your game. Settings This area allows you to configure the fundamental server properties. Server Name: This is the name of the server as it will appear on server lists. Game Type: This is the gametype that the server will run. o Campaign: This is the standard game type for Wolfenstein : Enemy Territory. Players will gain experience as they progress through a 3-map campaign in either Africa or Europe. Experience will be carried over from map to map until the campaign restarts after the third map. o Last Man Standing: In this mode, each player has only 1 life. The game ends when all the players on one team have died, awarding victory to the other team. o Single-Map Objective: This game type allows the server to run any map in any order, but experience does not carry over from map to map. o Stopwatch: A very fun game type, stopwatch pits the attacking players against the clock. When one team wins, the clock is set and the players switch sides and the attackers now try to beat the new clock. Auto-Configure Server: This option allows you to quickly set up a server for a specific type of play. It is highly recommended that you utilize one of the two auto-configuration options provided, depending on your needs. o No: The server will not auto configure itself. o Competition Settings: The server will configure itself for match play. This setting is recommended if you are going to be running a match server where clans play against each other. o Public Settings: The server will configure itself for online play. This setting is recommended if you just want to set up a server for people to play and have fun. Dedicated Server: This option controls what type of server you will be running. A listen server, or a dedicated server. o No: This is a listen server, where the server is also a client in the game. This setting allows you to host a game and play at the same time. However, this server will not show up on Internet server lists. o Yes - LAN: This is the first of two dedicated server types. This server will show up on the LAN server lists, but not Internet. o Yes – Internet: This is the second of two dedicated server types. This server will show up on Internet server lists. NOTE: If the server is behind a firewall, it may not show up on Internet server lists. Password: This optional setting allows you to password protect your server. Only players who have the right password will be able to enter your server. If you do not wish to password protect your server, leave this setting alone. ## Features This is a list of 6 primary settings that can be toggled on or off. Please adjust these settings as you see fit. Friendly Fire: Turning this on will allow teammates to hurt each other. Please keep in mind that Enemy Territory has built-in protection against intentional Team Killers. Max Lives: Turning this on will give each player in the game a limited number of lives. Punkbuster: Turning this on will enable Evenbalance’s Punkbuster Anti-Cheat protection. This is highly recommended as it will help keep cheaters from playing on your server. Please see the PunkBuster documentation for more information. Weapon Restrictions: Turning this feature on will limit the number of heavy weapons, such as the panzerfaust, that are allowed in the game. Anti-Lag: Turning this on enables the Anti-Lag feature. This results in smoother gameplay for players that are running on computers with higher pings. Balanced Teams: Turning this on allows the server to restrict players from joining a team that has too many players. ## Name ## This area allows you to select the location of play. For campaign mode, the available selection consists of the two different campaign areas, Central Europe and North Africa. For other game types, the available selection consists of the individual maps in the game. Details This area contains the details of the currently selected map or game type. When a map is selected, its description will be located here. When a game type is selected, its description will appear here as well. Advanced Clicking this button will take you to a screen that allows you to set more advanced options, such as the Message of the Day, remote console passwords, and more. Start Server Once you’ve configured the server, click this button to start it. Command Line Options for Expert Admins Command line options must be set on the command line and will not work if executed in a config file. To set a command line option, add it to the Target line of the game’s shortcut. It is recommended that you create a secondary shortcut for dedicated servers. com_hunkmegs com_hunkmegs – This option determines how much memory the server will use for players and items. The default value for this is 72, but this value should be overridden by adding it to the command line on dedicated servers. For general use, a com_hunkmegs setting of 32 is sufficient. Usage, add the following to the Target field of the game’s shortcut: +set com_hunkmegs Sample in target field of game shortcut: "C:\Program Files\Wolfenstein - Enemy Territory\ET.exe” +set dedicated 1 +set com_hunkmegs 32 NOTE: user made or future map releases may require a higher setting. If you receive an ERROR: Hunk_Alloc failed message, then try increasing the com_hunkmegs setting in increments of 2 until the map successfully loads. net_ip If you are on a multi-homed server and the default IP is not what you want to use for your Wolfenstein : Enemy Territory server, the net_ip command will need to be used. This must be set on the command line in the following form. Usage, add the following to the Target field of the game’s shortcut: +set net_ip <ip address> Sample in target field of game shortcut: "C:\Program Files\Wolfenstein - Enemy Territory\ET.exe” +set dedicated 1 +set net_ip 192.168.0.0 net_port Changing the default server port requires the net_port command be run on the command line. It is useful for running multiple servers on the same computer or making the server somewhat more private. The default port is 27960 and is incremented automatically by 1 if another server is started without a specified port. Usage, add the following to the Target field of the game’s shortcut: +set net_port Sample in target field of game shortcut: "C:\Program Files\Wolfenstein - Enemy Territory\ET.exe” +set dedicated 1 +set net_port 27961 Server Only Settings for Expert Admins Server settings are only used only on the server and may be used at the console or command line. Command line usage requires a +set before each command. For example: +set sv_maxclients 16 sv_maxclients sv_maxclients - sets the maximum amount of clients that can connect to the server. The default setting is 20. Usage: sv_maxclients sv_privatePassword sv_privatePassword - sets a password on the server so only clients that know the password can connect to the server. Clients use the \password command. The default is for no password required. Set to "" for no password. Usage: sv_privatePassword "<password>" sv_hostname sv_hostname - sets the server name that will show up in the master server list. The name must be enclosed in quotes if a space is in the name. Usage: sv_hostname "<servername>" sv_maxRate sv_maxRate - sets the maximum allowable rate a client may have set when connected to the server. The default is 0, which is no limit. A suggested setting is 8000 or 10000 so server bandwidth is not used up by high speed clients, thus allowing modem players to have a smoother game. Usage: sv_maxRate <#####> sv_pure sv_pure - controls crc/zip check of client pk3 files to make sure the pk3 file has not been modified for cheating or other purposes. Client pk3 files must match that of the server to connect. The default is set to 1, or on. Set to 0 to turn off check. Usage: sv_pure 1 Server Console Commands for Expert Admins Server console commands are used from the server console or the remote console. One new feature in Enemy Territory is the referee feature. Players can be given referee powers without having rcon access. Once a ref is set, they can access referee commands. The game contains a built-in ref help system, so please access that for more information. ref – displays the list of available referee commands. Type it with no argument to access the referee commands, usage for the individual commands is explained in the console. Usage: ref status status - shows the client number (num), score, ping, player name (name), client IP address (address), and port connected through (qport). Client number is used in conjunction with the kick command. Usage: status kick kick - removes a player from the server. Particularly useful for removing disruptive players. To kick a player, first find the number (num) associated with the player name via the status command. Usage: kick <num> timelimit timelimit - Default to the map specific time limit. This can be changed, but is advised against doing so. However, changing it to 0 makes the game have unlimited time, which can produce some interesting results. Usage: timelimit <#min> rconpassword 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. Usage: rconpassword <serverpassword> killserver killserver - will stop all server services from running but leaves the Wolfenstein : Enemy Territory executable running on the server. Usage: killserver map_restart # map_restart # - Defaults to 5 seconds. # defines the amount of time before the map restarts, in seconds. Usage: map_restart 5 Game Commands Generally, all game commands must be entered after the level loads either in the config file or on the command line/console. An exception to that rule would be the g_gametype. The following are the most useful game commands for a dedicated server. g_warmup g_warmup - Amount of warmup time allotted to connected clients. Defaults to 20 seconds. Usage: g_warmup <#seconds> g_friendlyFire g_friendlyFire - determines if players can damage their own teammates. Set to 1 to allow players to damage their own teammates. Set to 0 so players can not damage their own teammates. Usage: g_friendlyFire 1 g_gametype g_gametype - controls the type of gameplay (Campaign, Objective, Stopwatch, or LMS). The default is 4, which is Campaign mode. Set to 3 for Stop Watch. Set to 5 for LMS, or 2 for Objective Usage: g_gametype <#> g_log g_log - sets the name of the server log file. The default is games.log and does not need to be modified unless running multiple dedicated servers on the same computer. Usage: g_log <filename.ext> g_allowvote g_allowvote - enable players connected to the server to call for and vote on changes including: map, map restart, kick, and g_gametype. The default is 1, which is on. Set to 0 to turn off voting. Usage: g_allowvote 1 g_maxlives g_maxlives - Defaults to 0 (Unlimited). Change this to the number of lives you wish all players to have. Usage: g_maxlives 0 g_minGameClients g_minGameClients - Defaults to 4. Change this number (usually larger) to reflect how many clients must join a server before it enters restricted mode. Usage: g_minGameClients 4 g_noteamswitching g_noteamswitching - Defaults to 0, which disables team switching. Change this value to allow team switching or not. Usage: g_noteamswitching 0 g_complaintlimit g_complaintlimit - Defaults to 5. This is the number of complaints that have to be filed before someone is kicked. We recommend setting this low. Usage: g_complaintlimit 5 Creating a Server for Expert Admins (using the .cfg) Wolfenstein: Enemy Territory allows advanced users to setup servers by creation of sever.cfg files. Below are some samples to use, with explanations of each setting. Please note, Activision doesn’t not officially support these config files. They are provided solely to help users in setting up dedicated servers. The default server.cfg is suggested only for 600mhz processors and above. server.cfg – Dedicated server config file. campaigncycle.cfg – Campaign map cycle config file. Required to run Campaign game type. lmscycle.cfg – Last Man Standing map cycle config file. Required to run Last Man Standing game type. objectivecycle.cfg – Objective map cycle config file. Required to run Objective game type. stopwatchcycle.cfg – Stopwatch map cycle config file. Required to run Stopwatch game type. punkbuster.cfg – Punkbuster config file. Useful when running PunkBuster. Example server.cfg set dedicated "2" // 1: dedicated server for lan 2: dedicated server for internet // set net_ip "" // set to override the default IP ET uses // set net_port "27960" // set to override the default port ET uses // PASSWORDS & CLIENTS set sv_maxclients "20" // number of players including private slots set g_password "" // set to password protect the server set sv_privateclients "4" // if set > 0, then this number of client slots will be reserved for connections set sv_privatepassword "" // that have "password" set to the value of "sv_privatePassword" set rconpassword "" // remote console access password set refereePassword "" // referee status password // DL, RATE set sv_maxRate "13000" // 10000 standard but poor for ET set sv_dl_maxRate "42000" // increase/decerease if you have plenty/little spare bandwidth set sv_allowDownload "0" // global toggle for both legacy download and web download set sv_wwwDownload "0" // toggle to enable web download set sv_wwwBaseURL "" // base URL for redirection set sv_wwwDlDisconnected "0" // tell clients to perform their downloads while disconnected from the server set sv_wwwFallbackURL "" // URL to send to if an http/ftp fails or is refused client side // MOTD ETC set sv_hostname "ETHost" // name of server here set server_motd0 " ^NEnemy Territory ^7MOTD " // message in right corner of join screen here set server_motd1 "" set server_motd2 "" set server_motd3 "" set server_motd4 "" set server_motd5 "" // MISC SETTINGS set g_heavyWeaponRestriction "100" set g_antilag "1" set g_altStopwatchMode "0" set g_autofireteams "1" set g_complaintlimit "6" set g_ipcomplaintlimit "3" set g_fastres "0" set g_friendlyFire "1" //set g_gametype "4" // Game type should be set from map rotation script set g_minGameClients "8" set g_maxlives "0" set g_alliedmaxlives "0" set g_axismaxlives "0" set g_teamforcebalance "1" set g_noTeamSwitching "0" set g_voiceChatsAllowed "4" set g_doWarmup "0" set g_warmup "30" set g_spectatorInactivity "0" set sv_floodProtect "1" set sv_allowDownload "1" set sv_pure "1" set sv_minping "0" set sv_maxping "0" set match_latejoin "1" set match_minplayers "4" set match_mutespecs "0" set match_readypercent "100" set match_timeoutcount "0" set match_warmupDamage "1" set team_maxplayers "0" set team_nocontrols "1" set pmove_fixed "0" set pmove_msec "8" // LMS ONLY SETTINGS set g_lms_teamForceBalance "1" set g_lms_roundlimit "3" set g_lms_matchlimit "2" set g_lms_currentMatch "0" set g_lms_lockTeams "0" set g_lms_followTeamOnly "1" // VOTING set g_allowVote "1" set vote_limit "5" set vote_percent "50" set vote_allow_comp "1" set vote_allow_gametype "1" set vote_allow_kick "1" set vote_allow_map "1" set vote_allow_matchreset "1" set vote_allow_mutespecs "1" set vote_allow_nextmap "1" set vote_allow_pub "1" set vote_allow_referee "0" set vote_allow_shuffleteams "1" set vote_allow_swapteams "1" set vote_allow_friendlyfire "1" set vote_allow_timelimit "0" set vote_allow_warmupdamage "1" set vote_allow_antilag "1" set vote_allow_balancedteams "1" set vote_allow_muting "1" // PUNKBUSTER // sv_punkbuster is a readonly variable. Use +set sv_punkbuster on command line or use the command pb_sv_enable in the console. //pb_sv_enable //exec punkbuster.cfg // Punkbuster Settings // LOGGING set g_log "etserver.log" // Game logging set g_logsync 0 set logfile 0 // Console logging ( 1: enable 2: enable and sync ) // MAP ROTATION SCRIPT exec campaigncycle.cfg // Campaign mode //exec objectivecycle.cfg // Objective mode //exec lmscycle.cfg // Last Man Standing mode //exec stopwatchcycle.cfg // Stopwatch mode // WATCHDOG // in case the game dies with an ERR_DROP // or any situation leading to server running with no map //set com_watchdog 10 // defaults 60 set com_watchdog_cmd "exec campaigncycle.cfg" // defaults to quit Example campaigncycle.cfg: set d1 "campaign cmpgn_northafrica ; set nextcampaign vstr d2" set d2 "campaign cmpgn_centraleurope ; set nextcampaign vstr d1" // server doesn't recognise the campaign command when the gamecode isn't running yet. set d_initial "set g_gametype 4 ; map oasis ; set nextcampaign vstr d2" vstr d_initial Example lastmanstandingcycle.cfg: set d1 "set g_gametype 5 ; map oasis ; set nextmap vstr d2" set d2 "set g_gametype 5 ; map battery ; set nextmap vstr d3" set d3 "set g_gametype 5 ; map goldrush ; set nextmap vstr d4" set d4 "set g_gametype 5 ; map radar ; set nextmap vstr d5" set d5 "set g_gametype 5 ; map railgun ; set nextmap vstr d6" set d6 "set g_gametype 5 ; map fueldump ; set nextmap vstr d1" vstr d1 Example objectivecycle.cfg: set d1 "set g_gametype 2 ; map oasis ; set nextmap vstr d2" set d2 "set g_gametype 2 ; map battery ; set nextmap vstr d3" set d3 "set g_gametype 2 ; map goldrush ; set nextmap vstr d4" set d4 "set g_gametype 2 ; map radar ; set nextmap vstr d5" set d5 "set g_gametype 2 ; map railgun ; set nextmap vstr d6" set d6 "set g_gametype 2 ; map fueldump ; set nextmap vstr d1" vstr d1 Example stopwatchcycle.cfg: //Map-Cycle Stopwatch //by Erik Melen (Deveus) // //3 = Stopwatch //Stopwatch Rotation. A full ABBA or ABAB rotation requires 4 rounds per map. //A simple map_restart is all that is needed for rounds 2-4. //*****Siwa Oasis Stopwatch Game set m2r1 "g_gametype 3; map oasis; set nextmap vstr m2r2; sets StopwatchRound 1;" set m2r2 "map_restart 0; set nextmap vstr m2r3; sets StopwatchRound 2;" set m2r3 "map_restart 0; set nextmap vstr m2r4; sets StopwatchRound 3;" set m2r4 "map_restart 0; set nextmap vstr m2r5; sets StopwatchRound 4;" //*****Seawall Battery Stopwatch Game set m2r5 "g_gametype 3; map battery; set nextmap vstr m2r6; sets StopwatchRound 1;" set m2r6 "map_restart 0; set nextmap vstr m2r7; sets StopwatchRound 2;" set m2r7 "map_restart 0; set nextmap vstr m2r8; sets StopwatchRound 3;" set m2r8 "map_restart 0; set nextmap vstr m2r9; sets StopwatchRound 4;" //*****Gold Rush Stopwatch Game set m2r9 "g_gametype 3; map goldrush; set nextmap vstr m2r10; sets StopwatchRound 1;" set m2r10 "map_restart 0; set nextmap vstr m2r11; sets StopwatchRound 2;" set m2r11 "map_restart 0; set nextmap vstr m2r12; sets StopwatchRound 3;" set m2r12 "map_restart 0; set nextmap vstr m2r13; sets StopwatchRound 4;" //*****Würzburg Radar Stopwatch Game set m2r13 "g_gametype 3; map radar; set nextmap vstr m2r14; sets StopwatchRound 1;" set m2r14 "map_restart 0; set nextmap vstr m2r15; sets StopwatchRound 2;" set m2r15 "map_restart 0; set nextmap vstr m2r16; sets StopwatchRound 3;" set m2r16 "map_restart 0; set nextmap vstr m2r17; sets StopwatchRound 4;" //*****Rail Gun Stopwatch Game set m2r17 "g_gametype 3; map railgun; set nextmap vstr m2r18; sets StopwatchRound 1;" set m2r18 "map_restart 0; set nextmap vstr m2r19; sets StopwatchRound 2;" set m2r19 "map_restart 0; set nextmap vstr m2r20; sets StopwatchRound 3;" set m2r20 "map_restart 0; set nextmap vstr m2r21; sets StopwatchRound 4;" //*****Fuel Dump Stopwatch Game set m2r21 "g_gametype 3; map fueldump; set nextmap vstr m2r22; sets StopwatchRound 1;" set m2r22 "map_restart 0; set nextmap vstr m2r23; sets StopwatchRound 2;" set m2r23 "map_restart 0; set nextmap vstr m2r24; sets StopwatchRound 3;" set m2r24 "map_restart 0; set nextmap vstr m2r1; sets StopwatchRound 4;" vstr m2r1 Example punkbuster.cfg: //PunkBuster Server config // //Thanks to those on the SplashDamage forums for their contribution. //Compiled by Erik Melen (Deveus) and Paul Goldilla (loony) // //Enable Punkbuster pb_sv_enable //Bad Names list //Place any names that you feel players should not use on your server in here. //To add more bad name entries, simply follow the format shown below. pb_sv_badname 30 Nazi pb_sv_badname 30 Hitler //CVARs for the PB server to check. Place checks to keep players from abusing CVARs. pb_sv_cvarempty pb_sv_cvar rate in 2500 25000 pb_sv_cvar snaps in 20 40 pb_sv_cvar cl_maxpackets in -15 100 pb_sv_cvar cg_bobup in 0 0.005 pb_sv_cvar r_picmip in 0 3 pb_sv_cvar r_overbrightbits in 0 4 pb_sv_cvar r_mapoverbrightbits in 0 4 pb_sv_cvar cg_shadows in 0 1 pb_sv_cvar r_rmse in 0 0 pb_sv_cvar cg_fov in 90 120 pb_sv_cvar r_allowextensions in 1 pb_sv_cvar r_softwareGL in 0 pb_sv_scorekick -9 //player gets kicked for having score below zero pb_sv_CQC 1 //Client Query Capability (i.e. can they query the server cvars) pb_sv_MsgPrefix "ET PB Server" pb_sv_KickLen 5 pb_sv_LogSync 0 pb_sv_LogCeiling 1000 pb_sv_Sleep 100 pb_sv_PowerMin 10 pb_sv_PowerDef 1 pb_sv_PowerKickLen 5 //pb_sv_httpAddr 192.168.0.1 //enter Webtool address here //pb_sv_httpPort 27970 //enter Webtool port here //pb_sv_httpRefresh 60 //pb_sv_httpKey "Put Password Here" //pb_sv_httpmaps radar railgun fueldump oasis battery goldrush //for the Web Tool map pull down menu pb_sv_extChar 0 pb_sv_minName 1 pb_sv_dupNameGrace 30 //Prevents name stealing on the server. pb_sv_changePeriod 10 pb_sv_changeMax 5 //Number of name changes before kicking a player. pb_sv_emptyname 1