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


    Okay, I got permissions running, but I still cannot use any of the features. What should I change in the config files?
  3. Offline


    I would still empty out your global files for your testing but one thing comes to mind. Are you an OP? I used your files and was able to remove worldguard.god without any trouble so I don't think it is a config thing. Perhaps a missing permission/incorrect permission problem though or you are an OP.

    I don't know. We were working under the assumption before that you were actually running Permissions and you weren't so you are going to have to post more information about what is now not working as well as a new server.log showing that it is now.

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


    I need the help of someone with this plugin because i'm going crazy...
    i explain better...
    i have downloaded the .Rar file and i have extracted all in /plugin folder. it's generated a folder called "RE-NAME" , a file called "CHANGELOG", an other one called "README", the "PermissionSql.jar" and the "Permission.jar" .

    Following the readme file, the .rar must generated me a folder called "Permissions", but it's not exist.. so i thought to change the name at the folder generated and i called it "Permissions". In this folder, called from now "Permissions" there is two files: "groups.yml" and "users.yml".

    When i have restarted my virtual machine for server it's created, in the same folder, other three folder and five differents files:

    World, and in it there is a file "groups.yml" and "users.yml" like the files in "Permissions";
    World_nether, same of up written;
    Warzone, same of up written.

    "globalGroups.yml", totally empty;
    "globalUsers.yml", which contain only this-> {}
    "storageconfig.yml", totally empty.
    -> the other 2 files is "groups.yml" and "users.yml" where i have talked about in the past on this post. <-

    i have tryed to setup the perimssions but i don't know which files i have to modify... the "groups.yml" in the folder "Permissions"? or the "groups.yml" in /Permissions/World ? i'm really going crazy... i need serious help...

    Here's the screens for explain me better:


    Uploaded with

    Into plugins/Permissions
    Uploaded with

    Into plugins/Permissions/world (called MVP)
    Uploaded with

    Into plugins/Permissions/world_nether
    Uploaded with

    Into plugins/Permissions/WarzoneWorld (folder generate by one plugin)
    Uploaded with

    i wait help.

  5. Offline


    Okay, this is the new log with Permissions running this time, and everything is still the same, the config files, the Minecraft screenshot.

    Attached Files:

  6. Offline


    Thanks i de-opped myself and it fixed everything. I didn't know that opping would break everything. this makes me very happy!1 :D
  7. Offline


    The installation instruction could really be better but at this point you are really close. Here is a quote from the readme:
    The main thing that is missing is that between the unzipping and the copy part, you need to start the server once. Or, just create the permissions folder yourself. Once you have the permissions folder, you can follow the directions to create a folder which is your world name and copy the sample files into it. So, for what you have above, just copy the sample files which are currently in plugins\permissions\groups.yml and users.yml to your plugins\permissions\MVP folder.

    What isn't working has to be different now that you are actually running Permissions. Can you tell us what it is exactly that you can't do? Are there plugins that aren't working? Are your groups not showing up in chat? There has to be something you can point to.

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


    Okay, well HeroChat works, it shows everyone's prefixes. The plugins I want members to be able to use are AdminCmds, so they can use the teleportation features. Also a few more I plan to install. Scavenger which allows you to keep your items upon death, I have that installed currently. All of my plugins work, although you have to be an OP for them to work, and for members to be able to use commands. Permissions worked at some point with all of the plugins when I hosted a server from my computer.
  9. Offline


    ok... thanks... so, when i have to modify the permissions, i have to modify the file called "groups.yml" into the world folder or the "groups.yml" into the folder "Permissions"? this is not clear.. :s
  10. Offline


    I incorrectly said to copy the groups.yml/users.yml from the permissions folder to your world folder but I should have said move. There shouldn't be a groups.yml or users.yml in the permissions folder so you would edit the files in the world folders. Once you get comfortable making changes, I would take a look at some of the other topics on the wiki like the Storageconfig.yml Options and Globals vs World ones. They will help you expand more but only do that after you have made some changes yourself and feel as though you are ready.

    If I understand correctly, you are only able to use AdminCmds, Scavenger and maybe another plugin when you are an OP. If this is correct, then I have something to go on for what might or might not be working. Going back to the file you posted before, I'm not seeing a plugins\permissions\world directory? Is it there and you just didn't post it? I can see in your log that "world" is your default world so your base permissions should be in there. If you do have one, could you post the files from there so we can see if there is anything wrong with them?

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


    If it is the permissions\world directory you want, then here it is. And yes, "world" is the default world. I will include the "permissions" folder in here. Thanks.

    Attached Files:

  12. Offline


    so i fixed that and it still didnt work. the same thing happened. none of us could place unless we were op-ed and even i(the op) could use the /hero choose command and it reset the classes and other things. the exact plugins i have are
    1. bukkitcontrib
    2. craftbook
    3. cuboidplugin
    4. herobounty
    5. herochat
    6. heroes
    7. heroicdeath
    8. heroicrebuke
    9. herolock
    10. herospawn
    11. iconomy
    12. iconomychestshop
    13. Permissions(this one)
    14. world edit
    15. worldgaurd
  13. Offline


    Sorry Jeyge, turns out the Help plugin was making it look like all of my other plugins were going crazy. Boy, they need to fix that one. Removed it, and all works fine again.
  14. Offline


    I looked thru all of your directories in the permissions directory and you don't have any groups set up anywhere but in a groups.yml in the actual plugins\permissions directory. That isn't a valid location for a groups.yml so I'm not surprised that nothing is working. If that is the file you want to use, then move it to your plugins\permissions\world directory as well as the users.yml if that is the one of those you want to use and you should see some better results.

    Help was updated to 3.0 a few weeks ago with the same fix as the other plugins. You should be able to update to that version.

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


  16. Offline


    Many Dev's have decided that because Bukkit has its own permissions now. They have decided not to care that people still use this one. Sad.
  17. Offline


    I don't understand bukkit permissions! This new change is like when we had to switch from hmod to bukkit
  18. Offline


    I get this error please help
  19. Offline


    I totally understand what you mean, but do Devs care? Just because something is new they go all for it and don't care if people stuff use it.
  20. Offline


    I think the funniest part of it all is that it was the users of their plugins who were complaining about how hard it was to set up Permission (this plugin) and they were begging for a Bukkit version that would make it easier. Bukkit decides to make something easier for the plugin devs and the devs decide to screw their users. I just can't figure out how it worked out this way.

    On line 39, you are missing a closing quote. It should be "- 'essentials.rules'".

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


    Am I the only one that found this plugin easy as piss?
  22. Offline


    I took around a week to figure everything out after converting from GroupManager but that was one week after setting up my first Bukkit server. I was quite a noob back then.
  23. Offline


    Yea true, but dev's need to keep an open mind not take a look at something like its a new toy and drop everything.

    You will need another plugin to do that for you.

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


    Hey everyone,
    I am looking at switching over to MySQL storage for the permissions. Is there any automated way I can port the current YAML permissions to the database, also what does the SQL managment JAR do? Is it requred?
  25. Offline


    I'm curious to know that if "Build: " is set to false (in my groups.yml), can you control what types of items and blocks can be used/ broken?
  26. Offline


    The "Build:" is a global disable of everything.
  27. Offline


    I was quite shocked to see some of the bigger plugin devs just completely shun their users like they did or even call for a plugin like this one to just die but it has sure created some very funny posts about it. That and posts about people creating 15 different permission plugins/other duplicate plugins. Oops, I guess I'm meant to call them permission managers now since we all know that a plugin turns into a manager if you use a Bukkit API. :)

    You do need the PermissionsSQL.jar as well as Permissions.jar if you are going to run the SQL version. As for a way to convert, there is the script and website listed in the OP but both are known to give the wrong information. I think some have been able to change the table names though to make it work.

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


    Is there any way I can disable all item/block interactions except for ones that I choose?
  29. Offline


    Ya, its not working at all. I tried the online converter and I pasted in my complh groups.yml and it only gives me the Update query to add a world to the worlds list, none of the permissions. So with that being said, does anyone have any tips that has already done it?
  30. Offline


    I still support this. BukkitPermissions is still a WIP and the other permission plugins arent fun to config

    Lets get a vers: 1000 on this!
  31. Offline


    You must do, ya know, saying it twice and all lol.
Thread Status:
Not open for further replies.

Share This Page