Admin Mod Configuration Variables (CVARs)

 

Admin Mod CVARs

used in v2.50

(detailed information below)

 

admin_balance_teams

admin_bot_protection

admin_connect_msg

admin_cs_restrict

admin_debug

admin_fun_mode

admin_gag_name

admin_gag_sayteam

admin_highlander

admin_ignore_immunity

admin_plugin_file

admin_quiet

admin_reconnect_timeout

admin_reject_msg

admin_repeat_freq

admin_repeat_msg

admin_vault_file

admin_version

admin_vote_autostart

admin_vote_echo

admin_vote_freq

admin_vote_maxextend

admin_vote_ratio

allow_client_exec

amv_autoban

default_access

encrypt_password

file_access_read

file_access_write

help_file

ips_file

kick_ratio

map_ratio

models_file

models_kick_msg

mysql_* (all cvars for mysql)

nicks_kick_msg

password_field

pretty_say

public_slots_free

reserve_slots

reserve_slots_msg

reserve_type

script_file

use_regex

users_file

vote_freq

words_file

 

This is a listing of all of the server configuration variables (cvars) specific to Admin Mod.  You set these like any other server cvar (such as mp_timelimit, etc), can place them in your server.cfg, and the like.

 

NOTE: This is not a list of Admin Mod commands. Rather, this is a list of all the server-side configuration variables you can use when you are configuring your Half-Life server.

 

Please note that a 'dedicated' server will, unless told otherwise, read it's initial settings from 'server.cfg'.  A 'listen' server, on the other hand, reads them from 'listenserver.cfg'  Setting variables in server.cfg when you're running a listen server, and vice versa, does nothing.  A listen server is one that you start from within Half-Life itself: it starts when you join, it ends when you quit, and you have a 0 ping.  A dedicated server is started from the HLDS program, and appears on the server machine as just lots of text information in a DOS-like console window.

 

Document notation standards

A cvar can either accept numeric ('123') or string ('abc') data.  If it can accept string data, it will look like this in this document:

 

cvar_name "<data>"

 

If it can accept numeric data, it will look like this:

 

cvar_name <#>

 

In most cases, numeric data will either be '0' (for no or disable), or anything else (for yes or enable).  If the description of a cvar talks about it being 'enabled', that means non-zero.  Exceptions are noted. Note that if a cvar is not explicitly set, it defaults to 0 (usually disabled).

 

In the descriptions below, examples of how to write the cvar are provided. reading this entire document is a good idea if you are planning to do much at all with the Admin Mod.

 

About "relative directories" and files

Cvars that represent files are said to be 'relative' to a directory (usually the <mod> directory).  This means the file name should be treated as if looking from the specified 'relative' directory.  As an example, admin_plugin_file is relative to the directory; if I'm running a TFC server, my directory might be C:\HLServer\TFC.  If I wanted my plugin file to be at 'C:\HLServer\TFC\plugin.ini', I would simply set admin_plugin_file to 'plugin.ini'.  If I wanted my plugin file to be at 'C:\HLServer\TFC\AdminMod\plugin.ini', I would set admin_plugin_file to 'AdminMod\plugin.ini'.

 

 

Miscellaneous Notes

 

 


 

admin_balance_teams <#>

        Used by the TFC plugin.  If enabled, an attempt to switch

        teams will be rejected if it would unbalance the teams (unless

        the team being switched to, or the team being switched from,

        has less than two people).  If disabled, people can switch

        teams freely.

        

admin_bot_protection  <#>

When running bots on the server, setting this variable to "1"

will protect bots from exec_client commands in Admin Mod, and

thus prevent server crashing problems.

 

admin_connect_msg "<data>"

admin_connect_msg "All your base are belong to Jaguar."

        Used by the message plugin.  This is the message that will be

        displayed to everyone thirty seconds after connecting to the

        server. Setting admin_connect_msg to "0" will not display a

        connect message, although the timer is run.

        

