WolfAdmin

WolfAdmin is very flexible and configurable. Currently it has over 30 settings which allow you to customize messages, adjust the module's behaviour or disable some functionality completely.

Table of contents
  1. Settings
  2. Greetings
  3. Rules
  4. Access control lists standalone added in 1.2.0
  5. Shrubbot flags add-on

Support & bugs

In case you run into trouble and need support for WolfAdmin, check out the #wolfadmin IRC channel on Quakenet. You may also contact me via mail or via one of the communities where I usually hang around.

For bug reports or feature requests, please use the bug tracker.

Settings

Settings allow the module's features to behave in a different way, or disable some functionality completely. The list below is an overview of the settings that you can use to customize your server.

For installations running version 1.2.0 and later, you can find all of these settings in the wolfadmin.toml file in your mod folder (in fs_homepath). This is a TOML-formatted file.

For installations running versions before 1.2.0, the related CVAR that toggles the same functionality is also listed. This file follows the same syntax as the shrubbot.cfg file.

[main]

os (sv_os)
Specify the operating system that the server is running on.
type: unix, windows
default: unix

standalone (g_standalone) added in 1.2.0
Enable or disable standalone mode.
type: boolean
default: 1

debug (g_debugWolfAdmin)
Enable the printing of debug statements to client consoles.
type: boolean
default: 0

[db]

For installations running version 1.1.x or lower, you can find these settings in wolfadmin.cfg. There are no CVARs for these settings due to the sensitivity of credentials.

type added in 1.1.0
Set the type of database to use.
type: sqlite3, mysql
default: sqlite3

file added in 1.1.0
Set the file of the database (SQLite3 only).
type: string
default: localhost

hostname
Set the hostname of the database server (MySQL only).
type: string
default: localhost

port
Set the port of the database server (MySQL only).
type: integer
default: 3306

database
Set the database on the database server (MySQL only).
type: string
default: wolfadmin

username
Set the username on the database server to use (MySQL only).
type: string
default: wolfadmin

password
Set the password which is used for the user (MySQL only).
type: string
default: suchasecret

[logs]

chat (g_logChat) added in 1.2.0
Sets the name of the chat log file. When nothing is set, chat logging is disabled.
type: string
default: "chat.log"

admin (g_logAdmin) added in 1.2.0
Sets the name of the admin log file. When nothing is set, admin logging is disabled.
type: string
default: "admin.log"

[omnibot]

minbots (omnibot_minbots)
Set the minimum amount of omnibots which will be playing on the server.
type: integer
default: 10

maxbots (omnibot_maxbots)
Set the amount of omnibots which will be playing when someone uses !needbots.
type: integer
default: 10

[admin]

history (g_playerHistory)
Toggles whether warn history is enabled.
type: boolean
default: 1

maxrenames (g_renameLimit)
Set the maximum amount of renames a player can do within a minute.
type: integer
default: 80

[balancer]

mindif (g_evenerMinDifference)
Set the minimum difference in team balance before the evener puts someone or multiple people to the other team.
type: integer
default: 2

maxdif (g_evenerMaxDifference)
Set the maximum difference in team balance before the evener will shuffle the teams. Set to 0 to disable this feature.
type: integer
default: 5

selection (g_evenerPlayerSelection) added in 1.1.0
Set the selection of players that are used in the balancing process.
type: bitflag
default: 0

  • 0 random balancing
  • 1 only dead players
  • 2 last joined player
  • 4 no objective carriers

interval (g_evenerInterval)
Set the interval, in seconds, for checking whether the teams are balanced or not. Set to 0 to disable the evener completely.
type: integer
default: 30

[game]

announcerevives (g_announceRevives)
Toggles whether revive announcements are displayed.
type: boolean
default: 1

[voting]

timeout (g_voteNextMapTimeout)
Set the timeout, in seconds, after which next map voting is disabled.
type: integer
default: 0

restricted (g_restrictedVotes)
Set voting types, separated by commas, which are not allowed to be called by a player, unless this player has the special % shrubbot flag.
type: string
default: ""

[banners]

welcome (g_welcomeMessage)
Set the message which will displayed when a player connects to the server (will not be displayed on next map/map restart).
type: string
default: "^dwolfadmin: ^9This server is running WolfAdmin, type ^7/wolfadmin ^9for more information."

area (g_welcomeArea)
Set the area where the welcome message is displayed.
type: [0|1|2|3]
default: 3

[rules]

file (g_fileRules)
Sets the name of the rules config file. When nothing is set, rules display is disabled.
type: string
default: "rules.toml" changed in 1.2.0

