[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

    Flaminglynx

    When I try to use the commands I get a message that says it is an unknown command, type help for help. i'm using the 1.2 fix for this plugin and superbridge.
    this is the error in my cmd box.
    161 recipes
    17 achievements
    13:01:17 [INFO] Starting minecraft server version Beta 1.8.1
    13:01:17 [INFO] Loading properties
    13:01:17 [INFO] Starting Minecraft server on *:25565
    13:01:17 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-1067
    -g6301507-b1185jnks (MC: 1.8.1)
    13:01:17 [INFO] [SuperpermBridge] Superperm/Permissions bridge initialized
    13:01:18 [SEVERE] Could not load 'plugins\PermissionsBukkit-1.2.jar' in folder '
    plugins':
    mapping values are not allowed here
    in "<reader>", line 701, column 28:
    jail.openchest: true
    ^

    at org.yaml.snakeyaml.scanner.ScannerImpl.fetchValue(ScannerImpl.java:74
    5)
    at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.ja
    va:307)
    at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:18
    3)
    at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(Par
    serImpl.java:564)
    at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:163)
    at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148)
    at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java
    :228)
    at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java
    :230)
    at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java
    :230)
    at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java
    :230)
    at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
    at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:12
    2)
    at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105)

    at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseCons
    tructor.java:124)
    at org.yaml.snakeyaml.Yaml.load(Yaml.java:264)
    at org.bukkit.util.config.Configuration.load(Configuration.java:82)
    at org.bukkit.plugin.java.JavaPlugin.initialize(JavaPlugin.java:157)
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j
    ava:175)
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.
    java:213)
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager
    .java:136)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:138)
    at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:103)
    at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigur
    ationManager.java:52)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:136)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:348)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    13:01:18 [INFO] Preparing level "RedLight"
    13:01:18 [INFO] Default game type: 0
    13:01:18 [INFO] Preparing start region for level 0 (Seed: 3995887374302453760)
    13:01:18 [INFO] [AutoMessage] version [1.5] loaded
    13:01:18 [INFO] BOSEconomy: Located Permissions 2.7.7.
    13:01:18 [INFO] BOSEconomy v0.7.1 enabled.
    13:01:18 [INFO] [ChestShop] version 3.0 initialized!
    13:01:18 [INFO] [ChestShop] BOSEconomy 0.7.0 loaded.
    13:01:18 [INFO] [ChestShop] Permissions version 2.7.7 loaded.
    13:01:19 [INFO] [ChestShop] Lockette version 1.3.8 loaded.
    13:01:19 [INFO] [CouponCodes] Enabled! <Version: 1.5.3>
    13:01:19 [INFO] Lockette version 1.3.8 is being enabled! Yay! (Core version 1.
    0)
    13:01:19 [INFO] Lockette: Detected craftbukkit build [1185] ok.
    13:01:19 [INFO] [SuperpermBridge] Superperm/Permissions bridge enabled
    13:01:19 [INFO] Lockette: Linked to Permissions plugin version 2.7.7
    13:01:19 [INFO] Lockette: Ready to protect your containers.
    13:01:19 [INFO] [ServerSave] Save interval is: 1800 seconds.
    13:01:19 [INFO] [ServerSave] ServerSave enabled!
    13:01:19 [INFO] [VoxelPort] ContainerSize set to 1
    13:01:19 [INFO] [VoxelPort] Config loaded
    13:01:19 [INFO] [VoxelPort] Portals loaded! 10 portals have been loaded.
    13:01:19 [INFO] [VoxelPort] Portal zones have been sorted into 84 containers.
    13:01:19 [INFO] [VoxelPort] Starting thread...
    13:01:19 [INFO] [VoxelPort] Thread Started!
    13:01:19 [INFO] VoxelPort version 2.028 is enabled!
    13:01:19 [INFO] [VoxelSniper] Config loaded
    13:01:19 [INFO] VoxelSniper version 4.753 is enabled! Snipe away.
    13:01:19 [INFO] WorldEdit 4.6 enabled.
    13:01:19 [INFO] WorldEdit: Permissions plugin detected! Using Permissions plugin
    for permissions.
    13:01:19 [INFO] WorldGuard: Permissions plugin detected! Using Permissions plugi
    n for permissions.
    13:01:19 [INFO] WorldGuard: (RedLight) Single session is enforced.
    13:01:19 [INFO] WorldGuard: (RedLight) TNT ignition is blocked.
    13:01:19 [INFO] WorldGuard: (RedLight) Lighters are blocked.
    13:01:19 [INFO] WorldGuard: (RedLight) Lava fire is blocked.
    13:01:19 [INFO] WorldGuard: (RedLight) All fire spread is disabled.
    13:01:19 [INFO] WorldGuard: Loaded configuration for world 'RedLight"
    13:01:19 [INFO] WorldGuard: 21 regions loaded for 'RedLight'
    13:01:19 [INFO] WorldGuard: Unable to register missing event type SNOW_FORM
    13:01:19 [INFO] WorldGuard 5.2.2 enabled.
    13:01:19 [INFO] [AdminCmd] Plugin Enabled. (version 5.7.15)
    13:01:19 [INFO] [AdminCmd] bal_extinguish has all his alias already registered.
    Command deactivated
    13:01:19 [INFO] [AdminCmd] Disabled Alias(es) for bal_playerheal : heal,
    13:01:19 [INFO] [AdminCmd] Disabled Alias(es) for bal_drop : d,
    13:01:19 [INFO] [AdminCmd] Disabled Alias(es) for bal_vulcan : v,
    13:01:19 [INFO] [AdminCmd] Disabled Alias(es) for bal_undo : undo,
    13:01:19 [INFO] [AdminCmd] Disabled Alias(es) for bal_god : god,
    13:01:19 [INFO] [AdminCmd] Disabled Alias(es) for bal_itemcolor : c,
    13:01:19 [INFO] [AdminCmd] Disabled Alias(es) for bal_uptime : up,
    13:01:19 [INFO] [AdminCmd] 0 blacklisted items loaded.
    13:01:19 [INFO] [AdminCmd] 1655 alias loaded.
    13:01:19 [INFO] [AdminCmd] 58 Banned players loaded.
    13:01:19 [INFO] [AdminCmd] 6 Muted players loaded.
    13:01:19 [INFO] [AdminCmd] 5 kits loaded.
    13:01:19 [INFO] [AdminCmd] Successfully linked with Yeti's Permissions.
    13:01:19 [INFO] [ChatSuite] [Debug] Building file references..
    13:01:19 [INFO] [ChatSuite] ChatSuite v1.0.7-b36 by krinsdeath enabled.
    13:01:19 [INFO] [HawkEye] Starting HawkEye initiation process...
    13:01:19 [INFO] [HawkEye] Using Permissions for user permissions
    13:01:19 [INFO] [HawkEye] Performing update check...
    13:01:20 [WARNING] [HawkEye] Unable to perform update check!
    13:01:20 [INFO] [HawkEye] Starting database cleanse thread
    13:01:20 [INFO] [HawkEye] WorldEdit found, selection rollbacks enabled
    13:01:20 [INFO] [HawkEye] Version 1.0.4b enabled!
    13:01:20 [INFO] Server permissions file permissions.yml is empty, ignoring it
    13:01:20 [INFO] Done (0.244s)! For help, type "help" or "?"
    13:01:22 [INFO] /127.0.0.1:63989 lost connection
    13:01:23 [INFO] flaminglynx [/67.85.220.132:63991] logged in with entity id 133
    at ([RedLight] 113.34375, 99.0, 3930.3125)
    13:01:24 [INFO] New max size: 484
    13:01:24 [INFO] New max size: 784
    13:01:29 [INFO] [VoxelPort] PortTick thread executing. Running at interval of 50
    00ms, with 100 CodeTime each Tick
    >
     
  3. Offline

    G180397

    Is it possible to have a group inherit from more than one other groups?
    Thanks for your time
     
  4. Offline

    Celtic Minstrel

    Yes.

    @Silverlink – multiworld permissions work basically as your example, but you can only do one world at a time; no lists of worlds.
     
  5. Offline

    Disparate


    Okay, so given you are not updating this plugin for 1185, any chance you could answer my question?
     
  6. Offline

    godsyn

    Sounds like you're requesting mirroring.

    You have a tab / misaligned area in cofing.yml.

    As stated before, use iChat, mChat, or jChat. Each have their specific configuration. I suggest asking for support in their forums.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 14, 2016
  7. Offline

    cartman-2000

    Can you make it so the bridge plugin will support PermissionsBukkit Groups if permissionsbukkit is used also, plugins that grab groups names like chat plugins and worldgurd can't do so with both installed. ichat grabs group names for chat formatting and worldgurd does for blacklist support. ichat and world guard prefer permissions2.7/3.1, so they will both prefer using the bridge plugin if you have both installed.

    Probably all that needs to be done is expose group names through the bridge plugin when you have PermissionsBukkit installed too.
     
  8. Offline

    FrAz

    With 1.8.1, ( 1185 ) I seem to have solved the building problem.
    Another question, though, sorry if it has been asked already.
    I'm a bit confused about the "default" group that you're supposed to leave alone, do I put all my permissions I want for every group there and then inherit? and how?

    Edit: Just wondering what would be most efficient, if this is the best way other than just putting the same permissions for every user/group. Thanks.
     
  9. Offline

    cartman-2000

    You put all the permissions you want players to have by default in the default group, if you want them to be able to build by default then you set the build permission in the defulat group to true.
     
  10. Offline

    Midokite

    I have no clue how to set this up can someone help me! when i setup my server permissions.yml is in the basic folder. Do i use that? or do i download this and set it up but that part i have no clue ho wot do
     
  11. Offline

    DylanP

    @SpaceManiac

    My PEX .yml file is way too big to be all pasted in to your converter..can you PM me another tool/way of doing it?

    Thanks.
     
  12. Offline

    Talkyn

    Got my head scratching again. I rewrote the whole works with my new understanding of how it all works. I made extensive use of the permissions.yml file in order to take advantage of having a nice, clean and organized setup.
    I had everything almost perfect, just tweaking individual things, but suddenly I couldn't build.

    I tried returning the default group to: permission.build: true and I still could not build. I switched my user group and I couldn't build. I wrote permission.build for every group and I coudln't build. I added it to my user....no go. I deleted my experiment world and regenerated. I can't build. The worst part is all the other permissions seem to be working exactly as I want them.

    I have scanned this over and over and cannot for the life of me figure out what happened. Maybe I just need an extra set of eyes, maybe some bizzare conflict is occuring.
    Plugins:
    CommandBook
    Lockette
    NiftyWarp
    NoLagg
    PermissionBukkit & SuperpermsBridge
    Stargate
    WorldBorder
    WorldEdit
    WorldGuard
    TotallyOrbSome

    Permmisions.yml:
    Code:
    niftywarp.basic:
        description: Basic niftywarp home package.
        default: true
        children:
            niftywarp.use.home: true
            niftywarp.use.homeset: true
    
    niftywarp.group.admin:
        description: Admin niftywarp package
        default: false
        children:
            niftywarp.use.add: true
            niftywarp.use.delete: true
            niftywarp.use.home: true
            niftywarp.use.homeset: true
            niftywarp.use.list: true
            niftywarp.use.rename: true
            niftywarp.use.set: true
            niftywarp.use.warp: true
            niftywarp.use.warptocoord: true
            niftywarp.admin.delete: true
            niftywarp.admin.rename: true
            niftywarp.admin.set: true
    
    commandbook.basic:
        description: Basic commandbook package
        default: false
        children:
            commandbook.spawn: true
            commandbook.who: true
            commandbook.motd: true
            commandbook.time.check: true
            commandbook.return: true
    
    commandbook.group.admin:
        description: Admin commadbook package
        default: false
        children:
            commandbook.time: true
            commandbook.kick: true
            commandbook.bans.ban: true
            commandbook.teleport: true
            commandbook.teleport.other: true
            commandbook.mute: true
            commandbook.slap.other: true
    
    worldedit.group.admin:
        description: Admin Worldedit package
        default: false
        children:
            superpermbridge.worldedit.selection.*: true
            worldedit.wand: true
            worldedit.wand.toggle: true
            worldedit.fixlava: true
            worldedit.fixwater: true
    
    worldguard.group.admin:
        description: Admin Worldguard package
        default: false
        children:
            superpermbridge.worldguard.locate: true
            superpermbridge.worldguard.region.*: true
            superpermbridge.worldguard.god: true
            superpermbridge.worldguard.ungod: true
            superpermbridge.worldguard.heal: true
    
    permissions.group.admin:
        description: Admin permissions package
        default: false
        children:
            permissions.reload: true
            permissions.group.help: true
            permissions.group.list: true
            permissions.group.players: true
            permissions.player.help: true
            permissions.player.groups: true
            permissions.player.setgroup: true
            permissions.player.addgroup: true
            permissions.player.removegroup: true
    
    stargate.group.admin:
        description: Admin Stargate package
        default: false
        children:
            stargate.create: true
            stargate.option.free: true
    
    and my config.yml:
    Code:
    groups:
        admins:
            permissions:
                niftywarp.group.admin: true
                commandbook.group.admin: true
                worldedit.group.admin: true
                worldguard.group.admin: true
                permissions.group.admin: true
                stargate.group.admin: true
            inheritance:
            - homies
        homies:
            permissions:
                niftywarp.basic: true
                commandbook.basic: true
            inheritance:
            - default
        default:
            permissions:
                permission.build: true
                stargate.use: true
    
    users:
        hashiba:
            groups:
            - admins
    
     
  13. Offline

    dharmlost

    I have been looking through this thread for the last two hours, not sure if I am blind or just missing it, or maybe it has not been asked. But I am looking for a way to give basic commands a permission set (/give, /gamemode, /time, etc) without adding in more plugins then necessary.
    Does anyone know if this is possible? Or do we have to add in another plugin for these commands?
     
  14. Offline

    Moredice

    Here you go: http://wiki.bukkit.org/Command_Permissions
    :)
     
  15. Offline

    Heliwr

    permissions.build: true
     
  16. Offline

    ntyGuns

    Right I have some BIG issues that I need help with.

    I've been using permissionsbukkit for only a few days now. I started using it with the 1.8.1 bukkit stable build (not the recommended one) and it was working fine. Now we are on the recommended build and it doesnt seem to work (I'm not suggesting it is recommended builds fault.)

    On my server we only have 2 groups, "default" and "admin". I also make all of the admins OPs.

    Here is my config.yml file:
    Code:
    users:
        ntyGuns:
            permissions:
            groups:
            - admin
        oiukar:
            permissions:
            groups:
            - admin
        woshmistro:
            permissions:
            groups:
            - admin
        irfaan360:
            permissions:
            groups:
            - admin
        bantama:
            permissions:
            groups:
            - admin
        explodingtnt:
            permissions:
            groups:
            - admin
    groups:
        default:
            permissions:
                permissions.build: true
                essentials.help: true
                essentials.kit.wood: true
                essentials.kit.iron: true
                essentials.kit.tools: true
                essentials.kit.diamond: true
                essentials.kit.glass: true
                essentials.kit.farming: true
                essentials.kit.bones: true
                essentials.kit.food: true
                essentials.tpa: true
                essentials.home: true
                essentials.motd: true
                essentials.rules: true
                essentials.afk: true
                essentials.list: true
                essentials.spawn: true
                essentials.nick: false
                essentials.setspawn: false
                essentials.give: false
                essentials.item: false
                essentials.god: false
                essentials.ban: false
                essentials.nuke: false
                essentials.kick: false
                essentials.tempban: false
                essentials.heal: false
        admin:
            permissions:
                permissions.*: true
            inheritance:
    messages:
        build: '&cYou do not have permission to build here.'
    
    
    The problem I am having as of TODAY is that only OPs can use anything to do with Essentials.

    When a non-OP or default logs in to the server, they don't even see the MOTD from essentials.

    They cannot use kits, warps, read the rules or anything.

    They get the message: "You do not have access to this command."



    My root permissions.yml file is completely empty which may be a problem, however looking at the examples I'm afraid I still don't understand them. (I tried :( )

    If anyone has any kind of advice I would welcome it!

    Thanks in advance.
     
  17. Offline

    Syd

    Is there a method to add/set nodes with a third party plugin? Like an API...
     
  18. Offline

    Celtic Minstrel

    Bukkit has an API for that.
     
  19. Offline

    snowbazle

    Is there any way to set prefix/sufixes? Or is there a seperate plugin that can do so....
     
  20. Offline

    Talkyn

    I can't believe it....
    I was about to reply with a nasty comment when it clicked in.
    permissions.node I wrote: permission.node

    Not enough sleep doing this!
    Thanks for pointing out that STUPID mistake! Now it works PERFECT!

    In the downtime I had for this, I actually tried out PEX, and I have to say, his tutorial write-up had me up and running error free in only an hour, vs the DAYS I have spent on PermissionsBukkit. I already had all the nodes in one place, so add an hour or two for tracking those down and you are still ahead.

    Currently trying to decide which plug-in to use in the long term.
     
  21. Offline

    Phantom Index

    I know right? I thought that mob disguise would work with PEX, but it doesnt. Cosidering swiching to PermissionsBukkit, but that would require color problems.
     
  22. Offline

    StephenK

    Hi all,

    Really hope someone can help me out. I'm sure I'm missing something simple but I've spent all night (until 6 am this morning) trying to get this to work without success.

    I've just rented a server and it comes with McMyAdmin preinstalled (including bukkitcompatr15a). I installed the latest version of bukkit, essentials (including chat, protect and spawn) and permissionsbukkit. I've made the groups inside MCMA and assigned the essentials commands each group can use. These commands are working fine in game but nobody can build at all.

    I've read through a pile wikis and forum posts and have tried adding in build permissions in several different ways but no luck. I've also run the yml through a parser just to se if I'd messed up but no sign of anything wrong there either.

    Currently, my config looks like this:


    Code:
    #Written by McMyAdmin v0.9.7.0
    
    users:
        votba:
            groups:
              - 'Regulars'
        emeraldino:
            groups:
              - 'Regulars'
        electron105:
            groups:
              - 'Regulars'
              - 'Moderators'
        orbitals:
            groups:
              - 'Regulars'
        pommers:
            groups:
              - 'Regulars'
        glumblebeard:
            groups:
              - 'Regulars'
        starfyter:
            groups:
              - 'Regulars'
        spawn02000:
            groups:
              - 'Regulars'
        birdman69:
            groups:
              - 'Regulars'
        roomin:
            groups:
              - 'Regulars'
        billwrosch:
            groups:
              - 'Regulars'
              - 'Moderators'
        rorulon:
            groups:
              - 'Regulars'
        stephenkilbride:
            groups:
              - 'Admin'
    
    groups:
        default:
            permissions:
                permissions.build: true
        Regulars:
            permissions:
                essentials.tp: true
                essentials.help: true
                essentials.motd: true
                essentials.spawn: true
                essentials.sethome: true
                essentials.tphere: true
                essentials.rules: true
                essentials.list: true
                essentials.home: true
                essentials.afk: true
            inheritance:
              - 'default'
        Moderators:
            permissions:
                essentials.give: true
            inheritance:
              - 'Regulars'
        Admin:
            permissions:
                essentials.setspawn: true
            inheritance:
              - 'Moderators' 
    I really am at my wits end. We've just moved servers and I stepped up to get the new server working but I just can't seem to find the problem.

    Anybody got any advice at all? Any other files you need to see?

    EDIT: Oh and it's a brand new world. I haven't imported anything over from the previous server so its all pretty much as default as it comes except for the things listed above.

    Thanks very much!
    Steve
     
  23. Offline

    cadwal

    I currently have two independent issues I am running into, one slightly more severe than the other:

    1. I am currently opted, but I am unable to set players to groups within game and must use console to do so. I'm not sure where my permissions are off, or how this would be disabled in the first place.

    2. I was wondering if there were a way set it so that players could set specific groups through nodes. For example, if I want moderators to be able to set Default to Users, but not any higher.... so a node like "permissions.setgroup.users" or a similar command?

    Here's what happened to me....Essentials defaults to build mode off in the wild and is conflicting with Permissions. Go into the config file for Essentials and set the protections to true.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 14, 2016
  24. Offline

    StephenK

    Ok , for some weird reason, turning off essentials chat and essentials protect has allowed us to build. I tried this last night but it didn't have any effect so it must be a change I've made since. Either way, looks like I'm good to go now. Wonder what it was in chat and/or protect that was causing the trouble but either way, I'm happy :)

    Thanks to Sepian for pointing me in the right direction. Saved me jumping off a tall building :)

    Will have a look at that too Cadwal, thanks for the help :)

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

    ItsHarry

    Kinda confused... How does the current permissions API work?
    Is it still:
    Plugin permissionsPlugin = this.getServer().getPluginManager().getPlugin("Permissions");
    ??
     
  26. Offline

    ArtooHD

    Okay soooooo, I can't get permissions to work. Anybody that know what their talking about when it comes to permissionsbukkit mind taking alook at my config? http://pastebin.com/Y8jieKEV
     
  27. Offline

    ZerothAngel

    Code:
    if (player.hasPermission("some.permission.node")) {
      // authorized...
    }
    else {
      // not authorized...
    }
    
    is about the gist of it. It's built into the Permissible interface. No need to worry about specific implementations.
     
  28. Offline

    ItsHarry

    Sorry, I don't understand D:
    You mean that permissions is bulit into Bukkit itself? :|
     
  29. Offline

    ZerothAngel

    Yes, since CB1000.

    Also see this thread.

    But note that Bukkit only provides a consistent permissions API. Server operators still need some sort of permissions implementation... like PermissionsBukkit, PEX, bPermissions, etc.
     
  30. Offline

    ItsHarry

    Okay, so how would I do this then? Is there a way to handle all permissions in 1 single way? :D
     
  31. Offline

    ntyGuns

    UPDATE on my own post:
    I've now tried to switch out Essentials for Commandbook. The permissions still do not work.

    People in the group "default" cannot use any of the commands they are supposed to.
    Here are my files:

    Config.yml
    Code:
    
    users:
        ntyGuns:
            permissions:
            groups:
            - admin
        fnf_ov3rd0ze:
            permissions:
            groups:
            - admin
        woshmistro:
            permissions:
            groups:
            - admin
        irfaan360:
            permissions:
            groups:
            - admin
        spazzymagee1199:
            permissions:
            groups:
            - admin
        explodingtnt:
            permissions:
            groups:
            - admin
        jerryjuicejr:
            permissions:
            groups:
            - admin
        bantama:
            permissions:
            groups:
            - admin
        mrdavetherave411:
            permissions:
            groups:
            - admin
        oiukar:
            permissions:
            groups:
            - admin
        yaneezml:
            permissions:
            groups:
            - admin
    groups:
        default:
            permissions:
                server.basics: true
        admin:
            permissions:
                permissions.*: true
                server.admin: true
            inheritance:
            - default
    messages:
        build: '&cYou do not have permission to build here.'
    
    Permissions.yml
    Code:
    server.basics:
        default: true
        children:
                permissions.build: true
                commandbook.help: true
                commandbook.warp.teleport: true
                commandbook.motd: true
                commandbook.kit.list: true
                commandbook.kit.bones: true
                commandbook.kit.wood: true
                commandbook.kit.iron: true
                commandbook.kit.farming: true
                commandbook.kit.food: true
                commandbook.kit.glass: true
                commandbook.spawn: true
                commandbook.return: true
                commandbook.home: true
                commandbook.rules: true
                commandbook.give: false
                commandbook.more: false
                commandbook.ban: false
                commandbook.call: true
    server.admin:
        default: op
        children:
            permissions.*: true
    

    Once again, the issue is that I type something like
    "/kit wood"

    And it will say

    "You do not have permission."

    Help please!
     

Share This Page