Inheritance
Inheritance lets groups reuse permissions from other groups. Instead of copying the same nodes into every group, you declare a parent and the child gets everything the parent has.
How it works
default ──► member ──► vip ──► admin
memberinheritsdefault→ getsmodifyworld+ member’s own nodesvipinheritsmember→ gets default + member + vip nodesadmininheritsvip→ gets the full chain + admin nodes
A player in admin receives permissions from all ancestors, not just the direct parent.
Set up inheritance
At group creation — pass parent names:
/pex group member create default
/pex group vip create member
/pex group admin create vip
After creation — manage parents:
/pex group vip parents add member
/pex group vip parents list
/pex group vip parents set member default
/pex group vip parents remove default
In permissions.yml
groups:
default:
default: true
permissions:
- modifyworld
vip:
inheritance:
- default
permissions:
- essentials.fly
admin:
inheritance:
- vip
permissions:
- permissions.*
Multiple parents
A group can inherit from several parents:
/pex group builder parents set default creative
The child gets permissions from both default and creative.
World-scoped inheritance
Parents can differ per world:
/pex group vip parents add default
/pex group vip parents add premium world_nether
See Context & Worlds.
Common mistakes
| Mistake | Fix |
|---|---|
| Circular inheritance (A → B → A) | PEX rejects cycles — use a linear chain |
| Copying all permissions into every group | Use inheritance instead |
Forgetting the default group |
Set one group as default |
Inspect the tree
/pex hierarchy
/pex hierarchy world_nether
/pex group admin parents
Related commands
- Group commands —
parents add/set/remove - User commands —
group add/set/remove