Inactive [ADMN/DEV] PermissionsEx (PEX) v1.19.5 - Tomorrow is Today! [1.4.6-R0.1]

Discussion in 'Inactive/Unsupported Plugins' started by t3hk0d3, May 21, 2011.

     
  1. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    [IMG]
    Version: 1.19.5

    PLEASE USE BUKKIT-DEV FORUM FOR DISCUSSION/HELP
    http://dev.bukkit.org/server-mods/permissionsex/
    THANKS IN ADVANCE.

    PermissionsEx (PEX) is a new permissions plugin, based on Permissions ideas and supports all of its features. But PEX is more! It offers different backends, powerful ingame management, fine grained restrictions for world modification.

    [IMG]

    Current features
    1. Bukkit Permissions (SuperPerms) compatible.
    2. Several backend support. Currently bundled backends is File (YAML) and SQL (MySQL, SQLite). Also it's possible to add your own.
    3. YAML backend, with new, fully rethinked, config schema. Now all user, groups and their permissions are stored in one file - permission.yml. BTW file name is adjustable too.
    4. SQL backend, most delicious. Currently MySQL and SQLite supported, but other DB (like Postgre) are possible too. PEX deploys the DB scheme (tables and initial data) automatically. This means, that you only need to provide data on how to connect to the db, everything else PEX will handle by itself.
    5. Flexible architecture and API - you can change a lot programmatically.
    6. Compatibility layer with TheYeti's Permissions (2.7.4) (as a separate part of the plugin). In most cases plugins, which use Permissions, will alsowork with PEX also.
    7. Rich chat/console command interface. You can do almost everything ingame. Command list below.
    8. Modifyworld - Embedded restrictions mechanism (we call it "modifyworld"), which provides the possibility to control players abilities, such as destroying/placing blocks, riding carts/boats or even getting spotted by mobs and much more. Disabled by default.
    9. Multigroup inheritance. User, as well as Group, can be member of several groups. And inherit their permissions, options and prefix/suffix.
    10. Permissions based upon Regular Expressions. This mean you can use regular expressions. Example: modifyworld.blocks.(destroy|place).(3|12) - this permission allow place or destroy only sand (12) or dirt (3) blocks. There is still limitation on dot usage in your regexps - dots are escaped by default.
    11. Multiworld permissions. Just don't specify world and permission would work in any world.
    12. Multiworld inheritance. You can inherit different groups in different worlds.
    13. Easy migration from Permissions 2.x. Converter for both YAML and SQL are embedded into PermissionsCompat. Just use simple instruction.
    14. Perfomance friendly. Low-level caching helps alot when you have 100+ online users :)
    15. Promotional/Demotional system. You can assign ranks to groups and promote/demote users to higher/lower ranked group.
    16. World-inheritance - permissions/option of one world can be inherited by another world.
    17. Timed Permissions - you can give user permission only for some amount of time.
    18. Chat Manager - small chat plugin, bundled with PEX. With prefixes/suffiex and colors. Check wiki for more details.


    Documentation
    Wiki

    Basic setup tutorial (Thanks to @lycano)

    Nice tutorial made by Bennetman


    Download
    Stable version

    Development version (mostly stable) - always lastest dev build.

    Sources
    https://github.com/PEXPlugins

    Builds
    http://webbukkit.org:8080/

    Maven Repository
    http://repo.tehkode.ru/browse/ru.tehkode

    IRC
    Join us on #permissionsex, irc.esper.net. Feel free to ask any related questions.

    Tools !NEW!
    Pex Auto-Setup Tool - MySQL and FlatFile !


    Changelog
    v1.19.5
    Proper intervals for timed commands (both group/permissions management), without pesky seconds calculations (like /pex user t3hk0d3 timed add cool.permission 10days)
    Bugfixes.
    1.4.6 compatibility.


    v1.19.4
    Built for Bukkit 1.4.2-R0.1
    Added inventory permissions (modifyworld.items.put/take.<item>.of.<chest>)
    Added item hold permission (modifyworld.items.hold.<item>)
    Sdded monster egg spawn permission (modifyworld.spawn.<creature>)
    Few other minor fixes
    v.1.19.3
    Modifyworld improvements (configurable messages, now independent from PEX)
    /pex help command
    Minor improvements and bugfixes
    v.1.19.2
    New modifyworld permissions
    Some bugfixes
    v.1.19.1
    Bugfix release
    v1.19
    Bukkit R6 compatible.
    Several bugfixes!
    Permissions now case-insensetive.
    v1.18
    Users logging and cleanup feature.
    Non-inheriting nodes feature.
    Several Bugfixes.
    PermissionsCompat is finally remove from default bundle.
    v1.17
    User/group specific management permissions (permissions.manage.group.Admin)
    Fixed some superperms compatibility issues
    Fixed several bugs
    v1.16
    SuperPerms compatbility bridge were rewritten - no lags anymore and now with debug output (now you can view superperms checks).
    Numerous of bugs were fixed (Thanks you guys for reporting them)
    Modifyworld were improved (modifyworld.item.use)
    v1.15
    Compatiblity for 1317+
    Fixed perfomance issues with SuperPerms (if you still experience they try to disable "raw-permissions" in config.yml)
    Fixed issue with prefix inheritance
    v1.14
    Improved Options mechanism.
    Auto saving new users feature, disabled by default.
    SuperPerms bridge improved - more permissions supported by wildcards.
    File backend dumping now fully functional. SQL dumping is still bogus (do not dump world-specific inheritance and prefixes), will be fixed soon.
    Many bugfixes and minor improvements.
    v1.13
    Superperms (BukkitPerms) support
    Multiworld inheritance and prefixes/suffixes
    Groups weighting
    ChatManager, chat plugin which bundled with PEX.
    Modifyworld now separate plugin, but still bundled with PEX.
    API changed slightly, CustomEvents (PermissionsEntityEvent, PermissionsSystemEvent) introduced.
    Many lesser improvements and tons of bugfixes.
    v1.12
    API get slightly improved
    Ranking ladders.
    User/group name case-insensetivity.
    World-inheritance.
    Timed permissions.
    Modifyworld rules are get improved.
    Tons of minor improvements and bugfixes.
    v1.11
    Many bugfixes and improvements.
    MySQL connection stability improved - reconnection mechanism.
    v1.10
    Promotional/Demotional system.
    Perfomance improvement, with new low-level caching system (thx @Joy)
    Modifyworld improved.
    Many lesser improvements and bugfixes.
    v1.06
    New p2compat backend, for easy migration from Permissions 2.x to PEX.
    v1.05
    Users/Groups dumping (pex dump <backend> <file>).
    New commands pex promote/demote. Actually this is just aliases for "pex user group set/remove"
    Few bugfixes.
    v1.04
    Players now can be informed about changes (has been added to group, changed permission/option). Disabled by default - set "permissions.informplayers.changes" to "true"
    Config node "permissions.verbose", which responsible for player informing about modifyworld restrictions has been renamed to "permissions.infromplayers.modifyworld".
    Autocomplete has been improved.
    New command "pex config <node> [value]". This command help to manipulate configuration file (config.yml) from console/chat interface.
    Many bugfixes.
    v1.03
    Autocomplete for users (taken from registred users and online users) and groups names.
    New command for user removing (pex user <user> delete)
    Fixed several nasty bugs. Thanks for bugreports!
    v1.02
    Compatibility layer loading order issue fixed. Now most of plugins should work.
    Tested with new CB 803 build.
    v1.01
    Regular expression permissions support.
    Newer permissions now added above (bugfix).
    Several bugfixes.
    v1.00
    Initial public release.

    This post has been edited 103 times. It was last edited by t3hk0d3 Dec 24, 2012.
    BRampersad, grid21, MrRazull and 71 others like this.
  2.  
  3. Offline

    XxRayRayxX

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    When will chat manager be compatible with 1.0.1?
  4. Offline

    AMinecraftplayer

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    So you mean that you just make one text file like you´re up here and copy and paste in the console ?
  5. Offline

    Stormbow

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Right now. :)
  6. Offline

    Pomme72

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  7. Offline

    XxRayRayxX

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Really when i put it in my plugins folder and restart my server...then type /plugins chat manager is red instead of green...and is disabled?
  8. Offline

    DrDewman

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Hello.

    I'm having an issue with our permissions. We have it set so guests aren't allowed to build/destroy anything except in a certain world. However, the permissions is failing and allowing guests to build in a world not mentioned in the permissions. Here's the guest perms:

    Code:
    groups:
        Guest:
            default: true
            permissions:
            - essentials.who
            - essentials.list
            - essentials.motd
            - essentials.rules
            - stargate.use
            - essentials.help
            - modifyworld.chat
            - modifyworld.sprint
            - modifyworld.sneak
            options:
                rank: '1000'
            worlds:
                Kalador:
                    permissions:
                    - towny.wild.*
                    - modifyworld.*
            prefix: '&7Guest '
    
    CB Build 1597 1.0.1.
    PEX Version 1.16.

    I tested it again after posting this, and guests could break logs and clay but couldn't break glass, gravel, or dirt/grass. I have no idea what's wrong.

    This post has been edited 2 times. It was last edited by DrDewman Dec 22, 2011.
  9. Offline

    Stormbow

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Per normal "help me" request procedure, post your permissions and config files in code tags.

    It's working fine for me in RB 1.0.1.

    Plugin is green (click):
    [IMG]

    Plugin in effect (click):
    [IMG]

    See also, my post below.

    This post has been edited 9 times. It was last edited by Stormbow Dec 22, 2011.
  10. Offline

    Spiritwind

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Ok, got the pex config set up for mysql.
    However, when trying to run a command with it ingame it says internal error.

    Viewing the logs shows this.

    http://pastie.org/3055033

    Any help would be awesome!
    I'm also in the Permissionsex irc channel if you are able to assist there.

    Edit - Sorry forgot to include my config. Here it is :p.
    http://pastie.org/3055065

    This post has been edited 1 time. It was last edited by Spiritwind Dec 22, 2011.
  11. Offline

    Stormbow

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Make sure you have the ChatManager config.yml set to "enable: true". I think it's false by default.
  12. Offline

    Justin The Cynical

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Easy fix, as far as the config file goes. :)
    Code:
    uri: mysqlus2.fragnet.net/1728_clientdb
    This needs to be:
    Code:
    uri: mysql://mysqlus2.fragnet.net/1728_clientdb
    For reference, http://github.com/t3hk0d3/PermissionsEx/wiki/Plugin-Configuration
    SQL backend configuration section, MySQL example.

    This post has been edited 1 time. It was last edited by Justin The Cynical Dec 22, 2011.
    Stormbow likes this.
  13. Offline

    Justin The Cynical

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Please don't bump a post like this. As you can see by the lack of a quote above, it breaks the quoting. Now, as for your questions:
    • pomme72 can chat
    Using your permissions you listed, I am unable to reproduce this one (I can't chat)
    • pomme72 can use stone pickaxe (274)
    Looking at the debug output, I see where the wiki is incorrect (I've also fixed it:)). The node you want to use is modifyworld.item.use.<itemid>.on.block.<blockid>, where <itemid> would be the item you want to limit (274 in this case) and <blockid> can be whatever you want. If you wanted to limit a player from using the stone pickaxe on everything, you would use * to cover every item in the game.
    • pomme72 can pick up pig-food (319)
    This one is an error in your permissions file. The node you want to use is modifyworld.items.pickup. You have modifyworld.item.pickup (note the lack of an S).
    Stormbow likes this.
  14. Offline

    Justin The Cynical

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Hey, can I make a suggestion to make that list a bit smaller?:)

    Regex-based permission nodes to the rescue! (You will love this).

    With a regex-style line, everything with a pair of parentheses ( ) are considered as part of the node. A pipe | is an and/or, and a dash - is an iteration.

    So take just your pickup nodes:
    Code:
            - -modifyworld.items.pickup.276
            - -modifyworld.items.pickup.277
            - -modifyworld.items.pickup.278
            - -modifyworld.items.pickup.279
            - -modifyworld.items.pickup.283
            - -modifyworld.items.pickup.284
            - -modifyworld.items.pickup.285
            - -modifyworld.items.pickup.286
            - -modifyworld.items.pickup.293
            - -modifyworld.items.pickup.294
            - -modifyworld.items.pickup.310
            - -modifyworld.items.pickup.311
            - -modifyworld.items.pickup.312
            - -modifyworld.items.pickup.313
            - -modifyworld.items.pickup.314
            - -modifyworld.items.pickup.315
            - -modifyworld.items.pickup.316
            - -modifyworld.items.pickup.317
    And reduce the 18 lines here to this one line:
    Code:
            - -modifyworld.items.pickup.(276-279|238-286|293-294|310-317)
    This checks for items 276-279 and/or 238-286, and/or 293-294 and/or 310-317. Repeat as necessary for the have and use nodes. Test before committing to production, of course.;)

    There could be a line/item length limit that I'm not aware of, but I'm 99% sure that will work for you.:)

    This post has been edited 1 time. It was last edited by Justin The Cynical Dec 22, 2011.
    Stormbow likes this.
  15. Offline

    packetshepherd

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    That is exactly right.
  16. Offline

    Stormbow

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    [IMG]
    Trying that right now! Thanks!

    283-286!


    And it works! Fantastic!! Thank you!

    This post has been edited 4 times. It was last edited by Stormbow Dec 22, 2011.
    Justin The Cynical likes this.
  17. Offline

    Remi_Scarlet

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    http://pastebin.com/NiGYTETy

    Prefix no work D:

    Also, in the world "Survival World," even though I'm admin and my permission should allow me to, I can't set spawn. there's a test class right under admin called pureadmin with access to everything in all worlds and I can set spawn with that, so I'm guessing the conflict comes from my initial
    - -commandbook.*

    which I try overriding with

    - commandbook.setspawn

    can I not override things? (I'm trying to make survival world as "survival" as possible. Even for admins.)
  18. Offline

    Justin The Cynical

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Put the allow nodes before the mass deny node. PEX works from a top-down viewpoint with the file backend. First node it finds that matches a permission check is the one it goes with. In the case of your linked permissions file, it finds the -commandbook.* node before it finds the commandbook.setspawn node, thereby denying the access.

    The prefixes, I don't know for sure. What chat manager are you using? If it's chatmanager that comes in the PEX archive, make sure it's enabled in it's config file (by default it doesn't turn itself on).
  19. Offline

    desht

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    So, what setting or combination of settings do I need to allow superperms parent permission nodes to be correctly handled? I have this config.yml:

    Code:
    permissions:
        backends:
            file:
                file: permissions.yml
        backend: file
        basedir: plugins/PermissionsEx
        createUserRecords: false
        debug: false
        allowOps: false
        superperms:
            disable-unmatched: false
            enable: true
            matched-permissions: true
            debug: true
            raw-permissions: true
            strict-mode: false
            parent-nodes: true
    
    This is the relevant part from my plugin's plugin.yml:

    Code:
    permissions:
      scrollingmenusign.guest:
        description: Gives access to very basic SMS functionality (no permission elevation)
        children:
          scrollingmenusign.scroll: true
          scrollingmenusign.execute: true
          scrollingmenusign.execute.elevated: false
          scrollingmenusign.use.sign: true
          scrollingmenusign.use.redstone: true
      scrollingmenusign.user:
        description: Gives access to basic SMS functionality
        children:
          scrollingmenusign.guest: true
          scrollingmenusign.execute.elevated: true
      scrollingmenusign.scroll:
        description: Allows menus to be scrolled
        default: true
      scrollingmenusign.execute:
        description: Allows menu items to be executed
        default: true
      scrollingmenusign.execute.elevated:
        description: Allow execution of menu items which bypass permissions checks
        default: true
    
    And here's the relevant part from my permissions.yml:

    Code:
    users:
        desht:
            group:
            - Default
            worlds:
                world: {}
    groups:
        Default:
            default: true
            prefix: '&d'
            permissions:
            - scrollingmenusign.user
    
    But when my plugin tests for 'scrollingmenusign.use.sign' (or any of the other child nodes of 'scrollingmenusign.guest', it's coming back false.

    I've tried various combinations of the settings under permissions.superperms. with no success. I'm using PEX 1.17 (via Vault 1.19).

    This post has been edited 1 time. It was last edited by desht Dec 22, 2011.
  20. Offline

    Madsens

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Hi!
    Perfect plugin! Really just what i needed!
    I do have a request though. Is it possible to make it so that if someone have only joined 1 group and that group is not in the default ladder, i would not have to remember the ladder when demoting and premoting? so that "pex premote <user> would be enough if only in 1 group? Thx! :D
  21. Offline

    iNubb

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I asked this a week or so ago, but i'm still confused. How do I make it where my group called "newby" cannot build until I rank them up to a "member"? I want to put my server on a server list but i'm worried about the kids coming in and tearing everything up, so I want it where Newbys cannot place/destroy blocks, and cant use buckets. Thank you very much, sorry about having to ask again.
  22. Offline

    Madsens

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Hi iNubb.
    What i did (using MySQL) was to give the default group no other permissions than "/list" and chat.
    And then i created a group called "user" with modifying permissions.
    And then i gave the "default" a very high rank, and the "user" a lower rank (like in the tutorial examples), so that when i premote the "default" user, it will become "user".
    I then used inheritance so that the "user" group would also get the "default" permissions.

    So i gave these permissions to the "default" group:
    modifyworld.chat (so they can use the chat)
    bukkit.command.list (so they can use the /list command)

    and then i gave the "user" group these:
    modifyworld.* (So they can edit the world. Placing and removing blocks)
    bukkit.command.tell (so they can use the /tell command)

    Ranking command:
    /pex group default set rank 1000
    /pex group member set rank 900

    Adding permissions to group:
    /pex group default remove modifyworld.* (first remove building rights from default group)
    /pex group default add modifyworld.chat (adding chat permissions to default group)
    ... And so on...

    And at last. The inheritance command:
    /pex group member create default

    Hope this helps you! :) (I did this yesterday.. Thats why its fresh in my memory. ;D )

    This post has been edited 1 time. It was last edited by Madsens Dec 23, 2011.
  23. Offline

    Ulthranesh

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    does someone know a solution with my problem that my moderators cant promote?

    if you need permissions and debug-log loock at my previous post at page 145 #4334

    They are able to use /pex but not /pex user group add

    This post has been edited 3 times. It was last edited by Ulthranesh Dec 22, 2011.
  24. Offline

    XxRayRayxX

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    What exactly does modify world and permissions do?

    i just use chat mangaer and permissionsEX
  25. Offline

    Mr. X

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    How can i Diasable TNT for a Group with Modifyworld?
  26. Offline

    batel018

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    When i try the in game commands it says internal error what should it do?
  27. Offline

    Remi_Scarlet

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Well I'm a derp. I forgot to enable chatmanager.

    The permissions worked beautifully as well. Thanks a million!
  28. Offline

    Stormbow

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Give them
    at the top of their permissions list.
  29. Offline

    Stormbow

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Modifyworld features can be found HERE. Note the "Next:" links at the bottom of each page. Those links will walk you through installation, configuration, and permissions.

    Permissions are what you allow (or disallow) players (Visitors, Members, Mods, Admins, and even your own character) to do on your server.

    This post has been edited 2 times. It was last edited by Stormbow Dec 22, 2011.
  30. Offline

    Stormbow

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    You can read all about disabling TNT HERE. You can stop them from destroying, placing, interacting with, picking up, dropping, having, and using TNT.

    This post has been edited 1 time. It was last edited by Stormbow Dec 22, 2011.
  31. Offline

    Stormbow

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Post your config.yml, permissions.yml, and any error messages inside CODE tags.
    (It's the { }# button above where ya type here.)

    Once you do that, someone can take a look and try to figure out what's wrong.
  32. Offline

    iNubb

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    So I would put in the command "pex group Newby add --permissions.build"? Thats the only permission for Newbys, so it would be at the top of their list.

Share This Page