Silent Shrubbot
<yambe:breadcrumb>SilentMod|SilentMod</yambe:breadcrumb>
What Is Shrubbot
Shrubbot is an invention of Ryan Mannion. Shrubbot is an admin system that identifies the admin leveled players from PunkBuster GUIDs without the need for passwords. Shrubbot is also very flexible and allows creating many different admin levels with entirely different command sets. ETPub tries to clone shrubbot as accurately as possible, both in user interface and in the shrubbot configuration file called "shrubbot.cfg". silEnT shrubbot is based on the work of the ETPub team. silEnT extends the functionality of the shrubbot where ever it is needed. Including user database that holds all the players that have visited the server. To access this database, new commands have been added to the original shrubbot command set. Some commands have been renamed to ease their use and so that they resemble commands from other ET mods that have advanced admin systems.
If you want to use shrubbot, the cvar g_dbDirectory must be set. If it is not set, the shrubbot will not be in use. If you want to edit the default levels, you must create or copy existing shrubbot.cfg file to the folder defined by g_dbDirectory setting. In case shrubbot command like !ban is used against a player and shrubbot.cfg file does not already exist, a new shrubbot.cfg file is created to store the needed data.
The created file will also have the default level settings written to it. This file can be freely edited by hand and then after !readconfig command has been issued, the changes take effect on the server.
Shrubbot Commands
!admintest
Prints out player's current shrubbot admin level in global chat. When the NAME or SLOT are added and the user has the right shrubbot permission, the level of another player will be shown. However, if the target has incognito shrubbot flag, then 0 level is displayed regardless who does !admintest on him/her.
Syntax: !admintest [NAME|SLOT]
Permission Flag: a
Requires g_tyranny: No
Minimum required version: 0.2.0
!ban
Kicks the player in slot number SLOT or with name containing NAME off the server and will not let them connect again for SECONDS seconds, or, if a modifier (m, h, d, or w) is used, a given amount of time. For example:
90 = 90 seconds
15m = 15 minutes
3h = 3 hours
5d = 5 days
1w = 1 week
Syntax: !ban (NAME|SLOT) (SECONDS|TIME_WITH_MODIFIER) REASON
Permission Flag: b
Requires g_tyranny: No
Minimum required version: 0.2.0
!baninfo
Shows detailed information of a ban in the ban list. Find the ban number with !showbans command.
Syntax: !baninfo (BAN NUMBER)
Permission Flag: e
Requires g_tyranny: No
Minimum required version: 0.3.0
!burn
Sets the player in slot number SLOT or with name containing NAME on fire. REASON will be center-printed to the victim.
Syntax: !burn (NAME|SLOT) [REASON]
Permission Flag: U
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!cancelvote
Makes a vote in progress fail.
Syntax: !cancelvote
Permission Flag: c
Requires g_tyranny: No
Minimum required version: 0.2.0
!dewarn
Shows all the warnings of a user. When warning number is used, the warning with that number will be removed.
Syntax: !dewarn (NAME|SLOT) [WARNING#]
Permission Flag: R
Requires g_tyranny: No
Minimum required version: 0.2.0
!disorient
Turns the view upside down for the client in slot number SLOT or with name containing NAME. If REASON is specified it is printed to the client.
Syntax: !disorient (NAME|SLOT) [REASON]
Permission Flag: d
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!finger
Display the slot, partial guid, ip and clientversion of a player.
NOTE: This command should be available only to the highest server admins!
Syntax: !finger (NAME|SLOT)
Permission Flag: e
Requires g_tyranny: No
Minimum required version: 0.2.0
!freeze
Freezes the client in slot number SLOT or with name containing NAME. If no parameter is provided it freezes all players. Frozen player(s) cannot receive damage during this time. If REASON is specified it is printed to the client.
Syntax: !freeze [NAME|SLOT] [REASON]
Permission Flag: F
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!gib
Kills and gibs the player in slot number SLOT or with name containing NAME. If name is -1 or all or if no name is entered, everybody will be gibbed.
Syntax: !gib (NAME|SLOT|-1|all)
Permission Flag: g
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!giba
Kills and gibs all players.
Syntax: !giba
Permission Flag: Q
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!help
Lists all the available shrubbot commands. If COMMAND is given, then prints the help of that specific command. !help is always available to all clients.
Syntax: !help [COMMAND]
Permission Flag: None
Requires g_tyranny: No
Minimum required version: 0.2.0
!howfair
Prints a simple summary to everyone on the chat of team fairness based on player kill rating.
Syntax: !howfair
Permission Flag: I
Requires g_tyranny: No
Minimum required version: 0.2.0
!kick
Kicks the player in slot number SLOT or with name containing NAME off of the server. REASON is given to the client as the drop message. The client will be banned for 2 minutes.
Syntax: !kick (NAME|SLOT) REASON
Permission Flag: k
Requires g_tyranny: No
Minimum required version: 0.2.0
!list
Prints out a list of information about the connected players. The columns are:
- slot number
- team R=axis B=allies S=spectator C=connecting
- first letter of fireteam name
- admin level (and level name)
- last 8 digits of guid
- M if muted
- W if warned
- name
Syntax: !list
Permission Flag: i
Requires g_tyranny: No
Minimum required version: 0.2.0
!listteams
Prints out a list of statistical information about each team. This lists ends with ratings information based on how likely each team is to win the current map. The team with more points is LESS likely to win, therefore a good way to balance the teams is to join the team with more points, or move people to that team, until the points are about even.
Syntax: !listteams
Permission Flag: I
Requires g_tyranny: No
Minimum required version: 0.2.0
!lock
Locks the specified team. Recognized values are r=AXIS b=ALLIES s=SPECTATORS all=ALL.
Syntax: !lock (r|b|s|all)
Permission Flag: K
Requires g_tyranny: No
Minimum required version: 0.2.0
!lol
Makes all players drop grenades. If NAME or SLOT is provided only that player will drop grenades. GRENADES is the number of grenades to be dropped (default is 1, maximum is 16).
Syntax: !lol [NAME|SLOT] [GRENADES]
Permission Flag: x
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!mute
Mutes a player in a slot number SLOT or with a name containing NAME. TIME and REASON are optional. See !ban for more information on modifiers
Syntax: !mute (NAME|SLOT) [SECONDS|TIME_WITH_MODIFIER] REASON
Permission Flag: m
Requires g_tyranny: No
Minimum required version: 0.2.0
!news
Plays the map specific news audio to all players if it is available.
Syntax: !news
Permission Flag: W
Requires g_tyranny: No
Minimum required version: 0.2.0
!nextmap
Moves to the next map in campaign or in the objective cycle end game intermission is skipped. With mapvoting gametype it is possible to go to the intermission if g_mapVoteFlags flag 16 is set.
Syntax: !nextmap
Permission Flag: n
Requires g_tyranny: No
Minimum required version: 0.2.0
Changelog
- 0.4.0 The !nextmap will go to the intermission map voting when the gametype is set to 7 and the g_mapVoteFlags bitmask has flag 16 set.
!orient
Reverses the action of !disorient for the client in slot number SLOT or with name containing NAME.
Syntax: !orient (NAME|SLOT)
Permission Flag: d
Requires g_tryanny: Yes
Minimum required version: 0.2.0
!panzerwar
Enables panzerwar game mode. All the players will have their main weapon changed to panzerfaust.
Syntax: !panzerwar [on|off]
Permission Flag: q
Requires g_tyranny: No
Minimum required version: 0.2.0
!passvote
Makes a vote in progress pass.
Syntax: !passvote
Permission Flag: V
Requires g_tyranny: No
Minimum required version: 0.2.0
!pause
Pauses the match.
Syntax: !pause
Permission Flag: Z
Requires g_tyranny: No
Minimum required version: 0.2.0
!pip
Draws sparks (pixie dust) around the player in slot number SLOT or with name containing NAME. Does it to all players if NAME/SLOT is not providied.
Syntax: !pip [NAME|SLOT]
Permission Flag: z
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!pop
Pops the helmet off from a player in a slot number SLOT or with a name containing NAME. If no parameter is provided, it pops the helmets off from all the players.
Syntax: !pop [NAME|SLOT]
Permission Flag: z
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!putteam
Moves a player in a slot number SLOT or with a name containing NAME to the indicated team.
- r - Allies
- b - Axis
- s - Spectators
Syntax: !putteam (NAME|SLOT) (r|b|s)
Permission Flag: p
Requires g_tryanny: No
Minimum required version: 0.2.0
!readconfig
Reads shrubbot.cfg file from the directory set by g_dbDirectory cvar.
Syntax: !readconfig
Permission Flag: G
Requires g_tyranny: No
Minimum required version: 0.2.0
!rename
Sets the player in slot number SLOT or with name containing NAME to NEWNAME. The name change will not be persistent. The user database will store the renamed name for the player.
Syntax: !rename (NAME|SLOT) NEWNAME
Permission Flag: N
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!reset
Resets the match.
Syntax: !reset
Permission Flag: r
Requires g_tyranny: No
Minimum required version: 0.2.0
!resetmyxp
Clears all XP and skillpoints for the player who runs this command.
Syntax: !resetmyxp
Permission Flag: M
Requires g_tyranny: No
Minimum required version: 0.2.0
!resetxp
Clears all XP and skillpoints for the player in the slot number SLOT or with the name containing NAME. If reason is provided it is printed to the client.
Syntax: !resetxp (NAME|SLOT) [REASON]
Permission Flag: X
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!restart
Restarts the match.
Syntax: !restart
Permission Flag: r
Requires g_tyranny: No
Minimum required version: 0.2.0
!riflewar
Enables riflewar game mode. All the players will have their main weapon changed to either K43 or Garand.
Syntax: !riflewar [on|off]
Permission Flag: q
Requires g_tyranny: No
Minimum required version: 0.2.0
!setlevel
Sets the connected player in the slot number SLOT or with name containing NAME to the level indicated by LEVEL. A player cannot !setlevel another player to a lever higher than him/herself.
Syntax: !setlevel (NAME|SLOT) LEVEL
Permission Flag: s
Requires g_tyranny: No
Minimum required version: 0.2.0
!showbans
Lists up to 30 shrubbot bans currently in effect. The columns are:
- ban number
- banned player's name
- date of the ban
- name of the banning admin
- when the ban will expire
- reason for the ban
If SKIP is provided, that number of bans are skipped before printing starts. SKIP can also be negative (e.g. '!showbans -10' would display the last 10 bans.
Syntax: !showbans [SKIP]
Permission Flag: B
Requires g_tyranny: No
Minimum required version: 0.2.0
!shuffle
Shuffles teams, but does NOT restart (see !restart).
Syntax: !shuffle
Permission Flag: S
Requires g_tyranny: No
Minimum required version: 0.2.0
!slap
Does DAMAGE (default 20) damage to player in slot SLOT or with name containing NAME. If REASON is specified it's center-printed to the victim.
Syntax: !slap (NAME|SLOT) [DAMAGE] [REASON]
Permission Flag: A
Requires g_tyranny: Yes
Minimum required version: 0.2.0
!sniperwar
Enables sniperwar game mode. All the players will have their main weapon changed to sniper rifles.
Syntax: !sniperwar [on|off]
Permission Flag: q
Requires g_tyranny: No
Minimum required version: 0.2.0
!spec999
Moves all the players with a ping of 999 to the spectators team.
Syntax: !spec999
Permission Flag: P
Requires g_tyranny: No
Minimum required version: 0.2.0
!spree
Show the players current killing spree count.
Syntax: !spree
Permission Flag: E
Requires g_tyranny: No
Minimum required version: 0.2.0
!spreerecord
Displays the map and the overall spreerecord.
Syntax: !spreerecord
Permission Flag: E
Requires g_tyranny: No
Minimum required version: 0.2.0
!stats
Displays the Thompson, MP40 and PPSh total kills and deaths, kills and deaths during the map and accuracy, headshotratio and headshot distance during the map. Lists all connected players.
Syntax: !stats
Permission Flag: t
Requires g_tyranny: No
Minimum required version: 0.2.0
!swap
Swaps the players to the opposite team.
Syntax: !swap
Permission Flag: w
Requires g_tyranny: No
Minimum required version: 0.2.0