[ADMN/DEV] PermissionsBukkit v2.0 - Official Default Groups Plugin [1.5.2-R1.0]

Discussion in 'Archived: Plugin Releases' started by SpaceManiac, Jul 17, 2011.

  1. Offline

    SpaceManiac

    PermissionsBukkit - the Official Default Groups Plugin
    Current Version: v2.0
    Find PermissionsBukkit on BukkitDev!

    If you are getting a specific error or cannot determine what is wrong with your permissions file, filing a ticket on BukkitDev will make me much more likely to respond to you; general questions are best to ask in this thread or on the forums on BukkitDev.

    It's been a long time coming, but with the accomplishment of build 1000 Bukkit has finally accomplished a built-in Permissions system (codenamed Superperms). For more info on how they work, and how to integrate them with your plugin, see the official Permissions FAQ. Keep in mind that you should rarely, if ever, have to hook this plugin directly; instead keep things in the realm of checking player.hasPermission("yourplugin.node"). The FAQ thread has more info on how to use Superperms with things like chat prefixes/suffixes.

    Features:
    • Storage of users and groups in plugins/PermissionsBukkit/config.yml.
    • Both users and groups can be assigned individual permissions and parent groups to inherit permissions from.
    • Support for global and per-world permissions.
    • Reload configuration from file with out reloading the plugin.
    • Ability to check if a player has a specific permission node.
    • Ability to dump all permissions a player has and the plugins that set them.
    • Ability to print plugin, description, and default for a given permission node.
    • Ability to modify the permissions of groups and users and the groups of a user in-game.
    • Built-in antibuild via the "permissions.build" node (defaults to allowing anyone to build).
    • A minimalistic bridge from Permissions 3.0 to Superperms is available as a separate plugin, which does not depend on PermissionsBukkit.
    Command Usage:

    Show Spoiler
    PermissionsBukkit uses the command /permissions, with aliases /perms and /perm.

    /permissions reload - reload the configuration from disk.
    /permissions check <node> [player] - check if a player or the sender has a permission (any plugin).
    /permissions info <node> - prints information on a specific permission.
    /permissions dump [player] [page] - prints info about a player's (or the sender's) permissions.
    /permissions setrank <player> <group> - set a player to be in a group with per-group permissions.
    /permissions group - list group-related commands.
    /permissions group list - list all groups.
    /permissions group players <group> - list players in a group.
    /permissions group setperm <group> <[world:]node> [true|false] - set a permission on a group.
    /permissions group unsetperm <group> <[world:]node> - unset a permission on a group.
    /permissions player - list player-related commands.
    /permissions player groups <player> - list groups a player is in.
    /permissions player setgroup <player> <group,...> - set a player to be in only the given groups.
    /permissions player addgroup <player> <group> - add a player to a group.
    /permissions player removegroup <player> <group> - remove a player from a group.
    /permissions player setperm <player> <[world:]node> [true|false] - set a permission on a player.
    /permissions player unsetperm <player> <[world:]node> - unset a permission on a player.

    All commands have in-game help and are usable from the server console.

    Configuration:
    Show Spoiler
    A permission node is a string like 'permissions.build', usually starting with the name of the plugin. Refer to a plugin's documentation for what permissions it cares about. Each node should be followed by true to grant that permission or false to revoke it, as in 'permissions.build: true'. Some plugins provide permission nodes that map to a group of permissions - for example, PermissionsBukkit has 'permissions.*', which automatically grants permissions for all PermissionsBukkit commands. You can also specify false for permissions of this type.

    Users inherit permissions from the groups they are a part of. If a user is not specified here, or does not have a 'groups' node, they will be in the group 'default'. Permissions for individual users may also be specified by using a 'permissions' node with a list of permission nodes, which will override their group permissions. World permissions may be assigned to users with a 'worlds:' entry.

    Groups can be assigned to players and all their permissions will also be assigned to those players. Groups can also inherit permissions from other groups. Like user permissions, groups may override the permissions of their parent group(s). Unlike users, groups do NOT automatically inherit from default. World permissions may be assigned to groups with a 'worlds:' entry.

    The cannot-build message is configurable. If it is left blank, no message will be displayed to the player if PermissionsBukkit prevents them from building, digging, or interacting with a block. Use '&' characters to signify color codes.

    An example configuration file might look like this:
    Code:
    users:
        ConspiracyWizard:
            permissions:
                permissions.example: true
            groups:
            - admin
    groups:
        default:
            permissions:
                permissions.build: false
        admin:
            permissions:
                permissions.*: true
            inheritance:
            - user
        user:
            permissions:
                permissions.build: true
            worlds:
                creative:
                    coolplugin.item: true
            inheritance:
            - default
    messages:
        build: '&cYou do not have permission to build here.'
    

    Permissions:
    Show Spoiler
    PermissionsBukkit checks for the following permission nodes:
    • permissions.build - Allows a player to build. Defaults to true.
    • permissions.help - Allows viewing of usage for /permissions.
    • permissions.reload - Allows use of /permissions reload.
    • permissions.check - Allows use of /permissions reload.
    • permissions.info - Allows use of /permissions reload.
    • permissions.dump - Allows use of /permissions reload.
    • permissions.group.help - Allows viewing of usage for /permissions group.
    • permissions.group.list - Allows use of /permissions group list.
    • permissions.group.players - Allows use of /permissions group players.
    • permissions.group.setperm - Allows use of /permissions group setperm.
    • permissions.group.unsetperm - Allows use of /permissions group unsetperm.
    • permissions.player.help - Allows viewing of usage for /permissions player
    • permissions.player.groups - Allows use of /permissions player groups.
    • permissions.player.setgroup - Allows use of /permissions player setgroup.
    • permissions.player.addgroup - Allows use of /permissions player addgroup.
    • permissions.player.removegroup - Allows use of /permissions player removegroup.
    • permissions.player.setperm - Allows use of /permissions player addgroup.
    • permissions.player.unsetperm - Allows use of /permissions player removegroup.
    Also, the following parent nodes are provided for convenience:

    • permissions.* - Maps to permissions.help, .reload, .check, .info, .dump, and to permissions.group.* and permissions.player.*. Defaults to op.
    • permissions.group.* - Maps to permissions.group.help, .list, .players, .setperm, and .unsetperm.
    • permissions.player.* - Maps to permissions.player.help, .groups, .setgroup, .addgroup, .removegroup, .setperm, and .unsetperm.


    Frequently Asked Questions:
    1. Where are my * nodes? (open)
    Bukkit's Superperms has no built-in concept of a global '*' node that automatically gives all permissions, which is intentional - a player can instead be given all permissions by being given 'op' status (that is, listed in ops.txt). Additionally, individual plugins define a parent node (which could be 'pluginname.*' or 'pluginname.all' or anything else) which maps to whatever subpermissions in that plugin the author desires.

    An example is PermissionsBukkit, which provides three such permissions: 'permissions.group.*' for all /permissions group commands, 'permissions.player.*' for all /permissions player commands, and'permissions.*' for all /permissions commands (including permissions.group.* and permissions.player.*).

    If you are using SuperpermsBridge, you can do something similar to '*' nodes for plugins which use Permissions 2.7/3.1 - see the next FAQ for more information.
    2. How do I use SuperpermsBridge? (open)
    SuperpermsBridge is kind of like FakePermissions for GroupManager or PermissionsBridge for PermissionsEx. Once it's installed, it pretends to be the Permissions plugin and converts any plugins that use Permissions 2.7 or Permissions 3.1 to use Superperms instead.

    You can have PermissionsBukkit without SuperpermsBridge or SuperpermsBridge without PermissionsBukkit if you like, but both of these are limited in functionality. If you install SuperpermsBridge without PermissionsBukkit you will not be able to make use of PermissionsBukkit's groups feature or admin commands, and if you install PermissionsBukkit without SuperpermsBridge, plugins that have not updated to use Superperms directly will not function.

    For plugins that use Permissions 2.7/3.1, you can use the special node 'superpermbridge.*' to give the equivalent of what used to be the '*' node for plugins that do not use Superperms directly. If you don't want to give the * node, you can also use the node 'superpermbridge.pluginname' to do the equivalent of what used to be the 'pluginname.*' node. Once again, these only apply to plugins that SuperpermsBridge handles and not to plugins using Superperms directly.
    3. How do I use the root permissions.yml? (open)
    The file 'permissions.yml' in the root of your server can be used to set up custom parent permissions. Parent permissions are a single node that, when given to a player or group, automatically give all their children node. Here's a simple example:
    Code:
    server.basics:
        children:
            commandbook.motd: true
            commandbook.say: true
            commandbook.say.me: true
            commandbook.time: true
    
    Now, if you give a player the node 'server.basics', they automatically get all the nodes listed here. Children may also say 'false' instead of 'true', in which case giving the parent will remove the child instead of giving it.

    You can also specify a description if you like, which can be used by plugins to provide information on your node (such as PermissionsBukkit's /perm info command). If you want, you can also provide a default, which can be one of "true", "false", "op", or "notop". CraftBukkit will automatically assign everyone, no one (default), ops, or non-ops the children permissions based on the specified default. Without any plugin like PermissionsBukkit, you can use this defaults system as a limited way to assign people permissions. Here's a more complex example:
    Code:
    server.basics:
        description: Basic permissions for My Cool Server.
        default: true
        children:
            commandbook.motd: true
            commandbook.say: true
            commandbook.say.me: true
            commandbook.time: true
    server.admin:
        description: Admin permissions for My Cool Server.
        default: op
        children:
            commandbook.broadcast: true
            commandbook.teleport: true
            commandbook.kick: true
            commandbook.ban: true
    
    You can also define permissions without children, but this is of limited usefulness in permissions.yml (though is important in plugin.yml; see question #6)
    4. How do I switch from (other Permissions plugin)? (open)
    Depends on the Permissions plugin! If you were using PEX's YAML backend, I have a converter done and available on the PermissionsBukkit Tools page. Also available on the tools page is an automatic converter for Essentials GroupManager users.yml and groups.yml files. Automatic converters for Permissions 2.7 and 3.x are on their way, but in the meantime you can still convert your configurations manually.
    5. Where are prefixes and suffixes (or option nodes)? (open)
    Bukkit Superperms has no built-in prefix/suffix settings or non-boolean permission nodes, so individual chat plugins will have to start supporting Superperms in order to make use of non-Permissions-plugin based prefixes and suffixes. Herochat, iChat, and Simple Suffix are all aware of the Superperms update, but in the meantime you can use mChat, which already supports Superperms.

    Once you install mChat and configure the mchat.prefix, mchat.suffix, and mchat.group names in its configuration file (see the example), use PermissionsBukkit to give players or groups the permissions "mchat.prefix.admin", replacing "admin" with whatever node you configured. For example, with an mchat configuration that looks similar to this:
    Code:
    da-name-format: '+prefix+name&e'
    date-format: HH:mm:ss
    message-format: '+prefix+name&f: +message'
    mchat:
        prefix:
            admin: '&4DtK [SO] &7 '
            sadmin: '&9DtK [SA] &7 '
            jadmin: '&aDtK [JA] &7  '
            member: '&cDtK [M] &7 '
    
    You can assign players or groups the mchat.prefix.admin node to get the "SO" prefix, mchat.prefix.sadmin to get the "SA" prefix, and so on.
    6. (Coders) How do I set up my plugin.yml? (open)
    Take a look at this post in Dinnerbone's FAQ for an example. This is a lot like the setup of permissions.yml (see above), but you can also define non-parent permissions (just include description and default and leave out children).
    7. Is PermissionsBukkit outdated? (open)
    No! PermissionsBukkit 2.0 was last updated for 1.3.1-R2.0, is verified to work on 1.4.7-R1.0, and is unlikely to break on future releases.

    Downloads:
    Current Version:

    PermissionsBukkit v2.0 (jar) (details)
    Old Versions:
    PermissionsBukkit v1.6 (jar) (details)

    [​IMG]

    Changelog:

    Friday 7 September 2012 (2.0)
    • Fixed a case-sensitivity issue with setting per-world permissions that could cause some permissions to fail to apply.
    • Added /perm setrank <player> <group> subcommand (alias rank) with per-group permissions (permissions.setrank and permissions.setrank.<group>)
    • Added plugin metrics via http://mcstats.org/plugin/PermissionsBukkitMCStats (disableable in plugins/PluginMetrics/config.yml)
    Wednesday 29 February 2012 (1.6)
    • Fixed some massive issues that were caused due to having uploaded a buggy, in-development version instead of 1.5.
    • Note: If your configuration was messed up as a result of this issue, the new build should gradually correct it as needed.
    Saturday 25 February 2012 (1.5b)
    • Revamped to be compatible with R5.
    • Fixed issues with permissions not carrying properly on world change.
    • Many internal improvements for performance and stability.
    • SuperpermsBridge: in honor of R5 removing deprecated code, SuperpermsBridge is officially gone!
    Monday 18 July 2011 (1.1/1.2)
    • Fix BukkitContrib incompatibility issues.
    • Improved the output of the /perm check command.
    • Fixed issues when 'users:' is not specified in the config file.
    • Fixed the /permissions reload command.
    • SuperpermsBridge: improve wildcard handling; in addition to 'superpermbridge.*' and 'superpermbridge.pluginname', now supported are 'superpermbridge.plugin.*', 'superpermbridge.plugin.subnode.*', and so on.
    Monday 18 July 2011 (1.0/1.1)
    • SuperpermsBridge: adding the special 'superpermbridge.*' and 'superpermbridge.pluginname' nodes (see #2 in the FAQ for details).
    Sunday 17 July 2011 (1.0/1.0)

    • Initial release of PermissionsBukkit v1.0 and SuperpermsBridge v1.0.
     
    madmac, Gesundheit, tripleX and 23 others like this.
  2. Offline

    Snowy007

    Well... at least it shows that i am actually looking hard to find any mistakes. xD
     
  3. Offline

    Grenelvec

    So I need to remove everyone from OP list? Or atleast everyone except myself?
     
  4. Offline

    Snowy007

    Yes, that would be a smart thing to do. An OP could stop the entire server if he/she wants to so it is important that you only give OP status to people that you trust 200%. Also anyone with OP status usually gets all permissions from all plugins.
     
  5. Offline

    Grenelvec

    I had myself and 2 people I trust with op, but before bukkit permissions had commands disabled even for ops. I removed ops even for myself, and just enabled commands at each permission level. Now permissions work as intended, never thought to test lower levels, I just assumed it was not working when I was still an OP, thanks for the help Snowy.

    No ops and soon no whitelist.
     
  6. Offline

    GrahamCraker

    Hey guys. I tried my darndest to figure out why the GlassDrop plugin doesn't work but can't seem to figure it out. Any help would be fantastic

    Code:
    # PermissionsBukkit configuration file
    #
    # A permission node is a string like 'permissions.build', usually starting
    # with the name of the plugin. Refer to a plugin's documentation for what
    # permissions it cares about. Each node should be followed by true to grant
    # that permission or false to revoke it, as in 'permissions.build: true'.
    # Some plugins provide permission nodes that map to a group of permissions -
    # for example, PermissionsBukkit has 'permissions.*', which automatically
    # grants all admin permissions. You can also specify false for permissions
    # of this type.
    #
    # users inherit permissions from the groups they are a part of. If a user is
    # not specified here, or does not have a 'groups' node, they will be in the
    # group 'default'. Permissions for individual users may also be specified by
    # using a 'permissions' node with a list of permission nodes, which will
    # override their group permissions. World permissions may be assigned to
    # users with a 'worlds:' entry.
    #
    # Groups can be assigned to players and all their permissions will also be
    # assigned to those players. Groups can also inherit permissions from other
    # groups. Like user permissions, groups may override the permissions of their
    # parent group(s). Unlike users, groups do NOT automatically inherit from
    # default. World permissions may be assigned to groups with a 'worlds:' entry.
    #
    # The cannot-build message is configurable. If it is left blank, no message
    # will be displayed to the player if PermissionsBukkit prevents them from
    # building, digging, or interacting with a block. Use '&' characters to
    # signify color codes.
    users:
        ilovewood:
          group:
            - admins
          permissions:
    groups:
        default:
            permissions:
                permissions.build: true
                qwicktree.use: true
                disposalchest.create: true
                disposalchest.remove: true
                stargate.use: false
                stargate.network.central: true
                stargate.network.biomes: true
                stargate.option: true
                stargate.create.personal: true
                stargate.create.network.central: true
                stargate.create.gate: true
                stargate.destroy.personal: true
                stargate.destroy.network.central: true
                glass.drops.allowed: true
        admins:
            permissions:
                permissions.*: true
                stargate.use: true
                stargate.admin: true
                qwicktree.*: true
                disposalchest.*: true
                glass.drops.allowed: true
            inheritance:
    messages:
        build: '&cYou do not have permission to build here.'
    debug: false
     
  7. Offline

    Snowy007

    Do you get any errors in the console?
    Maybe try it like this, i removed 'permissions:' below 'ilovewood' and 'inheritance:' below the 'admins' group. Since you did not add any extra permissions to 'ilovewood' or define an inheriting group for admins they were not needed.
    Everything else seems to be fine so if it still doesn't work it is something with the plugin and you should ask at that plugins bukkitdev or forum page.

    Code:
    users:
        ilovewood:
          group:
            - admins
    groups:
        default:
            permissions:
                permissions.build: true
                qwicktree.use: true
                disposalchest.create: true
                disposalchest.remove: true
                stargate.use: false
                stargate.network.central: true
                stargate.network.biomes: true
                stargate.option: true
                stargate.create.personal: true
                stargate.create.network.central: true
                stargate.create.gate: true
                stargate.destroy.personal: true
                stargate.destroy.network.central: true
                glass.drops.allowed: true
        admins:
            permissions:
                permissions.*: true
                stargate.use: true
                stargate.admin: true
                qwicktree.*: true
                disposalchest.*: true
                glass.drops.allowed: true
    messages:
        build: '&cYou do not have permission to build here.'
    debug: false
     
  8. Offline

    TheLavaGuy

    I have world guard? Can it be that?
     
  9. Offline

    Snowy007

    Maybe.. i don't know.. I have WorldGuard too but i haven't really checked for a really long time if my players still get the message that they can't build. I know it worked fine a year ago or something. :p
     
  10. Offline

    karl

    hi ive just started with a server and this is the first pluggin along with tree assist, for some reason everything i try to do it says i dont have permission... im not sure if ive done something wrong but cant seem to see anything obvious...

    im getting no errors in the console when i reload the plugins

    Code:
    # PermissionsBukkit configuration file
    #
    # A permission node is a string like 'permissions.build', usually starting
    # with the name of the plugin. Refer to a plugin's documentation for what
    # permissions it cares about. Each node should be followed by true to grant
    # that permission or false to revoke it, as in 'permissions.build: true'.
    # Some plugins provide permission nodes that map to a group of permissions -
    # for example, PermissionsBukkit has 'permissions.*', which automatically
    # grants all admin permissions. You can also specify false for permissions
    # of this type.
    #
    # Users inherit permissions from the groups they are a part of. If a user is
    # not specified here, or does not have a 'groups' node, they will be in the
    # group 'default'. Permissions for individual users may also be specified by
    # using a 'permissions' node with a list of permission nodes, which will
    # override their group permissions. World permissions may be assigned to
    # users with a 'worlds:' entry.
    #
    # Groups can be assigned to players and all their permissions will also be
    # assigned to those players. Groups can also inherit permissions from other
    # groups. Like user permissions, groups may override the permissions of their
    # parent group(s). Unlike users, groups do NOT automatically inherit from
    # default. World permissions may be assigned to groups with a 'worlds:' entry.
    #
    # The cannot-build message is configurable. If it is left blank, no message
    # will be displayed to the player if PermissionsBukkit prevents them from
    # building, digging, or interacting with a block. Use '&' characters to
    # signify color codes.
     
    users:
        rich_penguin:
            permissions:
                permissions.*: true
            groups:
            - admin
    groups:
        default:
            permissions:
                permissions.build: false
        admin:
            permissions:
                permissions.*: true
                treeassist.*: true
                treeassist.autoremove: true
                treeassist.replant: true
                treeassist.toggle: true
                treeassist.toggle.global: true
                treeassist.reload: true
            inheritance:
            - user
        user:
            permissions:
                permissions.build: true
            worlds:
                creative:
            inheritance:
            - default
    messages:
        build: '&cYou do not have permission to build here.'
    debug: false
    any help would be appreciated :)

    this is my console as well

    Code:
    17:10:40 [INFO] [TreeAssist] Disabling TreeAssist v4.0
    17:10:40 [INFO] [PermissionsBukkit] Disabling PermissionsBukkit v1.6
    17:10:40 [INFO] [PermissionsBukkit] Disabled successfully, 1 players unregistered
    17:10:40 [INFO] 182 recipes
    17:10:40 [INFO] [TreeAssist] Loading TreeAssist v4.0
    17:10:40 [INFO] [PermissionsBukkit] Loading PermissionsBukkit v1.6
    17:10:40 [INFO] [TreeAssist] Enabling TreeAssist v4.0
    17:10:40 [INFO] [PermissionsBukkit] Enabling PermissionsBukkit v1.6
    17:10:40 [INFO] [PermissionsBukkit] Enabled successfully, 1 players registered
    17:10:40 [INFO] Server permissions file permissions.yml is empty, ignoring it
    17:10:40 [INFO] Reload complete.
    
     
  11. Offline

    TheLavaGuy

    Are you OP? Try go in your console and type
    op (Then your name)
    :)
     
  12. Offline

    karl

    thanks that worked for me
     
  13. Offline

    Snowy007

    It worked for you but it won't work for anyone else unless you make them OP too. And believe me, you don't want to make every player that joins your server an OP. An OP can do a lot of damage if they want to. An OP has all permissions and can even /stop your server.

    There is only 1 thing in your config that 'could' be a problem and that is the empty line just above 'users:'. Try removing that empty line.
    Also make sure that you use spaces for indention and not tabs.
     
  14. Offline

    karl

    ok well thanks :)
    and it worked whats the command to un make someone op lol?
     
  15. Offline

    khamseen_air

    /deop <playername>
     
  16. Offline

    tripleX

    guys, I have a very big problemo. I made permissions for my server, and when I put in a command like /permissions player addgroup DutchGuy123 pawn, it says an internal error has accured. Can anyone help!? PLEASE!!
    Here are my permissions I made and can you please figure out what is wrong with my permissions:
    Code:
    users:
        ConspiracyWizard:
            permissions:
                permissions.example: true
            groups:
            - admin
    groups:
        pawn:
            permissions:
                permissions.build: true
                essentials.kit: true
                essentials.afk: true
                essentials.help: true
                essentials.helpop: true
                essentials.ignore: true
                essentials.list: true
                essentials.mail: true
                essentials.mail.send: true
                essentials.msg: true
                essentials.rules: true
                essentials.spawn: true
                essentials.home: true
                essentials.sethome: true
                essentials.warp: true
                essentials.warp*: true
                essentials.warp.list: true
                simplechestlock.lock: true 
                simplechestlock.locktype.chest: true
                simplechestlock.locktype.wooden_door: true
                simplechestlock.locktype.furnace: true 
                ChestShop.shop.*: true
                simpleprefix.pawn: true     
        rook:
            permissions:
                essentials.kit.*: true
                essentials.item: true
                essentials.balance: true
                essentials.pay: true
                essentials.compass: true
                essentials.list.hidden: true
                essentials.itemdb: true
                essentials.list.hidden: true
                essentials.motd: true
                essentials.near: true
                essentials.msg.color: true
                essentials.seen: true
                essentials.suicide: true
                essentials.whois: true
                essentials.ping: true
                essentials.tpa: true
                essentials.tpaccept: true
                essentials.tpdeny: true
                simplechestlock.locktype.trap_door: true
                simplechestlock.locktype.fence_gate: true
                simplechestlock.locktype.dispenser: true
                simpleprefix.rook: true         
            inheritance:
            - pawn
        knight:
            permissions:
                essentials.sethome.multiple: true
                essentials.setwarp: true
                essentials.tpahere: true
                essentials.protect: true
                essentials.info: true
                essentials.depth: true
                essentials.sell: true
                essentials.tree: true
                simplechestlock.locktype.jukebox: true
                simplechestlock.locktype.brewing_stand: true
                creativegates.create: true
                simpleprefix.knight: true
            inheritance:
            - rook
        bishop:
            permissions:
                essentials.bigtree: true
                essentials.me: true
                essentials.seen.banreason: true
                essentials.tp: true
                essentials.tphere: true
                simpleprefix.bishop: true
            inheritance:
            - knight
        baron:
            permissions:
                essentials.info: true
                essentials.near: true
                essentials.seen.banreason: true
                essentials.suicide: true
                essentials.ping: true
                essentials.delhome: true
                simplechestlock.locktype.lever: true
                simpleprefix.baron: true
            inheritance:
            - bishop
        duke:
            permissions:
                essentials.fireball: true
                essentials.heal: true
                essentials.enchant: true
                essentials.break.bedrock: true
                essentials.setwarp: true
                simpleprefix.duke: true
            inheritance:
            - baron
        wizard:
            permissions:
                essentials.sethome.multiple.unlimited: true
                essentials.god: true
                essentials.more: true
                essentials.joinfullserver: true
                essentials.invsee: true
                essentials.helpop.receive: true
                essentials.break: true
                essentials.back.ondeath: true
                essentials.antioch: true
                essentials.afk.others: true
                essentials.balance.others: true
                essentials.chat.color: true
                essentials.delwarp: true
                essentials.nuke: true
                simpleprefix.wizard: true
            inheritance:
            - duke
        queen:
            permissions:
                FastBan.kick: true
                FastBan.help: true
                essentials.fly: true
                essentials.invsee.others: true
                essentials.give: true
                essentials.eco.loan: true
                essentials.gamemode: true
                simpleprefix.queen: true
            inheritance:
            - wizard
          king:
            permissions: 
                FastBan.*: true
                simpleprefix.king: true 
    messages:
        build: '&cYou do not have permission to build here.'
     
    debug: false
    And here is the error that pops up on my terminal page when I put in the command:
    Code:
    08:08:46 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'permissions' in plugin PermissionsBukkit v1.6
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:473)
        at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764)
        at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113)
        at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78)
        at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:551)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    Caused by: java.lang.NullPointerException
        at com.platymuus.bukkit.permissions.PermissionsCommand.groupCommand(PermissionsCommand.java:167)
        at com.platymuus.bukkit.permissions.PermissionsCommand.onCommand(PermissionsCommand.java:146)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
        ... 12 more
    Guys please help me with this. I have been trying to fix it. I think the problem is my permissions. Please tell me whats the problem! Thanks guys!!!! :D
     
  17. Offline

    Snowy007

    Why do so many people have an empty line between the 'build:' and 'debug:' part... I'm starting to think that the plugin somehow doesn't correctly create its config...
    Anyway... Just remove the empty line between the 'build:' part and the 'debug:' part at the bottom of the file. Everything else seems to be fine.

    Also, since you are using inheritance it might be better to use '/perm player setgroup' instead of '/perm player addgroup'. When using addgroup you can put someone in multiple groups and judging from your config i don't think you want that to happen. With the setgroup command you can be sure that he is only in the group you specified.
     
    tripleX likes this.
  18. Offline

    tripleX

    Sorry, but when I change to a group, the /help button stays the same pages. so for me its 21 pages of help. And I change groups, but it still stays at 21 pages of help. Here is my config.yml:

    Code:
    # PermissionsBukkit configuration file
    #
    # A permission node is a string like 'permissions.build', usually starting
    # with the name of the plugin. Refer to a plugin's documentation for what
    # permissions it cares about. Each node should be followed by true to grant
    # that permission or false to revoke it, as in 'permissions.build: true'.
    # Some plugins provide permission nodes that map to a group of permissions -
    # for example, PermissionsBukkit has 'permissions.*', which automatically
    # grants all admin permissions. You can also specify false for permissions
    # of this type.
    #
    # Users inherit permissions from the groups they are a part of. If a user is
    # not specified here, or does not have a 'groups' node, they will be in the
    # group 'default'. Permissions for individual users may also be specified by
    # using a 'permissions' node with a list of permission nodes, which will
    # override their group permissions. World permissions may be assigned to
    # users with a 'worlds:' entry.
    #
    # Groups can be assigned to players and all their permissions will also be
    # assigned to those players. Groups can also inherit permissions from other
    # groups. Like user permissions, groups may override the permissions of their
    # parent group(s). Unlike users, groups do NOT automatically inherit from
    # default. World permissions may be assigned to groups with a 'worlds:' entry.
    #
    # The cannot-build message is configurable. If it is left blank, no message
    # will be displayed to the player if PermissionsBukkit prevents them from
    # building, digging, or interacting with a block. Use '&' characters to
    # signify color codes.
     
    users:
        ConspiracyWizard:
            permissions:
                permissions.example: true
            groups:
            - admin
    groups:
        pawn:
            permissions:
                permissions.build: true
                essentials.kit: true
                essentials.afk: true
                essentials.help: true
                essentials.helpop: true
                essentials.ignore: true
                essentials.list: true
                essentials.mail: true
                essentials.mail.send: true
                essentials.msg: true
                essentials.rules: true
                essentials.spawn: true
                essentials.home: true
                essentials.sethome: true
                essentials.warp: true
                essentials.warp*: true
                essentials.warp.list: true
                simplechestlock.lock: true 
                simplechestlock.locktype.chest: true
                simplechestlock.locktype.wooden_door: true
                simplechestlock.locktype.furnace: true 
                chestshop.shop.*: true
                simpleprefix.pawn: true     
        rook:
            permissions:
                essentials.kit.*: true
                essentials.item: true
                essentials.balance: true
                essentials.pay: true
                essentials.compass: true
                essentials.list.hidden: true
                essentials.itemdb: true
                essentials.list.hidden: true
                essentials.motd: true
                essentials.near: true
                essentials.msg.color: true
                essentials.seen: true
                essentials.suicide: true
                essentials.whois: true
                essentials.ping: true
                essentials.tpa: true
                essentials.tpaccept: true
                essentials.tpdeny: true
                simplechestlock.locktype.trap_door: true
                simplechestlock.locktype.fence_gate: true
                simplechestlock.locktype.dispenser: true
                simpleprefix.rook: true         
            inheritance:
            - pawn
        knight:
            permissions:
                essentials.sethome.multiple: true
                essentials.setwarp: true
                essentials.tpahere: true
                essentials.protect: true
                essentials.info: true
                essentials.depth: true
                essentials.sell: true
                essentials.tree: true
                simplechestlock.locktype.jukebox: true
                simplechestlock.locktype.brewing_stand: true
                creativegates.create: true
                simpleprefix.knight: true
            inheritance:
            - rook
        bishop:
            permissions:
                essentials.bigtree: true
                essentials.me: true
                essentials.seen.banreason: true
                essentials.tp: true
                essentials.tphere: true
                simpleprefix.bishop: true
            inheritance:
            - knight
        baron:
            permissions:
                essentials.info: true
                essentials.near: true
                essentials.seen.banreason: true
                essentials.suicide: true
                essentials.ping: true
                essentials.delhome: true
                simplechestlock.locktype.lever: true
                simpleprefix.baron: true
            inheritance:
            - bishop
        duke:
            permissions:
                essentials.fireball: true
                essentials.heal: true
                essentials.enchant: true
                essentials.break.bedrock: true
                essentials.setwarp: true
                simpleprefix.duke: true
            inheritance:
            - baron
        wizard:
            permissions:
                essentials.sethome.multiple.unlimited: true
                essentials.god: true
                essentials.more: true
                essentials.joinfullserver: true
                essentials.invsee: true
                essentials.helpop.receive: true
                essentials.break: true
                essentials.back.ondeath: true
                essentials.antioch: true
                essentials.afk.others: true
                essentials.balance.others: true
                essentials.chat.color: true
                essentials.delwarp: true
                essentials.nuke: true
                simpleprefix.wizard: true
            inheritance:
            - duke
        queen:
            permissions:
                fastban.kick: true
                fastban.help: true
                essentials.fly: true
                essentials.invsee.others: true
                essentials.give: true
                essentials.eco.loan: true
                essentials.gamemode: true
                simpleprefix.queen: true
            inheritance:
            - wizard
        king:
            permissions: 
                fastban.*: true
                simpleprefix.king: true 
    messages:
        build: '&cYou do not have permission to build here.'
    debug: false
    Pleas help me! Thanks!
     
  19. Offline

    Snowy007

    Don't really understand what you are saying about the /help part.. but i see there is another empty line just above 'users:'
    Try removing that empty line too. There should be absolutely no empty lines as the plugin seems to behave incorrectly if there are any.
    I'm away now so i might not answer again until Monday.
     
  20. Offline

    tripleX

    Ok, so I want to make groups on my server. I made pawn, rook, knight, bishop, baron, duke, queen, and king. On my list I gave all of them permissions. So for pawn I did:
    Code:
    groups:
        pawn:
            permissions:
                permissions.build: true
                essentials.kit: true
                essentials.afk: true
                essentials.help: true
                essentials.helpop: true
                essentials.ignore: true
                essentials.list: true
                essentials.mail: true
                essentials.mail.send: true
                essentials.msg: true
                essentials.rules: true
                essentials.spawn: true
                essentials.home: true
                essentials.sethome: true
                essentials.warp: true
                essentials.warp*: true
                essentials.warp.list: true
                simplechestlock.lock: true
                simplechestlock.locktype.chest: true
                simplechestlock.locktype.wooden_door: true
                simplechestlock.locktype.furnace: true
                chestshop.shop.*: true
                simpleprefix.pawn: true  
    And so, I went on my server and did: /permissions player setgroup DutchGuy123 pawn, but when I did /help, it listed ALL of my plugins commands. But what I wanted is the permissions I listed in my pawn group to be allowed ONLY. How do you do that? Also when I type the command it says: "DutchGuy123 is in pawn group" or something like that. But when I do /help, it has all the commands of all of my plugins. Please help me!!! Thanks!!!
     
  21. Offline

    Snowy007

    Have you actually tried to use commands that the pawn group shouldn't be able to use? Or are you just 'assuming' they work when they are listed with the help command?
    I never really use the /help menu.. i replaced it with a different kind of help by just showing a message so i can't really test how its on my server.

    My guess is that it is either the help command just lists everything even though it works fine, or you are testing it with a player who is OP. An OP automatically gets all permissions.
     
  22. Offline

    tripleX

    Yes, I am assuming that the nodes in the pawn group should be the only ones that I can use. Well thanks, and I am from the Netherlands to ya know. Nice to meet you! Prettige Dage!
     
  23. Offline

    AirForce

    Getting this error when trying to use a command.

    Code:
    13 21:02:17 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'permissions' in plugin PermissionsBukkit v1.6
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:473)
    at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764)
    at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113)
    at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:551)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    Caused by: java.lang.NullPointerException
    at com.platymuus.bukkit.permissions.PermissionsCommand.groupCommand(PermissionsCommand.java:167)
    at com.platymuus.bukkit.permissions.PermissionsCommand.onCommand(PermissionsCommand.java:146)
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
    ... 12 more
     
  24. Offline

    RAVENTACO

    Code:
    users:
        RAVENTACO:
            permissions:
                permissions.example: true
            groups:
            - owner
    groups:
     
        default:
            permissions:
                permissions.build: true
                permissions.help: true
                essentials.give: true
                essentials.kit: true
                essentials.pay: true
                essentials.worth: true
                essentials.sell: true
                essentials.afk: true
                essentials.help: true
                essentials.helpop: true
                essentials.info: true
                essentials.list: true
                essentials.who: true
                essentials.motd: true
                essentials.msg: true
                essentials.me: true
                essentials.mail: true
                essentials.rules: true
                essentials.sethome: true
                essentials.delhome: true
                essentials.home: true
                essentials.tpa: true
                essentials.tpahere: true
                essentials.tpaccept: true
                essentials.tpdeny: true
                essentials.warp: true
                essentials.seen: true
                essentials.whois: true
                essentials.suicide: true 
                essentials.spawn: true                       
               
        admin:
            permissions:
                permissions.build: true
                essentials.banip: true
                essentials.unbanip: true
                essentials.world: true
                essentials.stop: true
                essentials.setwarp: true
                essentials.delwarp: true
                essentials.gamemode: true
                essentials.gm: true
                essentials.nuke: true
                essentials.killall: true
               
            inheritance:
     
            - mod
        mod:
            permissions:
                permissions.build: true
                permissions.help: true
                essentials.ban: true
                essentials.unban: true
                essentials.lightning: true
                essentials.tp: true
                essentials.backup: true
                essentials.broadcast: true
                essentials.kick: true
                essentials.kill: true
                essentials.mute: true
                essentials.jail: true
                essentials.jails: true
                essentials.unjail: true
                essentials.antioch: true
                essentials.socialspy: true
                essentials.tempban: true
                essentials.weather: true
                essentials.time: true
                essentials.top: true
     
            inheritance:
     
            - default
        owner:
              permissions:
                permissions.build: true
                permissions.help: true
            inheritance:
            - admin
    messages:
        build: '&cYou do not have permission to build here.'
    debug: false
     
  25. Offline

    Snowy007

    So.... its working correctly now?
    Dus het werkt goed nu? xD

    There is something wrong in your config.

    Only a config without any other text... i'm starting to feel like an automated config fixer now.. xD
    Remove all the empty lines in your config. This plugin really hates empty lines and won't work correctly if you have any.
     
  26. Offline

    fastmitch97

    Hey guys, I'm new to this whole permissions thing but I've a problem.
    When I install the plugin, modify the permissions a bit, it works fine.
    Here's my config file:

    Code:
    # PermissionsBukkit configuration file
    #
    # A permission node is a string like 'permissions.build', usually starting
    # with the name of the plugin. Refer to a plugin's documentation for what
    # permissions it cares about. Each node should be followed by true to grant
    # that permission or false to revoke it, as in 'permissions.build: true'.
    # Some plugins provide permission nodes that map to a group of permissions -
    # for example, PermissionsBukkit has 'permissions.*', which automatically
    # grants all admin permissions. You can also specify false for permissions
    # of this type.
    #
    # Users inherit permissions from the groups they are a part of. If a user is
    # not specified here, or does not have a 'groups' node, they will be in the
    # group 'default'. Permissions for individual users may also be specified by
    # using a 'permissions' node with a list of permission nodes, which will
    # override their group permissions. World permissions may be assigned to
    # users with a 'worlds:' entry.
    #
    # Groups can be assigned to players and all their permissions will also be
    # assigned to those players. Groups can also inherit permissions from other
    # groups. Like user permissions, groups may override the permissions of their
    # parent group(s). Unlike users, groups do NOT automatically inherit from
    # default. World permissions may be assigned to groups with a 'worlds:' entry.
    users:
      ConspiracyWizard:
        permissions:
          permissions.example: true
        groups:
        - admin
      fastmitch97:
        permissions:
          permissions.build: true
        groups:
        - default
        - admin
    groups:
      default:
        permissions:
          permissions.build: true
          bukkit.command.kill: true
          bukkit.command.teleport: true
          bukkit.command.gamemode: true
      admin:
        permissions:
          permissions.*: true
          permissions.build: true
        inheritance:
        - user
      user:
        permissions:
          permissions.build: true
        worlds:
          creative:
            coolplugin.item: true
        inheritance:
        - default
    messages:
      build: '&cYou do not have permission to build here.'
    debug: false
    
    So I have edited my permissions in order to give people with no op status the /tp /kill and /gamemode commands.
    This works fine, no problems with it and without op, they can still use these commands without trouble.
    But when I try to destroy or place blocks, it won't work and it won't let me do that.
    Whatever I try, nothing works and I keep being unable to build anything without op status
    Does anyone know what I did wrong? I am new to all of this and the answer might be obvious but would you please help me? I also tried to add myself to the default group and I even made a whole new permissions group just to make sure you could build without op status but that did not work either. Is it even possible to let people build without op status using permissions? or does the bukkit itself blocks this from happening? It is really annoying not being able to build or anything despite the permissions.build being turned on, please help! :D
    Despite this little problem I have, it is a great plugin! The commands you can use while you are not an op are very convenient! :)
     
  27. Offline

    Snowy007


    I don't really see why you would be unable to build... Just in case i edited your config little.
    1. I removed 'ConspiracyWizard:' since it is just used as an example.
    2. I removed 'Permissions:' from 'fastmitch97' since you should already get the build permission from the group you are in.
    3. I put 'fastmitch97' ONLY in the admin group instead of both admin and default. (use "/perm player setgroup" to put a player in 1 group. Don't use "/perm player addgroup" if you are working with inheritance.)
    4. I put the admin group below the user group just for the sake of visibility so they are in a low to high order.
    5. I removed the example stuff from the user group. (except for 1 so it wouldn't be empty xD )
    6. I removed the 'permissions.build: true' from the admin group. The 'default group already has it and since you are using inheritance the admin group will also automatically have it.

    Code:
    users:
      fastmitch97:
        groups:
        - admin
    groups:
      default:
        permissions:
          permissions.build: true
          bukkit.command.kill: true
          bukkit.command.teleport: true
          bukkit.command.gamemode: true
      user:
        permissions:
          plugin.example: true
        inheritance:
        - default
      admin:
        permissions:
          permissions.*: true
        inheritance:
        - user
    messages:
      build: '&cYou do not have permission to build here.'
    debug: false
    Also make sure that you are using spaces and not tabs for indenting the nodes.

    If you still can't build.... its probably something not related to the permissions.. or i'm just turning blind...
     
  28. Offline

    fastmitch97

    Well, I noted everything down so that I won't forget it, I don't trust myself xD
    And I copied this bit of your config and pasted it in my own and booted up my server.
    I already was de-opped and I still could not build... So I think it is something else that keeps getting between me and my blocks :-/
    Well, anyway, thanks for the help! Appreciate it :D
     
  29. Offline

    Snowy007

    Are you using other plugins? Like WorldGuard or something like that?
     
  30. Offline

    bebop74

    Is there a way i can disable world edit for specific groups for this?
     
  31. Offline

    Snowy007

    Yes, just give the WorldEdit permissions to the groups that should have WorldEdit. Groups without the permissions won't be able to use it.
    Or you could explicitly give a 'false' permission but that should not be needed if you configure it correctly.
     

Share This Page