ET Pro - The Enemy Territory Competition Mod
Discussion Forums General Information Admin Guide Player guide Download/Install Server List

XP/Skills
Stat Saver

If b_statsaver is 1, then player XP, skills, medals, weaponstats, team, class, and weapon selection are all saved across disconnects.
These stats will still be reset whenever the server would normally reset them (e.g. at the beginng of a new campaign).

Skill Locking
If b_noskillupgrades is 1, players may still score XP but are no longer awarded skill upgrades or ranks.
Default skills
Admins may define the default skill levels for players through the cvar b_defaultskills
The values is 7 integers separated by spaces. The skills are defined in this order:
Battle Sense
Explosives and Construction (Engineering)
First Aid (Medic)
Signals (Field Ops)
Light Weapons
Heavy Weapons (Soldier)
Military Intelligence and Scoped Weapons (Covert Ops)

To give everyone default battle sense 2 and light weapons 3, you would do
b_defaultskills "2 0 0 0 3 0 0"

To lock players permanently at those skill levels, you would additionally do
b_noskillupgrades 1
Rank customization

Admins may further refine the skill system by changing amount of XP required to increase rank in each skill. This can be especially useful with per-map configurations.

The XP requirements for each skill level are split up over 7 variables:
b_levels_battlesense
b_levels_covertops
b_levels_engineer
b_levels_fieldops
b_levels_lightweapons
b_levels_medic
b_levels_soldier

Each variable accepts 1-4 integers denoting the amount of XP required for each level. Omitting values will disable any of the levels higher than those specified. A value of -1 for any skill level also disables that particular level, although the associated skills will still be gained when reaching a higher level, if allowed. Leaving the value blank causes the default values to be used: 20 50 90 140.

Examples:
Disable level 3 and 4 engineers:
b_levels_engineer "20 50"
Don't give medics full revive until level 4:
b_levels_medic "20 50 -1 140"
Give everyone binoculars almost immediately:
b_levels_battlesense "5 50 90 140"

Players can see the currently active skill customizations with the skills command.

Stopwatch XP saver

The stopwatch XP saver, which can be toggled with the b_xpstopwatch variable, will keep XP across stopwatch rounds A->B, similar to the way campaign play keeps XP. After both halves of a stopwatch round are complete, XP will be reset.


Default configuration scripts
Per-map config
On map changes, the server looks for a script named mapdefault_mapname.cfg to execute, where mapname is the name of the currently loaded map. If it is not found, it then looks for a script named mapdefault.cfg

As an example, you may use this to disable the fps-killing foliage on the radar map by making two cfg files like this...

mapdefault_radar.cfg:
forcecvar r_drawfoliage 0

mapdefault.cfg
forcecvar r_drawfoliage 1

mapdefault_radar.cfg will be loaded every time the radar map is loaded, and mapdefault.cfg will be loaded for every other map.
Pub/Match config
When Pub settings are voted, the server looks for a script named default_pub.cfg and executes it if found.

When Competition settings are voted, the server looks for a script named default_comp.cfg and executes it if found.

A map_restart is automatically performed when Pub or Comp settings are voted.

Server banners
Rotating server banners are enabled through the cvar b_banners, which specifies the number of banners to display.
If set to 0, it disables rotating banners.

Each banner is defined through the cvar b_bannern, where n is an integer from 1-999.

The location of the banners is defined through the cvar b_bannerlocation:
0 - Player chat area
1 - Left popup area (not recommended)
2 - Centerprint area (where, for example, the 'Arming dynamite...' message is displayed)
3 - Console only
4 - Banner area (the very top of the screen)
The time in seconds between banners is defined through the cvar b_bannertime

Example:
b_banners 3
b_bannerlocation 0
b_bannertime 30
set b_banner1 "This is banner number 1"
set b_banner2 "Banner number 2 is being displayed"
set b_banner3 "Now banner number 3 is shown"

Semiadmin
Semiadmin access is enabled through the cvar b_semiadminlevels, which defines the number of semiadmin levels available.
If set to 0, it disables the semiadmin feature.

Passwords for each semiadmin level are defined through the cvar b_semiadminpassn where n is an integer value from 1-99 representing the semiadmin level.

The rcon commands available for each semiadmin level are defined through the cvar b_semiadmincmdsn where n is an integer value from 1-99 representing the semiadmin level.

Example:
b_semiadminlevels 3
b_semiadminpass1 "password1"
b_semiadmincmds1 "map_restart"
b_semiadminpass2 "anotherpassword"
b_semiadmincmds2 "map_restart clientkick shuffle_teams"
b_semiadminpass3 "level3password"
b_semiadmincmds3 "mute unmute ban map campaign swap_teams"

Note - each semiadmin level password must be different!

Players log in with the command
/sal password or /semiadminlogin password

Once logged in, semiadmins may issue commands with
/sa command or /semiadmin command

Semiadmins may also check their current level and available commands with
/sa or /semiadmin by itself with no parameters.

