-
Notifications
You must be signed in to change notification settings - Fork 5
Moderation
Staff and chat control tools: mute chat, freeze players, clear chat, spy on commands, protect dangerous commands, reports, and more. Everything lives under the Moderation: section of config.yml.
Needs: nothing for most. StaffAFK needs LuckPerms.
Toggles global chat on/off with /mutechat. While muted, anyone without the bypass perm has their chat cancelled.
- Config:
Moderation.MuteChat - Default: on
- Command:
/mutechat - Perms:
mutechat.use(run it),mutechat.bypass(talk while muted) - Broadcasts the on/off message to everyone.
%player%is who toggled it.
Lets staff watch other players' commands live. Toggle it per-staffer with /commandspy enable|disable. Watchers see CMDSPY name> /cmd for every command run (except their own).
- Config:
Moderation.CommandSpy - Default: off
- Command:
/commandspy - Perms:
commandspy.use(toggle),commandspy.exempt(your commands don't show up to watchers) -
ignored_commandsskips certain commands from being spied. - Placeholder:
%stools_commandspy%returnsonorofffor whether you're watching.
CommandSpy:
Enabled: false
permission: commandspy.use
ignored_commands:
- 'msg'Blocks a configurable list of dangerous commands (think /op, /pl, /lp, and similar) so random players can't run them. Setup lives in its own CommandProtect.yml file, not the main config.
- Config:
Moderation.CommandProtect(just the on/off toggle), rest inCommandProtect.yml - Default: on
In CommandProtect.yml:
-
ProtectedCommands- the commands to block (defaults include/op,/pl,/ver,/about,/icanhasbukkit,/lp,/luckperms) -
AllowedPlayers- names or UUIDs that can still run them -
password- players run/commandprotect login <password>to allow themselves at runtime (/commandprotect logoutto remove). Too many wrong tries kicks them.
/clearchat pushes chat history off everyone's screen, then broadcasts a "cleared by X" message.
- Config:
Moderation.ClearChat - Default: on
- Command:
/clearchat - Perms:
clearchat.use -
linesis how many blank lines to send (default 100).msgis the broadcast,%player%is who cleared it.
Blocks the namespaced plugin:command form so players can't run something like /essentials:fly to dodge your /fly alias or block.
- Config:
Moderation.NoColonInCommands - Default: on
- Perms:
colon.usebypasses the block - Only blocks when the colon is in the first word (the namespace part), not in later arguments.
/freeze <player> (alias /ss) locks a player in place. While frozen they can't move, drop or pick up items, take damage, chat, or teleport. Run it again to unfreeze.
- Config:
Moderation.Freeze - Default: off
- Command:
/freeze(alias/ss) - Perms:
Freeze.use - Sends the configured
Messagelines to the frozen player. Supports the%SUPPORT%variable (e.g. your discord link). Alerts staff if a frozen player logs out or back in. Works on offline players too.
Lets perm-holders join even when the server whitelist would kick them, and optionally blocks /whitelist add from being run in-game.
- Config:
Moderation.WhitelistBypass - Default: on
- Perms:
whitelist.bypass(join past the whitelist) -
DisableWhitelistCMDInGame: truestops players running/whitelist addin-game (console still works).Messageis the kick message for non-whitelisted players,%player%supported.
/report <player> <reason> pings online staff. Has a per-player cooldown.
- Config:
Moderation.Report - Default: off
- Command:
/report - Perms:
report.notify(receive the reports) -
Cooldownin seconds (default 30),CooldownMSGshown while on cooldown (%timeleft%),ReportSuccessis the staff broadcast (%reporter%,%offender%,%reason%). Can't report yourself.
/staffafk swaps a staff member into a dedicated AFK rank so they visually go "offline" from their staff rank, then swaps them back when they run it again. It remembers their real rank while they're AFK. This uses LuckPerms, so you need LuckPerms installed for it to work.
- Config:
Moderation.StaffAFK - Default: off
- Command:
/staffafk - Perms:
staffafk.use -
StaffAFKGroupis the AFK rank name,StaffGroupsis which ranks count as staff. Placeholder:%stools_staffafk%returnstrue/false.
StaffAFK:
Enabled: false
StaffAFKGroup: staffafk
Permission: staffafk.use
GiveAFK:
- 'lp user %player% parent add %StaffAFKGroupName% server=global'
- 'lp user %player% parent remove %UsersPrimaryGroup% server=global'
RemoveAFK:
- 'lp user %player% parent add %PlayerConfigPrimarygroup% server=global'
- 'lp user %player% parent remove %StaffAFKGroupName% server=global'/tpall teleports every online player to you, with a slight random stagger so it's not all at once.
- Config:
Moderation.TPAll - Default: on
- Command:
/tpall - Perms:
tools.tpall - No config beyond the toggle. Broadcasts a message when triggered.
Getting started
Features
- Core Features
- Chat
- World and Mob Protections
- Moderation
- Events, Cooldowns and Tasks
- Utilities and Misc
- Hopper Optimization