Privileges

Privileges

Privileges seeks to be a familiar face for Permissions, and uses the Permissions 2.x format of lists of nodes for users. It offers inheritance, multi-world permissions, and promotion tracks.

This plugin is designed to implement Super perms (Bukkit Permissions). It does not provide an extensible API for permissions handler hooking, except in the form of getGroup().

by krinsdeath

Pages

  1. Configuration / groups.yml
  2. Configuration / config.yml
  3. Example Setup
  4. Commands
  5. Jenkins / Github
    5.1. Use of the plugin builds from Jenkins is unofficial, unsupported and unapproved by BukkitDev Staff!

Features

  • Multi-world compatible permissions management, with a familiar interface.
  • Easy-to-use, powerful, and accurate inheritance.
  • Promotion ladders and tracks through group ranks.
  • Anti-build with permissions nodes privileges.build and privileges.interact.
  • Expanded anti-build permissions with privileges.interact.[block id], to prevent interaction on a block-by-block basis.
  • Extremely powerful command system!
  • Incredibly light-weight registration of players. Thousands of nodes can be applied in only a few millionths of a second.
  • Plugin Metrics! Privileges reports the total number of groups and users registered in its config files to mcstats.org. This data is 100% anonymous and is only used for informational purposes. You can disable this in config.yml by changing plugin.metrics: false

Commands

  • /priv - Top level command. Does nothing.
  • /priv check [player] [node] - Checks the specified node for the specified player. If player is omitted, checks your own nodes.
  • /priv list [player] [page] - Lists the specified player's permissions nodes. If player is omitted, lists your own nodes. 7 nodes are listed per page.
  • /priv reload - Saves Privileges' currently loaded configuration to disk and reloads all files.
  • /priv save - Saves Privileges' currently loaded configuration to disk.
  • /priv load - Unloads current configurations and loads from the disk - used to pick up external file changes.
  • /priv backup [name] - Creates a configuration snapshot including users and groups, and saves it to a directory: privbackup/[name].
  • /priv restore [name] - Restores the specified configuration snapshot.
  • /priv version - Shows Privileges' current version and build numbers.
  • /priv group [option] - Top level 'group' command
    • /priv group create [name] [rank] - Creates a group with the specified name and rank. If your current rank is equal to or lower than the rank you specify, the command will fail.
    • /priv group remove [name] [--safe] - Removes the specified group. If your rank is lower than the target group's rank, the command fails. If --safe is specified, the command will attempt to remove all references to the group from all users (and set them to your default group), and remove the group from all inheritance references as well.
    • /priv group set [player] [group] - Attempts to set the specified player's group to the specified group. If the target group's rank is equal to or higher than the command sender's rank, the command fails.
    • /priv group show [player] - Shows the sender the specified player's group.
    • /priv group list - Lists the available groups and their ranks.
    • /priv group perm - Top level 'group permission' command
      • /priv group perm set [group] [node] [true|false] - Attempts to set the specified node to the specified value for the specified group. Fails if you don't have a higher rank setting than the target group.
      • /priv group perm remove [group] [node] - Attempts to remove the node specified from the group. Fails if your rank is not higher than the target group.
  • /priv user perm [option] - Top level 'user permission' command
    • /priv user perm remove [player] [node] - Removes the node specified from the target player.
    • /priv user perm set [player] [node] [true|false] - Sets the specified node to the value for the target player.
    • /priv user reset [player] - Resets the specified user to the default group and erases any individual permissions.

more commands will be added as I think of them

Permissions

  • privileges.interact (defaults true) - Allows the player to interact with objects like buttons and switches
  • privileges.build (defaults true) - Allows the player to break/place blocks
  • Base commands
    • privileges.reload - /priv reload
    • privileges.save - /priv save
    • privileges.load - /priv load
    • privileges.backup - /priv backup [name]
    • privileges.restore - /priv restore [name]
    • privileges.version - /priv version
    • privileges.debug - /priv debug
  • Administrative
    • privileges.promote - /promote [player]
    • privileges.demote - /demote [player]
    • privileges.check - /pc [player] [node]
    • privileges.list - /priv list [player] [page]
    • privileges.info - /priv info [player]
  • Group base commands
    • privileges.group.create - /pgc [group] [rank]
    • privileges.group.remove - /pgr [group] [--safe]
    • privileges.group.set - /pgs [player] [group]
    • privileges.group.show - /pg show [player]
    • privileges.group.list - /pg list
  • Group permissions commands
    • privileges.group.perm.set - /pgps [group] [node] [true|false]
    • privileges.group.perm.remove - /pgpr [group] [node]
  • User permissions commands
    • privileges.user.perm.remove - /pupr [player] [node]
    • privileges.user.perm.set - /pups [player] [node] [true|false]
    • privileges.user.reset - /pur [player]

