A permissions plugin for Minecraft servers.
Go to file
2017-10-22 14:22:52 +01:00
.locale Add hu_HU locale - thanks @montlikadani 2017-10-03 19:04:47 +01:00
api Remove usage of the now-redundant ExtractedContexts class, other misc cleanup 2017-10-15 14:23:51 +01:00
bukkit Apply PermissionAttachment permissions at a higher priority than normal nodes using the transient system (#515) 2017-10-22 10:24:04 +01:00
bukkit-legacy Add tracing to /lp verbose, API updates/cleanup, add login process event, and utilise string interning for faster context/node comparisons 2017-09-10 21:25:00 +01:00
bungee Fix migrating null / non-existent usernames - reverts parts of 6bfeec6, fixes #514 2017-10-22 09:07:08 +01:00
common Mode storage refactoring - write group nodes into their own section in flatfile types (#502) 2017-10-22 14:22:52 +01:00
sponge Mode storage refactoring - write group nodes into their own section in flatfile types (#502) 2017-10-22 14:22:52 +01:00
.gitignore Update .gitignore 2016-10-30 13:37:25 +00:00
CODE_OF_CONDUCT.md Add project Code of Conduct 2017-09-22 16:09:50 +01:00
LICENSE.txt Cleanup poms, update copyright header 2017-04-15 19:01:52 +01:00
pom.xml Bump dependency versions 2017-09-23 23:36:13 +01:00
README.md Update readme 2017-10-12 20:25:51 +01:00

alt text

LuckPerms Build Status

LuckPerms is an advanced permissions implementation aiming to be a fast, reliable and flexible alternative to existing permission plugins. The project's main goals are centered around high performance and a wide feature set, filling the gaps of functionality and building upon existing features found in other plugins.

LuckPerms also includes an extensive API for developers, and support for a variety of Minecraft server software & data storage options.

See the charts below for a partial list of features & comparison with other providers.

Building

LuckPerms uses Maven to handle dependencies.

Requirements

  • Java 8 JDK
  • Maven 3.3.x (the older versions will not work.)
  • Git

Then run

git clone https://github.com/lucko/LuckPerms.git
cd LuckPerms/
mvn clean package

You can find the output jars in the target directories.

Contributing

In order to contribute to and make changes to the plugin, you will need the dependencies listed above, plus the Lombok plugin for your IDE.

Pull Requests

If you make any changes or improvements to the plugin which you think would be beneficial upstream, please consider making a Pull Request to merge your changes back into the upstream project. (especially if your changes are bug fixes!)

LuckPerms loosely follows the Google Java Style Guide, with a few minor changes here and there. Generally, try to copy the style of code found in the class you're editing.

Project Layout

The project is split up into 5 seperate modules.

  • API - The public facing API classes used by other plugins when integrating with LuckPerms. This is basically just a collection of interfaces implemented inside of the plugin.
  • Common - This includes all of the classes shared by separate implementations of LuckPerms. This is where the bulk of the project is.
  • Bukkit, BungeeCord & Sponge - Includes all of the platform specific classes used to implement LuckPerms on each of the 3 supported platforms.

License

LuckPerms is licensed under the permissive MIT license. Please see LICENSE.txt for more info.

Why use LuckPerms?

The main features of LuckPerms are detailed on this wiki page: Why LuckPerms?

Bukkit

See here for a comparison chart showing the differences between LuckPerms and other permission plugins for Bukkit.

Sponge

LuckPerms is currently the only maintained and 'working' permissions plugin for Sponge servers.

Thanks

Thanks to ej-technologies for granting LuckPerms an open source licence to their Java Profiling Software.