Admin Toolbox
This is a full collection of "Utilities" used in assisting the administration team in running the Zombie Land servers. All of these features are developed with performance impact as the top priority. Some implementations might seem "restricted" in functionality, this was done for the sole purpose of preserving server performance.
Permissions:
admintoolbox.use - To use most plugin featuresadmintoolbox.dice - Use of /diceroll command
admintoolbox.bckpcklos - Use of line of sight backpack viewingadmintoolbox.invlos - Use of line of sight inventory viewing
admintoolbox.give - Use of the give functionsadmintoolbox.homes - To view the /sethome list of others
admintoolbox.kits - Use of the kits functions
admintoolbox.greet - To log greets and be rewardedadmintoolbox.phonebooth - Use of phonebooth command
admintoolbox.admintime - Allow non admins to use admintimeadmintoolbox.serveredit - Allow editing of server convars
admintoolbox.authall - Use of authall commandadmintoolbox.strip.self - Use strip command on self
admintoolbox.strip.other - Use strip command on other playeradmintoolbox.strip.target - Use of line of sight strip command
admintoolbox.ignore.join - Use for users or groups you do not want join messages foradmintoolbox.ignore.leave - Use for users or groups you do not want leave messages for
admintoolbox.reskin - Use of reskin command
admintoolbox.reskinany - Allows bypassing the whitelist requirements for reskinadmintoolbox.reskinlos - Allows using the reskin los command to reskin deployed items
admintoolbox.reskinbuilding - Allows use of the reskin los command for building blocksCommands:
<arg> = required | [arg] = optional
Give Line of Sight
at.givelos <quantity> <item> [SkinID] [CustomName] - Console command version for keybinding
/at.givelos <quantity> <item> [SkinID] [CustomName] - Chat command version
This command will give any item, including custom items, to the target you are looking at. Also contains the functionality for currency from other plugins such as RP, XP, Zeds, etc. Custom name is to only be used with skin items or plugin currencies. For virtual items, type the currency in place of the name. The plugin will recognize an invalid item name and revert to checking custom currency configuration for a match.
Examples:
at.givelos 1 pants - Gives one pants to the target
at.givelos 1 door.hinged.toptier 3456345 - Gives one skinned armored door
at.givelos 1 rock 2345234 "Purple Infinity Stone" - Gives a rock with a skin and custom name
at.givelos 500 Zeds - Gives 500 of the custom currency "Zeds" straight to target's 'bank'
at.givelos 10000 XP - Gives 10,000 XP from SkillTree plugin to the target
Give Kit Line of Sight
at.kit <KitName> - Gives the kit to the target you are looking at.
/at.kit <KitName> - Chat version
- Automatically checks player inventory for free slots
- Attempts to move all wear/belt slot items into the main inventory so the given kit will be equipped
- Upon running out of room the plugin will then check the configuration list of "trash items" and delete those to make more room (ie. torch, rock, etc.)
- The trash items will never destroy a custom item or a skinned item
- After trash clean up if there is still not enough room the plugin will dump the remaining items on the ground in front of the player from eye level and notify them.
- (future feature: use the Redeem Storage plugin to catch the extra items)
Give Shoppystock Currency
at.givess <SteamID> [ShopName] <Quantity> - Gives the player shoppy stock currency for the specified shop.
at.givezeds <SteamID> <Quantity> - Gives the player the Zeds currency directly into their bank.
- Can be called remotely from RCON or through in game console. Can also be used as a chat command with a / in front. Requires permission admintoolbox.give
Phonebooth
at.phonebooth <KitName> - Stash current inventory and equip Kit
at.phonebooth restore - Restore inventory and get rid of the kit
This command is designed for admins to swap into their admin gear with the press of a hotkey, preserving their inventory for safe keeping, and then swap back when their duties are completed.
- Items are kept in their original state (eg. They will not lose any properties or custom attributes)
- Survives server restart or plugin reload
- Will not allow another kit to be swapped until original inventory is restored (to prevent abuse)
- Memorizes position of inventory to restore back to the same container (wear, belt, main, etc.)
- Restore only gets rid of the swapped kit, any item acquired will not be removed when using restore
Misc
Commands with a [/] slash are chat commands. Commands without it are for console. Some can be used from both.
at.wipeperm <permission>
Completely removes the permission from every player on the server (useful for cleaning up old permissions)
at.colors
/at.colors
Prints a sample paragraph to chat displaying all of the current color settings for the plugin chat feedback
at.homes <PlayerName|PartialName|SteamID>
/at.homes <PlayerName|PartialName|SteamID>
Prints a list of the current homes (TeleportGU plugin) for the player
at.homes <Number>
/at.homes <Number>
Teleports you to the home from the list of homes.
(The query will reset itself after 30s or upon the next query)
at.identify
/at.identify
Prints detailed information/attributes for the object you are looking at
at.admintime ##
/at.admintime ##
Allows the player to set the specific time of day for their client only (is not seen by other players). Use two digit number for the hour in 24 hour format.
Use -1 to turn this feature off and revert to normal server time.
/notate <Note>
Adds a note to the target player's Battlemetrics profile using line of sight.
at.strip
at.strip <SteamID>
at.strip target
/at.strip
/at.strip <SteamID>
/at.strip target
Completely clears the inventory of yourself (no arguments), of another player (SteamID), or from your line of sight target (target).
at.invlos
/at.invlos
Open the inventory of the target player using line of sight (Requires Inventory Viewer)
at.backpacklos
/at.backpacklos
Open the backpack (Plugin Backpacks) of the target player using line of sight
/at.sphere <meters> [duration] [color]
Draws a sphere with a radius <meters> around your current position for [duration] with the [color].
Useful as a measuring tool to gauge distance in game
/at.sphere help
Prints to chat the correct usage of the sphere command along with the valid colors.
at.logplayers
Sends the player count to a log file with date time stamps. Useful for exporting to spreadsheets. No built in timer for performance preservation. To be called from a 3rd party schedular RCON tool such as Battlemetrics.
/diceroll <max>
Rolls a <max> sided dice and prints the results to global chat.
at.msg <SteamID> <message>
Sends a direct message to the player either in chat or via pop up (configurable)
Optionally (configurable) plays a special effect to get their attention
at.greet
Uses line of sight targeting to log a "greet" for the admin using the command. Contains logic to know if the player has already been greeted by another admin, or if the player is not considered "new" to the server to prevent double greetings or admins greeting players that are not new.
- Logs all greetings to a file for auditing. Includes admin name and SteamID, Date/Time, target player name and SteamID, coordinates, and grid.
- Removes the "New Player" flag from the target in Battlemetrics
- Adds the "Greeted" flag to the player in Battlemetrics
- Adds a note to the player's profile with Date/Time and the admin that greeted them
- Awards the admin with the configured reward
/at.reskin <SkinID>
Reskins the currently active item on the player toolbar with the new skinID
/at.reskin los <SkinID>
Reskins the deployable being looked at with the SkinID
/at.reskin los <BuildingSkin>
Reskins the building block being looked at to the building skin (ie. adobe, brutalist, etc.)
Configuration:
General Config
Enable Debug Output - Enables integrated debugging output throughout the entire plugin
Enable logging all commands used - Logs all command usage to a file. This includes the command used, arguments passed with the command, date/time, admin name that used it, coordinates of use, and grid. All of this data is written to file when the server saves to preserve performance.
Range in meters of at.id command - Meters that the identify command should look for an object in your line of sight
Cooldown for players using /diceroll (seconds) - Slows players down from spamming this command
Building and Deploying
Base Settings
Use permission for immunity - Allow players to be immune to base settings via permission
Permission for build immunity - Define the permission name to be used for immunity
Deploy Settings
Use permission for immunity - Allow players to be immune to deploy settings via permission
Permission for deploy immunity - Define the permission name to be used for immunity
Prevent deploying of items listed below - Completely disable the ability to deploy configured shortnames
Shortnames not allowed to be deployed - List of deployables not permitted to be deployed
Farm Settings
Block planting seeds outside of planters - Stops players from planting seeds out in the wild (good for high yield rate servers)
Block planting seeds in planters - Stops players from planting seeds in planters (combined with the former, essentially blocks farming)
PVE Server Utilities
Disable Jackhammer Raiding if TruePVE absent - Prevents jackhammer raiding (useful in No Durability situations)
Block players from authorizing or looting NPC auto turrets in custom maps - Custom maps can then utilize auto turrets in monuments
Block Gibs/Fire from destroyed player copters - Stop player copters from leaving fire or gibs when destroyed
Force /pouch (Skill Tree) to drop inside PVP raid bubbles - For use when backpacks drop on death
Block all damage to/from Safe Zones - Nothing can harm from or into a safe zone
Allow NPC Turrets to damage from Safe Zones - Lets turrets still damage from safe zones
Block Scrap Copters from harming players - Prevent players from squishing other players under a copter
Allow players to destroy campfires - Ignore TruePVE and let campfires be destroyed by players (entity cleanup)
Allow players to destroy sleeping bags - Ignore TruePVE and let sleeping bags be destroyed by players (entity cleanup)
Give Config
Play a special effect over the target upon success - In game sound effect upon successful give
Effect prefab path - Path to the asset effect to use
Use ShoppyStock - Use a shoppy stock currency as one of the custom currencies
Shoppy Stock Shop Name - Name of the shop to be used as the custom currency
Use ServerRewards (RP) - Enable RP as one of the custom currencies
Use Economics (Eco) - Enable XP as one of the custom currencies
Use SkillTree (XP) - Enable XP as one of the custom currencies
RESKIN Config
Shortnames allowed to be reskinned (leave empty to allow all) - List of shortnames allowed to be reskinned.
Allows all items if left blank (this can be dangerous as it can make items look like another item which can cause issues for players)Can be bypassed with the admintoolbox.reskinany permission (those without the permission are still bound to the whitelist)
Kits Config
Play a special effect over the target upon success - In game sound effect upon successful give
Effect prefab path - Path to the asset effect to use
Enable use of at.kit command - Enable those with permission to use the kit command
Item shortnames to be deleted when giving/swapping kits - List of "trash items"
Phonebooth Config
Play a special effect over the target upon success - In game sound effect upon successful swap
Effect prefab path - Path to the asset effect to use
Enable use of at.phonebooth command - Enable those with permission to use the phonebooth command
Kits allowed via Phonebooth (leave empty for no restrictions) - List of kits allowed to be used with phonebooth
Vehicle Config
Block spawning of vehicles from VehicleLicense plugin in specific map topologies - Blocks players spawning personal vehicles on listed topologies
Block recalling of vehicles from VehicleLicense plugin in specific map topologies - Blocks players recalling personal vehicles on listed topologies
List of those topologies - List of topologies to block them in (ie. monument, ocean, etc.)
Messaging Settings
Use Prefix in at.msg - Automatically add any text to the front of all msg usage
Message Prefix - The text to use in the above setting
Send message in a popup rather than chat - Use a pop up in the middle of the screen rather than chat text
Get target attention by playing special effect upon msg sent - In game sound effect upon successful message
Effect prefab path - Path to the asset effect to use
Welcome Msg Config
Enable Welcoming Players - Print a personalized welcome to chat when a player joins
Enable Goodbye to Players - Print a personalized welcome to chat when a player joins
Use OpenAI API for Welcome/Goodbye Statements - Process the welcome/leave messages through ChatGPT for more random messages.
HUD Configurations
Show a PVP warning to players when PVE plugin unloaded - Automatically show a UI indicator that PVP is active
PVE Plugin name - The plugin that we watch for to know if it is PVP mode or not
Message to display on the PVP indicator - What message we want to display in the indicator (ie. "PVP Day!")
Font color of the message - RGBA color for text in the box
Font size of the message - Font size of that text
AnchorMin for UI position - Starting bounds of the box (how you adjust the size)
AnchorMax for UI position - Final bounds of the box (how you adjust the size)
OpenAI API Settings
Frequency Penalty - Penalize GPT for repetitive answers
Max Tokens - The most tokens allowed to be used in the response
GPT Model - For cost, highly suggest GPT-3.5 Turbo
Temperature - Higher number means more creative answers. Value range 0.0-2.0
OpenAI API Key - You are required to have an API Key
API URL - https://api.openai.com/v1/chat/completions
Misc Settings
Force Horde Zombie corpse/bag to despawn upon interaction - Used to stop players from exploiting loot quests
Time after interaction for the corpse/bag to destroy - Timer for the above setting
Show feedback when Horde Zombie corpse/bag dissolves? - Alert the player to the corpse despawning
List Zombie Horde names from config loadouts - What dictates which NPCs are considered horde zombies
Enable limit of supply signal throwing? - True/False. Configurable amount of supply signals that can be thrown in X period of time to prevent spamming.
Block throwing supply signals on Cargo ship - If enabled will refund the supply signal and tell the player why