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

    rcjrrjcr

    Permissions 3.1.6 (Yeti)

    Download:
    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


    COMMAND RESTRUCTURING
    Feel free to comment and give suggestions.


    DO NOT USE GLOBAL CONFIGS FOR NOW. THE GLOBAL CONFIG IS MEANT TO SUPPLEMENT WORLD-SPECIFIC CONFIGS, NOT THE OTHER WAY ROUND. SEE https://github.com/TheYeti/Permissions/wiki/Global-vs-World .I WILL WRITE A PROPER TUTORIAL ON HOW TO USE THE GLOBAL CONFIGS SOON.

    TODO:
    • 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 server.properties 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)

    [FAQ]

    [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 server.properties 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.



    Changelog
    • 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)


    TheYeti:
    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!​

    rcjrrjcr:
    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

    rcjrrjcr

    Yeah, it's outdated. I'll ask @Zgred to update it.
     
    grapeman likes this.
  3. Offline

    Paul Ludwig

    Code:
    groups:
        Player:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: false
            inheritance:
            permissions:
    have also changed build: false to build: true
    i've removed ALL other plugins and still can't build without having to be OP
     
  4. Offline

    rcjrrjcr

    Markdown messed up my URL formatting. Should work now.
     
  5. Offline

    Jeyge

    Are you trying to build in the spawn area? You'll want to set your spawn-protection to 0 if you are. Or in a zone owned by someone else. Also, are you sure your permissions are working? Post the rest of your files along with your server.log.
     
  6. Offline

    Paul Ludwig

    Not sure what you mean by the rest of my files? but here is the server.log and I walked at least 50 blocks away from the spawn. The zone isn't owned by anyone there is no one on my server and i just made a completely new server from scratch to test permissions.

    Code:
    2011-06-08 23:57:57 [INFO] Starting minecraft server version Beta 1.6.6
    2011-06-08 23:57:57 [INFO] Loading properties
    2011-06-08 23:57:57 [INFO] Starting Minecraft server on *:25565
    2011-06-08 23:57:57 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-766-g3fc0460-b818jnks (MC: 1.6.6)
    2011-06-08 23:57:57 [INFO] Preparing level "world"
    2011-06-08 23:57:58 [INFO] Preparing start region for level 0
    2011-06-08 23:57:58 [INFO] Preparing start region for level 1
    2011-06-08 23:57:59 [INFO] Preparing spawn area: 36%
    2011-06-08 23:57:59 [INFO] [Permissions] (Yeti) was initialized.
    2011-06-08 23:57:59 [INFO] [Permissions] version [3.1.4] (Yeti)  loaded
    2011-06-08 23:57:59 [INFO] Done (0.159s)! For help, type "help" or "?"
    
     
  7. Offline

    Jeyge

    I was assuming that the small portion of your groups.yml was just a small portion of that file but if that is all you have, then you will need a users.yml file and your build is currently set to false. Without a users.yml file, you will be in the default group and you won't be able to build. I'm also assuming your global files and storageconfig.yml are all empty.

    Your files look fine although you should leave the global files empty for now. Are your users.yml and groups.yml in the plugins\permissions\world directory and are there only 2 files in that directory? Another thing to check is your username. Make sure you have it cased correctly.

    I know LWC is having some problems with the latest builds right now so I would watch for a build that they say is working completely before trusting your items to it.
    Promote/demote is broken right now but you can take a look at the post here for more information about it.
    I believe those are MyMcAdmin flags.

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

    Paul Ludwig

    groups and globalGroups has the following...
    Code:
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
    user and globalUsers has the following...
    Code:
    users:
        Wargasm22:
            groups:
                - Default
            permissions:
    and well... here is the server properties...
    Code:
    #Minecraft server properties
    #Wed Jun 08 23:33:28 CDT 2011
    level-name=world
    allow-nether=false
    view-distance=10
    spawn-monsters=true
    online-mode=true
    spawn-animals=true
    pvp=true
    max-players=50
    server-ip=
    level-seed=
    server-port=25565
    allow-flight=true
    white-list=false
    spawn-protection=0
    and to top it off here is the server log one more time...
    Code:
    2011-06-09 00:13:19 [INFO] Starting minecraft server version Beta 1.6.6
    2011-06-09 00:13:19 [INFO] Loading properties
    2011-06-09 00:13:19 [INFO] Starting Minecraft server on *:25565
    2011-06-09 00:13:19 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-766-g3fc0460-b818jnks (MC: 1.6.6)
    2011-06-09 00:13:19 [INFO] Preparing level "world"
    2011-06-09 00:13:19 [INFO] Preparing start region for level 0
    2011-06-09 00:13:20 [INFO] Preparing start region for level 1
    2011-06-09 00:13:20 [INFO] Preparing spawn area: 32%
    2011-06-09 00:13:21 [INFO] [Permissions] (Yeti) was initialized.
    2011-06-09 00:13:21 [INFO] [Permissions] version [3.1.4] (Yeti)  loaded
    2011-06-09 00:13:21 [INFO] Done (0.161s)! For help, type "help" or "?"
    The storageconfig.yml is empty.
     
  9. Offline

    Snock

    thanks to WhosDaMan and Jeyge, it works for me now. i copied everything except the extra groups he made from WhosDaMan's link and fixed it up with what Jeyge said. now i'm able to break and place blocks and i can use skills and abilities. i also got notepad++ like someone else said, it keeps shit organized and you can have more than one file open in one window.

    the only problem i have now is that the /lwc (lock chests/doors) command doesnt work for me. it might be a separate download, so does anyone know what i should do?

    i was gonna get modloader, hungermod and the apple trees mod as well (ive seen them in a different server with mcmmo) but as simple as the instructions are, minecraft stops working and i have to reinstall minecraft because of how changed the minecraft.jar was.

    also, thanks to anyone helping people out on here.
     
  10. Offline

    FutileFreedom

    Hello,

    I updated all my plugins reconfigured permissions and such but instead of being in the Admin group, it is reading me as a Guest.

    I read up a bit and found a solution.
     
  11. Offline

    Dr Danco

    i cant seem to figure out the promote/demote command... can someone explain it to me?
     
  12. Offline

    D2S4L1T2

    Is there any reason my globalGroups.yml would show "Interact: True" as I've set it, but my globalUsers.yml would constantly show "Interact: False", no matter what I do (including deleting it and allowing it to be generated anew)?

    Ah, that would explain the unruly nature. I'll kick the panel in the digi-face and do a pile of manual edits, then. >_<
    Much thanks :)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Nov 10, 2018
  13. Offline

    ThorSve33

    Can I get a link to a Dev build that fixes the IllegalAccessError...or at least partly? Thank :D
     
  14. Arg ! problem with 3.1.5 inside users.yml !!!!
    It remplace all player groups and permissions by "[]"

    On both world and Nether, i put 3.1.4 and all correct.
     
  15. Offline

    rcjrrjcr

    The IllegalAccessErrors are caused by other plugins, not Permissions. I can't fix it on my end.
    ">
    You might want to redownload a fresh copy of 3.1.5. I accidentally left out a line of code, which had the above result. Sorry. :p
    I see what you mean. Fixing.


    ">
    I must have missed something. Use 3.1.4 for the time being.
    Are you sure? I don't seem to be able to duplicate it.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Dec 28, 2018
    Ghost or Tron ® likes this.
  16. And .. is it corrected ?
     
  17. Offline

    rcjrrjcr

    Can anyone who downloaded 3.1.5 (not 3.1.5b) download 3.1.5b? Just fixed user groups getting wiped.
     
  18. ok i'll try ...
    Result : The "groups :" is correct but "permissions:" is already "[]" !
     
  19. Offline

    yttr1um

    3.1.5b fix lost "groups:" in "users.yml"
     
  20. yes but what about lost "permissions:" in "users.yml" remplaced by "[]" ?

    Yes, but i don't use "permissions:" on "users.yml".
    So it stay clear. But it remplace by [] ... sure !
    Before :
    After :
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Feb 15, 2019
  21. Offline

    Palfreyfish

    I upgraded to 3.1.5b this morning, but you've crossed out your instructions above... /Confused

    On another note, I install certain plugins, such as DeathTp, LWC, and Help, only for them to break all of the permissions that I've set up, reverting everyone back to the default group.
     
  22. Offline

    bigggan

    MyHome isnt fixed when i add it i get errors:
    Code:
    [SEVERE] java.lang.IllegalAccessError: tried to access class com.nijiko.permissions.ModularControl$1RefreshTask from class com.nijiko.permissions.ModularControl
    2011-06-09 11:27:00 [SEVERE]     at com.nijiko.permissions.ModularControl.<init>(ModularControl.java:54)
    2011-06-09 11:27:00 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.setupPermissions(Permissions.java:182)
    2011-06-09 11:27:00 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.onLoad(Permissions.java:140)
    2011-06-09 11:27:00 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:106)
    2011-06-09 11:27:00 [SEVERE]     at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:232)
    2011-06-09 11:27:00 [SEVERE]     at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:219)
    2011-06-09 11:27:00 [SEVERE]     at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:146)
    2011-06-09 11:27:00 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
    2011-06-09 11:27:00 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-06-09 11:27:00 [SEVERE] [Permissions] Unable to load permission data.
    2011-06-09 11:27:00 [INFO] [Permissions] Shutting down Permissions due to error(s).

    Though MyWarp works


    And theres also something wrong with AutoHelp
     
  23. Offline

    pyros

    Ive been creating my own script for my own script for personal entries for mysql using your database schema - https://github.com/TheYeti/Permissions/wiki/SQL-Database-Schema

    What I cant work out is the format of parentorder in PrInheritance. It has to be an integer, cant be null, and needs to order group permissions or am I looking at this in the wrong way in that I rank different PrInheritance entries for one user? Meaning unless a user has >1 group inheritances, it will always be 1?

    Update: I went with the schema and the idea PrInheritance/parentorder it should be 1 exlcuding where someone is in more than one groups, and it fails outright
    A pain seeing as it took a few hours to encode all my permissions data
     
  24. Offline

    ThorSve33

    Ah, I was confused about the version fixes above :p thanks for clearing that up though...I'm guessing that those versions are of the other plugins? Do you know why they're clashing so violently?
     
  25. Offline

    rcjrrjcr

    Oh, you mean that. I thought you mean it being deleted and replaced. The "[]" is fine.
    Do you have any of the (as of now incompatible) plugins listed in the first post? If there's an error in your console, post it in code tags.

    I didn't say it was fixed in the release build, only the source, though flames just told me that it will be fixed in 2.0. I will be posting a temp fix for that soon.
     
  26. Offline

    Palfreyfish

    I removed the MyX plugins, and everything's fine and dandy. Thank you :D
     
  27. Offline

    TnP

    [2. Posting]​
    I have installed Permissions now correctly and the commands work etc. , but i can't build!
    I have turned build: false ---to---> build: true .

    Groups File:

    groups:
    Default:
    default: true
    info:
    prefix: '[Test]'
    suffix: '[/]'
    build: true <------ True!
    inheritance:
    permissions:
    - 'foo.bar'
    - 'pvptoggle.use'
    - 'pvptoggle.command.toggle'
    - 'pvptoggle.command.status'
    - 'SpawnX.spawn'
    Moderator:
    default: false
    info:
    prefix: ''
    suffix: ''
    build: true
    inheritance:
    - Default
    permissions:
    - 'bar.foo'
    Admins:
    default: false
    info:
    prefix: ''
    suffix: ''
    build: true
    inheritance:
    permissions:
    - '*'
    - 'SpawnX.setspawn'


    Users File:

    users:
    Terry23:
    groups:
    - Default (I think it doesn't matter if i am Default,Moderator or Admin)
    permissions:


    Maybe someone knows what's wrong.....or had the same problem.​
     
  28. Offline

    andrewkm

    <3 for this plugin!
    Havent made the switch from 2.x yet but very happy to see the awesome development!
     
  29. Offline

    pyros

    Does your permissions file contain all of the 4 space indents needed?
    Putting it in code brackets keeps it indented rather than inlined
     
  30. Offline

    Singapore123

    Not only those 4 plugins get the illegal access error. These plugins too:
    WorldGuard
    Heroicdeath
    FalseBook

    And these 3 are plugins I REALLY want to add. Thanks for the fix.
     
  31. Offline

    navyrob

    Can someone help me please? I am a newb bukkit server admin, but I have bukkit server running and a few plugins working fine. I cannot seem to get the Permissions plugin to work, and its needed for all the other plugins I want.

    Questions:

    1. All the guides / tutorials talk about the plugin creating a folder called "Permissions" but my version creates a folder called "Permissions-bin". Should I rename this or leave it? Am I totally blind? My other plugins load fine...

    2. How much of the users and groups.yaml files do I have to edit? Can I just replace my name with Herpina or do I have to delete all the foo.bar data that is in there?

    3. Do I have to run one of the executable jar files to get this thing to turn on for the first time? I have it set up as the guide tell me to but it just doesnt seem to be "latching" on to the game. Is my directory structure screwed?

    As you can tell I know nothing of databases... sorry.
     
Thread Status:
Not open for further replies.

Share This Page