Inactive [ADMN/DEV] Permissions v2.7.4 (Phoenix) - DISCONTINUED! 3.0 has a new home!

Discussion in 'Inactive/Unsupported Plugins' started by TheYeti, Feb 25, 2011.

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

    TheYeti

    Permissions 2.7.4 (Phoenix) - Now with AntiBuild built in!
    Download:
    Latest Stable: Full Zip | Jar Only
    Latest Dev Build: Full Zip | Jar Only
    Previous Versions: 2.7.3 (JAR) | 2.7.2 (JAR) | 2.7.1 (JAR) | 2.7 (JAR) | 2.6 (JAR) | 2.5.5 (JAR) | 2.5.4 (JAR) | 2.5.3 (JAR) | 2.5.2 (JAR) | 2.5.1 (JAR) | 2.5 (JAR) | 2.4 (JAR) | 2.3 (JAR) | 2.2 (JAR)

    Plugin Authors: How to hook into Permissions

    Permissions 2.x is being discontinued! 3.0 can be found HERE!!!


    I am discontinuing Permissions 2.x and leaving the project. Permissions is not going away though! Since 2.6 I have been working closely with another developer and added them to the team. For the past several version they have not only been assisting with 2.x but also doing a lot of the development of much anticipated 3.x. rcjrrjcr will be taking over as lead developer of Permissions from 3.x forward. I have full faith in them and after working closely with them on the development on the last few version and the next major version I feel that I am leaving this project in more than capable hands. I put way to much work into this project to just leave it with anyone, and this is one of the few programs that I am incredibly proud of.

    Many people will probably wonder why I am leaving again after taking over the project just a few months ago. I could quote drama and headaches, of which there were quite a few with this project. Unfortunately real life happens. Many people already know that I have been having medical issues here lately. Unfortunately while they have gotten better, they have not gone away. This coupled with other real life commitments, going to school full time, and starting up my own company, I am currently in the process of being laid off from work. At this point I have so much stuff going on in my life and am being pulled in so many directions that I am not able to get any work done on anything. This has lead to me missing commitments and letting people down on multiple things.

    Permissions is also a very high maintenance plugin that requires a lot of attention and time. Right now I am not able to devote that time and do not feel it is fair for me to try to continue to be the lead developer on it. I had originally thought that adding other members to the team would be helpful, but unfortunately this just lead to frustration for them and myself as I just was not able to commit to the project enough. Hence, 3.0 has been rewritten almost exclusively by rcjrrjcr with minimal contributions by myself.

    At this point I will be stepping away from the project to focus more on real life and to try to free up some time for other projects and to work with more individual like the wonderful HeroCraft Coding team to fulfill some commitments that I made to them a long time ago and sadly did not come through on. I feel that this is the best for all involved, both myself and the other Permissions developers, as well as the community who deserve someone who can contribute more time and attention to them and supporting them. I do not want to see Permissions end up like many other plugins with an absentee programmer and just slowly wasting away from a great plugin with a lot of potential to a headache with no support.

    I will still be active in the community, just not as much as not in the same way. I'm sure my server will be more than happy to have their head admin back and active again as well.

    Thank you and happy gaming.




    Changelog
    • 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
    • 2.6
      • Pulled in commits by rcjrrjcr
      • Fixed versioning. Last version should have technically been 2.6
      • Fixed invalid config file being written
      • Fixed erroneous conversion message.
    • 2.5.5
      • Updated to be compliant with CB600+
      • Further Maven Integration and Autobuilding
      • Better handling of configuration file errors.
        • If you do not have a world config file for the default world at startup it will now look for config.yml
        • If it cannot find that it will look for world.yml instead in case you named it that when that is not what is in level-name:
        • It will rewrite the config file to be the proper name. At this time it does not delete the old one though.
      • Removed defunct public abstract calls. If your not using the right one by now you should be shot anyway.
    • 2.5.4
        • Added Command aliases for perms and pr
        • Changed the way directories are handled.
        • Stopped it from creating an empty <world>.yml file in base directory
        • Moved project to using Maven.
    • 2.5.3
      • Change from File.pathSeparator to File.separator to fix multiworld perms
    • 2.5.2
      • Added more instructions to the included config file within the plugin
      • Added a check that will use the default world permissions if a world specific config file cannot be found.
      • Added a function to get only the group that a player is assigned to without checking for group inheritance.
      • Added a change to colorize() to fix it hopefully not adding an extra unneeded ascii character and thus creating a linebreak/color switch issue
      • Removed permissions.info as it was not needed and was a artifact of testing I was doing.
    • 2.5.1
      • Fixed a bug that could cause a group to be returned as null for getGroups()
    • 2.5
      • Added in AntiBuild functionality to Permissions
      • Minor code tweaks
      • Added getGroups(world, player) to PermissionHandler so that plugins can call it to get all of a users groups
      • Fixed the inability to use the permissions -reload all command from within the console. I still need to do some more work on this as it doesn't seem to like to accept anything other than all from console.
    • 2.4
      • Refactored namespaces to keep in line with Java & Bukkit policy
        • This was cancelled as it ended up being not needed
      • Fixed setupPermissions()
    • 2.3
      • Undid removal of some code that I had overzealously purged during cleanup
      • Merged in last of Nijikokun's changes
      • Re-ordered the main class to attempt to fix the problems with Plugin API
    • 2.2
      • Developer change
      • Fixed reloading of configuration files
      • Moved commands to registering with plugin.yml
      • Commands now use onCommand instead of onPlayerCommand
      • Command is now /permissions instead of /pr
    [/SPOILER]
     
    mruczek, kahlilnc, Pii and 58 others like this.
  2. Offline

    frdfsnlght

    API questions...

    The source code on GitHub doesn't seem to reflect the jar files being distributed (or maybe I'm whacked), and the API docs are functionally non-existent, so I've come here to ask questions...

    I'm developing a plugin and I wish to integrate Permissions support (because everyone else does too). Is there a way to check to see if a player has a particular permission based on the player's name and not a Player object? Some like:

    Code:
    PermissionsHandler ph;
    ph.has(playerName, perm);
    and NOT:

    Code:
    Player player;
    ph.has(player, perm);
    In my case I need this functionality because the player in question hasn't necessarily connected to the server yet, so no Player object. I won't get into the reasons for this (unless you'd really like to know), but suffice it to say it's an absolute requirement of my plugin to be able to do this.

    And another API question...

    How do you use world based permission checking?

    If I have a player's name (not a Player object), what method(s) can I use to see if they have permissions in a specific world?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 17, 2016
  3. Offline

    Jeyge

    I'm pretty sure the Git is up to date with the released versions so I'm not sure what you saw that didn't reflect the current releases.

    As for your question, .has actually takes the Player object and sends playerName on to the permission() function. You can use that call for what you want. And it also has your world.
    Code:
        public boolean permission(String world, String playerName, String permission) {
    
     
  4. Offline

    eirik-ff

    I have filled in all the usernames and there are just one username that dosen't work. I put it in online yaml praser and got an error on one off the user and when I removed it I didn't got an error. Someone knows what to do?
     
  5. Offline

    Jeyge

    That would depend on what the error is. Trying to guess it from no information is going to be hard.
     
  6. Offline

    andrewkm

  7. Offline

    noahk11

    ERROR: while parsing a block collection in "<unicode string>", line 69, column 13: - 'foo.bar' ^ expected <block end>, but found '<scalar>' in "<unicode string>", line 82, column 16: - 'bar.foo' ^


    (From YML Parser)
     
  8. Offline

    Jeyge

    You have a problem in your permissions.yml file at or around line 82. Without the actual file, it will be hard to know what it actually is.
     
  9. Offline

    noahk11

    Paste Bin of It: http://pastebin.com/RzU4ARnk
     
  10. Offline

    Jeyge

  11. Offline

    noahk11

    THANK YOU SO MUCH!

    How about this now? D:

    ERROR: while scanning an alias in "<unicode string>", line 125, column 16: - '*' ^ expected alphabetic or numeric character, but found "'" in "<unicode string>", line 125, column 17: - '*' ^

    How about this now? D:

    ERROR: while scanning an alias in "<unicode string>", line 125, column 16: - '*' ^ expected alphabetic or numeric character, but found "'" in "<unicode string>", line 125, column 17: - '*' ^

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 17, 2016
  12. Offline

    Jeyge

    I'll need the file again but it looks like you added something and perhaps missed another closing ' or something else.
     
  13. Offline

    Maxis010

    Post your permissions file so we can bust all these errors instead of 1 by 1 by 1 by 1 etc
     
  14. Offline

    Psycho Robot

    Code:
        Host:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '*'
                - 'allow-admin-bypass
                - 'allow-admin-snoop'
    
    First off, you missed a ' at the end of bypass. Also, the format looks wrong. Are you sure that you didn't mean to do "allow.admin.bypass" and "allow.admin.snoop"?

    Trick question; it doesn't matter. When you give someone the '*' node, it gives them EVERY NODE. So when you give them '*' then add more nodes after that, you're duplicating all of those nodes. Either only give them '*' and nothing else; or remove the '*', set them to inherit the proper group, and add the nodes you want. This also applies to the CoOwner group. Note that you can give them '*', and then SUBTRACT nodes, if you want them to have almost, but not quite all, of the nodes. You can do that with this format:

    Code:
        CoOwner:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '*'
                - '-redacted.node'
                - '-redacted.node'
    
     
  15. Offline

    korin125

    Can anyone answer why it says I do not have the necessary permissions to use /pr -reload all? I am an op and an admin in permissions. I really need this for my server.
     
  16. Offline

    briman0094

    do this from the console, as it may not know you are an admin until you reload them. otherwise, make sure you have all the proper branches set (permissions.reload.* i think) and there aren't any syntax errors so you can be sure you really are an admin to permissions.
     
  17. Offline

    nick1234567890

    Hi can you make a tuturial for the newest version? I have no idea how to use it. Thanks!
     
  18. Offline

    eirik-ff

    This is the error: ERROR: while scanning a simple key in "<unicode string>", line 115, column 5: xX_semipro_Xx ^ could not found expected ':' in "<unicode string>", line 116, column 14: group: Builder ^
     
  19. Offline

    Psycho Robot

    You don't have a : after semipro's name. You don't have a : after Builder
     
  20. Offline

    chizfoshiz

    Could I possibly bug one of you guys for some help, I can't seem to get any permissions set up for default users at all, going through an online parser returns no errors, have I done something wrong?
    Default:
    default: true
    info:
    prefix: ''
    suffix: ''
    build: true
    inheritance:
    permissions:
    - 'citizens.basic.*'
    - 'citizens.general*'
    - 'citizens.trader.*'
    - 'citizens.trader.stock'
    - 'citizens.blacksmith.*'
    - 'citizens.healer.*'
    - 'citizens.wizard.*'
    - 'iConomy.access'
    - 'iConomy.bank.*'
    - 'getid.*'

    That should give default users access to all those commands right? Or am I missing something stupid the parser doesn't pick up on? : /
     
  21. Offline

    eirik-ff

    Thank you!!!!
     
  22. Offline

    Jeyge

    The only mistake I can see without having the actual spacing correct is that your citizens.general* should actually be citizens.general.*. You are missing a . before the *. To correct the spacing if you need to post again, put the yml in code blocks. There is a button on the toolbar to do this or type [ code ]/[ /code ] (remove the spaces) and paste the yml between.
     
  23. Offline

    Psycho Robot

    in addition to what the guy above said, you have citizens.trader.stock assigned twice. Once by assigning citizens.trader.*, which includes trader.stock, and again when you assign citizens.trader.stock itself. Assigning nodes twice can cause issues, so you should remove the .stock node.
     
  24. Offline

    chizfoshiz

    I fixed that mistake but my default users still have no access to any of the commands they should, I still assume I'm just missing something really basic here.
    Here's http://pastebin.com/0ZLPcirL my entire config file if anyone wouldn't mind cruising through it and pointing out my obvious mistake? :)
    Edit: Thanks for the help so far!
     
  25. Offline

    Psycho Robot

    Try this:
     
  26. Offline

    chizfoshiz

    I just finished trying it, no dice still. : /
    When I'm on my admin I can do everything, so something in there must be working, right?
     
  27. Offline

    Psycho Robot

    Have you reloaded the server, or reloaded permissions since you made the changes?
     
  28. Offline

    chizfoshiz

    Yeah, I restart the server each time, it's quicker than exiting and starting up on my admin account.
    Restarting the server would reload permissions right? That's the same thing as reloading a server? Or have we just figured out what I'm doing wrong? : /

    Okay, I've definitely done something royally wrong here because now as admin I can't do anything either...
     
  29. Offline

    Psycho Robot

    No, restarting the server will reload permissions, so there's still something yet to be discovered. Have you been trying a variety of commands? If you're only trying Citzens commands, Citizens may be broken and it may not work through no fault of permissions, or yours. Also, what bukkit build are you on? There could be incompatibility issues.
     
  30. Offline

    chizfoshiz

    I have the server on 803, is there a better build for this stuff?
    My admin account could use all the commands flawlessly previously, for all plugins, now it can't...for some reason.
    I've been trying commands from all my plugins just to be sure, I've never managed to give default users permission to do anything.
    I'm so confused. :(
    EDIT: I have absolutely no idea what I did to my configuration file, but I pooched the whole thing somehow, starting with a fresh one over fixed everything, all is well now, glad I don't have many commands to set up! :) Thanks for all the help guys.
     
  31. Offline

    Jessie Vera

    Need help: it says it doesnt detect permissions please reply =/
    plugin:
    permissions: [*]
    system: K0Noob
    copies: 1


    groups:
    Default:
    default: true
    info: []
    prefix: ''
    suffix: ''
    build: false
    inheritance:[]
    permissions:
    - mywarp.warp.basic.warp
    - mywarp.warp.basic.compass
    - mywarp.warp.basic.list
    - mywarp.warp.soc.invite
    - essentials.spawn
    - essentials.tp
    - essentials.home
    - essentials.sethome
    Moderator:
    default: false
    info: []
    prefix: ''
    suffix: ''
    build: true
    inheritance:
    - Default
    permissions:
    - essentials.jump
    - essentials.ban
    - essentials.kick
    - essentials.give
    - essentials.time
    - essentials.tree
    - essentials.god
    - essentials.heal
    - essentials.weather
    - mywarp.warp'*'
    Admins:
    default: false
    info:
    prefix: ''
    suffix: ''
    build: true
    inheritance: []
    permissions:
    - '*'

    users:
    xNiGtlMaRe:
    permissions: []
    Herpina:
    group: default
    info:
    prefix:
    suffix:
    permissions:
    Dragonfire:
    group: Admins
    permissions:
    - [*]
     
    jor956 likes this.
Thread Status:
Not open for further replies.

Share This Page