admin_cs_restrict <#>

        Used by the CS plugin.  If enabled, the CS plugin's weapon

        restrictions go into effect (if any are set, that is).  If

        disabled, the CS weapon restrictions are ignored (if any are

        set).

        

admin_debug <#>

        If enabled, your logs will be filled with lots and lots of

        debugging messages related to Admin Mod.  Not recommended for

        general use.

        

admin_fun_mode <#>

  Used by the Fun plugin.  Determines whether or not the fun

  commands are allowed.

 

admin_fx <#>

  Enables special effects to accompany certain commands, such as teleport

  and slap.

        

admin_gag_name <#>

        Used by the retribution plugin.  If enabled, people who are

        gagged will be unable to change their name while gagged.  If

        disabled, people who are gagged will be able to change their

        names as normal.

        

admin_gag_sayteam <#>

        Used by the retribution plugin.  If enabled, people who are

        gagged will not be able to use the say_team command.  If

        disabled, people who are gagged will be able to use the

        say_team command as normal.

        

admin_highlander <#>

        There can be only one!  Normally (when disabled), everyone

        gets the access assigned to them.  If admin_highlander is

        enabled, only the person with the highest access actually gets

        their's; everyone else gets the default.  Thus, only one admin

        (the one with the highest access level)will be able to execute

        commands at any given time.

        

admin_ignore_immunity <#>

        This is referenced by CheckImmunity() in adminlib.inc.

        Normally (when disabled), people with ACCESS_IMMUNITY (4096)

        become immune to many of the other admin commands (though not

        to straight rcon).  If admin_ignore_immunity is enabled,

        ACCESS_IMMUNITY is ignored and does nothing.

 

admin_plugin_file "<data>"

admin_plugin_file "plugin.ini"

        This is the file to load plugins from.  It should be relative

        compared to the <mod> directory (e.g., for TFC, it should be

        relative compared to the 'half-life\tfc' directory).  If this

        cvar exists, the plugin-style of scripting will be used.  If

        it does not exist, the single-script style of scripting will

        be used (see script_file).  Note that, regardless of where

        this file is situated, the plugins it referenced are relative

        to the <mod> dir, _not_ the location of the plugin file

        (eg, if the admin_plugin_file is '<mod>\AdminMod\plugin.ini',

        the plugins referenced will still be relative to '<mod>',

        NOT '<mod>\AdminMod').

        

admin_reconnect_timeout <int>

admin_reconnect_timeout 300

        This is the time that a password is considered to stay valid

        after the player has disconnected from the server. If the

        player reconnects to the server within <int> seconds using the

        same name and the same IP, he does not have to reenter his

        password first. Don't set this value too high.

 

admin_reject_msg "<data>"

admin_reject_msg "This is a restricted command which you cannot use."

        This message is displayed to users who try to execute

        commands that they don't have the appropriate access rights

        for.

 

admin_repeat_freq <int>

admin_repeat_freq 300

Used with the admin_repeat_message cvar.  This determines how often

(in seconds) the "pretty say" repeat message appears on the screen. The

repeat message frequency can be set with admin_repeat_freq. The units

are seconds. The minimum value is 15 seconds. Setting it to 0 will not

start the timer. The timer cannot be started by setting it to a different value

during a map. It will only be started at a map change.

 

admin_repeat_msg "<data>"

admin_repeat_msg "Don't look now!  They're right behind you!"

        Used by the message plugin.  This is the message that is shown

        to everyone on the server in the center of the screen. Setting

        admin_repeat_msg to "0" will not display a repeat message, but

         the timer is not killed if it was started. It will continue to run, and

        setting admin_repeat_msg to a different value will again display that string.

        

admin_quiet <#>

admin_quiet 0

admin_quiet 1

admin_quiet 2

        This is referenced by SayCommand() in adminlib.inc.  Here's how it functions by default:

 

                

admin_vault_file "<data>"

admin_vault_file "vault.cfg"

        This file will be used to store configuration data across maps

        and even across server incarnations.

 

