FAQ
Common questions about installing, configuring and running ATStaffMode.
Short answers to the questions that come up most. If yours is not here, ask in the Discord server.
No. ATStaffMode has no hard dependencies, so it runs on a clean server.
Four plugins are soft depends and stay optional. PlaceholderAPI adds the placeholders, PremiumVanish and SuperVanish can take over vanish, and MultiverseCore is there for load order on multi world servers.
Minecraft 1.16 and newer, on Spigot or Paper. Your server needs Java 17 or newer.
Materials and sounds are resolved in a version tolerant way, so the items in config.yml keep working across versions.
That depends on the storage.type you pick in config.yml.
| Backend | Where the data lives |
|---|---|
SQLITE | plugins/ATStaffMode/database.db |
YAML | plugins/ATStaffMode/data.yml |
MYSQL | Tables staff_reports, staff_frozen, staff_state and staff_locations on your MySQL server |
MONGODB | The collections named in storage.mongodb, plus staff_state and staff_locations, on your MongoDB server |
Full detail is on the Storage and Data page.
Set the language key at the top of config.yml to the name of a file in the lang folder, without the extension.
language: fr_FRFour languages ship in the jar: en_US, en_ES, fr_FR and pt_BR. Restart or run /staffmode-reload. If the file does not exist yet, the plugin writes it from its own resources when one is bundled, and otherwise copies en_US.yml as a starting template for you to translate. See Messages and Language.
No. Enabling staff mode saves the staff member's inventory, armour, game mode, flight state and location, then clears the inventory to make room for the staff toolbar. Disabling staff mode puts all of it back and teleports them to where they started.
The save is held while the player is online, so use /staffmode to leave staff mode rather than closing the game mid session.
That is the staff-mode.restrict-inventory setting, which is true by default. While it is on, a player in staff mode cannot move, drop or pick up items, so nobody accidentally scatters their toolbar.
Give the atstaffmode.bypass.inventory permission to anyone who should be exempt, or set the option to false to turn the restriction off for everyone.
staff-mode:
restrict-inventory: trueBy design. The staff-mode.disable-on-leave option is false by default, which means a staff member who logs out in staff mode is put back into it when they rejoin.
Set it to true if you would rather everyone starts each session as a normal player.
staff-mode:
disable-on-leave: trueEither way their saved inventory is restored when they leave, so nothing is lost.
Two things have to be true at once. PremiumVanish or SuperVanish has to be installed, and use-premium-vanish has to be true in config.yml.
use-premium-vanish: trueIf either is missing, ATStaffMode falls back to its own vanish, which hides staff from players without the atstaffmode.use permission. When the hook does take effect you get a confirmation line in the console on startup.
Make sure you ran /staffmode-reload after saving, and check the console for a YAML parsing error. use-premium-vanish and storage.type are the two keys a reload cannot move, they need a restart.
If you are on an older build, several keys shipped without any code behind them and simply did nothing. All of them were fixed in 1.5.0, and the Config Key Audit lists which ones they were.
Only the ones you allow. freeze.prevent-commands is on by default, and freeze.allowed-commands is the whitelist, shipping with /report and /helpop. Anything else gets the freeze.cannot-command message.
Aliases are not resolved, so add the alias to the list as well if you want it to work.
Chat is never blocked, so a frozen player can always talk to you. See Freeze.
They should not, as of 1.5.0. Last known logout locations are written to storage, so the offline list survives a restart.
If an individual player is missing, the usual reason is that the world they logged out in no longer exists on the server. Those entries are skipped rather than shown. See Storage.
It was removed in 1.5.0, along with the atstaffmode.debug.staffmode permission. It toggled an internal flag that nothing read, so it never did anything useful.
If you want to test freeze against another staff member, use /freezedebug <player>, which bypasses the staff protection that /freeze respects. That command is unaffected.
Yes. update-checker.enabled: false in config.yml stops the check entirely, so nothing is fetched and nobody is told.
update-checker:
enabled: falseIf you only want to keep it out of chat, leave enabled: true and set notify-staff-on-join: false instead. The console still tells you when a release is out, which is usually what you want. See Installation.
It is the plugin's record of which revision your file is at, and no, leave it alone. config.yml and every file under lang/ carry one. When a release adds keys it ships a higher number, the plugin sees yours is behind, and merges the new keys into your file without touching anything you changed.
Edit it by hand and an upgrade either skips keys you should have received, or runs a merge that was not needed. See Configuration.
The Discord server is the one support channel. The Support page lists what to include so your question can be answered quickly.