[rtcw.co.uk logo] homelink

[Jolt Enemy Territory server rental advert]

"Quick" Server Guide (ETPro)

For A Dual-Use Clanserver

This is the "quick" server guide, for people who just want a server up - you can learn about the various configuration options and other sever knowledge on the other pages. The server guide here will setup the server in a way to suit a server that has two uses: sometimes a public server, sometimes a private clanwar server. This guide is for an Enemy Territory server running the highly popular ETPro modification, which is recommended for public servers, and is more or less essential for a clan server.

The basic principle of what is happening is that ET is loaded in a way that starts it up with certain settings, and also makes ET run a configuration file - server.cfg. This server.cfg sets up a lot more settings, and also runs two more configuration files - maprotate.cfg, which loads up the map rotation, and public.config file which is an "etpro pluggable format" configuration file. Finally, we add two files default_pub.cfg and default_comp.cfg, which are for easing the process of swapping between the public and clanwar settings to the extent that a REFeree player can use the REF "vote" UI menu.

The way this example is done, initially the server is loaded with some public server settings, but afterwards it is straightforward to switch back and forth between the assumed dual uses of the server: public and clanwar.

Startup

Chances are you've rented a server and they have set the startup command line already, which most likely you wont actually need to modify (or for that matter, be able to). Here's a rough idea what it should look like:

C:\path\et.exe +set dedicated 2 +set net_port 27960 +set fs_game etpro +set fs_homepath 27960 +set sv_punkbuster 1 +exec server.cfg

dedicated - there are 3 ways to run a server. A "listen" server, which is where you play on the server at the same time as hosting server. This is not the way to host a real server, and hence this type of server is not listed on server browsers etc., really its for lone players to check out custom maps or maybe play with friends over LAN (ETPro does not even work correctly on a listen server, and will display warnings in the console text area). A listen server would be dedicated 0. Dedicated 2 is for a proper server, you cannot play on it at the same time as hosting - it appears only as a console on the host machine - and the server will be listed on server browsers. Dedicated 1 would be a host server for a LAN, dedicated but not showing up on server browser listings.

net_port - this sets the communications port the server will use. Default is 27960, but it is very likely your host will have many ET servers running on that one computer, and each ET server running on the same machine or IP MUST have it's own port address. Best practice is to keep it similar, i.e. count up so the next server would be 27961, 27962 etc..

fs_game - this is where you load modifications. If this line is not included, it will default to etmain and only the normal game will be loaded. You must load modifications via fs_game in the startup line.

fs_homepath - OK so there are several game servers running off the one ET install, right? Doesnt each server need it's own folder for a "work area", logs and stuff? Yep, and this is where you set it. It is strongly recommended each server running from the one ET install should have it's own fs_homepath. Failure to do this (which happens all the time by server hosts, you dont expect them to know everything about the two dozen games they host) will likely screw up punkbuster, especially when it updates. I have called the homepath folder the same thing as the port number - this makes it very easy to determine what folder is for what server. See image.

sv_punkbuster - you can enable punkbuster in a configuration file with pb_sv_enable, but this should be as last-resort, Evenbalance recommends that it be initiated on the startup command switch in the manner shown in the example.

exec server.cfg - this loads up the server configuration file, which sets all the other server settings - and loads a map. ET seeks the specified filename in "etmain" folder, regardless of the mod being used. You can specify a path to subfolders if you would rather keep your configurations neat in a folder, for example +exec server_cfg/server.cfg. See image.
There may be several extra settings in a startup command line provided by a commercial server host, but you are unlikely to need anything except the above (which does not mean "definately all that you might possibly need" - server hosts tend to only add things for a reason). Of course, the values are likely to be different, especially for net_port and fs_homepath, and whatever you called your server configuration file. The 3 you will definately need are +set fs_game etpro to load it, +set sv_punkbuster 1 assuming you wish to enable it, and +exec server.cfg because the server wont be doing much otherwise.

Configuration Files

There is actually fairly little really necessary to setup a standard server, for a lot of settings the default value is desired, or at least adequate. However, you will have to change several settings to suit your needs.

Note that the name for this file is server.cfg, which matches the file executred from the startup command line. You can call the server file whatever you like, provided it matches what is being executed (exec) in the startup line.

A zipfile of the following configuration files is here. Chances are I'll forget to update it if I do update this page though, and the official clanwar.config will almost certainly need updating to the current version.

Server Config - server.cfg