admin_version "<data>"

        Returns the current Admin Mod version of the DLL.  Setting

        this does nothing.

        

admin_vote_autostart <#>

        Used by the HLFD map vote plugin.  If enabled, a

        HLFD-style map vote will automatically start five minutes

        before the end of a map.  If disabled, it won't.

 

admin_vote_echo <#>

        If set to 1, when a vote is in progress the option a user voted

        for is echoed to all clients in the format:

 

        <player> voted for option #<option number>

        

admin_vote_freq <#>

        This is the number of seconds that must elapse after the start

        of the map, or the end of another vote, before another HLFD-

        style map vote can be called by someone without the

        ACCESS_CONTROL_VOTE access. NOTE: If you don't have it explicitly

        set in in your .cfg, it defaults to 600 (ten minutes).  If 0,

        then _only_ those people with ACCESS_CONTROL_VOTE may call for

        votes.  Note that this only controls the HLFD-style votes;

        for the HL menu-style votes, see vote_freq.

        

admin_vote_maxextend <#>

        Used by the HLFD map vote plugin.  Controls how many times

        the current map can be extended for thirty minutes (e.g.,

        admin_vote_maxextend 2 would allow for, at most, two

        extensions).  If set to zero or a negative number, the current

        map can never be extended.

        

admin_vote_ratio <#>

        Used by the HLFD map vote plugin.  Controls the percent of

        the players who have to vote for a map to get it to win (note

        that this ratio applies only to the HLFD-style map vote.

        For the admin_vote_map, see map_ratio, below).  If zero or

        negative, whichever map gets the most votes wins.  Otherwise,

        a map must get at least (admin_vote_ratio * playercount / 100)

        votes to win (e.g., if the admin_vote_ratio is 60, and there are

        10 people on, a map must get at least (60 * 10 / 100) = 6

        votes to win.)

        

alarm_message "<data>"

        This cvar is no longer used.

        

alarm_time <#>

        This cvar is no longer used.

 

allow_client_exec <#>

        This controls whether or not the execclient() scripting

        function is enabled in the Admin Mod DLL.  If enabled,

        execclient() is enabled; if disabled, execclient() is

        disabled.  Enabling execclient() functionality allows scripts

        to execute commands remotely on players.

 

amv_autoban <#>

        If set to 1, players who try to crash the server with non-printable

        characters (aka ~%?%?%?) in mid-game will be banned for 24

        hours. In either case are they dropped from the server.

        

default_access <#>

        This controls the default access that people get (aside from

        being granted special user privileges).  It works exactly like

        the user level access rights, but everyone gets it.

        

encrypt_password <#>

        LINUX ONLY.  NOTE: If you don't have it explicitly set in your

        .cfg, it is ENABLED.  This determines whether or not the

        passwords people enter for their user privileges are encrypted

        on the server or not.

        

file_access <#>

        This cvar is no longer used.  See file_access_read,

        file_access_write.

 

file_access_read <#>

        This controls whether or not the scripting functions are

        allowed to read files on the server.  If enabled, the

        scripting functions are; if disabled, they are not.

        

file_access_write <#>

        This controls whether or not the scripting functions are

        allowed to write to files on the server.  If enabled, the

        scripting functions are; if disabled, they are not.

        

help_file "<data>"

help_file "admin_help.cfg"

        This is not used for the plugin-style scripting; if you have

        admin_plugin_file defined, this cvar is ignored.  If you are

        using the old single-script style, this is the file to load

        the help information from.  It is relative to the <mod>

        directory.

        

ips_file "<data>"

ips_file "ips.ini"

        If you're using MySQL, this cvar is ignored (see

        mysql_dbtable_ips).  Otherwise, this is the file (relative to

        the <mod> dir) that priority IPs are loaded from. NOTE: If you

        don't have it explicitly set in your .cfg, it is 'ips.ini'.

        Priority IPs are those that are allowed to take a reserved

        spot (if any are set up) without a password.

        

