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

    Jeyge

    The missing prefix/suffix message is from GroupManager and just means that you still have a user assigned to Default but the plugin couldn't find a Default group.
    Perhaps once the chat plugins support the multi-groups in some way but for now, you will have to live with just one.
    Post your server.log and your permissions yml files and someone will take a look at it.
    Take a look at the OP and/or the wiki FAQ for a way to fix the IllegalAccessError.
    I believe there are a couple converters listed in the first post.
    Post your storageconfig.yml with the username and password changed. Also, I don't quite understand the line about capitals. Are you saying your shift key is broken? That might cause a lot of problems if it is.

    One final thing, make sure you are running both Permissions.jar and PermissionsSQL.jar.
     
    scrub88 likes this.
  3. Offline

    The Zephyr Kid

    Hey this plugin works great! only problem is when i add someone to a group. they will randomly go back to the default group. It doesnt happen to everyone. and there is no set time or thing that causes it. Any ideas or suggestion?
     
  4. Offline

    Jeyge

    That usually happens if you use /reload instead of "/pr -reload all" to reload your permissions or some other config file. Or there was one report yesterday of someone using McMyAdmin and that happening too.
     
  5. Offline

    AegisZephyr

    Is there a way to stop permissions from adding every non-member that comes into our server? Every "default" member creates more and more entries into the users.yml and is a pain to clean out. Why does it add every Default person? Shouldn't it act the way the original permissions work without having to automatically add people in the default group or are we going to be forced to have an overbloated file with people that we don't even add to it?
    Currently on 3.1.6 on #953
     
  6. Offline

    Gangsta_hotdog

    Uhm, in game commands are broken for me. I have the latest permissions plugin. Whenever I type, for example "/pr add gangsta_hotdog Normal world" it tells me that the group/user doesn't exist, when it does because whenever I add the user to the config manually it works perfectly. Have I got the command wrong? Someone reply asap please, I am on the verge of going back to Groupmanager ffs.
     
  7. Offline

    Maxis010

    3 lines, size increases less than 1 Kb, I fail to see the problem
     
  8. Offline

    Jeyge

    I can't tell from what you typed what command you are trying to use. If you want to add a user to a world, you would use "/pr <user> create" for the world you are in and "/pr <user> w:<world> create" for a world you aren't currently in.
     
  9. Offline

    blackvoid

    I only get this with the online converter...
    Code:
    INSERT INTO PrWorlds (worldid, worldname) VALUES (1, 'world');
    So yeah...
     
  10. Offline

    Gangsta_hotdog

    Well I guess I have the command wrong then. I want to change the group a user is in, from what I read on the commands section I thought I had it right. Do you think you could make it clear to me what command I would use to change a users group, without all that (g:) (randomcrapI)[Don'tundersta]nd?
     
  11. Offline

    AegisZephyr

    @Maxis010
    You may not but this is not the tip of the issue. My main problem is that this is something new from permissions. Back when beta was in its infancy default members were not added to the config and having a gray-list was easier to manage. I find that many guests coming in at once while the server saves creates odd "null null null..." errors and other strange anomalies such as that. This is a daily issue on our server as we constantly have members continue to randomly revert, old members get deleted from the users.yml, etc. It makes it much more difficult and time consuming to look though every non-member to find who created the error and with each new guest that 1Kb gets very large very fast. Currently it takes me upwards of a half hour to search through each line to make sure that they are all correct. We are a fairly small and decently popular server with a capacity of only 30 members. I should not have to look through over 4000 lines of guests to find out which one caused a permissions error. It only takes one person to completely cause a permissions meltdown and plugins stop working because of it.
     
    Oscarius likes this.
  12. Offline

    Gangsta_hotdog

    I think it's because he doesn't like all the files being clogged with lots of names in, not a size issue.
    EDIT: Ignore this, he responded just before I posted this.
     
  13. Offline

    Jeyge

    Such terse responses today.
    As I found out yesterday playing with the converter and I'll pass along again, it requires perfectly set up YAML. So this will work:
    Code:
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: false
            inheritance:
        Member:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Default
            permissions:
                - 'warpplugin.warp'
                - 'econplugin.basic.*'
        Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Member
            permissions:
                - 'modplugin.ban'
                - 'modplugin.kick'
                - 'modplugin.unban'
        Admins:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '*'
    
    but this won't:
    Code:
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: false
            inheritance:
        Member:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            - Default
            permissions:
            - 'warpplugin.warp'
            - 'econplugin.basic.*'
        Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            - Member
            permissions:
            - 'modplugin.ban'
            - 'modplugin.kick'
            - 'modplugin.unban'
        Admins:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
            - '*'
    

    You can go with the simple command and just give them another group using "/pr <user> w:<world> parents add <group>" or go with the more complex command that uses tracks "/pr <user> w:<world> promote t:<track>". As long as you are running 3.1.6, you can also use the default track idea and just use "/pr <user> w:<world> promote". The dev made a few updates to the tracks page on the wiki if you want to go with that command. It now shows how to set up the default track.

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

    Gangsta_hotdog

    Ok, now I have the command right. Only problem is it gives me an internal error. Could someone decode this and tell me what the heck I have done wrong in english?
    Code:
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:129)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:298)
        at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:711)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:676)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:669)
        at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:84)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    Caused by: java.lang.NullPointerException
        at java.util.HashSet.<init>(Unknown Source)
        at com.nijiko.data.YamlGroupStorage.getTracks(YamlGroupStorage.java:284)
        at com.nijiko.permissions.PermissionWorld.getTracks(PermissionWorld.java:168)
        at com.nijiko.permissions.ModularControl.getTracks(ModularControl.java:532)
        at com.nijikokun.bukkit.Permissions.Permissions.onCommand(Permissions.java:731)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
        ... 12 more
    2011-07-04 22:05:11 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'permissions' in plugin Permissions v3.1.6
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:129)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:298)
        at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:711)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:676)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:669)
        at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:84)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    Caused by: java.lang.NullPointerException
        at java.util.HashSet.<init>(Unknown Source)
        at com.nijiko.data.YamlGroupStorage.getTracks(YamlGroupStorage.java:284)
        at com.nijiko.permissions.PermissionWorld.getTracks(PermissionWorld.java:168)
        at com.nijiko.permissions.ModularControl.getTracks(ModularControl.java:532)
        at com.nijikokun.bukkit.Permissions.Permissions.onCommand(Permissions.java:731)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
     
  15. Offline

    Jeyge

    Post your permissions yml files and what command you did to produce that.

    What types of errors are you getting nightly? It might be something that the dev needs to look at.

    As for why they are created in 3.x and weren't in 2.x was because everyone complained that they hated to have to create a user every time someone joined a server. So with 3.x, they were created automatically. Then everyone complained that they weren't actually in a group so they couldn't be promoted even though they had all of the default groups permissions and could easily be placed in a group with "parents add". So now they are put in the default group.

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

    Firepun

    Im getting REALLY pissed at this crud.

    Code:
    14:14:52 [SEVERE] while parsing a block collection
     in "<reader>", line 13, column 10:
                 - 'warpplugin.warp'
                 ^
    expected <block end>, but found BlockSequenceStart
     in "<reader>", line 14, column 13:
                    - 'econplugin.basic.*'
                    ^
    
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockSequenceEntry.produce(ParserImpl.java:520)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:163)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeSequenceNode(Composer.java:203)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:158)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:122)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:124)
    14:14:52 [SEVERE]     at org.yaml.snakeyaml.Yaml.load(Yaml.java:264)
    14:14:52 [SEVERE]     at org.bukkit.util.config.Configuration.load(Configuration.java:82)
    14:14:52 [SEVERE]     at com.nijiko.data.YamlUserStorage.performConversion(YamlUserStorage.java:35)
    14:14:52 [SEVERE]     at com.nijiko.data.YamlUserStorage.<init>(YamlUserStorage.java:30)
    14:14:52 [SEVERE]     at com.nijiko.data.YamlCreator.getUserStorage(YamlCreator.java:33)
    14:14:52 [SEVERE]     at com.nijiko.data.StorageFactory.getUserStorage(StorageFactory.java:76)
    14:14:52 [SEVERE]     at com.nijiko.permissions.ModularControl.forceLoadWorld(ModularControl.java:95)
    14:14:52 [SEVERE]     at com.nijiko.permissions.ModularControl.loadWorld(ModularControl.java:86)
    14:14:52 [SEVERE]     at com.nijiko.permissions.ModularControl.load(ModularControl.java:114)
    14:14:52 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.setupPermissions(Permissions.java:181)
    14:14:52 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.onLoad(Permissions.java:133)
    14:14:52 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:121)
    14:14:52 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:89)
    14:14:52 [SEVERE]     at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:51)
    14:14:52 [SEVERE]     at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:132)
    14:14:52 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    14:14:52 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    14:14:52 [SEVERE] [Permissions] Unable to load permission data.
    14:14:52 [SEVERE] [Permissions] Shutting down Permissions due to error(s).
    14:14:52 [INFO] [Permissions] (Yeti) was initialized.
    14:14:52 [INFO] [Permissions] (Yeti) disabled successfully.
     
  17. Offline

    Jeyge

    Your spacing is off. I can't tell which is correct but both of those lines should start in the same column. Post your permissions yml files if you need more help past that.
     
  18. Offline

    AegisZephyr

    @Jeyge
    Ill have to remember to save them and post them next time but when using notepad++ the errors appear similar to the attached image. Also there are random chop offs where it will have part of the username cut with a "za groups:" nearby and at the very bottom it will have "perm" then the next line "issions:" and just end up completely off the wall. Ill be sure to save a copy of it next time it screws up like that. I hope it isn't anytime soon though.
     

    Attached Files:

    Oscarius likes this.
  19. Offline

    Gangsta_hotdog

    I did "/pr gangsta_hotdog promote Normal"
    Groups.yml
    Code:
    groups:
      Normal:
        default: true
        permissions:
        - commandbook.call
        - commandbook.rules
        - commandbook.spawn
        - commandbook.who
        - lwc.protect
        - minecartmania.signs.*
        - mobRider.animals
        - mobRider.monsters
        - myhome.home.*
        - mywarp.warp.basic.createprivate
        - mywarp.warp.basic.createpublic
        - mywarp.warp.basic.warp
        - mywarp.warp.sign.warp
        inheritance: []
        info:
          prefix: '&e[Normal]'
          build: true
          suffix: ''
      Serverowner:
        default: false
        permissions:
        - '*'
        inheritance: []
        info:
          prefix: '&2[Server Owner]'
          build: true
          suffix: ''
      Admin:
        default: false
        permissions:
        - '*'
        inheritance: []
        info:
          prefix: '&4[Admin]'
          build: true
          suffix: ''
    
    Users.yml
    Code:
    users:
        Marx21:
            permissions: []
            groups:
            - Admin
        Gangsta_Hotdog:
            permissions: []
            groups:
            - Serverowner
        HaZaRD_JoKeR:
            permissions: []
            groups:
            - Admin
        Harix95:
            permissions: []
            groups:
            - Admin
        necroshade101:
            permissions: []
            groups:
            - Admin
     
  20. Offline

    Jeyge

    Yeah, that is bad. If you see it again, post your files in the Issues portion of the GitHub. It shouldn't be doing that.

    @Gangsta_hotdog
    There are a couple things wrong there. First, you don't have a track set up so promote isn't going to work for you. Second, that wouldn't be the syntax of the promote command. And third, your name in the users file is Gansta_Hotdog and not gansta_hotdog. Casing is very important when working with YAML files.
     
  21. Offline

    Gangsta_hotdog

    Omg, why does this have to be so hard. Groupmanager was so simple. Please explain what a "track" is, and how would I use it, and what is a "syntax"?
     
  22. Offline

    Jeyge

    Chat commands and their "syntax" can be found here and tracks here.
     
  23. Offline

    thescreem

    Hello, I'm having a bit of trouble with Permissions on MC version 1.7.2. Whenever I start the server up, Permissions throws this error:

    Code:
    2011-07-04 18:07:52 [INFO] Starting minecraft server version Beta 1.7.2
    2011-07-04 18:07:52 [INFO] Loading properties
    2011-07-04 18:07:52 [INFO] Starting Minecraft server on *:25565
    2011-07-04 18:07:52 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-904-g9277096-b953jnks (MC: 1.7.2)
    2011-07-04 18:07:52 [SEVERE] java.lang.IllegalAccessError: tried to access class com.nijiko.permissions.ModularControl$RefreshTask from class com.nijiko.permissions.ModularControl
    2011-07-04 18:07:52 [SEVERE]     at com.nijiko.permissions.ModularControl.<init>(ModularControl.java:64)
    2011-07-04 18:07:52 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.setupPermissions(Permissions.java:179)
    2011-07-04 18:07:52 [SEVERE]     at com.nijikokun.bukkit.Permissions.Permissions.onLoad(Permissions.java:133)
    2011-07-04 18:07:52 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:121)
    2011-07-04 18:07:52 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:89)
    2011-07-04 18:07:52 [SEVERE]     at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:51)
    2011-07-04 18:07:52 [SEVERE]     at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:132)
    2011-07-04 18:07:52 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    2011-07-04 18:07:52 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-07-04 18:07:52 [SEVERE] [Permissions] Unable to load permission data.
    2011-07-04 18:07:52 [SEVERE] [Permissions] Shutting down Permissions due to error(s).
    2011-07-04 18:07:52 [INFO] [Permissions] (Yeti) was initialized.
    2011-07-04 18:07:52 [INFO] [Permissions] (Yeti) disabled successfully.
    2011-07-04 18:07:52 [INFO] Preparing level "world"
    2011-07-04 18:07:53 [INFO] Preparing start region for level 0 (Seed: 3850433055)
    2011-07-04 18:07:54 [INFO] Preparing spawn area: 85%
    2011-07-04 18:07:54 [INFO] Preparing start region for level 1 (Seed: -3833205109474526276)
    2011-07-04 18:07:55 [INFO] Preparing spawn area: 97%
    After I get this error, Permissions doesn't work. Any help? :(
     
  24. Offline

    Gangsta_hotdog

    Thanks but that didn't really explain how exactly I set up these "tracks". Where do I put these tracks, what exactly to I edit into them, that sort of thing. Sorry if I am being a complete idiot here :/
     
  25. Offline

    Jeyge

    Seems to be a pretty frequent thing right now but there is help in the OP and/or in the wiki FAQ. Also, make sure you are running the most recent versions of your plugins. I saw earlier that the last plugin to cause that error was updated so if you have Help 3.x and all the other updated plugins, you shouldn't get the error anymore.

    Either at the end or the beginning. Just not inside the groups: section. The link to my post actually shows where I put mine and how to set it up for multiple groups. I also have an example of how to set up a RPG server with tracks using things like fighter and mage in this thread somewhere.
     
  26. Offline

    Gangsta_hotdog

    I worked out where to put it, but now it says the specified track does not exist. I am guesing this is something tiny that can be sorted out in 2 seconds, right? Here is my groups.yml:
    Code:
    groups:
      Normal:
        default: true
        permissions:
        - commandbook.call
        - commandbook.rules
        - commandbook.spawn
        - commandbook.who
        - lwc.protect
        - minecartmania.signs.*
        - mobRider.animals
        - mobRider.monsters
        - myhome.home.*
        - mywarp.warp.basic.createprivate
        - mywarp.warp.basic.createpublic
        - mywarp.warp.basic.warp
        - mywarp.warp.sign.warp
        inheritance: []
        info:
          prefix: '&e[Normal]'
          build: true
          suffix: ''
      Serverowner:
        default: false
        permissions:
        - '*'
        inheritance: []
        info:
          prefix: '&2[Server Owner]'
          build: true
          suffix: ''
      Admin:
        default: false
        permissions:
        - '*'
        inheritance: []
        info:
          prefix: '&4[Admin]'
          build: true
          suffix: ''
    tracks:
        trackname:
            - Normal
            - Admin
            - Serverowner
    
     
  27. Offline

    Jeyge

    @Gangsta_hotdog
    Now that you have the tracks there, you can type "/pr <user> (w:<world>) promote t:trackname". So your example above would be "/pr Gansta_Hotdog promote t:trackname" as long as you are in the world you want to promote yourself in or seeing as you are already in the Serverowner group, you can do "/pr Gansta_Hotdog demote t:trackname" to test it out.
     
  28. Offline

    oohTony

    Hello,
    I have three problems with Permission:

    1) All players who have a log sheet that automatically create the list of playersusers.yml even if they have no rights to build ...

    2) I have this error message:


    Code:
    00:21:27 [GRAVE]     at com.sk89q.bukkit.migration.NijiPermissionsResolver.hasPermission(NijiPermissionsResolver.java:61)
    00:21:27 [GRAVE]     at com.sk89q.bukkit.migration.PermissionsResolverManager.hasPermission(PermissionsResolverManager.java:102)
    00:21:27 [GRAVE]     at com.sk89q.worldedit.bukkit.BukkitPlayer.hasPermission(BukkitPlayer.java:111)
    00:21:27 [GRAVE]     at com.sk89q.worldedit.WorldEdit.getSession(WorldEdit.java:144)
    00:21:27 [GRAVE]     at com.sk89q.worldedit.bukkit.WorldEditPlugin.onDisable(WorldEditPlugin.java:115)
    00:21:27 [GRAVE]     at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:128)
    00:21:27 [GRAVE]     at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:878)
    00:21:27 [GRAVE]     at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:280)
    00:21:27 [GRAVE]     at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:273)
    00:21:27 [GRAVE]     at org.bukkit.plugin.SimplePluginManager.clearPlugins(SimplePluginManager.java:301)
    00:21:27 [GRAVE]     at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:329)
    00:21:27 [GRAVE]     at org.bukkit.command.SimpleCommandMap$ReloadCommand.execute(SimpleCommandMap.java:281)
    00:21:27 [GRAVE]     at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:129)
    00:21:27 [GRAVE]     at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:290)
    00:21:27 [GRAVE]     at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:480)
    00:21:27 [GRAVE]     at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:465)
    00:21:27 [GRAVE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
    00:21:27 [GRAVE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)

    3) And this one:


    Code:
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: '<NoAuthorGiven>' of 'WorldGuard' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: '<NoAuthorGiven>' of 'WorldEdit' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    00:21:30 [GRAVE] Nag author: 'TheNo1Yeti' of 'Permissions' about the following: This plugin is not properly shutting down its async tasks when it is being reloaded.  This may cause conflicts with the newly loaded version of the plugin
    



    Thank you very much for your help!
     
  29. Offline

    Gangsta_hotdog

    Specified track does not exist. I tried "/pr Gangsta_Hotdog demote Admin"
     
  30. Offline

    Jeyge

    @oohTony
    1) I'm not sure what a playersusers.yml file is. Is that something that another plugin creates?
    2) You cut off the most important part of that error message not that it would help me figure out what is going on though as it is a WorldEdit error message. Most likely it means that your Permissions plugin isn't loaded. You will need to either post the Permissions error or post your whole server.log.
    3) Probably caused by Permissions not being loaded and perhaps the use of a /reload.

    You really need to type what I gave you. The command again would be "/pr Gansta_Hotdog demote t:trackname". Give that a try.

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

    Gangsta_hotdog

    Ok thanks, I can now demote/promote myself.. how do I make it so I can give them a specific rank, like Normal? Would I have to demote them until they reach that rank or is there a specific command? Also is there a way to make it so Admins can't promote themselves to Serverowner?
     
Thread Status:
Not open for further replies.

Share This Page