bPermissions
bPermissions
Welcome to bPermissions, a Superperms Manager for Bukkit! bPermissions focuses on being unique from the rest of the Permission managers. It's very simple to set up and use, it's lightning fast, fully featured, and has a great support team!
Some features:
- bPermissions has a gui client specifically designed to make running a server so easy that you'll forget that you ever used any other permissions plugin. Get it here!
- bPermissions has a unique command structure, never before seen in a permission manager. It's best used for adding lots of nodes to a user or group from the console or in-game, less typing!
- bPermissions has everything you would expect from a Permissions manager. Prefix and suffix support, inheritance, per-player permissions, multiworld support, promotion/demotion tracks, and even group priorities for multi-group setups.
- Note - bPermissions only defines prefixes and suffixes. You need a chat plugin such as bChatManager for them to show up in chat.
Commands
Say you have a user called 'Bob' and you want to put him in the group 'admin' and give him the prefix 'awesome'.
- /world yourmainworld - selects the world "yourmainworld"
- /user bob - selects the user "bob"
- /user setgroup admin - set bob's group as "admin"
- /user meta prefix awesome - set bob's prefix to "awesome"
You can do the same with groups!
- /world yourmainworld - again, selects the world
- /group admin - selects the group "admin"
- /group addgroup moderator - makes the admin group inherit from the moderator group
- /group meta prefix &c[Admin] - sets the admin prefix to "&c[Admin]"
Some other commands are as follows
- /permissions (or /bperms,/bp,/p) - general commands for bPermissions are prefixed by this
- /permissions import pex - import a pex permissions.yml in the pex folder
- /permissions reload - reloads your bPermissions files
- /permissions save - if auto-save is false, this saves your perms
- /permissions backup - backup your permissions
- /permissions helpme - for the lazy among you, this spews out some basic permissions files into your folder.
In order to use these commands, you'll need the permissions node bPermissions.admin
For configurable /promote and /demote tracks, you'll want to use permissions tracks. To read about those, visit this page
Want more commands? We have some others over on the commands page. Check 'em out!
Editing Files
bPermissions creates per world groups.yml and users.yml files in the bPermissions folder, which allow you to configure permissions on a per world basis.
Because bPermissions was designed to be configured largely via commands, bPermissions will often overwrite changes to these files especially if you /reload or restart the server.
If you've edited the files, you MUST use /permissions reload to load the modified files into the server, otherwise the permissions changes won't apply. Because a standard /reload unloads all plugins like a server stop, we cannot tell the difference between them and this will overwrite changes to your files with whatever the server last stored.
World mirroring
Worlds are mirrored like so:
world_mirroring_to: world_mirroring_from world_nether: world world_the_end: world
This duplicates the whole config for that world. Currently there's no way to have just the users or the groups mirrored, stay tuned for an update that adds this!
bPermissions and EssentialsChat
Allow me to put this issue to bed. Essentials Chat + bPermissions works for prefix and color.
This guide is for current users of EssentialsChat and want to use bPermissions along with it.
Players have colored rank prefixes and faction chat modes are also colored. All text can be colored by the players too using color codes such as &c.
bPermissions\world\groups.yml ( code snippet )
default: default groups: ## Peasant ## default: permissions: - group.default - group.userannouncer - group.userauction groups: - userannouncer - userauction meta: priority: '100' ## Citizen ## rank1: permissions: - group.default - group.rank1 groups: - default meta: priority: '200'
It has nothing configured for prefix but the group names are important (default, rank1)
Essentials\config.yml ( Code Snippet )
change-displayname: true #add-prefix-suffix: false player-commands: - chat.color - chat.format - chat.shout - chat.question chat: radius: 0 group-formats: default: '&8&lPeasant &r&8{DISPLAYNAME}&7:&r {MESSAGE}' rank1: '&8&lCitizen &r&7{DISPLAYNAME}&7:&r {MESSAGE}' moderator: '&e&l[Mod] &r&3{DISPLAYNAME}&7:&r {MESSAGE}' admin: '&c&l[Admin] &r&e{DISPLAYNAME}&7:&r {MESSAGE}'
Please direct all other Essentials support to their official support networks.
How do I get support?
First, we highly recommend you go read the FAQ page. If the answer isn't there, there's a few options of support.
- Visit the #bananacode irc channel on irc.esper.net. Just head there, as your question, and wait for someone to help you. It might be a while before you get an answer, so be patient!
- You can file a ticket. This is recommended if you don't have the time to hang around in the IRC or you have a bug report. Be prepared to check back to the ticket though, and make sure you attach your bPermissions groups and users yml files to the ticket.
- Comment on the bPermissions main page.
Note that as there's only one (slightly inactive) maintainer at the moment, any support queries may take some time.
However you choose to get support, "pls dont use txt spk," and make sure you use actual grammar.
I'm a developer!
If you wish to hook your plugin into bPermissions, please see the Developer Page for more information! If you wish to contribute code to bPermissions, fork us on GitHub!
Jenkins
Development builds of this project can now be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff, and are possibly buggy. Use them at your own risk.
1.9 Support
No changes needed to support 1.9 bukkit - should just work fine.
Will be pushing a new beta today or tomorrow regardless.
@Azfaloth
Yeah, I should make it so /bp reload also reloads custom perms. I'll add that in the next beta
Later today I'll write an example on how to use custom nodes and put it in the documentation
@rymate1234
Thank you very very much! With 6 different worlds this makes things soo much easier for me! This was one thing I was really hoping for. The problem was that there is no official description on how to use it and with what formatting. Please add this into the main body of your text somewhere as reference. I remember trying with many formats and going through all the tickets trying to make it work and I couldnt. Surely there are others like me who struggled and failed. But now with your simple example it seems to be working! I will let you know if I run into any issues. I must immediately go and edit all my permissions to exploit custom nodes :D
Edit - Now I see! It works only on server restart. But you cannot add in permissions to custom nodes and use /permissions reload to have them work.
@MigueloRONTONTON
what command are you trying to run?
@Azfaloth
I'll take a look, thanks for the reminder
EDIT: custom nodes seems to be working for me, using this small test file:
Do we have any update on customnodes.yml? I posted a ticket about this long ago but it was not seen I think. This would be quite helpful if it was finally made to work.
Thank you very much for all your hard work on this plugin!
Why when i put a command the game says to me that the command is very long (something like that) pls help me!
@cobwebster
The beta update fixed the lag, thank you very much bperms <3
Where can I get a beta version? I need this bug fixed.
@rymate1234
Using Bperms 2.10.9m
@cobwebster
I'm aware of the issue and working on resolving it, are you using one of the 2.12 betas or the last 2.10 stable version?
When new people join our server it lags, I ran a timings report and bperms is using a lot of processes.
This recently occurred on our server and took it down: http://pastebin.com/ueK3xSdA
@rymate1234
Thank you. I look forward for that update :) :)
@AKlarvanto
yeah, codename_B no longer has the source code for the web gui
I'll have to produce a new version - most likely it'll be an update to JPanel http://dev.bukkit.org/bukkit-plugins/jpanel/
@AKlarvanto
I'll get in contact with him and see if I can get access to updating the plugin. I've just tried it with the latest bPermissions beta and it needs a bit of updating to work fully with how users are loaded into the server now.
@rymate1234
codename_B was an author of it. He is no longer available? However, plugin is found at http://dev.bukkit.org/bukkit-plugins/bpermissionswebgui/ You probably know all that but just an FYI
@AKlarvanto
only showing UUIDs is probably expected behaviour, as that's how usernames are stored in bPermissions in newer versions.
unfortunately, it's unlikely that the web GUI will be updated, as I don't have access to the source code for it
Web GUI is the only reason I'm still stuck with very old version of bPermission. It is so easy to use and manage player permissions. I noticed you have put lots of hard work on getting new bP release out but will GUI be updated as well or is it gone forever? Last time I tested, GUI showed UUID codes and not player names and that made it pretty much useless.
SO. i found out recently that you cant use nicknames with this plugin. Totally not worth it.
The Future of bPermissions
As bPermissions 2.12 development is progressing at a steady pace, I thought that I would do a quick uopdate on my future plans for bPermissions.
The top priority at the moment is to get a stable build of bPermissions 2.12 out. This will hopfully fix most of the issues people are having with bPermissions. I don't have an ETA for this, however I hope to have it completed in the next couple of months.
After 2.12, the long term plan is for a large update to bPermissions 3.0. The main feature of this update is that bPermissions will officially support the SpongeForge server mod. This is a new Minecraft server side modding api that was released into beta a few days ago. Like Bukkit, it allows plugin developers to make server side plugins for minecraft, however it differs in that it is made in the form of a Forge mod. This makes it more suitable for servers that include mods.
Another feature I'm considering for the 3.0 update is the inclusion of an SQL based storage for groups and users. I have in the past decided not to implement SQL based storage due to the large amount of work needed to recode bPermissions to take full advantage of SQL queries. Currently, bPermissions loads all of the data from the groups and users files into an in memory store, wth all changes to groups / users done ingame happening on the in memory store first before being commited to the files upon saving. I am currently investigating ways that I can potentially use SQL databases as a datastore without massively reworking how bPermissions works. If I can find a way to implement it, I will add it as an optional storage backend.
@Alexf0x2011
You wanna explain what's going on, so we know what exactly we're helping you with here??
Don't put a group in "groups" like this, if you're just going to try to take away the permissions for it in the first place. First of all, it doesn't work that way negating a group like that.
Secondly, "Groups" is intended to be the group of permission nodes THIS group inherits. You're trying to create redundancy here.. Don't..
Thirdly, you have to list after "groups" don't put it in brackets.
Again, you're giving this group an inherited groups permissions, then you're trying to take away with a negated permission of that group. Which doesn't work anyway... Either grant them the inheritance or leave groups empty...
Simple as that.
ALSO, from F.A.Q page...
One or two of your groups are trying to use * as a permission. DO NOT.
It doesn't work.. bpermissions does not auto grant anyone with a * permission node, all permissions.. Take it out...