Plugin
Install the StaffHQ plugin, configure it, and set up staff group sync with LuckPerms.
Supported platforms
StaffHQ ships separate jars for each platform family.
staffhq-plugin-bukkit.jarstaffhq-plugin-bungeecord.jarstaffhq-plugin-velocity.jarDownload and install
Plugin downloads are available after you purchase a license. Log in to dash.staffhq.net and open the Settings page to download the jar for your platform.
- 1Place the jar in your server's plugins/ directory.
- 2Start (or restart) the server once to generate the default config.
- 3Stop the server.
- 4Edit plugins/StaffHQ/config.yml with your API key and settings.
- 5Start the server again.
Full config.yml reference
api:
endpoint: "https://dash.staffhq.net"
key: "YOUR_PLUGIN_API_KEY"
timeout_seconds: 10
server:
name: "My Server"
# Unique identifier for this server. Auto-generated on first start.
# Do not change this after initial setup.
id: ""
tracking:
chat: true
commands: true
punishments: true
joins_quits: true
rank_changes: true
# Maximum messages batched per sync request (default 50)
batch_size: 50
command_blacklist:
- "/login"
- "/register"
- "/pass"
staff-groups:
- owner
- admin
- moderator
- helper
# Optional: override the sync interval (seconds)
sync_interval: 30
debug: falseConfig options explained
stringBase URL of your StaffHQ dashboard. No trailing slash.
default: https://dash.staffhq.net
stringPlugin-type API key from Settings in the dashboard. Required.
intHTTP timeout for requests to the dashboard. Increase on slow connections.
default: 10
stringDisplay name shown in the dashboard. Can contain spaces.
stringAuto-generated UUID. Do not edit this manually.
boolLog player chat messages.
default: true
boolLog player commands. Use command_blacklist to exclude sensitive commands.
default: true
boolCapture bans, mutes, kicks, and warnings from supported punishment plugins.
default: true
boolRecord when players join or leave the server.
default: true
boolRecord LuckPerms group changes for tracked players.
default: true
intNumber of events batched per sync request. Lower if you see API rate limit errors.
default: 50
listCommands that will never be logged, even when tracking.commands is true. Always include authentication commands here.
listLuckPerms group names whose members are treated as staff. Only players in these groups appear in the Staff panel.
intHow often (in seconds) the plugin syncs batched events with the dashboard.
default: 30
boolEnable verbose logging to the console. Useful for diagnosing connection issues.
default: false
Staff group setup
StaffHQ reads group memberships from LuckPerms to determine which players are staff. List the groups you want tracked under staff-groups in config.yml.
Example LuckPerms setup:
# Create a moderator group
/lp creategroup moderator
# Add a player to it
/lp user Steve parent add moderator
# StaffHQ config entry
staff-groups:
- moderatorPermissions
The plugin does not use Bukkit permissions for tracking. No permissions need to be assigned to players for tracking to work. The staff-groups list in config.yml controls visibility in the dashboard.
Updating the plugin
To update, replace the jar file in plugins/ with the new version and restart the server. Do not delete plugins/StaffHQ/config.yml when updating. New config keys will be added with defaults automatically.