Silent Mod Server Cvar: Difference between revisions

From MyGamingTalk
 
(192 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= Announcements and Messages =
= silEnT Mod Anti Cheat =


 
== g_silentac ==
== g_privateMessages ==


;Description
;Description
If set to 1, players can send private messages to one another with the /m playername/slot command.
Enables actions based on silEnT AntiCheat. The g_cheatLog will always have one line telling if a player is found with cheats. The cheat detection's are based mostly on heuristically detecting hacking techniques. If you suspect a false positive, please supply the silEnT team a method to reproduce it. Do note that this feature has been in extensive testing well before the 0.8.0 version. When silEnT AC is set to autoban busted players, sv_sac cvar auto changes it value to 1. sv_sac is read only variable. This cvar can be used by external server trackers to enable/disable server anti cheat status on their lists. We recommend setting the value to 2.
;Parameter
: Type: '''[0|1]'''


:0 Disable Private Messages
'''Type:''' [0|1|2]
:1 Enable Private messages


:Default: '''0'''
'''Parameters:'''


'''Note:''' Clients can reject private message from other individual clients with the /ignore client command. Also, private messages can be disabled from individuals/levels using shrubbot flag '/'.
1 Show player AntiCheat status in the !finger output.


== g_spreeOptions  ==
2 Automatically ban players for 365 days with cheats.


'''Description:'''<br>
'''Default:''' 0


Options to control the display of killingsprees.  
'''Minimum required version:''' 0.8.0


'''Type''': bitmask
== g_clientBinaries ==


'''Parameters:'''  
'''Description:'''


1 Enable killingsprees
silEnT mod can be configured to not allow players with unknown client binaries to play on the server. This cvar controls the server behaviour when the client binary is not one of the recognized ones.


2 Enable killingspree ends
'''List of recognized binaries:'''
*Official client binaries
*Binary edited executables from etmaster.net
*Equivalent to etmaster.net binary edited executables from BigBear
*ETPatchSelector binaries
*Official ET Legacy b4
*Official ET Legacy b5
*Many ET Legacy binaries including RC1 versions.


4 Enable multikills
'''Type:''' bitmask


8 When set, a top 3 current killing sprees message will be printed every minute, similar to binoc masters, and a map's longest killing spree will be printed every two minutes
'''Parameters:'''


16 At the beginning of the intermission the highest spree and the 3 highest sprees which are still active will be shown
1 Don't allow players with unknown client executables.<br>
2 Log unknown executables to the g_cheatLog. Note, if the server does not allow unknown client binaries the log message will be different for message.<br>
4 Report unknown executables to admin chat. Note, if the server does not allow unknown client binaries the players will not be reported to admin chat.<br>


32 /kill will end a spree
'''Default:''' 0


64 Teamswitching will end a spree
'''Minimum required version:''' 0.5.2


128 Multikill messages will be delayed g_multikillTime milliseconds, to prevent the doublekill -&gt; multikill -&gt; megakill -&gt; etc. flooding
'''Changelog:'''


256 Killing bots doesn't count for multikills or killingsprees (Note: they DO count for ending kill/deathsprees)
0.6.2 - If the flag 4 is set, known cheat binaries are clearly reported to the admin chat.


512 Display the map and overall spree record when entering intmission
== g_identOptions ==


1024 Summary: don't enable this flag if you don't have enabled g_spreeOptions flag 512 OR g_XPSave flag 16 or Shrubbot flag t
'''Description:'''


Spree records are automatically saved into XPSave file when a map ends. By enabling this flag, you also store the spreerecord at the points where g_XPSave flag 16 would store XP. When you don't have set XPSave flag 16 and g_spreeOptions flag 512 and not allow users to use&nbsp;!spreerecord you should NOT set this flag as it takes some extra resources. When XPSave flag 16 is set this doesn't matter (it actually takes much less resources then). When only g_spreeOptions flag 512 or shrubbot flag t is set it won't do much harm anyway (your server won't explode)
Starting from version 0.3.0, the silEnT mod can be configured to enforce bans using hardware based identification. This is not any fool proof system but it is made to be an addition to the already existing ban methods. The hardware identification cannot be seen in human readable form by admins while on the server. The data that is sent to the server can be seen in the client by writing /cg_ident to the console. The result is a hexadecimal string that changes its value between maps. The format and data used to create the client identification may change between different versions of the silEnT mod. The server can be configured with the g_identOptions server cvar.


2048 Enable revivesprees ( [revive] blocks )
'''Type:''' bitmask


'''Default''': 0
'''Parameters:'''


== g_multikillTime  ==
1 Kick clients that are spoofing the client identification to enter the server


'''Description'''<br>
2 Kick clients that are not sending the identification to the server


The time (in milliseconds) in which two kills should be made in order to count them as multikills.<br>
4 Enforce bans using the identification


'''Type:''' integer<br>'''Default:''' 1000
8 Report all actions taken based on client identification to the adminchat


== g_obituary  ==
16 If a player is caught of circumventing a ban, a new ban is created with for it. The ban reason will have additional (Automated copy of a ban for xxxxxxxx) where xxxxxxxx is replaced with the 8 character PB GUID of the old ban.


'''Description:'''<br>
'''Default:''' 0


This cvar controls will the server send obituary events to the clients. If this is set to 0, no obituary events will be sent. If set to any nonzero value, obituary events will be sent.
== g_ssDirectory ==


'''Type:''' [0|1]
;Description
Officially since 0.9.0. This cvar is required for the Screenshot System (SS) to work correctly. It defines where to store the screenshots. Create "screenshot" folder under silent mod folder and add set g_ssDirectory "screenshot" in your server config. All of screenshots of players will go under this folder.


'''Default:''' 1
'''Type:''' [string]


== g_dropMsg  ==
'''Default:'''


'''Description:'''<br>
'''Minimum required version:''' 0.9.0


Message to add to the drop screen when a client is kicked or banned.&nbsp;<br>
= Announcements and Messages =


'''Type:'''&nbsp;String<br>


'''Default:''' " "
== g_privateMessages ==


'''Example:''' g_dropMsg&nbsp;"Please protest ban on forums"
'''Description:'''<br>


== g_landmineNotifyType  ==
If set to 1, players can send private messages to one another with the /m playername/slot command.


'''Description:'''  
'''Type:''' [0|1]


Decide which landmine reveal notifications server should send.&nbsp;
'''Parameters:'''


Server can send two types of landmines reveal notification. Standard one, generated (sent) for each landmine revealed and summary one,&nbsp;which is sent after player spotting landmines stops using binoculars.&nbsp;It's generated after each binculars zoom.
0 Disable Private Messages


'''Type:''' [0|1|2|3]<br>
1 Enable Private messages


'''Parameters:'''  
'''Default:''' 0


0 Only standard notfications (for each landmine revealed).
'''Note:''' Clients can reject private message from other individual clients with the /ignore client command. Also, private messages can be disabled from individuals/levels using shrubbot flag '/'.


1 Only single summary notifications for one binocs zoom. New type of notification. For example: during one binocs zoom, 3 mines were revealed, but only 1 summary notification is sent. It contains information: 3 mines spotted by "player name" and last one was in location "some location".
== g_spreeOptions  ==


2 Don't send any landmine notifications.
'''Description:'''<br>


3 Send all notifications. For example: for 3 spotted landmines send 4 notifications (3 for each landmine + 1 summary notification).  
Options to control the display of killingsprees.  


'''Default:''' 3
'''Type''': bitmask


'''Recommended:''' 1
'''Parameters:'''  


== g_settings (Removed in 0.4.0) ==
1 Enable killingsprees


'''Description:'''<br>
2 Enable killingspree ends


This should be set to the name of your settings.cfg file if you want to enable banners. See settings documentation for more information about this file.<br>
4 Enable multikills


'''Type:''' string
8 When set, a top 3 current killing sprees message will be printed every minute, similar to binoc masters, and a map's longest killing spree will be printed every two minutes


'''Default:''' ""
16 At the beginning of the intermission the highest spree and the 3 highest sprees which are still active will be shown


'''Example:'''<br>set g_settings "settings.cfg"<br>
32 /kill will end a spree


'''Minimum required version:''' 0.2.0
64 Teamswitching will end a spree


'''Changelog'''
128 Multikill messages will be delayed g_multikillTime milliseconds, to prevent the doublekill -&gt; multikill -&gt; megakill -&gt; etc. flooding


0.4.0 The cvar was renamed to g_banners to make it clearer for what it is used.
256 Killing bots doesn't count for multikills or killingsprees (Note: they DO count for ending kill/deathsprees)


== g_banners  ==
512 Display the map and overall spree record when entering intmission


'''Description:'''<br>
1024 Summary: don't enable this flag if you don't have enabled g_spreeOptions flag 512 OR g_XPSave flag 16 or Shrubbot flag t


This should be set to the name of your banners.cfg file if you want to enable banners. See settings documentation for more information about this file.<br>
Spree records are automatically saved into XPSave file when a map ends. By enabling this flag, you also store the spreerecord at the points where g_XPSave flag 16 would store XP. When you don't have set XPSave flag 16 and g_spreeOptions flag 512 and not allow users to use&nbsp;!spreerecord you should NOT set this flag as it takes some extra resources. When XPSave flag 16 is set this doesn't matter (it actually takes much less resources then). When only g_spreeOptions flag 512 or shrubbot flag t is set it won't do much harm anyway (your server won't explode)


'''Type:''' string
2048 Enable revivesprees


'''Default:''' ""
'''Default''': 0


'''Example:'''<br>set g_banners "banners.cfg"<br>
== g_multikillTime  ==


'''Minimum required version:''' 0.4.0
'''Description:'''<br>


= User Database, XP Save, Shrubbot and Bans =
The time (in milliseconds) in which two kills should be made in order to count them as multikills.<br>


== g_dbDirectory ==
'''Type:''' integer<br>'''Default:''' 1000


'''Description:'''
== g_obituary  ==


If set the server stores various information about server statistics, map information, sprees, users, bans and XP save. To use any of the functionalities, this must be set. The cvar defines a directory and only a directory that is relative to fs_game. All the used filenames are predefined and cannot be changed. For security reasons, this cvar must be set during server initialisation. (i.e. It may not be changed when the server is running.) In this directory there can be 5 files, depending of other server settings.
'''Description:'''<br>


* userdb.db is a binary format file that contain all the required information about shrubbot users and also all saved XP if the server is set to save XP
This cvar controls will the server send obituary events to the clients. If this is set to 0, no obituary events will be sent. If set to any nonzero value, obituary events will be sent.
* userxdb.db is a binary format file that contain related to players playing on the server
* serverstat.cfg is a human readable file that contain server statistics and map sprees if the server is set to store them
* shrubbot.cfg is a human readable file that contain level configurations, custom commands and bans
* mapvoteinfo.cfg This file contains information relating g_gametype 6, which is map voting.  


'''Type:''' [0|1]


All the required files will be created automatically to the folder when needed if there aren't any suitable files already present.
'''Default:''' 1


You can freely edit the human readable files by hand as long as their correct format remains and the server is notified of the changes using appropriate shrubbot commands. With the exceptions of serverstat.cfg and mapvoteinfo.cfg that will be overwritten by the server. If you want to hand edit the values of these files, the server be shutdown.
== g_dropMsg  ==


'''Type:''' string
'''Description:'''<br>


'''Default:''' "database"
Message to add to the drop screen when a client is kicked or banned.&nbsp;<br>


'''Note:'''
'''Type:'''&nbsp;String<br>


The server reads the value of this cvar only from the config file or from the command line. It cannot be edited using RCON. If you want to store all the files in the same root directory where all the pk3 files and binaries are, you can set this cvar to value ".". It will then use the fs_game directory.
'''Default:''' " "


== g_dbUserMaxAge ==
'''Example:''' g_dropMsg&nbsp;"Please protest ban on forums"


'''Description:'''
== g_landmineNotifyType  ==


The number of seconds that player is saved to the database since the player has last visited on the server.
'''Description:'''


The database cleaning is done during intermission so this should not cause any performance problems when actions are taken. However, by setting this value to 0 or not setting the value at all, will disable the feature.
Decide which landmine reveal notifications server should send.&nbsp;
For servers with high database sizes, this can improve performance since users that are not needed will be removed automatically.


You can use a modifiers with this value. Here are some examples:
Server can send two types of landmines reveal notification. Standard one, generated (sent) for each landmine revealed and summary one,&nbsp;which is sent after player spotting landmines stops using binoculars.&nbsp;It's generated after each binculars zoom.  


set g_dbUserMaxAge "1o" - 1 month
'''Type:''' [0|1|2|3]<br>


set g_dbUserMaxAge "2w" - 2 weeks
'''Parameters:'''


set g_dbUserMaxAge "5d" - 5 days
0 Only standard notfications (for each landmine revealed).


set g_dbUserMaxAge "36h" - 36 hours
1 Only single summary notifications for one binocs zoom. New type of notification. For example: during one binocs zoom, 3 mines were revealed, but only 1 summary notification is sent. It contains information: 3 mines spotted by "player name" and last one was in location "some location".


set g_dbUserMaxAge "120m" - 120 minutes
2 Don't send any landmine notifications.


'''Type:''' integer
3 Send all notifications. For example: for 3 spotted landmines send 4 notifications (3 for each landmine + 1 summary notification).
'''Default:''' 0


== g_XPSave ==
'''Default:''' 3


'''Description:'''
'''Recommended:''' 1


Controls XP save behaviours.
== g_banners  ==


'''Type:''' bitmask
'''Description:'''<br>


'''Parameters:'''
This should be set to the name of your banners.cfg file if you want to enable banners. See [[Silent Banners]] for more information about this file.<br>


1 Store xp when a client disconnects. This is always required for the XP save to work.
'''Type:''' string


2 Don't reset xp to the pre-map start values on a map restart, shuffle, etc.
'''Default:''' ""


4 Never reset xp (ever).
'''Example:'''<br>set g_banners "banners.cfg"<br>


8 Force the disconnection of clients with the same GUID as the connecting client. This is useful in saving the stored XP of players with unreliable network connections since they should still get their stored XP even if reconnecting immediately with a new IP address.
'''Minimum required version:''' 0.4.0
This feature is enabled by default unless you have sv_wwwDlDisconnected enabled. sv_wwwDlDisconnected seems to interfere with this feature, so do not enable this flag if you change pk3's on your server often because stored XP will be lost over disconencted downloads.


16 Store the XP at restarts, nextmaps, mapvotes, campaignvotes and similar cases.
== g_recognition ==


'''Default:''' 0
'''Description:'''


== g_XPSaveMaxAge_xp ==
Enables additional recognition notifications for players doing objective, e.g. for planting dynamite, disarming it, destroying objective.


'''Description:'''
'''Type:''' [0|1]


The number of seconds that must pass without saving XP from this player before XPSave forgets his/her xp skills. Admins can adjust the amount of required XP to save with g_XPSaveMinXP server cvar.
'''Parameters:'''


You can use a modifier with this value. Here are some examples:
0 Additional recognition notifications disabled.


set g_XPSaveMaxAge_xp "1o" - 1 month
1 Additional recognition notifications enabled.


set g_XPSaveMaxAge_xp "2w" - 2 weeks
'''Default:''' 1


set g_XPSaveMaxAge_xp "5d" - 5 days
= User Database, Shrubbot and Bans =


set g_XPSaveMaxAge_xp "36h" - 36 hours
== g_dbDirectory ==


set g_XPSaveMaxAge_xp "120m" - 120 minutes
'''Description:'''


'''Type:''' integer
If this cvar is set, the server stores various information about server statistics, map information, sprees, users, bans and XP save to the location pointed by this cvar. The directory defined by this cvar is relative to the fs_game directory. Absolute paths can not be used. All the used file names in the g_dbDirectory are predefined, and cannot be changed. For security reasons, this cvar must be set during server initialization. (i.e. It can not be changed while the server is running.) The following files are stored into this directory:


'''Default:''' 1d
* userdb.db - This is a binary format file that contains all the basic information about shrubbot users and also all saved XP if the server is set to save XP
* userxdb.db - This is a binary format file that contains information related to players playing on the server
* useradb.db - This is a binary format file that contains player aliases.
* serverstat.cfg; This is a human readable file that contain server statistics and map sprees if the server is set to store them
* shrubbot.cfg - This is a human readable file that contain level configurations, custom commands and bans. This file is auto-created if it does not exist and used functionality requires it, but admins usually to edit this file for the configuration of their server.
* mapvoteinfo.cfg - This file contains information relating g_gametype 6, which is map voting.


'''Note:''' If g_XPSaveMaxAge is less than g_XPSaveMaxAge_xp, g_XPSaveMaxAge will be used.


== g_XPSaveMaxAge ==
All the required files will be created automatically to the directory when needed if the files don't already exist. silEnT mod will not overwrite userdb.db, userxdb.db or useradb.db files if files with those names exist, but the files are not suitable for use. In such case, the server log will have information about the failure to open the file and features requiring the missing files are disabled.


'''Description:'''
You can freely edit the human readable files by hand as long as their correct format remains. The shrubbot.cfg can be edited even while the server is running as long as the !readconfig shrubbot command is run before the map changes. Otherwise the changes to the file will be lost. If you want to hand edit the contents of the serverstat.cfg or mapvoteinfo.cfg files, the server must be shutdown to not lose the changes.


The number of seconds that must pass without saving XP from this player before XPSave forgets his/her skills/killrating/playerrating/mute status. Admins can adjust the amount of required XP to save with g_XPSaveMinXP server cvar.
'''Type:''' string


You can use a modifier for this value. Here are some examples:
'''Default:''' "database"


set g_XPSaveMaxAge "1o" - 1 month
'''Note:'''


set g_XPSaveMaxAge "2w" - 2 weeks
The server reads the value of this cvar from the config file only during the server start, or alternatively from the server start command parameters. It cannot be changed using RCON. If you want to store all the files in the same root directory where all the pk3 files and binaries are, you can set this cvar to value ".". It will then use the fs_game directory.


set g_XPSaveMaxAge "5d" - 5 days
== g_dbUserMaxAge ==


set g_XPSaveMaxAge "36h" - 36 hours
'''Description:'''


set g_XPSaveMaxAge "120m" - 120 minutes
The number of seconds that player is saved to the database since the player has last visited on the server.


The database cleaning is done during intermission so this should not cause any performance problems when actions are taken. However, by setting this value to 0 or not setting the value at all, will disable the feature.
For servers with high database sizes, this can improve performance since users that are not needed will be removed automatically.


See also g_XPSaveMaxAge_xp
You can use a modifiers with this value. Here are some examples:


'''Type:''' integer
set g_dbUserMaxAge "1o" - 1 month


'''Default:''' 1w
set g_dbUserMaxAge "2w" - 2 weeks


== g_XPSaveMinXP ==
set g_dbUserMaxAge "5d" - 5 days


'''Description:'''
set g_dbUserMaxAge "36h" - 36 hours


The increment of XP that is required for the time of the latest XP save to get updated. The silEnT mod separates the XP save and connection times so that players who visit spectators without playing will not be removed by the g_dbUserMaxAge but can still lose their stored XP if they do not play. Admins can adjust the requirement with this value. Using -1 will disable the requirement and XP save will consider every connect valid for the XP save. Using value 0, will consider XP save valid if the player has gained even 1 XP point during the map. Please note that the this value is only for one map and using high values may cause some players to not achieve enough XP to get their last stored XP time to get updated and also new XP to get saved. Also notice that this does not prevent SMG weapon statistics to get updated but it can prevent class XP and rating values to get updated into the database.
set g_dbUserMaxAge "120m" - 120 minutes


'''Type:''' integer
'''Type:''' integer


'''Default:''' -1
'''Default:''' 0
 
'''Note:'''


'''Minimum required version:''' 0.5.0
The server reads the value of this cvar only from the config file executed before the mod launches the first time or from the command line. It cannot be edited using RCON.


== g_maxXP ==
== g_dbMaxAliases ==


'''Description:'''
'''Description:'''


This is a vicious cvar that will reset a players XP once their overall XP score reaches it.
The silEnT mod can store player aliases in an additional database. To enable this database, set this value to higher then 0. If this value is a positive integer, it defines how many aliases are stored in the database for one player. If the player has more aliases then this value, the oldest aliases are deleted.
 
Set this to -1 to disable it.
 


'''Type:''' integer
'''Type:''' integer


'''Default:''' -1
'''Default:''' 0


== g_maxXPResetWarn ==
'''Minumum required version:''' 0.6.0


'''Description:'''
'''Note:'''


Displays a message warning players whose XP is close to being reset due to the g_maxXP setting. The warning is displayed every thirty seconds once the warning threshold is passed.
This cvar can be set only at startup, before the mod launches. It cannot be changed on a live server using rcon.


This setting can have an integer value (eg, 950), in which case it means that the player will be warned every thirty seconds once he has more than 950 XP.
== g_minCommandWaitTime ==


This setting can also have percentage value (eg, "90%"), and that will cause the warnings to start when the player reaches 90% of g_maxXP XP.
'''Description:'''


If you specify a negative value, players will be warned when that offset is hit. For example:
Time you have to wait between using 2 shrubbot commands in milliseconds.
 
For a value of -75, warnings will to display then players have g_maxXP - 75 XP
 
For a value of -2%, warnings will display when players have 98% of g_maxXP
 
Set this to 0 to disable it.


'''Type:''' integer
'''Type:''' integer
Line 310: Line 308:
'''Default:''' 0
'''Default:''' 0


== g_damageXP ==
== g_tyranny ==


'''Description:'''
'''Description:'''


Optionally enables the awarding of XP based upon the amount of damage a player has done to the opposing team.
This cvar controls the use of administrator commands that could be used by admins to cheat or abuse players. If it is set to 0 you will not be able to use commands on your server such as !gib, !slap, !burn, etc.


'''Type:''' [0|1|2]
Also, you will not be able to use g_logOptions flag 256 (log private messages) unless g_tyranny is enabled.


'''Parameters:'''
g_tyranny must also be enabled in order to specify a client in using the 'playsound' server command.
 
'g_tyranny' and its value appear in the serverInfo string to serve as a warning for perspective players.


0 Disabled: use normal ET XP awarding methods
'''Type:''' [0|1]


1 1 point of XP is awarded per g_damageXPLevel points of damage done. The XP is placed in the skill category of the weapon used. When this mode is enabled, kills (regardless of method) are awarded a fixed value of 1 point of XP.
'''Default:''' 1


2 1 point of XP is awarded per g_damageXPLevel points of damage done. The XP is placed in the Battle Sense category. Normal XP amounts are awarded for kills (typically 3-5 XP).
'''Note:'''


'''Default:''' 0
If you enable this, you MUST do so immediately when the server starts (before the first map is loaded). This means putting "set g_tyranny 1" in the .cfg file that is exec'ed on server start. If you try to change this on a running server, you will get the message "g_tyranny is read only."


== g_damageXPLevel ==
== g_warningOptions ==


'''Description:'''
'''Description:'''


This setting determines the amount of damage that a player must do to earn 1 point of XP. See g_damageXP for additional information.
This cvar changes the behaviour of the shrubbot !warn command. By setting flag 1 or 2 you activate the advanced warning (storage) system


'''Type:''' integer
'''Type:''' bitmask


'''Default:''' 50
'''Parameters:'''


== g_XPDecay ==
1 Link stored warnings to the guid of a player


'''Description:'''
2 Link stored warnings to the ip of the player


This is a bitmask that controls the XP decay feature.
4 Remove the oldest warning when the total maximum ammount of warnings is reached


See also g_XPDecayRate.
8 Auto-kick a player for 2 minutes when he has more than g_maxWarnings warnings


'''Type:''' bitmask
16 Allow clients to see their own warnings with the /warnings command


'''Parameters:'''
'''Default:''' 0


1 Enable XP Decay
== g_maxWarnings ==


2 Do not decay a player's XP when they are disconnected from the server
'''Description:'''


4 Do not decay a player's XP for the class they are currently playing as (e.g. Medic).
The ammount of warnings that can be stored for 1 player.


8 Do not decay a player's XP while they are spectating
'''Type:''' integer


16 Do not decay a player's XP during warmup/intermission
'''Default:''' 3


32 Do not decay a player's XP when he/she is playing. This means that they are on a Allies or Axis and the game is active.
== g_warningDecay ==
 
'''Description:'''


64 Do not decay a player's Battle Sense XP when he/she is playing.
The time in hours that a warning will be stored.


128 Do not decay a player's Light Weapons XP when he/she is playing.
'''Type:''' integer


'''Default:''' 0
'''Default:''' 24


== g_XPDecayRate ==
== g_autoTempBan ==


'''Description:'''
'''Description:'''


This is the rate (in skillpoints per second) that XP skill points for each skill will decay when g_XPDecay is enabled.
When set, anyone kicked for the reasons you specify, will be temporarily banned for g_autoTempBanTime seconds.


Setting this to 0.1 would result in a player losing 6 points per minute IN ALL SKILLS, so up to 42XP per minute if the player has skill points for each skill.
'''Type:'''bitmask


You can use a modifier with this value. Here are some examples:
'''Parameters:'''


set g_xpDecayRate "5000/o" - Decay 5000xp per skill per month
1 Tempban when reaching g_teamDamageRestriction


set g_xpDecayRate "1000/w" - Decay 1000xp per skill per week
2 Tempban when someone is kicked by a shrubbot admin (using the !kick command). A normal shrubbot !kick kicks for 120 seconds


set g_xpDecayRate "500/d" - Decay 500xp per skill per day
4 Tempban when someone is kicked by the advanced warning system. A normal kick by the warning system lasts 120 seconds


set g_xpDecayRate "40/h" - Decay 40xp per skill per hour
'''Default:''' 0


set g_xpDecayRate "2/m" - Decay 2xp per skill per minute
'''Changelog:'''


'''Type:''' float
Specifically in version 0.5.0, this feature is bugged and can cause broken shrubbot.cfg.


'''Default:''' 0.0
== g_autoTempBanTime ==
 
== g_XPDecayFloor ==


'''Description:'''
'''Description:'''


This is the minimum that any particular skill can be reduced to by g_XPDecay.
The number of seconds kicked for when g_autoTempBan is set.


For example, setting this to 140.0 will ensure that no player will ever lose rank or skill levels due to g_XPDecay.
'''Type:''' integer
 
'''Type:''' float


'''Default:''' 0.0
'''Default:''' 1800


== g_minCommandWaitTime ==
== g_minConnectLevel ==


'''Description:'''
'''Description:'''


Time you have to wait between using 2 shrubbot commands in milliseconds.
The minimum shrubbot adminlevel required for players to be able to connect.


'''Type:''' integer
'''Type:''' integer
Line 414: Line 412:
'''Default:''' 0
'''Default:''' 0


== g_tyranny ==
'''Note:'''
 
This only works for positive levels, any value <= 0 will allow everyone to connect. Bots won't be able to connect either.
 
== g_greetingPos ==


'''Description:'''
'''Description:'''


This cvar controls the use of administrator commands that could be used by admins to cheat or abuse players. If it is set to 0 you will not be able to use commands on your server such as !gib, !slap, !burn, etc.
Location where the shrubbot greetings are displayed.
 
'''Type:''' [0|1|2|3|4]


Also, you will not be able to use g_logOptions flag 256 (log private messages) unless g_tyranny is enabled.
'''Parameters:'''


g_tyranny must also be enabled in order to specify a client in using the 'playsound' server command.
0 Chat area


'g_tyranny' and its value appear in the serverInfo string to serve as a warning for perspective players.
1 Center of screen


'''Type:''' [0|1]
2 Left notification area


'''Default:''' 1
3 Top of the screen


'''Note:'''
4 Console only


If you enable this, you MUST do so immediately when the server starts (before the first map is loaded). This means putting "set g_tyranny 1" in the .cfg file that is exec'ed on server start. If you try to change this on a running server, you will get the message "g_tyranny is read only."
'''Default:''' 0


== g_warningOptions ==
== g_adminProtection ==


'''Description:'''
'''Description:'''


This cvar changes the behaviour of the shrubbot !warn command. By setting flag 1 or 2 you activate the advanced warning (storage) system
Starting from silEnT 0.5.0, admins levels can be protected against spoofing. The protection works by establishing trust between the client and the server. The trust must be confirmed by an online human admin for the new trusted admins to gain access to their assigned level. Specific command !confirm is used for it. Do note that establishing the trust between the server and the player is not the same as assigning admin level. In fact, anyone who is capable of recognizing the real admin can be safely allowed to use the !confirm command. The !setlevel command will automatically establish the trust if the admin level protection is enabled and the level is above or equal to the g_protectMinLevel. The admin protection is designed so that only the important admin levels are protected. This mean that levels above the g_protectMinLevel require established trust between the server and the client. Normal guests do not need this. It is also advisable to not set the g_protectMinLevel too low to avoid server load with these admins.


'''Type:''' bitmask
The trust needs to be established only once. After that, the client and the server can negotiate the confirmation silently.


'''Parameters:'''
'''Technical Details:'''


1 Link stored warnings to the guid of a player
The trust is established using one-way hashes. When the !setlevel or !confirm is used on a player, the server generates 2 unique 32 character long values. Both of these values are stored both in the client (silent.dat) and the server database. Their meanings are server identification and a client key.


2 Link stored warnings to the ip of the player
Authentication negotiation:


4 Remove the oldest warning when the total maximum ammount of warnings is reached
1. When the player next time connects to the server, the server sends one of the stored values as server identification and another, newly generated random 32 character value, to initiate the negotiation.


8 Auto-kick a player for 2 minutes when he has more than g_maxWarnings warnings
2. The client will use the server identification value it received from the server to match with the key value associated with the server identification. It will hash the 32 character key value with the supplied random 32 character value and send the result back to the server.


16 Allow clients to see their own warnings with the /warnings command
3. The server, knowing both values, the client key and the random character string it sent, can compare the hash against a hash it generates itself with the same values.


'''Default:''' 0
4. If the hashes match (one supplied from client and the one it just generated), the client is authenticated to his admin level.


== g_maxWarnings ==
'''Type:''' bitmask


'''Description:'''
'''Parameters:'''


The ammount of warnings that can be stored for 1 player.
1 Log succesfull authentications to the cheat log


'''Type:''' integer
2 Log admin spoofing attempts to the cheat log


'''Default:''' 3
4 Report admins waiting for confirmation on their level to the admin chat


== g_warningDecay ==
'''Default:''' 7


== g_autoTempBan ==
'''Minimum required version:''' 0.5.0


== g_autoTempBanTime ==
== g_protectMinLevel ==


== g_minConnectLevel ==
'''Description:'''


== g_greetingPos ==
Starting from silEnT 0.5.0, admins can be protected against spoofing. The protection works by establishing trust between the client and the server if the admin level is higher then the g_protectMinLevel. Setting this to -1 will disable the freature. Do note that when you enable the feature, noone has yet established trust with the server and the first one to have it, must be confirmed by an rcon command. Either !setlevel if the database still doesn't have admins or !confirm if the admin has been set in the database already.


== g_identOptions ==
'''Type:''' integer


== g_adminProtection ==
'''Default:''' -1


== g_protectMinLevel ==
'''Minimum required version:''' 0.5.0
 
= Flood Protection =


== g_floodprotect  ==
== g_muteRename ==


'''Description:'''
'''Description:'''


Enable/disable silEnT flood protect. Flooding means that a client is sending too many messages to the server (vsays, callvotes, etc...). Enabling g_floodprotect disables the engine's sv_floodprotect functionality. If you enable g_floodprotect, make sure you set a value for g_floodthreshold.
If this cvar is set to 1 the muted player won't be allowed to change his name while he is muted.


'''Type:''' [0|1]
'''Type:''' integer


'''Default:&nbsp;'''1
'''Parameters:'''


== g_floodthreshold  ==
0 Disabled. Allow players to change his/her name while he/she is muted.<br>


'''Description:'''
1 Don't allow player to change his/her name while he/she is muted.<br>


The number of messages per second before ignoring the client's messages. Only in effect when g_floodprotect is turned on.
'''Default:''' 0


'''Type:''' Integer<br>
'''Minimium required version:''' 0.8.0


'''Default:''' 6
= XP Save =


== g_floodWait  ==
== g_XPSave ==


'''Description:'''<br>
'''Description:'''


The minimum number of milliseconds between two messages when g_floodprotect is enabled. This is a hard limit so admins aren't allowed to override it. 1000 milliseconds copies sv_floodprotect behaviour. This CVAR should not have a value below 500 in order to keep a public server playable.<br>
Controls XP save behaviours.


'''Type:''' integer<br>
'''Type:''' bitmask


'''Default:''' 1000
'''Parameters:'''


== g_voiceChatsAllowed  ==
1 Store xp when a client disconnects. This is always required for the XP save to work.


'''Description:'''<br>
2 Don't reset xp to the pre-map start values on a map restart, shuffle, etc.


The number of voicechats allowed in minute.<br>
4 Never reset xp (ever).


'''Type:''' integer<br>
8 Force the disconnection of clients with the same GUID as the connecting client. This is useful in saving the stored XP of players with unreliable network connections since they should still get their stored XP even if reconnecting immediately with a new IP address.
This feature is enabled by default unless you have sv_wwwDlDisconnected enabled. sv_wwwDlDisconnected seems to interfere with this feature, so do not enable this flag if you change pk3's on your server often because stored XP will be lost over disconnected downloads.


'''Default:''' 4
16 Store the XP at restarts, nextmaps, mapvotes, campaignvotes and similar cases.


= Player Statistics, Rating and Team Balance =
'''Default:''' 0


== g_stats  ==
== g_XPSaveMaxAge_xp ==


'''Description:'''<br>
'''Description:'''


This is a bitflag cvar used to control the way statistics are handled.<br>
The number of seconds that must pass without saving XP from this player before XPSave forgets his/her xp skills. Admins can adjust the amount of required XP to save with g_XPSaveMinXP server cvar.


'''Type:''' bitmask
You can use a modifier with this value. Here are some examples:


'''Parameters:'''<br>1 When shooting a corpse to gib, do not count it as a hit.<br>2 When shooting a corpse to gib, do not count it as a shot.<br>
set g_XPSaveMaxAge_xp "1o" - 1 month


'''Default:''' 0<br>'''Note:'''&nbsp;Set this to 3 to use the behaviour of etmain and shrubet.
set g_XPSaveMaxAge_xp "2w" - 2 weeks


== g_playerRating_mapPad  ==
set g_XPSaveMaxAge_xp "5d" - 5 days


'''Description:'''
set g_XPSaveMaxAge_xp "36h" - 36 hours


On an silEnT installation with little statistics history, !howfair will not print out very accurate data. g_playerRating_mapPad is a cvar that attempts to stabilize early !howfair results by adding a number of fake wins to each team. If you set it to 50, it starts with Axis = 50, Allies = 50 wins. This yields a map rating of 50% for both teams on that map. For every 2 real games played, 1 map pad value is ignored. So after 100 games, map pad is ignored (replaced with real games).
set g_XPSaveMaxAge_xp "120m" - 120 minutes
 
The higher map pad, the longer the values will stay near 50-50.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 50
'''Default:''' 1d


== g_playerRating_minplayers  ==
'''Note:''' If g_XPSaveMaxAge is less than g_XPSaveMaxAge_xp, g_XPSaveMaxAge will be used.


'''Description:'''<br>
== g_XPSaveMaxAge ==


The minimum number of players that must participate in a map in order for it to count towards each player's player rating.
'''Description:'''


'''Type:''' integer<br>
The number of seconds that must pass without saving XP from this player before XPSave forgets his/her skills/killrating/playerrating/mute status. Admins can adjust the amount of required XP to save with g_XPSaveMinXP server cvar.


'''Default:''' 8
You can use a modifier for this value. Here are some examples:


== g_shuffle_rating  ==
set g_XPSaveMaxAge "1o" - 1 month


'''Description:'''<br>
set g_XPSaveMaxAge "2w" - 2 weeks


Sets the rating system used by shuffle.<br>
set g_XPSaveMaxAge "5d" - 5 days


'''Type:''' [ 1 | 2 | 3 | 4 | 5 ]<br>
set g_XPSaveMaxAge "36h" - 36 hours
'''Parameters:'''


