zQuestRank

Permissions

Every permission node and what it grants.

zQuestRank keeps permissions simple: one node for players, one for admins, plus one node per rank if you want to set ranks through your permission plugin.

NodeGrantsDefault
zquestrank.useOpen the rank menu with /rank and play through the progressioneveryone
zquestrank.adminThe /rank admin subcommands: reload, setrank, resetquests, placeholderops
zquestrank.rank.<key>Sets the player to that rank (see below)nobody

Setting ranks through permissions

Every rank gets its own node built from its key in ranks.yml: the shipped rank-2 becomes zquestrank.rank.rank-2. Give the node to a player through LuckPerms (or any permission plugin) and they are put onto that rank and its quests unlock. Handy for shops, votes, or admin tools that can only hand out permissions.

/lp user Steve permission set zquestrank.rank.rank-2 true
  • If a player holds several of these nodes, the highest rank wins.
  • The node sets the rank exactly, both up and down. Swap a player from zquestrank.rank.rank-3 to zquestrank.rank.rank-2 and they drop to Rank 2. Remove the higher node and they fall back to the highest one they still hold.
  • A player who holds no rank node at all is left exactly where they are, so anyone who reached a rank by finishing its quests (without a node being granted) is never dropped.
  • Moving onto the new rank resets quest progress, same as setrank, since progress always belongs to the current rank.
  • Every change runs the new rank's on-reach commands, so the player's real permission group is set to match. It does not pay out the rank's one-time rewards.commands prizes; the permission itself is the grant.

It applies while the player is online

Granting or removing a node takes effect on its own, the player does not have to rejoin or reopen the menu. A light background check re-syncs every online player every few seconds. The interval is progression.permission-check-seconds in config.yml (default 5, set to 0 to switch the background check off and only apply nodes on join and on menu open).

If you drive ranks through permissions, make sure each rank's on-reach group actually grants that rank's zquestrank.rank.<key> node (for example the rank3 LuckPerms group carries zquestrank.rank.rank-3). Otherwise a player who claims their way up will be dropped back down by the next sync, because the plugin will not see a node matching their new rank.

Requirements of type PERMISSION check whatever node you configure in ranks.yml; those are your own nodes, not the plugin's. See Requirements.

For the commands behind these nodes, see Commands.

On this page