Commands, chat navigation, and permissions
Server owners can configure additional names for /mcprogression, /skills, and /mcpadmin in config.yml under commands.<command-name>.aliases. Existing commands and built-in aliases remain available. For example, assigning [levels] to commands.mcprogression.aliases makes /levels an additional route to the same command. See command alias configuration for syntax and conflict behavior.
Player command flow
Use /mcp or /mcp menu for the player menu when enabled; /mcp skills opens the paginated skill overview, /mcp skills <skill> shows one skill's XP, and /mcp help lets you choose eligible XP sources. /mcp help <skill> [page] emits seven short rows per page; each row is a clickable link to skill details, and Previous/Next buttons run the corresponding page command. /skills remains available as a shortcut. /mcp top <skill> [leaderboard] [page] also uses seven-row pages; /mcp rank remains a public read command.
When player-display.menus.enabled is true, /mcp and /mcp menu open a chest-style navigation menu for skills, rank, General XP, leaderboards, held-item inspection, and the bossbar toggle. Skill XP sources and leaderboard results remain in the paginated chat views so their full detail is readable. Players with staff action permissions also see the filtered administration menu. Set player-display.menus.enabled: false to return to the chat command index.
XP feedback has an independent mode for Skill XP and General XP. player-display.xp-feedback.mode is the shared default (actionbar by default); optional skill-mode and general-mode override it. Action-bar messages combine quick awards over merge-ticks, while chat sends one message per award and off suppresses that category. Players can use /mcp feedback skill|general [actionbar|chat|off]; the legacy /mcp feedback [actionbar|chat|off] sets a shared override for both categories. General XP feedback also requires general-xp.yml: notify-player to be enabled.
When player-display.preferences.allow-player-customization is enabled, /mcp preferences opens a personal display screen. Players can independently cycle Skill XP and General XP feedback, toggle their skill level-up and Global Rank notices, toggle the Global Rank bossbar, and reset choices to server defaults. Choices persist with the player's Minecraft profile. Without menus, use /mcp preferences skill-level|rank [on|off|default] and /mcp preferences reset. Owners set XP defaults through mode, skill-mode, and general-mode; empty category values inherit the shared mode. Notice defaults use player-display.announcements.skill-level-up.player-default-enabled and global-rank-up.player-default-enabled. The master customization setting can lock all player overrides, while XP and HUD each have an additional allow-player-toggle setting. Hiding a notice or XP message affects only that player's display; it does not change awards, rankings, Discord notifications, rewards, or audit records. Configured type: message rewards always remain visible because they are the reward content itself and claims are one-time.
Defaults by Minecraft player role
| Persona | What should feel natural | Default behavior and available control |
|---|---|---|
| New or casual player | Discover what skills do without memorizing commands; get light confirmation that actions count. | Open the chest menu with /mcp; get merged action-bar XP and clear skill/rank progress screens. Detailed source lists stay in paged chat. All preferences initially follow server defaults. |
| Experienced or competitive player | Keep the HUD and chat uncluttered, and get to exact information quickly. | /mcp preferences can independently mute Skill XP or General XP, hide selected notices or the bossbar, and keep command shortcuts. |
| Moderator | Inspect a player or investigate activity without receiving owner-only controls. | /mcpadmin shows only actions granted by LuckPerms. Reset has an additional confirmation screen; history/report access is controlled by separate permission nodes. |
| Administrator | Audit, inspect progression, and make narrowly scoped adjustments. | Permission-filtered tools remain available alongside direct commands. Risky or exact operations keep typed command arguments and explicit confirmation. |
| Server owner | Choose a server-wide style that fits the community and allow or disallow personal overrides. | player-display.menus.enabled controls chest navigation; xp-feedback.mode plus optional category modes define feedback defaults; the master and per-feature switches control overrides. |
These defaults favor one short, merged action-bar update over a chat line for every block or mob, because rapid XP events otherwise flood chat and obscure player conversation. Menus are a discoverability layer, not a replacement for command access: players can keep using /mcp skills, /mcp top, and /mcp help, while staff retain precise command syntax for offline targets, dates, and other exact inputs. Disable menus for a command-first server; choose chat feedback when visible audit-like feedback is more useful than a quiet HUD.
The menu command is a compact chat index. The persistent bossbar remains the live progression overlay; help and audit text stay in chat so they can be paged and do not compete with gameplay overlays. Paper Adventure components provide click and hover actions without TAB, PlaceholderAPI, or a resource pack dependency. Console output remains readable as plain text, though click navigation is only available to in-game users.
Admin command flow
/mcpadmin (alias /mcpa) is the separate administration command. With menus enabled, it opens a permission-filtered chest menu; mcprogression.admin opens the menu without granting an action, and a user with an individual action permission sees only the entries they may use. The reset flow selects an online player and requires a second confirmation click. Offline-player work remains available through the typed commands. CoreProtect import opens an ISO-8601 cutoff prompt, while apply still uses the existing separately permission-checked command. The public /mcp help does not list admin operations. For backwards compatibility, /mcp audit, /mcp preset, and /mcp import route to the same permission checks. Tab completion is permission-filtered for discoverability, but every action checks permission again when executed.
Audit findings, preset previews, XP history, and XP reports use seven-row pages. Preset preview and apply have separate permissions. CoreProtect import preview and apply also have separate permissions. Reset-to-zero and reset-and-sync are separate actions: the former blocks automatic history sync; the latter replaces the profile from supported Minecraft statistics and requires the player to be online. See moderator progression controls.
Permission nodes
Public player commands need no management node. Admin, bypass, dimension bypass, and permission-routed announcement nodes all default to false, including for OPs on the normal Bukkit permission-default path. This prevents an OP flag from automatically granting McProgression's management and bypass powers. LuckPerms can grant nodes per user/group and applies permission checks to Bukkit plugins; keep its Minecraft backend installation and group inheritance in mind when administering a proxy network.
Players can run /mcp inspect (alias /mcp item) while holding an item to see skill-gated actions they currently cannot use, the required skill tier and level, their current skill tier/level, and estimated XP remaining. It also lists configured skill XP sources for that material and any active tool-tier XP multiplier. Unlocked actions are omitted; [i] chat-item sharing remains provided by the server's chat plugin.
Items with configured skill requirements also show generic action, skill tier, and level requirements in their hover lore. This policy text is the same for all players; use /mcp item for player-specific lock status and XP remaining. McProgression adds this lore to the item stack when it is in a player's inventory, opened inventory, or a spawned/picked-up item, while preserving existing lore.
| Role | Grant these McProgression nodes |
|---|---|
| Player | None; /skills, /mcp help, /mcp top, /mcp rank, and the configured HUD toggle remain public. |
| Moderator who reviews diagnostics | mcprogression.admin.audit; add mcprogression.admin.alerts only if they should receive operator alerts. |
| Preset reviewer | mcprogression.admin.preset.preview; may also receive the parent mcprogression.admin.preset node, which grants preview and apply. |
| Preset applier | mcprogression.admin.preset.preview and mcprogression.admin.preset.apply, or the parent mcprogression.admin.preset node. |
| History reviewer | mcprogression.admin.import.preview. |
| Trusted history applier | mcprogression.admin.import.preview and mcprogression.admin.import.apply. |
| Moderator who can force-reset profiles | mcprogression.admin.reset. |
| Trusted moderator who can rebuild profiles from stats | mcprogression.admin.reset.sync. |
| XP history reviewer | mcprogression.admin.xp.history. |
| XP report reviewer | mcprogression.admin.xp.report. |
| Server owner | Grant the precise admin nodes needed. Give item/dimension/XP bypass nodes only to named accounts that need them. |
mcprogression.admin only opens the admin menu. It is optional when a user already has a specific action node. The reset permissions are independent: granting .reset.sync does not grant .reset, or vice versa.
Bypass nodes are independent and do not follow from mcprogression.admin:
mcprogression.admin.bypass.itemsmcprogression.admin.bypass.xp(suppresses XP awards; do not give it to staff who need to test progression)mcprogression.bypass.dimension.nethermcprogression.bypass.dimension.end
LuckPerms examples
Create groups and grant only the intended nodes, for example from console:
lp creategroup progression-manager
lp group progression-manager permission set mcprogression.admin true
lp group progression-manager permission set mcprogression.admin.preset.preview true
lp group progression-manager permission set mcprogression.admin.preset.apply true
lp user PlayerName parent add progression-manager
lp creategroup progression-auditor
lp group progression-auditor permission set mcprogression.admin.audit true
lp creategroup progression-moderator
lp group progression-moderator permission set mcprogression.admin.reset true
lp creategroup progression-xp-reviewer
lp group progression-xp-reviewer permission set mcprogression.admin.xp.history true
lp group progression-xp-reviewer permission set mcprogression.admin.xp.report true
lp creategroup progression-reset-sync
lp group progression-reset-sync permission set mcprogression.admin.reset.sync true
For an owner who needs the admin menu, grant mcprogression.admin plus only the action nodes they should use. A staff member with a leaf permission can run that action without the root node. LuckPerms applies its nodes to Bukkit permission checks; avoid broad *, mcprogression.*, or mcprogression.admin.* grants. See the official LuckPerms permissions guide, usage guide, and FAQ.
Verification checklist
- A default player can use public skill, help, top, rank, and HUD commands;
/mcphelp does not advertise admin operations, and admin tab completion exposes only permitted actions. - A player who types
/mcp auditmanually gets a generic denial and no findings. - An OP without explicit McProgression nodes cannot audit, apply presets/imports, reset or reset-sync profiles, bypass item or dimension rules, receive restricted alerts, or suppress XP.
- A moderator granted only
mcprogression.admin.auditcan run the audit without receiving the broader admin menu permission, but cannot apply presets, imports, or resets. - Preset preview-only staff can preview but cannot apply; import preview-only staff cannot apply.
- Reset staff cannot use reset-and-sync unless they also receive
mcprogression.admin.reset.sync. - Clickable Previous/Next links reopen the correct page, page values clamp safely, and no page sends more than seven content rows.
- LuckPerms group inheritance produces the expected effective nodes; use
/lp verboseto inspect a command denial or unexpected grant.