FAQ
My players cannot use /report
Section titled “My players cannot use /report”Module permissions are granted to operators by default. Give your player group at least cobaltstaff.reports.report, cobaltstaff.reports.view-my-reports and cobaltstaff.tickets.create, plus cobaltstaff.warnings.view-my-warnings and cobaltstaff.mutes.view-my-mutes to view their sanctions. See the per-rank example.
A command “does not exist” for a staff member
Section titled “A command “does not exist” for a staff member”A command is hidden from anyone without its permission: the client shows it as unknown. Check the permission listed in Commands, or in commands/<module>.yml if you changed it.
Another plugin already uses /ban, /mute or /vanish
Section titled “Another plugin already uses /ban, /mute or /vanish”By default (commands.override-existing: true), CobaltStaff replaces same-name commands, including other plugins’ aliases. To give priority to another plugin, set the option to false, or rename or disable the command in commands/<module>.yml, then restart the server.
A moderator cannot sanction another staff member
Section titled “A moderator cannot sanction another staff member”That is the staff hierarchy: you can only target a player of a strictly lower rank. Check the ranks list in config.yml and each rank’s cobaltstaff.rank.<rank> permissions.
“Your maximum duration is…” is displayed
Section titled ““Your maximum duration is…” is displayed”The staff member hit their duration limit (cobaltstaff.bans.tempban.limit.<duration>, cobaltstaff.mutes.tempmute.limit.<duration>…) or the default-limits one. See Limits and cooldowns.
Message icons show as boxes
Section titled “Message icons show as boxes”They are private-use characters meant for a resource pack. Provide the glyphs in your pack, or remove them from the language files. See Messages and languages.
Some texts are in French even with language: en
Section titled “Some texts are in French even with language: en”Language files exist in both languages, but ban screen templates (bans/*.txt) and configuration texts (report types, /sanction motives, command usages) are bundled in French. Translate them directly in those files.
PLAYER vanish still removes my tab line
Section titled “PLAYER vanish still removes my tab line”Keeping the tab line in PLAYER vanish requires the packetevents plugin. Without it, this vanish type removes the line too.
I do not receive any notification
Section titled “I do not receive any notification”With notifications.staff-mode-only: true (default), report, sanction and alert notifications are only received in staff mode. For alerts, you also need the cobaltstaff.alerts.<type> permission and an active subscription (/alerts).
How do I migrate from LiteBans?
Section titled “How do I migrate from LiteBans?”Keep the LiteBans configuration in place, then run /cobaltstaff import litebans. Bans, mutes, kicks, warns and the name and IP history are imported. The command can be re-run without creating duplicates. See Import and migration.
Do I need a MySQL database?
Section titled “Do I need a MySQL database?”No. CobaltStaff uses a local SQLite database (data.db, WAL mode), bundled with Paper. All queries run on a dedicated thread and hot state is kept in memory: the server thread never waits for the database.
Does the plugin work on a network (BungeeCord, Velocity)?
Section titled “Does the plugin work on a network (BungeeCord, Velocity)?”CobaltStaff is designed for a single server: sanctions, reports and states are not synchronised between several servers. The server name (server-name) is only kept in the history.
What happens if the server stops while a staff member is in staff mode?
Section titled “What happens if the server stops while a staff member is in staff mode?”Their inventory and state are saved in the database as soon as they enter staff mode. With staff-mode.restore-on-shutdown: true, they are restored on shutdown; after a crash, they are restored on reconnect.
A frozen player logged out
Section titled “A frozen player logged out”With freeze.keep-on-relog: true, they are frozen again on reconnect. You can also run automatic commands on their logout (freeze.logout-commands), for example a ban.
How do I see who did what?
Section titled “How do I see who did what?”Every staff action is written to the audit log: /cobaltstaff audit for the whole server, /cobaltstaff audit <player> for one player (permission cobaltstaff.audit).