kick_ratio <#>

        Used by admin_vote_kick.  This is the ratio of players who

        must vote 'yes' to a kick for it to be successful.  e.g. if the

        kick_ratio is 60, and there are 20 people on the server, 12 of

        them must vote 'yes' to a kick vote for it to be successful.

        

map_ratio <#>

        Used by admin_vote_map.  This is the ratio of players who must

        vote 'yes' to a map change for it to be successful.  e.g., if

        map_ratio is 40, and there are 20 people on the server, 8 of

        them must vote 'yes' to a map vote for it to be successful.

        Note that this cvar does not control the HLFD-style map

        vote; see admin_vote_ratio.

        

maps_file "<data>"

maps_file "maps.ini"

        A list of maps available during map votes. This list can contain

        maps not listed in your regular server map cycle, or it can contain

        a limited number of maps if you want to restrict voting to just a

        few maps. If you disable it (by setting the value to "0"), the list

        of votable maps will instead be taken from your mapcycle.txt

 

models_file "<data>"

models_file "models.ini"

        If you're using MySQL, this cvar is ignored (see

        mysql_dbtable_models).  Otherwise, this is the file (relative

        to the <mod> dir) that reserved models are loaded from.

        

models_kick_msg "<data>"

models_kick_msg "This model is reserved."

        This is the message shown to someone who gets kicked for

        trying to use a reserved model.

 

mysql_dbtable_ips "<data>"

mysql_dbtable_ips "ips"

        If you're not using MySQL, this cvar is ignored (see

        ips_file).  Otherwise, this is the database table to get the

        priority IP information from.  Priority IPs are those that are

        allowed to take a reserved spot (if any are set up) without a

        password.

        

mysql_dbtable_models "<data>"

mysql_dbtable_models "models"

        If you're not using MySQL, this cvar is ignored (see

        models_file).  Otherwise, this is the database table to load

        the reserved model names from.

 

mysql_dbtable_plugins "<data>"

mysql_dbtable_plugins "plugins"

        If you're not using MySQL, this cvar is ignored (see

        users_file).  Otherwise, this is the database table to load

        the plugins from.

 

mysql_dbtable_users "<data>"

mysql_dbtable_users "users"

        If you're not using MySQL, this cvar is ignored (see

        users_file).  Otherwise, this is the database table to load

        the privileged names from.

 

mysql_dbtable_words "<data>"

mysql_dbtable_words "words"

        If you're not using MySQL, this cvar is ignored (see

        words_file).  Otherwise, this is the database table to load

        the swear words from.

 

mysql_host "<data>"

mysql_host "127.0.0.1"

        If you're not using MySQL, this cvar is ignored.  Otherwise,

        it's the address of the host the MySQL database exists on.

 

mysql_pass "<data>"

mysql_pass "milk"

        If you're not using MySQL, this cvar is ignored.  Otherwise,

        it's the password used to connect to the MySQL database.

        

 

mysql_user "<data>"

mysql_user "moocow"

        If you're not using MySQL, this cvar is ignored.  Otherwise,

        it's the username used to connect to the MySQL database.

 

nicks_kick_msg "<data>"

nicks_kick_msg "This name is reserved."

        This is the message shown to someone who gets kicked for

        trying to use a name that has reserved access (16384).

        

password_field "<data>"

password_field "pwd-home"

        This is the setinfo field that people need to enter their

        password into on the client before connecting to the server,

        if they wished to be authorized at connect time.  NOTE: If you

        don't have it explicitly set in your .cfg, it is 'pw'.  As an

        example, if the password_field is 'pw-home', and there is a

        user whose password is "milk", then the setinfo line in the

        user's adminpass.cfg would be 'setinfo "pw-home" "milk"'.

 

password_timeout <#>

        This cvar is no longer used.

        

pretty_say <#>

        This cvar controls how the centersay() script function works.

        NOTE: If you don't have it explicitly set in your .cfg, it

        is ENABLED.  If pretty_say is enabled, centersay() fades in

        and out and does some other tricks.  If it's disabled,

        centersay() just appears as normal text in the middle of the

        screen.

        