1 Use player XP<br>2 Use the rate at which players have gained XP since connecting.<br>3 Use the killRating (g_killRating must be nonzero)<br>4 Use the playerRating (g_playerRating must be nonzero)<br>5 Use the playerRating (g_playerRating must be nonzero), but take the map into account and give the teams closest to 50/50<br>
set g_XPSaveMaxAge "120m" - 120 minutes


'''Default:''' 3


== g_killRating  ==
See also g_XPSaveMaxAge_xp


'''Description:'''<br>
'''Type:''' integer


When not set to 0, silEnT will track a player's killing ability using an ELO type statistic similar to chess. Each kill will increase a player's kill rating based on how hard the kill was. Killing unskilled players will result in very few points whereas an unskilled player killing a skilled player will result in more points. Kill rating also takes into account the weapon used (less for arty, more for knife).
'''Default:''' 1w


''See also g_shuffle_rating.''
== g_resetXPMapCount  ==


'''Type:''' bitmask<br>
'''Description:'''


'''Parameters:'''
How many maps occur before XP is reset. If g_XPSave flag 4 is set, g_resetXPMapCount is ignored.


1 Use kill rating. A dummy flag since any non-zero value for g_killRating will enable it.<br>2 Make kill rating visible. Players can use /killrating and at the end of each map a message will display the top killers for the map and overall.<br>4 Log files will include the GUIDs of the players involved in kills. This makes kill tracking a lot easier.<br>
'''Note:''' This setting is only valid when the g_gametype is 6 (see Map Voting)


'''Default:''' 3
'''Type:''' integer


== g_playerRating  ==
'''Default:''' 0


'''Description:'''<br>
== g_XPSaveMinXP ==


When not set to non zero positive value, silEnT will track a player's ability to win against good teams using an ELO type statistic similar to chess. Each win will increase a player's rating based on how hard the opposing team was. Skilled teams defeating less skilled teams will result in very few points whereas an relatively low- rated team defeating a good team will result in more points. Player rating also takes into account the number of players on each team (less points when a very large defeats a small one) and which side tends to win more often on the current map (e.g. Allies tend to win tc_base).
'''Description:'''


''See also g_shuffle_rating.''
The increment of XP during one map that is required for the XP gained during the map to get saved and the time of the latest XP save to get updated. The silEnT mod separates the XP save and the connection times so that players who visit spectators without playing will not be removed by the g_dbUserMaxAge but can still lose their stored XP if they do not play. Admins can adjust the requirement with this value. Using -1 will disable the requirement and XP save will consider every connection valid for the XP save. Using value 0, will consider XP save valid if the player has gained even 1 XP point during the map. Please note that the value is only for one map and using high values may cause some players to not achieve enough XP to get their XP updated. Also note, that this does not prevent SMG weapon statistics or rating values to get updated into the database.  


'''Type:''' bitmask<br>
'''Type:''' integer


'''Parameters:'''
'''Default:''' -1


1 Use player rating. A dummy flag since any non-zero value for g_playerRating will enable it.<br>2 Make player rating visible. Players can use /playerrating and at the end of each map a message will display the top player.<br>4 Put player rating on the scoreboard instead of the XP.<br>8 Print out extra info at the end of a round that can be used to further refine the playerrating model.<br>16 The same as flag 8 except a lot more info is output.<br>
'''Minimum required version:''' 0.5.0


'''Default:''' 3
== g_maxXP ==


== g_unevenTeamDiff  ==
'''Description:'''


'''Description:'''<br>
This is a vicious cvar that will reset a players XP once their overall XP score reaches it.


If g_teamForceBalance is set, setting g_unevenTeamDiff will notify all players when team numbers are off by g_unevenTeamDiff or more.  
Set this to -1 to disable it.


''See also g_unevenTeamFreq''


'''Type:''' integer<br>
'''Type:''' integer


'''Default:''' 0<br>
'''Default:''' -1


'''Example''': Set to 0 to disable this feature<br>
== g_maxXPResetWarn ==


== g_unevenTeamFreq  ==
'''Description:'''


'''Description:'''<br>
Displays a message warning players whose XP is close to being reset due to the g_maxXP setting. The warning is displayed every thirty seconds once the warning threshold is passed.


How often the team disparity notification occurs. Only valid when g_unevenTeamDiff is set to a positive value. Value is in seconds.<br>
This setting can have an integer value (eg, 950), in which case it means that the player will be warned every thirty seconds once he has more than 950 XP.


''See also g_unevenTeamDiff''
This setting can also have percentage value (eg, "90%"), and that will cause the warnings to start when the player reaches 90% of g_maxXP XP.


'''Type:''' integer<br>
If you specify a negative value, players will be warned when that offset is hit. For example:


'''Default:''' 30
For a value of -75, warnings will to display then players have g_maxXP - 75 XP


= Class and Player Restrictions =
For a value of -2%, warnings will display when players have 98% of g_maxXP


== team_maxPanzers  ==
Set this to 0 to disable it.


'''Description:'''<br>
'''Type:''' integer


Server cvars team_maxPanzers, team_maxMortars, team_maxFlamers, team_maxMG42s, team_maxGrenLaunchers have identical behaviour.&nbsp;Limits the number of the given weapon per team.&nbsp;
'''Default:''' 0


You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.&nbsp;
== g_damageXP ==


You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down
'''Description:'''


Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!
Optionally enables the awarding of XP based upon the amount of damage a player has done to the opposing team.


'''Example:&nbsp;'''set team_maxFlamers "2"
'''Type:''' [0|1|2]


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 2 flamethrowers, regardless of how many players are on the team
'''Parameters:'''


'''Example:&nbsp;'''set team_maxFlamers "10%"
0 Disabled: use normal ET XP awarding methods


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team with few players (for example, 5) will be able to have 1 flamethrower. They will be able to have their second flamethrower when they have 11 players on the team.
1 1 point of XP is awarded per g_damageXPLevel points of damage done. The XP is placed in the skill category of the weapon used. When this mode is enabled, kills (regardless of method) are awarded a fixed value of 1 point of XP.


'''Example:&nbsp;'''set team_maxFlamers "10%-"
2 1 point of XP is awarded per g_damageXPLevel points of damage done. The XP is placed in the Battle Sense category. Normal XP amounts are awarded for kills (typically 3-5 XP).


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team will not be able to have any flamethrowers until there are 10 players in the team. They will be able to have their second flamethrower when there are 20 players on the team.
'''Default:''' 0


''Set this to -1 to disable limits''
== g_damageXPLevel ==


'''Type:''' integer<br>'''Default:''' -1
'''Description:'''


== team_maxMortars  ==
This setting determines the amount of damage that a player must do to earn 1 point of XP. See g_damageXP for additional information.


'''Description:'''<br>
'''Type:''' integer


Server cvars team_maxMortars, team_maxFlamers, team_maxMG42s, team_maxGrenLaunchers have identical behaviour.&nbsp;Limits the number of the given weapon per team.&nbsp;
'''Default:''' 50


You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.&nbsp;
== g_XPDecay ==


You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down
'''Description:'''


Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!
This is a bitmask that controls the XP decay feature.


'''Example:&nbsp;'''set team_maxMortars "2"
See also g_XPDecayRate.


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 2 flamethrowers, regardless of how many players are on the team
'''Type:''' bitmask


'''Example:&nbsp;'''set team_maxMortars "10%"
'''Parameters:'''


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team with few players (for example, 5) will be able to have 1 flamethrower. They will be able to have their second flamethrower when they have 11 players on the team.
1 Enable XP Decay


'''Example:&nbsp;'''set team_maxMortars "10%-"
2 Do not decay a player's XP when they are disconnected from the server


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team will not be able to have any flamethrowers until there are 10 players in the team. They will be able to have their second flamethrower when there are 20 players on the team.  
4 Do not decay a player's XP for the class they are currently playing as (e.g. Medic).


''Set this to -1 to disable limits''
8 Do not decay a player's XP while they are spectating


'''Type:''' integer<br>'''Default:''' -1
16 Do not decay a player's XP during warmup/intermission


== team_maxFlamers  ==
32 Do not decay a player's XP when he/she is playing. This means that they are on a Allies or Axis and the game is active.


'''Description:'''<br>
64 Do not decay a player's Battle Sense XP when he/she is playing.


You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.&nbsp;
128 Do not decay a player's Light Weapons XP when he/she is playing.


You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down
'''Default:''' 0


Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!
== g_XPDecayRate ==


'''Example:&nbsp;'''set team_maxFlamers "2"
'''Description:'''


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 2 flamethrowers, regardless of how many players are on the team
This is the rate (in skillpoints per second) that XP skill points for each skill will decay when g_XPDecay is enabled.


'''Example:&nbsp;'''set team_maxFlamers "10%"
Setting this to 0.1 would result in a player losing 6 points per minute IN ALL SKILLS, so up to 42XP per minute if the player has skill points for each skill.


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team with few players (for example, 5) will be able to have 1 flamethrower. They will be able to have their second flamethrower when they have 11 players on the team.  
You can use a modifier with this value. Here are some examples:


'''Example:&nbsp;'''set team_maxFlamers "10%-"
set g_xpDecayRate "5000/o" - Decay 5000xp per skill per month


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team will not be able to have any flamethrowers until there are 10 players in the team. They will be able to have their second flamethrower when there are 20 players on the team.
set g_xpDecayRate "1000/w" - Decay 1000xp per skill per week


''Set this to -1 to disable limits''
set g_xpDecayRate "500/d" - Decay 500xp per skill per day


'''Type:''' integer<br>'''Default:''' -1
set g_xpDecayRate "40/h" - Decay 40xp per skill per hour


== team_maxMG42s  ==
set g_xpDecayRate "2/m" - Decay 2xp per skill per minute


'''Description:'''<br>
'''Type:''' float


You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.&nbsp;
'''Default:''' 0.0


You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down
== g_XPDecayFloor ==


Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!
'''Description:'''


'''Example:&nbsp;'''set team_maxMG42s "2"
This is the minimum that any particular skill can be reduced to by g_XPDecay.


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 2 flamethrowers, regardless of how many players are on the team
For example, setting this to 140.0 will ensure that no player will ever lose rank or skill levels due to g_XPDecay.


'''Example:&nbsp;'''set team_maxMG42s "10%"
'''Type:''' float


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team with few players (for example, 5) will be able to have 1 flamethrower. They will be able to have their second flamethrower when they have 11 players on the team.  
'''Default:''' 0.0


'''Example:&nbsp;'''set team_maxMG42s "10%-"


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team will not be able to have any flamethrowers until there are 10 players in the team. They will be able to have their second flamethrower when there are 20 players on the team.
= Flood Protection =


''Set this to -1 to disable limits''
== g_floodprotect  ==


'''Type:''' integer<br>'''Default:''' -1
'''Description:'''


== team_maxGrenLaunchers  ==
Enable/disable silEnT flood protect. Flooding means that a client is sending too many messages to the server (vsays, callvotes, etc...). Enabling g_floodprotect disables the engine's sv_floodprotect functionality. If you enable g_floodprotect, make sure you set a value for g_floodthreshold.


'''Description:'''<br>
'''Type:''' [0|1]


You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.&nbsp;  
'''Default:&nbsp;'''1


You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down
== g_floodthreshold  ==


Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!
'''Description:'''


'''Example:&nbsp;'''set team_maxGrenLaunchers "2"
The number of messages per second before ignoring the client's messages. Only in effect when g_floodprotect is turned on.


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 2 flamethrowers, regardless of how many players are on the team
'''Type:''' Integer<br>


'''Example:&nbsp;'''set team_maxGrenLaunchers "10%"
'''Default:''' 6


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team with few players (for example, 5) will be able to have 1 flamethrower. They will be able to have their second flamethrower when they have 11 players on the team.
== g_floodWait  ==


'''Example:&nbsp;'''set team_maxGrenLaunchers "10%-"
'''Description:'''<br>


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 10% of their players as flamethrowers, and a team will not be able to have any flamethrowers until there are 10 players in the team. They will be able to have their second flamethrower when there are 20 players on the team.  
The minimum number of milliseconds between two messages when g_floodprotect is enabled. This is a hard limit so admins aren't allowed to override it. 1000 milliseconds copies sv_floodprotect behaviour. This CVAR should not have a value below 500 in order to keep a public server playable.<br>


''Set this to -1 to disable limits''  
'''Type:''' integer<br>


'''Type:''' integer<br>'''Default:''' -1
'''Default:''' 1000


== team_maxMedics ==
== g_voiceChatsAllowed  ==


'''Description:'''
'''Description:'''<br>


Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.<br>
The number of voicechats allowed in minute.<br>


You can use a number such as "20%-" for this setting, in which case partial values will be rounded down
'''Type:''' integer<br>


'''Example:&nbsp;'''set team_maxMedics "5"
'''Default:''' 4


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 5 medics, regardless of how many players are on the team
= Player Statistics, Rating and Team Balance =


'''Example:''' set team_maxMedics "15%"
== g_stats  ==


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 15% of their players as medics, and a team with few players (for example, 3) will be able to have 1 medic. They will be able to have their second medic when they have 7 players on the team.
'''Description:'''<br>


'''Example:&nbsp;'''set team_maxMedics "15%-"
This is a bitflag cvar used to control the way statistics are handled.<br>


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 15% of their players as medics, and a team will not be able to have medics until there are 7 players in the team. They will be able to have their second medic when there are 14 players on the team.
'''Type:''' bitmask


''Set this to -1 to disable limits.''
'''Parameters:'''<br>1 When shooting a corpse to gib, do not count it as a hit.<br>2 When shooting a corpse to gib, do not count it as a shot.<br>


'''Type:''' string<br>
'''Default:''' 0<br>'''Note:'''&nbsp;Set this to 3 to use the behaviour of etmain and shrubet.


'''Default:''' -1
== g_playerRating_minplayers  ==


== team_maxEngineers  ==
'''Description:'''<br>


'''Description:'''
The minimum number of players that must participate in a map in order for it to count towards each player's player rating.


Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.<br>  
'''Type:''' integer<br>


You can use a number such as "20%-" for this setting, in which case partial values will be rounded down
'''Default:''' 8


'''Example:&nbsp;'''set team_maxEngineers "5"
== g_shuffle_rating  ==


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 5 medics, regardless of how many players are on the team
'''Description:'''<br>


'''Example:''' set team_maxEngineers "15%"
Sets the rating system used by shuffle.<br>


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 15% of their players as medics, and a team with few players (for example, 3) will be able to have 1 medic. They will be able to have their second medic when they have 7 players on the team.
'''Type:''' [ 1 | 2 | 3 | 4 | 5 ]<br>
'''Parameters:'''


'''Example:&nbsp;'''set team_maxEngineers "15%-"
1 Use player XP<br>2 Use the rate at which players have gained XP since connecting.<br>3 Use the killRating (g_killRating must be nonzero)<br>4 Use the playerRating (g_playerRating must be nonzero)<br>5 Use the playerRating (g_playerRating must be nonzero), but take the map into account and give the teams closest to 50/50<br>


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 15% of their players as medics, and a team will not be able to have medics until there are 7 players in the team. They will be able to have their second medic when there are 14 players on the team.
'''Default:''' 3


''Set this to -1 to disable limits.''
== g_killRating  ==


'''Type:''' string<br>  
'''Description:'''<br>


'''Default:''' -1
When not set to 0, silEnT will track a player's killing ability using an ELO type statistic similar to chess. Each kill will increase a player's kill rating based on how hard the kill was. Killing unskilled players will result in very few points whereas an unskilled player killing a skilled player will result in more points.


== team_maxFieldOps  ==
''See also g_shuffle_rating.''


'''Description:'''  
'''Type:''' bitmask<br>


Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.<br>
'''Parameters:'''


You can use a number such as "20%-" for this setting, in which case partial values will be rounded down
1 Use kill rating. A dummy flag since any non-zero value for g_killRating will enable it.<br>2 Make kill rating visible. Players can use /killrating and at the end of each map a message will display the top killers for the map and overall.<br>4 Log files will include the GUIDs of the players involved in kills. This makes kill tracking a lot easier.<br>8 Disable kill rating from the score board. This can prevent players from playing for higher kill rating alone. This does not prevent the "killrating" client command enabled with flag 2 from working.


'''Example:&nbsp;'''set team_maxFieldOps "5"


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 5 medics, regardless of how many players are on the team
'''Default:''' 3


'''Example:''' set team_maxFieldOps "15%"
== g_playerRating  ==


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 15% of their players as medics, and a team with few players (for example, 3) will be able to have 1 medic. They will be able to have their second medic when they have 7 players on the team.
'''Description:'''<br>


'''Example:&nbsp;'''set team_maxFieldOps "15%-"
When not set to non zero positive value, silEnT will track a player's ability to win against good teams using an ELO type statistic similar to chess. Each win will increase a player's rating based on how hard the opposing team was. Skilled teams defeating less skilled teams will result in very few points whereas an relatively low- rated team defeating a good team will result in more points. Player rating also takes into account the number of players on each team (less points when a very large defeats a small one) and which side tends to win more often on the current map (e.g. Allies tend to win tc_base).


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 15% of their players as medics, and a team will not be able to have medics until there are 7 players in the team. They will be able to have their second medic when there are 14 players on the team.  
''See also g_shuffle_rating.''


''Set this to -1 to disable limits.''  
'''Type:''' bitmask<br>


'''Type:''' string<br>
'''Parameters:'''


'''Default:''' -1
1 Use player rating. A dummy flag since any non-zero value for g_playerRating will enable it.<br>2 Make player rating visible. Players can use /playerrating and at the end of each map a message will display the top player.<br>4 Put player rating on the scoreboard instead of the XP.<br>8 Print out extra info at the end of a round that can be used to further refine the playerrating model.<br>16 The same as flag 8 except a lot more info is output.<br>
 
'''Default:''' 3


== team_maxCovertOps ==
== g_unevenTeamDiff ==


'''Description:'''  
'''Description:'''<br>


Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.<br>
If g_teamForceBalance is set, setting g_unevenTeamDiff will notify all players when team numbers are off by g_unevenTeamDiff or more.  


You can use a number such as "20%-" for this setting, in which case partial values will be rounded down
''See also g_unevenTeamFreq''


'''Example:&nbsp;'''set team_maxCovertOps "5"
'''Type:''' integer<br>


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to 5 medics, regardless of how many players are on the team
'''Default:''' 0<br>


'''Example:''' set team_maxCovertOps "15%"
'''Example''': Set to 0 to disable this feature<br>


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 15% of their players as medics, and a team with few players (for example, 3) will be able to have 1 medic. They will be able to have their second medic when they have 7 players on the team.
== g_unevenTeamFreq  ==


'''Example:&nbsp;'''set team_maxCovertOps "15%-"
'''Description:'''<br>


&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This will limit each team to having only 15% of their players as medics, and a team will not be able to have medics until there are 7 players in the team. They will be able to have their second medic when there are 14 players on the team.  
How often the team disparity notification occurs. Only valid when g_unevenTeamDiff is set to a positive value. Value is in seconds.<br>


''Set this to -1 to disable limits.''  
''See also g_unevenTeamDiff''


'''Type:''' string<br>  
'''Type:''' integer<br>


'''Default:''' -1
'''Default:''' 30


== g_teamDamageRestriction ==
= Class and Weapon Restrictions =


== g_medicChargeTime ==
'''Description:'''
'''Description:'''


When greater than 0, anybody that has this percentage of hits inflicted on a teammate will automatically be kicked. A minimum of g_minhits hits total required before this is calculated. Client can see current stats for themselves by doing a /damage in console. Implemented to mimic shrub behavior as much as is possible, there are other ways to implement this feature, which may be implemented in addition to current manner.
The base time in milliseconds for how long it takes to fully recharge the medic charge bar. Skill upgrades affect this value during the game.


'''Type:''' integer<br>
'''Type:''' integer


'''Default:''' 0
'''Default:''' 45000


== g_minHits ==
== g_engineerChargeTime ==
'''Description:'''


'''Description:'''<br>
The base time in milliseconds for how long it takes to fully recharge the engineer charge bar. Skill upgrades affect this value during the game.


Minimum number of damaging hits required before calculating if player has reached g_teamDamageRestriction threshold. Flamethrower and landmine hits are adjusted similar to shrub. Medics get -2 hits for every revive.<br>
'''Type:''' integer


'''Type:''' integer<br>
'''Default:''' 30000


'''Default:''' 6
== g_LTChargeTime ==
'''Description:'''


== g_minAirstrikeTime ==
The base time in milliseconds for how long it takes to fully recharge the field ops charge bar. Skill upgrades affect this value during the game.


'''Description:'''<br>
'''Type:''' integer


The time (in seconds) that must elapse between airstrikes PER TEAM.<br>
'''Default:''' 40000


'''Type:''' integer<br>
== g_soldierChargeTime ==
'''Description:'''


'''Default:''' 10
The base time in milliseconds for how long it takes to fully recharge the soldier charge bar. Skill upgrades affect this value during the game.


== g_minArtyTime ==
'''Type:''' integer


'''Description:'''<br>
'''Default:''' 20000


The time (in seconds) that must elapse between airtillery strikes PER TEAM. Attempts to do airstrike before the timeout will get "Insuffient fire support" message.<br>
== g_covertopsChargeTime ==
'''Description:'''


'''Type:''' integer<br>
The base time in milliseconds for how long it takes to fully recharge the covert ops charge bar. Skill upgrades affect this value during the game.


'''Default:''' 10
'''Type:''' integer


== g_maxTeamLandmines ==
'''Default:''' 30000


'''Description:'''<br>
== team_maxPanzers  ==


Sets the maximum number of landmines a team can have planted at any given time. This value should be 0 or greater.<br>
'''Description:'''


'''Type:''' integer<br>
Server cvars team_maxPanzers, team_maxMortars, team_maxFlamers, team_maxMG42s, team_maxGrenLaunchers have identical behaviour.&nbsp;Limits the number of the given weapon per team.


'''Default:''' 10
You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.


== g_maxTeamTripmines ==
You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down


'''Description:'''<br>
Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!


Sets the maximum number of tripmines a team can have planted at any given time. This value should be 0 or greater.<br>
'''Example 1:'''


'''Type:''' integer<br>
:set team_maxPanzers "2"


'''Default:''' 3
This will limit each team to 2 panzerfaust soldiers, regardless of how many players are in the team
 
== g_minGameClients ==


'''Description:'''<br>
'''Example 2:'''


The number of clients needed to start a match.<br>
:set team_maxPanzers "10%"


'''Type:''' integer<br>
This will limit each team to having only 10% of their players as panzerfaust soldiers, and a team with few players (for example, 5) will be able to have 1 panzerfaust soldier. They will be able to have their second panzerfaust soldier when they have 11 players on the team.


'''Default:''' 0
'''Example 3:'''


== g_maxGameClients ==
:set team_maxPanzers "10%-"


'''Description:'''<br>
This will limit each team to having only 10% of their players as panzerfaust soldiers, and a team will not be able to have any panzerfaust soldiers until there are 10 players in the team. They will be able to have their second panzerfaust soldier when there are 20 players in the team.


The maximum allowed amount of active clients.
Set this to -1 to disable limits


'''Type:''' integer
'''Type:''' integer


'''Default:''' 0
'''Default:''' -1


= Gametypes =
== team_maxMortars  ==


== Campaign ==
'''Description:'''


== Objective ==
Server cvars team_maxMortars, team_maxFlamers, team_maxMG42s, team_maxGrenLaunchers have identical behaviour.&nbsp;Limits the number of the given weapon per team.


== Last Stand ==
You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.&nbsp;


== Map Voting  ==
You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down


This gametype allows for the players to decide on the map that is played next. When g_gametype is set to 6 a new screen is introduced during intermission. This screen list, depending on server configuration, a list of up to 32 maps that are loaded on the server, and that all players can vote on. Once intermission ends, the server totals the votes, and plays the next map based upon the vote results
Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!


'''Example 1:'''


;;Miscellaneous notes about mapvoting:
:set team_maxMortars "2"
:


Total maps allowed is 32. If server admin has more than 32 .bsp files, only the first 32 are used Tie breaker. The default tie-breaker is such that if 2 or more maps are tied with the same number of votes, the map that was played most recently is selected. Bots and connecting players do NOT count for mapvoting, everyone else (including spectators) does. If no maps are voted for, the default "nextmap" cvar is used, so server admins have to specify a default map cycle of sort, usually in the following format:
This will limit each team to 2 mortar soldiers, regardless of how many players are on the team.  
<blockquote>set d1 "set g_gametype 6&nbsp;; map oasis&nbsp;; set nextmap vstr d2"<br>set d2 "set g_gametype 6&nbsp;; map battery&nbsp;; set nextmap vstr d3"<br>set d3 "set g_gametype 6&nbsp;; map goldrush&nbsp;; set nextmap vstr d1"<br>vstr d1<br> </blockquote>
This means that the default map, upon server start, will be oasis. From there, map voting will be used. If at any point, no map is voted for, battery will be played, etc


<br>
'''Example 2:'''


=== g_mapVoteFlags  ===
:set team_maxMortars "10%"


'''Description:''' This cvar controls the behaviour of the map voting.
This will limit each team to having only 10% of their players as mortar soldiers, and a team with few players (for example, 5) will be able to have 1 mortar soldier. They will be able to have their second mortar soldier when they have 11 players in the team.  


'''Type:''' bitmask<br>
'''Example 3:'''


'''Parameters:'''
:set team_maxMortars "10%-"


1 Changes the tie breaker so that the map not played in the longest wins<br>2 Intermission doesn't end until g_intermissionReadyPercent people have voted. If there are no players connected to the server, intermission will end at the timeout. (WARNING: This means that if there are spectators connected and not voting, the next map will not load until those spectators either vote, disconnect, or get kicked by the system)<br>4 Multi vote: Allows everybody to vote for 3 maps instead of one, first choice map gets 3 votes, second choice gets 2, third choice gets one<br>8 Don't randomize the maps, so they will always appear in the same order<br>16 The !nextmap command and a passed nextmap vote will start the intermission and lets players vote which map should be played next. NOTE: this makes the game end as a tie.<br>
This will limit each team to having only 10% of their players as mortar soldiers, and a team will not be able to have any mortar soldiers until there are 10 players in the team. They will be able to have their second mortar soldier when there are 20 players on the team.  


'''Default:''' 0
''Set this to -1 to disable limits''  


=== g_maxMapsVotedFor  ===
'''Type:''' integer<br>'''Default:''' -1


'''Description:'''<br>How many maps are available to players for voting upon during intermission.<br>''Only valid when g_gametype is 6 (see Map Voting)''<br>
== team_maxFlamers  ==


'''Type:''' integer<br>
'''Description:'''


'''Default:''' 6
You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.


=== g_minMapAge  ===
You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down


'''Description:'''<br>
Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!


How long a map is ineligible for voting during intermission, after it is played last time.<br>''Only valid when g_gametype is 6 (see Map Voting)''<br>
'''Example 1:'''


'''Type:''' integer<br>
:set team_maxFlamers "2"


'''Default:''' 3
This will limit each team to 2 flamethrower soldiers, regardless of how many players are on the team


=== g_resetXPMapCount  ===
'''Example 2:'''


'''Description:'''<br>
:set team_maxFlamers "10%"


How many maps occur before XP is reset. If g_XPSave flag 4 is set, g_resetXPMapCount is ignored. Similarly, if g_resetXPMapCount is set to 0, it is the same as setting g_XPSave flag 4 <br>''Only valid when g_gametype is 6 (see Map Voting)''<br>
This will limit each team to having only 10% of their players as flamethrower soldiers, and a team with too few players (for example, 5) will be able to have 1 flamethrowe soldier. They will be able to have their second flamethrowe soldier when they have 11 players on the team.


'''Type:''' integer<br>
'''Example 3:'''


'''Default:''' 0
:set team_maxFlamers "10%-"


=== g_excludedMaps  ===
This will limit each team to having only 10% of their players as flamethrower soldiers, and a team will not be able to have any flamethrower soldiers until there are 10 players in the team. They will be able to have their second flamethrower when there are 20 players in the team.


'''Description:'''<br>


Used to exclude map that would otherwise be listed in the map voting list. The format is ":map1:map2:map3:", where mapX is the .bsp name. Note that each mapname must be fully surrounded by ":" otherwise the map will not be excluded. <br>''Only valid when g_gametype is 6 (see Map Voting)''<br>
Set this to -1 to disable limits


'''Type:''' string<br>  
'''Type:''' integer<br>'''Default:''' -1


'''Default:''' ""
== team_maxMG42s  ==


== Team Death Match (TDM) ==
'''Description:'''


=== g_TDMType ===
You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.


'''Description:'''
You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down


The type of the played Team Death Match.
Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!


'''Type:''' [ 1 | 2 | 3 ]
'''Example 1:'''


'''Parameters:'''
:set team_maxMG42s "2"


1 Map ends only when timelimit hits
This will limit each team to 2 MG42 soldiers, regardless of how many players are in the team


2 Map ends when either the target score is reached or the timelimit hits
'''Example 2:'''


3 Map ends only when the target score is reached
:set team_maxMG42s "10%"


'''Default:''' 0
This will limit each team to having only 10% of their players as MG42 soldiers, and a team with too few players (for example, 5) will be able to have 1 MG42 soldier. They will be able to have their second MG42 soldier when they have 11 players on the team.


=== g_TDMOptions ===
'''Example 3:'''


'''Description:'''
:set team_maxMG42s "10%-"


Possible options for the played Team Death Match.
This will limit each team to having only 10% of their players as MG42 soldiers, and a team will not be able to have any MG42 soldiers until there are 10 players in the team. They will be able to have their second MG42 soldier when there are 20 players in the team.


'''Type:''' bitmask
Set this to -1 to disable limits


'''Parameters:'''
'''Type:''' integer<br>'''Default:''' -1


1 Map voting is enabled during the intermission (i.e. The players vote for the next map to play during the intermission.)
== team_maxGrenLaunchers  ==


2 Completing the map objective will give the team score bonus that is controlled by the g_TDMObjBonus server cvar
'''Description:'''


4 Teams get negative points when they do selfkills or teamkills
You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.


8 Players cannot selfkill during the TDM. Regardless of other selfkill settings the server has configured
You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down


'''Default:''' 5
Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!


=== g_TDMScore===
'''Example 1:'''


'''Description:'''
:set team_maxGrenLaunchers "2"


This is the target score the teams attempt to make to win the game in TDM game types 2 and 3.
This will limit each team to 2 grenade launchers, regardless of how many players are in the team


'''Type:''' integer
'''Example 2:'''


'''Default:''' 100
:set team_maxGrenLaunchers "10%"


=== g_TDMObjBonus===
This will limit each team to having only 10% of their players playing with grenade launchers, and a team with too few players (for example, 5) will be able to have 1 grenade launcher. They will be able to have their second grenade launcher when they have 11 players in the team.


'''Description:'''
'''Example 3:'''


This is the value that is added to the team score if the team completes the map objective. Adding the bonus does not depend of the TDM type.
:set team_maxGrenLaunchers "10%-"


'''Type:''' integer
This will limit each team to having only 10% of their players playing with grenade launchers, and a team will not be able to have any grenade launchers until there are 10 players in the team. They will be able to have their second grenade launcher when there are 20 players in the team.


'''Default:''' 20
Set this to -1 to disable limits


= Mapconfigs and Mapscripts =
'''Type:''' integer<br>'''Default:''' -1


== g_mapConfigs ==
== team_maxMedics ==


'''Description:'''
'''Description:'''


On each map load, the silEnT server will execute 2 configs if possible. The default.cfg and after that a map specifig config file [mapname].cfg. For example if you set g_mapConfigs to 'mapcfg', when the map fueldump starts, the server will try to exec 'mapcfg/fueldump.cfg'.
Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.
 
You can use a number such as "20%-" for this setting, in which case partial values will be rounded down


Set this to "" to disable it.
'''Example 1:'''


Set this to "." to look for the cfg file in the current directory (fs_homepath).
:set team_maxMedics "5"  


When in g_gametype 6 mode (Map Voting) and g_resetXPMapCount is set, an additional file named vote_X.cfg is also exec'ed. X indicates the position of the next map in the campaign.  For example, vote_2.cfg will exec'ed such that when map 1 ends, any cvars in vote_2.cfg will affect map voting for map 2.
This will limit each team to 5 medics, regardless of how many players are in the team


'''Type:''' string
'''Example 2:'''


'''Default:''' ""
:set team_maxMedics "15%"


== g_mapScriptDirectory ==
This will limit each team to having only 15% of their players as medics, and a team with too few players (for example, 3) will be able to have 1 medic. They will be able to have their second medic when they have 7 players in the team.


'''Description:'''
'''Example 3:'''


Similar to ETPro's b_mapscriptsdirectory.  Set it to the name of a directory in your fs_path that contains custom map scripts. For example you can copy the 'etpromapscripts' directory from the ETPro distribution to your 'silent' directory and add: set g_mapScriptDirectory "etpromapscripts" to your cfg. Setting g_mapScriptDirectory to &quot;&quot; disables any use of map .script files.
:set team_maxMedics "15%-"


'''Note:'''
This will limit each team to having only 15% of their players as medics, and a team will not be able to have medics until there are 7 players in the team. They will be able to have their second medic when there are 14 players in the team.


It is strongly recommended that you use the map scripts distributed with silEnT or ETPub since these updated scripts fix very important bugs in some of the original map scripts.
Set this to -1 to disable limits.


'''Type:''' string
'''Type:''' string


'''Default:''' ""
'''Default:''' -1


== g_campaignFile ==
== team_maxEngineers ==


'''Description:'''  
'''Description:'''  


Similar to ETPro's b_campaignFile. If you set this to the name of a file in your fs_path it will be interpreted as a .campaign script and all other .campaign scripts in your pk3 files will be ignored. This is useful for making custom campaigns since you don't need to offer a pk3 file containing a custom .campaign script for all clients to download. However, if the client has not downloaded this .campaign file in a pk3, they will not see information about the campaign.  
Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the&nbsp;% symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.


Such information includes:  
You can use a number such as "20%-" for this setting, in which case partial values will be rounded down
 
'''Example 1:'''


*will not display in the VOTE -&gt; MAP list
:set team_maxEngineers "5"
*map locations will not draw on the map of Europe.
*campaign description will not draw in the right panel
*total number of maps and current maps order in the campaign
*will not be shown in the intermission screens.


Also, even though the built-in campaigns cmpgn_centraleurope and cmpgn_northafrica will not be valid, they will still appear in the client's VOTE -&gt; MAP menu. If a vote for one of them passes, nothing will happen.
This will limit each team to 5 engineers, regardless of how many players are in the team


Setting this to "" disables it.
'''Example 2:'''


'''Type:''' string
:set team_maxEngineers "15%"


'''Default:''' ""
This will limit each team to having only 15% of their players as engineers, and a team with too few players (for example, 3) will be able to have 1 engineer. They will be able to have their second engineer when they have 7 players in the team.


= Censoring =
'''Example 3:'''


== g_censor==
:set team_maxEngineers "15%-"


'''Description:'''
This will limit each team to having only 15% of their players as engineers, and a team will not be able to have engineers until there are 7 players in the team. They will be able to have their second engineer when there are 14 players in the team.


A comma delimited string of words that will be censored from the chat.
Set this to -1 to disable limits.


'''Type:''' string
'''Type:''' string


'''Default:''' ""
'''Default:''' -1


== g_censorNames==
== team_maxFieldOps  ==


'''Description:'''
'''Description:'''  


A comma delimited string of words that will be censored from the player names.
Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.


'''Type:''' string
You can use a number such as "20%-" for this setting, in which case partial values will be rounded down


'''Default:''' ""
'''Example 1:'''


== g_censorPenalty==
:set team_maxFieldOps "5"


'''Description:'''
This will limit each team to 5 field opses, regardless of how many players are in the team


This controls the censoring behaviour.
'''Example 2:'''


'''Type:''' bitmask
:set team_maxFieldOps "15%"


'''Parameters:'''
This will limit each team to having only 15% of their players as field opses, and a team with too few players (for example, 3) will be able to have 1 field ops. They will be able to have their second field ops when they have 7 players in the team.


1 Kill the player
'''Example 3:'''


2 Kick players with names containing words in g_censorNames
:set team_maxFieldOps "15%-"


4 Kill, but don't gib
This will limit each team to having only 15% of their players as field opses, and a team will not be able to have field opses until there are 7 players in the team. They will be able to have their second field ops when there are 14 players in the team.


