LuckPerms
Advanced permissions plugin with a powerful web editor, inheritance, contexts, and support for multiple platforms including proxies.
What is LuckPerms?
LuckPerms is the modern standard for permission management, replacing older plugins like PermissionsEx and GroupManager. Permissions are organised into groups with inheritance, so a 'vip' group can inherit everything from 'default' and add to it. Its standout feature is contexts — permissions that only apply in a given world, server or custom condition — and a browser-based editor that lets you drag nodes around and apply the result with one command. Data can be stored in flat files, SQLite, MySQL or MongoDB, which is what makes it usable across a whole proxy network.
Who it's for: Every server that needs ranks, staff tiers or per-world permissions, and especially proxy networks (Velocity/BungeeCord) where one permission set must stay consistent across multiple backend servers. It is built and maintained by Luck and sits in the permissions category.
Key features of LuckPerms
- Web-based permission editor
- Group inheritance
- Temporary permissions
- Context-based permissions
- Per-world and per-server permissions
- Weight and priority system
- Verbose permission checking
- Migration from other plugins
- Multiple storage backends
How to install LuckPerms
LuckPerms runs on Bukkit, Spigot, Paper or Velocity servers. Maintained for current Bukkit, Spigot, Paper and Velocity versions, with platform-specific builds. It runs on both modern and a wide span of older server releases.
- 1Stop your server, or have it ready to restart. Always back up your world and plugins folder before adding a new plugin.
- 2Download LuckPerms.jar (a build matching your server version) and place it in your server's /plugins folder.
- 3LuckPerms has no required dependencies, so it runs on its own once the jar is in place.
- 4Start the server fully. LuckPerms generates its configuration files on first launch — stop the server, edit them to taste, then start again.
- 5Confirm it loaded by checking the console for LuckPerms on startup, or by running one of its commands in-game.
Note: Drop the correct LuckPerms build for your platform into /plugins (the Bukkit build for game servers, the Velocity build for the proxy). For a network, point every server at the same MySQL or MongoDB database so groups stay in sync. The /lp editor command requires outbound internet access to generate the web editor link.
LuckPerms commands and permissions
Main commands
/lp user- Manages a single player — granting nodes, setting their primary group or adding temporary permissions.
/lp group- Creates and edits groups, sets inheritance and assigns prefixes, suffixes and weights.
/lp editor- Generates a one-time web editor URL where you edit users and groups visually, then applies the changes by pasting back a command.
/lp verbose- Streams every permission check a player triggers, which is the fastest way to find the exact node a feature requires.
/lp sync- Forces a reload from the storage backend, used after editing the database directly or on networked servers.
Permission nodes
luckperms.user.*- Full access to per-user management commands.
luckperms.group.*- Full access to group creation and editing.
luckperms.editor- Allows generating the web editor session — usually restricted to administrators.
luckperms.verbose- Allows running the verbose checker used for debugging permissions.
LuckPerms FAQ
How do I set up ranks with LuckPerms?
Create groups with /lp creategroup, give each its nodes (often via /lp editor), set inheritance so higher ranks inherit lower ones, then assign players with /lp user <name> parent set <group>. Prefixes are set with /lp group <group> meta setprefix.
Why does my prefix not show in chat?
LuckPerms stores the prefix but does not format chat itself. You need a chat plugin (EssentialsXChat, ChatControl, VentureChat) plus Vault so the chat plugin can read the prefix. Set the prefix with meta setprefix and confirm a chat formatter is installed.
What is a context in LuckPerms?
A context is a condition that scopes a permission, such as world=nether or server=survival. A node granted with a context only applies when that condition is met, which lets one player have different abilities in different worlds or on different network servers.
Can LuckPerms work across a BungeeCord or Velocity network?
Yes, and this is a primary use case. Install LuckPerms on every backend server and the proxy, then point them all at the same MySQL or MongoDB database. Edits made anywhere propagate to every server, optionally instantly with the messaging service enabled.
Do I edit permissions in a config file?
You can, but the web editor (/lp editor) and in-game commands are the intended workflow and avoid syntax mistakes. Direct file or database editing is supported but you must run /lp sync afterward so the live server picks up the change.
Features
- Web-based permission editor
- Group inheritance
- Temporary permissions
- Context-based permissions
- Per-world and per-server permissions
- Weight and priority system
- Verbose permission checking
- Migration from other plugins
- Multiple storage backends
Commands
/lp user/lp group/lp editor/lp verbose/lp tree/lp search/lp info/lp syncPermissions
luckperms.user.*luckperms.group.*luckperms.editorluckperms.verboseluckperms.treeluckperms.search