public_slots_free <#>

        Returns the number of slots free on the server (after taking

        into account reserved slots).  Setting this does nothing.

        

reserve_slots <#>

        Controls how many of the server's slots are reserved.  This is

        useful only if reserve_type, below, is either 0 or 2.

        

reserve_slots_msg "<data>"

reserve_slots_msg "There are no free slots available."

        This is the message shown to someone who gets kicked when

        there are only reserved slots left on the server, and they do

        not have reserved access.

        

reserve_type <#>

        This controls how reserve slots work on the server (the

        default is 0).  

    

         * reserve_type 0: Public slots are used in preference to

          reserved slots.  Reserved slots are freed before public

          slots.

         * reserve_type 1: One slot is always reserved (regardless of

          reserve_slots).  If someone with reserve access joins into

          that slot, the highest pinger without reserve access is

          kicked to make room.  Thus, one slot always remains free.

        * reserve_type 2: Reserve slots are used in preference to

          public slots.  Public slots are freed before reserved slots.

        

        The difference between reserve_type 0 and reserve_type 2 may

        not be immediately apparent.  Here's an example: Suppose there

        is a 16 player server, with 2 reserved slots.  Thus, with no

        one on, there are 14 public slots, and 2 reserved slots:

 

         * reserve_type 0: Someone with reserved access joins.  There

          are now 13 public slots, and 2 reserved slots (the person

          does not take a reserved slot, because those are used only

          when necessary).  The server later fills up, so there are 0

          public slots and 0 reserved slots.  If anyone leaves,

          whether they have reserved access or not, it is a reserved

          slot that is freed, not a public one.

        * reserve_type 2: Someone with reserved access joins.  There

          are now 14 public slots, and 1 reserved slot (the person

          takes a reserved slot).  The server later fills up, so there

          are 0 public slots and 0 reserved slots.  If someone with

          reserved access leaves, it frees up a reserved slot; if

          someone without reserved access leaves, it frees up a public

          slot.

        

script_file "<data>"

script_file "tfc\dlls\admin_win32.amx"

        If you have admin_plugin_file set, this cvar is ignored, as it is used

to set up the older-style single scripts used in versions of

Admin Mod prior to v2.50.

.

        Otherwise, this is the file (note the path is relative to the <half-life>

        directory...NOT the <mod> directory) that the compiled script is loaded

        from.  If this cvar is disabled and admin_plugin_file is

        disabled, Admin Mod won't run.

        

use_regex <#>

        If enabled, names are compared to those who have privileges

        with regular expressions; otherwise, they are compared with a

        straight match.  Using regular expressions is useful for

        matching parts of names (such as clan tags), whereas, without

        use_regex, you would have to add each name with that tag you

        wanted to assign privileges to.

        

users_file "<data>"

users_file "users.ini"

        If you're using MySQL, this cvar is ignored (see

        mysql_dbtable_users).  Otherwise, this is the file (relative

        to the <mod> directory) that privileged names are loaded from.

 

vote_freq <#>

        This is the minimum number of seconds allowed between votes

        called with the vote() scripting function (such as

        admin_vote_kick and admin_vote_map).  If 0 or disabled, the

        vote() scripting function is disabled.  Note that this delay

        also applies to the beginning of the map; if vote_freq is 240

        (240 seconds = 4 minutes), admin_vote_kick and admin_vote_map

        won't work for the first four minutes of the map, as well as

        for the four minutes following any previous admin_vote_kick or

        admin_vote_map.  Note that this only applies to HL vote-style

        votes; for HLFD-style votes, see admin_vote_freq.

        

vote_freq_kick <#>

        This cvar is no longer used.  See vote_freq.

 

vote_freq_map <#>

        This cvar is no longer used.  See vote_freq.

        

words_file "<data>"

words_file "wordfile.txt"

        This is the file containing the list of words that will match

        the check_words() and censor_words() functions (useful for

        swear word detection).  Note that these words are

        case-insensitive.