8 Auto-mute for g_censorMuteTime [60] seconds
Set this to -1 to disable limits.


16 Lose the amount of xp specified in g_censorXP
'''Type:''' string


32 Burn
'''Default:''' -1


'''Default:''' 0
== team_maxCovertOps  ==


'''Note:'''
'''Description:'''  


If you use both 1 and 4, it will gib (like shrub did).
Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.


== g_censorNeil==
You can use a number such as "20%-" for this setting, in which case partial values will be rounded down


'''Description:'''
'''Example 1:'''


Use Neil Toronto's censor filter. It'll catch some symbol and number replacements,
:set team_maxCovertOps "5"  
and spaces now. It also adds some common words and common words with "swears" in them
that should really be OK. For example, it will not censor "assassin" but it will
censor "ass".


'''Type:''' [0|1]
This will limit each team to 5 covert opses, regardless of how many players are in the team


'''Default:''' 0
'''Example 2:'''


== g_censorNeilNames==
:set team_maxCovertOps "15%"


'''Description:'''
This will limit each team to having only 15% of their players as coert opses, and a team with too few players (for example, 3) will be able to have 1 covert ops. They will be able to have their second covert ops when they have 7 players in the team.


Use Neil Toronto's censor filter for player names.  See g_censorNeil description for
'''Example 3:'''
details.


'''Type:''' [0|1]
:set team_maxCovertOps "15%-"


'''Default:''' 0
This will limit each team to having only 15% of their players as covert opses, and a team will not be able to have covert opses until there are 7 players in the team. They will be able to have their second covert ops when there are 14 players in the team.


== g_censorMuteTime==
Set this to -1 to disable limits.


'''Description:'''
'''Type:''' string


The number of seconds to auto-mute as a censor penalty. Only works if bitflag 8 is added to g_censorPenalty.
'''Default:''' -1


'''Type:''' integer
== g_minAirstrikeTime ==


'''Default:''' 60
'''Description:'''<br>


== g_censorXP==
The time (in seconds) that must elapse between airstrikes PER TEAM.<br>


'''Description:'''
'''Type:''' integer<br>


The amount of XP to lose as a censor penalty. Only works if bitflag 16 is added to g_censorPenalty.
'''Default:''' 10


'''Type:''' integer
== g_minArtyTime ==


'''Default:''' 5
'''Description:'''<br>


= Voting =
The time (in seconds) that must elapse between airtillery strikes PER TEAM. Attempts to do airstrike before the timeout will get "Insuffient fire support" message.<br>


== g_voting ==
'''Type:''' integer<br>


'''Description:'''
'''Default:''' 10


Control's voting behaviour.
== g_maxTeamLandmines ==


'''Type:''' bitmask
'''Description:'''<br>


'''Parameters:'''
Sets the maximum number of landmines a team can have planted at any given time. This value should be 0 or greater.<br>


1 Votes will pass on the number of votes cast rather than total eligible voters.
'''Type:''' integer<br>


2 Votes that pass do not count against the vote_limit for the caller.
'''Default:''' 10


4 " (called by NAME)" is appended to the vote description where NAME is the name of the player that called the vote.
== g_maxTeamTripmines ==


8 Show the number of YES and NO votes after a votes has passed or failed. This also shows if a vote is canceled or passed by an admin.
'''Description:'''<br>


'''Default:''' 0
Sets the maximum number of tripmines a team can have planted at any given time. This value should be 0 or greater.<br>


== vote_limit==
'''Type:''' integer<br>


'''Description:'''
'''Default:''' 3
 
== g_minGameClients ==
 
'''Description:'''<br>


This value defines how many votes one player can invoke during one map.
The number of clients needed to start a match.<br>


'''Type:''' integer
'''Type:''' integer<br>


'''Default:''' 5
'''Default:''' 0


== vote_percent==
== g_maxGameClients ==


'''Description:'''
'''Description:'''<br>


The required percentage of yes votes for the vote to pass.
The maximum allowed amount of active clients.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 50
'''Default:''' 0
 
= Player Inactivity =


== vote_allow_comp==
== g_inactivity ==


'''Description:'''
'''Description:'''


Allows voting for competition settings.
The number of seconds of player inactivity before the player is made a spectator.


'''Type:''' [0|1]
'''Type:''' integer


'''Default:''' 1
'''Default:''' 0


== vote_allow_gametype==
== g_spectatorInactivity==


'''Description:'''
'''Description:'''


Allows voting for gametype.
The number of seconds of player inactivity as spectator before the player is kicked/dropped from server.


'''Type:''' [0|1]
'''Type:''' integer


'''Default:''' 1
'''Default:''' 0


== vote_allow_kick==
== g_inactivityOptions ==


'''Description:'''
'''Description:'''


Allows voting for kicking a player.
Controls additional inactivity options.


'''Type:''' [0|1]
'''Type:''' bitmask
 
'''Parameters:'''
 
1 Don't drop shoutcasters


'''Default:''' 1
2 Don't drop spectators when in following mode


