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

    CHEEZEGR8DR

    ok
     
  3. Offline

    Antony

    Is anyone able to get Permissions to work with CraftBukkit build 815?
     
  4. Offline

    CHEEZEGR8DR

    i removed creative build but i am still getting errors!
     
  5. Offline

    Chasingu

    Erm, when I downloaded this and install it, all the files were blank...what do I do from here. I never really understood Permissions before, but now Im stumped.
     
  6. Offline

    Jeyge

    Download the zip version and you will get the read-me files that contain some basic permissions.
    The most basic would be "/pr Peter promote Builder AdminTrack". This will only work if you have set up the AdminTrack to include Builder and Moderator.
     
  7. Offline

    CHEEZEGR8DR

    2011-05-29 12:58:02 [SEVERE] java.lang.NullPointerException
    2011-05-29 12:58:02 [SEVERE] at com.nijiko.permissions.Entry.recursiveCheck(Entry.java:286)
    2011-05-29 12:58:02 [SEVERE] at com.nijiko.permissions.Entry.recursiveCheck(Entry.java:268)
    2011-05-29 12:58:02 [SEVERE] at com.nijiko.permissions.Entry.canBuild(Entry.java:252)
    2011-05-29 12:58:02 [SEVERE] at com.nijikokun.bukkit.Permissions.Listener.onBlockPlace(Listener.java:44)
    2011-05-29 12:58:02 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader$26.execute(JavaPluginLoader.java:419)
    2011-05-29 12:58:02 [SEVERE] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    2011-05-29 12:58:02 [SEVERE] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
    2011-05-29 12:58:02 [SEVERE] at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:84)
    2011-05-29 12:58:02 [SEVERE] at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:68)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.ItemBlock.a(ItemBlock.java:74)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.ItemStack.placeItem(ItemStack.java:56)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:217)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:535)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.Packet15Place.a(SourceFile:57)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.NetworkManager.a(NetworkManager.java:196)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:377)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:292)
    2011-05-29 12:58:02 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    2011-05-29 12:58:03 [SEVERE] java.lang.NullPointerException
    2011-05-29 12:58:03 [SEVERE] at com.nijiko.permissions.Entry.recursiveCheck(Entry.java:286)
    2011-05-29 12:58:03 [SEVERE] at com.nijiko.permissions.Entry.recursiveCheck(Entry.java:268)
    2011-05-29 12:58:03 [SEVERE] at com.nijiko.permissions.Entry.canBuild(Entry.java:252)
    2011-05-29 12:58:03 [SEVERE] at com.nijikokun.bukkit.Permissions.Listener.onBlockPlace(Listener.java:44)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader$26.execute(JavaPluginLoader.java:419)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:84)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:68)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.ItemBlock.a(ItemBlock.java:74)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.ItemStack.placeItem(ItemStack.java:56)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:217)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:535)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.Packet15Place.a(SourceFile:57)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.NetworkManager.a(NetworkManager.java:196)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:377)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:292)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    2011-05-29 12:58:03 [SEVERE] java.lang.NullPointerException
    2011-05-29 12:58:03 [SEVERE] at com.nijiko.permissions.Entry.recursiveCheck(Entry.java:286)
    2011-05-29 12:58:03 [SEVERE] at com.nijiko.permissions.Entry.recursiveCheck(Entry.java:268)
    2011-05-29 12:58:03 [SEVERE] at com.nijiko.permissions.Entry.canBuild(Entry.java:252)
    2011-05-29 12:58:03 [SEVERE] at com.nijikokun.bukkit.Permissions.Listener.onBlockPlace(Listener.java:44)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader$26.execute(JavaPluginLoader.java:419)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:84)
    2011-05-29 12:58:03 [SEVERE] at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:68)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.ItemBlock.a(ItemBlock.java:74)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.ItemStack.placeItem(ItemStack.java:56)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:217)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:535)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.Packet15Place.a(SourceFile:57)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.NetworkManager.a(NetworkManager.java:196)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:377)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:292)
    2011-05-29 12:58:03 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    2011-05-29 12:58:04 [SEVERE] java.lang.NullPointerException
    2011-05-29 12:58:04 [SEVERE] at com.nijiko.permissions.Entry.recursiveCheck(Entry.java:286)
    2011-05-29 12:58:04 [SEVERE] at com.nijiko.permissions.Entry.recursiveCheck(Entry.java:268)
    2011-05-29 12:58:04 [SEVERE] at com.nijiko.permissions.Entry.canBuild(Entry.java:252)
    2011-05-29 12:58:04 [SEVERE] at com.nijikokun.bukkit.Permissions.Listener.onBlockPlace(Listener.java:44)
    2011-05-29 12:58:04 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader$26.execute(JavaPluginLoader.java:419)
    2011-05-29 12:58:04 [SEVERE] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    2011-05-29 12:58:04 [SEVERE] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
    2011-05-29 12:58:04 [SEVERE] at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:84)
    2011-05-29 12:58:04 [SEVERE] at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:68)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.ItemBlock.a(ItemBlock.java:74)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.ItemStack.placeItem(ItemStack.java:56)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:217)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:535)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.Packet15Place.a(SourceFile:57)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.NetworkManager.a(NetworkManager.java:196)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:377)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:292)
    2011-05-29 12:58:04 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    2011-05-29 12:58:11 [SEVERE] Could not pass event PLAYER_CHAT to HeroChat
    java.lang.NullPointerException
    at com.nijiko.permissions.Entry.has(Entry.java:85)
    at com.nijiko.permissions.Entry.hasPermission(Entry.java:57)
    at com.nijiko.permissions.ModularControl.permission(ModularControl.java:288)
    at com.nijiko.permissions.ModularControl.permission(ModularControl.java:277)
    at com.nijiko.permissions.ModularControl.has(ModularControl.java:270)
    at com.herocraftonline.dthielke.herochat.util.PermissionManager.isAllowedColor(PermissionManager.java:138)
    at com.herocraftonline.dthielke.herochat.channels.Channel.sendMessage(Channel.java:105)
    at com.herocraftonline.dthielke.herochat.channels.Channel.sendMessage(Channel.java:81)
    at com.herocraftonline.dthielke.herochat.channels.Channel.sendMessage(Channel.java:132)
    at com.herocraftonline.dthielke.herochat.HeroChatPlayerListener.onPlayerChat(HeroChatPlayerListener.java:73)
    at org.bukkit.plugin.java.JavaPluginLoader$6.execute(JavaPluginLoader.java:278)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:671)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:660)
    at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
    at net.minecraft.server.NetworkManager.a(NetworkManager.java:196)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:377)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:292)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
     
  8. Offline

    Malkierian

    Workin just fine for me on 814-816. Just not all plugins work (most of mine do, though).
     
  9. Offline

    austech360

    Is there a default setting? to make a default group?
     
  10. Offline

    Jeyge

    You can get the default files from the zip download. Is that what you are looking for?
     
  11. Offline

    austech360

    No. Like, the default group. like. default: true or false.

    Edit: I use SQL
     
  12. Offline

    Takel

    I normally pride myself in reading the appropriate documentation and working things out myself, but I'm getting close to my wits end with getting world permission inheritance and mirroring working. Any ideas on what is going wrong?

    Here are my configs:
    storageconfig.yml
    Show Spoiler
    Code:
    permissions:
        storage:
            type: YAML
            worldcopy:
                Nether: MainWorld
            world-inheritance:
                ChildWorld: MainWorld
                TestWorld: MainWorld


    MainWorld - groups.yml
    Show Spoiler
    Code:
    groups:
        Guest:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: false
            inheritance:
            permissions:
                - '-commandbook.intro'
                - '-commandbook.midi'
                - '-commandbook.motd'
                - '-mcmmo.motd'
                - 'commandbook.msg'
                - 'commandbook.say'
        Inhabitant:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '-commandbook.intro'
                - '-commandbook.midi'
                - '-commandbook.motd'
                - '-mcmmo.motd'
                - 'bandages.use'
                - 'BetterShop.user.*'
                - 'commandbook.call'
                - 'commandbook.msg'
                - 'commandbook.say.*'
                - 'commandbook.return'
                - 'commandbook.whereami.*'
                - 'commandbook.who'
                - 'ecoCreature.Creature.*'
                - 'iConomy.bank.deposit'
                - 'iConomy.bank.join'
                - 'iConomy.bank.main'
                - 'iConomy.bank.withdraw'
                - 'iConomy.payment'
                - 'mcmmo.ability.*'
                - 'mcmmo.commands.myspawn' 
                - 'mcmmo.commands.party'
                - 'mcmmo.commands.ptp'
                - 'mcmmo.commands.setmyspawn' 
                - 'mcmmo.item.chimaerawing'
                - 'mcmmo.regeneration'
                - 'mcmmo.skills.*'
                - 'minecartmania.commands.momentum'
                - 'minecartmania.commands.st'
                - 'monsterhunt.usercmd.*'
                - 'scrollingmenusign.coloursigns'
                - 'scrollingmenusign.execute'
                - 'scrollingmenusign.scroll'
                - 'showcase.basic'
                - 'showcase.finite'
                - 'showcase.buy.*'
        PowerUser:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Inhabitant
            permissions:
                - 'commandbook.more'
                - 'commandbook.time.*'
                - 'commandbook.weather.*'
                - 'scrollingmenusign.commands.add'
                - 'scrollingmenusign.commands.break'
                - 'scrollingmenusign.commands.create'
                - 'scrollingmenusign.commands.page'
                - 'scrollingmenusign.commands.remove'
                - 'scrollingmenusign.commands.show'
                - 'worldedit.fixwater'
                - 'worldedit.butcher'
        Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Moderator
            permissions:
                - 'commandbook.bans.*'
                - 'commandbook.kick'
                - 'commandbook.give.*'
                - 'commandbook.more.infinite'
                - 'commandbook.mute'
                - 'commandbook.teleport.*'
                - 'iConomy.admin.stats'
                - 'permissions.promote.PlayerType'
                - 'showcase.infinite'
    
        Player:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:       
        Administrator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '*'
                
        Contractor:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - 'worldedit.extinguish'
        Builder:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance: Contractor
            permissions:
                - 'worldedit.chunkinfo'
                - 'worldedit.clipboard.clear'
                - 'worldedit.clipboard.copy'
                - 'worldedit.clipboard.cut'
                - 'worldedit.clipboard.flip'
                - 'worldedit.clipboard.paste'
                - 'worldedit.clipboard.rotate'
                - 'worldedit.fixwater'
                - 'worldedit.history.redo'
                - 'worldedit.history.undo'
                - 'worldedit.navigation.*'
                - 'worldedit.region.*'
                - 'worldedit.selection.contract'
                - 'worldedit.selection.expand'
                - 'worldedit.selection.hpos'
                - 'worldedit.selection.shift'
                - 'worldedit.selection.outset'
                - 'worldedit.selection.inset'
                - 'worldedit.selection.size'
                - 'worldedit.tool.data-cycler'
        Architect:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Builder
            permissions:
                - 'worldedit.analysis.*'
                - 'worldedit.brush.*'
                - 'worldedit.chunkinfo'
                - 'worldedit.clipboard.*'
                - 'worldedit.drain'
                - 'worldedit.fill'
                - 'worldedit.generator.*'
                - 'worldedit.limit'
                - 'worldedit.listchunks'
                - 'worldedit.regen'
                - 'worldedit.snow'
                - 'worldedit.thaw'
                - 'worldedit.tool.*'
        WorldLord:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Architect
            permissions: 
                - 'worldedit.anyblock'
                - 'worldedit.limit.unrestricted'
                - 'worldedit.delchunks'
                - 'worldedit.scripting.execute'
                - 'worldedit.selection.*'
                - 'worldedit.snapshots.*'
                - 'worldedit.superpickaxe.*'
    
        Native:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - 'wormhole.use.sign'
                - 'wormhole.network.use.*'
        Transworld:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance: Native
            permissions:
                - 'wormhole.list'
                - 'wormhole.remove.own'
                - 'wormhole.network.build.MainWorld'
        WarpLord:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Transworld
            permissions:
                - 'wormhole.build'
                - 'wormhole.go'
                - 'wormhole.network.build.*'
                - 'wormhole.remove.all'
                - 'wormhole.use.dialer'
    
        PermissionTester:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - 'permissions.*'
    
    tracks:
        PlayerType:
            - Guest
            - Inhabitant
            - PowerUser
            - Moderator
        BuildLevel:
            - Contractor
            - Builder
            - Architect
            - WorldLord
        WarpGates:
            - Native
            - Transworld
            - WarpLord
        Administration:
            - Player
            - Administrator


    As soon as the server loads up, I do a pr -list worlds to get a list on the world configs that are loaded. The console output is: [Permissions] Loaded worlds: * ,MainWorld
    First question: Can I rightly assume that the other worlds have been loaded even though they are not explicitly mentioned? Folders have been created for the other worlds which are loaded, even those who don't have an inheritance/mirror on the storageconfig.yml

    Second question: How is world inheritance supposed to work? If there is a config file, will the permissions in the config file for the child world apply as a layer on top of the parent? eg: If I were to have a groups.yml file for the child world, adding just a new permission to the Guest group and there is nothing else in the file; can I assume that the rest of the permissions will apply from the parent configuration?

    Right now, I simply cannot see any permissions being applied to the child or mirrored worlds on my test server. Attempting to promote or demote on the child world simply gives User/Group does not exist. Am I supposed to have dummy files in the world folders, or would that stuff up the inheritance/mirroring? Or should I assume that the feature is a work in progress and I should do permission mirroring/inheritance the old-fashioned way with multiple copies of the same configs?
     
  13. Offline

    melvinp

    How can i promote somebody ?

    Example:
    His name is: TEST
    World name is: Test-world
    his rank is: Default
    He needs to be promoted to: Builder

    Does anyone the command for it ?
     
  14. Offline

    Takel

    If there is a track for it, you can use the command:
    /pr TEST w:Test-world promote Default BuilderTrackName


    I'm assuming, however, there isn't, so you need to use the command:
    /pr TEST w:Test-world parents add Builder
    Note that this will simply add TEST to the Builder group. It's not a promotion, so you'll need to use:
    /pr TEST w:Test-world parents remove Default
    if you want to keep the group membership clean, and that is assuming that Builder inherits all of Default's permissions as necessary.
     
  15. Offline

    strontkever

    hello, im having some trouble getting persmissions for the default group, i want them to be able to use /home and /sethome, so iadded

    - 'essentials.home'
    - 'essentials.sethome'

    to the groups.yml file, but people still cant acces the command, what am i doin wrong

    [edit] could it be that the permissions are not compatible with 1.5.6?
    if i put '*' as a permission everyone gets acces to everything so its reading it

    stront
     
  16. Offline

    spiderben25

    Hi,
    I have a problem with a group.
    The user spitart14 is in the group Moderateur (i'm sure of that because I use iChat with the prefix and his name is coloured in the right color), but he doesn't have access to the permissions of the Moderateur group.
    When i type /pr g:Moderateur perms list, all the permissions are displayed.
    But when i type /pr spitart14 perms list, it says that the user doesn't have any permissions.
    Here are my config files :
    groups.yml : http://pastie.org/1997692
    users.yml http://pastie.org/1997695
     
  17. Offline

    Jeyge

    Perhaps this:

    Question that might answer everything else. What version of CraftBukkit are you running?

    Try "/pr spitart14 perms listall". List only returned the exact perms the user has been given and not any of the inherited ones.

    As for your files, I just tested them and didn't find any problems. Which command is he not able to use? Post your server.log along with the rest of your permissions config files.

    It might be because of running an unsupported build of CraftBukkit but there have been plenty of reports that people aren't having any problems. Post your permissions config files along with your server.log if you want someone to look at them.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 16, 2016
  18. Offline

    Takel

    My test server runs on 803. I know MultiWorlds aren't supported on the 1.6.x builds and I don't intend on jumping to 1.6.x until there's a RB.
     
  19. Offline

    Somesite

    I'm having a lot of issues with the new permissions system, the main issue I'm having is even though Default is set as the default group, when people join it doesn't set it to said group... It sets them as null. I'm using 3.0.6 on linux.

    groups.yml
    Show Spoiler

    Code:
    groups:
        Default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: false
            inheritance:
            permissions:
                - 'foo.bar'
        Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
                - Default
            permissions:
                - 'bar.foo'
        Admins:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '*'


    users.yml
    Show Spoiler

    Code:
    users:
        Somesite:
            permissions: null
            groups: null
    


    I also gave MySQL a shot - however the perl script failed to convert any of the yml files (perl spat out errors). When I tried manually entering the data, I quickly noticed there's no way to set a default group? Have we done away with default all together now?
     
  20. Offline

    strontkever

  21. Offline

    Wingblow

    Same here, could anyone please help us out?
     
  22. Offline

    Jeyge

    I was going to say that Permissions only loads the permissions when a world is loaded with MultiVerse or some other plugin but I just tested it on my test server and it looks like 3.0.6 broke the multi-world loading. I'm not getting an exception when I try to access one of the other worlds. I won't be able to actually answer the first question until that is fixed but in theory, all worlds should be loaded. (I did just test "pr -load <world>" and that did load the world. You might give that a try for your testing)

    Second question - It should inherit everything you have in your storageconfig.yml and globalgroups.yml then apply anything it finds in your <world> directory.
     
  23. Offline

    melvinp

    @Takel thanks!

    Also i got a other problem. everytime i want to place some blocks. i can place it. but eveytime it says you dont have permission. why is that text appearing ?
     
  24. Offline

    Jeyge

    Automatically adding users to the users.yml file is a new feature in 3.0. It never did that before and is meant to make it easier to assign your users to a group. But you do still have to assign your users to a group. They should still be given permissions to anything in the default group even with "groups: null".

    I don't see anyone actually assigned to the default group. I would assign a few to that group and see if they can use the commands. Also, make sure you don't have GroupManager installed.

    You need to give everyone craftbook.mech.cauldron permissions.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 16, 2016
  25. Offline

    strontkever

    i thought i read that null automaticly gets assigned to the first group, cause i want people that join being able to build and get permissions automatic, and changing build into true did work.. but ill try it

    [edit] didnt work either, groupmanager isnt installed
    gaaaahhh i hate this, could it be the newest bukkit (1.65) (havent tried permission yet on other versions)
     
  26. Offline

    melvinp

    They got that already.

    I had no problems with it in the previous bukkit. but in 1.6.5 eveytime that text is appearing.
     
  27. Offline

    MagicHereos

    Hmm, plugin sometimes works, sometimes doesnt...:-/ When I type /pr -reload everything works for about 10 minutes and then it fucks again :(. Oh, and globalUsers & globalGroups dont work.
     
  28. Offline

    austech360

    the table exists.. I made a row. with 2 and 2. world id is 2. group ID is 2. Didnt change. :/
     
  29. Offline

    spiderben25

    Here is my server.log file : http://pastie.org/1998765
    As you can see some plugins seem to cause trouble...
    Spitart14 can't use any command in Moderateur group but commands from Utilisateur group seem to be working.
    My other permissions config files are blank (i didn't touch any of those).
     
  30. Offline

    Jeyge

    I see a couple of things here. First, your General didn't load so you won't be able to use teleport. Second, you granted jail.usejailstick but you need to grant jail.usejailstickX where X is the number of the tool you want to use to jail people. I'm not sure if you are not able to jail people or if other commands aren't working too but those errors will prevent General commands from working and you won't be able to jail until you fix the permission.
     
  31. Offline

    Diaz9943

Thread Status:
Not open for further replies.

Share This Page