Shoving
Player shoving is enabled through the cvar b_shove, which defines the amount of knockback. A value of 0 disables shoving.
The cvar b_shove_noz, if set to 1, disables z-axis shoving, so that players cannot use shoving to boost players over walls.

Server watermarks

ET Pro adds the ability for server administrators to place a watermark image on the client's HUD, above the lagometer.   (For examples, see the player guide.)

The watermark display is controlled by 3 variables: The first, b_watermark, specified the filename of the watermark image. The filename used in b_watermark automatically has 'watermark/' prepended to it, so if b_watermark is set to 'ourclan/ourwatermark', the server and client will actually look for 'watermark/ourclan/ourwatermark.

The watermark display is also affected by b_watermarkFadeAfter and b_watermarkFadeTime: b_watermarkFadeAfter specifies the time, in seconds, that the watermark will appear on-screen before fading away (although a value of -1 will prevent it from fading away at all.) The watermark display/fade process will occur every time a map is loaded, so some administrators may prefer to only display the watermark for a moment to ensure it does not obscure the display. Finally, the b_watermarkFadeTime variable specifies how long the fading process will take, allowing administrators to decide how quickly their watermark fades away.

Information on making watermarks

Making watermarks is a fairly simple task, but there are some restrictions and general tips that you should keep in mind.

  • The dimensions of the watermark must be a power of two--for example, 32x32, 64x64, 128x128.
  • The watermark is always drawn at the same size relative to the rest of the display (which is 48x48 pixels at 640x480), but it won't hurt to make the watermark a bit larger than this--players running the game at higher video resolutions will see more detail if that detail exists in the watermark image. Using a watermark size of 128x128 will ensure it looks nice up to 1600x1200 without making the required download very large.
  • Try to keep the filenames unique--as a rough guide, we suggest something like watermark/ourclan/ourwatermark.tga for the filename, placed inside a pk3 named something like ourclan-watermark.pk3.
  • For best results, use alpha channels (transparent areas) where possible in the image--you can make part of the watermark partly or fully transparent, allowing the game view to be seen through the transparent parts of the watermark.
More detailed information can be found in this forum thread.

Extended weapons controls

ET Pro gives server administrators more fine-grained control over weapons restrictions: the number of flamethrowers, mobile MG42s, mortars, and panzerfausts allowed for each team can be individually adjusted.

Heavy weapons restrictions are split up into the following variables:
team_maxFlamers
team_maxMG42s
team_maxMortars
team_maxPanzers
team_maxMines

Setting any of these variables to -1 disables the limitation, while a value of 0 or greater specifies the number of each weapon that each team is allowed to use.

Example:
To disable panzerfausts entirely and allow 1 flamethrower on each team, one would use:
team_maxPanzers 0
team_maxFlamers 1

Misc weapon restrictions:
b_riflegrenades (default 1, enabled) allows admins to enable/disable rifle grenades (useful for LMS/OLTL games)


Multiview

The multiview system from OSP has been added to ET Pro. Multiview functionality can be toggled with b_multiview. Multiview may sometimes take more bandwidth and CPU usage when enabled, so administrators whose servers are using most of the available CPU power or bandwidth may wish to leave it disabled.

For additional information on multiview, see the player guide.


Summary of new console commands
commanddescription
b_cvaremptyResets all ET Pro cvars to their defaults
bp <text>Sends text to all clients to be displayed in the banner area.
cancelvoteCancels any vote in progress.
cp <text>Sends text to all clients to be displayed in the centerprint area.
forcecvar <cvarname> <value>Forces all clients to set the cvarname cvar to value.  This will not prevent clients from changing the cvar after forcecvar is executed.
guidsDisplays a list of players and their guids, similar to the guids command for clients.
listcsDumps all of the current configstrings to the server console.  Mostly useful as a debugging or map making tool.
passvotePasses any vote in progress
refAllows access to referee commands from the server console.
setcs <num> <value>Sets the value of configstring number num to value
timeReports the game state and round time remaining
qsay <text>Sends text to all clients to be displayed in the chat area without the 'server: ' prefix