// TITLE OF SERVER CONFIG (if you want)
// maybe a description (if you want)

set username "NotForYouToKnow"
// PASSWORDS & CLIENTS
set sv_maxclients "20"
set sv_privateclients "2"
set password ""
set g_needpass "0"
set sv_privatepassword "private_password"
set rconpassword "rcon_password"
set refereepassword "ref_password"

// MOTD ETC
// max length is "12345678901234567890123456" w/o colour codes
set sv_hostname "name of server"
set server_motd0 "^B.........................."
set server_motd1 "^B.       ^&welcome         ^B."
set server_motd2 "^B.       ^&message          ^B."
set server_motd3 "^B.       ^&a.k.a.            ^B."
set server_motd4 "^B.        ^&motd            ^B."
set server_motd5 "^B.........................."

// DL, RATE
set sv_allowDownload "1"
set sv_maxRate "16000"
set sv_dl_maxRate "42000"
set sv_lanforcerate "0"

// PB
pb_sv_dupNameGrace 20
pb_sv_changePeriod 20
pb_sv_changeMax 5
pb_sv_noguidgrace 30
pb_sv_updategrace 450
pb_sv_guidrelax 4
pb_sv_badname 10 teamkill
pb_sv_AutoSs 0

// LOGGING
set g_log "logfilename.log"
set logfile 0
set g_logsync 0
set b_cheatlog "etpro_cheats.log"

// MAP ROTATION
// in this case, a seperate file
// but can just paste it here.
exec maprotate.cfg

// ETPRO PLUGGED CFG
wait 150
config public
wait 150
reset_match





- sets the total number of players, including private slots.
- password-protected private slots, usually for admins & people who paid.
- set a password to stop joe public joining clan server
- set wether the above password is enabled
- the password for those private slots
- RCON password, keep safe!
- password for players to get ref control

- looks like:
  [motd]


- allow players to download missing files off server
- rate cap for players (most server host companies specify a limit)
- a little faster for downloading those missing files
- stops ET forcing players to LAN settings if they have similar IP




















- replace with whatever you call your map rotation file


- next line needs map loaded to work, the wait gives it time
- loads the etpro style config file, here it'd be public.config

- reset's match to ensure the .config settings are running

Map Rotation File - maprotate.cfg

Note that the map rotation file has been executed from the server.cfg file - exec maprotate.cfg. You can of course call the file whatever you want, aslong as the entry in the initial server configuration file matches it. More detail on map/campaign rotations is here.
// STOPWATCH MAP ROTATION
// So called "clanwar" maps in an AB stopwatch rotation

// WATCHDOG
set com_watchdog_cmd "vstr m1r1 ; say watchdog found no map running - restarted mapcycle"

// MAP
set m1r1 "g_gametype 3; map oasis; set nextmap vstr m1r2"
set m1r2 "map_restart 0; set nextmap vstr m2r1"

set m2r1 "g_gametype 3; map goldrush; set nextmap vstr m2r2"
set m2r2 "map_restart 0; set nextmap vstr m3r1"

set m3r1 "g_gametype 3; map radar; set nextmap vstr m3r2"
set m3r2 "map_restart 0; set nextmap vstr m4r1"

set m4r1 "g_gametype 3; map railgun; set nextmap vstr m4r2"
set m4r2 "map_restart 0; set nextmap vstr m5r1"

set m5r1 "g_gametype 3; map supplydepot; set nextmap vstr m5r2"
set m5r2 "map_restart 0; set nextmap vstr m6r1"

set m6r1 "g_gametype 3; map caen; set nextmap vstr m6r2"
set m6r2 "map_restart 0; set nextmap vstr m1r1"

vstr m1r1

ETPro Plugable Config Files - public.config, clanwar.config

The "ETPro Plugable Config Files" are a configuration system introduced in ETPro 2.1. The purpose of them is for a more flexible and powerful method to configure the server - it is easy for leagues to bring outupdated configs and they can be simply "plugged" into the server, and loaded easily by vote or referee - unlike .cfg files which require an admin with RCON. The .config files should be saved in the server's etpro/configs/ folder.

With the .config system, it becomes easy to setup the basics of the server configuration with the normal .cfg, and then have two .config files, one of which is the settings for when the server is in public-server mode, i.e. open to the public and running a map rotation, and the other is for when the server is in clanwar mode, i.e. off limits to the public and with specific official settings.

