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

    Tiernan Watson

    Sorry... again, for late reply. Um, I just upgraded to 3.x so that didn't fix the problem so here are some of the files:

    groups.yml
    users.yml
    Link to server.log.

    I couldn't find Globals or storageconfig.yml in the folder.
     
  3. Offline

    Unknown_1

    I know double posting is not good but I think this is more a permissions issue then an essentials one.

    It seems that permission is responding differently based on the case of the world. Notice "daniel" it shows I have permission (correct) yet if I have "Daniel" it will show incorrectly. Note user player is assigned all of the permissions noted below because the group is set as a default group. And user player does not have any group assigned to him.

    15:10:42 [INFO] º9[PLAYER_COMMAND] Player: /i sand
    15:10:42 [WARNING] Player was denied access to command.
    15:10:51 [INFO] Connection reset
    15:10:51 [INFO] Player lost connection: disconnect.quitting
    15:10:53 [INFO] Freed 276.907 MB.
    >pr player w:daniel has essentials.item
    15:11:51 [INFO] [Permissions] User/Group has that permission.
    >pr player w:daniel has essentials.itemspawn.exempt
    15:11:57 [INFO] [Permissions] User/Group has that permission.
    >pr player w:Daniel has essentials.item
    15:12:08 [INFO] [Permissions] User/Group does not have that permission.
    >pr player w:Daniel has essentials.itemspawn.exempt
    15:12:13 [INFO] [Permissions] User/Group does not have that permission.
    >pr player w:Daniel has essentials.help
    15:12:19 [INFO] [Permissions] User/Group has that permission.
    >pr player w:daniel has essentials.help
    15:15:32 [INFO] [Permissions] User/Group has that permission.

    Why would it only cause a problem with the "item"?

    Thanks for any and all help.
     
  4. Offline

    J_Bit

    hi, um, i really don't know how to fix this, but i get this error:

    Code:
    21:50:54 [SEVERE] while parsing a block collection
     in "<reader>", line 65, column 13:
                    - 'iConomy.list'
                    ^
    expected <block end>, but found Scalar
     in "<reader>", line 75, column 16:
                    - 'jail.command.jailcreate'
                       ^
    
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockSequenceEntry.produce(ParserImpl.java:520)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:163)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeSequenceNode(Composer.java:203)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:158)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:122)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:124)
    21:50:54 [SEVERE]     at org.yaml.snakeyaml.Yaml.load(Yaml.java:264)
    21:50:54 [SEVERE]     at com.nijiko.configuration.NotNullConfiguration.load(NotNullConfiguration.java:54)
    21:50:54 [SEVERE]     at com.nijiko.data.YamlGroupStorage.reload(YamlGroupStorage.java:178)
    21:50:54 [SEVERE]     at com.nijiko.data.YamlGroupStorage.<init>(YamlGroupStorage.java:29)
    21:50:54 [SEVERE]     at com.nijiko.data.YamlCreator.getGroupStorage(YamlCreator.java:58)
    21:50:54 [SEVERE]     at com.nijiko.data.StorageFactory.getGroupStorage(StorageFactory.java:129)
    21:50:54 [SEVERE]     at com.nijiko.permissions.ModularControl.forceLoadWorld(ModularControl.java:93)
    21:50:54 [SEVERE]     at com.nijiko.permissions.ModularControl.loadWorld(ModularControl.java:84)
    21:50:54 [SEVERE]     at com.nijiko.permissions.ModularControl.load(ModularControl.java:104)
    21:50:54 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.setupPermissions(Permissions.java:186)
    21:50:54 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.onLoad(Permissions.java:139)
    21:50:54 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:112)
    21:50:54 [SEVERE]     at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:232)
    21:50:54 [SEVERE]     at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:219)
    21:50:54 [SEVERE]     at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:146)
    21:50:54 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:283)
    21:50:54 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    21:50:54 [SEVERE] [Permissions] Unable to load permission data.
    21:50:54 [SEVERE] [Permissions] Shutting down Permissions due to error(s).
    And this is how i lay out my permissions:

    Code:
    ##
    
    ##
    # AntiBuild is included with this.  To disable a group from being able to build then
    # set the build: flag to false (build: false).  If you want a group to be able to build
    # then set it to true.
    ##
    # Groups can contain inheritance.
    #   To make a group inherit the permissions from another
    #   group simply place the groups name in the "inheritance:" like so:
    #
    #   Example:
    #       inheritance:
    #           - Default
    ##
    #   Globalized Permission settings:
    #
    #       If a permission contains periods (.) you can denote a globalized parameter:
    #
    #           - 'foo.*'
    #
    #       This will allow you to use all general commands.
    #
    ##
    #   Single Asterisk denotes all commands:
    #
    #       - '*'
    ##
    #   To exempt a node use the - prefix like so:
    #       - '-foo.bar'
    ##
    #   prefix: and suffix: do not do anything on their own.  You need another outside plugin
    #   such as iChat or HeroChat in order for these to do anything.
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - 'iConomy.acess'
                - 'iConomy.bank.acess'
                - 'iConomy.list'
                - 'iConomy.payment'
                - 'iConomy.rank'
                - 'WolfSpawn.release'
                - 'WolfSpawn.respawn'
                - 'WolfSpawn.spawn'
                - 'WolfSpawn.spawnatplayer'
                - 'chaircraft.sit'
                - 'falsebook.blocks.*'
                - 'falsebook.anyic'
                - 'elevator.builder'
                - 'falsebook.ic.xxx'
                - 'jail.usercmd.jailstatus'
        Host:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - 'Default'
            permissions:
                - 'iConomy.list'
                - 'iConomy.payment'
                - 'iConomy.rank'
                - 'WolfSpawn.release'
                - 'WolfSpawn.respawn'
                - 'WolfSpawn.spawn'
                - 'WolfSpawn.spawnatplayer'
                - 'chaircraft.sit'
                - 'falsebook.*'
                - 'falsebook.anyic
                - 'jail.command.jailcreate'
                - 'jail.command.jailcreatecells'
                - 'jail.command.jaildelete'
                - 'jail.command.jail'
                - 'jail.command.unjail'
                - 'jail.command.jailtransfer'
                - 'jail.command.jailtransferall'
                - 'jail.command.jailcheck'
                - 'jail.command.jailtelein'
                - 'jail.command.jailteleout'
                - 'jail.command.jaillist'
                - 'jail.command.unjailforce'
                - 'jail.command.jailclear'
                - 'jail.command.jailclearforce'
                - 'jail.command.jailmute'
                - 'jail.command.jailstop'
                - 'jail.usejailstick50'
                - 'jail.canbestickjailed'
                - 'jail.openchest'/CODE]
     
  5. Offline

    Takel

    The error should give you a hint. There's some bad formatting in the groups.yml file around that line.
    Sure enough, there is. The previous line:
    Code:
        - 'falsebook.anyic
    is missing the ending single quote mark.
     
  6. Offline

    Tokyrn

    I have bad error with bigbrother :
    Code:
    2011-06-13 13:51:39 [SEVERE] java.lang.IllegalAccessError: tried to access class com.nijiko.permissions.ModularControl$RefreshTask from class com.nijiko.permissions.ModularControl
    2011-06-13 13:51:39 [SEVERE]     at com.nijiko.permissions.ModularControl.<clinit>(ModularControl.java:45)
    2011-06-13 13:51:39 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.setupPermissions(Permissions.java:184)
    2011-06-13 13:51:39 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.onLoad(Permissions.java:139)
    2011-06-13 13:51:39 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:106)
    2011-06-13 13:51:39 [SEVERE]     at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:232)
    2011-06-13 13:51:39 [SEVERE]     at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:219)
    2011-06-13 13:51:39 [SEVERE]     at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:146)
    2011-06-13 13:51:39 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
    2011-06-13 13:51:39 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-06-13 13:51:39 [SEVERE] [Permissions] Unable to load permission data.
    2011-06-13 13:51:39 [SEVERE] [Permissions] Shutting down Permissions due to error(s).
    2011-06-13 13:51:39 [INFO] [Permissions] (Yeti) was initialized
    Have you idea ?
     
  7. Offline

    Maxis010

    Everyone complaining about Globals needs to know the following
    THEY ARE PURE INHERITANCE FILES, THEY CAN NOT DEFINE ACTUAL GROUPS
    Until further notice you still need to create files per world, if you wish to use the globals then have your per world files inherit from your global files
    I'm going to update the wiki with this warning
     
  8. Offline

    15austin

    Is it possible to give a group all permissions and then take some away such as:
    Code:
        Admins:
            default: false
            info:
                prefix: '&4'
                build: true
            permissions:
                - '*'
                - '-jail.openchest'
                - '-essentials.thunder'
                - '-essentials.lightning'
                - '-essentials.clearinventory.others'
                - '-essentials.burn'
                - '-essentials.kill'
                - '-essentials.nuke'
                - '-essentials.god.others'
                - '-essentials.god'
                - '-worldguard.god'
                - '-worldguard.god.other'
                - '-mcmmo.tools.mcgod'
    If not, would i have to take away all commands and give them back 1 by 1?
     
  9. Offline

    dog.big

    hello,
    is this new permissions fully compatible with plugins which use permissions 2.x? Should i be worried?
     
  10. Offline

    Wolfman2307

    How do i do this? I find this confusing that it cant define actual groups but you still can define groups in it.

    Having 3 worlds on a dedicated server, it takes a lot of time to update each individual world. Also it means that only I can do it because I am the only admin with access to the files.

    Another question, how do I add a user to a group with ingame commands. I tried the tracks and it said that they were promoted, after checking all the ymls he was still in the same group. Is there no other way e.g.
    /permissions PLAYER g:Mod w:World?
     
    Luckz likes this.
  11. Offline

    erdrickk

    Fuck this 3.x bull shit. Nothing but problems and complaints. Why did you guys have to change it? 2.7.4 was perfect, never had an issue with it and I am sticking with it until the very last possible second until all my plugs become 3.x required.
     
    Luckz likes this.
  12. Offline

    J_Bit

    thanks, i really didn't see that (obviously) :)
     
  13. Offline

    Wolfman2307

    I HAD to change because the webconsole tool I used stopped supporting 2.7.4 so now I have to deal with it
     
  14. Offline

    Tokyrn

    No solution for java.lang.IllegalAccessError: tried to access class com.nijiko.permissions.ModularControl$RefreshTask from class com.nijiko.permissions.ModularControl ?
     
  15. Offline

    FireFreak111

    The MySQL is really confusing. The most confusing part is the PrData table. And the online converter fails epicly, it adds shit to tables that don't exist/work and that is what screws up the conversion from YAML to SQL. Can you please fix the online converter to use the tables that are defined in the Wiki Database Schema. Alot of people really want to use MySQL but the converter is screwed at the moment.
     
  16. Thanks, that helped :)
    Now it all works!
     
  17. Offline

    materschief

    Code:
    # System is no longer used, but may become used in the future
    # Copies is for multiple-world support
    #   Put the name of the world you wish for it to be a clone of, otherwise leave it empty.
    #   If this file is for your default world (the one in server.properties) then you must
    #   leave copies blank.
    #  Example: copies: Derp    -  This will clone the permissions of the world Derp
    #
    # Make sure to rename this file to the name of the world that is in sever.properties under
    # level-name.  So if it is level-name: world  then this should be world.yml and in the
    # plugins/Permissions directory (ie. plugins/Permissions/world.yml)
    #
    # NOTE: Do not use tabs while editing this document.  Use only spaces.  A good way to avoid
    # doing this is to use Notepad++ and replace the tab with 4 spaces.
    plugin:
        permissions:
            system: default
            copies:
    
    ##
    # AntiBuild is included with this.  To disable a group from being able to build then
    # set the build: flag to false (build: false).  If you want a group to be able to build
    # then set it to true.
    ##
    # Groups can contain inheritance.
    #   To make a group inherit the permissions from another
    #   group simply place the groups name in the "inheritance:" like so:
    #
    #   Example:
    #       inheritance:
    #           - Default
    ##
    #   All permissions including the asterisks must be placed in single quotes.
    #   like so:
    #
    #       - 'foo.bar'
    #
    #   Otherwise errors will happen!
    ##
    #   Globalized Permission settings:
    #
    #       If a permission contains periods (.) you can denote a globalized parameter:
    #
    #           - 'foo.*'
    #
    #       This will allow you to use all general commands.
    #
    ##
    #   Single Asterisk denotes all commands:
    #
    #       - '*'
    #   If you give a group this permissions, do not have the group inherit any permissions
    #   from other groups.  Any users assigned to this group should NOT be given any additional
    #   permissions either.
    ##
    #   To exempt a node use the - prefix like so:
    #       - '-foo.bar'
    ##
    #   prefix: and suffix: do not do anything on their own.  You need another outside plugin
    #   such as iChat or HeroChat in order for these to do anything.
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - 'mywolf.setname'
                - 'mywolf.release'
                - 'mywolf.leash'
                - 'mywolf.chest.add'
                - 'mywolf.chest.open'
                - 'mywolf.info'
                - 'mywolf.food.hp'
                - 'mywolf.food.lives'
                - 'mywolf.pickup.add'
                - 'mywolf.pickup.open'
                - 'mywolf.call'
                - 'mywolf.stop'
                - 'BetterShop.user.*'
                - 'towny.nation.new'
                - 'towny.spawntp'
                - 'towny.town.claim'
                - 'towny.town.new'
                - 'myhome.home.*'
                - 'admincmd.player.list'
                - 'admincmd.player.msg'
                - 'iConomy.list'
                - 'iConomy.payment'
                - 'iConomy.rank'
                - 'lwc.protect'
                - 'antihack.canfly'
                - 'travelportals.portal.create'
                - 'travelportals.portal.destroy'
                - 'travelportals.portal.use'
                - 'travelportals.command.help'
                - 'travelportals.command.name'
                - 'travelportals.command.warp'
                - 'travelportals.command.info'
                - 'falsebook.blocks.0020'
                - 'falsebook.blocks.0111'
                - 'falsebook.blocks.0230'
                - 'falsebook.blocks.0260'
                - 'falsebook.blocks.0261'
                - 'falsebook.blocks.0262'
                - 'falsebook.blocks.0270'
                - 'falsebook.blocks.0271'
                - 'falsebook.blocks.0272'
                - 'falsebook.blocks.0420'
                - 'falsebook.blocks.1000'
                - 'falsebook.blocks.1001'
                - 'falsebook.blocks.1017'
                - 'falsebook.blocks.1018'
                - 'falsebook.blocks.1020'
                - 'falsebook.blocks.1110'
                - 'falsebook.blocks.1205'
                - 'falsebook.blocks.1206'
                - 'falsebook.blocks.1207'
                - 'falsebook.blocks.1230'
                - 'falsebook.blocks.1260'
                - 'falsebook.blocks.1261'
                - 'falsebook.blocks.1263'
                - 'falsebook.blocks.1262'
                - 'falsebook.blocks.1270'
                - 'falsebook.blocks.0271'
                - 'falsebook.blocks.0272'
                - 'falsebook.blocks.2020'
                - 'falsebook.blocks.2100'
                - 'falsebook.blocks.2101'
                - 'falsebook.blocks.3000'
                - 'falsebook.blocks.3001'
                - 'falsebook.blocks.3002'
                - 'falsebook.blocks.3003'
                - 'falsebook.blocks.3020'
                - 'falsebook.blocks.3021'
                - 'falsebook.blocks.3030'
                - 'falsebook.blocks.3031'
                - 'falsebook.blocks.3033'
                - 'falsebook.blocks.3034'
                - 'falsebook.blocks.3036'
                - 'falsebook.blocks.4000'
                - 'falsebook.blocks.4010'
                - 'falsebook.blocks.4100'
                - 'falsebook.blocks.4110'
                - 'falsebook.blocks.4200'
                - 'falsebook.blocks.bridge'
                - 'falsebook.blocks.door'
                - 'falsebook.blocks.gate'
                - 'falsebook.blocks.lift'
                - 'falsebook.ic.standard'
                - 'falsebook.ic.detection'
                - 'falsebook.ic.worldedit'
                - 'falsebook.ic.selftriggered'
    
        Moderator:
            default: false
            info:
                prefix: '&c'
                suffix: ''
                build: true
            inheritance:
                - Default
            permissions:
                - 'myhome.*'
                - 'admincmd.time.day'
                - 'admincmd.item.color'
                - 'admincmd.tp.*'
                - 'admincmd.player.*'
                - 'bb.admin.info'
                - 'bb.admin.watch'
                - 'kiwiadmin.kick'
                - 'kiwiadmin.tempban'
                - 'travelportals.command.deactivate'
                - 'travelportals.command.export'
                - 'travelportals.command.hide'
                - 'travelportals.command.list'
                - 'falsebook.blocks.hiddenswitch.create'
                - 'falsebook.blocks.hiddenswitch'
                - 'falsebook.blocks.area'
                - 'admincmd.time.set'
                - 'admincmd.time.day'
                - 'admincmd.item.add'
                - 'admincmd.item.blacklist'
                - 'admincmd.item.blacklist'
                - 'admincmd.item.more'
                - 'admincmd.item.repair'
                - 'admincmd.item.repair'
                - 'admincmd.item.color'
                - 'admincmd.tp.to'
                - 'admincmd.tp.location'
                - 'admincmd.tp.players'
                - 'admincmd.tp.from'
                - 'admincmd.player.list'
                - 'admincmd.player.loc'
                - 'admincmd.player.heal'
                - 'admincmd.player.kill'
                - 'admincmd.player.clear'
                - 'admincmd.player.msg'
                - 'admincmd.weather.clear'
                - 'admincmd.weather.storm'
                - 'admincmd.weather.strike'
                - 'admincmd.weather.thor'
                - 'admincmd.item.alias'
                - 'admincmd.item.alias'
                - 'admincmd.mob.spawn'
                - 'towny.admin'
        Admins:
            default: false
            info:
                prefix: '&c'
                suffix: ''
                build: true
            inheritance:
                - Default
                - Modeator
            permissions:
                - '*'
                - 'towny.admin'
    
    ##
    # 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:
        and:
            group: Admins
            permissions:
        be:
            group: Admins
            permissions:
        hallo:
            group: Admins
            permissions:
        becksice:
            group: Moderator
            permissions:
        hi:
            group: Admins
            permissions:
        ich:
            group: Admins
            permissions:
        name:
            group: Moderator
            permissions:
    
    this are my permissions but normal User can use falsebook commands like Dispenser but i didn't activate it for normal User. need help.
     
  18. Offline

    palz2015

    I still cannot set prefixes/suffixes for users. Permissions just ignores them. Here's my world.yml (I'm using 2.7):
    Code:
    plugin:
        permissions:
            system: default
            copies: null
    groups:
        Default:
            default: true
            info:
                prefix: '&7Guest - &f'
                suffix: ''
                build: false
                rank: 1
            inheritance:
            - Default
            permissions:
            - essentials.help
            - essentials.spawn
            - lwc.blockinventory
        Builder:
            default: false
            info:
                prefix: '&f[Builder]&3'
                suffix: ''
                build: true
                rank: 2
            inheritance:
            - Default
            permissions:
            - essentials.portal
            - essentials.back
            - essentials.home
            - essentials.sethome
            - essentials.warp
            - essentials.warp.list
            - essentials.msg
            - essentials.afk
            - essentials.rules
            - essentials.motd
            - essentials.me
            - essentials.list
            - essentials.mail
            - essentials.mail.send
            - essentials.helpop
            - essentials.suicide
            - lwc.protect
            - essentials.sign.protection.create
            - essentials.sign.protection.use
            - essentials.sign.disposal.create
            - essentials.sign.disposal.use
            - worldguard.region
            - worldedit.selection.hpos
            - worledit.selection.pos
            - essentials.signs.free.use
            - nspleef.member.creategame
            - nspleef.member.deletegame
            - nspleef.member.join
            - nspleef.member.leave
            - nspleef.member.list
            - nspleef.member.wager
            - essentials.signs.buy.use
            - essentials.signs.trade.use
            - essentials.signs.trade.create
            - essentials.signs.sell.use
            - essentials.signs.sell.create
            - essentials.signs.heal.use
            - essentials.signs.free.use
            - essentials.worth
            - essentials.balance
            - essentials.pay
            - essentials.sell
            - worldguard.region.define
            - worldguard.region.redefine
            - regios.createdelete
            - regios.modify
            - regios.protect
            - regios.customise-entry
            - iConomy.list
            - iConomy.payment
            - essentials.tpa
            - essentials.tpaccept
            - essentials.tpdeny
            - essentials.tpahere
            - essentials.tptoggle
        VIP:
            default: false
            info:
                prefix: '&f[VIP]&6^'
                suffix: ''
                build: true
                rank: 3
            inheritance:
            - Builder
            permissions:
            - essentials.jump
            - essentials.top
            - worldguard.region
            - essentials.tp
            - essentials.tphere
        AP:
            default: false
            info:
                prefix: '&f[AP]&e^^'
                suffix: ''
                build: true
                rank: 4
            inheritance:
            - VIP
            permissions:
            - essentials.item
            - essentials.signs.buy.create
        Donator:
            default: false
            info:
                prefix: '&f[$]&2^^^'
                suffix: ''
                build: true
                rank: 5
            inheritance:
            - AP
            permissions:
            - essentials.give
        Moderator:
            default: false
            info:
                prefix: '&f[Mod]&a*'
                suffix: ''
                build: true
                rank: 6
            inheritance:
            - Donator
            permissions:
            - essentials.broadcast
            - -essentials.kill
            - essentials.ban
            - essentials.banip
            - essentials.mute
            - essentials.kick
            - essentials.unban
            - essentials.unbanip
            - essentials.togglejail
            - essentials.jail.exempt
            - essentials.give
            - essentials.clearinventory
            - lwc.mod
            - essentials.god
            - worldedit.thaw
            - worldedit.snow
            - worldedit.butcher
            - worldedit.drain
            - worldedit.generation.forest
            - worldedit.generation.pumpkins
            - worldedit.history.redo
            - worldedit.history.undo
            - worldguard.*
            - worldedit.superpickaxe
            - nspleef.admin.define
            - nspleef.admin.deleteanygame
            - nspleef.admin.deletearena
            - nspleef.admin.forceready
            - essentials.eco
            - p2.promote
            - p2.demote
            - p2.user.*
            - bb.admin.*
            - regios.*
        SuperModerator:
            default: false
            info:
                prefix: '&f[SuperMod]&b**'
                suffix: ''
                build: true
                rank: 7
                plimit: 6
            inheritance:
            - Moderator
            permissions:
            - essentials.setwarp
            - essentials.delwarp
            - essentials.setspawn
            - essentials.time
            - essentials.tree
            - essentials.bigtree
            - essentials.kickall
            - essentials.burn
            - essentials.signs.free.create
            - essentials.signs.heal.create
            - essentials.ext
            - essentials.plugin
            - essentials.spawnmob
            - essentials.heal
            - worldedit.*
            - essentials.nick
            - p2.*
        Admin:
            default: false
            info:
                prefix: '&f[Admin]&4***'
                suffix: ''
                build: true
                rank: 8
            inheritance:
            - SuperModerator
            permissions:
            - '*'
        NS:
            default: false
            info:
                prefix: '&f[Admin]&4***'
                suffix: ''
                build: true
                rank: 8
                plimit: 8
            inheritance:
            - SuperModerator
            permissions:
            - '*'
        King:
            default: false
            info:
                prefix: '&f[King]&6$$$'
                suffix: ''
                build: true
                rank: 9
            inheritance:
            - Admin
            permissions:
            - '*'
    users:
        palz2015:
            group: King
            info:
                suffix: '&a[Test]&f'
            permissions:
            - -worldguard.god
    
     
  19. Offline

    fortress_na-f

    It works with [860] Great!
     
  20. Offline

    xyxgreendayxyx

    You need to have another chat plugin, try iChat
     
  21. Offline

    VirusWare

    Hi

    I think its sound stupid but i uses the essentials bridge for using permissins but now i will use 3.0.

    My problehm is i did not find the command to set a user X to Group Y

    Pls Help me and sorry for my english
     
  22. Offline

    Maxis010

    I don't use the globals or inheritance as I have a very simple system, you are an admin or a member so I don't have a dam clue about he globals

    As for a command use the following
    /pr PLAYER w:WORLD parents add GROUP
    And to remove someone it's the same again only it's remove instead of add
    See above
     
  23. Offline

    Gritania

    Does this work for 860? Cause it doesn't say it in title but there is noone saying "Update to 860 NAOW!"
     
  24. Offline

    cholo71796

    It works with 860- the number in the title is just the recommended build for the plugin- they haven't thoroughly tested it on 860 yet.
     
  25. Offline

    Vhab

    You can use caps and shout that... but you're neglecting the fact this isn't documented anywhere.
    Instead of putting up a warning and accusing users, how about properly documenting all features?

    As I've mentioned before, the behavior is unintuitive and very confusing. Without proper documentation it's impossible for users to understand how the system works and how it is intended to use.

    And in all honesty, I'd argue the current behavior is flawed.
    The way I've currently observed the system (and that's the only thing I can go by as the documentation isn't there...) it's overly complex.
    And this complexity actually made the more common and straightforward setups impossible.

    However, I've been told the authors are aware of this and intend to remedy the situation.
    Meanwhile I suggest if you intend to make a contribution, write some documentation.
    Warnings are useless when the actual behavior and intended use is not documented.

    And before you state you are 'documenting' this, the wiki page you created is not documentation.
    It still doesn't include how to actually accomplish the tasks you're instructing the user to do.
    It vaguely describes certain behavior without any concrete information on how it works, how to use it and when to use it.

    And the biggest irony in your post; users aren't even complaining that much.
    At least the majority isn't. We're just looking for information on how to work with globals.
     
  26. Offline

    sbeex

    Hello,
    sorry to ask it but... does it really works with MySQL ? Cause I really need it for my website. But I tried and it don't seems working... only errors... can u give me a good link to install it from 0 ? thanks !
     
  27. Offline

    halvors

    I get errors when use permissons:

    Code:
    2011-06-13 18:36:37 [SEVERE] Could not pass event PLUGIN_ENABLE to iConomyChestShop
    java.lang.ClassCastException: com.nijikokun.bukkit.Permissions.Permissions cannot be cast to com.nijikokun.bukkit.Permissions.Permissions
        at com.Acrobot.iConomyChestShop.iConomyChestShopPluginListener.onPluginEnable(iConomyChestShopPluginListener.java:39)
        at org.bukkit.plugin.java.JavaPluginLoader$38.execute(JavaPluginLoader.java:504)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:806)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:253)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:140)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:118)
        at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:345)
        at org.bukkit.command.SimpleCommandMap$ReloadCommand.execute(SimpleCommandMap.java:247)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:128)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:279)
        at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:428)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:413)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:309)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    
     
  28. Offline

    Jeyge

    You can't find those things or the old 2.x files because you aren't even running Permissions. You are running GroupManager. You'll need to ask your questions in the Essentials thread.

    Post that proof or submit it as a pull request on the GitHub because I think outside of the plugin developers compiling their plugins against a specific version of Permissions, there hasn't been any other problems discovered. But then again, we haven't been given any information on the problem at all.

    Most files/plugins are actually case sensitive so I would expect that Daniel and daniel would be 2 different worlds.

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

    palz2015

    The point is that it works fine for groups, but not when I define a prefix for a user.
     
  30. Offline

    Tiernan Watson

    But I got those files when I downloaded the latest release in this thread and it came in a folder called permissions-bin. Which of course I set up properly following the instructions.
     
  31. Offline

    Jeyge

    I'm not sure what to tell you. You are running GroupManager and not Permissions. You can't run both of them even if Permissions was on your system. GroupManager will always take control as is the normal way of anything Essentials.
     
Thread Status:
Not open for further replies.

Share This Page