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

    M1nurThr3t

    noob question but im trying to add color and stuff to begging on name
    guest
    mem
    mod
    admin

    thought could do that with permissions
     
  3. Offline

    saturnine_nl

    you can use the prefix and some chat plugin. In the prefix you add different colorcodes for each group.
    the colorcodes depend on the chat plugin.
     
  4. Offline

    jordanneil23

  5. Offline

    greed

    nope it still wont work. still thank you though.
     
  6. Offline

    solentice

    Try and post the code using the "Code" button for this text box...the one located on the left of the quotes button that looks like two backwards commas. This way we can see if there might be issues with th code formatting. Aside from that, it's best to use only ONE single '*' command in all the code, and have the other groups inherit from the one with the '*' code like so:
    Code:
    Admins:
            default: false
            info:
                prefix: '&a'
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '*'
    Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Admins
            permissions:
    Your Moderator doesn't need to inherit from Default because it looks like you are trying to give them all the commands using '*' . Either remove the '*' permission from your Moderator so you can limit what permissions they will get, or make them inherit only from the Admins group if you also want them to have all the commands, like I showed you above.
     
  7. Offline

    greed

    we ran a few tests an my server by makeing the default groupe have all powers then demote an op and see if he can use any of his powers that he could before. he couldent. we then removed all powers from everyone to see what would happen to the op. he could still do whatever he wanted. we tryed we tryed renameing some folders to the world name in the essentailsgroupbridge but that dident work. i checked all the player names for op and stuff in the essentials userdata. i looked through the config of essentials and essentialsgroupmanager. essentialgroupmanager had some thing in it but idk what i was looking at. i added all the plugin names to the server properties file. i don't know what im doing i think im going to give up and try something else.
    [MERGETIME="1299816359"][/MERGETIME]
    Code:
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '-essentials.home''
    
        Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Default
            permissions:
            - '-essentials.home'
        Admins:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '-essentials.home''
    
    ##
    # Users denote which users are included in which group.
    # TheNo1Yeti is in the Admin group
    # Herpina is a member of the Moderator group but also has access
    # to the herp.derp permissions
    # Derpina is a member of the admin group but does not have access
    # to the derp.derp permission node
    # Users can also have a prefix and suffix as seen with Herpina
    ##
    users:
        greedisgood:
            group: admins
            permissions:
        Herpina:
            group: Moderator
            info:
                prefix: 'Moo'
                suffix: 'Cow'
            permissions:
                - '-essentials.home'
        Derpina:
            group: Admins
            permissions:
                - '-derp.derp'
     
  8. Offline

    M1nurThr3t

    thanks for the ichat, but now i have another issue
    i have over 100 people signed up to my server.

    user1:
    group: Donator
    permissions:
    user2:
    group: Donator
    permissions:

    but with 100 of those entries permissions wont load them all?
    is there another way to do this?

    NVM i fixed it, *damn spaces* :(
     
  9. Offline

    solentice

    Ok, here is a cleaned up version of what it seems you are trying to do. You did have some spacing issues, and added an extra "-" a few times. Try and use something like Notepad++ so you can see the indents in the code, and make sure the tab button only inputs spaces. Tabs are YAML files' enemy! For the Permissions plugin to work correctly, make sure no one is listed in your ops.txt file, because Operators bypass all Permissions, and they get practically all commands by default.
    In the code below, you now have Default group as default, with build permission set to true, and you allowed them to have essentials.home permission only.
    The Moderator has default set to false, meaning they're not the default group of course, they can also build(set to true), and they inherit the essentials.home permission from the Default group. It's best to try and not type repeat permissions for different groups if you can, just make them inherit from a group who already has those particular permissions, then add the additional permissions the other group doesn't have.
    Lastly, the Admins group is again not default, they can also build, but they CANNOT inherit anything if you are giving them the '*' command to give them all the commands. The only permissions they need is the '*' all commands, and that is it.
    In the users list, greedisgood is part of the Admins group, which means you have all the commands. Herpina and Derpina are both in Moderator group, and should only be able to use essentials.home command.
    Code:
    #
    #Groups below this line
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - 'essentials.home'
        Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Default
            permissions:
        Admins:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '*'
    ##
    #Users below this line.
    users:
        greedisgood:
            group: Admins
            permissions:
        Herpina:
            group: Moderator
            info:
                prefix: 'Moo'
                suffix: 'Cow'
            permissions:
        Derpina:
            group: Moderator
            permissions:
     
  10. Offline

    greed

    omg i give up nothing makes any since anymore. i use notepad++ but apparently that doesn't help me. i removed everyone from op and now there is no difference between admin and default. nothing is working all i really want is an economy and a warp thing..... i got this hoping it would make things more simple now im just overloaded. does anyone know where i can just download it already finished with what makes since for each class to have? this is just to complicated for me. here is what i have
    Code:
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
               - 'foo.bar'
               - 'essentials.warp.list'
               - 'essentials.sell'
               - 'essentials.balance'
               - 'essentials.pay'
               - 'essentials.msg'
               - 'essentials.afk'
               - 'essentials.rules'
               - 'essentials.motd'
               - 'essentials.list'
               - 'essentials.mail.send'
               - 'essentials.helpop'
               - 'essentials.whois'
               - 'essentials.signs.protection.create'
               - 'essentials.signs.protection.use'
               - 'essentials.signs.trade.use'
               - 'essentials.signs.buy.use'
               - 'essentials.signs.sell.use'
               - 'essentials.home'
               - 'essentials.sethome'
        Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Default
            permissions:
        Admins:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
               - '*'
    
    ##
    # Users denote which users are included in which group.
    # TheNo1Yeti is in the Admin group
    # Herpina is a member of the Moderator group but also has access
    # to the herp.derp permissions
    # Derpina is a member of the admin group but does not have access
    # to the derp.derp permission node
    # Users can also have a prefix and suffix as seen with Herpina
    ##
    users:
        greedisgood:
            group: Admins
            permissions:
        SuspiciousSpoon:
            group: Moderator
            info:
                prefix: ''
                suffix: ''
            permissions:
        Derpina:
            group: Admins
            permissions:
                - '-derp.derp'
    just in case you can figure it out and tell me in some way that a retard would understand iv tryed listening to you solentice but your to smart for me. i understood some of what you are saying but when i try it nothing works.
     
  11. Offline

    solentice

    Your code actually looks correct now...something else might be creating the issue. Besides Essentials, and Permissions, are you using any other plugins? Is your Permissions file named the same as your world name, like maybe world.yml if you used the default. What build version of craftbukkit are you using, maybe it has compatibility issues with one of the plugins?

    Just to confirm from your file, the Default group has the 19 Essentials commands you gave them in permissions. The Moderator inherited the exact same commands from Default. And the Admin has every single command possible. Also, all three can build in your world.
     
  12. Offline

    greed

    im only using these plugins..i got rid of all the other ones thinking they might be the root cause of the problem. i dont really know how to check what craft bukkit im using.
    [MERGETIME="1299824131"][/MERGETIME]
    one thing i don't understand is if i have to make a new user in the users section every time someone wants to join my server that just says default or if that's where everyone gos right away.
     
  13. Offline

    solentice

    When you set a group to default: true, as in your Default group, it means strangers not listed in your Permissions file coming in to your server will fall under that group, and have the Default group commands. Only the players you define in the Permissions folder under users will be in those specific groups, everyone else will be Default, based on how you currently have your file set up.
    If that's what you want, then maybe add additional commands to the Moderator, so they can do more than the Default group. Now you can list the additional commands under the Moderator group "permissions:" . Hope that makes sense...
     
  14. Offline

    cjc343

     
  15. Offline

    greed

    when i make the '*' for admin he has default powers.....1 page of help.......nothing else.
     
  16. Offline

    solentice

    The '*' is like making the person an OP. Almost the same thing. So your Admins group should have all the commands available, much more than the 19 commands under your Default group. Your Default group should only have those 19 or so specific essentials commands you gave them.
    For your Admins, you could essentially make them all OPs, just add them to that ops.txt file again, thus bypassing the Permissions settings, where they will get all the commands, but do this only for your admins.
    Did you also make sure your Permissions RENAME-ME.yml file was renamed to the name of the world you are using?
     
  17. Offline

    greed

    i know that but it doesn't work and the default class only has like 4 or 5 commands..... i renamed ir exactly ow it should be but nothing.
     
  18. Offline

    solentice

    So you are saying when you, as part of Admins group, try a command like "/item 1 24" (command to give yourself 24 of stone)nothing happens? Does it even give you a "You do not have permissions" error message on screen? What if someone in your Moderator group tries that same command? Do they receive anything in their inventory, or get an error message?
     
  19. Offline

    greed

    it says that i do not have permission. however when i op myself it works just fine. for example when im not op but have admin when i try any command other than help, permissions, motd, home, sethome, or spawn it says i do not have permission and as i said before when i typ help that's all it gives as admin but as op it gives me 14 pages of commands. and all of them work besides burn....says error 2...idk what that means but it doesn't matter i wont be using that any way. perhaps it may have to do with when getting this mod the world im using was from vanilla but converted over as to not make people mad at me but i strongly doubt that. it seems only people that are oped by the /op playername command, have any power at all and everyone else gets the help, motd ect. ect. ect. is there something somewhere like a switch or something i have to flip or did i just do something wrong? thank you for your time.
     
  20. Offline

    solentice

    Ok greed, I was bored and took the liberty to make myself a test server just to try and see what was going on with your configuration. I'm sorry to say that everything worked perfectly for me.:eek: I created a new folder on my desktop, copied over only the default files of .txt and .log files, craftbukkit-0.0.1-SNAPSHOT.jar, server.properties file, and my start.bat file for the server. Only thing I changed in server.properties was the level-name of my world to "tester". Started the server to create a new world named "tester", and got a folder named "tester" and stopped the server. I created a blank plugins folder inside my server folder, copied over my Permissions.jar file and Permissions folder. I changed the name of the .yml file inside my Permissions folder to tester.yml(just like my new world), changed the permissions for each of my groups to use the Essentials commands instead, limiting each one slightly except for the admin, and made myself part of a Survivor group with limited commands. I copied over my iChat folder and .jar file and left them untouched. I downloaded the latest Essentials.jar file into my plugins folder. Then I started the server again, let it say done, and stopped it. That created the Essentials folder for me with its config.yml file and user.yml file, but I left all those files untouched. I started the server one last time, and logged in to play. My commands were limited to what I only allowed for my Survivor group perfectly. I got error messages when trying to use a commands not listed in the Survivor group. I change myself to be part of the Admins group in my Permissions file, and started the server again. This time I had every single command known to man:D. Even the iChat colors and defined groups names showed up correctly when I chat, as they should. Sorry, I'm not trying to brag or anything, but just wanted to make sure that it should definitely be working as you seem to have it. Something is not right somewhere in your setup, and it could either be a not-so-compatible version of craftbukkit, or some configuration file has something wrong in it.
    I used:
    Win 7 Pro 64bit
    Java 1.6.0_24 b7 64 bit version
    crafbukkit build 522 (a previous recommended build)
    Essentials v2.0.286 RC2
    Permissions 2.5.4 (Pheonix)
    iChat 1.6 (Rebirth)
    And it all worked!

    Update: Maybe I could possibly somehow send you file by file, for you to replace yours with. The ones I created have a base setup, and you could add or take away commands as you see fit.
     
  21. Offline

    saturnine_nl

    @solentice : thanx for helping greed, i gave him a good start but a human has to sleep ( i live in europe so prolly diff timezone). Anyway things can get horribly go wrong if you go offline (insecure) mode. If there's no way for minecraft to verify a players username it uses Player instead (at least from my experiences). Wich Permissions gets wild and throws you into Default group. I don't know ... let's ask TheYeti himself what happens in offline insecure mode.
     
  22. This really comes in handy to keep your yml file nice and compact, speaking of compact isn't it possible to also add alot of the yml commands in { } for instance { - 'plugin1.code', - 'plugin2.command', plugin3.etc.etc.etc'} ???
    I seem to recall this inside some of my memory braincells from when I was still into java.
    Ofcourse keeping your code compact also has a downfall, you really need to put in remarks with # in front of them so you will be able to see what you did if you look back at this document after a couple of months.
    Yeah well I could start using lwc again, since I got this permission working (by the way, when I got up this morning /permissions -reload all was working, don't know how I did it, spend 'till 2 am working on this little piece, but it's working so now I can continue on my minecraft quest, atleast I can continue more now.
    Having a server on your own is nice, but I am really new to minecraft and wanted to see some of the other peoples work and how they build it in person, but all the servers I wanted to visit are whitelisted so that made me decide to start a server on my own. First I put it on a virtual dedicated server of mine, but java didn't work properly onthere since plesk control panel takes that over and only java 5 was installed.
    Now I run a server from a place that are specialized in minecraft servers, only downside is that I can not get into the server console, but I do have ftp access so I can upload whatever plugin I want.
    Right now the only friends I have and that are using minecraft are the ones that come to my server, ofcourse they are not real friends, but we get along there, only thing is that they are sometimes a bit too fast for me and start building stuff that are not needed yet, or I don't want, like a brick wall in front of my house ;)
    @saturnine_nl are you from the Netherlands too, or does the nl in your name have a different meaning?
     
  23. Offline

    saturnine_nl

    </nl mode> yep, brabant - ehv om exacter te zijn. [​IMG] <nl mode/>

    but i like to speak english here, I hate it when people are talking in their native language when there are a bunch of people around them that have no idea what the [beep] they are talking about. So I try to avoid that behavior
    I have no clue if yml accepts { }, it's a strange parser anyway. maybe wiki knows more then we do... [​IMG]

    I am currently working on my black box (have an old white computer and a new(er) black one, they are nicknamed blackbox and whitebox) untill i get the whole server setup up and running. Problem now is my upload lies around ~20k/sec wich isn't by far good enough for a server. But it's a KPN problem and they are going to fix it soon.

    I have 2 good friends that are willing to setup a dedicated box for minecraft servers, my dream is to have a multiserver setup in wich we can use server portals to visit each others servers. Each server would run a multiworld setup so we have our little minecraft universe [​IMG]
     
  24. </nl mode> ook brabant hier, Oss<nl mode/>
    Fully agree on that one, but I just had to ask this, but that would be my only dutch words onhere anyway.
    Well after parsing the output is shown between { } so that's what made me think about this, but like I said earlier, it's really a long time ago that I have been involved in any java programming.
    OK, well this certainly sounds interesting, but for now it looks impossible to me, you are talking about different physical servers, so not 1 server running multiple instances of bukkit or minecraft server on different ports?
    Well I do like the sound of this, just like the old days (am I that old, mean pre internet age) when different bbs servers hooked up among eachother through fido net for instance, wow the minecraft world could grow a whole lot more this way, really sounds interesting ;)
     
  25. Offline

    saturnine_nl

    there is a plugin that could do this kind of multiserver portal thing. So i would really like to get the most out of that.
    It works on different physical servers as far as i can tell. http://forums.bukkit.org/threads/tp-server-port-v253-teleport-between-servers-344.777/

    and indeed this has great potential, and these old days ... most of the people here don't have a clue that commodore once ruled the world [​IMG] where 128K was a huge amount of memory ... hmmm we're getting old [​IMG]
     
  26. Offline

    Rick Myers

    Ok. after reviewing my problem, I finally got fed up with the essentialsgropmanager and went back with permisions. I've got it working on my server but one problem. none of my ops can use the /give command. This problem does not show in logs but in game when a op uses the command..

    example:
    /give djrick2005 46 64 or /give djrick2005 tnt 64

    in game console result-
    Error: Unknown Item Numeric: ItemStack{TNT x 0}

    also tried the /item command and same result as well.

    any ideas?

    here's my world.yml file. http://pastebin.com/3zyNZucc
     
  27. Offline

    zeph

    You are overloading.

    You give admins all permissions ('*'), then list some additional permissions, duplicating them.

    You also have not given any users the Admin ability, eg:
    1. users:
    2. YourNameHere:
    3. group: Admins
    4. permissions:
     
  28. Offline

    Rick Myers

    ok done. I think. but it still don't work.

    http://pastebin.com/npxcCwsr

    also tried it in server's console, but it won't work there either.

    here's my log. http://pastebin.com/c9qsyweC
     
  29. Offline

    Kommy000

    ehh. I just updated from 2.1 to this version and now I have no access to /modgrp . Thats pretty important command. Can you please enable it back?? I have admins that have access to that command and they are able to promote users from default group to Member group that allows them warp and do other things. Now I have to go into the file manuallly and add them. So people have to wait for me to get off work and do that. Also I was going to use that command to demote people to no build group.
    Please fix
     
  30. you didn't fix anything!! it's still not working!!

    :( :S :(
     
  31. Offline

    pacioc193

    Where i can find a list of all type of permissions? like essential.* or other one?
     
Thread Status:
Not open for further replies.

Share This Page