The plugin Ultra Permissions from TechsCode is one of the highest rated permissions plugins on spigotmc.com. Let’s answer your questions right off:
Is it compatible with all plugins? Yes!
Is it graphical and easy to use? Yes!
Does it support BungeeCord and MySQL? Yes!
Rating: (5 / 5)
|Monitor Permission Checks||PASS|
|Create and Manage Groups||PASS|
|Network Ready||DIDN’T TEST|
|Local and Global Permissions||DIDN’T TEST|
|Subgroups and Inheritance||PASS|
|Placeholder API support||PASS|
- As a server operator, you do not have access to the plugin configuration. This is documented. The first setup step is ‘upc addSuperadmin TheCritic’
- At default screen resolution, the graphics hang off the screen on the left. Be sure to use in full screen.
- I wish you could add permissions to users and add users to groups before they have logged in.
- When removing groups, the GUI explains I should press the Q key, but I remapped “DROP” to the = key because I kept throwing my sword at mobs. So the remove function isn’t mapped to the Q key, it is mapped to “DROP”. StyleFile.yml will let you edit this and it looks like all text.
You can see that Ultra Permissions reports an impressive feature list.
- Managing Players
- The plugin gives you a GUI chest based interface to edit your users and groups.
- Tests show: PASS This works as advertised. Also, I found the menus and GUI elements to be well thought out and complete. The interface uses Right Clicks, Left Clicks and other button presses to make the complicated process of permission management an easy to understand and pleasant experience.
- Adding Permissions
- This is where the plugin really shines. There are two other features called out which come together to make this easy and elegant; Permission Suggestions and Monitor Permission Checks. Basically, using the GUI interface you can choose permissions from plugins, and assign them to players or groups.
- Tests show: PASS Adding permissions to users and groups worked easily and intuitively.
- Monitor Permission Checks
- You use a command, but it returns back an error: “You don’t have permission for this command.” Which permission do you need to add? Now you start your trek through the documentation of the plugin to see if the developer documented the permissions, and did they keep the documentation up to date. Well, reading the documentation is always a great idea, but now you don’t have to. This plugin will tell you every time the system checked your permissions, and whether the permission check passed or failed. This allows you to easily see what permission is needed, and add it, without ever needing to find that documentation.
- Tests show: PASS I was able to easily add permissions to users directly and to groups. These permissions were applied instantly, no need to restart or reload.
- Create and Manage Groups
- Groups can be created and permissions added to each group. Users which are put into groups will get the permissions from the group. The group will by default become the user’s prefix in scoreboard and chat. Groups can inherit permissions from other groups, making hierarchal permission structures possible and easy to maintain.
- Tests show: PASS This feature works as expected. Inheritance is easy to configure.
- Permission Suggestions
- The plugin interrogates the other plugins installed, and presents the permissions used in the GUI interface. It also downloads known permissions from the cloud automatically. It is easy, and it just works.
- Tests show: PASS The plugin accurately displayed all of the permissions available in the test, even showing me some I didn’t know were there.
- Everything I needed to do from the console, I could. Adding and removing permissions from users and groups, and also adding and removing groups.
- Tests show: PASS This feature passes. In addition to the basic functionality, I noticed you can also add a user to a group for a specific amount of time. /upc addGroup TheCritic Premium 30d
- Subgroups and Inheritance
- You can create groups which inherit permissions from subgroups. For instance, imagine you had a group structure like this: guests, members, staff, admin. You can give all permissions which are needed to guests, then members can inherit from guests. So you would only add the permissions to the member group which are added to the guest group. You would only add the permissions to the staff group which are added to the member group. The plugin makes managing hierarchal groups almost effortless.
- Tests show: PASS It is easy to view your inherited groups in the GUI interface.
- Placeholder API support
- The Placeholder API is not required for Ultra Permissions to function, but adding it opens up some neat features. Theoretically, you can reference Ultra Permissions groups using placeholders in other plugins, though I could not test that. What I was able to test was using the Placeholder API to insert cool data items into the chat template and the scoreboard.
- Tests show: PASS
Testing performed with Spigot 1.13.2 built October 29, 2018.