Inactive [ADMN/DEV] Permissions 3.1.6 - The Plugin of Tomorrow [935]

Discussion in 'Inactive/Unsupported Plugins' started by rcjrrjcr, May 24, 2011.

Thread Status:
Not open for further replies.
  1. Offline


    Permissions 3.1.6 (Yeti)

    Latest Stable (3.1.6) : Full Zip | Main Jar Only | SQL Interface Jar Only

    Previous Versions:
    3.1.5 (JAR|SQL) | 3.1.4 (JAR|SQL) | 3.1.3 (JAR|SQL) | 3.1.2 (JAR|SQL) | 3.1.1 (JAR) | 3.1 (JAR) | More older versions

    Feel free to comment and give suggestions.


    • Revamp commands
    Known plugins that cause IllegalAccessError(s):

    • Help (not fixed yet)
    Temp Fix for IAEs (open)

    1. Open Help's JAR with 7zip.
    2. Find MANIFEST.MF (it can be in the root folder or in the META-INF folder, or both).
    3. Open the MANIFEST.MF file in a text editor
    4. Look for a line that starts with "Class-Path:".
    5. Delete "Permissions.jar" from that line.
    6. Save the manifest.
    7. 7zip will prompt you to save changes back into the archive. Accept.
    8. Restart server.

    Plugin Authors: How to hook into Permissions

    Due to @TheYeti being busy in RL for now, I have created a new thread for Permissions 3.x. TheYeti is still part of the Permissions team.

    Permissions... Reborn.
    This is a continuation of the work that was originally done by Nijikokun. All original credit goes to them as without their work this plugin would not have been possible. This plugin does not provide any commands or additional functionality beyond what is described in this post. That means that you need another plugin to provide colored names, chat prefixes, and op commands such as /give and /time.​

    The Permissions Team

    The team consists of myself @rcjrrjcr and @TheYeti currently with contributions from @Nijikokun as well on occasion. There are also several other members of the community who frequently assist with providing code changes, bug fixes, patches, support, feedback, and beta testing. Special thanks to @flames and the Dynmap & Wormhole X-Treme teams for the hosting of Permissions on their Jenkins server.

    What's new in 3.x?

    Taken from the GitHub page:
    1. In-game commands. For a long time, users have been pestering, nagging, demanding and/or screaming for an way to manage Permissions via commands. Now, in 3.0, in-game commands are available to manage permissions and groups.
    2. SQL storage. This allows web interfaces to manage Permissions by updating the SQL database Permissions uses.
    3. Promotion/demotion tracks. With a simple command, users can be promoted/demoted along a preconfigured track, allowing RP servers with ranks to promote the player along a class track and other possibilities.
    4. Multigroup.
    5. Weightage. Plugins are able to compare users via their weight, which is inherited from their groups. For example, SlapPlugin can check if Player A is higher-weighted than Player B when A tries to slap B (Not IRL, obviously).
    6. Improved world mirroring. Config files are now split into a group file and a user file. Also, by editing storageconfig.yml, you can configure the mirroring of entire worlds, or just its users/groups. You also do not have to create files for worlds that mirror another world. Also, two different worlds can use different storage types, like YAML and SQL.
    7. Global permissions. Instead of having to resort to cross-world group inheritance, now all worlds inherit groups and users from the global permissions file. Also, the inherited groups/users can be overridden via editing the specific world's file.
    Upgrading from 2.x to 3.x

    I have written a guide on GitHub. This demonstrates how to convert 2.x-style configs to 3.0. The YAML-to-SQL converter are still in testing, but it can be downloaded from here. It's written in Perl. @Zgred has created a web version of the script located here. @omgneeq is working on an Web UI for SQL databases (Sorry about the previous statement that he was making a converter.)​

    Install (open)
    For the admins

    In case you missed the link above, the Setup Guide on GitHub will help you quite a bit

    Samkio has updated his tutorial for P3:

    First thing that you will need to do is download the plugin. Place it in your plugins/ folder and unzip it. This should create the folder Permissions and a Permissions.jar file in your plugins folder. Next, go into Permissions/ and create a folder named the same as your world. So if your world name from is Foo you will need to create the folder plugins/Permissions/Foo. You MUST rename it to whatever your world's name is or it will not work.

    Note, if you have your server maps all saved into a single directory then the initial setup will be somewhat different. Say your maps are arranged in the main directory like so: bukkit/mapfolder/world1, bukkit/mapfolder/world2, etc. Then inside of the plugin/Permissions directory you will need to create a folder called mapfolder and inside of that put the directories containing users.yml and groups.yml in there.

    Next, you will need to go in and add yourself to the users, just replace the user that is in there with your name. Make any other modifications that you need to. While making modifications make sure that you do NOT use tabs. These will break the YAML format and cause issues. Instead, each indent should be four spaces. If you want people who aren't in the Admin group to be able to reload the permissions plugin you need to give them 'permissions.reload' permissions within the config file.

    Permissions gives server admins great control, mostly in-game reloading. More info about commands can be found here.

    FAQ (open)


    [Q] What is with the version numbers? I can't keep up, it seems like every time I look there is a new version!
    [A] I use the GNU versioning system for my version numbers. So what this means is the version number should be read as Major.Minor.Revision. So for version 2.5.2 this would mean it is the 2nd Major version, the 5th Minor release in this version, and the 2nd revision. I tend to release bug fixes and anything that doesn't add functionality or will not break things as revisions. So generally you should be safe with just watching the major & minor numbers and only getting the revision if it fixes a bug specific to you. Technically 2.5.2 should have been released as 2.6 as it did add functionality, but this was below even a minor change so I released it as a revision.

    [Q] I am getting an error that it can't pass BLOCK_PLACED or BLOCK _BREAK events to Permissions. Fix it!
    [A] That's not a question. The reason why it can't place these is probably because the syntax of your Permissions file is all whacked out, or it is a different world and you don't have a config file for that world.

    [Q] What am I suppose to name the config file?
    [A] You need to name it the same as your world. So if you look in at "level-name" you will see a world name there. Rename your config file to the same thing as that. Make sure you keep the .yml extension at the end.

    [Q] Permissions are broken. Why can no one use commands? Why am I not an admin?
    [A] First off, make sure that your formatting is correct. Look at the format that the default config file uses. Yours should look like that. Do NOT use tabs. Use 4 spaces (IE. " " <-- Four of those things.). Also, whichever group you give the permission '*' to, do not have that group inherit permissions from anyone else. That is called overloading and it will break things. Also, this.

    [Q] Which one am I suppose to download and unzip to install this?
    [A] Download the main package, not the JAR only. Unzip the ZIP file. The JAR only downloads are simply there for people who are UPGRADING and do not need the default config file.

    [Q] I have done all of this and this doesn't work! I'm going back to GroupManager!
    [A] Well, there is probably the problem. Make sure that you delete EssentialsGroupManager.jar and EssentialsGroupBridge.jar as these don't play well with Permissions and will cause headache.

    [Q] When are you going to add <blah> <feature/command> into this already? You suck! Do what I want NAU PL0X!
    [A] Feature requests should be posted on the GitHub tracker. Stupid suggestions like adding teleportation functionality and other less ludicrous stuff will be rejected.

    • 3.1.6
      • Major fixes.
      • Simplify tracks
    Changelog (open)

    • 3.1.5
      • Fix several minor bugs.
      • Autoconvert 2.x/GM format (only works if you split them into groups.yml and users.yml, but leave the rest untouched)
    • 3.1.4
      • Fix YAML locking bugs.
    • 3.1.3
      • Fix another SQL data and inheritance issue.
    • 3.1.2
      • Fix SQL data issues.
      • Added user/group name autocomplete
      • Separated SQL interface into separate plugin
    • 3.1.1
      • Fix prefix/suffix issues.
      • Added ON UPDATE CASCADE to the SQL foreign [/SIZE]
    • 3.1
      • Tons of fixes.
    • 3.0.6
      • Fix SQLite issues due to misimplementation of methods.
    • 3.0.5
      • Fix cache-related NPEs
      • Fixed quoted worlds (thanks again @Jeyge !)
    • 3.0.4
      • Fix LinkageError caused by ServiceManager not unloading the PermissionHandler class.
      • Added cache
      • Fix index not being incremented when promoting (thanks @Jeyge !)
    • 3.0.3
      • Fixed another getGroup bug.
    • 3.0.2
      • Fixed getGroup bug.
    • 3.0.1
      • Fixed some NPE bugs.
    • 3.0
      • Total overhaul of Permissions. Adds many new features (see What's new in 3.0?).
    • 2.7.4
      • Added overload of has() and permissions() for plugin devs
    • 2.7.3
      • Fixed negate node add/remove bug.
    • 2.7.2
      • Fix for small subtle bug introduced in last minor version.
    • 2.7.1
      • Commit by DThielke to fix several bugs with programmatic modifications of user permissions.
    • 2.7
      • Further commits by rcjrrjcr
        • Removed negatedNode checks
        • Temp fix for NULL issue
        • WorldConfigurationModification to save only modified configs
        • Fix for cache problems

    Credits (open)

    Nijikokun - Without their original work this plugin would not be possible.​
    All of the members of the community that regularly provide support in this thread for Permissions​
    Rigby, Kainzo, DThielke, GoMySQL, sk89q, RightLegRed - For hanging out with me in IRC, tons of testing, and pushing me to improve on the code constantly and make changes to make this plugin constantly better and better, and in general being entertaining.​
    Everyone else on here and in IRC who provides support, feedback, assistance, plugins that have continued to support and integrate this, and in general makes my life a bit easier, THANK YOU!​

    I would like to thank Joy , jamesg and omgneeq for staying in #permissions for long periods of time to test out 3.0, and help me find many coding mistakes I made, patiently waiting for the next build while I fixed the bugs. I appreciate SvenBrnn 's and GoMySQL(Geoff Winans on this forum) 's help that allow me to design and code the SQL interface, and the HeroCraft coding team for providing support and some priceless IRC quotes (Dgco). Also, I would like to thank Lycano for helping me in many different aspects. Last but not least, I would like to thank Nijikokun and TheYeti for developing P2, which was one of my core plugins when I was still a 14-year-old server admin that didn't understand Java, and was the base for 3.0. Without these people, 3.0 would never be possible.​

    If after reading through all of that you are still having issues do one of two things. If it is a provable bug, and you have things like screenshots or copies of startup, steps to reproduce, your craftbukkit build and the version this is running along with your config files then submit the bug on the issue tracker. If it is general help or support you are needing then post a reply to this thread and someone will try to help you.

    Old thread: Permissions v2.7.4
  2. Offline


    I switched to CommandBook but there are many good ones out there.

    Ah, these files again. You still need to remove the - from in front of all your groups in your groups.yml file and your group: in your users.yml needs to look like:
                - <group>
    I gave you 2 options already and your response was:
    I would suggest at least starting with 1 of the 2 options.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Sep 9, 2018
  3. Offline


    It doesn't work though, all i get is a folder "permissions" and then a YML file called "storageconfig" Could you please just tell me the exact things i have to do in order to convert the 2.x to 3.x? Thanks anyway.
  4. Offline


    Actually I dont have iConomy or icoland installed, i just have the permissions
  5. Offline


    Can somebody give me an example how to promote/demote pls?
    Rick Boss likes this.
  6. Offline

    Rick Boss

    I would also greatly appreciate an simple example of how to promote a player from default to Admin, Please.
  7. Offline


    @Rick Boss
    Take a look here.

    Option 1 - download the zip file and take a look at the example files.
    Option 2 - copy your groups: section into the groups.yml file under plugins\permissions\<world>. Copy your users: section into the users.yml file under plugins\permissions\<world>. Change the group: <group> into:
                - <group>
    Same thing as I said before and the same thing that is on the wiki.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Sep 9, 2018
  8. Offline


    Like I've said, all I get is a permission folder with a yml file called "storageconfig".
  9. Offline


    hi everybody , i got a simple error but i dont understand it , so why not drop it here :p , here we go :

    2011-06-03 01:30:09 [SEVERE] while parsing a block mapping
     in "<reader>", line 1, column 1:
    expected <block end>, but found BlockSequenceStart
     in "<reader>", line 9, column 2:
         - modifyworld.*
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeMappingNode(
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeDocument(
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.getSingleNode(
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(
    2011-06-03 01:30:09 [SEVERE]     at org.yaml.snakeyaml.Yaml.load(
    2011-06-03 01:30:09 [SEVERE]     at com.nijiko.configuration.NotNullConfiguration.load(
    2011-06-03 01:30:09 [SEVERE]     at
    2011-06-03 01:30:09 [SEVERE]     at<init>(
    2011-06-03 01:30:09 [SEVERE]     at
    2011-06-03 01:30:09 [SEVERE]     at com.nijiko.permissions.ModularControl.forceLoadWorld(
    2011-06-03 01:30:09 [SEVERE]     at com.nijiko.permissions.ModularControl.loadWorld(
    2011-06-03 01:30:09 [SEVERE]     at com.nijiko.permissions.ModularControl.load(
    2011-06-03 01:30:09 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.setupPermissions(
    2011-06-03 01:30:09 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.onLoad(
    2011-06-03 01:30:09 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.loadPlugins(
    2011-06-03 01:30:09 [SEVERE]     at net.minecraft.server.MinecraftServer.e(
    2011-06-03 01:30:09 [SEVERE]     at net.minecraft.server.MinecraftServer.a(
    2011-06-03 01:30:09 [SEVERE]     at net.minecraft.server.MinecraftServer.init(
    2011-06-03 01:30:09 [SEVERE]     at
    2011-06-03 01:30:09 [SEVERE]     at
    2011-06-03 01:30:09 [SEVERE] [Permissions] Unable to load permission data.
    this is my FULL error , and here is an example of the "groups.yml"

             - false
     - modifyworld.*
     - '*'
        default: false
        - essentials.back
        - essentials.ban
        - essentials.banip
        - essentials.broadcast
        - essentials.delwarp
        - essentials.depth
        - essentials.getpos
        - essentials.jump
        - essentials.kick
        - essentials.kill
        - essentials.setwarp
        - essentials.time
        - essentials.togglejail
        - essentials.tphere
        - essentials.tpo
        - essentials.tpohere
        - essentials.tppos
        - essentials.tptoggle
        - essentials.unban
        - essentials.unbanip
        - essentials.whois
        - groupmanager.listgroups
        - groupmanager.mandemote
        - groupmanager.manload
        - groupmanager.manpromote
        - groupmanager.mansave
        - groupmanager.manselect
        - groupmanager.manuadd
        - groupmanager.manudel
        - essentials.ext
        - builder
    I got any suggestion/fix/ideas :)

    Thanks in advance everyone ! :D
  10. Offline


    No errors, but nobody can build (not even the players in the op.txt)
  11. Offline


    So wait, let me get this straight. You follow all of my instructions to create files and copy information into them and all you get is a storageconfig? What happened to the files you created? Are you saying the plugin deleted them?
  12. I need someone to make a video guide because no matter how many times I follow the instructions I cant figure this out.
    daleisme likes this.
  13. Offline


    Don't worry, i'm gonna wait until theres a video tutorial on youtube. You seem to be not understanding.
  14. Offline


    That is some nice and random spacing. Use this as a guide when you start fixing it. Every new node level needs to be 4 spaces over from the last so groups: is the primary node, then comes your groups like Default. They will be 4 spaces over.... Take a look at the example files in the zip download and try to fix some of the spacing.

    I also see you have GroupManager in your permissions. If you actually have it installed, you will want to remove it.
  15. Offline


    Thanks, but i still get
    03:42:23 [SEVERE] java.lang.NullPointerException
    03:42:23 [SEVERE]       at com.nijikokun.bukkit.Permissions.Listener.onBlockBreak(
    03:42:23 [SEVERE]       at$34.execute(
    03:42:23 [SEVERE]       at org.bukkit.plugin.RegisteredListener.callEvent(
    03:42:23 [SEVERE]       at org.bukkit.plugin.SimplePluginManager.callEvent(
    03:42:23 [SEVERE]       at net.minecraft.server.ItemInWorldManager.c(
    03:42:23 [SEVERE]       at net.minecraft.server.ItemInWorldManager.a(
    03:42:23 [SEVERE]       at net.minecraft.server.NetServerHandler.a(
    03:42:23 [SEVERE]       at net.minecraft.server.Packet14BlockDig.a(SourceFile:42)
    03:42:23 [SEVERE]       at net.minecraft.server.NetworkManager.b(
    03:42:23 [SEVERE]       at net.minecraft.server.NetServerHandler.a(
    03:42:23 [SEVERE]       at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    03:42:23 [SEVERE]       at net.minecraft.server.MinecraftServer.h(
    03:42:23 [SEVERE]       at
    03:42:23 [SEVERE]       at
    error when i edit a block with the new config files: - users - groups

    Are the configs stored in the right place?

    At the moment, they are in the plugins/permissions/<worldname>/here
  16. Offline


    Yep, I'm the one not understanding. Now that is funny.

    That is the correct place. What is the rest of the error though. Post your server.log.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Sep 9, 2018
  17. Offline


    sorry, here it is:

    p.s the plugins enabled are:

  18. Offline


    Yep, I have the same error as everyone above, and none of the solutions have worked. I'm sure I've set it up properly.
  19. Offline


    Try removing MyHome and see if that fixes things.
  20. Ya I agree with you guys there needs to be a video tutorial.
  21. Offline


    I have some problems after upgrading to CB#819 (from #803). It seems to be related to Permissions, but I can't seem to put my finger on what happens.
    All of a sudden it is almost impossible to empty a bucket of water, and randomly chests and doors stop working (can't open a chest, can't change the state of a door (open=>closed, closed=>open), client side it does, then instantly goes back to the door state of the server.
    Placed water shows up for a splitsecond, then it becomes invisible, and the bucket is emptied. If you right click somewhere the bucket is refilled.

    If I upgrade players to 'Admin' (see config below), I experience no problems at all, so I figure some permission entry must be missing? The weird thing is, if you re-login you can use doors again, I think until either warping or placing water - not 100% sure here.


    Trusted = my default user level, things are not working here.
    Moderator/Staff = Doesnt seem to work either
    Admin = Works just fine

    Any ideas of what I could be missing? Hard to compare things, when Permissions=* is the one that works.

    CB: #819
    Permissions: 3.1.1
    Various other plugins
  22. Offline


    AHA! That fixed it! Thanks alot Jeyge, I know you must get so tired of troubleshooting peoples issues :)! Really really appreciated mate! FYI anyone who is having the same issue, MyHome seems to be incompatible at the present time.
  23. Offline


    Permissions doesn't control doors or chests. Are you sure you don't have a problem with LWC or EssentialsProtect? Are you getting any errors or warnings in your server.log?

    They won't read it. I've posted the same thing around 10 times today already. :) And no, I never get tired of it if the people at least try. It only gets frustrating when they have no desire to even read what I write.

    And good to hear it is working for you now.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Sep 9, 2018
  24. Offline


    That was a frigging good guess! Thanks! Looks like EssentialsProtect sneaked in itself on the server when upgrading plugins. Removing that plugin, which we weren't using before, solves it.
    Just for the record, no errors or anything in the log - it was simple just not working.
  25. Offline


    The other thread is closed so that's why I'm posting this here.

    Can I use the old Permissions v2.7.4 with the latest RB of Bukkit? Alot of the plugins that I'm using have been updated for 818, but haven't been updated to use with the new Permissions 3.
  26. Offline


    Yep, 2.7.4 is still available to download and you will still receive support for it too.
  27. Offline


    Alright, thanks. =)
  28. Offline


    What did I just break? It just worked:
    >permissions -reload
    02:41:56 [WARNING] Unexpected exception while parsing console command
    org.bukkit.command.CommandException: Unhandled exception executing command 'perm
    issions' in plugin Permissions v3.1.1
            at org.bukkit.command.PluginCommand.execute(
            at org.bukkit.command.SimpleCommandMap.dispatch(
            at org.bukkit.craftbukkit.CraftServer.dispatchCommand(
            at net.minecraft.server.MinecraftServer.b(
            at net.minecraft.server.MinecraftServer.h(
    Caused by: java.lang.NullPointerException
            at com.nijikokun.bukkit.Permissions.Permissions.reload(
            at com.nijikokun.bukkit.Permissions.Permissions.onCommand(Permissions.ja
            at org.bukkit.command.PluginCommand.execute(
            ... 6 more
  29. Offline


    Do you perhaps have some other errors in your log?
  30. Offline


    No, but seems like all plugins that use permissions get "an internal error occured", and then similar errors:
    02:50:06 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'warp' in plugin MyWarp v1.10.7
            at org.bukkit.command.PluginCommand.execute(
            at org.bukkit.command.SimpleCommandMap.dispatch(
            at org.bukkit.craftbukkit.CraftServer.dispatchCommand(
            at net.minecraft.server.NetServerHandler.handleCommand(
            at net.minecraft.server.NetServerHandler.a(
            at net.minecraft.server.Packet3Chat.a(
            at net.minecraft.server.NetworkManager.b(
            at net.minecraft.server.NetServerHandler.a(
            at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
            at net.minecraft.server.MinecraftServer.h(
    Caused by: java.lang.NullPointerException
            at me.taylorkelly.mywarp.WarpPermissions.permission(
            at me.taylorkelly.mywarp.WarpPermissions.warp(
            at me.taylorkelly.mywarp.MyWarp.onCommand(
            at org.bukkit.command.PluginCommand.execute(
            ... 12 more
  31. Offline


    You don't have a:
    [SEVERE] tried to access class  com.nijiko.permissions.ModularControl$1RefreshTask from class  com.nijiko.permissions.ModularControl initializing Permissions v3.1.1  (Is it up to date?)java.lang.IllegalAccessError: tried to access class 
    in there somewhere? If you do, you can try to remove MyHome, MyWarp and/or BigBrother. If not, it sounds like your Permissions isn't loading correctly. Post your server.log along with your permissions files and we will take a look.

    You are trying to run 2.7.x with 3.x files. Update to 3.x or downgrade your files.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Nov 10, 2018
Thread Status:
Not open for further replies.

Share This Page