Articles on: Minecraft

How to Configure Plugin Permissions on Your Minecraft Server

How to Configure Plugin Permissions on Your Minecraft Server

Proper permission configuration is the backbone of a well-managed Minecraft server. Permissions control what players can do, which commands they can execute, and how they interact with plugins. Understanding how to configure permissions effectively allows you to create custom ranks, manage staff members, and provide tailored experiences for different player groups. With Loafhosts' LoafPanel and LuckPerms, permission management becomes intuitive and powerful.

Understanding Minecraft Permissions

What Are Permissions?

Permissions are strings that grant or deny access to specific features, commands, or actions. They follow a hierarchical structure:

plugin.feature.subfeature.action

Examples:

  • essentials.home - Allows /home command
  • worldedit.selection.pos - Allows WorldEdit position selection
  • luckperms.user.permission.set - Allows setting user permissions

Permission Hierarchy

Permissions use dot notation to create hierarchy:

essentials.*
└── essentials.home.*
├── essentials.home
├── essentials.sethome
└── essentials.delhome

The wildcard (*) grants all permissions under that node.

Permission States

Permissions can have three states:

  1. True/Allowed - Player can use the feature
  2. False/Denied - Player explicitly cannot use the feature
  3. Undefined/Not Set - No permission (typically acts as denied)

Negation

Use negation to explicitly deny permissions:

-essentials.gamemode

This denies access even if the player has essentials.*

Prerequisites

Before configuring permissions:

Permission Management Methods

The easiest way to manage permissions visually.

Steps:

  1. In-game or console, type: /lp editor
  2. Click the generated URL
  3. Browser opens with visual permission editor
  4. Add/remove permissions with clicks
  5. Save and apply changes

Method 2: In-Game Commands

Execute permission commands directly.

Steps:

  1. Join your server as operator
  2. Use /lp commands to modify permissions
  3. Changes apply immediately
  4. No restart required

Method 3: Configuration Files

Edit permission files directly (advanced).

Steps:

  1. Navigate to /plugins/LuckPerms/
  2. Edit YAML/JSON files
  3. Reload LuckPerms: /lp reload
  4. Less user-friendly but good for bulk changes

Creating Your Permission Structure

Step 1: Plan Your Rank Hierarchy

Before configuring, plan your structure:

Example Structure:

Default (all players)

VIP (donators)

MVP (higher tier donators)

Helper (trial staff)

Moderator (staff)

Admin (senior staff)

Owner (server owner)

Step 2: Create Groups

Create each group with LuckPerms:

/lp creategroup default
/lp creategroup vip
/lp creategroup mvp
/lp creategroup helper
/lp creategroup moderator
/lp creategroup admin
/lp creategroup owner

Step 3: Set Group Weights

Higher weight = higher priority:

/lp group default setweight 0
/lp group vip setweight 10
/lp group mvp setweight 20
/lp group helper setweight 30
/lp group moderator setweight 40
/lp group admin setweight 50
/lp group owner setweight 100

Step 4: Configure Inheritance

Each rank inherits permissions from lower ranks:

/lp group vip parent add default
/lp group mvp parent add vip
/lp group helper parent add mvp
/lp group moderator parent add helper
/lp group admin parent add moderator
/lp group owner parent add admin

Essential Plugin Permissions

EssentialsX Permissions

Default Player Permissions

essentials.help
essentials.motd
essentials.rules
essentials.spawn
essentials.tpa
essentials.tpahere
essentials.tpaccept
essentials.tpdeny
essentials.home
essentials.sethome
essentials.sethome.multiple.default
essentials.delhome
essentials.homes
essentials.balance
essentials.balancetop
essentials.pay
essentials.msg
essentials.reply
essentials.mail
essentials.mail.send
essentials.afk
essentials.back
essentials.suicide
essentials.kit.starter
essentials.warp.*

Apply to Default Group:

/lp group default permission set essentials.help true
/lp group default permission set essentials.spawn true
/lp group default permission set essentials.tpa true

Or use web editor to add all at once.

VIP Player Permissions

Add these to VIP group:

essentials.fly
essentials.sethome.multiple.vip
essentials.nick
essentials.hat
essentials.ptime
essentials.pweather
essentials.enderchest
essentials.workbench
essentials.kit.vip
essentials.top
essentials.near

Moderator Permissions

Add staff permissions:

essentials.kick
essentials.mute
essentials.unmute
essentials.tp
essentials.tp.others
essentials.tphere
essentials.tpall
essentials.teleport.cooldown.bypass
essentials.teleport.timer.bypass
essentials.invsee
essentials.socialspy
essentials.vanish
essentials.ban
essentials.ban.offline
essentials.unban
essentials.tempban
essentials.clearinventory
essentials.clearinventory.others
essentials.broadcast

