A LuckPerms setup guide for Minecraft servers: create groups, inheritance, weights, prefixes and temporary ranks with exact commands and the web editor.
What LuckPerms does
Permissions decide who can use which commands and features. LuckPerms is the most widely used permissions plugin for Java servers. It lets you create groups (ranks) such as member, vip and moderator, give each group permissions, and have higher ranks inherit from lower ones, so you never need to repeat yourself.
Install it
- Download LuckPerms for your server type from its official page (Bukkit/Paper for most servers).
- Put the jar in the plugins folder and restart.
- If another plugin shows your rank in chat, install Vault as well. Some plugins need it to read prefixes.
- Run /lp info in the console to confirm it is working.
Open the web editor
The easiest way to start is the web editor. Run the command below, open the link it prints, make your changes in the browser, then press Save and run the apply command it gives you:
/lp editorEverything below can also be done with commands, which is handy for scripts and for fixing things from the console.
Build a simple rank ladder
New players are in the group called default. Build upwards from there. Create the groups, then make each one inherit from the one below it:
Create the groups
/lp creategroup member
/lp creategroup vip
/lp creategroup moderator
/lp creategroup adminMake higher ranks inherit from lower ones
/lp group member parent add default
/lp group vip parent add member
/lp group moderator parent add vip
/lp group admin parent add moderatorSet weights so the highest rank wins when someone has several
/lp group member setweight 10
/lp group vip setweight 20
/lp group moderator setweight 50
/lp group admin setweight 100Give permissions
A permission is a short text like essentials.home. Set it to true to allow it or false to deny it. Give each permission to the lowest rank that should have it, and higher ranks inherit it:
/lp group default permission set essentials.spawn true
/lp group member permission set essentials.sethome true
/lp group vip permission set essentials.fly true
/lp group moderator permission set essentials.kick trueFind the correct permission names in each plugin's documentation. Do not give wildcard permissions such as * to anyone except the owner, and never to a rank players can buy.
Add a prefix to chat and the tab list
A prefix is metadata. The number after setprefix is its priority, and the highest priority wins. The ampersand codes set colours. Your chat or tab plugin has to read the prefix. With Vault installed, most chat plugins do this automatically.
/lp group vip meta setprefix 100 "&6[VIP] "
/lp group moderator meta setprefix 100 "&b[Mod] "Put a player in a rank, even temporarily
Permanent
/lp user PlayerName parent add vipFor 30 days, then it expires by itself
/lp user PlayerName parent addtemp vip 30dSwitch from one rank to another
/lp user PlayerName parent set memberDebugging: why can't they do that?
- Run /lp user PlayerName permission check some.permission.node to see whether they have it and why.
- Turn on /lp verbose on, have the player try the action, then /lp verbose off and read the output. It lists every permission the plugin asked about.
- Check the rank's inheritance with /lp user PlayerName info and look for a false that is overriding a true.
Storage and safety
- LuckPerms stores its data in a file database (H2) by default. Do not edit those files while the server is running; stop it first, or use commands.
- Back up the LuckPerms folder with the rest of the plugins.
- Only give operator status (/op) to people you fully trust. Use LuckPerms groups for everyone else.
Frequently asked questions
How do I create a rank in LuckPerms?
Run /lp creategroup vip, then give it permissions with /lp group vip permission set <node> true. Make it inherit from a lower rank with /lp group vip parent add member.
How do I give a player a rank in LuckPerms?
Use /lp user PlayerName parent add vip. For a temporary rank, use /lp user PlayerName parent addtemp vip 30d.
How do I add a prefix with LuckPerms?
Use /lp group vip meta setprefix 100 "&6[VIP] ". Your chat or tab plugin must read the prefix, and Vault helps with that.
How do I find out why a player cannot use a command?
Run /lp user PlayerName permission check <node>, or turn on /lp verbose on, have them try again and read the output. Look for a false that overrides a true in an inherited group.