Summary of new cvars
variabledefaultfunction
b_banners0Defines the number of rotating server banners.  A value of 0 disables this feature.
b_bannernundefinedb_bannern defines the text to be displayed for banner number n in the banner rotation, where n is an integer between 1-999.
b_bannerlocation0Defines the location where banners are displayed:
0 - Player chat area
1 - Left popup area (not recommended)
2 - Centerprint area (where, for example, the 'Arming dynamite...' message is displayed)
3 - Console only
4 - Banner area (the very top of the screen)
b_bannertime0Defines the duration between banners in seconds.
b_brokenlogtimestamps0Controls whether timestamps are written in a fixed-width 7 character space. This should only be enabled if you are using a log file analyzer that requires the broken timestamps in order to function properly.
b_campaignFileundefinedAllows admins to specify a specific campaign file, so that clients aren't forced to download every campaign/map pk3 on the server.
The syntax is scripts/xxx.campaign
More usage tips are here.
b_defaultskillsundefinedDefines the skill levels granted to new players when they connect.  This variable takes 7 space-separated integers to define each starting skill level in the following order: 1: Battle Sense, 2: Explosives and Construction (Engineering), 3: First Aid (Medic), 4: Signals (Field Ops), 5: Light Weapons, 6: Heavy Weapons (Soldier), 7: Military Intelligence and Scoped Weapons (Covert Ops).
b_intermissiontime60Defines the duration of the end-round intermission, in seconds.
b_levels_battlesenseundefinedTakes 4 integers separated by spaces which define the amount of XP required to reach each Battle Sense level. Setting a level to -1 disables that level.
b_levels_covertopsundefinedTakes 4 integers separated by spaces which define the amount of XP required to reach each Covert Ops level. Setting a level to -1 disables that level.
b_levels_engineerundefinedTakes 4 integers separated by spaces which define the amount of XP required to reach each Engineering level. Setting a level to -1 disables that level.
b_levels_fieldopsundefinedTakes 4 integers separated by spaces which define the amount of XP required to reach each Signals level. Setting a level to -1 disables that level.
b_levels_lightweaponsundefinedTakes 4 integers separated by spaces which define the amount of XP required to reach each Light Weapons level. Setting a level to -1 disables that level.
b_levels_medicundefinedTakes 4 integers separated by spaces which define the amount of XP required to reach each First Aid level. Setting a level to -1 disables that level.
b_levels_soldierundefinedTakes 4 integers separated by spaces which define the amount of XP required to reach each Heavy Weapons level. Setting a level to -1 disables that level.
b_logrealtimestamps1Controls whether or not the time of day is written to server log files instead of the server uptime.
b_mapscriptdirectoryundefinedDefines the directory to look for default .cfgs and map scripts when the map loads.
b_match_warmupjoin0Controls whether players are permitted to join a team during the warmup countdown.
b_moverscale1.0Controls the speed of all movers (e.g. tanks, trucks, etc.) on a map.  A mover's normal speed will be multiplied by this value to determine the actual speed used.
b_multiview0When set to 1, multiview functionality is enabled on the server, enabling players to spectate more than one person simultaneously.
b_noskillupgrades0If set to 1, players may still score XP but are no longer awarded skill upgrades or rank promotions.
b_riflegrenades1If set to 1, enables rifle grenades. If 0, disables rifle grenades.
b_privatemessages2Defines the minimum number of allowable characters for name matching for private messages.
A value of 0 disables private messaging entirely.
b_semiadminlevelsundefinedDefines the number of semiadmin levels available.  If 0 or undefined, the semiadmin feature is disabled.
b_semiadminpassnundefinedDefines the password for semiadmin level n.  The value of n may be an integer from 1-99.
Note!  Each semiadmin password must be different!
b_semiadmincmdsnundefinedDefines the console commands available for semiadmin level n.  The value of n may be an integer from 1-99.
b_shove80Defines the amount of knockback from player shoving.  A value of 0 disables shoving completely.
b_shove_noz1When set to 1, Z-axis (vertical) shoving is disabled.  This prevents players shoving others over walls.
b_showClientCmds0When set to 1, commands the client sends to the server are logged. This is primarily intended for applications which parse the log files to generate game statistics.
b_spectatorNames1Configures whether spectators are allowed to see the player name popup when looking at another player.  This variable accepts the following values:
0 - No spectator names.
1 - Spectator names shown to referees and semiadmins.
2 - Spectator names shown to all players
b_statsaver1When set to 1, the Stat Saver feature is enabled, and a player'sXP, skills, medals, weapon stats, team, class, and weapon selection will be saved, even if a player disconnected during the game.  All stats will be reset whenever the game normally does a stats reset (e.g. when starting a new campaign.)
b_stickycharge1When set to 1, per-class charge bars become 'sticky': players will only have their charge bar refilled on respawn if they were killed by an enemy player.
b_xpstopwatch0When enabled, stats are saved across both rounds of a stopwatch match.
b_watermarkundefinedControls the filename used for the watermark image.
b_watermarkFadeAfter-1Controls how long the watermark will stay on the screen before fading away, in seconds. A value of -1 means that the watermark will not fade off.
b_watermarkFadeTime1.5Controls how long the watermark takes to fade away, in seconds.
team_maxFlamers-1Configures a limit on the number of flamethrowers allowed on each team.  The default of -1 means 'no limit.'
team_maxMG42s-1Configures a limit on the number of mobile MG42s allowed on each team.  The default of -1 means 'no limit.'
team_maxMines10Configures a limit on the number of mines allowed on each team.  The default is 10.
team_maxMortars-1Configures a limit on the number of mortars allowed on each team.  The default of -1 means 'no limit.'
team_maxPanzers-1Configures a limit on the number of panzerfausts allowed on each team.  The default of -1 means 'no limit.'