== vote_allow_map==
4 ETmain inactivity behavior (don't wait for a full server)


'''Description:'''
8 Shrubbot flag '0' admins will be moved to spectators due to team inactivity


Allows voting for map to be played.
'''Default:''' 3


'''Type:''' [0|1]


'''Default:''' 1
= Gametypes =


== vote_allow_matchreset==
== g_gametype ==


'''Description:'''
'''Description:'''


Allows voting for restarting the match.
Please see Map Voting.


'''Type:''' [0|1]
'''Type:''' [2|3|4|5|6|7]


'''Default:''' 1
'''Parameters:'''


== vote_allow_mutespecs==
2 Objective


'''Description:'''
3 Stopwatch


Allows voting for muting spectators.
4 Campaign


'''Type:''' [0|1]
5 Last Man Standing


'''Default:''' 1
6 Map Voting


== vote_allow_nextmap==
7 Team Death Match


'''Description:'''
'''Default:''' 4


Allows voting for starting the next map in the map rotation.
== Campaign ==


'''Type:''' [0|1]
== Objective ==


'''Default:''' 1
== Last Man Standing ==


== vote_allow_pub==
== Map Voting  ==


'''Description:'''
This gametype allows for the players to decide on the map that is played next. When g_gametype is set to 6 a new screen is introduced during intermission. This screen list, depending on server configuration, a list of up to 32 maps that are loaded on the server, and that all players can vote on. Once intermission ends, the server totals the votes, and plays the next map based upon the vote results


Allows voting for public game settings.


'''Type:''' [0|1]
;;Miscellaneous notes about mapvoting:
:


'''Default:''' 1
Total maps allowed is 32. If server admin has more than 32 .bsp files, only the first 32 are used Tie breaker. The default tie-breaker is such that if 2 or more maps are tied with the same number of votes, the map that was played most recently is selected. Bots and connecting players do NOT count for mapvoting, everyone else (including spectators) does. If no maps are voted for, the default "nextmap" cvar is used, so server admins have to specify a default map cycle of sort, usually in the following format:  
<blockquote>set d1 "set g_gametype 6&nbsp;; map oasis&nbsp;; set nextmap vstr d2"<br>set d2 "set g_gametype 6&nbsp;; map battery&nbsp;; set nextmap vstr d3"<br>set d3 "set g_gametype 6&nbsp;; map goldrush&nbsp;; set nextmap vstr d1"<br>vstr d1<br> </blockquote>
This means that the default map, upon server start, will be oasis. From there, map voting will be used. If at any point, no map is voted for, battery will be played, etc


== vote_allow_referee==
<br>


'''Description:'''
=== g_mapVoteFlags  ===


Allows voting for making a player a referee.
'''Description:''' This cvar controls the behaviour of the map voting.


'''Type:''' [0|1]
'''Type:''' bitmask<br>


'''Default:''' 1
'''Parameters:'''  


== vote_allow_shuffleteamsxp==
1 Changes the tie breaker so that the map not played in the longest wins<br>2 Intermission doesn't end until g_intermissionReadyPercent people have voted. If there are no players connected to the server, intermission will end at the timeout. (WARNING: This means that if there are spectators connected and not voting, the next map will not load until those spectators either vote, disconnect, or get kicked by the system)<br>4 Multi vote: Allows everybody to vote for 3 maps instead of one, first choice map gets 3 votes, second choice gets 2, third choice gets one<br>8 Don't randomize the maps, so they will always appear in the same order<br>


'''Description:'''
'''Default:''' 0


Allows voting for shuffling teams based on XP.
=== g_maxMapsVotedFor  ===


'''Type:''' [0|1]
'''Description:'''<br>How many maps are available to players for voting upon during intermission.<br>''Only valid when g_gametype is 6 (see Map Voting)''<br>


'''Default:''' 1
'''Type:''' integer<br>


== vote_allow_swapteams==
'''Default:''' 6


'''Description:'''
=== g_minMapAge  ===


Allows voting for swapping the teams. Allied players go to the axis team and axis players go to the allied team.
'''Description:'''<br>


'''Type:''' [0|1]
How long a map is ineligible for voting during intermission, after it is played last time.<br>''Only valid when g_gametype is 6 (see Map Voting)''<br>
 
'''Type:''' integer<br>


'''Default:''' 1
'''Default:''' 3


== vote_allow_friendlyfire==
=== g_includedMaps  ===


'''Description:'''
'''Description:'''


Allows voting for enabling/disabling friendly fire.
Used to include map regardless of any other restrictions. Including g_excludedMaps setting. The format is ":map1:map2:map3:", where mapX is the .bsp name. Note that each mapname must be fully surrounded by ":" or otherwise the map will be ignored in the list.
Only valid when map voting is enabled.


'''Type:''' [0|1]
'''Type:''' string


'''Default:''' 1
'''Default:''' ""


== vote_allow_timelimit==
'''Minimum required version:''' 0.6.2


'''Description:'''
=== g_excludedMaps  ===


Allows voting for changing the map time.
'''Description:'''<br>


'''Type:''' [0|1]
Used to exclude map that would otherwise be listed in the map voting list. The format is ":map1:map2:map3:", where mapX is the .bsp name. Note that each mapname must be fully surrounded by ":" otherwise the map will not be excluded. <br>''Only valid when g_gametype is 6 (see Map Voting)''<br>


'''Default:''' 1
'''Type:''' string<br>


== vote_allow_warmupdamage==
'''Default:''' ""


'''Description:'''
'''Example:''' To exclude railgun and battery maps from map voting use below command:<br>
set g_excludedMaps ":railgun:battery:"


Allows voting for enabling/disabling/enemies only warmup damage.
== Team Death Match (TDM) ==


'''Type:''' [0|1]
=== g_TDMType ===


'''Default:''' 1
'''Description:'''


== vote_allow_antilag==
The type of the played Team Death Match.


'''Description:'''
'''Type:''' [ 1 | 2 | 3 ]


Allows voting for enabling/disabling antilag.
'''Parameters:'''


'''Type:''' [0|1]
1 Map ends only when timelimit hits


'''Default:''' 1
2 Map ends when either the target score is reached or the timelimit hits


== vote_allow_balancedteams==
3 Map ends only when the target score is reached
 
'''Default:''' 0
 
=== g_TDMOptions ===


'''Description:'''
'''Description:'''


Allows voting for enabling/disabling balanced teams enforcing.
Possible options for the played Team Death Match.


'''Type:''' [0|1]
'''Type:''' bitmask


'''Default:''' 1
'''Parameters:'''


== vote_allow_muting==
1 Map voting is enabled during the intermission (i.e. The players vote for the next map to play during the intermission.)


'''Description:'''
2 Completing the map objective will give the team score bonus that is controlled by the g_TDMObjBonus server cvar


Allows voting for muting/unmuting a player.
4 Teams get negative points when they do selfkills or teamkills


'''Type:''' [0|1]
8 Players cannot selfkill during the TDM. Regardless of other selfkill settings the server has configured


'''Default:''' 1
'''Default:''' 5


== vote_allow_surrender==
=== g_TDMScore===


'''Description:'''
'''Description:'''


Allows voting for surrendering the played map.
This is the target score the teams attempt to make to win the game in TDM game types 2 and 3.


'''Type:''' [0|1]
'''Type:''' integer


'''Default:''' 1
'''Default:''' 100


== vote_allow_restartcampaign==
=== g_TDMObjBonus===


'''Description:'''
'''Description:'''


Allows voting for restarting the campaign.
This is the value that is added to the team score if the team completes the map objective. Adding the bonus does not depend of the TDM type.


'''Type:''' [0|1]
'''Type:''' integer


'''Default:''' 1
'''Default:''' 20


== vote_allow_nextcampaign==
= Mapconfigs and Mapscripts =
 
== g_mapConfigs ==


'''Description:'''
'''Description:'''


Allows voting for changing the campaign to the next one in the campaign rotation.
On each map load, the silEnT server will execute 2 configs if possible. The default.cfg and after that a map specifig config file [mapname].cfg. For example if you set g_mapConfigs to 'mapcfg', when the map fueldump starts, the server will try to exec 'mapcfg/fueldump.cfg'.


'''Type:''' [0|1]
Set this to "" to disable it.


'''Default:''' 1
Set this to "." to look for the cfg file in the current directory (fs_homepath).


== vote_allow_poll==
Starting from silEnT version 0.5.2, admins can add settings that are executed for specific player amounts. The commands are enclosed in [players low-high] ... [/players] blocks. The low is the lowest amount of players for those settings and high is the maximum amount of players for those settings. For example:


'''Description:'''
[players 0-10]<br>
set team_maxPanzers 0<br>
[/players]<br><br>
will disable panzerfaust when player amount is less or equal to 10. The blocks can be placed anywhere in the map config files. If the block is closed with [/players], the following commands do not depend on the player amounts. The player blocks can not be nested. If two player blocks follow each other, the second definition opens a new one and the old one closes. For example:<br><br>
[players 0-15]<br>
set g_excludedMaps ":mlb_temple:"<br>
[players 16-*]<br>
set g_excludedMaps ":adlernest:"<br>
[/players]<br><br>
will exclude map MLB Temple if the player amount is less or equal to 15 and exclude map Adlernest if the player amount is 16 or more. The player amount counting is controlled with g_playerCounting server cvar.<br><br>


Allows making freely written polls using the vote system.
When in g_gametype 6 mode (Map Voting) and g_resetXPMapCount is set, an additional file named vote_X.cfg is also exec'ed. X indicates the position of the next map in the campaign. For example, vote_2.cfg will exec'ed such that when map 1 ends, any cvars in vote_2.cfg will affect map voting for map 2. Player blocks are not used with vote_X.cfg files.<br>


'''Type:''' [0|1]
'''Type:''' string


'''Default:''' 1
'''Default:''' ""


== vote_allow_maprestart==
== g_mapScriptDirectory ==


'''Description:'''
'''Description:'''


Allows voting for restarting the played map.
Similar to ETPro's b_mapscriptsdirectory.  Set it to the name of a directory in your fs_path that contains custom map scripts. For example you can copy the 'etpromapscripts' directory from the ETPro distribution to your 'silent' directory and add: set g_mapScriptDirectory "etpromapscripts" to your cfg. Setting g_mapScriptDirectory to &quot;&quot; disables any use of map .script files.


'''Type:''' [0|1]
'''Note:'''  


'''Default:''' 1
It is strongly recommended that you use the map scripts distributed with silEnT or ETPub since these updated scripts fix very important bugs in some of the original map scripts.


== vote_allow_shufflenorestart==
'''Type:''' string


'''Description:'''
'''Default:''' ""


Allows voting for shuffling teams without restarting the map.
== g_campaignFile  ==


'''Type:''' [0|1]
'''Description:'''  


'''Default:''' 1
If you set this to the name of a file in your fs_path it will be interpreted as a .campaign script and all other .campaign scripts in your pk3 files will be ignored. This is useful for making custom campaigns since you don't need to offer a pk3 file containing a custom .campaign script for all clients to download. However, if the client has not downloaded this .campaign file in a pk3, they will not see information about the campaign.


== vote_allow_cointoss==
Such information includes:


'''Description:'''
*will not display in the VOTE -&gt; MAP list
*map locations will not draw on the map of Europe.
*campaign description will not draw in the right panel
*total number of maps and current maps order in the campaign
*will not be shown in the intermission screens.


Allows voting for doing cointoss.
Also, even though the built-in campaigns cmpgn_centraleurope and cmpgn_northafrica will not be valid, they will still appear in the client's VOTE -&gt; MAP menu. If a vote for one of them passes, nothing will happen.
 
Setting this to "" disables it.  
 
'''Type:''' string


'''Type:''' [0|1]
'''Default:''' ""


'''Default:''' 1
== g_playerCounting ==


== vote_allow_putspec==
'''Description'''


'''Description:'''
This cvar controls how the player amount is calculated for the mapconfigs. The player amount value is the highest number of simultaneously fully connected players during the map or warmup. The player counting can be disabled from the warmup period. If the player counting is enabled during the warmup, the players are counted right at the end of the warmup. This allows the teams to stabilize after intermission. Similarly the counting is triggered always with a 3 second delay from the change in the teams. Team changes include players joining the server and staying
in the spectators.


Allows voting for moving a player to the spectators.
'''Type:''' bitmask


'''Type:''' [0|1]
'''Parameters:'''


'''Default:''' 1
1 Enable filtering. This will add the 2 latest values together and divide them by 2.


== vote_block_maprestart==
2 No player counting during warmup.


'''Description:'''
4 Count spectators into players. Without this flag, only players in the playing teams are counted.


Defines how many seconds from the beginning of the map is the voting for restarting the map allowed.
8 Bots are not included into the player count.


'''Type:''' integer
'''Default:''' 1


'''Default:''' 300
= Censoring =


== vote_block_matchreset==
== g_censor==


'''Description:'''
'''Description:'''


Defines how many seconds from the beginning of the map is the voting for restarting the match allowed.
A comma delimited string of words that will be censored from the chat.


'''Type:''' integer
'''Type:''' string


'''Default:''' 300
'''Default:''' ""


== vote_block_shuffleteamsxp==
== g_censorNames==


'''Description:'''
'''Description:'''


Defines how many seconds from the beginning of the map is the voting for shuffling the teams allowed.
A comma delimited string of words that will be censored from the player names.


'''Type:''' integer
'''Type:''' string


'''Default:''' 300
'''Default:''' ""
 
== vote_block_shufflenorestart==


== g_censorPenalty==


'''Description:'''
'''Description:'''


Defines how many seconds from the beginning of the map is the voting for shuffling the teams without restarting the map allowed.
This controls the censoring behaviour.


'''Type:''' integer
'''Type:''' bitmask


'''Default:''' 300
'''Parameters:'''


== vote_block_nextmap==
1 Kill the player


'''Description:'''
2 Kick players with names containing words in g_censorNames


Defines how many seconds from the beginning of the map is the voting for starting the next map in the map rotation allowed.
4 Kill, but don't gib


'''Type:''' integer
8 Auto-mute for g_censorMuteTime [60] seconds


'''Default:''' 300
16 Lose the amount of xp specified in g_censorXP


== vote_block_swapteams==
32 Burn


'''Description:'''
'''Default:''' 0


Defines how many seconds from the beginning of the map is the voting for swapping the teams allowed.
'''Note:'''


'''Type:''' integer
If you use both 1 and 4, it will gib (like shrub did).


'''Default:''' 300
== g_censorNeil==
 
== vote_block_surrender==


'''Description:'''
'''Description:'''


Defines how many seconds from the beginning of the map is the voting for surrendering the map allowed.
Use Neil Toronto's censor filter. It'll catch some symbol and number replacements,
and spaces now. It also adds some common words and common words with "swears" in them
that should really be OK. For example, it will not censor "assassin" but it will
censor "ass".


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 300
'''Default:''' 0


== vote_block_map==
== g_censorNeilNames==


'''Description:'''
'''Description:'''


Defines how many seconds from the beginning of the map is the voting for played map allowed.
Use Neil Toronto's censor filter for player names.  See g_censorNeil description for
details.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 300
'''Default:''' 0


== vote_block_timelimit==
== g_censorMuteTime==


'''Description:'''
'''Description:'''


Defines how many seconds from the beginning of the map is the voting for changing the map time allowed.
The number of seconds to auto-mute as a censor penalty. Only works if bitflag 8 is added to g_censorPenalty.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 300
'''Default:''' 60


== vote_block_poll==
== g_censorXP==


'''Description:'''
'''Description:'''


Defines how many seconds from the beginning of the map is the voting for polls allowed.
The amount of XP to lose as a censor penalty. Only works if bitflag 16 is added to g_censorPenalty.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 300
'''Default:''' 5
 
= Voting =


== vote_block_nextcampaign==
== g_voting ==


'''Description:'''
'''Description:'''


Defines how many seconds from the beginning of the map is the voting for next campaign allowed.
Control's voting behaviour.


'''Type:''' integer
'''Type:''' bitmask


'''Default:''' 300
'''Parameters:'''


== vote_block_restartcampaign==
1 Votes will pass on the number of votes cast rather than total eligible voters.


'''Description:'''
2 Votes that pass do not count against the vote_limit for the caller.


Defines how many seconds from the beginning of the map is the voting for restarting the campaign allowed.
4 " (called by NAME)" is appended to the vote description where NAME is the name of the player that called the vote.


'''Type:''' integer
8 Show the number of YES and NO votes after a votes has passed or failed. This also shows if a vote is canceled or passed by an admin.


'''Default:''' 300
'''Default:''' 0


== g_noVoteTime==
== vote_limit==


'''Description:'''
'''Description:'''


Defines how many seconds must pass between two votes.
This value defines how many votes one player can invoke during one map.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 0
'''Default:''' 5


== g_voteResultsMinLevel==
== vote_percent==


'''Description:'''
'''Description:'''


Defines the minimum admin level for the players to see the results of the votes.
The required percentage of yes votes for the vote to pass.


'''Type:''' integer
'''Type:''' integer


'''Default:''' -1
'''Default:''' 50


== g_votedMuteLength==
== vote_allow_comp==


'''Description:'''
'''Description:'''


Defines the length in seconds of the mute issued by a passed mute vote. You can use modifiers with this value.
Allows voting for competition settings.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 3h
'''Default:''' 1


= Weapons, Classes and Skills =
== vote_allow_gametype==
 
== g_poison ==


'''Description:'''
'''Description:'''


Gives medics the ability to poison enemies by sticking with their medic
Allows voting for gametype.
syringe.  Enemies will be damaged at g_poison/second when g_poison is
set to a value more than 0.  Setting to 0 will disable poison needles.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 1


== g_poisonFlags ==
== vote_allow_kick==


'''Description:'''
'''Description:'''


Controls the effects of g_poison.
Allows voting for kicking a player.


'''Type:''' bitmask
'''Type:''' [0|1]


'''Parameters:'''
'''Default:''' 1


1 Poisoned player's screen shakes.
== vote_allow_map==


2 Other players see the poisoned player's head shaking.
'''Description:'''


4 Poisoned player appears to bend over (hurl) every 2 seconds. (poisoned player does not see this happen.)
Allows voting for map to be played.


8 Poisoned player cannot use +attack.  NOTE: because of client side prediction, the client may see the gun firing occasionally if they hold down +attack, but no shots are fired.
'''Type:''' [0|1]


16 Poisoned player is disoriented (view turned upside down).
'''Default:''' 1


'''Default:''' 7
== vote_allow_matchreset==
 
== g_medics ==


'''Description:'''
'''Description:'''


Controls various aspects of the medic, to nerf or otherwise change their behavior.
Allows voting for restarting the match.


'''Type:''' bitmask
'''Type:''' [0|1]


'''Parameters:'''
'''Default:''' 1


1 Medics can't pick up their own health packs to cure themselves of poison needle effects.
== vote_allow_mutespecs==


2 Medics can't pick up their own health packs at all.
'''Description:'''


4 A level 4 medic will always be revived to full health (no matter what the level of the reviving medic is).
Allows voting for muting spectators.


8 Value is not in use.
'''Type:''' [0|1]


16 Medics do not spawn with akimbo pistols, regardless of their light weapons skill.
'''Default:''' 1


32 Medics spawn with pistol only, and can't pick up SMG of either team. However, any class can steal a medics uniform, if the g_classChange is set to 1, and receive the medic benefits while retaining their current weapons, including akimbos and SMG.
== vote_allow_nextmap==


64 Medics can use syringes to heal living teammates as an alternative to the tk/revive cycle.
'''Description:'''


128 Level 4 medics can inject other players with their adrenaline.  This can be done when holding the revive needle by pressing the alt-fire button, or with the /adrenother client command.
Allows voting for starting the next map in the map rotation.


256 Level 4 medics cannot adrenaline self.  If this flag is on, Medics will not receive adrenaline upon reaching level 4. (This won't affect flag 128)
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 1


== g_medicHealthRegen==
== vote_allow_pub==


'''Description:'''
'''Description:'''


The rate at which medics regenerate health (in HP per second).  This rate is divided into two parts:  The first is from 1 to 110-125 HP (depending on the number of medics per team), and then above that.  The system default is 3/2 (3 HP per second, then 2 HP per second).
Allows voting for public game settings.


'''Type:''' [ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 ]
'''Type:''' [0|1]


'''Parameters:'''
'''Default:''' 1


0 3/2
== vote_allow_referee==


1 2/2
'''Description:'''


2 2/1
Allows voting for making a player a referee.


3 2/0
'''Type:''' [0|1]


4 1/1
'''Default:''' 1


5 1/0
== vote_allow_shuffleteamsxp==


6 0/0
'''Description:'''


7 0/1
Allows voting for shuffling teams based on XP.


8 0/2
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 1


== g_throwableKnives ==
== vote_allow_swapteams==


'''Description:'''
'''Description:'''


Enable knife throwing. The amount of throwable knives is g_maxKnives - 1. Any non zero value will enable knife throwing.
Allows voting for swapping the teams. Allied players go to the axis team and axis players go to the allied team.


'''Type:''' [0|1]
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 1


== g_maxKnives ==
== vote_allow_friendlyfire==


'''Description:'''
'''Description:'''


Maximum number of knives a player can posses. Take note that if g_throvableKnives is enabled, the last knife cannot be thrown.
Allows voting for enabling/disabling friendly fire.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 5
'''Default:''' 1


== g_knifeChargeTime ==
== vote_allow_timelimit==


'''Description:'''
'''Description:'''


How long it takes in milliseconds for the "knife" to charge to the maximum throw speed/force.
Allows voting for changing the map time.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 800
'''Default:''' 1


== g_constructibleXPSharing==
== vote_allow_warmupdamage==


'''Description:'''
'''Description:'''


When multiple engineers help build a constructible, each gets his share of XP
Allows voting for enabling/disabling/enemies only warmup damage.
once the constructible is build.  The share of gained XP is proportional to
how much the engineer built.


'''Type:''' [0|1]
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 1


== g_asblock ==
== vote_allow_antilag==


'''Description:'''
'''Description:'''


Airstrike blocking.
Allows voting for enabling/disabling antilag.


'''Type:''' bitmask
'''Type:''' [0|1]


'''Parameters:'''
'''Default:''' 1


1 Make an announcement whenever an airstrike is blocked.
== vote_allow_balancedteams==


2 A player may easily block an airstrike by crouching, standing, or proning over the enemy's canister to block the airstrike.
'''Description:'''


4 Reserved.
Allows voting for enabling/disabling balanced teams enforcing.


8 Lvl 3 FieldOPs and higher cannot have the airstrikes blocked by players.
'''Type:''' [0|1]


16 Disables teammates blocking airstrikes.
'''Default:''' 1


32 Give 2 Battle Sense XP to player that blocks the air strike. No XP given for blocking teammates or your own air strike.
== vote_allow_muting==


'''Default:''' 0
'''Description:'''
 
Allows voting for muting/unmuting a player.
 
'''Type:''' [0|1]
 
'''Default:''' 1


== g_panzersSpeed ==
== vote_allow_surrender==


'''Description:'''
'''Description:'''


Speed of the panzers. Normal panzer speed is 2500.
Allows voting for surrendering the played map.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 2500
'''Default:''' 1


== g_panzersGravity ==
== vote_allow_restartcampaign==


'''Description:'''
'''Description:'''


If set to 1, panzer trajectory will be affected by gravity.
Allows voting for restarting the campaign.


'''Type:''' [0|1]
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 1


== g_dyno==
== vote_allow_nextcampaign==


'''Description:'''
'''Description:'''


Dynamite Behaviour.
Allows voting for changing the campaign to the next one in the campaign rotation.


'''Type:''' bitmaks
'''Type:''' [0|1]


'''Parameters:'''
'''Default:''' 1


1 Sudden Death Dynamites enabled. If there is 30 seconds or less on the clock and dynamite is planted on an objective, the clock will continue to run past zero. The match will not end until the dynamite either explodes, or is disarmed. You are not allowed to plant additional dynamite during sudden death.
== vote_allow_poll==


2 Dynamite chaining enabled. Dynamite will cause other similar dynamites to explode when exploding (only if within blast radius). Dynamites not planted on an objective will blow any other dynamite not on an objective. Dynamite planted on an objective will only blow dynamite on the same objective.
'''Description:'''


4 Adds a dynamite symbol with the location and the time remaining to all the players on the team of the player who plants the dynamite. This will only happen when dynamite is placed on an objective. The players in the other team will see the dynamite symbol too, but they won't see the time remaining.
Allows making freely written polls using the vote system.


8 Dynamite cannot be disarmed by your team (inlcuding yourself), so only the other team can defuse it.
'''Type:''' [0|1]


16 Enable dynamite ID. You can see the owner of a dynamite when you point at it.
'''Default:''' 1


'''Default:''' 0
== vote_allow_maprestart==
 
== g_canisterKick ==


'''Description:'''
'''Description:'''


Canister and grenade kicking.
Allows voting for restarting the played map.


Allows players to kick smoke, and air strike canisters, along with grendaes. The integer adjust the amount of force put behind the kick. 75 is a good value, anything below 60 is about useless, and above about 125 is probably too much.
'''Type:''' [0|1]


'''Type:''' integer
'''Default:''' 1


'''Default:''' 0
== vote_allow_shufflenorestart==
 
== g_canisterKickOwner ==


'''Description:'''
'''Description:'''


Kicked Canister Ownership.
Allows voting for shuffling teams without restarting the map.


'''Type:''' [0|1]
'''Type:''' [0|1]


'''Parameters:'''
'''Default:''' 1


0 Kicker does not take ownership of the canister.
== vote_allow_cointoss==


1 Kicker takes ownership of the canister.
'''Description:'''


'''Default:''' 0
Allows voting for doing cointoss.


== g_reflectFriendlyFire ==
'''Type:''' [0|1]


'''Description:'''
'''Default:''' 1


Similar to Shrub's g_friendlyfire 2 cvar. A multiplier value that determines how much friendly-fire damage, if any, is reflected back to the player that caused the damage. This setting is independent of g_friendlyfire, so damage can be set to reflect on both FF and non-FF servers.
== vote_allow_putspec==


A value of 1.0 would reflect full damage.
'''Description:'''


A value of 0.5 would reflect half damage.
Allows voting for moving a player to the spectators.


Set to 0 to disable reflected friendly fire.
'''Type:''' [0|1]


'''Type:''' float
'''Default:''' 1


'''Default:''' 0.0
== vote_block_maprestart==
 
== g_reflectFFWeapons==


'''Description:'''
'''Description:'''


Selects which category of weapon will reflect when g_reflectFriendlyFire is non-zero.
Defines how many seconds from the beginning of the map is the voting for restarting the map allowed.


'''Type:''' bitmask
'''Type:''' integer


'''Parameters:'''
'''Default:''' 300


1 Enable reflected damage for Firearms (all types of guns)
== vote_block_matchreset==


2 Enable reflected damage for Grenades and grenade launchers
'''Description:'''


4 Enable reflected damage for Knives (includes thrown knives)
Defines how many seconds from the beginning of the map is the voting for restarting the match allowed.


8 Enable reflected damage for Panzers
'''Type:''' integer


16 Enable reflected damage for Flamethrowers
'''Default:''' 300


32 Enable reflected damage for Mortars
== vote_block_shuffleteamsxp==


64 Enable reflected damage for Satchel Charges
'''Description:'''


128 Enable reflected damage for Artillery and Air Strikes
Defines how many seconds from the beginning of the map is the voting for shuffling the teams allowed.


256 Enable reflected damage for Dynamite and Construction Damage
'''Type:''' integer


512 Enable reflected damage for Landmines
'''Default:''' 300


'''Default:''' 31
== vote_block_shufflenorestart==


'''Note:'''


Setting this value to zero will override any multiplier set via g_reflectFriendlyFire, effectively disabling reflecting damage.
'''Description:'''


== g_friendlyFire  ==
Defines how many seconds from the beginning of the map is the voting for shuffling the teams without restarting the map allowed.


'''Description:'''  
'''Type:''' integer


To enable / disable friendly fire on server.&nbsp;
'''Default:''' 300


'''Type''': [0|1]
== vote_block_nextmap==


'''Default''': 0
'''Description:'''


== g_friendlyFireOpts ==
Defines how many seconds from the beginning of the map is the voting for starting the next map in the map rotation allowed.


'''Description:'''
'''Type:''' integer


Allows greater control over friendly fire events.
'''Default:''' 300


'''Type:''' bitmask
== vote_block_swapteams==


'''Parameters:'''
'''Description:'''


1 Landmines ALWAYS damage teammates regardless of g_friendlyfire setting
Defines how many seconds from the beginning of the map is the voting for swapping the teams allowed.


2 Allow 'grenade boosting' when friendly fire is off
'''Type:''' integer


4 Non-engineer players do not trigger landmines on their own team
'''Default:''' 300


8 Players do not trigger trip mines on their own team
== vote_block_surrender==
 
'''Default:''' 0
 
== g_staminaRecharge ==


'''Description:'''
'''Description:'''


Multiplies the rate at which stamina is rebuilt. Setting this value to zero will cause players to not regain any stamina once it is used except through the use of adrenalin.
Defines how many seconds from the beginning of the map is the voting for surrendering the map allowed.


'''Type:''' float
'''Type:''' integer


'''Default:''' 1.0
'''Default:''' 300


== g_mineid ==
== vote_block_map==


'''Description:'''
'''Description:'''


Turns on identification of your teammates landmines.
Defines how many seconds from the beginning of the map is the voting for played map allowed.


'''Type:''' [0|1]
'''Type:''' integer


'''Default:''' 0
'''Default:''' 300


== g_medicSelfhealTime==
== vote_block_timelimit==


'''Description:'''
'''Description:'''


The time in milliseconds that a medic cannot heal himself after being hit.
Defines how many seconds from the beginning of the map is the voting for changing the map time allowed.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 0
'''Default:''' 300


== g_maxPanzerSuicides ==
== vote_block_poll==


'''Description:'''
'''Description:'''


When set, a player can kill himself g_maxPanzerSuicides times with a panzerfaust. The next panzerselfkill will result in a panzer shooting medpacks.
Defines how many seconds from the beginning of the map is the voting for polls allowed.
 
The amount of suicides is reset every map.
 
Set to -1 to disable, -2 to always enable (no normal panzers anymore)


'''Type:''' integer
'''Type:''' integer


'''Default:''' -1
'''Default:''' 300


== g_panzerPackDistance ==
== vote_block_nextcampaign==


'''Description:'''
'''Description:'''


Set the g_packDistance for the medpacks fired by the panzerfaust when g_maxPanzerSuicides is enabled.
Defines how many seconds from the beginning of the map is the voting for next campaign allowed.
 
Set to 0 to use default (etmain)


'''Type:''' integer
'''Type:''' integer


'''Default:''' 0
'''Default:''' 300


== g_weapons ==
== vote_block_restartcampaign==


'''Description:'''
'''Description:'''


This is meant to match the shrubmod g_weapons cvar.
Defines how many seconds from the beginning of the map is the voting for restarting the campaign allowed.


'''Type:''' bitmask
'''Type:''' integer


'''Parameters:'''
'''Default:''' 300


1 Level 0 field ops doesn't get binoculars (unless he has >= level 1 Battle Sense)
== g_noVoteTime==


2 Syringes work underwater
'''Description:'''


4 Pliers work underwater
Defines how many seconds must pass between two votes.


8 Fully restore Field ops charge bar if airstrike is aborted
'''Type:''' integer


16 Half restore FIeld ops charge bar if airstrike is aborted
'''Default:''' 0


32 Ammo packs restore helmets
== g_voteResultsMinLevel==


64 Drop binoculars if player has them
'''Description:'''


128 Soldiers with level 4 heavy weapons don't lose their pistols
Defines the minimum admin level for the players to see the results of the votes.


256 Garands can reload when clip is not empty
'''Type:''' integer


512 Balance the clip size between the allies and axis rifles. allied rifles get same clip sizes and max ammo as the k43.
'''Default:''' -1


1024 Creates a hitbox for mortar shells.  This reduces (or eliminates in some cases) the ability to fire mortars through smaller windows and bunker slits.
== g_votedMuteLength==


2048 Knives will always gib a body (not a player, use g_dmgKnife instead if you want that)
'''Description:'''


4096 Extra ammo is included with dropped weapons.
Defines the length in seconds of the mute issued by a passed mute vote. You can use modifiers with this value.


'''Default:''' 0
'''Type:''' integer


== g_classWeapons==
'''Default:''' 3h


'''Description:'''
= Weapons, Classes and Skills =


This cvar enables certain weapons per class. So far, only PPSH enablement is implemented.
== g_poison ==


'''Type:''' bitmask
'''Description:'''


'''Parameters:'''
Gives medics the ability to poison enemies by sticking with their medic
syringe.  Enemies will be damaged at g_poison/second when g_poison is
set to a value more than 0.  Setting to 0 will disable poison needles.


1 Enable PPSH for soldiers
'''Type:''' integer


2 Enable PPSH for engineers
'''Default:''' 0


4 Enable PPSH for fieldops
== g_poisonFlags ==
 
'''Default:''' 7
 
== g_mg42 ==


'''Description:'''
'''Description:'''


This cvar controls optional machine gun behaviour.
Controls the effects of g_poison.


'''Type:''' bitmask
'''Type:''' bitmask
Line 2,110: Line 2,126:
'''Parameters:'''
'''Parameters:'''


1 Machine Guns can make headshots
1 Poisoned player's screen shakes.


2 Machine Guns can reload when clip is not empty
2 Other players see the poisoned player's head shaking.
 
4 Poisoned player appears to bend over (hurl) every 2 seconds. (poisoned player does not see this happen.)
 
8 Poisoned player cannot use +attack.  NOTE: because of client side prediction, the client may see the gun firing occasionally if they hold down +attack, but no shots are fired.
 
16 Poisoned player is disoriented (view turned upside down).


'''Default:''' 0
'''Default:''' 7


== g_coverts ==
== g_medics ==


'''Description:'''
'''Description:'''


Controls various aspects of the Covert Op class.
Controls various aspects of the medic, to nerf or otherwise change their behavior.


'''Type:''' bitmask
'''Type:''' bitmask
Line 2,126: Line 2,148:
'''Parameters:'''
'''Parameters:'''


1 Level 4 Coverts have more accurate scoped weapons.
1 Medics can't pick up their own health packs to cure themselves of poison needle effects.


2 Disguised coverts can only be identified with the "crosshair name" by level 4 Field Ops.
2 Medics can't pick up their own health packs at all.


4 After detonating a satchel charge, the primary weapon will be selected instead of satchel again.
4 A level 4 medic will always be revived to full health (no matter what the level of the reviving medic is).


8 Coverts in disguise take half the normal combat damage.
8 Value is not in use.


16 Coverts in disguise take no splash damage.
16 Medics do not spawn with akimbo pistols, regardless of their light weapons skill.


32 Coverts do not automatically lose their uniform if an enemy sees them firing a weapon.
32 Medics spawn with pistol only, and can't pick up SMG of either team. However, any class can steal a medics uniform, if the g_classChange is set to 1, and receive the medic benefits while retaining their current weapons, including akimbos and SMG.


64 Coverts do not automatically lose their uniform if they fire a non-silent weapon.
64 Medics can use syringes to heal living teammates as an alternative to the tk/revive cycle.


128 Coverts do not automatically lose their uniforms if they attach to an emplaced MG weaponNote that this flag has nothing to do with firing.
128 Level 4 medics can inject other players with their adrenalineThis can be done when holding the revive needle by pressing the alt-fire button, or with the /adrenother client command.


256 Coverts are awarded xp for constructive use of smoke.
256 Level 4 medics cannot adrenaline self. If this flag is on, Medics will not receive adrenaline upon reaching level 4. (This won't affect flag 128)


512 Coverts will lose their uniform if an enemy sees him using ANY weapon (otherwise knife/satchel/smoke/binoc will never lose uni).
512 Adrenaline use takes only half of the chargebar.
 
1024 A disguised covert can still steal enemy uniforms.


'''Default:''' 0
'''Default:''' 0


== g_enableTMines ==
== g_adrenDmgReduction ==


'''Description:'''
'''Description:'''
The percentage damage reduction after injecting adrenaline. g_adrenDmgReduction is now independent percentage of the caused damage that is inflected when the adrenaline is on. 0 means no damage and 100 means full damage from the weapon.


Disables/enables tripmines. Tripmines are available only for engineers.
'''Type:''' Integer


'''Type:''' [0|1]
'''Default:''' 50


'''Default:''' 1
== g_medicHealthRegen==


== skill_soldier==
'''Description:'''


'''Description:'''
The rate at which medics regenerate health (in HP per second).  This rate is divided into two parts: The first is from 1 to 110-125 HP (depending on the number of medics per team), and then above that.  The system default is 3/2 (3 HP per second, then 2 HP per second).


Customizes the experience points necessary to go up in soldier ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.
'''Type:''' [ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 ]


A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.
'''Parameters:'''


You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.
0 3/2


'''Type:''' string
1 2/2


'''Default:''' "20 50 90 140"
2 2/1


== skill_medic ==
3 2/0


'''Description:'''
4 1/1


Customizes the experience points necessary to go up in medic ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.
5 1/0


A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.
6 0/0


You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.
7 0/1


'''Type:''' string
8 0/2


'''Default:''' "20 50 90 140"
'''Default:''' 0


== skill_engineer ==
== g_throwableKnives ==


'''Description:'''
'''Description:'''


Customizes the experience points necessary to go up in engineer ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.
Enable knife throwing. The amount of throwable knives is g_maxKnives - 1. Any non zero value will enable knife throwing.


A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.
'''Type:''' [0|1]


You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.
'''Default:''' 0


'''Type:''' string
== g_maxKnives ==


'''Default:''' "20 50 90 140"
'''Description:'''
 
Maximum number of knives a player can posses. Take note that if g_throvableKnives is enabled, the last knife cannot be thrown.


== skill_fieldops ==
'''Type:''' integer


'''Description:'''
'''Default:''' 5


Customizes the experience points necessary to go up in fieldop ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.
== g_knifeChargeTime ==


A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.
'''Description:'''


You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.
How long it takes in milliseconds for the "knife" to charge to the maximum throw speed/force.


'''Type:''' string
'''Type:''' integer


'''Default:''' "20 50 90 140"
'''Default:''' 800


== skill_covertops==
== g_constructibleXPSharing==


'''Description:'''
'''Description:'''


Customizes the experience points necessary to go up in covert op ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.
When multiple engineers help build a constructible, each gets his share of XP
once the constructible is build. The share of gained XP is proportional to
how much the engineer built.


A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.
'''Type:''' [0|1]


You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.
'''Default:''' 0


'''Type:''' string
== g_asblock ==


'''Default:''' "20 50 90 140"
'''Description:'''


== skill_battlesense ==
Airstrike blocking.


'''Description:'''
'''Type:''' bitmask


Customizes the experience points necessary to go up in battle sense ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.
'''Parameters:'''


A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.
1 Make an announcement whenever an airstrike is blocked.


You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.
2 A player may easily block an airstrike by crouching, standing, or proning over the enemy's canister to block the airstrike.


'''Type:''' string
4 Reserved.
 
8 Lvl 3 FieldOPs and higher cannot have the airstrikes blocked by players.


'''Default:''' "20 50 90 140"
16 Disables teammates blocking airstrikes.


== skill_lightweapons ==
32 Give 2 Battle Sense XP to player that blocks the air strike. No XP given for blocking teammates or your own air strike.


'''Description:'''
'''Default:''' 0


Customizes the experience points necessary to go up in light weapon ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.
== g_panzersSpeed ==


A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.
'''Description:'''


You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.
Speed of the panzers. Normal panzer speed is 2500.


'''Type:''' string
'''Type:''' integer


'''Default:''' "20 50 90 140"
'''Default:''' 2500


== g_panzersVulnerable==
== g_panzersGravity ==


'''Description:'''
'''Description:'''


If set to 1, panzers that are shot in mid-air will explode.
If set to 1, panzer trajectory will be affected by gravity.


'''Type:''' [0|1]
'''Type:''' [0|1]
Line 2,268: Line 2,295:
'''Default:''' 0
'''Default:''' 0


= Weapon Damage and Radius Settings =
== g_dyno==
 
== g_dmgKnife ==


'''Description:'''
'''Description:'''


Amount of damage done by the knife.
Dynamite Behaviour.


'''Type:''' integer
'''Type:''' bitmaks


'''Default:''' 10
'''Parameters:'''


== g_dmgSten ==
1 Sudden Death Dynamites enabled. If there is 30 seconds or less on the clock and dynamite is planted on an objective, the clock will continue to run past zero. The match will not end until the dynamite either explodes, or is disarmed. You are not allowed to plant additional dynamite during sudden death.


'''Description:'''
2 Dynamite chaining enabled. Dynamite will cause other similar dynamites to explode when exploding (only if within blast radius). Dynamites not planted on an objective will blow any other dynamite not on an objective. Dynamite planted on an objective will only blow dynamite on the same objective.


Amount of damage done by the sten.
4 Adds a dynamite symbol with the location and the time remaining to all the players on the team of the player who plants the dynamite. This will only happen when dynamite is placed on an objective. The players in the other team will see the dynamite symbol too, but they won't see the time remaining.
 
8 Dynamite cannot be disarmed by your team (inlcuding yourself), so only the other team can defuse it.


'''Type:''' integer
16 Enable dynamite ID. You can see the owner of a dynamite when you point at it.


'''Default:''' 14
'''Default:''' 0


== g_dmgFG42 ==
== g_canisterKick ==


'''Description:'''
'''Description:'''


Amount of damage done by the FG-42.
Canister and grenade kicking.
 
Allows players to kick smoke, and air strike canisters, along with grendaes. The integer adjust the amount of force put behind the kick. 75 is a good value, anything below 60 is about useless, and above about 125 is probably too much.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 15
'''Default:''' 0


== g_dmgPistol==
== g_canisterKickOwner ==


'''Description:'''
'''Description:'''


Amount of damage done by the pistol weapons.
Kicked Canister Ownership.
 
'''Type:''' [0|1]
 
'''Parameters:'''
 
0 Kicker does not take ownership of the canister.


'''Type:''' integer
1 Kicker takes ownership of the canister.


'''Default:''' 18
'''Default:''' 0


== g_dmgSMG ==
== g_staminaRecharge ==


'''Description:'''
'''Description:'''


Amount of damage done by the SMG weapons (Thompson and MP-40).
Multiplies the rate at which stamina is rebuilt. Setting this value to zero will cause players to not regain any stamina once it is used except through the use of adrenalin.


'''Type:''' integer
'''Type:''' float


'''Default:''' 18
'''Default:''' 1.0


== g_dmgMG42 ==
== g_mineid ==


'''Description:'''
'''Description:'''


Amount of damage done by the MG42.
Turns on identification of your teammates landmines.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 18
'''Default:''' 0


== g_dmgMG ==
== g_medicSelfhealTime==


'''Description:'''
'''Description:'''


Amount of damage done by an emplaced MG.
The time in milliseconds that a medic cannot heal himself after being hit.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 20
'''Default:''' 0


== g_dmgFG42Scope==
== g_maxPanzerSuicides ==


'''Description:'''
'''Description:'''


Amount of damage done by the FG-42 when scoped.
When set, a player can kill himself g_maxPanzerSuicides times with a panzerfaust. The next panzerselfkill will result in a panzer shooting medpacks.
 
The amount of suicides is reset every map.
 
Set to -1 to disable, -2 to always enable (no normal panzers anymore)


'''Type:''' integer
'''Type:''' integer


'''Default:''' 30
'''Default:''' -1


== g_dmgInfRifle ==
== g_panzerPackDistance ==


'''Description:'''
'''Description:'''


Amount of damage done by unscoped rifles (K43 and Garand).
Set the g_packDistance for the medpacks fired by the panzerfaust when g_maxPanzerSuicides is enabled.
 
Set to 0 to use default (etmain)


'''Type:''' integer
'''Type:''' integer


'''Default:''' 34
'''Default:''' 0


== g_dmgSniper ==
== g_weapons ==


'''Description:'''
'''Description:'''


Amount of damage done by a scoped Garand or K43.
This is meant to match the shrubmod g_weapons cvar.


'''Type:''' integer
'''Type:''' bitmask


'''Default:''' 50
'''Parameters:'''


== g_dmgFlamer ==
1 Level 0 field ops doesn't get binoculars (unless he has >= level 1 Battle Sense)


'''Description:'''
2 Syringes work underwater


Amount of damage done by the a flamethrower. Also controls the per-tick damage done to a player who has been set on fire by a flamethrower and is still burning.
4 Pliers work underwater


'''Type:''' integer
8 Fully restore Field ops charge bar if airstrike is aborted


'''Default:''' 5
16 Half restore FIeld ops charge bar if airstrike is aborted


== g_dmgGrenade==
32 Ammo packs restore helmets


'''Description:'''
64 Drop binoculars if player has them


Amount of damage done by a grenade.
128 Soldiers with level 4 heavy weapons don't lose their pistols


'''Type:''' integer
256 Garands can reload when clip is not empty


'''Default:''' 250
512 Balance the clip size between the allies and axis rifles. allied rifles get same clip sizes and max ammo as the k43.


== g_dmgGrenadeRadius ==
1024 Creates a hitbox for mortar shells.  This reduces (or eliminates in some cases) the ability to fire mortars through smaller windows and bunker slits.


'''Description:'''
2048 Knives will always gib a body (not a player, use g_dmgKnife instead if you want that)


Blast radius of a grenade.
4096 Players drop all of their ammo when they die, instead of just the ammo that is in the current clip.


'''Type:''' integer
8192 "Ammo"/"No ammo" icon is shown for dropped weapons.


'''Default:''' 250
16384 Enable fast shooting for Thompson, MP40, PPSh and Sten. 110 ms between shots.


== g_dmgGLauncher ==
32768 Kill by the shot tripmine is counted for the shooter not the player that planted it.


'''Description:'''
'''Default:''' 0


Amount of damage done by an engineer's grenade-launcher grenades.
'''Changelog:'''


'''Type:''' integer
Flag 16384 was added in version 0.6.2.


'''Default:''' 250
== g_classWeapons==
 
== g_dmgGLauncherRadius ==


'''Description:'''
'''Description:'''


Blas radius of an engineer's grenade-launcher grenades.
This cvar enables certain weapons per class.


'''Type:''' integer
'''Type:''' bitmask


'''Default:''' 250
'''Parameters:'''


== g_dmgTMine==
1 Enable PPSH for soldiers


'''Description:'''
2 Enable PPSH for engineers


Amount of damage done by a tripmine.
4 Enable PPSH for fieldops


'''Type:''' integer
8 Enable MP40 and Thompson to be available to both teams in limbo menu


'''Default:''' 260
16 Enable MP40 for soldiers.


== g_dmgLandmine ==
32 Enable Thompson for soldiers.


'''Description:'''
'''Default:''' 63


Amount of damage done by a landmine.
'''Changelog:'''


'''Type:''' integer
Flag 8 was added in version 0.6.0.


'''Default:''' 250
Flags 16 and 32 were added in version 0.6.2. Also the default value was changed from 15 to 63.


== g_dmgLandmineRadius ==
== g_mg42 ==


'''Description:'''
'''Description:'''


Blast radius of a landmine.
This cvar controls optional machine gun behaviour.


'''Type:''' integer
'''Type:''' bitmask


'''Default:''' 250
'''Parameters:'''


== g_dmgSatchel ==
1 Machine Guns can make headshots


'''Description:'''
2 Machine Guns can reload when clip is not empty


Amount of damage done by a satchel.
'''Default:''' 0


'''Type:''' integer
== g_coverts ==


'''Default:''' 250
'''Description:'''


== g_dmgSatchelRadius==
Controls various aspects of the Covert Op class.


'''Description:'''
'''Type:''' bitmask


Blast radius of a satchel.
'''Parameters:'''


'''Type:''' integer
1 Level 4 Coverts have more accurate scoped weapons.


'''Default:''' 250
2 Disguised coverts can only be identified with the "crosshair name" by level 4 Field Ops.


== g_dmgPanzer ==
4 After detonating a satchel charge, the primary weapon will be selected instead of satchel again.


'''Description:'''
8 Coverts in disguise take half the normal combat damage.


Amount of damage done by a panzerfaust rocket.
16 Coverts in disguise take no splash damage.


'''Type:''' integer
32 Coverts do not automatically lose their uniform if an enemy sees them firing a weapon.


'''Default:''' 400
64 Coverts do not automatically lose their uniform if they fire a non-silent weapon.


== g_dmgPanzerRadius ==
128 Coverts do not automatically lose their uniforms if they attach to an emplaced MG weapon.  Note that this flag has nothing to do with firing.


'''Description:'''
256 Coverts are awarded xp for constructive use of smoke.


Blast radius of a panzerfaust rocket.
512 Coverts will lose their uniform if an enemy sees him using ANY weapon (otherwise knife/satchel/smoke/binoc will never lose uni).


'''Type:''' integer
1024 A disguised covert can still steal enemy uniforms.


'''Default:''' 300
'''Default:''' 0


== g_dmgMortar==
== g_enableTMines ==


'''Description:'''
'''Description:'''


Amount of damage done by a mortar round.
Disables/enables tripmines. Tripmines are available only for engineers.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 400
'''Default:''' 1


== g_dmgMortarRadius==
== g_enableDemolition ==


'''Description:'''
'''Description:'''


Blast radius of a mortar round.
Enable Improvised Demolition weapon for soldier class.
Improvised Demolition weapon was introduced in 0.8.0 version of the silEnT mod.
As mentioned in the original WWII Tank-destruction manual, a big charge could be made of 6 stickgrenade heads around one complete grenade, fixed with wire or rope.
The central grenade would make the other 6 grenade detonate as well causing an explosion which could damage the light armoured vehicles.
 
In silEnT mod this weapon is designed to suit exactly the purpose described above.
To gain the weapon player has to gain 3rd engineer level and 4th soldier level.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 400
'''Default:''' 1


== g_dmgDynamite ==
== g_skills ==


'''Description:'''
'''Description:'''


Amount of damage done by a dynamite.
Optional skill related flags.


'''Type:''' integer
'''Type:''' bitmask


'''Default:''' 400
'''Parameters:'''


== g_dmgDynamiteRadius ==
1 Players with level 4 battle sense can spot landmines for teammates


'''Description:'''
2 Players with level 4 engineering can keep the flak jacket for other classes


Blast radius of a dynamite.
4 Players with level 4 first aid can keep adrenaline for other classes


'''Type:''' integer
'''Default:''' 0


'''Default:''' 400
== skill_soldier==
 
== g_dmgAir ==


'''Description:'''
'''Description:'''


Amount of damage done PER BOMB by an airstrike.
Customizes the experience points necessary to go up in soldier ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.


'''Type:''' integer
A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.


'''Default:''' 400
You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.


== g_dmgAirRadius==
Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.


'''Description:'''
'''Type:''' string


Blast radius PER BOMB of an airstrike.
'''Default:''' "20 50 90 140"


'''Type:''' integer
== skill_medic ==


'''Default:''' 400
'''Description:'''


== g_dmgArty ==
Customizes the experience points necessary to go up in medic ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.


'''Description:'''
A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.


Amount of damage done PER BOMB by artillery fire. If this value is non-zero, the spotting round will follow normal ET behaviour (can do damage, but to a very small radius, making damage unlikely)
You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.


'''Type:''' integer
Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.


'''Default:''' 400
'''Type:''' string


== g_dmgArtyRadius ==
'''Default:''' "20 50 90 140"
 
== skill_engineer ==


'''Description:'''
'''Description:'''


Blast radius PER BOMB of artillery fire. If this value is non-zero, the spotting round will follow normal ET behaviour. The spotting round can do damage, but to a very small radius making damage unlikely.
Customizes the experience points necessary to go up in engineer ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.


'''Type:''' integer
A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.


'''Default:''' 400
You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.


== g_dmg ==
Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.
'''Description:'''


Enables experimental advanced combat options.
'''Type:''' string


'''Type:''' bitmask
'''Default:''' "20 50 90 140"


'''Parameters:'''
== skill_fieldops ==


0 Use traditional ET settings for combat.
'''Description:'''


1 Use Advanced Hit Locations: Differentiates between Head, Body, Arm, and Leg shot when computing damage.
Customizes the experience points necessary to go up in fieldop ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.


2 Applies a more realistic damage vs. range equation for short-ranged weapons. This will reduce the effectiveness of these weapons at longer ranges.
A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.


4 Gives a damage bonus to short-range weapons when used in close combat situations. This will increase the effectiveness of these weapons at closer ranges.
You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.


8 Use bullet fall-off approximations when computing shot trajectory.
Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.  


16 Improve accuracy of non-scoped single-shot rifles.
'''Type:''' string


32 Use alternate bullet-spread characteristics for automatic or rapid-fire weapons.
'''Default:''' "20 50 90 140"


64 Damage from players who are spectators or have disconnected is ignored, and XP is not awarded.
== skill_covertops==


'''Default:''' 0
'''Description:'''


== g_dmgHeadShotMin==
Customizes the experience points necessary to go up in covert op ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.


'''Description:'''
A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.


This represents the minimum damage done by a headshot regardless of the weapon used to make the shot.
You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.


Headshots that would do damage below this value will be adjusted upward to equal g_dmgHeadshotMin. Headshots from a weapon with damage at or above this value will do a multiple of their damage, as specified by g_dmgHeadShotRatio. (The actual damage may undergo additional modification due to range and other conditions)
Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.


'''Type:''' integer
'''Type:''' string


'''Default:''' 50
'''Default:''' "20 50 90 140"


== g_dmgHeadShotRatio ==
== skill_battlesense ==


'''Description:'''
'''Description:'''


This specifies the multiplier used for headshots that do damage ABOVE g_dmgHeadShotMin.
Customizes the experience points necessary to go up in battle sense ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.


'''Type:''' float
A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.


'''Default:''' 2.0
You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.


== g_knifeThrowDamage ==
Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.


'''Description:'''
'''Type:''' string


The amount of damage a thrown knife will cause to enemy.
'''Default:''' "20 50 90 140"


'''Type:''' integer
== skill_lightweapons ==


'''Default:''' 50
'''Description:'''


== g_dmgPPSh==
Customizes the experience points necessary to go up in light weapon ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.


'''Description:'''
A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.


The amount of damage done by a PPSh.
You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.


'''Type:''' integer
Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.


'''Default:''' 19
'''Type:''' string


= Hitboxes, Physics & Anti Lag Settings =
'''Default:''' "20 50 90 140"


== g_antilagDelay ==
== g_panzersVulnerable==


'''Description:'''
'''Description:'''


Manually delay the antilag of every player on the server. Might give very weird behaviour, so use at own risk.
If set to 1, panzers that are shot in mid-air will explode.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 0


== g_fixedphysics==
 
== g_maxMarkers ==


'''Description:'''
'''Description:'''


Creates a smoother movement when enabled.
Defines how many danger zones can be marked by the covert ops.


'''Type:''' [0|1]
Danger zones were introduced in 0.7.0 version of the silEnT mod. They can be marked by Covert Ops to indicate that some area can be considered dangerous. Such area is then visible on the command map as the red circle zone. Additionally, when the Command Post is built, players are notified by sound and visual signs about entering the danger zone. Players can customize the way they are notified via the HUD editor and the silEnT customize HUD menu.


'''Default:''' 0
To mark the danger zone Covert Ops needs to look through his binoculars and press the left mouse button (attack button). The same way Field Ops calls for an airstrike.


== g_fixedphysicsfps ==
To disable the feature set the g_maxMarkers to 0.


'''Description:'''
'''Type:''' Integer


Makes the fixedphysics act like all the clients have the same framerate, so that players with "magic" quake engine framerates don't have an unfair advantage. This CVAR must be between 60 and 333.
'''Default:''' 2


'''Type:''' integer
'''Minimum required version:''' 0.7.0


'''Default:''' 125
= Friendly Fire =


'''Note:'''
== g_friendlyFire  ==


This doesn't actually change the framerates in clients, so the clients can keep their own framerates.
'''Description:'''


== g_antiwarp==
To enable / disable friendly fire on server.&nbsp;


'''Description:'''
'''Type''': [0|1]


Enable ETPro-style antiwarp. This gives non-lagging players a much better game but for laggers it will be a bit more uncomfortable. This CVAR overrides both g_maxWarp AND g_skipCorrection in order to keep things consistent.
'''Default''': 0


'''Type:''' [0|1]
== g_friendlyFireOpts ==


'''Default:''' 1
'''Description:'''


== g_realHead==
Allows greater control over friendly fire events.


'''Description'''
'''Type:''' bitmask


Enable ETPro headboxes.
'''Parameters:'''


'''Type:''' [0|1]
1 Landmines ALWAYS damage teammates regardless of g_friendlyfire setting


'''Parameters:'''
2 Allow 'grenade boosting' when friendly fire is off


0 Regular headbox positions.
4 Non-engineer players do not trigger landmines on their own team
1 Server tracks the animations so the headbox will match the playermodels exactly. This is the recommended value.


'''Default:''' 1
8 Players do not trigger trip mines on their own team


'''Note:'''
16 Tripmines ALWAYS damage teammates regardless of g_friendlyfire setting


This code was originally from ETPro (b_realhead). It was contributed by zinx and added to ETPub by forty. silEnT is based on the ETPub source and this code has not been altered from the ETPub.
32 Only engineer that planted the landmine can trigger/defuse it (concerns team landmines only). This flag requires that the flag 4 is set.


== g_skipCorrection ==
'''Default:''' 0
 
'''Description:'''
 
Set this to 1 to enable Neil Toronto's unlagged2 skip correction. This will smooth out the movement of players with high packet loss (to a degree). This is similar to etpro's antiwarp, but has some differences. Neil likes this version better, bani likes his better.


This replaces g_smoothClients from etmain.
'''Changelog:'''


You can find a demo that shows g_skipCorrection in action at: http://et.tjw.org/etpub/skipCorrection/
Flag 32 was added in version 0.5.1.


'''Type:''' [0|1]


'''Default:''' 0
== g_reflectFriendlyFire ==
 
== g_maxWarp ==


'''Description:'''
'''Description:'''


This allows you to control the amount of "warping" that players with high packet loss can do. The [integer] is the number of server frames that you allow a player to miss before their next movement is put in check.
Similar to Shrub's g_friendlyfire 2 cvar. A multiplier value that determines how much friendly-fire damage, if any, is reflected back to the player that caused the damage. This setting is independent of g_friendlyfire, so damage can be set to reflect on both FF and non-FF servers.


A server frame is 50ms on a typical server (sv_fps set to 20).  This means that if you set g_maxWarp to 5 you won't allow players to warp from point A to point B if that distance takes an normal player 1/4
A value of 1.0 would reflect full damage.
of a second to travel. Setting this to 1 is a good way to drive off just about everyone from your server.


As far as I can tell, 1000ms is allowed by default in the game, so setting this to any value higher than 39 should have no effect if sv_fps is set to 10.
A value of 0.5 would reflect half damage.


You can find a demo that shows g_maxWarp in action at: http://et.tjw.org/etpub/skipCorrection/
Set to 0 to disable reflected friendly fire.


'''Type:''' integer
'''Type:''' float


'''Default:''' 4
'''Default:''' 0.0


= Miscallenous =
== g_reflectFFWeapons ==
 
== g_extraStatistics ==


'''Description:'''
'''Description:'''


Additional statistics over the end game awards.
Selects which category of weapon will reflect when g_reflectFriendlyFire is non-zero.


'''Type:''' bitmask
'''Type:''' bitmask
Line 2,747: Line 2,781:
'''Parameters:'''
'''Parameters:'''


1 Player with most mine kills
1 Enable reflected damage for Firearms (all types of guns)


2 Player with most mine damage inflicted
2 Enable reflected damage for Grenades and grenade launchers


4 Player with most knife kills
4 Enable reflected damage for Knives (includes thrown knives)


8 Player with most gibs
8 Enable reflected damage for Panzers


16 Player with most artillery kills
16 Enable reflected damage for Flamethrowers


32 Player with most airstrike kills
32 Enable reflected damage for Mortars


'''Default:''' 0
64 Enable reflected damage for Satchel Charges


== g_packDistance ==
128 Enable reflected damage for Artillery and Air Strikes
 
256 Enable reflected damage for Dynamite and Construction Damage


'''Description:'''
512 Enable reflected damage for Landmines


Set the distance at which health packs and ammo packs are thrown. Set this to 0 to make it just like etmain.  The settings should be similar to shrubet so set this to 2 for a subtle improvement.
'''Default:''' 31


'''Type:''' integer
'''Note:'''


'''Default:''' 0
Setting this value to zero will override any multiplier set via g_reflectFriendlyFire, effectively disabling reflecting damage.


== g_dropHealth ==
== g_teamDamageRestriction ==


'''Description:'''
'''Description:'''


If set to a positive integer, medics will drop [integer] number of health packs when they are gibbed. If set to -1, medics will drop the number of health packs that they could have dropped at the moment of their death. Set this to 0 to turn it off.
When greater than 0, anybody that has this percentage of hits inflicted on a teammate will automatically be kicked. A minimum of g_minhits hits total required before this is calculated. Client can see current stats for themselves by doing a /damage in console. Implemented to mimic shrub behavior as much as is possible, there are other ways to implement this feature, which may be implemented in addition to current manner.


'''Type:''' integer
'''Type:''' integer
Line 2,781: Line 2,817:
'''Default:''' 0
'''Default:''' 0


== g_dropAmmo ==
== g_minHits ==


'''Description:'''
'''Description:'''


If set to a positive integer, fieldops will drop [integer] number of ammo packs when they are gibbed. If set to -1, fieldops will drop the number of ammo packs that they could have dropped at the moment of their death. Set this to 0 to turn it off.
Minimum number of damaging hits required before calculating if player has reached g_teamDamageRestriction threshold. Flamethrower and landmine hits are adjusted similar to shrub. Medics get -2 hits for every revive.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 0
'''Default:''' 6
 
= Hitboxes, Physics & Anti Lag Settings =


== g_tossDistance==
== g_antilagDelay ==


'''Description:'''
'''Description:'''


Set the velocity at which health or ammo packs are tossed from the dead body when g_dropHealth or g_dropAmmo are activated. This changes the distance that these packs travel from the corpse.
Manually delay the antilag of every player on the server. Might give very weird behaviour, so use at own risk.


'''Type:''' integer
'''Type:''' integer
Line 2,801: Line 2,839:
'''Default:''' 0
'''Default:''' 0


== g_intermissionTime ==
== g_fixedphysics==


'''Description:'''
'''Description:'''


Set the length of time the end of game screens displays before loading the next map.
Creates a smoother movement when enabled.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 60
'''Default:''' 0


== g_intermissionReadyPercent ==
== g_fixedphysicsfps ==


'''Description:'''
'''Description:'''


The percent of connected players who need to hit the "READY" button to move on to the next map without waiting g_intermissionTime to run out.
Makes the fixedphysics act like all the clients have the same framerate, so that players with "magic" quake engine framerates don't have an unfair advantage. This CVAR must be between 60 and 333.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 100
'''Default:''' 125
 
'''Note:'''
 
This doesn't actually change the framerates in clients, so the clients can keep their own framerates.


== g_skills ==
== g_antiwarp==


'''Description:'''
'''Description:'''


Optional skill related flags.
Enable ETPro-style antiwarp. This gives non-lagging players a much better game but for laggers it will be a bit more uncomfortable. This CVAR overrides both g_maxWarp AND g_skipCorrection in order to keep things consistent.


'''Type:''' bitmask
'''Type:''' [0|1]


'''Parameters:'''
'''Default:''' 1


1 Players with level 4 battle sense can spot landmines for teammates
== g_realBody ==


2 Players with level 4 engineering can keep the flak jacket for other classes
'''Description'''


4 Players with level 4 first aid can keep adrenaline for other classes
If server admin sets this, the player hitboxes are adjusted smaller and harder to hit. Value 0 corresponds to the hitboxes used up to 0.5.0.


'''Default:''' 0
'''Parameters:'''
 
== g_misc==
'''Description'''


Miscallenous options.
0 Hitboxes used up to 0.5.0


'''Parameters'''
1 Use smaller hitboxes


Type: '''bitmask'''
'''Default:''' 0


1 Enable double jump.
'''Minimum required version:''' 0.5.1


2 Enable binoc master competition. Requires g_weapons 64 to be set.
'''Note'''


4 When a player is killed he can see the HP the killer has left.
To see the differences in the hitboxes, use g_debughitboxes server cvar. Do note that this kind of testing should not be done with many players because it will cause huge amount of lag.


8 Disable self damage.
== g_skipCorrection ==


16 Players can not jump if stamina is too low.
'''Description:'''


32 Enable Jaymod style doublejump.
Set this to 1 to enable Neil Toronto's unlagged2 skip correction. This will smooth out the movement of players with high packet loss (to a degree). This is similar to etpro's antiwarp, but has some differences. Neil likes this version better, bani likes his better.


64 Disable Falling Damage.
This replaces g_smoothClients from etmain.


128 Announce revives.
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 0


== g_moverScale ==
== g_maxWarp ==


'''Description:'''
'''Description:'''


Multiply the speed of movers (e.g. tanks) by float.
This allows you to control the amount of "warping" that players with high packet loss can do.  The [integer] is the number of server frames that you allow a player to miss before their next movement is put in check.
 
A server frame is 50ms on a typical server (sv_fps set to 20). This means that if you set g_maxWarp to 5 you won't allow players to warp from point A to point B if that distance takes an normal player 1/4
of a second to travel. Setting this to 1 is a good way to drive off just about everyone from your server.
 
As far as I can tell, 1000ms is allowed by default in the game, so setting this to any value higher than 39 should have no effect if sv_fps is set to 10.
 
'''Type:''' integer


'''Type:''' float
'''Default:''' 4


'''Default:''' 1.0
= Fun Wars and Crazy Settings =


== g_slashKill==
== g_panzerwar==


'''Description:'''
'''Description:'''


Controls the behavior of the /kill command. See also g_fear and g_maxSelfkills.
Enables/Disables Panzerwar. 1 is enabled, 0 is disabled.


'''Type:''' bitmask
'''Type:''' [0|1]


'''Parameters:'''
'''Default:''' 0


1 Player spawns with half charge bar after /kill
== g_sniperwar ==


2 Player spawns with 0 charge bar after /kill
'''Description:'''


4 Restores the charge bar to the same state it was in at the moment the player issued /kill (regardless of how long they were in limbo)
Enables/Disables Sniperwar. 1 is enabled, 0 is disabled.


8 Disable /kill when player is frozen
'''Type:''' [0|1]
 
16 Disable /kill when player is poisoned


'''Default:''' 0
'''Default:''' 0


== g_maxSelfkills ==
== g_riflewar ==


'''Description:'''
'''Description:'''


Amount of times a player can use /kill per map. Setting this to -1 will result in normal behaviour (infinite selfkills). Setting this to 0 will disable /kill.
Enables/Disables Riflewar. 1 is enabled, 0 is disabled.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' -1
'''Default:''' 0


== g_ammoCabinetTime ==
== g_min_crazyspeed ==


'''Description:'''
'''Description:'''


The time between ammo cabinet regenerations in milliseconds.
Set minimum speed for !crazyspeed command.


'''Type:''' integer
'''Type:''' Integer
 
'''Default:''' 200


'''Default:''' 60000
'''Minimum required version:''' 0.7.0


== g_healthCabinetTime ==
== g_max_crazyspeed ==


'''Description:'''
'''Description:'''


The time between health cabinet regenerations in milliseconds.
Set maximum speed for !crazyspeed command.
 
'''Type:''' Integer


'''Type:''' integer
'''Default:''' 540


'''Default:''' 10000
'''Minimum required version:''' 0.7.0


== g_spectator==
== g_min_crazygravity ==


'''Description:'''
'''Description:'''


Controls spectator behaviour.
Set minimum speed for !crazygravity command.


'''Type:''' bitmask
'''Type:''' Integer


'''Parameters:'''
'''Default:''' 10


1 When in freelook mode, you can 'fire' at a player to follow. If you miss a player, nothing happens.
'''Minimum required version:''' 0.7.0


2 When in freelook mode with the 1 flag set, if you shoot and miss you start following the next available player.
== g_max_crazygravity ==


4 When the player you're following goes into limbo, don't move to the next available player.
'''Description:'''


8 When the player you're following goes into limbo, go to freelook instead of following the next available player. (4 has precedence)
Set max speed for !crazygravity command.


'''Default:''' 0
'''Type:''' Integer


== g_truePing ==
'''Default:''' 1200


'''Description:'''
'''Minimum required version:''' 0.7.0


Allows players to see the true amount of time it takes until their actions are processed on the server. Pings will show around 50 ms higher than normal, but it's more accurate. Shows in the scoreboard.
= Watermark =


'''Type:''' [0|1]
== g_watermark==


'''Default:''' 0
'''Description:'''


== g_dropObj ==
Set a watermark that will be displayed to all clients. The watermark must be put in a folder named "watermark" and then this whole folder needs to be zipped into a .pk3 file. The silEnT watermark is "logo_silent.tga".


'''Description:'''
'''Type:''' string


Sets the number of times a player can drop/toss the objective (e.g. parts on radar) per life.
'''Default:''' ""


The parts are dropped by pressing the +activate key (usually bound to F) when there's nothing else around to be activated.
== g_watermarkFadeAfter ==


Before enabling this recall how spammy the voiceovers can be. Then picture a player tossing the parts to himself over and over again. For this reason you probably don't want to set this very high.
'''Description:'''


Players must switch to knife in order to drop the objective. If they are not holding knife and hit +activate they will see a message that notifies them that they must switch to knife.  This change was made to prevent accidental dropping of the objective when trying to push, drag, pick up, or activate something else.
When g_watermark is set, the watermark will fade out after [integer] number of seconds.


'''Type:''' integer
'''Type:''' integer
Line 2,974: Line 3,022:
'''Default:''' 0
'''Default:''' 0


== g_doubleJumpHeight ==
== g_watermarkFadeTime ==


'''Description:'''
'''Description:'''


Adjusts the height of the second jump in a double jump. This value is a multiplier to the default jump velocity. The greater g_doubleJumpHeight is, the greater the height of the second jump. This setting has no effect if double jump is disabled in g_misc.
When g_watermarkFadeAfter is set, the watermark will fade out in [integer] seconds. (So the fading process from 1.0 alpha to 0.0 alpha takes [integer] seconds.
 
'''Type:''' integer


'''Type:''' float
'''Default:''' 0


'''Default:''' 1.4
= Hitsounds =


== g_serverInfo==
== g_hitsounds ==


'''Description:'''
'''Description:'''


Use this cvar to change the behaviour of the 'serverinfo' string.  This string is printed in response to the 'getstatus' primative command used by game browsers.
Server side hitsound options.


'''Type:''' bitmask
'''Type:''' bitmask
Line 2,994: Line 3,044:
'''Parameters:'''
'''Parameters:'''


1 Display player team information using the 'P' cvar in the server info string. (etpro and etmain 2.60 behaviour)
1 Enable hitsounds


2 Display player team information using the 'Players_Axis' and 'Players_Allies' cvars in the server info string. (etmain < 2.60 behaviour)
2 Disable hitsounds when shooting wounded players


4 Display the 'campaign_maps' cvar in the server info string. This contains a comma delimited list off all the maps in the current campaign. Only works if you have g_gametype set to 4.
4 Disable the headshot sound when shooting wounded player in the head. (default hitsound will be used in it's place)


8 Displays the 'C' CVAR in the server info string.  This is a string containing the current map number in the campaign, and total maps in current campaign, in the form of &quot;xx,yy&quot;.  Only works if you have g_gametype set to 4.
8 Enable warning sound from hitting team mates


16 The class charge times will not be present in the server info string unless this flag is set. They are removed by default in order to make room in the serverInfo string for more useful information. These cvars are g_medicChargeTime, g_engineerChargeTime, g_LTChargeTime, g_covertopChargeTime, g_soldierChargeTime.
16 Disable hitsounds from poison damage


32 Send KR (KillRating) instead of XP in SERVERINFO string.  This is overriden by flag 64.
32 Disable hitsounds from explosive weapons
 
64 Send PR (PlayerRating) instead of XP/KR in SERVERINFO string. Overrides flag 32.


'''Default:''' 1
'''Default:''' 1
Line 3,012: Line 3,060:
'''Note:'''
'''Note:'''


This cvar MUST be set prior to loading the first map. You will not be able to change this cvar once the game code is loaded. The serverInfo string has a fixed length of 1024 characters.  This space is shared with any cvar you create on your server with the 'sets' command.  If you use up too much space with 'sets', your server will fail to start.  It will print the message "Info string length exceeded" if you don't have enough space left in your serverinfo string to handle the g_serverInfo flags you've selected. To fix this, either remove some sets cvars from your config, or use different g_serverInfo flags.
A client can disable hitsounds with cg_hitSounds client cvar. Also an option to play only headshots is available.


== g_fear ==
== g_defaultHitSounds ==


'''Description:'''
'''Description:'''


If a player uses the /kill command within g_fear milliseconds after taking damage from an enemy, the attacker that last damaged that player will recieve full credit for the kill and the mode of death will be recorded as MOD_FEAR. Other restrictions are that the attacker must be on the opposite team and the attacker must still be alive.
Selects the default hit sounds on the server. Starting from silEnT 0.6.0, it is possible for the players to choose what kind of hit sounds are played. If the client cvar cg_hitSoundType is 0, the g_defaultHitSounds determines what type of hit sounds are used. Also, if the client cvar cg_hitSoundType is 0, the server may also add custom hit sound files in a custom pk3 file. These sounds are automatically loaded if available. However, if the client cvar cg_hitSoundType is 1, 2 or 3, the client will use strictly the hit sounds they have selected. Custom hit sounds are placed to the root folder "sounds/hitsounds" in the custom pk3. They must never overload any of the files in the subfolders, silent, etpro or etpub.


G_fear applies also to players that try to switch teams within g_fear milliseconds. The player will remain in the same team and the usual g_fear behavior applies.
'''Type:''' [0|1|2|3]


In-game statistics will reflect that the death was caused by the weapon that did the last recorded damage to the player.
'''Parameters:'''


Set this to 0 to disable this behaviour.
0 No selection, will default to silEnT in the client end.


'''Type:''' integer
1 Defaults silEnT hitsounds.


'''Default:''' 2000
2 Defaults ETPro hitsounds.


== g_inactivity ==
3 Defaults ETPub hitsounds.


'''Description:'''
'''Default:''' 1


The number of seconds of player inactivity before the player is made a spectator.
'''Minimum required version:''' 0.6.0


'''Type:''' integer
= Intermission =


'''Default:''' 0
== g_intermissionTime ==
 
== g_spectatorInactivity==


'''Description:'''
'''Description:'''


g_spectatorInactivity kicks only when the server is full.
Set the length of time the end of game screens displays before loading the next map.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 0
'''Default:''' 60


== g_gametype ==
== g_intermissionReadyPercent ==


'''Description:'''
'''Description:'''


Please see Map Voting.
The percent of connected players who need to hit the "READY" button to move on to the next map without waiting g_intermissionTime to run out.


'''Type:''' [2|3|4|5|6|7]
'''Type:''' integer


'''Parameters:'''
'''Default:''' 100


2 Objective
= Miscellaneous =


3 Stopwatch
== g_proneDelay ==


4 Campaign
'''Description:'''


5 Last Man Standing
If set, there will be 1750 ms delay after every prone or getting up before the player can prone or get up again. Also, weapon spread will be maxed for 1 second after proning.


6 Map Voting
'''Type:''' [0|1]


7 Team Death Match
'''Parameters:'''


'''Default:''' 4
'''Default:''' 0


== g_spoofOptions ==
== g_realPlayTime ==


'''Description:'''
'''Description:'''


Options for PunkBuster GUID and IP spoof detections and behaviour.
Show additional real play time of the payer (without spec time) in the debriefing screen at the end of the map.
For instance: 6/10 would mean that player played 6 minutes, was on the server for 10 minutes and 4 minutes was in spec.


'''Type:''' bitmask
'''Type:''' [0|1]


'''Parameters:'''
'''Parameters:'''


1 Kick for GUIDspoofing.
'''Default:''' 1


2 Kick for IPspoofing.
'''Minimum required version:''' 0.6.0


4 Display a global warning when someone is GUIDspoofing. (When flag 1 is set, this will not work)
== g_extraStatistics ==


8 Display a global warning when someone is IPspoofing. (When flag 2 is set, this will not work)
'''Description:'''


16 Don't use the stored GUID. (This option is a higher security risk.)
Additional statistics over the end game awards.


32 Don't use the stored IP. (This option is a higher security risk.)
'''Type:''' bitmask


'''Default:''' 3
'''Parameters:'''


'''Note:'''
1 Player with most mine kills


Do NOT change this CVAR unless you encounter problems!
2 Player with most mine damage inflicted


== g_maxNameChanges ==
4 Player with most knife kills


'''Description:'''
8 Player with most gibs


Limit the number of namechanges per player per map by setting this cvar. This is especially needed if you have cheaters that autochange their name every second. Set to -1 to disable.
16 Player with most artillery kills


'''Type:''' integer
32 Player with most airstrike kills


'''Default:''' 3
'''Default:''' 0


== g_disableComplaints ==
== g_packDistance ==


'''Description:'''
'''Description:'''


Disable teamkill complaints for some weapons.
Set the distance at which health packs and ammo packs are thrown. Set this to 0 to make it just like etmain.  The settings should be similar to shrubet so set this to 2 for a subtle improvement.


'''Type:''' bitmask
'''Type:''' integer


'''Parameters:'''
'''Default:''' 0


1 Landmines
== g_dropHealth ==


2 Artillery and airstrikes
'''Description:'''


4 Mortar
If set to a positive integer, medics will drop [integer] number of health packs when they are gibbed.  If set to -1, medics will drop the number of health packs that they could have dropped at the moment of their death. Set this to 0 to turn it off.


8 Dynamite
'''Type:''' integer


'''Default:''' 0
'''Default:''' 0


== g_watermark==
== g_dropAmmo ==


'''Description:'''
'''Description:'''


Set a watermark that will be displayed to all clients. The watermark must be put in a folder named "watermark" and then this whole folder needs to be zipped into a .pk3 file. The silEnT watermark is "logo_silent.tga".
If set to a positive integer, fieldops will drop [integer] number of ammo packs when they are gibbed.  If set to -1, fieldops will drop the number of ammo packs that they could have dropped at the moment of their death. Set this to 0 to turn it off.


'''Type:''' string
'''Type:''' integer


'''Default:''' ""
'''Default:''' 0


== g_watermarkFadeAfter ==
== g_tossDistance==


'''Description:'''
'''Description:'''


When g_watermark is set, the watermark will fade out after [integer] number of seconds.
Set the velocity at which health or ammo packs are tossed from the dead body when g_dropHealth or g_dropAmmo are activated. This changes the distance that these packs travel from the corpse.


'''Type:''' integer
'''Type:''' integer
Line 3,152: Line 3,199:
'''Default:''' 0
'''Default:''' 0


== g_watermarkFadeTime ==
== g_misc==
 
'''Description'''
 
Miscellaneous options.


'''Description:'''
'''Parameters'''


When g_watermarkFadeAfter is set, the watermark will fade out in [integer] seconds. (So the fading process from 1.0 alpha to 0.0 alpha takes [integer] seconds.
Type: '''bitmask'''


'''Type:''' integer
1 Enable double jump.


'''Default:''' 0
2 Enable binoc master competition. Requires g_weapons 64 to be set.


== g_panzerwar==
4 When a player is killed he can see the HP the killer has left.


'''Description:'''
8 Disable self damage.


Enables/Disables Panzerwar. 1 is enabled, 0 is disabled.
16 Players can not jump if stamina is too low.


'''Type:''' [0|1]
32 Enable Jaymod style doublejump.


'''Default:''' 0
64 Disable Falling Damage.


== g_sniperwar ==
128 Announce revives.


'''Description:'''
256 Setting this flag disables the "First Blood" announcement.


Enables/Disables Sniperwar. 1 is enabled, 0 is disabled.
512 Full body predict. This makes it harder to get inside for example walls and stones. Same as ETPub g_misc 32 + 256. Do note that this can cause problems when proning through windows and similar narrow passages


'''Type:''' [0|1]
1024 Enable the enemy team objective carry indicator.


'''Default:''' 0
'''Default:''' 0


== g_riflewar ==
'''Changelog:'''
* Flag 1024 was added in version 0.8.2.
 
== g_moverScale ==


'''Description:'''
'''Description:'''


Enables/Disables Riflewar. 1 is enabled, 0 is disabled.
Multiply the speed of movers (e.g. tanks) by float.


'''Type:''' [0|1]
'''Type:''' float


'''Default:''' 0
'''Default:''' 1.0


== g_countryFlags ==
== g_slashKill==


'''Description:'''
'''Description:'''


Sets whether the players will see the GeoIP country flags in the crosshair when aiming at someone and in the scoreboard. Players can enable/disable it with cg_countryFlags (default 1).
Controls the behavior of the /kill command. See also g_fear and g_maxSelfkills.


You will need the GeoIP.dat file in your server's silent folder. You should read and accept the license of the GeoIP.dat database!
'''Type:''' bitmask


Read the database license at http://geolite.maxmind.com/download/geoip/database/LICENSE.txt
'''Parameters:'''
Download the latest database at http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz


'''Type:''' [0|1]
1 Player spawns with half charge bar after /kill


'''Default:''' 1
2 Player spawns with 0 charge bar after /kill


== g_noSkillUpgrades==
4 Restores the charge bar to the same state it was in at the moment the player issued /kill (regardless of how long they were in limbo)


'''Description:'''
8 Disable /kill when player is frozen


When set to 1, disables player skill upgrades.
16 Disable /kill when player is poisoned
 
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 0


== g_flushItems ==
== g_maxSelfkills ==


'''Description:'''
'''Description:'''


Evens the dropped items out with the surface.
Amount of times a player can use /kill per map. Setting this to -1 will result in normal behaviour (infinite selfkills). Setting this to 0 will disable /kill.


'''Type:''' [0|1]
'''Type:''' integer


'''Default:''' 1
'''Default:''' -1


== g_maxConnsPerIP ==
== g_ammoCabinetTime ==


'''Description:'''
'''Description:'''


Maximum number of connections allowed from one particular IP. This prevents the fake clients Denial of Service attack.
The time between ammo cabinet regenerations in milliseconds.


'''Type:''' integer
'''Type:''' integer


'''Default:''' 4
'''Default:''' 60000


== shoutcastPassword ==
== g_healthCabinetTime ==


'''Description:'''
'''Description:'''


Enables shoutcaster status on the server.
The time between health cabinet regenerations in milliseconds.


'''Type:''' string
'''Type:''' integer


'''Default:''' "none"
'''Default:''' 10000


== g_headshot==
== g_spectator==


'''Description:'''
'''Description:'''


Controls additional head shot options.
Controls spectator behaviour.


'''Type:''' bitmask
'''Type:''' bitmask
Line 3,257: Line 3,308:
'''Parameters:'''
'''Parameters:'''


1 Headshots only
1 When in freelook mode, you can 'fire' at a player to follow. If you miss a player, nothing happens.
 
2 When in freelook mode with the 1 flag set, if you shoot and miss you start following the next available player.
 
4 When the player you're following goes into limbo, don't move to the next available player.


2 Instagib damage (controlled by g_instagibDamage)
8 When the player you're following goes into limbo, go to freelook instead of following the next available player. (4 has precedence)


'''Default:''' 0
'''Default:''' 0


== g_instagibDamage ==
== g_truePing ==


'''Description:'''
'''Description:'''


Damage used for instagib mode (e.g. set this to 160 so that a player can still be revived after being shot.).
Allows players to see how much their local game is behind the top time (the time of the latest server frame). Pings will show around 50 ms better than if the ping would show network latency, but it's more accurate. Remember that the server is sending a snapshot to players in every 50 ms. This makes the players to inherenty play in the past from the server point of view.


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 400
'''Default:''' 0


== g_inactivityOptions ==
== g_dropObj ==


'''Description:'''
'''Description:'''


Controls additional inactivity options.
Sets the number of times a player can drop/toss the objective (e.g. parts on radar) per life.


'''Type:''' bitmask
The parts are dropped by pressing the +activate key (usually bound to F) when there's nothing else around to be activated.


'''Parameters:'''
Before enabling this recall how spammy the voiceovers can be. Then picture a player tossing the parts to himself over and over again. For this reason you probably don't want to set this very high.


1 Don't drop shoutcasters
Players must switch to knife in order to drop the objective. If they are not holding knife and hit +activate they will see a message that notifies them that they must switch to knife.  This change was made to prevent accidental dropping of the objective when trying to push, drag, pick up, or activate something else.


2 Don't drop spectators when in following mode
'''Type:''' integer


4 ETmain inactivity behavior (don't wait for a full server)
'''Default:''' 0


8 Shrubbot flag '0' admins will be moved to spectators due to team inactivity
== g_doubleJumpHeight ==


'''Default:''' 3
'''Description:'''
 
Adjusts the height of the second jump in a double jump.  This value is a multiplier to the default jump velocity. The greater g_doubleJumpHeight is, the greater the height of the second jump.  This setting has no effect if double jump is disabled in g_misc.
 
'''Type:''' float
 
'''Default:''' 1.4


== g_ettvFlags ==
== g_serverInfo==


'''Description:'''
'''Description:'''


Controls additional ETTV options.
Use this cvar to change the behaviour of the 'serverinfo' string.  This string is printed in response to the 'getstatus' primative command used by game browsers.


'''Type:''' bitmask
'''Type:''' bitmask
Line 3,303: Line 3,364:
'''Parameters:'''
'''Parameters:'''


1 Prevent ettv slaves from being callvote kicked
1 Display player team information using the 'P' cvar in the server info string. (etpro and etmain 2.60 behaviour)


2 Grant shoutcaster status to ettv slaves
2 Display player team information using the 'Players_Axis' and 'Players_Allies' cvars in the server info string. (etmain < 2.60 behaviour)


'''Default:''' 3
4 Display the 'campaign_maps' cvar in the server info string. This contains a comma delimited list off all the maps in the current campaign. Only works if you have g_gametype set to 4.


== g_mode==
8 Displays the 'C' CVAR in the server info string.  This is a string containing the current map number in the campaign, and total maps in current campaign, in the form of &quot;xx,yy&quot;.  Only works if you have g_gametype set to 4.


'''Description:'''
16 The class charge times will not be present in the server info string unless this flag is set. They are removed by default in order to make room in the serverInfo string for more useful information. These cvars are g_medicChargeTime, g_engineerChargeTime, g_LTChargeTime, g_covertopChargeTime, g_soldierChargeTime.


Controls some additional modes for fun or for testing.
32 Send KR (KillRating) instead of XP in SERVERINFO string.  This is overriden by flag 64.


'''Type:''' bitmask
64 Send PR (PlayerRating) instead of XP/KR in SERVERINFO string. Overrides flag 32.


'''Parameters:'''
'''Default:''' 1


1 Players will spawn instantly
'''Note:'''


2 Each class receives adrenaline
This cvar MUST be set prior to loading the first map. You will not be able to change this cvar once the game code is loaded. The serverInfo string has a fixed length of 1024 characters.  This space is shared with any cvar you create on your server with the 'sets' command.  If you use up too much space with 'sets', your server will fail to start.  It will print the message "Info string length exceeded" if you don't have enough space left in your serverinfo string to handle the g_serverInfo flags you've selected. To fix this, either remove some sets cvars from your config, or use different g_serverInfo flags.


4 No damage on players
== g_fear ==


8 Players can pick up any weapon on the ground (Removing this bitflag will force all players to respawn!)
'''Description:'''


'''Default:''' 0
If a player uses the /kill command within g_fear milliseconds after taking damage from an enemy, the attacker that last damaged that player will recieve full credit for the kill and the mode of death will be recorded as MOD_FEAR.  Other restrictions are that the attacker must be on the opposite team and the attacker must still be alive.


== g_hitsounds ==
G_fear applies also to players that try to switch teams within g_fear milliseconds. The player will remain in the same team and the usual g_fear behavior applies.


'''Description:'''
In-game statistics will reflect that the death was caused by the weapon that did the last recorded damage to the player.
 
Set this to 0 to disable this behaviour.
 
'''Type:''' integer
 
'''Default:''' 2000


Server side hitsound options.
== g_maxNameChanges ==


'''Type:''' bitmask
'''Description:'''


'''Parameters:'''
Limit the number of namechanges per player per map by setting this cvar. This is especially needed if you have cheaters that autochange their name every second. Set to -1 to disable.


1 Enable hitsounds
'''Type:''' integer


2 Disable hitsounds when shooting wounded players
'''Default:''' 3


4 Disable the headshot sound when shooting wounded player in the head. (default hitsound will be used in it's place)
== g_disableComplaints ==


8 Enable warning sound from hitting team mates
'''Description:'''


16 Disable hitsounds from poison damage
Disable teamkill complaints for some weapons.


32 Disable hitsounds from explosive weapons
'''Type:''' bitmask


'''Default:''' 1
'''Parameters:'''


'''Note:'''
1 Landmines


A client can disable hitsounds with cg_hitSounds client cvar. Also an option to play only headshots is available.
2 Artillery and airstrikes


== g_playDead ==
4 Mortar


'''Description:'''
8 Dynamite


Allows players to use the 'playdead' command and their character will act like it is dead until the playdead command is used again (or they really die).
16 Tripmines


'''Type:''' [0|1]
32 Completely


'''Default:''' 0
'''Default:''' 0


== g_shove ==
== g_countryFlags ==


'''Description:'''
'''Description:'''


Allows players to push other players with the "use" key. The integer adjusts the amount of force players shove with. 80 seems fair.
Sets whether the players will see the GeoIP country flags in the crosshair when aiming at someone and in the scoreboard. Players can enable/disable it with cg_countryFlags (default 1).
 
You will need the GeoIP.dat file in your server's silent folder. You should read and accept the license of the GeoIP.dat database!
 
Read the database license at http://geolite.maxmind.com/download/geoip/database/LICENSE.txt
Download the latest database at http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz


'''Type:''' integer
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 1


== g_shoveNoZ==
== g_incognitoCountryFlag ==


'''Description:'''
'''Description:'''


Set this to 1 if you want to disable shove in the up/down direction (a.k.a "boosting").
Defines the country flag to be used for the incognito admin. If the incognito admin joins the server, the country flag set by this cvar is displayed for him. Please check this table silEnT geoIP countries to check what to use as the value. GeoIP has to be enabled for this cvar to work, please read: g_countryFlags. To disable set to -1.


'''Type:''' [0|1]
'''Type:''' [-1|255]


'''Default:''' 0
'''Default:''' -1


== g_dragCorpse ==
== g_noSkillUpgrades==


'''Description:'''
'''Description:'''


Allows players do drag wounded players with the use key when moving backward slowly.  Works best when crouching or prone.
When set to 1, disables player skill upgrades.


'''Type:''' [0|1]
'''Type:''' [0|1|2]


'''Default:''' 0
0 No skill locking.


== g_classChange ==
1 Lock skills.


'''Description:'''
2 Lock skills and hide all HUD elemnts that would show the skill levels.


Allows players to take the class of a gibbed teammate temporarily similarly to how a covert steals an uniform.  Class changing does not latch, so the original class the player had will be restored on respawn.
'''Default:''' 0


'''Type:''' [0|1]
'''Change Log:'''


'''Default:''' 0
Starting from silEnT version 0.6.0, this cvar will lock the skills to the always enabled levels. See the skill_x cvars. Also, it is possible to hide the skill levels from the player HUDs setting this cvar to value 2.


== g_forceLimboHealth ==
== g_flushItems ==


'''Description:'''
'''Description:'''


If set to 0 it takes about 3 shots to gib a wounded player, if set to 1 it takes about 5.
Evens the dropped items out with the surface.


'''Type:''' [0|1]
'''Type:''' [0|1]
Line 3,417: Line 3,489:
'''Default:''' 1
'''Default:''' 1


== g_goomba==
== g_maxConnsPerIP ==


'''Description:'''
'''Description:'''


If set to a positive integer, players can damage each other by landing on each other. The integer is multiplier that determines how much damage should be done to the player that was fallen on. Also the impact for the falling player will be broken so that they only recieve 20% of the damage they would have normally.  It is also possible to do small amounts of damage (5HP) to other players by hopping up and down on them.
Maximum number of connections allowed from one particular IP. This prevents the fake clients Denial of Service attack.


Falling damage can be either 500, 50, 25, 15, or 10 depending on the length of the fall.  So if you set g_goomba to 5 and land on a player from a fall that would have damaged you 10HP, you will inflict 50HP of damage on the player you land on, and you will only recieve 2HP of damage.
'''Type:''' integer


See also g_goombaFlags
'''Default:''' 4


Set this to 0 to disable it
== shoutcastPassword ==
 
'''Description:'''
 
Enables shoutcaster status on the server.


'''Type:''' integer
'''Type:''' string


'''Default:''' 0
'''Default:''' "none"


== g_goombaFlags ==
== g_headshot==


'''Description:'''
'''Description:'''


Controls the way g_goomba is handled.
Controls additional head shot options.


'''Type:''' bitmask
'''Type:''' bitmask
Line 3,443: Line 3,519:
'''Parameters:'''
'''Parameters:'''


1 Cannot do goomba damage to teammates.
1 Headshots only


2 Short falls (hopping) on another player does no damage.
2 Instagib damage (controlled by g_instagibDamage)
 
4 Short falls (hopping) does no damage to teammates. (not necessary if 1 or 2 flag is set)
 
8 Falling player recieves no damage when landing on any other player. (default is to recieve 20% of the damage the fall would have given if not landing on a player).
 
16 Insta-gib goomba. All goomba damage will be 500HP regardless of fall distance. The exception is hopping on anther player which still does 5HP of damage.
 
32 Falling corpses won't cause damage.


'''Default:''' 0
'''Default:''' 0


'''Note:'''
== g_instagibDamage ==
 
Set this to 31 to have g_goomba work like shrubet.
 
== g_spawnInvul ==


'''Description:'''
'''Description:'''


The number of seconds players will be invincible after they spawn.
Damage used for instagib mode (e.g. set this to 160 so that a player can still be revived after being shot.).


'''Type:''' integer
'''Type:''' integer


'''Default:''' 3
'''Default:''' 400


== g_spawnInvulFair ==
== g_ettvFlags ==


'''Description:'''
'''Description:'''


Removes the spawn protection when the player fires his first shot (note : the spawn protection will still be removed after the g_spawnInvul time)
Controls additional ETTV options.


'''Type:''' [0|1]
'''Type:''' bitmask


'''Default:''' 1
'''Parameters:'''


== g_spinCorpse==
1 Prevent ettv slaves from being callvote kicked


'''Description:'''
2 Grant shoutcaster status to ettv slaves


Allow players to use +left and +right binds to spin their corpse when dead or playing dead.
'''Default:''' 3


'''Type:''' [0|1]
== g_mode==
 
'''Default:''' 0
 
== g_teamChangeKills ==


'''Description:'''
'''Description:'''


If set to 0, players are allowed one non-killing team change per respawn cycle.  If a player changes teams, he will be instantly spawned in the other teams default spawn point.  Players will die (but not lose a life) if they change teams a second time in one spawn cycle.
Controls some additional modes for fun or for testing.


'''Type:''' [0|1]
'''Type:''' bitmask


'''Default:''' 1
'''Parameters:'''


= Logs =
1 Players will spawn instantly


== g_logOptions==
2 Each class receives adrenaline


'''Description:'''
4 No damage on players


This is meant to match the shrubmod g_logOptions cvar, but so far the only implemented flags are:
8 Players can pick up any weapon on the ground (Removing this bitflag will force all players to respawn!)


'''Type:''' bitmask
'''Default:''' 0


'''Parameters:'''
== g_playDead ==


1 Server outputs obituaries to chat
'''Description:'''


2 Adrenaline countdown displayed
Allows players to use the 'playdead' command and their character will act like it is dead until the playdead command is used again (or they really die).


4 Disable display of tap-out confirmation box
'''Type:''' [0|1]


8 Display connection attempts by banned players
'''Default:''' 0


16 Display gib reports ("&lt;victim&gt; was gibbed by &lt;attacker&gt;")
== g_shove ==


32 Omit "item" lines from log file
'''Description:'''


64 Value not in use
Allows players to push other players with the "use" key.  The integer adjusts the amount of force players shove with. 80 seems fair.


128 GUID's are logged in the game log
'''Type:''' integer


256 Log all private messages (/m commands).  This setting won't have any effect unless g_tyranny is enabled.
'''Default:''' 80
 
== g_shoveNoZ==


512 Logs the real time into logs, instead of the normal uptime of the server.
'''Description:'''


1024 Value is not in use
Set this to 1 if you want to disable shove in the up/down direction (a.k.a "boosting").


2048 Print TK death message like a normal kill message, giving killing weapon, except it is preceeded by a red TEAMKILL: identifier. Only works if g_obituary is set to 3.
'''Type:''' [0|1]


'''Default:''' 0
'''Default:''' 1


== g_logAdmin==
== g_dragCorpse ==


'''Description:'''
'''Description:'''


The name of the file that all shrubbot commands will be logged to. For example, g_logAdmin "admin.log".
Allows players do drag wounded players with the use key when moving backward slowly. Works best when crouching or prone.


'''Type:''' string
'''Type:''' [0|1]


'''Default:''' ""
'''Default:''' 0


= Omni-Bots =
== g_classChange ==
 
== omnibot_enable ==


'''Description:'''
'''Description:'''


When set to 1, OmniBot functionality is enabledYou still need to have OmniBots installed correctly in order for OmniBots to work.
Allows players to take the class of a gibbed teammate temporarily similarly to how a covert steals an uniformClass changing does not latch, so the original class the player had will be restored on respawn.


'''Type:''' [0|1]
'''Type:''' [0|1]


'''Default:''' 1
'''Default:''' 0


== omnibot_path ==
== g_forceLimboHealth ==


'''Description:'''
'''Description:'''


The path where the OmniBot dll/so file is installed. If you installed omni-bot correctly, then you do not need to modify this cvar. Leaving this cvar blank will search for the OmniBot file in the default locations.
If set to 0 it takes about 3 shots to gib a wounded player, if set to 1 it takes about 5.


'''Type:''' string
'''Type:''' [0|1]


'''Default:''' ""
'''Default:''' 1


== g_bot_maxXP ==
== g_goomba==


'''Description:'''
'''Description:'''


Any bots present will have their XP reset after this much XP is reached. If g_maxXP is also set to a value greater than -1, then the bot XP will be reset whenever the lower limit of the two is hit. Set this to -1 to disable this feature
If set to a positive integer, players can damage each other by landing on each other. The integer is multiplier that determines how much damage should be done to the player that was fallen on.  Also the impact for the falling player will be broken so that they only recieve 20% of the damage they would have normally.  It is also possible to do small amounts of damage (5HP) to other players by hopping up and down on them.


'''Type:''' integer
Falling damage can be either 500, 50, 25, 15, or 10 depending on the length of the fall.  So if you set g_goomba to 5 and land on a player from a fall that would have damaged you 10HP, you will inflict 50HP of damage on the player you land on, and you will only recieve 2HP of damage.


'''Default:''' -1
See also g_goombaFlags


== g_bot_minPlayers ==
Set this to 0 to disable it


'''Description:'''
'''Type:''' integer


Ensures that there are at least g_bot_minPlayers playing (non-spec) in your server at any one time. If there are not enough human players playing, bots are added as needed. Once there are g_bot_minPlayers human players playing on the server there will be no bots.
'''Default:''' 0


Bots will only be added/removed during normal gameplay, never during the intermission. You must have bots enabled and working on your server for this setting to work. Do not set g_bot_minPlayers to the maximum number of players your server can have. If you do so, no one will be able to connect to your server since it will always be full.
== g_goombaFlags ==
g_bot_minPlayers works by modifying the minbots and maxbots omni-bot values. If you activate g_bot_minPlayers, your current minbots/maxbots values will be overwritten.
Set this to -1 to disable this feature
 
'''Default:''' -1
 
== omnibot_flags==


'''Description:'''
'''Description:'''


Customizes bot management/behavior.
Controls the way g_goomba is handled.


'''Type:''' bitmask
'''Type:''' bitmask
Line 3,603: Line 3,657:
'''Parameters:'''
'''Parameters:'''


1 Disables XPSave for bots
1 Cannot do goomba damage to teammates.


2 Bots cannot mount tanks
2 Short falls (hopping) on another player does no damage.


4 Bots cannot mount emplaced guns
4 Short falls (hopping) does no damage to teammates. (not necessary if 1 or 2 flag is set)


8 Don't track bot count in omnibot_playing cvar
8 Falling player recieves no damage when landing on any other player. (default is to recieve 20% of the damage the fall would have given if not landing on a player).


16 Bots will target ungibbed enemies
16 Insta-gib goomba. All goomba damage will be 500HP regardless of fall distance. The exception is hopping on anther player which still does 5HP of damage.


32 Bots will trigger team and spotted mines
32 Falling corpses won't cause damage.


64 Bots can use g_shove
'''Default:''' 0


65536 Bots are granted shrubbot command immunity (the same as shrubbot flag !)
'''Note:'''


131072 Bots cannot be !kicked or !banned
Set this to 31 to have g_goomba work like shrubet.


262144 Disable shrubbot greeting for bots
== g_spawnInvul ==


'''Default:''' 0
'''Description:'''


= Lua =
The number of seconds players will be invincible after they spawn.


== lua_modules==
'''Type:''' integer


'''Description:'''
'''Default:''' 3


List of files to be loaded by the Lua API engine. Can be separated by space, comma or semicolon. The paths are relative to the mod's directory, and can optionally be placed inside pk3 archieves. We are aiming for compatibility with ETPro's Lua Mod API found at http://wolfwiki.anime.net/index.php/Lua_Mod_API.
== g_spawnInvulFair ==
 
'''Description:'''
 
Removes the spawn protection when the player fires his first shot (note : the spawn protection will still be removed after the g_spawnInvul time)
 
'''Type:''' [0|1]
 
'''Default:''' 1
 
== g_spinCorpse==
 
'''Description:'''
 
Allow players to use +left and +right binds to spin their corpse when dead or playing dead.
 
'''Type:''' [0|1]
 
'''Default:''' 0
 
== g_teamChangeKills ==
 
'''Description:'''
 
If set to 0, players are allowed one non-killing team change per respawn cycle. If a player changes teams, he will be instantly spawned in the other teams default spawn point. Players will die (but not lose a life) if they change teams a second time in one spawn cycle.


'''Type:''' string
'''Type:''' [0|1]


'''Default:''' ""
'''Default:''' 1


== lua_allowedModules==
== g_maxIgnoresPerMap ==


'''Description:'''
'''Description:'''


List of sha1 signatures for the lua modules to be loaded by the Lua API engine. Can be separated by space, comma or semicolon. Only lua modules with the matching sha1 signature listed in this cvar will be allowed to load by the Lua API engine (ACL).
The maximum number of times one player can ignore another player during one map. This can prevent spamming other players with the ignore command. The value can be between 0 and 255. Any value higher than 255 will always allow ignoring. Any value below 1 will disable ignoring completely.
 
'''Type:''' Integer
 
'''Default:''' 2
 
'''Minimum required version:''' 0.7.0
 
= Logs =


'''Type:''' string
== g_logOptions==
 
'''Description:'''
 
This is meant to match the shrubmod g_logOptions cvar, but so far the only implemented flags are:
 
'''Type:''' bitmask
 
'''Parameters:'''
 
1 Server outputs obituaries to chat.
 
2 Adrenaline countdown displayed.
 
4 Disable display of tap-out confirmation box.
 
8 Display connection attempts by banned players.
 
16 Display gib reports ("&lt;victim&gt; was gibbed by &lt;attacker&gt;").
 
32 Omit "item" lines from log file.
 
64 Report gibs.
 
128 GUID's are logged in the game log. Note, if this option is enabled the VSP log parser will not work.
 
256 Log all private messages (/m commands).  This setting won't have any effect unless g_tyranny is enabled.
 
512 Logs the real time into logs, instead of the normal uptime of the server.
 
1024 This flag allows logging every player drop. It can be usefull for inspecting the server operation, but it will also cause lot of needless log writes.
 
2048 Unused.
 
4096 Log client cvar values.
 
8192 Log cvar values only when found from the client. Note that flag 4096 must also be set if using this flag.
 
16384 Admin log will use new format that is more readable.
 
'''Default:''' 0
 
'''Change log:'''
 
0.6.3 - Flags 4096 and 8192 were added.
 
0.8.0 - Flag 16384. When this flag is set, the admin log will use new format.
 
== g_logAdmin==
 
'''Description:'''
 
The name of the file that all shrubbot commands will be logged to. For example, g_logAdmin "admin.log".
 
'''Type:''' string


'''Default:''' ""
'''Default:''' ""
== g_cheatLog ==
'''Description:'''
The name of the file, where all cheat related prints are logged. If this is not specified, server log is used.
'''Type:''' string
'''Default:''' ""
= Omni-Bots =
== omnibot_enable ==
'''Description:'''
When set to 1, Omni-bot functionality is enabled. You still need to have Omni-bots installed correctly in order for the bots to work.
'''Type:''' [0|1]
'''Default:''' 1
== omnibot_path ==
'''Description:'''
The path where the Omni-bot dll/so file is installed. If you installed Omni-bot to the default locations, then you do not need to modify this cvar. Leaving this cvar blank will search for the Omni-bot dll/so file from the default locations.
'''Type:''' string
'''Default:''' ""
== g_bot_maxXP ==
'''Description:'''
Any bots present will have their XP reset after this much XP is reached. If g_maxXP is also set to a value greater than -1, then the bot XP will be reset whenever the lower limit of the two is hit. Set this to -1 to disable this feature
'''Type:''' integer
'''Default:''' -1
== omnibot_flags==
'''Description:'''
Customizes bot management/behavior.
'''Type:''' bitmask
'''Parameters:'''
1 Disables XPSave for bots
2 Bots cannot mount tanks
4 Bots cannot mount emplaced guns
8 Don't track bot count in omnibot_playing cvar
16 Bots will target ungibbed enemies
32 Bots will trigger team and spotted mines
64 Bots can use g_shove
65536 Bots are granted shrubbot command immunity (the same as shrubbot flag !)
131072 Bots cannot be !kicked or !banned
262144 Disable shrubbot greeting for bots
'''Default:''' 0
= Lua =
== lua_modules==
'''Description:'''
List of files to be loaded by the Lua API engine. Can be separated by space, comma or semicolon. The paths are relative to the mod's directory, and can optionally be placed inside pk3 archieves. We are aiming for compatibility with ETPro's Lua Mod API found at http://wolfwiki.anime.net/index.php/Lua_Mod_API.
'''Type:''' string
'''Default:''' ""
== lua_allowedModules==
'''Description:'''
List of sha1 signatures for the lua modules to be loaded by the Lua API engine. Can be separated by space, comma or semicolon. Only lua modules with the matching sha1 signature listed in this cvar will be allowed to load by the Lua API engine (ACL).
'''Type:''' string
'''Default:''' ""
= Weapon Damage and Radius Settings =
== g_dmg ==
'''Description:'''
Enables experimental advanced combat options.
'''Type:''' bitmask
'''Parameters:'''
0 Use traditional ET settings for combat.
1 Use Advanced Hit Locations: Differentiates between Head, Body, Arm, and Leg shot when computing damage.
2 Applies a more realistic damage vs. range equation for short-ranged weapons. This will reduce the effectiveness of these weapons at longer ranges.
4 Gives a damage bonus to short-range weapons when used in close combat situations.  This will increase the effectiveness of these weapons at closer ranges.
8 Use bullet fall-off approximations when computing shot trajectory.
16 Improve accuracy of non-scoped single-shot rifles.
32 Use alternate bullet-spread characteristics for automatic or rapid-fire weapons.
64 Damage from players who are spectators or have disconnected is ignored, and XP is not awarded.
'''Default:''' 0
== g_dmgHeadShotMin==
'''Description:'''
This represents the minimum damage done by a headshot regardless of the weapon used to make the shot.
Headshots that would do damage below this value will be adjusted upward to equal g_dmgHeadshotMin. Headshots from a weapon with damage at or above this value will do a multiple of their damage, as specified by g_dmgHeadShotRatio. (The actual damage may undergo additional modification due to range and other conditions)
'''Type:''' integer
'''Default:''' 50
== g_dmgHeadShotRatio ==
'''Description:'''
This specifies the multiplier used for headshots that do damage ABOVE g_dmgHeadShotMin.
'''Type:''' float
'''Default:''' 2.0
== g_dmgKnife ==
'''Description:'''
Amount of damage done by the knife.
'''Type:''' integer
'''Default:''' 10
== g_dmgSten ==
'''Description:'''
Amount of damage done by the sten.
'''Type:''' integer
'''Default:''' 14
== g_dmgFG42 ==
'''Description:'''
Amount of damage done by the FG-42.
'''Type:''' integer
'''Default:''' 15
== g_dmgPistol==
'''Description:'''
Amount of damage done by the pistol weapons.
'''Type:''' integer
'''Default:''' 18
== g_dmgSMG ==
'''Description:'''
Amount of damage done by the SMG weapons (Thompson and MP-40).
'''Type:''' integer
'''Default:''' 18
== g_dmgMG42 ==
'''Description:'''
Amount of damage done by the MG42.
'''Type:''' integer
'''Default:''' 18
== g_dmgMG ==
'''Description:'''
Amount of damage done by an emplaced MG.
'''Type:''' integer
'''Default:''' 20
== g_dmgFG42Scope==
'''Description:'''
Amount of damage done by the FG-42 when scoped.
'''Type:''' integer
'''Default:''' 30
== g_dmgInfRifle ==
'''Description:'''
Amount of damage done by unscoped rifles (K43 and Garand).
'''Type:''' integer
'''Default:''' 34
== g_dmgSniper ==
'''Description:'''
Amount of damage done by a scoped Garand or K43.
'''Type:''' integer
'''Default:''' 50
== g_dmgFlamer ==
'''Description:'''
Amount of damage done by the a flamethrower. Also controls the per-tick damage done to a player who has been set on fire by a flamethrower and is still burning.
'''Type:''' integer
'''Default:''' 5
== g_dmgGrenade==
'''Description:'''
Amount of damage done by a grenade.
'''Type:''' integer
'''Default:''' 250
== g_dmgGrenadeRadius ==
'''Description:'''
Blast radius of a grenade.
'''Type:''' integer
'''Default:''' 250
== g_dmgGLauncher ==
'''Description:'''
Amount of damage done by an engineer's grenade-launcher grenades.
'''Type:''' integer
'''Default:''' 250
== g_dmgGLauncherRadius ==
'''Description:'''
Blas radius of an engineer's grenade-launcher grenades.
'''Type:''' integer
'''Default:''' 250
== g_dmgTMine==
'''Description:'''
Amount of damage done by a tripmine.
'''Type:''' integer
'''Default:''' 260
== g_dmgLandmine ==
'''Description:'''
Amount of damage done by a landmine.
'''Type:''' integer
'''Default:''' 250
== g_dmgLandmineRadius ==
'''Description:'''
Blast radius of a landmine.
'''Type:''' integer
'''Default:''' 250
== g_dmgSatchel ==
'''Description:'''
Amount of damage done by a satchel.
'''Type:''' integer
'''Default:''' 250
== g_dmgSatchelRadius==
'''Description:'''
Blast radius of a satchel.
'''Type:''' integer
'''Default:''' 250
== g_dmgPanzer ==
'''Description:'''
Amount of damage done by a panzerfaust rocket.
'''Type:''' integer
'''Default:''' 400
== g_dmgPanzerRadius ==
'''Description:'''
Blast radius of a panzerfaust rocket.
'''Type:''' integer
'''Default:''' 300
== g_dmgMortar==
'''Description:'''
Amount of damage done by a mortar round.
'''Type:''' integer
'''Default:''' 400
== g_dmgMortarRadius==
'''Description:'''
Blast radius of a mortar round.
'''Type:''' integer
'''Default:''' 400
== g_dmgDynamite ==
'''Description:'''
Amount of damage done by a dynamite.
'''Type:''' integer
'''Default:''' 400
== g_dmgDynamiteRadius ==
'''Description:'''
Blast radius of a dynamite.
'''Type:''' integer
'''Default:''' 400
== g_dmgAir ==
'''Description:'''
Amount of damage done PER BOMB by an airstrike.
'''Type:''' integer
'''Default:''' 400
== g_dmgAirRadius==
'''Description:'''
Blast radius PER BOMB of an airstrike.
'''Type:''' integer
'''Default:''' 400
== g_dmgArty ==
'''Description:'''
Amount of damage done PER BOMB by artillery fire. If this value is non-zero, the spotting round will follow normal ET behaviour (can do damage, but to a very small radius, making damage unlikely)
'''Type:''' integer
'''Default:''' 400
== g_dmgArtyRadius ==
'''Description:'''
Blast radius PER BOMB of artillery fire. If this value is non-zero, the spotting round will follow normal ET behaviour. The spotting round can do damage, but to a very small radius making damage unlikely.
'''Type:''' integer
'''Default:''' 400
== g_dmgDemolition ==
'''Description:'''
Amount of damage done by Improvised Demolition.
'''Type:''' integer
'''Default:''' 1100
== g_dmgDemolitionRadius ==
'''Description:'''
Blast radius of Improvised Demolition.
'''Type:''' integer
'''Default:''' 250
== g_knifeThrowDamage ==
'''Description:'''
The amount of damage a thrown knife will cause to enemy.
'''Type:''' integer
'''Default:''' 50
== g_dmgPPSh==
'''Description:'''
The amount of damage done by a PPSh.
'''Type:''' integer
'''Default:''' 19
= Debugging =
== g_debugBullets ==
''' Description:'''
If this cvar is set, server will produce debug information of fired bullets. Enabling g_debugBullets require sv_cheats to be set.
'''Type:''' integer
'''Parameters:'''
If 1 is set as if the cvar was a bitmask, blue lines for the fired shots is enabled. With any positive value, server will print impact area on the hit player to the center of the screen. Possibilities are "Head Shot", "Body Shot", "Leg Shot" and "Arm Shot". If the value is set to 2 or more, the bounding box of the hit player is drawn. If the value is set to 3 or more, the hit player head box is drawn. If the value is set to -2 or smaller, boxes are drawn to impacted surfaces.
'''Default: 0
== g_debugDamage ==
''' Description:'''
If this cvar is set, damage inflicted to players is logged into the server log. Enabling this cvar requiers sv_cheats to be set.
'''Type:''' [0|1]
'''Default:''' 0
== g_debugHitboxes ==
'''Description:'''
If this cvar is enabled, hit boxes around the players are drawn. This cvar does not require sv_cheats. However, do note that if this is enabled, the server will produce constant flow of extra entities, which will make playing impossible on a live server. Test this with only couple players to prevent everyone from lagging out.
'''Type:''' integer
'''Parameters:'''
If this cvar is set to any positive value, boxes are drawn. If the value is set to 8 or more, it will draw only the boxes that are used for the initial trace. Each bullet causes two traces to happen, where the second trace confirms the impact on the more refined area of the player body, such as head or legs.
= Deprecated Cvars =
== g_realHead==
'''Description'''
Enable ETPro headboxes.
'''Type:''' [0|1]
'''Parameters:'''
0 Regular headbox positions.
1 Server tracks the animations so the headbox will match the playermodels exactly. This is the recommended value.
'''Default:''' 1
'''Note:'''
This code was originally from ETPro (b_realhead).  It was contributed by zinx and added to ETPub by forty. silEnT is based on the ETPub source and this code has not been altered from the ETPub.
'''Change log:'''
:* 0.5.1 - The option was removed. The ETPro headboxes are always used.
== g_spoofOptions ==
'''Description:'''
Options for PunkBuster GUID and IP spoof detections and behaviour.
'''Type:''' bitmask
'''Parameters:'''
1 Kick for GUIDspoofing.
2 Kick for IPspoofing.
4 Display a global warning when someone is GUIDspoofing. (When flag 1 is set, this will not work)
8 Display a global warning when someone is IPspoofing. (When flag 2 is set, this will not work)
16 Don't use the stored GUID. (This option is a higher security risk.)
32 Don't use the stored IP. (This option is a higher security risk.)
'''Default:''' 3
'''Note:'''
Do NOT change this CVAR unless you encounter problems!
'''Change Log:'''
This cvar was removed in version 0.5.1 and spoofing is checked unconditionally in 0.5.1 and later versions.

Latest revision as of 13:02, 18 September 2015

silEnT Mod Anti Cheat

g_silentac

Description

Enables actions based on silEnT AntiCheat. The g_cheatLog will always have one line telling if a player is found with cheats. The cheat detection's are based mostly on heuristically detecting hacking techniques. If you suspect a false positive, please supply the silEnT team a method to reproduce it. Do note that this feature has been in extensive testing well before the 0.8.0 version. When silEnT AC is set to autoban busted players, sv_sac cvar auto changes it value to 1. sv_sac is read only variable. This cvar can be used by external server trackers to enable/disable server anti cheat status on their lists. We recommend setting the value to 2.

Type: [0|1|2]

Parameters:

1 Show player AntiCheat status in the !finger output.

2 Automatically ban players for 365 days with cheats.

Default: 0

Minimum required version: 0.8.0

g_clientBinaries

Description:

silEnT mod can be configured to not allow players with unknown client binaries to play on the server. This cvar controls the server behaviour when the client binary is not one of the recognized ones.

List of recognized binaries:

  • Official client binaries
  • Binary edited executables from etmaster.net
  • Equivalent to etmaster.net binary edited executables from BigBear
  • ETPatchSelector binaries
  • Official ET Legacy b4
  • Official ET Legacy b5
  • Many ET Legacy binaries including RC1 versions.

Type: bitmask

Parameters:

1 Don't allow players with unknown client executables.
2 Log unknown executables to the g_cheatLog. Note, if the server does not allow unknown client binaries the log message will be different for message.
4 Report unknown executables to admin chat. Note, if the server does not allow unknown client binaries the players will not be reported to admin chat.

Default: 0

Minimum required version: 0.5.2

Changelog:

0.6.2 - If the flag 4 is set, known cheat binaries are clearly reported to the admin chat.

g_identOptions

Description:

Starting from version 0.3.0, the silEnT mod can be configured to enforce bans using hardware based identification. This is not any fool proof system but it is made to be an addition to the already existing ban methods. The hardware identification cannot be seen in human readable form by admins while on the server. The data that is sent to the server can be seen in the client by writing /cg_ident to the console. The result is a hexadecimal string that changes its value between maps. The format and data used to create the client identification may change between different versions of the silEnT mod. The server can be configured with the g_identOptions server cvar.

Type: bitmask

Parameters:

1 Kick clients that are spoofing the client identification to enter the server

2 Kick clients that are not sending the identification to the server

4 Enforce bans using the identification

8 Report all actions taken based on client identification to the adminchat

16 If a player is caught of circumventing a ban, a new ban is created with for it. The ban reason will have additional (Automated copy of a ban for xxxxxxxx) where xxxxxxxx is replaced with the 8 character PB GUID of the old ban.

Default: 0

g_ssDirectory

Description

Officially since 0.9.0. This cvar is required for the Screenshot System (SS) to work correctly. It defines where to store the screenshots. Create "screenshot" folder under silent mod folder and add set g_ssDirectory "screenshot" in your server config. All of screenshots of players will go under this folder.

Type: [string]

Default:

Minimum required version: 0.9.0

Announcements and Messages

g_privateMessages

Description:

If set to 1, players can send private messages to one another with the /m playername/slot command.

Type: [0|1]

Parameters:

0 Disable Private Messages

1 Enable Private messages

Default: 0

Note: Clients can reject private message from other individual clients with the /ignore client command. Also, private messages can be disabled from individuals/levels using shrubbot flag '/'.

g_spreeOptions

Description:

Options to control the display of killingsprees.

Type: bitmask

Parameters:

1 Enable killingsprees

2 Enable killingspree ends

4 Enable multikills

8 When set, a top 3 current killing sprees message will be printed every minute, similar to binoc masters, and a map's longest killing spree will be printed every two minutes

16 At the beginning of the intermission the highest spree and the 3 highest sprees which are still active will be shown

32 /kill will end a spree

64 Teamswitching will end a spree

128 Multikill messages will be delayed g_multikillTime milliseconds, to prevent the doublekill -> multikill -> megakill -> etc. flooding

256 Killing bots doesn't count for multikills or killingsprees (Note: they DO count for ending kill/deathsprees)

512 Display the map and overall spree record when entering intmission

1024 Summary: don't enable this flag if you don't have enabled g_spreeOptions flag 512 OR g_XPSave flag 16 or Shrubbot flag t

Spree records are automatically saved into XPSave file when a map ends. By enabling this flag, you also store the spreerecord at the points where g_XPSave flag 16 would store XP. When you don't have set XPSave flag 16 and g_spreeOptions flag 512 and not allow users to use !spreerecord you should NOT set this flag as it takes some extra resources. When XPSave flag 16 is set this doesn't matter (it actually takes much less resources then). When only g_spreeOptions flag 512 or shrubbot flag t is set it won't do much harm anyway (your server won't explode)

2048 Enable revivesprees

Default: 0

g_multikillTime

Description:

The time (in milliseconds) in which two kills should be made in order to count them as multikills.

Type: integer
Default: 1000

g_obituary

Description:

This cvar controls will the server send obituary events to the clients. If this is set to 0, no obituary events will be sent. If set to any nonzero value, obituary events will be sent.

Type: [0|1]

Default: 1

g_dropMsg

Description:

Message to add to the drop screen when a client is kicked or banned. 

Type: String

Default: " "

Example: g_dropMsg "Please protest ban on forums"

g_landmineNotifyType

Description:

Decide which landmine reveal notifications server should send. 

Server can send two types of landmines reveal notification. Standard one, generated (sent) for each landmine revealed and summary one, which is sent after player spotting landmines stops using binoculars. It's generated after each binculars zoom.

Type: [0|1|2|3]

Parameters:

0 Only standard notfications (for each landmine revealed).

1 Only single summary notifications for one binocs zoom. New type of notification. For example: during one binocs zoom, 3 mines were revealed, but only 1 summary notification is sent. It contains information: 3 mines spotted by "player name" and last one was in location "some location".

2 Don't send any landmine notifications.

3 Send all notifications. For example: for 3 spotted landmines send 4 notifications (3 for each landmine + 1 summary notification).

Default: 3

Recommended: 1

g_banners

Description:

This should be set to the name of your banners.cfg file if you want to enable banners. See Silent Banners for more information about this file.

Type: string

Default: ""

Example:
set g_banners "banners.cfg"

Minimum required version: 0.4.0

g_recognition

Description:

Enables additional recognition notifications for players doing objective, e.g. for planting dynamite, disarming it, destroying objective.

Type: [0|1]

Parameters:

0 Additional recognition notifications disabled.

1 Additional recognition notifications enabled.

Default: 1

User Database, Shrubbot and Bans

g_dbDirectory

Description:

If this cvar is set, the server stores various information about server statistics, map information, sprees, users, bans and XP save to the location pointed by this cvar. The directory defined by this cvar is relative to the fs_game directory. Absolute paths can not be used. All the used file names in the g_dbDirectory are predefined, and cannot be changed. For security reasons, this cvar must be set during server initialization. (i.e. It can not be changed while the server is running.) The following files are stored into this directory:

  • userdb.db - This is a binary format file that contains all the basic information about shrubbot users and also all saved XP if the server is set to save XP
  • userxdb.db - This is a binary format file that contains information related to players playing on the server
  • useradb.db - This is a binary format file that contains player aliases.
  • serverstat.cfg; This is a human readable file that contain server statistics and map sprees if the server is set to store them
  • shrubbot.cfg - This is a human readable file that contain level configurations, custom commands and bans. This file is auto-created if it does not exist and used functionality requires it, but admins usually to edit this file for the configuration of their server.
  • mapvoteinfo.cfg - This file contains information relating g_gametype 6, which is map voting.


All the required files will be created automatically to the directory when needed if the files don't already exist. silEnT mod will not overwrite userdb.db, userxdb.db or useradb.db files if files with those names exist, but the files are not suitable for use. In such case, the server log will have information about the failure to open the file and features requiring the missing files are disabled.

You can freely edit the human readable files by hand as long as their correct format remains. The shrubbot.cfg can be edited even while the server is running as long as the !readconfig shrubbot command is run before the map changes. Otherwise the changes to the file will be lost. If you want to hand edit the contents of the serverstat.cfg or mapvoteinfo.cfg files, the server must be shutdown to not lose the changes.

Type: string

Default: "database"

Note:

The server reads the value of this cvar from the config file only during the server start, or alternatively from the server start command parameters. It cannot be changed using RCON. If you want to store all the files in the same root directory where all the pk3 files and binaries are, you can set this cvar to value ".". It will then use the fs_game directory.

g_dbUserMaxAge

Description:

The number of seconds that player is saved to the database since the player has last visited on the server.

The database cleaning is done during intermission so this should not cause any performance problems when actions are taken. However, by setting this value to 0 or not setting the value at all, will disable the feature. For servers with high database sizes, this can improve performance since users that are not needed will be removed automatically.

You can use a modifiers with this value. Here are some examples:

set g_dbUserMaxAge "1o" - 1 month

set g_dbUserMaxAge "2w" - 2 weeks

set g_dbUserMaxAge "5d" - 5 days

set g_dbUserMaxAge "36h" - 36 hours

set g_dbUserMaxAge "120m" - 120 minutes

Type: integer

Default: 0

Note:

The server reads the value of this cvar only from the config file executed before the mod launches the first time or from the command line. It cannot be edited using RCON.

g_dbMaxAliases

Description:

The silEnT mod can store player aliases in an additional database. To enable this database, set this value to higher then 0. If this value is a positive integer, it defines how many aliases are stored in the database for one player. If the player has more aliases then this value, the oldest aliases are deleted.

Type: integer

Default: 0

Minumum required version: 0.6.0

Note:

This cvar can be set only at startup, before the mod launches. It cannot be changed on a live server using rcon.

g_minCommandWaitTime

Description:

Time you have to wait between using 2 shrubbot commands in milliseconds.

Type: integer

Default: 0

g_tyranny

Description:

This cvar controls the use of administrator commands that could be used by admins to cheat or abuse players. If it is set to 0 you will not be able to use commands on your server such as !gib, !slap, !burn, etc.

Also, you will not be able to use g_logOptions flag 256 (log private messages) unless g_tyranny is enabled.

g_tyranny must also be enabled in order to specify a client in using the 'playsound' server command.

'g_tyranny' and its value appear in the serverInfo string to serve as a warning for perspective players.

Type: [0|1]

Default: 1

Note:

If you enable this, you MUST do so immediately when the server starts (before the first map is loaded). This means putting "set g_tyranny 1" in the .cfg file that is exec'ed on server start. If you try to change this on a running server, you will get the message "g_tyranny is read only."

g_warningOptions

Description:

This cvar changes the behaviour of the shrubbot !warn command. By setting flag 1 or 2 you activate the advanced warning (storage) system

Type: bitmask

Parameters:

1 Link stored warnings to the guid of a player

2 Link stored warnings to the ip of the player

4 Remove the oldest warning when the total maximum ammount of warnings is reached

8 Auto-kick a player for 2 minutes when he has more than g_maxWarnings warnings

16 Allow clients to see their own warnings with the /warnings command

Default: 0

g_maxWarnings

Description:

The ammount of warnings that can be stored for 1 player.

Type: integer

Default: 3

g_warningDecay

Description:

The time in hours that a warning will be stored.

Type: integer

Default: 24

g_autoTempBan

Description:

When set, anyone kicked for the reasons you specify, will be temporarily banned for g_autoTempBanTime seconds.

Type:bitmask

Parameters:

1 Tempban when reaching g_teamDamageRestriction

2 Tempban when someone is kicked by a shrubbot admin (using the !kick command). A normal shrubbot !kick kicks for 120 seconds

4 Tempban when someone is kicked by the advanced warning system. A normal kick by the warning system lasts 120 seconds

Default: 0

Changelog:

Specifically in version 0.5.0, this feature is bugged and can cause broken shrubbot.cfg.

g_autoTempBanTime

Description:

The number of seconds kicked for when g_autoTempBan is set.

Type: integer

Default: 1800

g_minConnectLevel

Description:

The minimum shrubbot adminlevel required for players to be able to connect.

Type: integer

Default: 0

Note:

This only works for positive levels, any value <= 0 will allow everyone to connect. Bots won't be able to connect either.

g_greetingPos

Description:

Location where the shrubbot greetings are displayed.

Type: [0|1|2|3|4]

Parameters:

0 Chat area

1 Center of screen

2 Left notification area

3 Top of the screen

4 Console only

Default: 0

g_adminProtection

Description:

Starting from silEnT 0.5.0, admins levels can be protected against spoofing. The protection works by establishing trust between the client and the server. The trust must be confirmed by an online human admin for the new trusted admins to gain access to their assigned level. Specific command !confirm is used for it. Do note that establishing the trust between the server and the player is not the same as assigning admin level. In fact, anyone who is capable of recognizing the real admin can be safely allowed to use the !confirm command. The !setlevel command will automatically establish the trust if the admin level protection is enabled and the level is above or equal to the g_protectMinLevel. The admin protection is designed so that only the important admin levels are protected. This mean that levels above the g_protectMinLevel require established trust between the server and the client. Normal guests do not need this. It is also advisable to not set the g_protectMinLevel too low to avoid server load with these admins.

The trust needs to be established only once. After that, the client and the server can negotiate the confirmation silently.

Technical Details:

The trust is established using one-way hashes. When the !setlevel or !confirm is used on a player, the server generates 2 unique 32 character long values. Both of these values are stored both in the client (silent.dat) and the server database. Their meanings are server identification and a client key.

Authentication negotiation:

1. When the player next time connects to the server, the server sends one of the stored values as server identification and another, newly generated random 32 character value, to initiate the negotiation.

2. The client will use the server identification value it received from the server to match with the key value associated with the server identification. It will hash the 32 character key value with the supplied random 32 character value and send the result back to the server.

3. The server, knowing both values, the client key and the random character string it sent, can compare the hash against a hash it generates itself with the same values.

4. If the hashes match (one supplied from client and the one it just generated), the client is authenticated to his admin level.

Type: bitmask

Parameters:

1 Log succesfull authentications to the cheat log

2 Log admin spoofing attempts to the cheat log

4 Report admins waiting for confirmation on their level to the admin chat

Default: 7

Minimum required version: 0.5.0

g_protectMinLevel

Description:

Starting from silEnT 0.5.0, admins can be protected against spoofing. The protection works by establishing trust between the client and the server if the admin level is higher then the g_protectMinLevel. Setting this to -1 will disable the freature. Do note that when you enable the feature, noone has yet established trust with the server and the first one to have it, must be confirmed by an rcon command. Either !setlevel if the database still doesn't have admins or !confirm if the admin has been set in the database already.

Type: integer

Default: -1

Minimum required version: 0.5.0

g_muteRename

Description:

If this cvar is set to 1 the muted player won't be allowed to change his name while he is muted.

Type: integer

Parameters:

0 Disabled. Allow players to change his/her name while he/she is muted.

1 Don't allow player to change his/her name while he/she is muted.

Default: 0

Minimium required version: 0.8.0

XP Save

g_XPSave

Description:

Controls XP save behaviours.

Type: bitmask

Parameters:

1 Store xp when a client disconnects. This is always required for the XP save to work.

2 Don't reset xp to the pre-map start values on a map restart, shuffle, etc.

4 Never reset xp (ever).

8 Force the disconnection of clients with the same GUID as the connecting client. This is useful in saving the stored XP of players with unreliable network connections since they should still get their stored XP even if reconnecting immediately with a new IP address. This feature is enabled by default unless you have sv_wwwDlDisconnected enabled. sv_wwwDlDisconnected seems to interfere with this feature, so do not enable this flag if you change pk3's on your server often because stored XP will be lost over disconnected downloads.

16 Store the XP at restarts, nextmaps, mapvotes, campaignvotes and similar cases.

Default: 0

g_XPSaveMaxAge_xp

Description:

The number of seconds that must pass without saving XP from this player before XPSave forgets his/her xp skills. Admins can adjust the amount of required XP to save with g_XPSaveMinXP server cvar.

You can use a modifier with this value. Here are some examples:

set g_XPSaveMaxAge_xp "1o" - 1 month

set g_XPSaveMaxAge_xp "2w" - 2 weeks

set g_XPSaveMaxAge_xp "5d" - 5 days

set g_XPSaveMaxAge_xp "36h" - 36 hours

set g_XPSaveMaxAge_xp "120m" - 120 minutes

Type: integer

Default: 1d

Note: If g_XPSaveMaxAge is less than g_XPSaveMaxAge_xp, g_XPSaveMaxAge will be used.

g_XPSaveMaxAge

Description:

The number of seconds that must pass without saving XP from this player before XPSave forgets his/her skills/killrating/playerrating/mute status. Admins can adjust the amount of required XP to save with g_XPSaveMinXP server cvar.

You can use a modifier for this value. Here are some examples:

set g_XPSaveMaxAge "1o" - 1 month

set g_XPSaveMaxAge "2w" - 2 weeks

set g_XPSaveMaxAge "5d" - 5 days

set g_XPSaveMaxAge "36h" - 36 hours

set g_XPSaveMaxAge "120m" - 120 minutes


See also g_XPSaveMaxAge_xp

Type: integer

Default: 1w

g_resetXPMapCount

Description:

How many maps occur before XP is reset. If g_XPSave flag 4 is set, g_resetXPMapCount is ignored.

Note: This setting is only valid when the g_gametype is 6 (see Map Voting)

Type: integer

Default: 0

g_XPSaveMinXP

Description:

The increment of XP during one map that is required for the XP gained during the map to get saved and the time of the latest XP save to get updated. The silEnT mod separates the XP save and the connection times so that players who visit spectators without playing will not be removed by the g_dbUserMaxAge but can still lose their stored XP if they do not play. Admins can adjust the requirement with this value. Using -1 will disable the requirement and XP save will consider every connection valid for the XP save. Using value 0, will consider XP save valid if the player has gained even 1 XP point during the map. Please note that the value is only for one map and using high values may cause some players to not achieve enough XP to get their XP updated. Also note, that this does not prevent SMG weapon statistics or rating values to get updated into the database.

Type: integer

Default: -1

Minimum required version: 0.5.0

g_maxXP

Description:

This is a vicious cvar that will reset a players XP once their overall XP score reaches it.

Set this to -1 to disable it.


Type: integer

Default: -1

g_maxXPResetWarn

Description:

Displays a message warning players whose XP is close to being reset due to the g_maxXP setting. The warning is displayed every thirty seconds once the warning threshold is passed.

This setting can have an integer value (eg, 950), in which case it means that the player will be warned every thirty seconds once he has more than 950 XP.

This setting can also have percentage value (eg, "90%"), and that will cause the warnings to start when the player reaches 90% of g_maxXP XP.

If you specify a negative value, players will be warned when that offset is hit. For example:

For a value of -75, warnings will to display then players have g_maxXP - 75 XP

For a value of -2%, warnings will display when players have 98% of g_maxXP

Set this to 0 to disable it.

Type: integer

Default: 0

g_damageXP

Description:

Optionally enables the awarding of XP based upon the amount of damage a player has done to the opposing team.

Type: [0|1|2]

Parameters:

0 Disabled: use normal ET XP awarding methods

1 1 point of XP is awarded per g_damageXPLevel points of damage done. The XP is placed in the skill category of the weapon used. When this mode is enabled, kills (regardless of method) are awarded a fixed value of 1 point of XP.

2 1 point of XP is awarded per g_damageXPLevel points of damage done. The XP is placed in the Battle Sense category. Normal XP amounts are awarded for kills (typically 3-5 XP).

Default: 0

g_damageXPLevel

Description:

This setting determines the amount of damage that a player must do to earn 1 point of XP. See g_damageXP for additional information.

Type: integer

Default: 50

g_XPDecay

Description:

This is a bitmask that controls the XP decay feature.

See also g_XPDecayRate.

Type: bitmask

Parameters:

1 Enable XP Decay

2 Do not decay a player's XP when they are disconnected from the server

4 Do not decay a player's XP for the class they are currently playing as (e.g. Medic).

8 Do not decay a player's XP while they are spectating

16 Do not decay a player's XP during warmup/intermission

32 Do not decay a player's XP when he/she is playing. This means that they are on a Allies or Axis and the game is active.

64 Do not decay a player's Battle Sense XP when he/she is playing.

128 Do not decay a player's Light Weapons XP when he/she is playing.

Default: 0

g_XPDecayRate

Description:

This is the rate (in skillpoints per second) that XP skill points for each skill will decay when g_XPDecay is enabled.

Setting this to 0.1 would result in a player losing 6 points per minute IN ALL SKILLS, so up to 42XP per minute if the player has skill points for each skill.

You can use a modifier with this value. Here are some examples:

set g_xpDecayRate "5000/o" - Decay 5000xp per skill per month

set g_xpDecayRate "1000/w" - Decay 1000xp per skill per week

set g_xpDecayRate "500/d" - Decay 500xp per skill per day

set g_xpDecayRate "40/h" - Decay 40xp per skill per hour

set g_xpDecayRate "2/m" - Decay 2xp per skill per minute

Type: float

Default: 0.0

g_XPDecayFloor

Description:

This is the minimum that any particular skill can be reduced to by g_XPDecay.

For example, setting this to 140.0 will ensure that no player will ever lose rank or skill levels due to g_XPDecay.

Type: float

Default: 0.0


Flood Protection

g_floodprotect

Description:

Enable/disable silEnT flood protect. Flooding means that a client is sending too many messages to the server (vsays, callvotes, etc...). Enabling g_floodprotect disables the engine's sv_floodprotect functionality. If you enable g_floodprotect, make sure you set a value for g_floodthreshold.

Type: [0|1]

Default: 1

g_floodthreshold

Description:

The number of messages per second before ignoring the client's messages. Only in effect when g_floodprotect is turned on.

Type: Integer

Default: 6

g_floodWait

Description:

The minimum number of milliseconds between two messages when g_floodprotect is enabled. This is a hard limit so admins aren't allowed to override it. 1000 milliseconds copies sv_floodprotect behaviour. This CVAR should not have a value below 500 in order to keep a public server playable.

Type: integer

Default: 1000

g_voiceChatsAllowed

Description:

The number of voicechats allowed in minute.

Type: integer

Default: 4

Player Statistics, Rating and Team Balance

g_stats

Description:

This is a bitflag cvar used to control the way statistics are handled.

Type: bitmask

Parameters:
1 When shooting a corpse to gib, do not count it as a hit.
2 When shooting a corpse to gib, do not count it as a shot.

Default: 0
Note: Set this to 3 to use the behaviour of etmain and shrubet.

g_playerRating_minplayers

Description:

The minimum number of players that must participate in a map in order for it to count towards each player's player rating.

Type: integer

Default: 8

g_shuffle_rating

Description:

Sets the rating system used by shuffle.

Type: [ 1 | 2 | 3 | 4 | 5 ]
Parameters:

1 Use player XP
2 Use the rate at which players have gained XP since connecting.
3 Use the killRating (g_killRating must be nonzero)
4 Use the playerRating (g_playerRating must be nonzero)
5 Use the playerRating (g_playerRating must be nonzero), but take the map into account and give the teams closest to 50/50

Default: 3

g_killRating

Description:

When not set to 0, silEnT will track a player's killing ability using an ELO type statistic similar to chess. Each kill will increase a player's kill rating based on how hard the kill was. Killing unskilled players will result in very few points whereas an unskilled player killing a skilled player will result in more points.

See also g_shuffle_rating.

Type: bitmask

Parameters:

1 Use kill rating. A dummy flag since any non-zero value for g_killRating will enable it.
2 Make kill rating visible. Players can use /killrating and at the end of each map a message will display the top killers for the map and overall.
4 Log files will include the GUIDs of the players involved in kills. This makes kill tracking a lot easier.
8 Disable kill rating from the score board. This can prevent players from playing for higher kill rating alone. This does not prevent the "killrating" client command enabled with flag 2 from working.


Default: 3

g_playerRating

Description:

When not set to non zero positive value, silEnT will track a player's ability to win against good teams using an ELO type statistic similar to chess. Each win will increase a player's rating based on how hard the opposing team was. Skilled teams defeating less skilled teams will result in very few points whereas an relatively low- rated team defeating a good team will result in more points. Player rating also takes into account the number of players on each team (less points when a very large defeats a small one) and which side tends to win more often on the current map (e.g. Allies tend to win tc_base).

See also g_shuffle_rating.

Type: bitmask

Parameters:

1 Use player rating. A dummy flag since any non-zero value for g_playerRating will enable it.
2 Make player rating visible. Players can use /playerrating and at the end of each map a message will display the top player.
4 Put player rating on the scoreboard instead of the XP.
8 Print out extra info at the end of a round that can be used to further refine the playerrating model.
16 The same as flag 8 except a lot more info is output.

Default: 3

g_unevenTeamDiff

Description:

If g_teamForceBalance is set, setting g_unevenTeamDiff will notify all players when team numbers are off by g_unevenTeamDiff or more.

See also g_unevenTeamFreq

Type: integer

Default: 0

Example: Set to 0 to disable this feature

g_unevenTeamFreq

Description:

How often the team disparity notification occurs. Only valid when g_unevenTeamDiff is set to a positive value. Value is in seconds.

See also g_unevenTeamDiff

Type: integer

Default: 30

Class and Weapon Restrictions

g_medicChargeTime

Description:

The base time in milliseconds for how long it takes to fully recharge the medic charge bar. Skill upgrades affect this value during the game.

Type: integer

Default: 45000

g_engineerChargeTime

Description:

The base time in milliseconds for how long it takes to fully recharge the engineer charge bar. Skill upgrades affect this value during the game.

Type: integer

Default: 30000

g_LTChargeTime

Description:

The base time in milliseconds for how long it takes to fully recharge the field ops charge bar. Skill upgrades affect this value during the game.

Type: integer

Default: 40000

g_soldierChargeTime

Description:

The base time in milliseconds for how long it takes to fully recharge the soldier charge bar. Skill upgrades affect this value during the game.

Type: integer

Default: 20000

g_covertopsChargeTime

Description:

The base time in milliseconds for how long it takes to fully recharge the covert ops charge bar. Skill upgrades affect this value during the game.

Type: integer

Default: 30000

team_maxPanzers

Description:

Server cvars team_maxPanzers, team_maxMortars, team_maxFlamers, team_maxMG42s, team_maxGrenLaunchers have identical behaviour. Limits the number of the given weapon per team.

You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.

You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down

Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!

Example 1:

set team_maxPanzers "2"

This will limit each team to 2 panzerfaust soldiers, regardless of how many players are in the team

Example 2:

set team_maxPanzers "10%"

This will limit each team to having only 10% of their players as panzerfaust soldiers, and a team with few players (for example, 5) will be able to have 1 panzerfaust soldier. They will be able to have their second panzerfaust soldier when they have 11 players on the team.

Example 3:

set team_maxPanzers "10%-"

This will limit each team to having only 10% of their players as panzerfaust soldiers, and a team will not be able to have any panzerfaust soldiers until there are 10 players in the team. They will be able to have their second panzerfaust soldier when there are 20 players in the team.

Set this to -1 to disable limits

Type: integer

Default: -1

team_maxMortars

Description:

Server cvars team_maxMortars, team_maxFlamers, team_maxMG42s, team_maxGrenLaunchers have identical behaviour. Limits the number of the given weapon per team.

You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up. 

You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down

Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!

Example 1:

set team_maxMortars "2"

This will limit each team to 2 mortar soldiers, regardless of how many players are on the team.

Example 2:

set team_maxMortars "10%"

This will limit each team to having only 10% of their players as mortar soldiers, and a team with few players (for example, 5) will be able to have 1 mortar soldier. They will be able to have their second mortar soldier when they have 11 players in the team.

Example 3:

set team_maxMortars "10%-"

This will limit each team to having only 10% of their players as mortar soldiers, and a team will not be able to have any mortar soldiers until there are 10 players in the team. They will be able to have their second mortar soldier when there are 20 players on the team.

Set this to -1 to disable limits

Type: integer
Default: -1

team_maxFlamers

Description:

You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.

You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down

Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!

Example 1:

set team_maxFlamers "2"

This will limit each team to 2 flamethrower soldiers, regardless of how many players are on the team

Example 2:

set team_maxFlamers "10%"

This will limit each team to having only 10% of their players as flamethrower soldiers, and a team with too few players (for example, 5) will be able to have 1 flamethrowe soldier. They will be able to have their second flamethrowe soldier when they have 11 players on the team.

Example 3:

set team_maxFlamers "10%-"

This will limit each team to having only 10% of their players as flamethrower soldiers, and a team will not be able to have any flamethrower soldiers until there are 10 players in the team. They will be able to have their second flamethrower when there are 20 players in the team.


Set this to -1 to disable limits

Type: integer
Default: -1

team_maxMG42s

Description:

You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.

You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down

Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!

Example 1:

set team_maxMG42s "2"

This will limit each team to 2 MG42 soldiers, regardless of how many players are in the team

Example 2:

set team_maxMG42s "10%"

This will limit each team to having only 10% of their players as MG42 soldiers, and a team with too few players (for example, 5) will be able to have 1 MG42 soldier. They will be able to have their second MG42 soldier when they have 11 players on the team.

Example 3:

set team_maxMG42s "10%-"

This will limit each team to having only 10% of their players as MG42 soldiers, and a team will not be able to have any MG42 soldiers until there are 10 players in the team. They will be able to have their second MG42 soldier when there are 20 players in the team.

Set this to -1 to disable limits

Type: integer
Default: -1

team_maxGrenLaunchers

Description:

You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.

You can also use a number such as "20%-" for this setting, in which case partial values will be rounded down

Only use integer values like 1 or 2 and NOT 1.0 or 2.5. If you refuse to do this and use a . in your cvar, the client will not display the restriction in the right way and people might not be able to use heavy weapons while they actually are available!

Example 1:

set team_maxGrenLaunchers "2"

This will limit each team to 2 grenade launchers, regardless of how many players are in the team

Example 2:

set team_maxGrenLaunchers "10%"

This will limit each team to having only 10% of their players playing with grenade launchers, and a team with too few players (for example, 5) will be able to have 1 grenade launcher. They will be able to have their second grenade launcher when they have 11 players in the team.

Example 3:

set team_maxGrenLaunchers "10%-"

This will limit each team to having only 10% of their players playing with grenade launchers, and a team will not be able to have any grenade launchers until there are 10 players in the team. They will be able to have their second grenade launcher when there are 20 players in the team.

Set this to -1 to disable limits

Type: integer
Default: -1

team_maxMedics

Description:

Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.

You can use a number such as "20%-" for this setting, in which case partial values will be rounded down

Example 1:

set team_maxMedics "5"

This will limit each team to 5 medics, regardless of how many players are in the team

Example 2:

set team_maxMedics "15%"

This will limit each team to having only 15% of their players as medics, and a team with too few players (for example, 3) will be able to have 1 medic. They will be able to have their second medic when they have 7 players in the team.

Example 3:

set team_maxMedics "15%-"

This will limit each team to having only 15% of their players as medics, and a team will not be able to have medics until there are 7 players in the team. They will be able to have their second medic when there are 14 players in the team.

Set this to -1 to disable limits.

Type: string

Default: -1

team_maxEngineers

Description:

Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.

You can use a number such as "20%-" for this setting, in which case partial values will be rounded down

Example 1:

set team_maxEngineers "5"

This will limit each team to 5 engineers, regardless of how many players are in the team

Example 2:

set team_maxEngineers "15%"

This will limit each team to having only 15% of their players as engineers, and a team with too few players (for example, 3) will be able to have 1 engineer. They will be able to have their second engineer when they have 7 players in the team.

Example 3:

set team_maxEngineers "15%-"

This will limit each team to having only 15% of their players as engineers, and a team will not be able to have engineers until there are 7 players in the team. They will be able to have their second engineer when there are 14 players in the team.

Set this to -1 to disable limits.

Type: string

Default: -1

team_maxFieldOps

Description:

Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.

You can use a number such as "20%-" for this setting, in which case partial values will be rounded down

Example 1:

set team_maxFieldOps "5"

This will limit each team to 5 field opses, regardless of how many players are in the team

Example 2:

set team_maxFieldOps "15%"

This will limit each team to having only 15% of their players as field opses, and a team with too few players (for example, 3) will be able to have 1 field ops. They will be able to have their second field ops when they have 7 players in the team.

Example 3:

set team_maxFieldOps "15%-"

This will limit each team to having only 15% of their players as field opses, and a team will not be able to have field opses until there are 7 players in the team. They will be able to have their second field ops when there are 14 players in the team.

Set this to -1 to disable limits.

Type: string

Default: -1

team_maxCovertOps

Description:

Restricts the number of players that can play a specific class / team. You can either set it to a whole number to set a hard limit, or you can set it to a percentage value using the % symbol to limit based on the number of players on the team. When using percentage values, any partial values are rounded up.

You can use a number such as "20%-" for this setting, in which case partial values will be rounded down

Example 1:

set team_maxCovertOps "5"

This will limit each team to 5 covert opses, regardless of how many players are in the team

Example 2:

set team_maxCovertOps "15%"

This will limit each team to having only 15% of their players as coert opses, and a team with too few players (for example, 3) will be able to have 1 covert ops. They will be able to have their second covert ops when they have 7 players in the team.

Example 3:

set team_maxCovertOps "15%-"

This will limit each team to having only 15% of their players as covert opses, and a team will not be able to have covert opses until there are 7 players in the team. They will be able to have their second covert ops when there are 14 players in the team.

Set this to -1 to disable limits.

Type: string

Default: -1

g_minAirstrikeTime

Description:

The time (in seconds) that must elapse between airstrikes PER TEAM.

Type: integer

Default: 10

g_minArtyTime

Description:

The time (in seconds) that must elapse between airtillery strikes PER TEAM. Attempts to do airstrike before the timeout will get "Insuffient fire support" message.

Type: integer

Default: 10

g_maxTeamLandmines

Description:

Sets the maximum number of landmines a team can have planted at any given time. This value should be 0 or greater.

Type: integer

Default: 10

g_maxTeamTripmines

Description:

Sets the maximum number of tripmines a team can have planted at any given time. This value should be 0 or greater.

Type: integer

Default: 3

g_minGameClients

Description:

The number of clients needed to start a match.

Type: integer

Default: 0

g_maxGameClients

Description:

The maximum allowed amount of active clients.

Type: integer

Default: 0

Player Inactivity

g_inactivity

Description:

The number of seconds of player inactivity before the player is made a spectator.

Type: integer

Default: 0

g_spectatorInactivity

Description:

The number of seconds of player inactivity as spectator before the player is kicked/dropped from server.

Type: integer

Default: 0

g_inactivityOptions

Description:

Controls additional inactivity options.

Type: bitmask

Parameters:

1 Don't drop shoutcasters

2 Don't drop spectators when in following mode

4 ETmain inactivity behavior (don't wait for a full server)

8 Shrubbot flag '0' admins will be moved to spectators due to team inactivity

Default: 3


Gametypes

g_gametype

Description:

Please see Map Voting.

Type: [2|3|4|5|6|7]

Parameters:

2 Objective

3 Stopwatch

4 Campaign

5 Last Man Standing

6 Map Voting

7 Team Death Match

Default: 4

Campaign

Objective

Last Man Standing

Map Voting

This gametype allows for the players to decide on the map that is played next. When g_gametype is set to 6 a new screen is introduced during intermission. This screen list, depending on server configuration, a list of up to 32 maps that are loaded on the server, and that all players can vote on. Once intermission ends, the server totals the votes, and plays the next map based upon the vote results


Miscellaneous notes about mapvoting

Total maps allowed is 32. If server admin has more than 32 .bsp files, only the first 32 are used Tie breaker. The default tie-breaker is such that if 2 or more maps are tied with the same number of votes, the map that was played most recently is selected. Bots and connecting players do NOT count for mapvoting, everyone else (including spectators) does. If no maps are voted for, the default "nextmap" cvar is used, so server admins have to specify a default map cycle of sort, usually in the following format:

set d1 "set g_gametype 6 ; map oasis ; set nextmap vstr d2"
set d2 "set g_gametype 6 ; map battery ; set nextmap vstr d3"
set d3 "set g_gametype 6 ; map goldrush ; set nextmap vstr d1"
vstr d1

This means that the default map, upon server start, will be oasis. From there, map voting will be used. If at any point, no map is voted for, battery will be played, etc


g_mapVoteFlags

Description: This cvar controls the behaviour of the map voting.

Type: bitmask

Parameters:

1 Changes the tie breaker so that the map not played in the longest wins
2 Intermission doesn't end until g_intermissionReadyPercent people have voted. If there are no players connected to the server, intermission will end at the timeout. (WARNING: This means that if there are spectators connected and not voting, the next map will not load until those spectators either vote, disconnect, or get kicked by the system)
4 Multi vote: Allows everybody to vote for 3 maps instead of one, first choice map gets 3 votes, second choice gets 2, third choice gets one
8 Don't randomize the maps, so they will always appear in the same order

Default: 0

g_maxMapsVotedFor

Description:
How many maps are available to players for voting upon during intermission.
Only valid when g_gametype is 6 (see Map Voting)

Type: integer

Default: 6

g_minMapAge

Description:

How long a map is ineligible for voting during intermission, after it is played last time.
Only valid when g_gametype is 6 (see Map Voting)

Type: integer

Default: 3

g_includedMaps

Description:

Used to include map regardless of any other restrictions. Including g_excludedMaps setting. The format is ":map1:map2:map3:", where mapX is the .bsp name. Note that each mapname must be fully surrounded by ":" or otherwise the map will be ignored in the list. Only valid when map voting is enabled.

Type: string

Default: ""

Minimum required version: 0.6.2

g_excludedMaps

Description:

Used to exclude map that would otherwise be listed in the map voting list. The format is ":map1:map2:map3:", where mapX is the .bsp name. Note that each mapname must be fully surrounded by ":" otherwise the map will not be excluded.
Only valid when g_gametype is 6 (see Map Voting)

Type: string

Default: ""

Example: To exclude railgun and battery maps from map voting use below command:
set g_excludedMaps ":railgun:battery:"

Team Death Match (TDM)

g_TDMType

Description:

The type of the played Team Death Match.

Type: [ 1 | 2 | 3 ]

Parameters:

1 Map ends only when timelimit hits

2 Map ends when either the target score is reached or the timelimit hits

3 Map ends only when the target score is reached

Default: 0

g_TDMOptions

Description:

Possible options for the played Team Death Match.

Type: bitmask

Parameters:

1 Map voting is enabled during the intermission (i.e. The players vote for the next map to play during the intermission.)

2 Completing the map objective will give the team score bonus that is controlled by the g_TDMObjBonus server cvar

4 Teams get negative points when they do selfkills or teamkills

8 Players cannot selfkill during the TDM. Regardless of other selfkill settings the server has configured

Default: 5

g_TDMScore

Description:

This is the target score the teams attempt to make to win the game in TDM game types 2 and 3.

Type: integer

Default: 100

g_TDMObjBonus

Description:

This is the value that is added to the team score if the team completes the map objective. Adding the bonus does not depend of the TDM type.

Type: integer

Default: 20

Mapconfigs and Mapscripts

g_mapConfigs

Description:

On each map load, the silEnT server will execute 2 configs if possible. The default.cfg and after that a map specifig config file [mapname].cfg. For example if you set g_mapConfigs to 'mapcfg', when the map fueldump starts, the server will try to exec 'mapcfg/fueldump.cfg'.

Set this to "" to disable it.

Set this to "." to look for the cfg file in the current directory (fs_homepath).

Starting from silEnT version 0.5.2, admins can add settings that are executed for specific player amounts. The commands are enclosed in [players low-high] ... [/players] blocks. The low is the lowest amount of players for those settings and high is the maximum amount of players for those settings. For example:

[players 0-10]
set team_maxPanzers 0
[/players]

will disable panzerfaust when player amount is less or equal to 10. The blocks can be placed anywhere in the map config files. If the block is closed with [/players], the following commands do not depend on the player amounts. The player blocks can not be nested. If two player blocks follow each other, the second definition opens a new one and the old one closes. For example:

[players 0-15]
set g_excludedMaps ":mlb_temple:"
[players 16-*]
set g_excludedMaps ":adlernest:"
[/players]

will exclude map MLB Temple if the player amount is less or equal to 15 and exclude map Adlernest if the player amount is 16 or more. The player amount counting is controlled with g_playerCounting server cvar.

When in g_gametype 6 mode (Map Voting) and g_resetXPMapCount is set, an additional file named vote_X.cfg is also exec'ed. X indicates the position of the next map in the campaign. For example, vote_2.cfg will exec'ed such that when map 1 ends, any cvars in vote_2.cfg will affect map voting for map 2. Player blocks are not used with vote_X.cfg files.

Type: string

Default: ""

g_mapScriptDirectory

Description:

Similar to ETPro's b_mapscriptsdirectory. Set it to the name of a directory in your fs_path that contains custom map scripts. For example you can copy the 'etpromapscripts' directory from the ETPro distribution to your 'silent' directory and add: set g_mapScriptDirectory "etpromapscripts" to your cfg. Setting g_mapScriptDirectory to "" disables any use of map .script files.

Note:

It is strongly recommended that you use the map scripts distributed with silEnT or ETPub since these updated scripts fix very important bugs in some of the original map scripts.

Type: string

Default: ""

g_campaignFile

Description:

If you set this to the name of a file in your fs_path it will be interpreted as a .campaign script and all other .campaign scripts in your pk3 files will be ignored. This is useful for making custom campaigns since you don't need to offer a pk3 file containing a custom .campaign script for all clients to download. However, if the client has not downloaded this .campaign file in a pk3, they will not see information about the campaign.

Such information includes:

  • will not display in the VOTE -> MAP list
  • map locations will not draw on the map of Europe.
  • campaign description will not draw in the right panel
  • total number of maps and current maps order in the campaign
  • will not be shown in the intermission screens.

Also, even though the built-in campaigns cmpgn_centraleurope and cmpgn_northafrica will not be valid, they will still appear in the client's VOTE -> MAP menu. If a vote for one of them passes, nothing will happen.

Setting this to "" disables it.

Type: string

Default: ""

g_playerCounting

Description

This cvar controls how the player amount is calculated for the mapconfigs. The player amount value is the highest number of simultaneously fully connected players during the map or warmup. The player counting can be disabled from the warmup period. If the player counting is enabled during the warmup, the players are counted right at the end of the warmup. This allows the teams to stabilize after intermission. Similarly the counting is triggered always with a 3 second delay from the change in the teams. Team changes include players joining the server and staying in the spectators.

Type: bitmask

Parameters:

1 Enable filtering. This will add the 2 latest values together and divide them by 2.

2 No player counting during warmup.

4 Count spectators into players. Without this flag, only players in the playing teams are counted.

8 Bots are not included into the player count.

Default: 1

Censoring

g_censor

Description:

A comma delimited string of words that will be censored from the chat.

Type: string

Default: ""

g_censorNames

Description:

A comma delimited string of words that will be censored from the player names.

Type: string

Default: ""

g_censorPenalty

Description:

This controls the censoring behaviour.

Type: bitmask

Parameters:

1 Kill the player

2 Kick players with names containing words in g_censorNames

4 Kill, but don't gib

8 Auto-mute for g_censorMuteTime [60] seconds

16 Lose the amount of xp specified in g_censorXP

32 Burn

Default: 0

Note:

If you use both 1 and 4, it will gib (like shrub did).

g_censorNeil

Description:

Use Neil Toronto's censor filter. It'll catch some symbol and number replacements, and spaces now. It also adds some common words and common words with "swears" in them that should really be OK. For example, it will not censor "assassin" but it will censor "ass".

Type: [0|1]

Default: 0

g_censorNeilNames

Description:

Use Neil Toronto's censor filter for player names. See g_censorNeil description for details.

Type: [0|1]

Default: 0

g_censorMuteTime

Description:

The number of seconds to auto-mute as a censor penalty. Only works if bitflag 8 is added to g_censorPenalty.

Type: integer

Default: 60

g_censorXP

Description:

The amount of XP to lose as a censor penalty. Only works if bitflag 16 is added to g_censorPenalty.

Type: integer

Default: 5

Voting

g_voting

Description:

Control's voting behaviour.

Type: bitmask

Parameters:

1 Votes will pass on the number of votes cast rather than total eligible voters.

2 Votes that pass do not count against the vote_limit for the caller.

4 " (called by NAME)" is appended to the vote description where NAME is the name of the player that called the vote.

8 Show the number of YES and NO votes after a votes has passed or failed. This also shows if a vote is canceled or passed by an admin.

Default: 0

vote_limit

Description:

This value defines how many votes one player can invoke during one map.

Type: integer

Default: 5

vote_percent

Description:

The required percentage of yes votes for the vote to pass.

Type: integer

Default: 50

vote_allow_comp

Description:

Allows voting for competition settings.

Type: [0|1]

Default: 1

vote_allow_gametype

Description:

Allows voting for gametype.

Type: [0|1]

Default: 1

vote_allow_kick

Description:

Allows voting for kicking a player.

Type: [0|1]

Default: 1

vote_allow_map

Description:

Allows voting for map to be played.

Type: [0|1]

Default: 1

vote_allow_matchreset

Description:

Allows voting for restarting the match.

Type: [0|1]

Default: 1

vote_allow_mutespecs

Description:

Allows voting for muting spectators.

Type: [0|1]

Default: 1

vote_allow_nextmap

Description:

Allows voting for starting the next map in the map rotation.

Type: [0|1]

Default: 1

vote_allow_pub

Description:

Allows voting for public game settings.

Type: [0|1]

Default: 1

vote_allow_referee

Description:

Allows voting for making a player a referee.

Type: [0|1]

Default: 1

vote_allow_shuffleteamsxp

Description:

Allows voting for shuffling teams based on XP.

Type: [0|1]

Default: 1

vote_allow_swapteams

Description:

Allows voting for swapping the teams. Allied players go to the axis team and axis players go to the allied team.

Type: [0|1]

Default: 1

vote_allow_friendlyfire

Description:

Allows voting for enabling/disabling friendly fire.

Type: [0|1]

Default: 1

vote_allow_timelimit

Description:

Allows voting for changing the map time.

Type: [0|1]

Default: 1

vote_allow_warmupdamage

Description:

Allows voting for enabling/disabling/enemies only warmup damage.

Type: [0|1]

Default: 1

vote_allow_antilag

Description:

Allows voting for enabling/disabling antilag.

Type: [0|1]

Default: 1

vote_allow_balancedteams

Description:

Allows voting for enabling/disabling balanced teams enforcing.

Type: [0|1]

Default: 1

vote_allow_muting

Description:

Allows voting for muting/unmuting a player.

Type: [0|1]

Default: 1

vote_allow_surrender

Description:

Allows voting for surrendering the played map.

Type: [0|1]

Default: 1

vote_allow_restartcampaign

Description:

Allows voting for restarting the campaign.

Type: [0|1]

Default: 1

vote_allow_nextcampaign

Description:

Allows voting for changing the campaign to the next one in the campaign rotation.

Type: [0|1]

Default: 1

vote_allow_poll

Description:

Allows making freely written polls using the vote system.

Type: [0|1]

Default: 1

vote_allow_maprestart

Description:

Allows voting for restarting the played map.

Type: [0|1]

Default: 1

vote_allow_shufflenorestart

Description:

Allows voting for shuffling teams without restarting the map.

Type: [0|1]

Default: 1

vote_allow_cointoss

Description:

Allows voting for doing cointoss.

Type: [0|1]

Default: 1

vote_allow_putspec

Description:

Allows voting for moving a player to the spectators.

Type: [0|1]

Default: 1

vote_block_maprestart

Description:

Defines how many seconds from the beginning of the map is the voting for restarting the map allowed.

Type: integer

Default: 300

vote_block_matchreset

Description:

Defines how many seconds from the beginning of the map is the voting for restarting the match allowed.

Type: integer

Default: 300

vote_block_shuffleteamsxp

Description:

Defines how many seconds from the beginning of the map is the voting for shuffling the teams allowed.

Type: integer

Default: 300

vote_block_shufflenorestart

Description:

Defines how many seconds from the beginning of the map is the voting for shuffling the teams without restarting the map allowed.

Type: integer

Default: 300

vote_block_nextmap

Description:

Defines how many seconds from the beginning of the map is the voting for starting the next map in the map rotation allowed.

Type: integer

Default: 300

vote_block_swapteams

Description:

Defines how many seconds from the beginning of the map is the voting for swapping the teams allowed.

Type: integer

Default: 300

vote_block_surrender

Description:

Defines how many seconds from the beginning of the map is the voting for surrendering the map allowed.

Type: integer

Default: 300

vote_block_map

Description:

Defines how many seconds from the beginning of the map is the voting for played map allowed.

Type: integer

Default: 300

vote_block_timelimit

Description:

Defines how many seconds from the beginning of the map is the voting for changing the map time allowed.

Type: integer

Default: 300

vote_block_poll

Description:

Defines how many seconds from the beginning of the map is the voting for polls allowed.

Type: integer

Default: 300

vote_block_nextcampaign

Description:

Defines how many seconds from the beginning of the map is the voting for next campaign allowed.

Type: integer

Default: 300

vote_block_restartcampaign

Description:

Defines how many seconds from the beginning of the map is the voting for restarting the campaign allowed.

Type: integer

Default: 300

g_noVoteTime

Description:

Defines how many seconds must pass between two votes.

Type: integer

Default: 0

g_voteResultsMinLevel

Description:

Defines the minimum admin level for the players to see the results of the votes.

Type: integer

Default: -1

g_votedMuteLength

Description:

Defines the length in seconds of the mute issued by a passed mute vote. You can use modifiers with this value.

Type: integer

Default: 3h

Weapons, Classes and Skills

g_poison

Description:

Gives medics the ability to poison enemies by sticking with their medic syringe. Enemies will be damaged at g_poison/second when g_poison is set to a value more than 0. Setting to 0 will disable poison needles.

Type: integer

Default: 0

g_poisonFlags

Description:

Controls the effects of g_poison.

Type: bitmask

Parameters:

1 Poisoned player's screen shakes.

2 Other players see the poisoned player's head shaking.

4 Poisoned player appears to bend over (hurl) every 2 seconds. (poisoned player does not see this happen.)

8 Poisoned player cannot use +attack. NOTE: because of client side prediction, the client may see the gun firing occasionally if they hold down +attack, but no shots are fired.

16 Poisoned player is disoriented (view turned upside down).

Default: 7

g_medics

Description:

Controls various aspects of the medic, to nerf or otherwise change their behavior.

Type: bitmask

Parameters:

1 Medics can't pick up their own health packs to cure themselves of poison needle effects.

2 Medics can't pick up their own health packs at all.

4 A level 4 medic will always be revived to full health (no matter what the level of the reviving medic is).

8 Value is not in use.

16 Medics do not spawn with akimbo pistols, regardless of their light weapons skill.

32 Medics spawn with pistol only, and can't pick up SMG of either team. However, any class can steal a medics uniform, if the g_classChange is set to 1, and receive the medic benefits while retaining their current weapons, including akimbos and SMG.

64 Medics can use syringes to heal living teammates as an alternative to the tk/revive cycle.

128 Level 4 medics can inject other players with their adrenaline. This can be done when holding the revive needle by pressing the alt-fire button, or with the /adrenother client command.

256 Level 4 medics cannot adrenaline self. If this flag is on, Medics will not receive adrenaline upon reaching level 4. (This won't affect flag 128)

512 Adrenaline use takes only half of the chargebar.

Default: 0

g_adrenDmgReduction

Description: The percentage damage reduction after injecting adrenaline. g_adrenDmgReduction is now independent percentage of the caused damage that is inflected when the adrenaline is on. 0 means no damage and 100 means full damage from the weapon.

Type: Integer

Default: 50

g_medicHealthRegen

Description:

The rate at which medics regenerate health (in HP per second). This rate is divided into two parts: The first is from 1 to 110-125 HP (depending on the number of medics per team), and then above that. The system default is 3/2 (3 HP per second, then 2 HP per second).

Type: [ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 ]

Parameters:

0 3/2

1 2/2

2 2/1

3 2/0

4 1/1

5 1/0

6 0/0

7 0/1

8 0/2

Default: 0

g_throwableKnives

Description:

Enable knife throwing. The amount of throwable knives is g_maxKnives - 1. Any non zero value will enable knife throwing.

Type: [0|1]

Default: 0

g_maxKnives

Description:

Maximum number of knives a player can posses. Take note that if g_throvableKnives is enabled, the last knife cannot be thrown.

Type: integer

Default: 5

g_knifeChargeTime

Description:

How long it takes in milliseconds for the "knife" to charge to the maximum throw speed/force.

Type: integer

Default: 800

g_constructibleXPSharing

Description:

When multiple engineers help build a constructible, each gets his share of XP once the constructible is build. The share of gained XP is proportional to how much the engineer built.

Type: [0|1]

Default: 0

g_asblock

Description:

Airstrike blocking.

Type: bitmask

Parameters:

1 Make an announcement whenever an airstrike is blocked.

2 A player may easily block an airstrike by crouching, standing, or proning over the enemy's canister to block the airstrike.

4 Reserved.

8 Lvl 3 FieldOPs and higher cannot have the airstrikes blocked by players.

16 Disables teammates blocking airstrikes.

32 Give 2 Battle Sense XP to player that blocks the air strike. No XP given for blocking teammates or your own air strike.

Default: 0

g_panzersSpeed

Description:

Speed of the panzers. Normal panzer speed is 2500.

Type: integer

Default: 2500

g_panzersGravity

Description:

If set to 1, panzer trajectory will be affected by gravity.

Type: [0|1]

Default: 0

g_dyno

Description:

Dynamite Behaviour.

Type: bitmaks

Parameters:

1 Sudden Death Dynamites enabled. If there is 30 seconds or less on the clock and dynamite is planted on an objective, the clock will continue to run past zero. The match will not end until the dynamite either explodes, or is disarmed. You are not allowed to plant additional dynamite during sudden death.

2 Dynamite chaining enabled. Dynamite will cause other similar dynamites to explode when exploding (only if within blast radius). Dynamites not planted on an objective will blow any other dynamite not on an objective. Dynamite planted on an objective will only blow dynamite on the same objective.

4 Adds a dynamite symbol with the location and the time remaining to all the players on the team of the player who plants the dynamite. This will only happen when dynamite is placed on an objective. The players in the other team will see the dynamite symbol too, but they won't see the time remaining.

8 Dynamite cannot be disarmed by your team (inlcuding yourself), so only the other team can defuse it.

16 Enable dynamite ID. You can see the owner of a dynamite when you point at it.

Default: 0

g_canisterKick

Description:

Canister and grenade kicking.

Allows players to kick smoke, and air strike canisters, along with grendaes. The integer adjust the amount of force put behind the kick. 75 is a good value, anything below 60 is about useless, and above about 125 is probably too much.

Type: integer

Default: 0

g_canisterKickOwner

Description:

Kicked Canister Ownership.

Type: [0|1]

Parameters:

0 Kicker does not take ownership of the canister.

1 Kicker takes ownership of the canister.

Default: 0

g_staminaRecharge

Description:

Multiplies the rate at which stamina is rebuilt. Setting this value to zero will cause players to not regain any stamina once it is used except through the use of adrenalin.

Type: float

Default: 1.0

g_mineid

Description:

Turns on identification of your teammates landmines.

Type: [0|1]

Default: 0

g_medicSelfhealTime

Description:

The time in milliseconds that a medic cannot heal himself after being hit.

Type: integer

Default: 0

g_maxPanzerSuicides

Description:

When set, a player can kill himself g_maxPanzerSuicides times with a panzerfaust. The next panzerselfkill will result in a panzer shooting medpacks.

The amount of suicides is reset every map.

Set to -1 to disable, -2 to always enable (no normal panzers anymore)

Type: integer

Default: -1

g_panzerPackDistance

Description:

Set the g_packDistance for the medpacks fired by the panzerfaust when g_maxPanzerSuicides is enabled.

Set to 0 to use default (etmain)

Type: integer

Default: 0

g_weapons

Description:

This is meant to match the shrubmod g_weapons cvar.

Type: bitmask

Parameters:

1 Level 0 field ops doesn't get binoculars (unless he has >= level 1 Battle Sense)

2 Syringes work underwater

4 Pliers work underwater

8 Fully restore Field ops charge bar if airstrike is aborted

16 Half restore FIeld ops charge bar if airstrike is aborted

32 Ammo packs restore helmets

64 Drop binoculars if player has them

128 Soldiers with level 4 heavy weapons don't lose their pistols

256 Garands can reload when clip is not empty

512 Balance the clip size between the allies and axis rifles. allied rifles get same clip sizes and max ammo as the k43.

1024 Creates a hitbox for mortar shells. This reduces (or eliminates in some cases) the ability to fire mortars through smaller windows and bunker slits.

2048 Knives will always gib a body (not a player, use g_dmgKnife instead if you want that)

4096 Players drop all of their ammo when they die, instead of just the ammo that is in the current clip.

8192 "Ammo"/"No ammo" icon is shown for dropped weapons.

16384 Enable fast shooting for Thompson, MP40, PPSh and Sten. 110 ms between shots.

32768 Kill by the shot tripmine is counted for the shooter not the player that planted it.

Default: 0

Changelog:

Flag 16384 was added in version 0.6.2.

g_classWeapons

Description:

This cvar enables certain weapons per class.

Type: bitmask

Parameters:

1 Enable PPSH for soldiers

2 Enable PPSH for engineers

4 Enable PPSH for fieldops

8 Enable MP40 and Thompson to be available to both teams in limbo menu

16 Enable MP40 for soldiers.

32 Enable Thompson for soldiers.

Default: 63

Changelog:

Flag 8 was added in version 0.6.0.

Flags 16 and 32 were added in version 0.6.2. Also the default value was changed from 15 to 63.

g_mg42

Description:

This cvar controls optional machine gun behaviour.

Type: bitmask

Parameters:

1 Machine Guns can make headshots

2 Machine Guns can reload when clip is not empty

Default: 0

g_coverts

Description:

Controls various aspects of the Covert Op class.

Type: bitmask

Parameters:

1 Level 4 Coverts have more accurate scoped weapons.

2 Disguised coverts can only be identified with the "crosshair name" by level 4 Field Ops.

4 After detonating a satchel charge, the primary weapon will be selected instead of satchel again.

8 Coverts in disguise take half the normal combat damage.

16 Coverts in disguise take no splash damage.

32 Coverts do not automatically lose their uniform if an enemy sees them firing a weapon.

64 Coverts do not automatically lose their uniform if they fire a non-silent weapon.

128 Coverts do not automatically lose their uniforms if they attach to an emplaced MG weapon. Note that this flag has nothing to do with firing.

256 Coverts are awarded xp for constructive use of smoke.

512 Coverts will lose their uniform if an enemy sees him using ANY weapon (otherwise knife/satchel/smoke/binoc will never lose uni).

1024 A disguised covert can still steal enemy uniforms.

Default: 0

g_enableTMines

Description:

Disables/enables tripmines. Tripmines are available only for engineers.

Type: [0|1]

Default: 1

g_enableDemolition

Description:

Enable Improvised Demolition weapon for soldier class. Improvised Demolition weapon was introduced in 0.8.0 version of the silEnT mod. As mentioned in the original WWII Tank-destruction manual, a big charge could be made of 6 stickgrenade heads around one complete grenade, fixed with wire or rope. The central grenade would make the other 6 grenade detonate as well causing an explosion which could damage the light armoured vehicles.

In silEnT mod this weapon is designed to suit exactly the purpose described above. To gain the weapon player has to gain 3rd engineer level and 4th soldier level.

Type: [0|1]

Default: 1

g_skills

Description:

Optional skill related flags.

Type: bitmask

Parameters:

1 Players with level 4 battle sense can spot landmines for teammates

2 Players with level 4 engineering can keep the flak jacket for other classes

4 Players with level 4 first aid can keep adrenaline for other classes

Default: 0

skill_soldier

Description:

Customizes the experience points necessary to go up in soldier ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.

A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.

You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.

Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.

Type: string

Default: "20 50 90 140"

skill_medic

Description:

Customizes the experience points necessary to go up in medic ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.

A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.

You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.

Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.

Type: string

Default: "20 50 90 140"

skill_engineer

Description:

Customizes the experience points necessary to go up in engineer ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.

A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.

You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.

Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.

Type: string

Default: "20 50 90 140"

skill_fieldops

Description:

Customizes the experience points necessary to go up in fieldop ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.

A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.

You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.

Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.

Type: string

Default: "20 50 90 140"

skill_covertops

Description:

Customizes the experience points necessary to go up in covert op ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.

A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.

You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.

Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.

Type: string

Default: "20 50 90 140"

skill_battlesense

Description:

Customizes the experience points necessary to go up in battle sense ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.

A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.

You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.

Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.

Type: string

Default: "20 50 90 140"

skill_lightweapons

Description:

Customizes the experience points necessary to go up in light weapon ranks. The setting consist of four space-separated integers indicating the number of XP required to reach a rank.

A string such as "3 10 10 10" indicates that 3 points are required to go up the first rank, and the next three ranks are granted when the player has 10 points.

You can also grant levels upon connection by using a value like "0 0 20 100". This would mean that the first two ranks would be granted upon connection, and the third and fourth ranks would be granted at 20 and 100 points, respectively.

Starting from silEnT 0.6.0, this cvar also allows disabling skills. Also, 0 value will always enable skill regardless of the order. For example, a string "0 -1 0 -1" always enables the skill from the first and the third level and completely disables the skills on the second and the fourth level. The only limitation is, that the values other then 0 and -1 must be ordered from the smaller to the higher. For example "0 20 -1 50" always enables the first skill, second skill takes 20 points to unlock, third skill is always disabled and the fourth skill requires 50 points to unlock. Furthermore, the g_noSkillUpgrades now locks skills to any always enabled levels. Meaning skills that are set to require 0 points to unlock.

Type: string

Default: "20 50 90 140"

g_panzersVulnerable

Description:

If set to 1, panzers that are shot in mid-air will explode.

Type: [0|1]

Default: 0


g_maxMarkers

Description:

Defines how many danger zones can be marked by the covert ops.

Danger zones were introduced in 0.7.0 version of the silEnT mod. They can be marked by Covert Ops to indicate that some area can be considered dangerous. Such area is then visible on the command map as the red circle zone. Additionally, when the Command Post is built, players are notified by sound and visual signs about entering the danger zone. Players can customize the way they are notified via the HUD editor and the silEnT customize HUD menu.

To mark the danger zone Covert Ops needs to look through his binoculars and press the left mouse button (attack button). The same way Field Ops calls for an airstrike.

To disable the feature set the g_maxMarkers to 0.

Type: Integer

Default: 2

Minimum required version: 0.7.0

Friendly Fire

g_friendlyFire

Description:

To enable / disable friendly fire on server. 

Type: [0|1]

Default: 0

g_friendlyFireOpts

Description:

Allows greater control over friendly fire events.

Type: bitmask

Parameters:

1 Landmines ALWAYS damage teammates regardless of g_friendlyfire setting

2 Allow 'grenade boosting' when friendly fire is off

4 Non-engineer players do not trigger landmines on their own team

8 Players do not trigger trip mines on their own team

16 Tripmines ALWAYS damage teammates regardless of g_friendlyfire setting

32 Only engineer that planted the landmine can trigger/defuse it (concerns team landmines only). This flag requires that the flag 4 is set.

Default: 0

Changelog:

Flag 32 was added in version 0.5.1.


g_reflectFriendlyFire

Description:

Similar to Shrub's g_friendlyfire 2 cvar. A multiplier value that determines how much friendly-fire damage, if any, is reflected back to the player that caused the damage. This setting is independent of g_friendlyfire, so damage can be set to reflect on both FF and non-FF servers.

A value of 1.0 would reflect full damage.

A value of 0.5 would reflect half damage.

Set to 0 to disable reflected friendly fire.

Type: float

Default: 0.0

g_reflectFFWeapons

Description:

Selects which category of weapon will reflect when g_reflectFriendlyFire is non-zero.

Type: bitmask

Parameters:

1 Enable reflected damage for Firearms (all types of guns)

2 Enable reflected damage for Grenades and grenade launchers

4 Enable reflected damage for Knives (includes thrown knives)

8 Enable reflected damage for Panzers

16 Enable reflected damage for Flamethrowers

32 Enable reflected damage for Mortars

64 Enable reflected damage for Satchel Charges

128 Enable reflected damage for Artillery and Air Strikes

256 Enable reflected damage for Dynamite and Construction Damage

512 Enable reflected damage for Landmines

Default: 31

Note:

Setting this value to zero will override any multiplier set via g_reflectFriendlyFire, effectively disabling reflecting damage.

g_teamDamageRestriction

Description:

When greater than 0, anybody that has this percentage of hits inflicted on a teammate will automatically be kicked. A minimum of g_minhits hits total required before this is calculated. Client can see current stats for themselves by doing a /damage in console. Implemented to mimic shrub behavior as much as is possible, there are other ways to implement this feature, which may be implemented in addition to current manner.

Type: integer

Default: 0

g_minHits

Description:

Minimum number of damaging hits required before calculating if player has reached g_teamDamageRestriction threshold. Flamethrower and landmine hits are adjusted similar to shrub. Medics get -2 hits for every revive.

Type: integer

Default: 6

Hitboxes, Physics & Anti Lag Settings

g_antilagDelay

Description:

Manually delay the antilag of every player on the server. Might give very weird behaviour, so use at own risk.

Type: integer

Default: 0

g_fixedphysics

Description:

Creates a smoother movement when enabled.

Type: [0|1]

Default: 0

g_fixedphysicsfps

Description:

Makes the fixedphysics act like all the clients have the same framerate, so that players with "magic" quake engine framerates don't have an unfair advantage. This CVAR must be between 60 and 333.

Type: integer

Default: 125

Note:

This doesn't actually change the framerates in clients, so the clients can keep their own framerates.

g_antiwarp

Description:

Enable ETPro-style antiwarp. This gives non-lagging players a much better game but for laggers it will be a bit more uncomfortable. This CVAR overrides both g_maxWarp AND g_skipCorrection in order to keep things consistent.

Type: [0|1]

Default: 1

g_realBody

Description

If server admin sets this, the player hitboxes are adjusted smaller and harder to hit. Value 0 corresponds to the hitboxes used up to 0.5.0.

Parameters:

0 Hitboxes used up to 0.5.0

1 Use smaller hitboxes

Default: 0

Minimum required version: 0.5.1

Note

To see the differences in the hitboxes, use g_debughitboxes server cvar. Do note that this kind of testing should not be done with many players because it will cause huge amount of lag.

g_skipCorrection

Description:

Set this to 1 to enable Neil Toronto's unlagged2 skip correction. This will smooth out the movement of players with high packet loss (to a degree). This is similar to etpro's antiwarp, but has some differences. Neil likes this version better, bani likes his better.

This replaces g_smoothClients from etmain.

Type: [0|1]

Default: 0

g_maxWarp

Description:

This allows you to control the amount of "warping" that players with high packet loss can do. The [integer] is the number of server frames that you allow a player to miss before their next movement is put in check.

A server frame is 50ms on a typical server (sv_fps set to 20). This means that if you set g_maxWarp to 5 you won't allow players to warp from point A to point B if that distance takes an normal player 1/4 of a second to travel. Setting this to 1 is a good way to drive off just about everyone from your server.

As far as I can tell, 1000ms is allowed by default in the game, so setting this to any value higher than 39 should have no effect if sv_fps is set to 10.

Type: integer

Default: 4

Fun Wars and Crazy Settings

g_panzerwar

Description:

Enables/Disables Panzerwar. 1 is enabled, 0 is disabled.

Type: [0|1]

Default: 0

g_sniperwar

Description:

Enables/Disables Sniperwar. 1 is enabled, 0 is disabled.

Type: [0|1]

Default: 0

g_riflewar

Description:

Enables/Disables Riflewar. 1 is enabled, 0 is disabled.

Type: [0|1]

Default: 0

g_min_crazyspeed

Description:

Set minimum speed for !crazyspeed command.

Type: Integer

Default: 200

Minimum required version: 0.7.0

g_max_crazyspeed

Description:

Set maximum speed for !crazyspeed command.

Type: Integer

Default: 540

Minimum required version: 0.7.0

g_min_crazygravity

Description:

Set minimum speed for !crazygravity command.

Type: Integer

Default: 10

Minimum required version: 0.7.0

g_max_crazygravity

Description:

Set max speed for !crazygravity command.

Type: Integer

Default: 1200

Minimum required version: 0.7.0

Watermark

g_watermark

Description:

Set a watermark that will be displayed to all clients. The watermark must be put in a folder named "watermark" and then this whole folder needs to be zipped into a .pk3 file. The silEnT watermark is "logo_silent.tga".

Type: string

Default: ""

g_watermarkFadeAfter

Description:

When g_watermark is set, the watermark will fade out after [integer] number of seconds.

Type: integer

Default: 0

g_watermarkFadeTime

Description:

When g_watermarkFadeAfter is set, the watermark will fade out in [integer] seconds. (So the fading process from 1.0 alpha to 0.0 alpha takes [integer] seconds.

Type: integer

Default: 0

Hitsounds

g_hitsounds

Description:

Server side hitsound options.

Type: bitmask

Parameters:

1 Enable hitsounds

2 Disable hitsounds when shooting wounded players

4 Disable the headshot sound when shooting wounded player in the head. (default hitsound will be used in it's place)

8 Enable warning sound from hitting team mates

16 Disable hitsounds from poison damage

32 Disable hitsounds from explosive weapons

Default: 1

Note:

A client can disable hitsounds with cg_hitSounds client cvar. Also an option to play only headshots is available.

g_defaultHitSounds

Description:

Selects the default hit sounds on the server. Starting from silEnT 0.6.0, it is possible for the players to choose what kind of hit sounds are played. If the client cvar cg_hitSoundType is 0, the g_defaultHitSounds determines what type of hit sounds are used. Also, if the client cvar cg_hitSoundType is 0, the server may also add custom hit sound files in a custom pk3 file. These sounds are automatically loaded if available. However, if the client cvar cg_hitSoundType is 1, 2 or 3, the client will use strictly the hit sounds they have selected. Custom hit sounds are placed to the root folder "sounds/hitsounds" in the custom pk3. They must never overload any of the files in the subfolders, silent, etpro or etpub.

Type: [0|1|2|3]

Parameters:

0 No selection, will default to silEnT in the client end.

1 Defaults silEnT hitsounds.

2 Defaults ETPro hitsounds.

3 Defaults ETPub hitsounds.

Default: 1

Minimum required version: 0.6.0

Intermission

g_intermissionTime

Description:

Set the length of time the end of game screens displays before loading the next map.

Type: integer

Default: 60

g_intermissionReadyPercent

Description:

The percent of connected players who need to hit the "READY" button to move on to the next map without waiting g_intermissionTime to run out.

Type: integer

Default: 100

Miscellaneous

g_proneDelay

Description:

If set, there will be 1750 ms delay after every prone or getting up before the player can prone or get up again. Also, weapon spread will be maxed for 1 second after proning.

Type: [0|1]

Parameters:

Default: 0

g_realPlayTime

Description:

Show additional real play time of the payer (without spec time) in the debriefing screen at the end of the map. For instance: 6/10 would mean that player played 6 minutes, was on the server for 10 minutes and 4 minutes was in spec.

Type: [0|1]

Parameters:

Default: 1

Minimum required version: 0.6.0

g_extraStatistics

Description:

Additional statistics over the end game awards.

Type: bitmask

Parameters:

1 Player with most mine kills

2 Player with most mine damage inflicted

4 Player with most knife kills

8 Player with most gibs

16 Player with most artillery kills

32 Player with most airstrike kills

Default: 0

g_packDistance

Description:

Set the distance at which health packs and ammo packs are thrown. Set this to 0 to make it just like etmain. The settings should be similar to shrubet so set this to 2 for a subtle improvement.

Type: integer

Default: 0

g_dropHealth

Description:

If set to a positive integer, medics will drop [integer] number of health packs when they are gibbed. If set to -1, medics will drop the number of health packs that they could have dropped at the moment of their death. Set this to 0 to turn it off.

Type: integer

Default: 0

g_dropAmmo

Description:

If set to a positive integer, fieldops will drop [integer] number of ammo packs when they are gibbed. If set to -1, fieldops will drop the number of ammo packs that they could have dropped at the moment of their death. Set this to 0 to turn it off.

Type: integer

Default: 0

g_tossDistance

Description:

Set the velocity at which health or ammo packs are tossed from the dead body when g_dropHealth or g_dropAmmo are activated. This changes the distance that these packs travel from the corpse.

Type: integer

Default: 0

g_misc

Description

Miscellaneous options.

Parameters

Type: bitmask

1 Enable double jump.

2 Enable binoc master competition. Requires g_weapons 64 to be set.

4 When a player is killed he can see the HP the killer has left.

8 Disable self damage.

16 Players can not jump if stamina is too low.

32 Enable Jaymod style doublejump.

64 Disable Falling Damage.

128 Announce revives.

256 Setting this flag disables the "First Blood" announcement.

512 Full body predict. This makes it harder to get inside for example walls and stones. Same as ETPub g_misc 32 + 256. Do note that this can cause problems when proning through windows and similar narrow passages

1024 Enable the enemy team objective carry indicator.

Default: 0

Changelog:

  • Flag 1024 was added in version 0.8.2.

g_moverScale

Description:

Multiply the speed of movers (e.g. tanks) by float.

Type: float

Default: 1.0

g_slashKill

Description:

Controls the behavior of the /kill command. See also g_fear and g_maxSelfkills.

Type: bitmask

Parameters:

1 Player spawns with half charge bar after /kill

2 Player spawns with 0 charge bar after /kill

4 Restores the charge bar to the same state it was in at the moment the player issued /kill (regardless of how long they were in limbo)

8 Disable /kill when player is frozen

16 Disable /kill when player is poisoned

Default: 0

g_maxSelfkills

Description:

Amount of times a player can use /kill per map. Setting this to -1 will result in normal behaviour (infinite selfkills). Setting this to 0 will disable /kill.

Type: integer

Default: -1

g_ammoCabinetTime

Description:

The time between ammo cabinet regenerations in milliseconds.

Type: integer

Default: 60000

g_healthCabinetTime

Description:

The time between health cabinet regenerations in milliseconds.

Type: integer

Default: 10000

g_spectator

Description:

Controls spectator behaviour.

Type: bitmask

Parameters:

1 When in freelook mode, you can 'fire' at a player to follow. If you miss a player, nothing happens.

2 When in freelook mode with the 1 flag set, if you shoot and miss you start following the next available player.

4 When the player you're following goes into limbo, don't move to the next available player.

8 When the player you're following goes into limbo, go to freelook instead of following the next available player. (4 has precedence)

Default: 0

g_truePing

Description:

Allows players to see how much their local game is behind the top time (the time of the latest server frame). Pings will show around 50 ms better than if the ping would show network latency, but it's more accurate. Remember that the server is sending a snapshot to players in every 50 ms. This makes the players to inherenty play in the past from the server point of view.

Type: [0|1]

Default: 0

g_dropObj

Description:

Sets the number of times a player can drop/toss the objective (e.g. parts on radar) per life.

The parts are dropped by pressing the +activate key (usually bound to F) when there's nothing else around to be activated.

Before enabling this recall how spammy the voiceovers can be. Then picture a player tossing the parts to himself over and over again. For this reason you probably don't want to set this very high.

Players must switch to knife in order to drop the objective. If they are not holding knife and hit +activate they will see a message that notifies them that they must switch to knife. This change was made to prevent accidental dropping of the objective when trying to push, drag, pick up, or activate something else.

Type: integer

Default: 0

g_doubleJumpHeight

Description:

Adjusts the height of the second jump in a double jump. This value is a multiplier to the default jump velocity. The greater g_doubleJumpHeight is, the greater the height of the second jump. This setting has no effect if double jump is disabled in g_misc.

Type: float

Default: 1.4

g_serverInfo

Description:

Use this cvar to change the behaviour of the 'serverinfo' string. This string is printed in response to the 'getstatus' primative command used by game browsers.

Type: bitmask

Parameters:

1 Display player team information using the 'P' cvar in the server info string. (etpro and etmain 2.60 behaviour)

2 Display player team information using the 'Players_Axis' and 'Players_Allies' cvars in the server info string. (etmain < 2.60 behaviour)

4 Display the 'campaign_maps' cvar in the server info string. This contains a comma delimited list off all the maps in the current campaign. Only works if you have g_gametype set to 4.

8 Displays the 'C' CVAR in the server info string. This is a string containing the current map number in the campaign, and total maps in current campaign, in the form of "xx,yy". Only works if you have g_gametype set to 4.

16 The class charge times will not be present in the server info string unless this flag is set. They are removed by default in order to make room in the serverInfo string for more useful information. These cvars are g_medicChargeTime, g_engineerChargeTime, g_LTChargeTime, g_covertopChargeTime, g_soldierChargeTime.

32 Send KR (KillRating) instead of XP in SERVERINFO string. This is overriden by flag 64.

64 Send PR (PlayerRating) instead of XP/KR in SERVERINFO string. Overrides flag 32.

Default: 1

Note:

This cvar MUST be set prior to loading the first map. You will not be able to change this cvar once the game code is loaded. The serverInfo string has a fixed length of 1024 characters. This space is shared with any cvar you create on your server with the 'sets' command. If you use up too much space with 'sets', your server will fail to start. It will print the message "Info string length exceeded" if you don't have enough space left in your serverinfo string to handle the g_serverInfo flags you've selected. To fix this, either remove some sets cvars from your config, or use different g_serverInfo flags.

g_fear

Description:

If a player uses the /kill command within g_fear milliseconds after taking damage from an enemy, the attacker that last damaged that player will recieve full credit for the kill and the mode of death will be recorded as MOD_FEAR. Other restrictions are that the attacker must be on the opposite team and the attacker must still be alive.

G_fear applies also to players that try to switch teams within g_fear milliseconds. The player will remain in the same team and the usual g_fear behavior applies.

In-game statistics will reflect that the death was caused by the weapon that did the last recorded damage to the player.

Set this to 0 to disable this behaviour.

Type: integer

Default: 2000

g_maxNameChanges

Description:

Limit the number of namechanges per player per map by setting this cvar. This is especially needed if you have cheaters that autochange their name every second. Set to -1 to disable.

Type: integer

Default: 3

g_disableComplaints

Description:

Disable teamkill complaints for some weapons.

Type: bitmask

Parameters:

1 Landmines

2 Artillery and airstrikes

4 Mortar

8 Dynamite

16 Tripmines

32 Completely

Default: 0

g_countryFlags

Description:

Sets whether the players will see the GeoIP country flags in the crosshair when aiming at someone and in the scoreboard. Players can enable/disable it with cg_countryFlags (default 1).

You will need the GeoIP.dat file in your server's silent folder. You should read and accept the license of the GeoIP.dat database!

Read the database license at http://geolite.maxmind.com/download/geoip/database/LICENSE.txt Download the latest database at http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz

Type: [0|1]

Default: 1

g_incognitoCountryFlag

Description:

Defines the country flag to be used for the incognito admin. If the incognito admin joins the server, the country flag set by this cvar is displayed for him. Please check this table silEnT geoIP countries to check what to use as the value. GeoIP has to be enabled for this cvar to work, please read: g_countryFlags. To disable set to -1.

Type: [-1|255]

Default: -1

g_noSkillUpgrades

Description:

When set to 1, disables player skill upgrades.

Type: [0|1|2]

0 No skill locking.

1 Lock skills.

2 Lock skills and hide all HUD elemnts that would show the skill levels.

Default: 0

Change Log:

Starting from silEnT version 0.6.0, this cvar will lock the skills to the always enabled levels. See the skill_x cvars. Also, it is possible to hide the skill levels from the player HUDs setting this cvar to value 2.

g_flushItems

Description:

Evens the dropped items out with the surface.

Type: [0|1]

Default: 1

g_maxConnsPerIP

Description:

Maximum number of connections allowed from one particular IP. This prevents the fake clients Denial of Service attack.

Type: integer

Default: 4

shoutcastPassword

Description:

Enables shoutcaster status on the server.

Type: string

Default: "none"

g_headshot

Description:

Controls additional head shot options.

Type: bitmask

Parameters:

1 Headshots only

2 Instagib damage (controlled by g_instagibDamage)

Default: 0

g_instagibDamage

Description:

Damage used for instagib mode (e.g. set this to 160 so that a player can still be revived after being shot.).

Type: integer

Default: 400

g_ettvFlags

Description:

Controls additional ETTV options.

Type: bitmask

Parameters:

1 Prevent ettv slaves from being callvote kicked

2 Grant shoutcaster status to ettv slaves

Default: 3

g_mode

Description:

Controls some additional modes for fun or for testing.

Type: bitmask

Parameters:

1 Players will spawn instantly

2 Each class receives adrenaline

4 No damage on players

8 Players can pick up any weapon on the ground (Removing this bitflag will force all players to respawn!)

Default: 0

g_playDead

Description:

Allows players to use the 'playdead' command and their character will act like it is dead until the playdead command is used again (or they really die).

Type: [0|1]

Default: 0

g_shove

Description:

Allows players to push other players with the "use" key. The integer adjusts the amount of force players shove with. 80 seems fair.

Type: integer

Default: 80

g_shoveNoZ

Description:

Set this to 1 if you want to disable shove in the up/down direction (a.k.a "boosting").

Type: [0|1]

Default: 1

g_dragCorpse

Description:

Allows players do drag wounded players with the use key when moving backward slowly. Works best when crouching or prone.

Type: [0|1]

Default: 0

g_classChange

Description:

Allows players to take the class of a gibbed teammate temporarily similarly to how a covert steals an uniform. Class changing does not latch, so the original class the player had will be restored on respawn.

Type: [0|1]

Default: 0

g_forceLimboHealth

Description:

If set to 0 it takes about 3 shots to gib a wounded player, if set to 1 it takes about 5.

Type: [0|1]

Default: 1

g_goomba

Description:

If set to a positive integer, players can damage each other by landing on each other. The integer is multiplier that determines how much damage should be done to the player that was fallen on. Also the impact for the falling player will be broken so that they only recieve 20% of the damage they would have normally. It is also possible to do small amounts of damage (5HP) to other players by hopping up and down on them.

Falling damage can be either 500, 50, 25, 15, or 10 depending on the length of the fall. So if you set g_goomba to 5 and land on a player from a fall that would have damaged you 10HP, you will inflict 50HP of damage on the player you land on, and you will only recieve 2HP of damage.

See also g_goombaFlags

Set this to 0 to disable it

Type: integer

Default: 0

g_goombaFlags

Description:

Controls the way g_goomba is handled.

Type: bitmask

Parameters:

1 Cannot do goomba damage to teammates.

2 Short falls (hopping) on another player does no damage.

4 Short falls (hopping) does no damage to teammates. (not necessary if 1 or 2 flag is set)

8 Falling player recieves no damage when landing on any other player. (default is to recieve 20% of the damage the fall would have given if not landing on a player).

16 Insta-gib goomba. All goomba damage will be 500HP regardless of fall distance. The exception is hopping on anther player which still does 5HP of damage.

32 Falling corpses won't cause damage.

Default: 0

Note:

Set this to 31 to have g_goomba work like shrubet.

g_spawnInvul

Description:

The number of seconds players will be invincible after they spawn.

Type: integer

Default: 3

g_spawnInvulFair

Description:

Removes the spawn protection when the player fires his first shot (note : the spawn protection will still be removed after the g_spawnInvul time)

Type: [0|1]

Default: 1

g_spinCorpse

Description:

Allow players to use +left and +right binds to spin their corpse when dead or playing dead.

Type: [0|1]

Default: 0

g_teamChangeKills

Description:

If set to 0, players are allowed one non-killing team change per respawn cycle. If a player changes teams, he will be instantly spawned in the other teams default spawn point. Players will die (but not lose a life) if they change teams a second time in one spawn cycle.

Type: [0|1]

Default: 1

g_maxIgnoresPerMap

Description:

The maximum number of times one player can ignore another player during one map. This can prevent spamming other players with the ignore command. The value can be between 0 and 255. Any value higher than 255 will always allow ignoring. Any value below 1 will disable ignoring completely.

Type: Integer

Default: 2

Minimum required version: 0.7.0

Logs

g_logOptions

Description:

This is meant to match the shrubmod g_logOptions cvar, but so far the only implemented flags are:

Type: bitmask

Parameters:

1 Server outputs obituaries to chat.

2 Adrenaline countdown displayed.

4 Disable display of tap-out confirmation box.

8 Display connection attempts by banned players.

16 Display gib reports ("<victim> was gibbed by <attacker>").

32 Omit "item" lines from log file.

64 Report gibs.

128 GUID's are logged in the game log. Note, if this option is enabled the VSP log parser will not work.

256 Log all private messages (/m commands). This setting won't have any effect unless g_tyranny is enabled.

512 Logs the real time into logs, instead of the normal uptime of the server.

1024 This flag allows logging every player drop. It can be usefull for inspecting the server operation, but it will also cause lot of needless log writes.

2048 Unused.

4096 Log client cvar values.

8192 Log cvar values only when found from the client. Note that flag 4096 must also be set if using this flag.

16384 Admin log will use new format that is more readable.

Default: 0

Change log:

0.6.3 - Flags 4096 and 8192 were added.

0.8.0 - Flag 16384. When this flag is set, the admin log will use new format.

g_logAdmin

Description:

The name of the file that all shrubbot commands will be logged to. For example, g_logAdmin "admin.log".

Type: string

Default: ""

g_cheatLog

Description:

The name of the file, where all cheat related prints are logged. If this is not specified, server log is used.

Type: string

Default: ""

Omni-Bots

omnibot_enable

Description:

When set to 1, Omni-bot functionality is enabled. You still need to have Omni-bots installed correctly in order for the bots to work.

Type: [0|1]

Default: 1

omnibot_path

Description:

The path where the Omni-bot dll/so file is installed. If you installed Omni-bot to the default locations, then you do not need to modify this cvar. Leaving this cvar blank will search for the Omni-bot dll/so file from the default locations.

Type: string

Default: ""

g_bot_maxXP

Description:

Any bots present will have their XP reset after this much XP is reached. If g_maxXP is also set to a value greater than -1, then the bot XP will be reset whenever the lower limit of the two is hit. Set this to -1 to disable this feature

Type: integer

Default: -1

omnibot_flags

Description:

Customizes bot management/behavior.

Type: bitmask

Parameters:

1 Disables XPSave for bots

2 Bots cannot mount tanks

4 Bots cannot mount emplaced guns

8 Don't track bot count in omnibot_playing cvar

16 Bots will target ungibbed enemies

32 Bots will trigger team and spotted mines

64 Bots can use g_shove

65536 Bots are granted shrubbot command immunity (the same as shrubbot flag !)

131072 Bots cannot be !kicked or !banned

262144 Disable shrubbot greeting for bots

Default: 0

Lua

lua_modules

Description:

List of files to be loaded by the Lua API engine. Can be separated by space, comma or semicolon. The paths are relative to the mod's directory, and can optionally be placed inside pk3 archieves. We are aiming for compatibility with ETPro's Lua Mod API found at http://wolfwiki.anime.net/index.php/Lua_Mod_API.

Type: string

Default: ""

lua_allowedModules

Description:

List of sha1 signatures for the lua modules to be loaded by the Lua API engine. Can be separated by space, comma or semicolon. Only lua modules with the matching sha1 signature listed in this cvar will be allowed to load by the Lua API engine (ACL).

Type: string

Default: ""

Weapon Damage and Radius Settings

g_dmg

Description:

Enables experimental advanced combat options.

Type: bitmask

Parameters:

0 Use traditional ET settings for combat.

1 Use Advanced Hit Locations: Differentiates between Head, Body, Arm, and Leg shot when computing damage.

2 Applies a more realistic damage vs. range equation for short-ranged weapons. This will reduce the effectiveness of these weapons at longer ranges.

4 Gives a damage bonus to short-range weapons when used in close combat situations. This will increase the effectiveness of these weapons at closer ranges.

8 Use bullet fall-off approximations when computing shot trajectory.

16 Improve accuracy of non-scoped single-shot rifles.

32 Use alternate bullet-spread characteristics for automatic or rapid-fire weapons.

64 Damage from players who are spectators or have disconnected is ignored, and XP is not awarded.

Default: 0

g_dmgHeadShotMin

Description:

This represents the minimum damage done by a headshot regardless of the weapon used to make the shot.

Headshots that would do damage below this value will be adjusted upward to equal g_dmgHeadshotMin. Headshots from a weapon with damage at or above this value will do a multiple of their damage, as specified by g_dmgHeadShotRatio. (The actual damage may undergo additional modification due to range and other conditions)

Type: integer

Default: 50

g_dmgHeadShotRatio

Description:

This specifies the multiplier used for headshots that do damage ABOVE g_dmgHeadShotMin.

Type: float

Default: 2.0


g_dmgKnife

Description:

Amount of damage done by the knife.

Type: integer

Default: 10

g_dmgSten

Description:

Amount of damage done by the sten.

Type: integer

Default: 14

g_dmgFG42

Description:

Amount of damage done by the FG-42.

Type: integer

Default: 15

g_dmgPistol

Description:

Amount of damage done by the pistol weapons.

Type: integer

Default: 18

g_dmgSMG

Description:

Amount of damage done by the SMG weapons (Thompson and MP-40).

Type: integer

Default: 18

g_dmgMG42

Description:

Amount of damage done by the MG42.

Type: integer

Default: 18

g_dmgMG

Description:

Amount of damage done by an emplaced MG.

Type: integer

Default: 20

g_dmgFG42Scope

Description:

Amount of damage done by the FG-42 when scoped.

Type: integer

Default: 30

g_dmgInfRifle

Description:

Amount of damage done by unscoped rifles (K43 and Garand).

Type: integer

Default: 34

g_dmgSniper

Description:

Amount of damage done by a scoped Garand or K43.

Type: integer

Default: 50

g_dmgFlamer

Description:

Amount of damage done by the a flamethrower. Also controls the per-tick damage done to a player who has been set on fire by a flamethrower and is still burning.

Type: integer

Default: 5

g_dmgGrenade

Description:

Amount of damage done by a grenade.

Type: integer

Default: 250

g_dmgGrenadeRadius

Description:

Blast radius of a grenade.

Type: integer

Default: 250

g_dmgGLauncher

Description:

Amount of damage done by an engineer's grenade-launcher grenades.

Type: integer

Default: 250

g_dmgGLauncherRadius

Description:

Blas radius of an engineer's grenade-launcher grenades.

Type: integer

Default: 250

g_dmgTMine

Description:

Amount of damage done by a tripmine.

Type: integer

Default: 260

g_dmgLandmine

Description:

Amount of damage done by a landmine.

Type: integer

Default: 250

g_dmgLandmineRadius

Description:

Blast radius of a landmine.

Type: integer

Default: 250

g_dmgSatchel

Description:

Amount of damage done by a satchel.

Type: integer

Default: 250

g_dmgSatchelRadius

Description:

Blast radius of a satchel.

Type: integer

Default: 250

g_dmgPanzer

Description:

Amount of damage done by a panzerfaust rocket.

Type: integer

Default: 400

g_dmgPanzerRadius

Description:

Blast radius of a panzerfaust rocket.

Type: integer

Default: 300

g_dmgMortar

Description:

Amount of damage done by a mortar round.

Type: integer

Default: 400

g_dmgMortarRadius

Description:

Blast radius of a mortar round.

Type: integer

Default: 400

g_dmgDynamite

Description:

Amount of damage done by a dynamite.

Type: integer

Default: 400

g_dmgDynamiteRadius

Description:

Blast radius of a dynamite.

Type: integer

Default: 400

g_dmgAir

Description:

Amount of damage done PER BOMB by an airstrike.

Type: integer

Default: 400

g_dmgAirRadius

Description:

Blast radius PER BOMB of an airstrike.

Type: integer

Default: 400

g_dmgArty

Description:

Amount of damage done PER BOMB by artillery fire. If this value is non-zero, the spotting round will follow normal ET behaviour (can do damage, but to a very small radius, making damage unlikely)

Type: integer

Default: 400

g_dmgArtyRadius

Description:

Blast radius PER BOMB of artillery fire. If this value is non-zero, the spotting round will follow normal ET behaviour. The spotting round can do damage, but to a very small radius making damage unlikely.

Type: integer

Default: 400

g_dmgDemolition

Description:

Amount of damage done by Improvised Demolition.

Type: integer

Default: 1100

g_dmgDemolitionRadius

Description:

Blast radius of Improvised Demolition.

Type: integer

Default: 250

g_knifeThrowDamage

Description:

The amount of damage a thrown knife will cause to enemy.

Type: integer

Default: 50

g_dmgPPSh

Description:

The amount of damage done by a PPSh.

Type: integer

Default: 19

Debugging

g_debugBullets

Description:

If this cvar is set, server will produce debug information of fired bullets. Enabling g_debugBullets require sv_cheats to be set.

Type: integer

Parameters:

If 1 is set as if the cvar was a bitmask, blue lines for the fired shots is enabled. With any positive value, server will print impact area on the hit player to the center of the screen. Possibilities are "Head Shot", "Body Shot", "Leg Shot" and "Arm Shot". If the value is set to 2 or more, the bounding box of the hit player is drawn. If the value is set to 3 or more, the hit player head box is drawn. If the value is set to -2 or smaller, boxes are drawn to impacted surfaces.

Default: 0

g_debugDamage

Description:

If this cvar is set, damage inflicted to players is logged into the server log. Enabling this cvar requiers sv_cheats to be set.

Type: [0|1]

Default: 0

g_debugHitboxes

Description:

If this cvar is enabled, hit boxes around the players are drawn. This cvar does not require sv_cheats. However, do note that if this is enabled, the server will produce constant flow of extra entities, which will make playing impossible on a live server. Test this with only couple players to prevent everyone from lagging out.

Type: integer

Parameters:

If this cvar is set to any positive value, boxes are drawn. If the value is set to 8 or more, it will draw only the boxes that are used for the initial trace. Each bullet causes two traces to happen, where the second trace confirms the impact on the more refined area of the player body, such as head or legs.

Deprecated Cvars

g_realHead

Description

Enable ETPro headboxes.

Type: [0|1]

Parameters:

0 Regular headbox positions.

1 Server tracks the animations so the headbox will match the playermodels exactly. This is the recommended value.

Default: 1

Note:

This code was originally from ETPro (b_realhead). It was contributed by zinx and added to ETPub by forty. silEnT is based on the ETPub source and this code has not been altered from the ETPub.

Change log:

  • 0.5.1 - The option was removed. The ETPro headboxes are always used.


g_spoofOptions

Description:

Options for PunkBuster GUID and IP spoof detections and behaviour.

Type: bitmask

Parameters:

1 Kick for GUIDspoofing.

2 Kick for IPspoofing.

4 Display a global warning when someone is GUIDspoofing. (When flag 1 is set, this will not work)

8 Display a global warning when someone is IPspoofing. (When flag 2 is set, this will not work)

16 Don't use the stored GUID. (This option is a higher security risk.)

32 Don't use the stored IP. (This option is a higher security risk.)

Default: 3

Note:

Do NOT change this CVAR unless you encounter problems!

Change Log:

This cvar was removed in version 0.5.1 and spoofing is checked unconditionally in 0.5.1 and later versions.