The important consideration here is where public and clanwar settings differ, each .config must reset the undesired settings made by the previously used .config. In other words, when you want to go to public mode, you not only need to set the wanted public settings but remove the unwanted clanwar settings. You shouldnt modify the configs competition organisations supply, so you have to work around them with your public server .config.

The public.config is your own concoction, whatever settings you want for your public server. The clanwar settings, on the other hand, will be provided to you by the organisations who's events you are participating in. If you dont actually participate in an official ladder, league or cup or whatever, then the best bet is to find out what the most common one is and then use their config for scrims. In Europe, that config would be the joint Clanbase & RTCW.no one. In North America, that would presumably be one from either CAL or TWL.

The example clanwar config used is that of Clanbase & RTCW.no (current at time of writing, probably not at time of reading). Again, the name of the configs can be anything, I've used public & clanwar for illustration, and also by coincidence clanbase/rtcw.no config calls itself "clanwar".
public.config
clanwar.config
configname "public"

init
{
setl g_gametype 3
setl g_warmup 40
setl g_doWarmup 0
setl g_voiceChatsAllowed 5
setl g_spectatorInactivity 1
setl g_friendlyFire 1
setl g_heavyWeaponRestriction 20
setl g_medicChargeTime 45000
setl g_LTChargeTime 40000
setl g_engineerChargeTime 30000
setl g_soldierChargeTime 20000
setl g_covertopschargetime 30000
setl g_landminetimeout 0
setl g_teamForceBalance 1
setl g_filtercams 0
setl team_maxMortars 2
setl team_maxFlamers 2
setl team_maxMg42s 2
setl team_maxPanzers 2
setl team_maxMines 10
setl team_maxRiflegrenades 2
setl team_maxplayers 0
setl team_nocontrols 1
setl match_timeoutcount 0
setl match_timeoutlength 300
setl match_minplayers 0
setl match_latejoin 1
setl match_mutespecs 0
setl match_readypercent 100
setl match_warmupDamage 2
setl sv_pure 1
setl sv_minping 0
setl sv_maxping 900
setl sv_cheats 0
setl g_complaintlimit 6
setl g_IPcomplaintLimit 4

setl g_allowVote 0
setl vote_limit 3
setl vote_percent 51
setl vote_allow_balancedteams 0
setl vote_allow_muting 1
setl vote_allow_swapteams 0
setl vote_allow_friendlyfire 0
setl vote_allow_timelimit 0
setl vote_allow_warmupdamage 1
setl vote_allow_kick 1
setl vote_allow_map 1
setl vote_allow_matchreset 1
setl vote_allow_mutespecs 0
setl vote_allow_nextmap 1
setl vote_allow_referee 0
setl vote_allow_config ""
setl vote_allow_comp 0
setl vote_allow_gametype 0
setl vote_allow_pub 0
setl vote_allow_shuffleteams 1
setl vote_allow_cointoss 0

setl b_mapscriptdirectory ""

setl b_levels_battlesense ""
setl b_levels_engineer ""
setl b_levels_medic ""
setl b_levels_fieldops ""
setl b_levels_lightweapons ""
setl b_levels_soldier ""
setl b_levels_covertops ""
setl b_statsaver 1
setl b_intermissiontime 20
setl b_privatemessages 0
setl b_match_warmupjoin 1
setl b_xpstopwatch 0
setl b_multiview 0
setl b_spectatornames 1
setl b_defaultskills ""
setl b_noskillupgrades 0
setl b_shove 1
setl b_stickycharge 2
setl b_damagexp 1
setl b_antiwarp 1
setl b_panzerlevelup 1
setl b_headshot 0
setl b_riflegrenades 1
setl b_fallingbugfix 1
setl b_fixedphysics 1
setl b_fixedphysicsfps 125

setl b_anticheat 1
setl b_cheatkicktime 5

command "pb_sv_enable"
command "pb_sv_kicklen 2"
command "pb_sv_cvarempty"
command "sv_cvarempty"
command "sv_cvar rate IN 2500 25000"
command "sv_cvar snaps IN 20 40"
command "sv_cvar cl_maxpackets IN 15 100"
command "sv_cvar cl_timenudge EQ 0"
command "sv_cvar cl_freelook EQ 1"
command "sv_cvar cl_yawspeed IN 0 140"
command "sv_cvar cl_pitchspeed IN 0 140"
command "sv_cvar m_pitch OUT -0.015 0.015"
command "sv_cvar m_yaw IN -0.022 0.022"
command "sv_cvar cg_bobup IN 0 0.005"
command "sv_cvar cg_errordecay EQ 100"
command "sv_cvar cg_shadows IN 0 1"
command "sv_cvar cg_fov IN 90 125"
command "sv_cvar r_flares IN 0 1"
command "sv_cvar r_primitives IN 0 2"
command "sv_cvar r_nv_fogdist_mode INCLUDE NV GL_EYE_RADIAL_NV"
command "sv_cvar r_detailTextures EQ 0"
command "sv_cvar r_clamptoedge EQ 1"
command "sv_cvar r_drawworld EQ 1"
command "sv_cvar r_drawfoliage EQ 1"
command "sv_cvar r_znear EQ 3"
command "sv_cvar r_showtris EQ 0"
command "sv_cvar r_drawentities EQ 1"
command "sv_cvar r_showmodelbounds EQ 0"
command "sv_cvar r_lightmap EQ 0"


}
map default
{
set g_userTimeLimit 0
set g_useralliedrespawntime 0
set g_useraxisrespawntime 0
set b_moverscale 1
}

