Permissions
The eight nodes the plugin declares, what each one gates, their defaults, and what the menus do not check.
Eight nodes, all declared in the plugin. Seven are granted to everyone by default; the admin node is for operators.
Plugin nodes
| Permission | Default | What it gates |
|---|---|---|
exyliaaimtrainer.train | everyone | /aim train and /aim drills. |
exyliaaimtrainer.settings | everyone | /aim settings. |
exyliaaimtrainer.duel | everyone | /aim duel, /aim accept and /aim deny: sending, accepting and declining requests. |
exyliaaimtrainer.leave | everyone | /aim leave and /aim stop. |
exyliaaimtrainer.profile | everyone | /aim profile and /aim stats, own and others'. |
exyliaaimtrainer.leaderboard | everyone | /aim leaderboard and /aim top. |
exyliaaimtrainer.history | everyone | /aim history and /aim sessions. |
exyliaaimtrainer.admin | operators | /aimtraineradmin, /aimadmin and reload. |
/aim itself, the main menu, has no node: anybody can open it.
The checks live on the commands. The menus and the in-drill hotbar do not ask for them. A player without
exyliaaimtrainer.train cannot type /aim train, but can open /aim, click Drills and start any of
them; the same goes for settings, profiles, leaderboards, history, sending a duel from the opponent picker,
and the leave buttons.
The one exception is answering a duel: the Accept and Decline buttons in the request run
/aim accept and /aim deny, so those clicks do check exyliaaimtrainer.duel.
To keep a group out of a feature, take the main menu away from them as well — for instance by blocking
/aim, /aimtrainer and /at with your command manager — rather than relying on the node alone.
Every staff screen is reached through /aimtraineradmin, which does check exyliaaimtrainer.admin. The
actions behind those screens — aimtrainer:admin_arena_delete_do, aimtrainer:admin_player_reset_do
and the rest — do not check it themselves. Never bind an aimtrainer:admin_* action to an item in a
player-facing menu or in another plugin's file: whoever clicks it runs it.
There are no permission nodes for individual drills, formats, colours, styles or arenas, and none that lets a player run blocked commands while inside a drill. A player who may train may train every configured drill at any size and distance inside the configured range.
Examples
Taking duels away from a group while leaving drills in place:
/lp group default permission set exyliaaimtrainer.duel falseHanding the admin screens to staff who are not operators:
/lp group staff permission set exyliaaimtrainer.admin trueWithout the permission, a command answers with the configured no-permission line from messages.yml.
Something missing on this page? Tell us on Discord