[greetings]

file (g_fileGreetings)
Sets the name of the greetings config file. When nothing is set, greetings are disabled.
type: string
default: "greetings.toml" changed in 1.2.0

area (g_greetingsArea)
Set the area where greetings are displayed.
type: [0|1|2|3]
default: 3

bots (g_botGreetings)
Enable greetings for bots.
type: boolean
default: 1

[records]

bots (g_botRecords)
Enable records for bots.
type: boolean
default: 1

[sprees]

file (g_fileSprees)
Sets the name of the spree records config file. When nothing is set and the database type is config files, spree records are disabled.
type: integer
default: "sprees.toml" changed in 1.2.0

messages (g_spreeMessages) added in 1.2.0
Toggles which sprees to display.
type: bitflag
default: 0

  • 0 no sprees will be displayed
  • 1 enable kill sprees
  • 2 enable death sprees
  • 4 enable revive sprees

records (g_spreeRecords)
Toggles whether spree records and revive sprees are enabled.
type: boolean
default: 1

Greetings

Each player can have a greeting, either specified by the level of the player or a GUID. If a player has both a greeting specified by his/her level and one by GUID, the latter will have priority.

In the examples below, a player with GUID XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX and level 0 would see the latter greeting (Welcome back [name]^9!). Any other player with level 0 would see Welcome a guest! and hear Provide sniper cover!. Note that the greeting sounds are relative to the /sound/ directory in the .pk3 files. added in 1.0.1

TOML-based added in 1.2.0

For installations running version 1.2.0 and later, you can find all of these greetings in the greetings.toml file in your mod folder (in fs_homepath). This is a TOML-formatted file.

Example

[[level]]
level    = 0
greeting = "Welcome a guest!"
sound    = "chat/axis/955a.wav"

[[user]]
guid     = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
greeting = "Welcome back [N]^9!"
sound    = ""

Config-based removed in 1.2.0

For installations running versions before 1.2.0, these greetings can be configured through the greetings.cfg in the mod folder (in fs_homepath). This file follows the same syntax as the shrubbot.cfg file.

Example

[level]
level    = 0
greeting = Welcome a guest!
sound    = chat/axis/955a.wav

[user]
guid     = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
greeting = Welcome back [N]^9!
sound    = 

Rules

The rulebook of your server can be structured by WolfAdmin's support for rules. This makes it easy for server admins to show the rulebook to online players or to highlight a specific rule when it's needed.

In the examples below, any player that is allowed to execute the !rules command, will be able to show NO spawnkilling! to the rest of the players online by typing !rules sk.

TOML-based added in 1.2.0

For installations running version 1.2.0 and later, you can find all of these rules in the rules.toml file in your mod folder (in fs_homepath). This is a TOML-formatted file.

Example

[[rule]]
shortcut = "sk"
rule     = "^1NO ^7spawnkilling^9!"

Config-based removed in 1.2.0

For installations running versions before 1.2.0, these rules can be configured through the rules.cfg in the mod folder (in fs_homepath). This file follows the same syntax as the shrubbot.cfg file.

Example

[rule]
shortcut = sk
rule     = ^1NO ^7spawnkilling^9!

Access control lists standalone added in 1.2.0

This system is only enabled in standalone mode.

Access control lists can be changed through the server console using the acl [action] command. The command currently offers the following functionality:

listlevels
list all available levels and the amount of players in each level

listlevels
list all available levels and the amount of players in each level

addlevel [id] [name]
add a new level

removelevel [id]
remove a level

relevel [id] [newid]
move all players from one level to another

listroles [id]
list all roles in a level

isallowed [id] [role]
check if a level has a certain role

addrole [id] [role]
add a role to a level

removerole [id] [role]
remove a role from a level

copyroles [id] [newid]
copy all roles from one level to another

Shrubbot flags add-on

When running the module in add-on mode, the ACL system is not available. Instead, to make the new functionality available, levels require additional shrubbot flags.

The flags should match the settings used on a community server. For example, !plock has the same flag as !lock and !listaliases is similar to !finger. The following table lists all the flags and their features.

Flag Features
c !enablevote
e !listaliases etpub
f !listaliases nq
h !listmaps, !rules silent
j !greeting
m !vmute, !vunmute
p !putbots etpub
!balance, !putbots nq silent
s !incognito, !listlevels
C !listmaps, !rules etpub nq
G !resetsprees nq
I !stats, !sprees nq
K !plock, !punlock
O !kickbots, !needbots
R !dewarn removed in 1.2.0, !showwarns
Z !cointoss
~ /adminchat
% no vote restrictions