configname "^gClanBase & rtcw.no"
version 4.1.0.0 clanwar.version.rtcw.no
init
{
setl g_gametype 3
setl g_warmup 15
setl g_doWarmup 1
setl g_voiceChatsAllowed 99
setl g_spectatorInactivity 0
setl g_friendlyFire 1
setl g_heavyWeaponRestriction 20
setl g_medicChargeTime 45000
setl g_LTChargeTime 40000
setl g_engineerChargeTime 30000
setl g_soldierChargeTime 20000
setl g_covertopschargetime 30000
setl g_landminetimeout 0
setl g_teamForceBalance 0
setl g_filtercams 1
setl team_maxMortars 1
setl team_maxFlamers 1
setl team_maxMg42s 1
setl team_maxPanzers 1
setl team_maxMines 7
setl team_maxRiflegrenades 1
setl team_maxplayers 0
setl team_nocontrols 0
setl match_timeoutcount 2
setl match_timeoutlength 240
setl match_minplayers 2
setl match_latejoin 1
setl match_mutespecs 0
setl match_readypercent 100
setl match_warmupDamage 2
setl sv_pure 1
setl sv_minping 0
setl sv_maxping 0
setl sv_cheats 0
setl pmove_fixed 0
set nextmap ""

setl g_allowVote 1
setl vote_limit 99
setl vote_percent 51
setl vote_allow_balancedteams 0
setl vote_allow_muting 1
setl vote_allow_swapteams 1
setl vote_allow_friendlyfire 0
setl vote_allow_timelimit 1
setl vote_allow_warmupdamage 1
setl vote_allow_kick 1
setl vote_allow_map 1
setl vote_allow_matchreset 1
setl vote_allow_mutespecs 1
setl vote_allow_nextmap 1
setl vote_allow_referee 1
setl vote_allow_config *
setl vote_allow_comp 0
setl vote_allow_gametype 0
setl vote_allow_pub 0
setl vote_allow_shuffleteams 0
setl vote_allow_cointoss 1

setl b_mapscriptdirectory etpromapscripts

setl b_levels_battlesense "20 90 140"
setl b_levels_engineer "20 90 140"
setl b_levels_medic "20 90 140"
setl b_levels_fieldops "20 140"
setl b_levels_lightweapons "20 90 140"
setl b_levels_soldier "140"
setl b_levels_covertops "20 90 140"
setl b_statsaver 1
setl b_intermissiontime 20
setl b_privatemessages 0
setl b_match_warmupjoin 0
setl b_xpstopwatch 0
setl b_multiview 1
setl b_spectatornames 1
setl b_defaultskills ""
setl b_noskillupgrades 0
setl b_shove 0
setl b_stickycharge 2
setl b_damagexp 1
setl b_antiwarp 1
setl b_panzerlevelup 1
setl b_headshot 0
setl b_riflegrenades 1
setl b_fallingbugfix 1
setl b_fixedphysics 1
setl b_fixedphysicsfps 125

setl b_anticheat 1
setl b_cheatkicktime -1

command "pb_sv_enable"
command "pb_sv_kicklen 1"
command "sv_cvarempty"
command "sv_cvar cl_freelook EQ 1"
command "sv_cvar cl_maxpackets IN 30 100"
command "sv_cvar cl_timenudge EQ 0"
command "sv_cvar rate IN 7000 25000"
command "sv_cvar snaps IN 20 40"
command "sv_cvar cg_bobup IN 0 0.005"
command "sv_cvar cg_fov IN 90 120"
command "sv_cvar cg_shadows IN 0 1"
command "sv_cvar cg_thirdperson EQ 0"
command "sv_cvar m_pitch OUT -0.015 0.015"
command "sv_cvar m_yaw IN -0.022 0.022"
command "sv_cvar r_allowextensions EQ 1"
command "sv_cvar r_ati_fsaa_samples EQ 0"
command "sv_cvar r_ati_truform_tess EQ 0"
command "sv_cvar r_drawentities EQ 1"
command "sv_cvar r_drawfoliage EQ 1"
command "sv_cvar r_ext_ATI_pntriangles EQ 0"
command "sv_cvar r_ext_texture_filter_anisotropic EQ 0"
command "sv_cvar r_flares IN 0 1"
command "sv_cvar r_gamma IN 1 3"
command "sv_cvar r_lightmap EQ 0"
command "sv_cvar r_mapoverbrightbits IN 0 3"
command "sv_cvar r_overbrightbits IN 0 1"
command "sv_cvar r_showtris EQ 0"
command "sv_cvar r_showmodelbounds EQ 0"
command "sv_cvar r_shownormals EQ 0"
command "sv_cvar r_wolffog EQ 1"
command "sv_cvar r_primitives IN 0 2"
command "sv_cvar r_clamptoedge EQ 1"
command "sv_cvar r_detailtextures EQ 0"
command "sv_cvar r_nv_fogdist_mode INCLUDE NV GL_EYE_RADIAL_NV"
}
map default
{
set g_userTimeLimit 0
set g_speed 320
set g_gravity 800
setl g_useralliedrespawntime 0
setl g_useraxisrespawntime 0
setl b_moverscale 1
}
map fueldump
{
set g_userTimeLimit 15
setl b_moverscale 1.5
}
map radar
{
set g_userTimeLimit 15
}
map battery
{
set g_userTimeLimit 10
}
map goldrush
{
set g_userTimeLimit 20
setl b_moverscale 1.5
}
map oasis
{
set g_userTimeLimit 20
setl g_useralliedrespawntime 15
}
map railgun
{
setl g_useralliedrespawntime 30
set g_userTimeLimit 15
setl b_moverscale 1
}
map caen
{
setl g_useralliedrespawntime 30
set g_userTimeLimit 20
setl b_moverscale 1.5
}
signature 0014131cf584ca5766ed19a5441ab41fa57af03e
Documentation for the etpro pluggable config has been written here, sort of. The important bits:

