Back to Blog
luckpermspermissionsminecraftinheritancegroups

Fix LuckPerms Group Inheritance: Parent Groups Not Working

December 5, 20247 min read
Fix LuckPerms Group Inheritance: Parent Groups Not Working

# Fix LuckPerms Group Inheritance: Parent Groups Not Working

LuckPerms group inheritance fails when parent groups are not added to child groups, group weights create precedence conflicts, or permission negations in higher-weight groups override grants. Fix it by adding parent groups with /lp group parent add , setting correct weight hierarchy where admin > vip > default, and removing conflicting permission negations. This guide shows complete inheritance debugging.

Understanding Group Inheritance

Group inheritance allows one group (child) to automatically receive all permissions from another group (parent). This prevents duplication: instead of manually granting basic permissions to every group, VIP inherits from Default, and Admin inherits from VIP.

Inheritance Chain Example:

text
Default (weight: 0)
  ├─ essentials.home
  ├─ essentials.sethome
  └─ worldedit.wand

VIP (weight: 50, inherits Default)
  ├─ All Default permissions (inherited)
  ├─ essentials.fly (VIP-specific)
  └─ essentials.god (VIP-specific)

Admin (weight: 100, inherits VIP)
  ├─ All VIP permissions (inherited)
  ├─ All Default permissions (inherited through VIP)
  ├─ * (all permissions)
  └─ worldguard.region.* (Admin-specific)

How Weight Affects Inheritance:

  • Higher weight = higher priority when conflicts occur
  • If Admin (weight 100) denies a permission and VIP (weight 50) grants it, the denial wins
  • Weight does NOT affect inheritance itself, only precedence

Step-by-Step Fix

Step 1: Verify Inheritance Chain

Check if the child group actually inherits from the parent group:

bash
# View group's parents
/lp group VIP parent info

# Expected output:
# VIP's parents:
# - default (inherited)

# If you see "No parents set", the inheritance doesn't exist

If no parents are shown, the inheritance was never configured.

Step 2: Add Parent Group

Set up proper inheritance chain:

bash
# Make VIP inherit from Default
/lp group VIP parent add default

# Make Admin inherit from VIP (which already inherits Default)
/lp group Admin parent add VIP

# Verify inheritance chain
/lp group Admin parent info
# Should show: - vip -> default

Important: You typically only need ONE level of inheritance. If Admin inherits VIP, and VIP inherits Default, Admin automatically gets Default permissions. You don't need to make Admin inherit Default directly.

Step 3: Set Correct Group Weights

Weights determine which group's permissions take precedence during conflicts:

bash
# Check current weights
/lp listgroups

# Set weights (higher = more important)
/lp group default setweight 0
/lp group VIP setweight 50
/lp group Admin setweight 100

# Verify weights
/lp listgroups
# Output should show:
# admin [weight: 100]
# vip [weight: 50]
# default [weight: 0]

Weight Hierarchy Rule:

  • Admin should have highest weight
  • Donor/VIP tiers in middle
  • Default should have lowest weight (0)

Step 4: Debug Permission Conflicts

When a player in multiple groups loses permissions, it's usually a weight conflict:

bash
# Check player's effective permissions
/lp user PlayerName permission info

# Check player's groups
/lp user PlayerName parent info

# Example problematic output:
# PlayerName's groups:
# - admin [weight: 100]
# - vip [weight: 50]
# - default [weight: 0]

# Check for negations in high-weight groups
/lp group Admin permission info | grep "-"

# Example problem:
# - -essentials.fly (explicitly denied in Admin)

If Admin has -essentials.fly (denial) and VIP has essentials.fly (grant), Admin's denial wins because weight 100 > weight 50.

Fix the Conflict:

bash
# Remove the denial from Admin group
/lp group Admin permission unset -essentials.fly

# Or explicitly grant it in Admin to override
/lp group Admin permission set essentials.fly true

Step 5: Check Inheritance Order

LuckPerms applies permissions in this order:

  • User-specific permissions (highest priority)
  • Group permissions (ordered by weight, highest first)
  • Inherited group permissions (ordered by weight)
  • Default group permissions (lowest priority)
bash
# View effective permission calculation
/lp user PlayerName permission check essentials.fly

# Example output:
# PlayerName has permission essentials.fly set to TRUE
# Set by: group.vip (inherited from parent group)

This shows WHERE the permission came from. If you expect it from VIP but it shows "group.default", inheritance isn't working.

Step 6: Fix "VIP Players Can't Build" Problem

Common issue: VIP players lose basic build permissions when added to VIP group.

Cause: VIP group doesn't inherit Default, so VIPs lose basic permissions like build, interact, etc.

Fix:

bash
# Make VIP inherit Default
/lp group VIP parent add default

# Verify VIP now has Default's permissions
/lp group VIP permission info
# Should show permissions from "parent: default"

# Force reload for online players
/lp sync

Step 7: Advanced - Temporary Inheritance

Add a parent group temporarily (e.g., event-only permissions):

bash
# Add EventBoost group to VIP for 24 hours
/lp group VIP parent add EventBoost temporary 24h

# Check temporary parents
/lp group VIP parent info
# Output:
# - eventboost (expires in 23 hours, 59 minutes)

# Remove temporary parent early
/lp group VIP parent remove EventBoost

The MANAfuel Difference

The manual debugging above requires understanding group weights, inheritance chains, and permission precedence. On MANAfuel, Bob AI analyzes the entire permission hierarchy.

You: "Bob, my VIP players can't use /home even though Default group has that permission."

Bob: "Analyzing VIP group configuration. Issue found: VIP group does not inherit from Default. VIP players receive ONLY VIP-specific permissions (essentials.fly, essentials.god) but lack basic Default permissions like essentials.home. I've added Default as VIP's parent group. VIP players now have all Default permissions plus VIP perks."

Bob visualizes your permission hierarchy as a tree, identifies missing inheritance links, and validates that weights don't create conflicts.

Claim Your Founder Spot →

Frequently Asked Questions

Yes. Use:
bash
/lp group Child parent add Parent1
/lp group Child parent add Parent2
Child will receive permissions from both parents. If there's a conflict, weight determines precedence.
The group with higher weight wins. If Parent1 (weight 60) grants fly: true and Parent2 (weight 40) grants fly: false, the player can fly (60 > 40).
LuckPerms must be installed on ALL servers in the network, and they must share the same database (MySQL/MariaDB). If one server uses local storage and another uses MySQL, inheritance won't sync. Configure storage-method: mysql in LuckPerms' config.yml on all servers.
No. This creates a circular dependency and LuckPerms will reject it:
bash
/lp group Admin parent add Admin
# Error: Cannot add cyclic inheritance
bash
# Remove specific parent
/lp group VIP parent remove default

# Clear ALL parents
/lp group VIP parent clear
After editing via /lp editor, you must save and apply changes. If you close the editor without clicking "Apply," changes aren't committed. Additionally, run /lp sync after applying to reload permissions for online players.
Users can only inherit from groups, not other users. To copy permissions from one user to another, either: 1. Add both users to the same group 2. Manually copy permission nodes via the web editor

Share this article

Limited Founder Spots

BECOME A FOUNDER

Early Access members lock in exclusive pricing, get priority launch access, and join our founding community. Once we launch publicly, these perks are gone forever.

Priority Launch Access

Be among the first to deploy when we launch in January 2026

Exclusive Pricing

42% off your first 3 months, then 25% off for life

Founding Community

Direct access to our team and exclusive founder-only perks