Admin Permissions

Give admin all Essentials:

/lp group admin permission set essentials.* true

WorldEdit Permissions

Builder Permissions

worldedit.selection.*
worldedit.clipboard.*
worldedit.history.undo
worldedit.history.redo
worldedit.region.set
worldedit.region.replace
worldedit.region.overlay
worldedit.region.walls
worldedit.region.faces

Apply:

/lp group builder permission set worldedit.selection.* true
/lp group builder permission set worldedit.clipboard.* true

Admin WorldEdit Permissions

worldedit.*
worldedit.scripting.*
worldedit.generation.*
worldedit.super-pickaxe.*

WorldGuard Permissions

Default Player Permissions

worldguard.region.info.*
worldguard.region.list.*

Region Owner Permissions

worldguard.region.claim
worldguard.region.define
worldguard.region.redefine.own
worldguard.region.remove.own
worldguard.region.addmember.own
worldguard.region.removemember.own
worldguard.region.addowner.own
worldguard.region.removeowner.own
worldguard.region.flag.own.*

Moderator Permissions

worldguard.region.define
worldguard.region.remove.*
worldguard.region.flag.regions.*
worldguard.region.addmember.*
worldguard.region.addowner.*

CoreProtect Permissions

Staff Inspection

coreprotect.inspect
coreprotect.lookup
coreprotect.rollback
coreprotect.restore

Admin Permissions

coreprotect.*
coreprotect.purge

LuckPerms Self-Management

Allow Users to Check Their Permissions

luckperms.user.info.base
luckperms.user.permission.info
luckperms.user.parent.info

Staff Permission Management

Moderators managing permissions:

luckperms.user.permission.*
luckperms.user.parent.*
luckperms.group.permission.info

Admins with full LuckPerms access:

luckperms.*

Advanced Permission Techniques

Context-Based Permissions

Grant permissions based on world, server, or custom context.

World-Specific Permissions

Allow flying only in creative world:

/lp group vip permission set essentials.fly true world=creative

Allow PvP commands only in PvP world:

/lp group default permission set essentials.kill true world=pvp

Server-Specific Permissions

For multi-server networks:

/lp group helper permission set essentials.kick true server=survival
/lp group helper permission set essentials.kick false server=creative

Temporary Permissions

Grant permissions for limited time.

Temporary Group Membership

Add player to VIP for 7 days:

/lp user PlayerName parent addtemp vip 7d

Temporary Permission

Grant fly for 1 hour:

/lp user PlayerName permission settemp essentials.fly true 1h

Time Format:

  • s = seconds
  • m = minutes
  • h = hours
  • d = days
  • w = weeks
  • mo = months

Meta Permissions

Add metadata like prefixes, suffixes, and custom values.

Setting Prefixes

/lp group admin meta setprefix 100 "&c[Admin] "
/lp group mod meta setprefix 90 "&9[Mod] "
/lp group vip meta setprefix 50 "&6[VIP] "
/lp group default meta setprefix 0 "&7"

Priority number determines which prefix is used (higher = priority).

Setting Suffixes

/lp group mvp meta setsuffix 100 " &d[MVP]"

Custom Meta

Store custom data:

/lp group vip meta set join-sound LEVEL_UP
/lp group vip meta set chat-color &6

Negative Permissions

Explicitly deny permissions even with wildcards.

Denying Specific Commands

Give all Essentials except gamemode:

/lp group player permission set essentials.* true
/lp group player permission set essentials.gamemode false

Denying Dangerous Commands

/lp group builder permission set worldedit.* true
/lp group builder permission set worldedit.scripting.* false
/lp group builder permission set worldedit.super-pickaxe.* false

Permission Inheritance

How Inheritance Works

Child groups inherit all permissions from parent groups.

Example:

Default Group:
- essentials.home
- essentials.spawn

VIP Group (parent: default):
- essentials.fly

Inherited Result for VIP:
- essentials.home (from default)
- essentials.spawn (from default)
- essentials.fly (from vip)

Multiple Parents

Groups can inherit from multiple parents:

/lp group special parent add vip
/lp group special parent add builder

The "special" group now has permissions from both VIP and Builder.

Inheritance Priority

With multiple parents, weight determines priority:

/lp group vip setweight 10
/lp group builder setweight 20

Builder permissions override VIP if there's a conflict.

Configuring Specific Plugin Permissions

Vault Integration

Vault bridges permissions between plugins. Ensure it's installed:

  1. Install Vault plugin
  2. LuckPerms automatically hooks into Vault
  3. Other plugins can now read LuckPerms permissions

No configuration needed - works automatically!

Chat Plugin Integration

EssentialsXChat

Works with LuckPerms prefixes automatically:

Edit /plugins/EssentialsChat/config.yml:

format: '{PREFIX}{DISPLAYNAME}{SUFFIX}&r: {MESSAGE}'

ChatControl

Enable LuckPerms in ChatControl config:

Integration:
LuckPerms:
Enabled: true

Economy Plugin Integration

Plugins like Shops, ChestShop use Vault to check permissions:

shops.create - Allow creating shops
shops.admin - Admin shop features

Apply with LuckPerms:

/lp group merchant permission set shops.create true
/lp group admin permission set shops.admin true

Common Permission Configurations

Survival Server Setup

Default:

  • Basic commands
  • Homes (limited)
  • Teleport requests
  • Economy access

VIP:

  • More homes
  • /fly command
  • Colored chat
  • VIP kit

Staff:

  • Moderation commands
  • Teleportation
  • Inspection tools

Creative Server Setup

Default:

  • WorldEdit (limited)
  • Plot commands
  • Basic building

Builder:

  • Full WorldEdit
  • More plots
  • Schematic access

Architect:

  • FAWE features
  • Unlimited plots
  • Advanced tools

Minigame Server Setup

Default:

  • Join games
  • Basic commands
  • Stats viewing

VIP:

  • Vote power
  • Join full games
  • Cosmetics

Staff:

  • Game management
  • Player moderation
  • Server control

Troubleshooting Permissions

Player Can't Use Command

Check:

  1. Does group have the permission?
/lp group GroupName info
  1. Does user have the permission?
/lp user PlayerName info
  1. Is it negated somewhere?
/lp user PlayerName permission check permission.node
  1. Check inheritance:
/lp group GroupName parent info

Permission Not Working

Solutions:

  • Reload LuckPerms: /lp reload
  • Player relog (permissions refresh on join)
  • Check plugin is enabled: /plugins
  • Verify permission node spelling (case-sensitive)
  • Check for permission conflicts

Wildcard Not Applying

Solutions:

  • Some plugins don't support wildcards properly
  • Use specific permissions instead
  • Check plugin documentation
  • Try reloading plugin

Prefix Not Showing

Solutions:

  • Install Vault plugin (required)
  • Install chat plugin (EssentialsXChat, etc.)
  • Check prefix priority number
  • Reload chat plugin
  • Verify format in chat config

Changes Not Taking Effect

Solutions:

  • Reload LuckPerms: /lp reload
  • Restart server
  • Player must relog
  • Check for typos in commands
  • Verify changes saved in web editor

Permission Best Practices

Security

  • Never give wildcard (*) to regular players
  • Use negation to restrict dangerous commands
  • Regularly audit admin permissions
  • Limit who has LuckPerms management access
  • Use temporary permissions for testing

Organization

  • Use clear, descriptive group names
  • Document your permission structure
  • Keep inheritance simple (avoid complex trees)
  • Set appropriate weights
  • Use consistent naming conventions

Testing

  • Test permissions on alt account first
  • Use /lp verbose to debug
  • Check permission with /lp user X permission check Y
  • Test on development server before production
  • Keep backup of working configuration

Maintenance

  • Regularly review and clean unused groups
  • Update permissions when plugins update
  • Audit temporary permissions
  • Export backups: /lp export
  • Document all custom permissions

Advanced Topics

Permission Calculation

Understand how LuckPerms calculates permissions:

  1. Check user's explicit permissions
  2. Check user's group permissions (starting with highest weight)
  3. Check inherited permissions
  4. Apply negations
  5. Final result

Meta Priority

When using meta (prefixes/suffixes), priority determines which is used:

/lp group admin meta setprefix 100 "&c[Admin]"
/lp group mod meta setprefix 90 "&9[Mod]"

Player in both groups shows Admin prefix (higher priority).

Tracks

Automate promotion/demotion:

/lp createtrack rankup
/lp track rankup append default
/lp track rankup append vip
/lp track rankup append mvp

Promote player:

/lp user PlayerName promote rankup

Permission Verbose Mode

Debug permission checks:

/lp verbose on

Perform actions to see permission checks. Then:

/lp verbose paste

Get web link with detailed permission log.

Exporting and Importing

Export Permissions

Create backup:

/lp export backup-name

File saved to /plugins/LuckPerms/backup-name.json.gz

Import Permissions

Restore from backup:

/lp import backup-name

Migrate from Other Plugins

From PermissionsEx:

/lp migration permissionsex

From GroupManager:

/lp migration groupmanager

Need Help?

If you have questions about permission configuration:

With Loafhosts' LoafPanel and LuckPerms, configuring plugin permissions becomes manageable and intuitive. Create sophisticated permission structures that provide players with appropriate access while maintaining security and control over your server!

Updated on: 10/11/2025

Was this article helpful?

Share your feedback

Cancel

Thank you!