configname must be the first line of the file, it takes a single parameter -- the name of the tournament config. This would be displayed below the "waiting on X players" line in warmup.

The init block is executed only once, when the config is loaded by referee or rcon/console. It is never reloaded.

The map blocks are loaded on every map_restart. The parameter is the mapname to match to. A parameter of default will execute that block for all maps. map blocks are executed in order from first to last. Generally you want your default block first, and then specific map blocks to override it.

Inside a block you may have two commands: set and command.
The set command takes two parameters. A cvar name and a cvar value. Any cvar value with spaces in it must be quoted.

The command command takes one parameter, the console command to execute. Any command with spaces in it must be quoted.

Other things to note:
  • setl "locks" the setting, if an admin tries to change this setting when the .config that set it is loaded, ETPro will spam warnings saying the .config has been messed with. This is a measure to prevent naughtly clans fiddling the server settings.
  • sv_cvarempty empties the list of etpro cvar restrictions (sv_cvar) from the server's memory.
  • setl b_mapscriptdirectory none will stop etpro from using the etpro map scripts. Setting it to etpromapscripts will have it use all the scripts provided with the ETPro install. If you want to use only a selection of them, or use some customised scripts, put the scripts you want into a new folder (parallel to etpromapscripts in the folder structure) and then set b_mapscriptdirectory to whatever you name that folder, e.g.
    setl b_mapscriptdirectory mymapscripts.
  • Cvars set to "" means it is set to nothing or the setting reverts to default. set nextmap "" for example is intended to break map rotations for the clanwar setup, while in public setup you re-exec the map rotation.
  • Enabling/disabling voting for .config's is done with vote_allow_config, for example:
    • vote_allow_config "*" would allow voting for any config,
    • vote_allow_config "" would completely disable config voting,
    • vote_allow_config "config1 config2 config3" would allows config1 (i.e. a file called config1.config), config2 or config3 to be voted, but not config4 or clanwar.config or whatever.
    Config voting currently is not available via the GUI menu's, but can be performed by clients using /callvote config configname in their console.
    NB: vote_allow_comp & vote_allow_pub have nothing to do with .config's, although the idea for them was the same in principle - see next section, or here for what they do.
  • To "unload" any .config, the command would be config none. Remember all this does is "forget" the map-specific settings and unlock settings locked with setl.

