Inactive [ADMN/INFO] GroupManager v1.0 alpha-3 - A Permissions replacement [440-531]

Discussion in 'Inactive/Unsupported Plugins' started by AnjoCaido, Feb 17, 2011.

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

    AnjoCaido

    GroupManager - The Permissions 2.x plugin sucessor.
    Version: v1.0 alpha-5

    Yes, it has multiworld and multigroup users support now. When 1.0 final release, next step is database (SQLite/MySQL).

    ---

    If you use Essentials:
    - Don't use both EssentialsGroupManager.jar and GroupManager.jar! Just choose one, because they are the same!
    - Don't use both EssentialsGroupBridge.jar and FakePermissions.jar! Just choose one, because they are the same!


    ---

    As the growth of this plugin is getting faster and faster, I needed to put multiword support the soon as I could.
    Now it's here. And GroupManager is keeping all of it's good stuff! Did I say it is going to bring a lot more of new stuff too?

    Purpose of the plugin:
    The purpose has changed. Permissions got better. But it still not enough. Why I did, and keep doing this?
    I started it thinking that it would make me happy. Now it's because it will make YOU happy.

    Advantages against Permissions:
    • User multigroup support.
    • Full command list to change anything during game or thru the console.
    • Good API to change things. You to change a player group you can do getPlayer(name).setGroup(getGroup(name))
    • Exception nodes.
    • It separates groups files from users files.

    New Features:
    • User multigroup support(yay!)
    • Multiworld support(meh).
    • It has world permission mirroring(you can make a world nether having the same permissions of world2 instead of default world1).
    • It saves only the files that will have contents changed.
    • It separates groups files from users files.
    • It cleans old backup files older than 24h.

    Previous Features(included):
    • It has the same file format as Permissions, no need to get used with anything new.
    • It comes with a fake Permissions plugin, that attaches GroupManager to all your permissions dependent plugins. No need to make any changes, nor update other plugins. Just adjust your permissions files and GO!
    • Commands to change users permissions are REALLY on-the-fly(no touching files).
    • It saves the permissions data periodically.
    • It backups every file before overwrites.
    • Tons of commands for complete user/group/permission management during game/console.
    • It has a fantastic temporary permissions system, that let's you to make changes in users, with the possibility to go back at any time(and it never is saved on files).
    • Negative nodes(aka '-'): You can take off specific permissions from users that have a full set.
    • Exception node(aka '+'): Used when a user/group has a set of negative nodes, and you want to allow a specific one.

    User's subgroups: a brief explanation
    You can see on the file structure(down here on same post), that users have an optional node called subgroups. That node is a list, just like "permissions" node. There you can list a user subgroup, it can be as many as you want.
    What a user inherits from subgroups? Only permissions. It means nothing on a subgroup's info node(prefix, suffix, build and other variables) will be considered.
    The user will still be considered as a member of that group, but will only inherits it's permissions, like some commands, kits, etc.

    This reduces the needs of a nest of groups inheriting each other.
    You can have one user in Peasant group, which has only some basics, and them let him join in Miner as a subgroup, where he can get Miner kits, or other related to miner group.
    Later, when your town needs a railer, you can just add the group Railer to him as subgroup, and he will have both things at same time. When the job is done, you just remove the subgroup.
    This gets even more interesting when you have groups related to towns, factions, teams… etc.

    World mirroring: a brief explanation
    Let's say you have a config file like this:
    Code:
    settings:
      data:
        save:
          minutes: 10
      logging:
        level: INFO
      permission:
        world:
          mirror:
            world1:
              - world2
              - world3
            world4:
              - world5
    It means that all your permissions of world2, and world3 will be the same of world1. And it means all permissions of world5 will be the same of world4.
    It won't copy any file. In fact, it won't matter if there is files for world2… when the permissions get load, every request for world2 will be redirected for world3. Simple as that.

    If no mirroring is specified, any world not loaded will automatically mirror the default world of the server.

    File structure: a brief explanation
    The files read for GroupManager 1.0+ for data management are two files per world. The users file are users.yml. The groups file are groups.yml.
    The thing is that those files are located in:
    plugins/GroupManager/worlds/WORLDNAME

    So the file structure for the world called anjoCaidoWorld and netherWorld will be:
    plugins/GroupManager/worlds/anjoCaidoWorld/groups.yml
    plugins/GroupManager/worlds/anjoCaidoWorld/users.yml
    plugins/GroupManager/worlds/netherWorld/groups.yml
    plugins/GroupManager/worlds/netherWorld/users.yml

    The files might look like this:
    groups.yml
    Code:
    groups:
        Admins:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            - SemiAdmin
            permissions:
            - '*'
        Default:
            default: true
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance: []
            permissions:
            - essentials.spawn
            - essentials.motd
            - essentials.help
            - essentials.home
            - essentials.sethome
        Moderator:
            default: false
            info:
                build: false
                prefix: '&c'
                suffix: 'Mod'
            inheritance:
            - Default
            permissions:
            - essentials.tp
            - essentials.tphere
            - essentials.item
            - essentials.give
        SemiAdmin:
            default: false
            info:
                build: false
                prefix: '&c'
                suffix: 'SemiAdmin'
            inheritance:
            - Moderator
            permissions:
            - +groupmanager.mandemote
            - +groupmanager.manpromote
            - -groupmanager.*
            - '*'
        Peasant:
            default: true
            info:
                build: false
                prefix: '&e'
                suffix: 'Peasant'
            inheritance:
            - Default
            permissions: []
        Miner:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            permissions:
            - essentials.kit
            - essentials.kit.miner
            - flashlight.regular
        Healer:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            permissions:
            - essentials.kit
            - essentials.kit.healer
            - essentials.heal
        Farmer:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            permissions:
            - essentials.kit
            - essentials.kit.farmer
            - essentials.spawnmob
        Railer:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            permissions:
            - essentials.kit
            - essentials.kit.railer
    users.yml
    Code:
    users:
        anjocaido:
            group: Admins
            info:
                prefix: '&c'
                suffix: King
            permissions: []
        gmcouto:
            group: SemiAdmin
            permissions: []
        zenexer:
            group: Moderator
            permissions:
            - essentials.god
        aMiner:
            group: Peasant
            info:
                prefix: '&d'
                suffix: Miner
            permissions: []
            subgroups:
              - Miner
        aHealer:
            group: Peasant
            info:
                prefix: '&d'
                suffix: Healer
            permissions: []
            subgroups:
              - Healer
        aFarmer:
            group: Peasant
            info:
                prefix: '&d'
                suffix: Farmer
            permissions: []
            subgroups:
              - Farmer
        tempRailer:
            group: Peasant
            info:
                prefix: '&d'
                suffix: Miner
            permissions: []
            subgroups:
              - Miner
              - Railer
    You can see that the node structure are exactly the same used for GroupManager 0.99d(-) and Permissions, it means you can use the same files here.
    Note: Every node that doesn't make part of the respective file is ignored. So if you are migrating from older GroupManager or Permissions you can just duplicate your files as groups.yml and users.yml. When comes the time where is needed to save the file, all unused data for each file will be discarded. So you don't need to split files, just duplicate them with correct names, it will work.

    Negative and Exception nodes: a brief explanation
    Let's say you have a group SemiAdmin like this.
    Code:
    groups:
      SemiAdmin:
        default: false
        permissions: [+groupmanager.manpromote, -groupmanager.*,
          '*']
        inheritance: [Moderator]
        info: {prefix: '', build: false, suffix: ''}
    You should read this way:
    '*' -> means this group will have access to all commands.
    '-groupmanager.*' -> Where all his commands of groupmanager where removed.
    '+groupmanager.manpromote' -> Except manpromote.

    It means he can do everything that is not of GroupManager, AND manpromote.

    It's like listing essentials.*, worldedit.*, worldprotect.*, everyotherthing.* and groupmanager.manpromote.

    It gives a very big flexibility on permissions.

    Note:
    For every level of inheritance,
    Every permission starting with '+' is tested first. Then comes permissions starting with '-'. Then comes normal permissions(including '*').

    Commands:
    • Now on multiword support, every command will act only on the selected world.
    • If none/invalid world is selected, it will run on the default world.
    • If the world selected is a mirrored world, it will work on the mirror world.
    (on next version, when a command involves a player, there will be a toggle that will automatically act on the victim(player) world is in)
    Code:
    commands:
      manuadd:
        description: Move a player to desired group.(Adds to the file if not exists)
        usage: /<command> <player> <group>
        permission: groupmanager.manuadd
      manudel:
        description: Remove any user specific configuration. Make him default group.
        usage: /<command> <player>
        permission: groupmanager.manudel
      manuaddsub:
        description: Add a group to a player's subgroup list.
        usage: /<command> <player> <group>
        permission: groupmanager.manuaddsub
      manudelsub:
        description: Remove a group to a player's subgroup list.
        usage: /<command> <player> <group>
        permission: groupmanager.manudelsub
      mangadd:
        description: Add group to the system.
        usage: /<command> <group>
        permission: groupmanager.mangadd
      mangdel:
        description: Removes group from the system(all it's users become default)
        usage: /<command> <group>
        permission: groupmanager.mangdel
      manuaddp:
        description: Add permission diretly to the player.
        usage: /<command> <player> <permission>
        permission: groupmanager.manuaddp
      manudelp:
        description: Removes permission diretly from the player.
        usage: /<command> <player> <permission>
        permission: groupmanager.manudelp
      manulistp:
        description: List all permissions from a player.
        usage: /<command> <player>
        permission: groupmanager.manulistp
      manucheckp:
        description: Verify if user has a permission, and where it comes from.
        usage: /<command> <player> <permission>
        permission: groupmanager.manucheckp
      mangaddp:
        description: Add permission to a group.
        usage: /<command> <group> <permission>
        permission: groupmanager.mangaddp
      mangdelp:
        description: Removes permission from a group.
        usage: /<command> <group> <permission>
        permission: groupmanager.mangdelp
      manglistp:
        description: Lists all permissions from a group.
        usage: /<command> <group>
        permission: groupmanager.manglistp
      mangcheckp:
        description: Check if group has a permission, and where it comes from.
        usage: /<command> <group> <permission>
        permission: groupmanager.mangcheckp
      mangaddi:
        description: Add a group to another group inheritance list.
        usage: /<command> <group1> <group2>
        permission: groupmanager.mangaddi
      mangdeli:
        description: Remove a group from another group inheritance list.
        usage: /<command> <group1> <group2>
        permission: groupmanager.mangdeli
      manuaddv:
        description: Add, or replaces, a variable to a user (like prefix or suffix).
        usage: /<command> <user> <variable> <value>
        permission: groupmanager.manuaddv
      manudelv:
        description: Remove a variable from a user.
        usage: /<command> <user> <variable>
        permission: groupmanager.manudelv
      manulistv:
        description: List variables a user has (like prefix or suffix).
        usage: /<command> <user>
        permission: groupmanager.manulistv
      manucheckv:
        description: Verify a value of a variable of user, and where it comes from.
        usage: /<command> <user> <variable>
        permission: groupmanager.manucheckv
      mangaddv:
        description: Add, or replaces, a variable to a group (like prefix or suffix).
        usage: /<command> <group> <variable> <value>
        permission: groupmanager.mangaddv
      mangdelv:
        description: Remove a variable from a group.
        usage: /<command> <group> <variable>
        permission: groupmanager.mangdelv
      manglistv:
        description: List variables a group has (like prefix or suffix).
        usage: /<command> <group>
        permission: groupmanager.manglistv
      mangcheckv:
        description: Verify a value of a variable of group, and where it comes from.
        usage: /<command> <group> <variable>
        permission: groupmanager.mangckeckv
      manwhois:
        description: Tell the group that user belongs.
        usage: /<command> <player>
        permission: groupmanager.manwhois
      tempadd:
        description: Creates a temporary permission copy for that user.
        usage: /<command> <player>
        permission: groupmanager.tempadd
      tempdel:
        description: Remove the temporary permission copy for player.
        usage: /<command> <player>
        permission: groupmanager.tempdel
      templist:
        description: List players in overload-permissions mode made by /tempadd.
        usage: /<command>
        permission: groupmanager.templist
      tempdelall:
        description: Remove all overrides made by command /tempadd.
        usage: /<command>
        permission: groupmanager.tempdelall
      mansave:
        description: Save all permissions on file.
        usage: /<command>
        permission: groupmanager.mansave
      manload:
        description: Reload current world and config.yml. Or load given world.
        usage: /<command> [world]
        permission: groupmanager.manload
      listgroups:
        description: List the groups available.
        usage: /<command>
        permission: groupmanager.listgroups
      manpromote:
        description: Promote a player in the same heritage line to a higher rank.
        usage: /<command> <player> <group>
        permission: groupmanager.manpromote
      mandemote:
        description: Demote a player in the same heritage line to a lower rank.
        usage: /<command> <player> <group>
        permission: groupmanager.mandemote
      mantogglevalidate:
        description: Toggle on/off the validating if player is online.
        usage: /<command>
        permission: groupmanager.mantogglevalidate
      mantogglesave:
        description: Toggle on/ff the autosave.
        usage: /<command>
        permission: groupmanager.mantogglesave
      manworld:
        description: Prints the selected world name
        usage: /<command>
        permission: groupmanager.manworld
      manselect:
        description: Select a world to work with next commands.
        usage: /<command> <world>
        permission: groupmanager.manselect
      manclear:
        description: Clear world selection. Next commands will work on your world.
        usage: /<command>
        permission: groupmanager.manclear
    All commands that changes permissions only allow you to change users below in a inheritance level(eg. Admins can't mod other Admins, but can modify Moderators).
    Except for Console, he can modify anyone.

    So, what happens with all of these plugins that already use Permissions?
    They will still work. I made a fake Permissions plugin, that will replace your old Permissions plugin. And the new fake one will attach directly on GroupManager system. So all plugins will think they are working with Permissions, but they will work with GroupManager.
    The most incredible thing is that all those plugins will receive the benefit of instant changes.

    I'm a server Administrator, what should I do to use it?
    If you already have Permissions, do this:
    1. Remove Permissions.jar from you plugins folder. (leave the Permissions folder there, if it is named diferently than this, the automatic import will not work)
    2. Paste GroupManager.jar with FakePermissions.jar on your plugins folder.
    3. Run.
    4. With all file structure done, you create your worlds folder and copy your files there.

    All your old plugins will still work like a charm.

    I'm a plugin developer, how should I use this plugin?
    You can read the java-doc, linked below. It's not complete yet, but it has the essential.
    Here is some code examples...

    Loading in your plugin:
    Code:
    import org.anjocaido.groupmanager.GroupManager;
    import org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder;
    import org.anjocaido.groupmanager.dataholder.WorldDataHolder;
    public void onEnable() {
            Plugin p = this.getServer().getPluginManager().getPlugin("GroupManager");
            if (p != null) {
                if (!this.getServer().getPluginManager().isPluginEnabled(p)) {
                    this.getServer().getPluginManager().enablePlugin(p);
                }
                GroupManager gm = (GroupManager) p;
                WorldsHolder wd = gm.getWorldsHolder();
            } else {
                this.getPluginLoader().disablePlugin(this);
            }
        }
    WorldsHolder contains everything you need. You can easily do anything with it.

    Here is a example of a plugin that in a special circumstance, needed to put the player in a special group, with no permissions at all.
    Code:
    public void markAsNotLoggedIn(Player player) {
                OverloadedWorldHolder perm = gm.getWorldsHolder().getWorldData(player);
                Group lockDown = perm.getGroup("NotLoggedIn");
                if(lockDown == null){
                    lockDown = perm.createGroup("NotLoggedIn");
                }
                perm.overloadUser(player.getName());
                perm.getUser(player.getName()).setGroup(lockDown);
        }
    From now on the user is in this special group. And every change on him is temporary. Until the code below is executed.
    Code:
    public void restorePermissions(Player player){
                OverloadedWorldHolder perm = gm.getWorldsHolder().getWorldData(player);
                perm.removeOverload(player.getName());
        }
    And, finally, how to check a user permission:
    Code:
    public boolean canChangeGroup(Player player){
                return gm.getWorldsHolder().getWorldPermissions(player).has(player,"groupmanager.mangroup");
        }
    F.A.Q.
    Q: It is compatible with permissions... but where it get it's data from?
    - A: It gets from users.yml and groups.yml in the world folder, located properly inside GroupManager worlds folder.
    Q: Can I use commands from other plugins to change permissions?
    - A: No. I made the decision to store data in GroupManager folder because I don't think it is right my plugin mess around with other ones files. Unfortunately, other plugins of group modification tries to access other files than mine.

    Changelog:
    Version 1.0 alpha-5:
    • Fixed a bug in method String[] groups(groupName)
    • Added some functionality to Tasks class
    • Fixed some errors in JavaDoc
    • Changed templates to make use of Roles plugin
    Show Spoiler

    Version 1.0 alpha-4:
    • Fixed subgroups listing when using /manulistp
    Version 1.0 alpha-3:
    • Basic user multigroup support using subgroups concept.
    • Added tracking for minor bugs.
    Version 1.0 alpha-2:
    • Now /manload reloads config.yml(which means mirror configuration receives updates too).
    Version 1.0 alpha:
    • Fixed some issues with /manpromote and /mandemote for multiples inheritances
    • Added permission node for commands in plugin.yml. So the newer EssentialsHelp feature I created will filter commands that people don't have(dev #688).
    Version 1.0 pre-alpha-3:
    • Now /manucheckp and /mangcheckp tells you if the permission was negated by a negation node.
    • Now using Breadth-first search for inheritance harvest. It guarantees that closer groups in inheritance are checked first.
    • Fixed some bugs, where a negation node directly in a user could be ignored.
    • Now it reads old data.yml and auto-install it to default world if none is found.
    • Created a system where plugins can get detailed answers from a permission check.
    • Deprecated some inefficient methods(all of them redirects to the new efficient method), but they still works.
    Version 1.0 pre-alpha-2:
    • World selection is optional, except for console.
    • Not selecting a world makes it run on same world of the command sender.
    • Fixed "temporary permissions" system.
    • Fixed most of commands bugs(I fixed all errors I could see)
    • Fake Permissions says it's 2.5 now, so plugins like HeroChat works now(yay).
    • Fixed some unnecessary file saves.
    • Added /manclear to clear selection
    • /manselect now lists physical worlds if no parameters are given.
    • /manload can load a world not loaded before, if given a parameter.
    Version 1.0 pre-alpha:
    • Refactored a lot of things. Please check the java-docs.
    • Added multiworld support.
    • Split files in users.yml and data.yml
    • Saves only files that needs changes
    • Fixed some bugs
    • World mirroring
    • Basic commands for world selection, to keep old commands working.
    Version 0.99d:
    • Fixed more small bugs.
    • Saves in human readable format
    • Deletes backups older than 24 hours
    Version 0.99c:
    • Fixed small bugs. Like /mangaddi
    • Changed some classes package
    Version 0.99b:
    • Fixed Group Variables, that I broke last version.(restore your backups, yay)
    Version 0.99a:
    • User specific variables. Prefixes, Suffixes and more.
    • Negative permission node(prevails normal nodes). Like '-groupmanager.*'
    • Exception permission node(prevails negative nodes). Like '+groupmanager.manpromote'
    Version 0.9e:
    • It writes a template it self if doesn't find any data.yml file on the folder.
    Version 0.9d:
    • FakePermissions adapted to new CB builds.
    Version 0.9c:
    • Multiple inheritance fixed.
    • Added a command to toggle auto-saving, so you can edit the file while it is disabled.
    • Tested with server 1.3
    Version 0.9b:
    • Now variables work with spaced strings.(you can add prefix with spaces)
    • Fixed some errors while loading files in later 400+ builds.
    • FakePermissions got small update.
    Version 0.9:
    • Added variables manipulation command(things in info node, such as prefix, suffix, build, and custom ones)
    • Improved FakePermissions support for the Nijikokun's original one.
    • FakePermissions force loading of GroupManager before itself.
    Version 0.8:
    • Added tons of commands. Resulting in a complete control, inside the game.
    • Renamed some commands in the same format Wulfspider sugested.
    • FakePermissions.jar updated to take care oc Misc field, which some Permissions plugins need.
    Version 0.7:
    • Added commands /manpromote and /mandemote
    • Fixed a bug where a file with an empty permissions node in a group could fail the plugin to load.
    • now /addpermissions can only add permissions that the player have access.
    Version 0.6c:
    • Removed the debugging messages that occurs while other plugins check permissions.
    • Removed the debugging messages on FakePermissions
    Version 0.6b:
    • Fixed inheritance system I broke in 0.6. Sorry.
    Version 0.6:
    • Fixed some bugs
    • User/Group class modelled in tiny different way(check JavaDocs)
    • Commands work on Console
    Version 0.5:
    • First fully working release.


    Future plans (they are closer than you think):
    • Make commands for cloning files, and world mirroring.
    • Implements Nijiko's interface for permission changing.
    • Make it work, optionally, with SQLite/MySQL(thinking of Persistence plugin, anyone with ideas?).

    Latest Build Download:
    http://www.mdn.fm/files/276497_as2zr/GroupManager-1.0-alpha-5.zip


    ===========================================
    Other Downloads:
    Java Doc:
    http://www.mdn.fm/files/276266_vqd0d/JavaDoc-GroupManager-1.0-alpha-3.zip

    ===========================================
    Plugins I love to use with GroupManager:
    Roles, Essentials, AntiGrief, iChat, MultiVerse, WorldEdit and WorldProtect.


    ===========================================
    Source:
    https://github.com/gmcouto/GroupManager
    Fake Permissions Source:
    https://github.com/gmcouto/FakePermission
     
    TNC, Kohle, pat8u and 17 others like this.
  2. Offline

    opaso

    We need help. We want goups like this:

    Admin (Can do everyting)
    SemiAdmin (Can spawn item and all mod stuff)
    Moderator (Can do regular (like builder) and Kick/Ban)
    Builder (Can only build/spawn/sethome)
    Default (Can't do anything, just walking around and see the map) All new player has to be Default when they log in.

    But this will not work. Only Admin group work. What is wrong?

     
  3. Offline

    Insanehero

    15:59:58 [SEVERE] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:255)
    15:59:58 [SEVERE] at net.minecraft.server.ServerConfigurationManager.a(ServerConfigurationManager.java:98)
    15:59:58 [SEVERE] at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:87)
    15:59:58 [SEVERE] at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:27)
    15:59:58 [SEVERE] at net.minecraft.server.NetworkListenThread.a(SourceFile:87)
    15:59:58 [SEVERE] at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:357)
    15:59:58 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
    15:59:58 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    15:59:58 [WARNING] Missing a prefix or suffix for default



    Nothing is wrong with my users.yml or groups.yml and I have it worked up to my world. I know that nothing is wrong with groups or users because I still have the normal default groups it comes with and I did not change users.
     
  4. Offline

    Aznboi

    haha i use so many atm -_-;;;
    i use:
    AFKBooter
    AutoSave
    BackupPlugin
    BigBrother
    ControllerBlock
    CookieMonster
    CraftBook
    DropChest
    dynmap
    Epicgates
    EpicZones
    Essentials
    GriefAlertr
    GroupManager
    HeroBounty
    HeroChat
    HeroicDeath
    HeroicRebuke
    iConomy
    Jail
    LWC
    MMPlugin
    MoveCraft
    MultiVerse
    NoCheat
    nSpleef
    otherblocks
    PetitionPlugin
    PreciousStones
    PushBlock
    SignTrader
    SpawnControl
    SuperBow
    TPack
    uQuest
    SuperSlots
    Towny
    WorldEdit
    WorldGuard

    I dont really know how to shrink this list. Could someone tell me which plugins are not recommended or some plugins that I dont need if those features are included in a nother plugin? Any suggestions would be great. None of these plugins work because my groups.yml is still f-ed up... So can anyone spot any errors in my group.yml file below?

    Code:
    groups:
        Spectator:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            permissions:
            - afkbooter.config
            - essentials.helpop
            - heroicdeath.messages
            - heroicrebuke.list
            - jail.usercmd.jailstatus
            - nocheat.speedhack
            - nocheat.moving
            - nocheat.airbuild
            - nocheat.bedteleport
        Guest:
            default: true
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Spectator
            permissions:
        Member:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Guest
            permissions:
            - essentials.depth
            - essentials.getpos
            - essentials.compass
            - essentials.home
            - essentials.sethome
            - essentials.msg
            - essentials.afk
            - essentials.rules
            - essentials.motd
            - essentials.me
            - essentials.list
            - essentials.mail
            - heroicrebuke.list
            - iConomy.payment
            - iConomy.access
            - iConomy.rank
            - iConomy.list
            - mcmmo.skills.*
            - nSpleef.member
            - petition
            - petition.warp-to-own
            - petition.warp-to-own-if-assigned
            - signtrader.use
        Builder:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Member
            permissions:
            - essentials.tptoggle
            - essentials.mail.send
        Designer:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Builder
            permissions:
        Architect:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Designer
            permissions:
        Supporter:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Architect
            permissions:
            - essentials.tpa
            - essentials.tpaccept
            - essentials.tpdeny
            - lwc.protect
            - lwc.blockinventory
            - signtrader.makeGlobalSign
            - signtrader.makePersonalSign
        Donor:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Donor
            permissions:
        Samaratin:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Donor
            permissions:
            - afkbooter.exempt
            - mcmmo.commands.ptp
            - mcmmo.commands.party
            - mcmmo.commands.whois
        VIP:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - Samaratin
            permissions:
        Moderator:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - VIP
            permissions:
            - heroicrebuke.add
            - heroicrebuke.clear
            - heroicrebuke.active
            - heroicrebuke.info
            - heroicrebuke.list.others
            - jail.command.jail
            - jail.command.unjail
        Operator:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            - Moderator
            permissions:
        Admin:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            - Operator
            permissions:
            - jail.command.jailcheck
            - jail.command.jailtelein
            - jail.command.jailteleout
            - heroicrebuke.*
            - herosneak.sneak
            - petition.moderate
            - signtrader.admin.breakAnySign
        SuperAdmin:
            default: false
            info:
                build: false
                prefix: ''
                suffix: ''
            inheritance:
            - Admin
            permissions:
            - herosneak.auto
            - jail.command.jailcreate
            - jail.command.jaildelete
            - jail.command.jailtransfer
            - jail.command.jailtransferall
            - jail.command.jaillist
            - jail.modifyjail
            - lwc.mod
            - lwc.admin
            - tpack.boomstick
            - tpack.cuboid
            - tpack.snap
            - worldedit.*
        ChiefAdmin:
            default: false
            info:
                build: true
                prefix: ''
                suffix: ''
            inheritance:
            - SuperAdmin
            permissions:
            - autosave.save
            - autosave.toggle
            - autosave.status
            - autosave.interval
            - autosave.broadcast
            - autosave.version
            - autosave.debug
            - autosave.world
            - autosave.world.add
            - autosave.world.rem
            - bb.admin.*
            - citizens.create
            - citizens.settext
            - citizens.remove.singular
            - citizens.remove.all
            - citizens.help
            - citizens.color
            - citizens.setitem
            - citizens.move
            - dropchest
            - dropchest.create
            - dropchest.remove
            - dropchest.radius.set
            - dropchest.radius.setBig
            - dropchest.which
            - dropchest.teleport
            - dropchest.filter
            - dropchest.destroy
            - epicgates.admin
            - epiczones.ignoremapradius
            - epiczones.ignorepermissions
            - essentials.signs.protection.create
            - essintials.signs.protection.use
            - essentials.signs.free.create
            - essentials.signs.free.use
            - essentials.signs.disposal.create
            - essentials.signs.disposal.use
            - essentials.signs.heal.create
            - essentials.signs.heal.use
            - essentials.signs.trade.create
            - essentials.signs.trade.use
            - essentials.signs.buy.create
            - essentials.signs.buy.use
            - essentials.signs.sell.create
            - essentials.signs.sell.use
            - essentials.warp
            - essentials.setwarp
            - essentials.delwarp
            - essentials.eco
            - essentials.worth
            - essentials.sell
            - essentials.balance
            - essentials.pay
            - essentials.whois
            - essentials.nick
            - essentials.essentials
            - essentials.reloadall
            - essentials.gc
            - essentials.plugin
            - essentials.spawnmob
            - essentials.clearinventory
            - essentials.broadcast
            - essentials.antioch
            - essentials.burn
            - essentials.ext
            - essentials.kill
            - essentials.ping
            - essentials.ban
            - essentials.banip
            - essentials.unban
            - essentials.unbanip
            - essentials.mute
            - essentials.kick
            - essentials.kickall
            - essentials.jail
            - essentials.setjail
            - essentials.give
            - essentials.item
            - essentials.kit
            - essentials.kit.<kitname>
            - essentials.kit.*
            - essentials.time
            - essentials.tree
            - essentials.bigtree
            - essentials.god
            - essentials.heal
            - essentials.spawn
            - essentials.setspawn
            - essentials.chat.shout
            - eseentials.chat.question
            - essentials.chat.spy
            - groupmanager.manuadd
            - groupmanager.manudel
            - groupmanager.mangadd
            - groupmanager.mangdel
            - groupmanager.manuaddp
            - groupmanager.manudelp
            - groupmanager.manulistp
            - groupmanager.manucheckp
            - groupmanager.mangaddp
            - groupmanager.mangdelp
            - groupmanager.manglistp
            - groupmanager.mangchekp
            - groupmanager.mangaddi
            - groupmanager.mangdeli
            - groupmanager.manuaddv
            - groupmanager.manudelv
            - groupmanager.manulistv
            - groupmanager.manucheckv
            - groupmanager.mangaddv
            - groupmanager.mangdelv
            - groupmanager.manglistv
            - groupmanager.mangcheck
            - groupmanager.manwhois
            - groupmanager.tempadd
            - groupmanager.tempdel
            - groupmanager.templist
            - groupmanager.tempdelall
            - groupmanager.mansave
            - groupmanager.manload
            - groupmanager.listgroups
            - groupmanager.manpromote
            - groupmanager.mandemote
            - groupmanager.mantogglevalidate
            - groupmanager.mantogglesave
            - groupmanager.manworld
            - groupmanager.manselect
            - groupmanager.manclear
            - groupmanager.*
            - herochat.admin
            - herochat.create
            - iConomy.admin.grant
            - iConomy.admin.set
            - iConomy.admin.stats
            - iConomy.admin.reset
            - iSee.admin
            - jail.command.unjailforce
            - jail.command.jailclear
            - jail.command.jailclearforce
            - jail.command.jailbackup
            - mcmmo.regeneration
            - mcmmo.commands.myspawn
            - mcmmo.commands.setmyspawn
            - mcmmo.tools.mmoedit
            - mcmmo.tools.mcgod
            - movecraft.car.*
            - movecraft.drill.*
            - movecraft.aquatic.*
            - movecraft.boat.*
            - movecraft.ship.*
            - movecraft.submarine.*
            - movecraft.aircraft.*
            - movecraft.airship.*
            - movecraft.bomber.*
            - movecraft.*
            - mulitverse.world.create
            - mulitverse.world.remove
            - mulitverse.world.import
            - mulitverse.world.spawn
            - mulitverse.world.setspawn
            - mulitverse.portal.create
            - mulitverse.portal.remove
            - mulitverse.portal.select
            - mulitverse.portal.destination
            - mulitverse.portal.list
            - mulitverse.tp
            - mulitverse.list
            - nocheat.*
            - nSpleef.admin
            - plugman.list
            - plugman.describe
            - plugman.admin
            - preciousstones.benefit.*
            - preciousstones.whitelist.*
            - preciousstones.bypass.*
            - preciousstones.alert.*
            - preciousstones.admin.*
            - preciousstones.override.*
            - superslots.*
            - towny.admin
            - towny.town.new
            - towny.town.claim
            - towny.nation.new
            - towny.wild.*
            - towny.wild.build
            - towny.wild.destroy
            - towny.wild.switch
            - towny.wild.item_use
            - towny.wild.block.[blockid]
            - towny.spawntp
            - towny.publickspawntp
            - uQuest.CanQuest
            - /regionmembership
            - /locate
            - /region
            - /god
            - /heal
            - /stopfire
            - /allowfire
            - /slay
            - /stack
            - /reloadwg
            - worldedit.*
     
                
     
  5. Offline

    Nerdy

    Anyway to add people to a group within game?
     
  6. Offline

    DIENER

    Did you even read?
    Code:
    commands:
      manuadd:
        description: Move a player to desired group.(Adds to the file if not exists)
        usage: /<command> <player> <group>
        permission: groupmanager.manuadd
      manudel:
        description: Remove any user specific configuration. Make him default group.
        usage: /<command> <player>
        permission: groupmanager.manudel
      manuaddsub:
        description: Add a group to a player's subgroup list.
        usage: /<command> <player> <group>
        permission: groupmanager.manuaddsub
      manudelsub:
        description: Remove a group to a player's subgroup list.
        usage: /<command> <player> <group>
        permission: groupmanager.manudelsub
      mangadd:
        description: Add group to the system.
        usage: /<command> <group>
        permission: groupmanager.mangadd
      mangdel:
        description: Removes group from the system(all it's users become default)
        usage: /<command> <group>
        permission: groupmanager.mangdel
      manuaddp:
        description: Add permission diretly to the player.
        usage: /<command> <player> <permission>
        permission: groupmanager.manuaddp
      manudelp:
        description: Removes permission diretly from the player.
        usage: /<command> <player> <permission>
        permission: groupmanager.manudelp
      manulistp:
        description: List all permissions from a player.
        usage: /<command> <player>
        permission: groupmanager.manulistp
      manucheckp:
        description: Verify if user has a permission, and where it comes from.
        usage: /<command> <player> <permission>
        permission: groupmanager.manucheckp
      mangaddp:
        description: Add permission to a group.
        usage: /<command> <group> <permission>
        permission: groupmanager.mangaddp
      mangdelp:
        description: Removes permission from a group.
        usage: /<command> <group> <permission>
        permission: groupmanager.mangdelp
      manglistp:
        description: Lists all permissions from a group.
        usage: /<command> <group>
        permission: groupmanager.manglistp
      mangcheckp:
        description: Check if group has a permission, and where it comes from.
        usage: /<command> <group> <permission>
        permission: groupmanager.mangcheckp
      mangaddi:
        description: Add a group to another group inheritance list.
        usage: /<command> <group1> <group2>
        permission: groupmanager.mangaddi
      mangdeli:
        description: Remove a group from another group inheritance list.
        usage: /<command> <group1> <group2>
        permission: groupmanager.mangdeli
      manuaddv:
        description: Add, or replaces, a variable to a user (like prefix or suffix).
        usage: /<command> <user> <variable> <value>
        permission: groupmanager.manuaddv
      manudelv:
        description: Remove a variable from a user.
        usage: /<command> <user> <variable>
        permission: groupmanager.manudelv
      manulistv:
        description: List variables a user has (like prefix or suffix).
        usage: /<command> <user>
        permission: groupmanager.manulistv
      manucheckv:
        description: Verify a value of a variable of user, and where it comes from.
        usage: /<command> <user> <variable>
        permission: groupmanager.manucheckv
      mangaddv:
        description: Add, or replaces, a variable to a group (like prefix or suffix).
        usage: /<command> <group> <variable> <value>
        permission: groupmanager.mangaddv
      mangdelv:
        description: Remove a variable from a group.
        usage: /<command> <group> <variable>
        permission: groupmanager.mangdelv
      manglistv:
        description: List variables a group has (like prefix or suffix).
        usage: /<command> <group>
        permission: groupmanager.manglistv
      mangcheckv:
        description: Verify a value of a variable of group, and where it comes from.
        usage: /<command> <group> <variable>
        permission: groupmanager.mangckeckv
      manwhois:
        description: Tell the group that user belongs.
        usage: /<command> <player>
        permission: groupmanager.manwhois
      tempadd:
        description: Creates a temporary permission copy for that user.
        usage: /<command> <player>
        permission: groupmanager.tempadd
      tempdel:
        description: Remove the temporary permission copy for player.
        usage: /<command> <player>
        permission: groupmanager.tempdel
      templist:
        description: List players in overload-permissions mode made by /tempadd.
        usage: /<command>
        permission: groupmanager.templist
      tempdelall:
        description: Remove all overrides made by command /tempadd.
        usage: /<command>
        permission: groupmanager.tempdelall
      mansave:
        description: Save all permissions on file.
        usage: /<command>
        permission: groupmanager.mansave
      manload:
        description: Reload current world and config.yml. Or load given world.
        usage: /<command> [world]
        permission: groupmanager.manload
      listgroups:
        description: List the groups available.
        usage: /<command>
        permission: groupmanager.listgroups
      manpromote:
        description: Promote a player in the same heritage line to a higher rank.
        usage: /<command> <player> <group>
        permission: groupmanager.manpromote
      mandemote:
        description: Demote a player in the same heritage line to a lower rank.
        usage: /<command> <player> <group>
        permission: groupmanager.mandemote
      mantogglevalidate:
        description: Toggle on/off the validating if player is online.
        usage: /<command>
        permission: groupmanager.mantogglevalidate
      mantogglesave:
        description: Toggle on/ff the autosave.
        usage: /<command>
        permission: groupmanager.mantogglesave
      manworld:
        description: Prints the selected world name
        usage: /<command>
        permission: groupmanager.manworld
      manselect:
        description: Select a world to work with next commands.
        usage: /<command> <world>
        permission: groupmanager.manselect
      manclear:
        description: Clear world selection. Next commands will work on your world.
        usage: /<command>
        permission: groupmanager.manclear
    What you are looking for is this.
    Code:
      manuadd:
        description: Move a player to desired group.(Adds to the file if not exists)
        usage: /<command> <player> <group>
        permission: groupmanager.manuadd
     
  7. Offline

    BigRedWood

    I love the new in game commands. I have users upon first login auto placed into Default. They have enough permissions to join a party and tp to people within a party. If they agree to follow the rules, my ops will /manpromote <name> user and then they have build rights. I used to have to either allow them build rights from the get-go, or I had to manually add them by editing the users.yml. I love this plugin.
     
  8. Offline

    Tulips

    I still don't know how to add in the codes really much.. but seeing the posts people have I think I know what to do, can I still get some help on where to add the warpz0r code things..
     
  9. Offline

    opaso

    We need help. We want goups like this:

    Admin (Can do everyting)
    SemiAdmin (Can spawn item and all mod stuff)
    Moderator (Can do regular (like builder) and Kick/Ban)
    Builder (Can only build/spawn/sethome)
    Default (Can't do anything, just walking around and see the map) All new player has to be Default when they log in.

    Can someone please help us write down and post the group code here.
     
  10. Offline

    Criixx

    What should i do? :(
     
  11. Offline

    SeeD419

    Okay this claims to be plug and play - yeah it's not even close.

    Everybody is default, and I was using permissions, therefore i got rid of the permissions.jar, and pasted in the two groupmanager jars - fake permissions included. Doesn't work for shit.

    So I figured, oh okay, maybe it just didn't import like it claims to. So I copied all my permissions over to the groupmanager folders.

    Nope, it just overwrites everything I put there with those nonsense default users and groups.

    Useless.
     
  12. Offline

    KimKandor

    If only you could follow directions ....
     
  13. Offline

    SeeD419

    Which one did I miss smart guy?

    I'm a server Administrator, what should I do to use it?
    If you already have Permissions, do this:
    1. Remove Permissions.jar from you plugins folder. (leave the Permissions folder there, if it is named diferently than this, the automatic import will not work)
    2. Paste GroupManager.jar with FakePermissions.jar on your plugins folder.
    3. Run.
    4. With all file structure done, you create your worlds folder and copy your files there.

    All your old plugins will still work like a charm.
     
  14. Offline

    KimKandor

    Your problem was caused by a crafbukkit bug, but you were so hostile people gave up on helping you, and again I say, have a nice day.
     
  15. Offline

    Zach Hinchy

    I just updated. All my users are "default" and have no permissions. Triple-checked the config files. Using build #531 of CraftBukkit and Group Manager v1.0a5.
     
  16. Offline

    KimKandor

    come to the #essentials channel and we'll find out whats wrong on irc.esper.net
     
  17. Offline

    SeeD419

    Exactly the same.
     
  18. Offline

    PancakeTime73

    is the fake permissions.jar not working because I get this every time I start my server.
    Code:
    [SEVERE] java.lang.[B]String cannot be cast to java.util.Map loading Permissions v2.5.1 (Is it up to date?)[/B]
    java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Map
        at org.anjocaido.groupmanager.dataholder.WorldDataHolder.load(WorldDataHolder.java:575)
        at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.loadWorld(WorldsHolder.java:358)
        at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.initialWorldLoading(WorldsHolder.java:68)
        at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.initialLoad(WorldsHolder.java:63)
        at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.<init>(WorldsHolder.java:56)
        at org.anjocaido.groupmanager.GroupManager.onEnable(GroupManager.java:73)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:118)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:451)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:217)
        at com.nijikokun.bukkit.Permissions.Permissions.onEnable(Permissions.java:61)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:118)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:451)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:217)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:83)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:61)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:204)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:191)
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:131)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:246)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
     
  19. Offline

    SeeD419

    Hmm, you must be experiencing a different issue than I was.

    Both of my plugins loaded just fine on startup on build 548.
     
  20. Offline

    NFFPokemon

    its really a pain that i cant modify players that are offline, is this supposed to be right or is it something wrong?
     
  21. Offline

    DannyLAGZLOL

    okay not sure if this has been fixed, but for some reason i cannot add a griup, i ned my server , make a group called owner,
    then start my server, works fine, but when i end it later on, the group dissapears...and myself is eft under default, since 'owner group' is not somehow gone
    .. fix?
     
  22. Offline

    Ditto8353

    So I am using WormholeXTreme to make stargates, but I want to charge for players to use them. The plugin has iConomy support, but crashed when used with EssentialsEconomy. This got me thinking on how to improve compatibility and I realized that most plugins have separate permissions associated for the individual features the plugin provides. Wormhole has wormhole.use and .make and similar things.

    Would it be possible to to create nodes labeled after the permission they represent which could then be checked for other variables such as cost or cooldown? I am thinking that the required node to add a cost to using a wormhole would look something like this:
    Code:
    wormhole.use:
        cost: 100
     
  23. Offline

    Stensby

    Hello all, I am having some problems with users getting the error "User not whitelisted"

    Here are my two YAML files, converted to txt for uploading.

    The two confirmed users experiencing problems are simi337 and Nonukun. I can confirm Stensby, KitKatarine and Atilme are able to log oon fine.
     

    Attached Files:

  24. Offline

    City Builder

    Does anybody know if this will function with the McMyAdmin server control panel? I tried Permissions and our online hosted server would not load permissions, but locally on my own computer Permissions loaded fine. The difference being that the locally hosted server doesn't use mcmyadmin, but the online hosted one does.

    Thanks
     
  25. Offline

    loli559

    need help with this plz

     
  26. Offline

    SeeD419

    When migrating from Permissions to GroupManager - It could be plug and play in theory, but if you run a busy server with a few moderators, more than likely it's not going to work. It's going to spew errors so fast you're not even going to be able to read the console output. If your yaml clears a parser, you're running a recommended build, and you're using FakePermissions.jar and it still isn't working for you, this could be why:

    Duplicate entries are not allowed in your user file. Delete all duplicates, or it won't work. By this I mean if you have a user named JohnDoe, and another entry johndoe. This can happen easily if you have multiple moderators on your server - and it will prevent this plugin from loading with your old permissions config.

    References to non-existent groups are not allowed. This can happen if someone makes a typo when adding a user to Permissions, like group Moderato without the r at the end. Easy mistake to make, but if you're referencing any groups that don't exist, GroupManager won't load. Permissions would simply overlook the entry, and once again a yaml parser wouldn't catch this either.

    Any user listed in the default group. I had to delete any user in my users file that was referenced to the default group. This can happen when running permissions and trying to default a player that was once in a vip group. Once again, this caused GroupManager to fail on startup for me.

    Personally, I had a TON of these in my permissions config file. Once again, Permissions would overlook these, and you will NOT catch these in a yaml parser. This is GroupManager specific and IMO this should be documented in the OP to prevent future headaches.
     
  27. Offline

    Erbros

    Will try this plugin again later, as of now I will have to go back to permissions plugin again. Get the same error as those above me. Nice work on the plugin, this seems very good when I first get it going.

    I have parsed the code and it came out with no errors.

    I have checked what the person above me said, and I got no duplicate errors, references to non-existing groups or any users listed in the default usergroup.

    Using craftbukkit 531.

     
  28. Offline

    Mylo104

    Ok guys i really need help on my server GroupManager works 50/50.I use EssentialsChat with GroupManger aswell.But, for some weird reason, Whenever i change the Groups.txt in GroupManager and i try the command /manuadd it says an internel error eccoured ,
    Can anyone help
    Sincerely,
    Mylo104
     
  29. Offline

    RomaClanServer

    EDIT: I figured it out, with the update groups need to be capitalized because subgroups are always uncapitalized.

    Hi I recently started working on a second server and originally did the permission tree in Permissions. I am now trying to switch to use the Roles plugin. I also can't figure out how to import permissions with newer versions of GroupManager, is that functionality gone? Though my tree works in permissions and passes the online YAML parser, I always get an error with group manager. Even if I just paste 1 group, with the user file clear, it always says that it can't pass the parser. I then redid the GroupManager tree using the default as a template to be sure I didn't screw anything up while manually converting. I tried bukkit builds 440, 493 and 531 with no other plugins and I am using the latest GM build. I have tried reinstalling bukkit, GM and GM files. The group file is long as I am trying to do a ranked pvp server but even when I remove a significant amount of groups, it displays the same message. I have a fair amount of experience with plugins but I really have no idea what else to try.


    Code:
    C:\Users\Dylan\Downloads\Minecraft RP Server>"C:\Program Files (x86)\Java\jre6\b
     in\java.exe" -Xms1024M -Xmx1024M -jar craftbukkit.jar
     10:39:13 [INFO] Starting minecraft server version Beta 1.3
     10:39:13 [INFO] Loading properties
     10:39:13 [INFO] Starting Minecraft server on *:20000
     10:39:13 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-516-
     gdf87bb3-b531jnks (MC: 1.3)
     10:39:13 [INFO] Preparing level "Republica"
     10:39:13 [INFO] Preparing start region
     10:39:14 [SEVERE] null loading Permissions v2.5.1 (Is it up to date?)
     java.lang.NullPointerException
             at org.anjocaido.groupmanager.dataholder.WorldDataHolder.load(WorldDataH
     older.java:574)
             at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.loadWorld(W
     orldsHolder.java:358)
             at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.initialWorl
     dLoading(WorldsHolder.java:68)
             at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.initialLoad
     (WorldsHolder.java:63)
             at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.<init>(Worl
     dsHolder.java:56)
             at org.anjocaido.groupmanager.GroupManager.onEnable(GroupManager.java:73
     )
             at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:118)
             at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader
     .java:451)
             at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManage
     r.java:217)
             at com.nijikokun.bukkit.Permissions.Permissions.onEnable(Permissions.jav
     a:61)
             at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:118)
             at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader
     .java:451)
             at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManage
     r.java:217)
             at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:83)
             at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:61)
             at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:204)
             at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:191)
             at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:131)
             at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:246)
             at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
     10:39:14 [INFO] Done (0.077s)! For help, type "help" or "?"
     >

    Code:
    groups:
      iunior:
        default: true
        permissions:
        - essentials.help
        - essentials.helpop
        - essentials.list
        - essentials.motd
        - essentials.msg
        - essentials.rules
        - essentials.spawn
        - essentials.mail
        - essentials.mail.send
        - essentials.signs.sell.use
        - essentials.me
        - essentials.whois
        - essentials.afk
        inheritance: []
        info:
          prefix: '[Iunior] '
          build: false
          suffix: ''
      veles:
        default: false
        permissions: []
        inheritance:
        - iunior
        info:
          prefix: '[&aVeles&f] &b'
          build: true
          suffix: ''
      hastatus:
        default: false
        permissions: []
        inheritance:
        - veles
        info:
          prefix: '[&2Hastatus&f] &b'
          build: true
          suffix: ''
      princeps:
        default: false
        permissions: []
        inheritance:
        - hastatus
        info:
          prefix: '[&7Princeps&f] &b'
          build: true
          suffix: ''
      triarius:
        default: false
        permissions: []
        inheritance:
        - princeps
        info:
          prefix: '[&8Triarius&f] &b'
          build: true
          suffix: ''
      decanus:
        default: false
        permissions: []
        inheritance:
        - triarius
        info:
          prefix: '[&eDecanus&f] &c'
          build: true
          suffix: ''
      centurio:
        default: false
        permissions: []
        inheritance:
        - decanus
        info:
          prefix: '[&3Centurio&f] &c'
          build: true
          suffix: ''
      praefectus:
        default: false
        permissions: []
        inheritance:
        - centurio
        info:
          prefix: '[&9Praefectus&f] &6'
          build: true
          suffix: ''
      tribunus:
        default: false
        permissions: []
        inheritance:
        - praefectus
        info:
          prefix: '[&1Tribunus&f] &6'
          build: true
          suffix: ''
      legatus:
        default: false
        permissions: []
        inheritance:
        - tribunus
        info:
          prefix: '[&cLegatus&f] &4'
          build: true
          suffix: ''
      imperator:
        default: false
        permissions: []
        inheritance:
        - legatus
        info:
          prefix: '[&6Imperator&f] &4'
          build: true
          suffix: ''
      semimod:
        default: false
        permissions:
        - groupmanager.manuadd
        inheritance:
        - imperator
        info:
          prefix: ''
          build: true
          suffix: ''
      mod:
        default: false
        permissions:
        - '*'
        inheritance:
        - semimod
        info:
          prefix: '[&5Moderator&f] &5'
          build: true
          suffix: ''
      admin:
        default: false
        permissions:
        - '*'
        inheritance:
        - mod
        info:
          prefix: '[&5Pater Patriae&f] &5'
          build: true
          suffix: ''
      farmer:
        default: false
        permissions:
        - essentials.kit
        - essentials.kit.farmer
        - roles.myroles
        - roles.whoroles
        - roles.leaverole
        inheritance: []
        info:
          roles-requirement:
          - decanus
          prefix: ''
          roles-category: job
          build: true
          suffix: ''
      miner:
        default: false
        permissions:
        - essentials.kit
        - essentials.kit.miner
        - roles.myroles
        - roles.whoroles
        - roles.leaverole
        inheritance: []
        info:
          roles-requirement:
          - decanus
          prefix: ''
          roles-category: job
          build: true
          suffix: ''
      hunter:
        default: false
        permissions:
        - essentials.kit
        - essentials.kit.hunter
        - roles.myroles
        - roles.whoroles
        - roles.leaverole
        inheritance: []
        info:
          roles-requirement:
          - decanus
          prefix: ''
          roles-category: job
          build: true
          suffix: ''
      peasant:
        default: false
        permissions:
        - essentials.kit
        - essentials.kit.peasant
        - roles.joinrole
        - roles.leaverole
        - roles.whoroles
        - roles.myroles
        inheritance: []
        info:
          roles-requirement:
          - decanus
          prefix: ''
          roles-category: job
          build: true
          suffix: ''
    Also, if a group inherits another, will it be able to join a subgroup? So if the role requirement is Decanus, anything above will fill the requirement?
     
  30. Offline

    Platinus

    Hi, I'm trying to get WorldEdit to work on my Server (I'm only playing with my friends) and I found out that I needed a Permission plugin so I try this out. But I'm not getting any GroupManager folder or anything and your post doesnt really go into detail on how to install it. I only get the 2 .jars in my Plug-in folder and nothing more. I've also started and stopped the server but no folder. How do I get that folder? The only other Plug-In I'm using is Essentials btw.
     
  31. Offline

    Crimsonshot

    Is there a reason it scrambled the users and groups files? No errors, and it works but it's just a bit messy and un-organized.

    Groups file: http://pastebin.com/2PH7cSse
    It was in the format: Guest, Builder, Miner, Merchant, Woodworker, Farmer, Mayor, Moderator, AD, OP, Admin

    Users file: http://pastebin.com/bhe06tE5
    Completely scrambled this file, with no order whatsoever. It's just an inconvenience when trying to edit the Yml file manually.
     
Thread Status:
Not open for further replies.

Share This Page