LuckPerms Guide: Groups, Ranks and Commands
On this page
LuckPerms is the permissions plugin almost every Minecraft server uses. It decides who can run which command: players get the basics, moderators get kick and mute, admins get everything. Ranks, prefixes in chat and promotion ladders all come from it.
This guide shows how to use LuckPerms from scratch — install, the ideas behind it, a ready-made player / moderator / admin setup, the web editor, and the commands you will use every week.
Install LuckPerms and give yourself access
- Download the right build from luckperms.net — Bukkit for Paper and Spigot, or the Fabric, NeoForge or Velocity build for those platforms. It needs Java 11 or newer, which every current server has.
- Put the jar in
plugins(ormodson Fabric and NeoForge), remove any other permissions plugin, and restart the server fully. - Give yourself access from the console. At first nobody can use LuckPerms commands, not even you:
lp user YourName permission set luckperms.* true
From then on you can use /lp in game. On the first start LuckPerms downloads a few libraries, so the server needs internet access.
Run LuckPerms on a server that is online for your players: HytHost Minecraft hosting from €2.59/mo, MySQL included.
See Minecraft plansGroups, inheritance, weight and tracks
- Permission nodes are the keys, such as
essentials.homeorminecraft.command.gamemode. Each one can be true, false or not set. - Groups hold permissions. Every player is in
default; you add the rest. - Inheritance: a group can have parent groups and gets everything they have. If
admininheritsmod, andmodinheritsdefault, admins have all three. - Weight decides which group wins when two disagree — the higher number wins. Steps of 100 leave room for groups you add later.
- Tracks are promotion ladders, such as
default → helper → mod → admin, used withpromoteanddemote. They do not change inheritance on their own. - Contexts limit a permission to a server or world, for example
world=survivalat the end of a command.
A ready-made player, moderator and admin setup
Create the groups, chain them, and give each the permissions it needs. The node names below are for EssentialsX commands; swap in the nodes of the plugins you use.
lp creategroup mod lp creategroup admin lp group mod parent add default lp group admin parent add mod lp group mod setweight 100 lp group admin setweight 200 lp group default permission set essentials.home true lp group default permission set essentials.sethome true lp group default permission set essentials.spawn true lp group default permission set essentials.tpa true lp group default permission set essentials.tpaccept true lp group default permission set essentials.msg true lp group mod permission set essentials.kick true lp group mod permission set essentials.mute true lp group mod permission set essentials.tempban true lp group admin permission set essentials.* true lp group admin permission set luckperms.* true lp user Steve parent add mod
Then a track for promotions:
lp createtrack staff lp track staff append default lp track staff append mod lp track staff append admin
lp user Steve promote staff moves Steve one step up. The full EssentialsX command and node list is in the EssentialsX guide.
Prefixes and ranks in chat
Set a prefix on a group:
lp group admin meta setprefix "&c[Admin] "
LuckPerms stores the prefix; a chat plugin has to show it. Install Vault and a chat plugin that reads from it, such as EssentialsX Chat. If players have several groups, the prefix with the highest priority is used — set it with meta setprefix 100 "...".
The LuckPerms web editor
For bigger changes, the editor is easier than commands. Run /lp editor, open the link it prints, and edit groups, users and tracks in your browser. When you save, the editor shows a command — run it in game or in the console, and the changes apply. Nothing changes on the server until you run that command.
LuckPerms commands you will use
| Command | What it does |
|---|---|
/lp user <user> info | Shows a player's groups and details |
/lp user <user> permission set <node> true | Gives one player a permission |
/lp user <user> permission unset <node> | Removes it again |
/lp user <user> permission check <node> | Shows whether a player has a permission |
/lp user <user> parent add <group> | Adds a player to a group |
/lp user <user> parent set <group> | Puts a player in only that group |
/lp user <user> parent addtemp <group> <duration> | A temporary rank, for example 30d |
/lp group <group> permission set <node> true | Gives a whole group a permission |
/lp creategroup <group>, /lp listgroups | Creates a group, lists them |
/lp group <group> parent add <group> | Makes a group inherit another |
/lp user <user> promote <track> | Moves a player up a track (demote moves down) |
/lp group <group> meta setprefix <prefix> | Sets a group's chat prefix |
/lp editor | Opens the web editor |
/lp verbose record, then /lp verbose upload | Records permission checks to find a missing node |
/lp sync | Reloads data from storage |
Not sure which node a command needs? Run /lp verbose record, use the command as the player, then /lp verbose upload — the report shows every permission that was checked.
LuckPerms on a HytHost server or network
- Install by uploading the jar to
pluginsin the file manager or over SFTP, then restart from the panel. Run the firstlp user ... luckperms.*command in the Console tab. - One server: the default H2 storage is fine.
- A network: install LuckPerms on the proxy and on every backend, and point all of them at the same MySQL database with
storage-method: mysqlinconfig.yml. Every HytHost Minecraft plan includes MySQL databases; setting up the proxy itself is covered in how to set up a Velocity proxy.
Paper, Velocity and MySQL on every plan — HytHost Minecraft hosting from €2.59/mo.
See Minecraft plansFrequently asked questions
From the server console, run lp user YourName permission set luckperms.* true. After that you can use all /lp commands in game.
Use /lp user PlayerName parent add groupname. To make that group their only one, use parent set instead of parent add.
LuckPerms only stores the prefix. You also need Vault and a chat plugin that reads it, such as EssentialsX Chat. If a player has several groups, the prefix with the highest priority wins.
Run /lp verbose record, have the player use the command, then /lp verbose upload. The report lists every permission the server checked, including the one that failed.
Yes. Install it on the proxy and on every backend server, and connect all of them to the same MySQL or MariaDB database so ranks are shared.
Ranks, permissions and a server that stays up
HytHost Minecraft hosting runs Paper or Velocity with LuckPerms, MySQL databases and automatic backups — from €2.59/mo.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursWas this guide helpful?