Easing the Switch: default_pub.cfg & default_comp.cfg

ET came with a voting option to load settings for competition ("comp") or public play ("pub"). The settings they load aren't particularily useful however, but ETPro slightly modified them in a way that provides for a neat little trick [thanks Deej]. With ETPro, when these Comp or Pub settings are loaded, the game seeks for and tries to load files called default_comp.cfg or default_pub.cfg, respectively.

This can be exploited conveniently to be used for swapping between our personalised Clanwar and Public settings. Further, you might have noticed the clanwar.config has no line for setting a password, and that the file cannot be modified if it is to be used in official matches. Also, the clanwar.config necessarily breaks any map rotation, while public.config does not load another one. We can use default_pub.cfg and default_comp.cfg to change passwords and load map rotations:

default_pub.cfg default_comp.cfg
g_password "" // removes password
exec maprotate.cfg
config public
reset_match
g_password "whatever" // applies password
map oasis // or whatever
config clanwar
reset_match

These two files should both be placed in the "ETPro" (or "ETMain") folder, bearing in mind that if you used "+set fs_homepath 27960" in the startup line (as above), then they should be placed in the ETPro folder that is within the 27960 folder. This prevents them being loaded if you have another server running from the same installation.

Now, all you need to do to swap between the configurations is to use the Voting/REF menu's to load "Pub" or "Comp" settings, and everything will happen automatically:

  • Comp will set those pre-supplied settings, and automatically execute default_comp.cfg. This in turn applies your password (likely kicking everyone out if they havent set it), switches map to oasis and then loads clanwar.config, which applies the required settings for official games.
  • Pub will set those other pre-supplied settings, then default_pub.cfg loads, which disables the password requirement, loads your map rotation and then loads public.config which applies your public server settings.

    If you wish to have a third configuration for a second league, it is not quite so straightforward. You would load Comp in the usual way, then you can load the other league's configuration either with rcon (/rcon config theotherconfig) or using Vote as REF (callvote_config theotherconfig). To load an alternative public server setup, the snag is you are going to need RCON to load a different maprotation.

    It is important to note that Comp and Pub voting should be disabled (vote_allow_comp 0 & vote_allow_pub 0) on any public server configurations, for obvious reasons (they will still be available in the REF menu's regardless of these settings). Further, check any other configs for server_autoconfig at anything other than 0, as a setting of 1 or 2 would load Pub and Comp. Finally, remember that loading Comp and Pub loads some settings and you will need to reset those settings that are not as desired.



    'Watchdog' Note

    If for any reason (i.e. error) there is no map loaded, 'com_watchdog_cmd' is applied and this runs whatever commands you have specified to it - this stops ET server sitting in a rather undesirable state of having no map running. I left watchdog out of the server.cfg for simplicity, it's a little fidgety. While in a standard ET (etmain) server you would simply tell it to exec the map rotation, it seems better to also tell it to load the .config in ETPro. For example:

    set com_watchdog_cmd "map oasis;wait 300;config public; wait 300; exec stopwatch.cfg"

    This simply reloads a map (note Oasis in the example is the first map in the stopwatch.cfg example!), reloads the .config and then reloads the map rotation. The 'wait' time is there to allow time for the .config to load fully. Of course you should change the details - the map to whatever the first map is in your rotation, config to whatever config you want loaded, and also the name of the appropriate map rotation. As used in the example, this would set the server back into your 'public server' mode, which might be a problem if it happened during a clanwar, but if the situation arose where watchdog had to kick in during a clanwar then the round is ruined already, just reload into clanwar mode as normal.

    Thanks to fLApZz for this, who found it fixed an issue he was having, where his .config was being unloaded after the first map rotation was completed.



    "Quick" Server Guide (ETPro) written by and © DG, www.rtcw.co.uk
    Last updated 16th December 2004



    Contents

    Enemy Territory & RTCW UK