bPerm none

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!

Since codename_B is now focusing on the new 3.x branch of bPermissions, he has handed over control over 2.x to me (rymate1234).

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.

Video tutorial!

Thanks to james00000001 for the tutorial


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

Want more commands? We have some others over on the commands page. Check 'em out!

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
## Peasant ##
    - group.default
    - group.userannouncer
    - group.userauction
    - userannouncer
    - userauction
      priority: '100'
## Citizen ##
    - group.default
    - group.rank1
    - default
      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
  - chat.color
  - chat.format
  - chat.shout
  - chat.question
  radius: 0
    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!


Development builds of this project can now be acquired at the provided continuous integration server. \o/ These builds have not been approved by the BukkitDev staff, and are possibly buggy Use them at your own risk.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of rymate1234 rymate1234 Nov 24, 2015 at 14:08 UTC - 0 likes

    @tcarey2015: Go

    For a start, saving and loading files is done in a seperate thread - this should not cause server lag on the main thread.

    Secondly, files are only loaded in three instances:

    1. When the server starts
    2. When running the command /bp reload
    3. When a new world is created (for instance with a plugin like Multiverse)

    Once loaded, the files are only only touched when they're saved, which happens in two instances:

    1. When the permissions, meta or groups of a player or group are changed (this can be disabled in the config file)
    2. When running the command /bp save

    Other than that, bPermissions NEVER touches the files. It doesn't read the files every time a player joins, or when calculating a players permissions if they change ranks. This is all handled in memory - with files only touch when putting the new rank on the player.

    Of course, an SQL backend is likely to be faster, but are a couple of reasons why I'm reluctant to work on an SQL backend:

    • I don't have time to work on a robust SQL implementation
    • In order to take full advantage of SQL, quite a few bits of bPermissions will need to be recoded to take advantage of SQL

    If you really need SQL in your permissions plugin, there are currently many permissions plugins available that do support it, which you probably could've chosen rather than a permissions plugin which has no current SQL support.

    If you want to help me improve bPermissions as it currently exists though, there's a couple things you can do:

    1. Try the update out I posted, and see if it improves things.
    2. Either pastebin or PM me your users.yml and your groups.yml. I do not have a public Minecraft server, so having a full set of users and groups would help massively for debugging. A list of plugins would also be nice, so I can shove them all in the server folder as well

    Sorry if this comment seems a bit ranty, you've honestly done very little to help resolve your issue. A single timings file does not help when debugging an issue relating to your users / groups configs. I also find it unlikely that bPermissions causes lag whenever a player logs off, as was mentioned in your first comment, as bPermissions doesn't even do anything when a player logs off.

    Last edited Nov 24, 2015 by rymate1234: fix formatting
  • Avatar of tcarey2015 tcarey2015 Nov 24, 2015 at 12:20 UTC - 0 likes

    If you used sql u probably wouldn't have as much lag rymate.

    Even after cleaning my permissions files every month it still lags . Your recent update won't help me much.

    I am pretty sure the reason for the lag is how you are saving things. Maybe it's also flatfile related.

    Last edited Nov 24, 2015 by tcarey2015
  • Avatar of rymate1234 rymate1234 Nov 22, 2015 at 11:56 UTC - 0 likes

    @DontKillCZ: Go

    MySQL support

    no, sorry

    bungee mode

    probably not

  • Avatar of DontKillCZ DontKillCZ Nov 21, 2015 at 20:40 UTC - 0 likes

    Good plugin, but can you add MySQL support? And... hmm bungee mode? This right good.

  • Avatar of tcarey2015 tcarey2015 Nov 14, 2015 at 20:06 UTC - 0 likes

    Someone else made a ticket about it and I also showed my timings.  It's very close to the top of the list.  You must be having a lot of fun wasting your time looking for a ticket that doesn't exist to make your ego bigger on dev bukkit.

  • Avatar of sakura_blades sakura_blades Nov 13, 2015 at 00:50 UTC - 1 like

    @tcarey2015: Go

    Right, cause I'm the nucklehead posting to a plugin's page to complain how awful it is. Stating I opened a ticket that never got answered, but now I'm saying I removed that ticket because i just don't care anymore, but the ticket that I have that is STILL there, I resolved.

    Show me your logic? I don't understand here...

    Also, you claim "this lags me" what proof you have that it is bperms? Just your best guess? I don't see any timings you've posted, nothing. For all I can see here, is you're just cranky and pointing fingers at the first thing you can grasp your hands on.
    Stop being a whinny little kid, swap your perms plugin already, and stop trying to deter people away from plugins that you've up and decided are "bad" simply because you want to point fingers with no proof.
    And worse off, want to try to come back at someone attempting to help you resolve you "ignored ticket" (which you have claimed to have already removed/deleted) and get nasty with.

    If you're not using the plugin anymore, leave the page be, unsubscribe and move on. You're posts here are no longer relevant and your initial was rude and uncalled for in the first place. You don't go around on other servers claiming yours is better do you? Don't do that with plugin pages either guy... It's rude.

    Also News: I hate to break it to you buddy, but even if you create a ticket, abandon it or otherwise. There is still a record of it. Having gone back through 2 years of Tickets made for bPermissions. THAT IS the only ticket created by you.. So unless you're one of those people that lurk around on the same sites, with multiple logins... You either A: Didn't make a ticket at all and just want to assume things. -or- B: That IS the ticket you made, and because you've been pointed out to be wrong somewhere here, are upset...
    So unless that ticket is magically hiding somewhere, and I highly doubt it. But feel free to prove me wrong with a link to it...
    My conclusion: You're angry. It happens. Get over it, go get your other plugin and move on. With an attitude like that, it's not going to get you far in life though. And you should probably thank someone for trying to help you out, rather than turning around foaming at the mouth like you did.. Doesn't make you look cool buddy.

    Last edited Nov 13, 2015 by sakura_blades
  • Avatar of tcarey2015 tcarey2015 Nov 12, 2015 at 02:17 UTC - 0 likes

    That's not the ticket I was talking about.  I solved that issue on my own.  Don't assume you know what ticket I posted that didn't get answered you dimwit.

  • Avatar of sakura_blades sakura_blades Nov 11, 2015 at 22:36 UTC - 1 like

    @tcarey2015: Go

    You fail to mention your bpermissions version in your ticket, just posting an error and your server version doesn't provide all the information for someone to help you either.

    From the looks of this, it's an ERROR, not "lag".
    So no, changing your permissions plugin won't solve your "lag" because it isn't lag. It's an error, which means your version is wrong or something is wrong with your files.

    Looking at this error, I'm going to say it's probably a file error, or a conflict within your setup or version. But what would I know? You provide so little information in your ticket to begin with, that someone who DOES NOT code or 'completely' understand errorlogs of code they cannot read themselves, couldn't begin to tell you otherwise without an educated guess.

    So before you go BLAMING bpermissions for what appears to be an actual error somewhere on your part. How about you provide a little more information on your ERROR, so that your ERROR can be resolved.
    It's not lag.. It's an error..

    For the record, I have used bperms for years. I run a 1.8.8 server myself with bperms. I have had 0 issues, what-so-ever and there is NO lag on my server, NO errors that come up in my console, and I also use HeroChat and a slew of custom plugins otherwise.
    net.milkbowl.vault.chat.plugins.Chat_bPermissions2.getPlayerSuffix(Chat_bPermissions2.java:107) - Vault
    com.dthielke.herochat.StandardChannel.applyFormat(StandardChannel.java:139) - HeroChat

    bPerms is trying to communicate with these, and something is going wrong.
    org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) - Here is your lag... bPerms is struggling to communicate because something is wrong with your versions/setup. It's locking up your main server thread as a result.
    de.bananaco.bpermissions.imp.YamlWorld.setupPlayer(YamlWorld.java:316) - This makes me think it may be a file thing specifically.

    But lack of information otherwise, I cannot help you. Stop placing blame until you have all your information. Just because a plugin is having errors, doesn't mean it's the plugin's fault. It's something you've done wrong setting it up. This error proves that, and I can attest to bPerms being just fine as it's working 100% for me no issues.

    Last edited Nov 11, 2015 by sakura_blades
  • Avatar of tcarey2015 tcarey2015 Nov 10, 2015 at 19:36 UTC - 0 likes

    @sakura_blades : I already posted tickets , they aren't being looked at.  Yes switching perms would fix this issue.

  • Avatar of sakura_blades sakura_blades Nov 08, 2015 at 01:47 UTC - 0 likes

    @tcarey2015: Go

    I have never had any issues with bpermissions. Just because you have been having trouble within your setup does not necessarily mean that it is bperms itself. Perhaps somewhere the communication with your permissions is causing problems or perhaps you should update your version.

    If you are convinced it is a bperms lag issue, perhaps the best approach would be to explain your situation, why you think it's bperms all in a ticket to the developer. Rather than posting "don't use this" comments on the page.
    Ultimately that doesn't really help anything, doesn't help bperms improve if it's there issue. Doesn't help you resolve your issue, if it isn't actually bperms and is something else entirely or related otherwise.. Which if the latter is the case, switching permissions won't solve your problem.


Date created
Aug 25, 2011
Last update
Nov 21, 2015
Development stage
  • enUS
Curse link
Recent files