Special thanks

  • gravypod - Small performance tweaks and optimizations. Thanks a bunch!
  • Wolvereness - Massive improvement to node registration performance through templating. Keep on keepin' on!

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of mcly mcly Oct 03, 2014 at 01:07 UTC - 0 likes

    I just want a quick notification if this project is abandoned as the Jenkins is down. It would be such a waste to abandon this project. THanks.

    Minecraftly

  • Avatar of mcly mcly Aug 25, 2014 at 19:19 UTC - 0 likes

    How can I negate a permission node? I want to negate -bukkit.command.* so that players can't use /me command

  • Avatar of SXRWahrheit SXRWahrheit Aug 11, 2014 at 22:20 UTC - 0 likes

    @mcly: Go

    Config option for default users.

    http://summaxr.com/newgtop.gif
    I run http://summaxr.com and our Minecraft server at mc.summaxr.com - feel free to visit.

  • Avatar of mcly mcly Aug 06, 2014 at 18:07 UTC - 0 likes

    users.yml usually register players who don't have any permission, which can become thousands of unnecessary registry. Can you fix this?

  • Avatar of mcly mcly Aug 06, 2014 at 17:36 UTC - 0 likes

    Is there any way to not having to type /priv reload after giving player a permission? It's annoying having to do that everytime a permission is given and not very good to use with Buycraft.

  • Avatar of ryvix ryvix Jun 21, 2014 at 19:11 UTC - 0 likes

    @mcly: Go He says "will release an update as soon as it is necessary" http://dev.bukkit.org/bukkit-plugins/privileges/tickets/23-uuid-support/

  • Avatar of mcly mcly Jun 15, 2014 at 03:41 UTC - 0 likes

    It sucks to not knowing if this plugin is still in development for UUID or abandoned, I guess I'll stick with PermissionsEx.

  • Avatar of mcly mcly May 09, 2014 at 06:07 UTC - 1 like

    Is this plugin going to be updated for UUID change?

  • Avatar of beofere beofere Apr 17, 2014 at 16:29 UTC - 0 likes

    Help, i get a "cannot build here" message when i try and break/place a block, here is my group.yml folder;
    groups:
      newcommer:
        rank: 1
        permissions:
        - group.newcommer
        - privileges.check
        - simpleprefix.newcommer
        worlds:
          Buildserver:
          - privileges.build
        data:
          promotion: builder
        inheritance: []
      builder:
        rank: 2
        permissions:
        - group.builder
        - privileges.dump
        - simpleprefix.builder
        - ctl.blue
        worlds:
          Buildserver:
          - privileges.build
        data:
          promotion: trusted
          demotion: newcommer
        inheritance: []
      trusted:
        rank: 3
        permissions:
        - group.trusted
        - privileges.dump
        - simpleprefix.trusted
        - ctl.yellow
        worlds:
          Buildserver:
          - privileges.build
        data:
          promotion: artist
          demotion: builder
        inheritance: []
      artist:
        rank: 4
        permissions:
        - group.artist
        - privileges.dump
        - simpleprefix.artist
        - ctl.green
        worlds:
          Buildserver:
          - privileges.build
        data:
          promotion: artisan
          demotion: trusted
        inheritance: []
      artisan:
        rank: 5
        permissions:
        - group.artisan
        - privileges.dump
        - simpleprefix.artisan
        - ctl.lightpurple
        worlds:
          Buildserver:
          - privileges.build
        data:
          promotion: mod
          demotion: artist
        inheritance: []
      mod:
        rank: 6
        permissions:
        - group.mod
        - privileges.promote
        - simpleprefix.moderator
        - ctl.darkgreen
        worlds:
          Buildserver:
          - privileges.build
        data:
          promotion: admin
          demotion: artisan
        inheritance: []
      admin:
        rank: 7
        permissions:
        - group.admin
        - privileges.promote
        - simpleprefix.admin
        - ctl.gold
        worlds:
          Buildserver:
          - privileges.build
        data:
          promotion: co-owner
          demotion: mod
        inheritance: []
      co-owner:
        rank: 8
        permissions:
        - group.co-owner
        - privileges.self.edit
        - privileges.*
        - simpleprefix.co-owner
        - ctl.aqua
        worlds:
          Buildserver:
          - privileges.build
        data:
          promotion: owner
          demotion: admin
        inheritance: []
      owner:
        rank: 9
        permissions:
        - group.owner
        - privileges.self.edit
        - privileges.*
        - simpleprefix.owner
        - ctl.darkred
        data:
          demotion: co-owner
        inheritance: []
    I have the - privileges.build in the world... what did I do wrong?

    Last edited Apr 17, 2014 by beofere
  • Avatar of TheDedOne TheDedOne Apr 10, 2014 at 06:46 UTC - 0 likes

    Is it possible to promote and demote players with command blocks using @p(closest player)?

    Edit: Also, is there a permission node for commandblocks?

    Last edited Apr 10, 2014 by TheDedOne

Facts

Date created
Aug 25, 2011
Categories
Last update
Aug 10, 2013
Development stage
Release
License
MIT License
Curse link
Privileges
Downloads
12,354
Recent files

Authors