4f4f731bc79858412ddd28014e2c4d1d54f74628
Staff
Staff tools for KweebecNet: punishments, history, cross-server staff chat, player lookup.
What it does
- Punishments: ban, tempban, mute, tempmute, kick, warn. All persist to MySQL. Bans + mutes propagate across all servers in the network within milliseconds (via NetworkCore's MessageBus).
- History: every action a player has ever received is queryable with
/history <player>. - Staff chat:
/sc <message>broadcasts to every staff member online on any server. - Player lookup:
/lookup <player>shows UUID, online status, current/last server, active punishments.
Requires
- NetworkCore with
mysql.enabled: trueand a healthy MySQL connection - A working
network.auth_tokenconfigured the same way as for NetworkCore (since this plugin uses the cross-server bus) - The built-in Hytale
PermissionsModulepopulated with at least one of the configured staff groups (defaults:OP,ADMIN,MOD,HELPER)
If MySQL isn't configured in NetworkCore, Staff refuses to start and logs a clear error. Fix NetworkCore first, then restart.
Read before changing
See docs/ for the full breakdown:
- 01_Overview.md - what's here and how the pieces fit
- 02_Configuration.md -
config.jsonfields, staff group setup - 03_Commands.md - every command, syntax, behavior
- 04_Schema.md - MySQL tables, what's stored
- 05_Cross_Server_Propagation.md - how a ban on lobby-1 reaches arena-3
- 06_Operations.md - common ops scenarios, debugging tips
Why this is critical
This plugin enforces who can be on the network. Bugs here mean:
- A banned player gets back in (the network looks compromised to your community)
- A staff member loses access (the network looks broken to staff)
- A mute leaks across worlds incorrectly (chat gets weird)
Treat changes to enforcement code (BanEnforcer, ChatEnforcer, PunishmentService) the same way you'd treat changes to NetworkCore - read the docs and ask a higher-up before merging.
The non-enforcement pieces (lookup, history, staff chat formatting) are lower-stakes; you can iterate on those more freely.
Description
Languages
Java
100%