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


    Version: 1.19.5


    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.


    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.


    Basic setup tutorial (Thanks to lycano)

    Nice tutorial made by Bennetman

    Stable version

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



    Maven Repository

    Join us on #permissionsex, Feel free to ask any related questions.

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

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

    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
    Modifyworld improvements (configurable messages, now independent from PEX)
    /pex help command
    Minor improvements and bugfixes
    New modifyworld permissions
    Some bugfixes
    Bugfix release
    Bukkit R6 compatible.
    Several bugfixes!
    Permissions now case-insensetive.
    Users logging and cleanup feature.
    Non-inheriting nodes feature.
    Several Bugfixes.
    PermissionsCompat is finally remove from default bundle.
    User/group specific management permissions (
    Fixed some superperms compatibility issues
    Fixed several bugs
    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)
    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
    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.
    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.
    API get slightly improved
    Ranking ladders.
    User/group name case-insensetivity.
    Timed permissions.
    Modifyworld rules are get improved.
    Tons of minor improvements and bugfixes.
    Many bugfixes and improvements.
    MySQL connection stability improved - reconnection mechanism.
    Promotional/Demotional system.
    Perfomance improvement, with new low-level caching system (thx Joy)
    Modifyworld improved.
    Many lesser improvements and bugfixes.
    New p2compat backend, for easy migration from Permissions 2.x to PEX.
    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.
    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.
    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!
    Compatibility layer loading order issue fixed. Now most of plugins should work.
    Tested with new CB 803 build.
    Regular expression permissions support.
    Newer permissions now added above (bugfix).
    Several bugfixes.
    Initial public release.
    BRampersad, grid21, MrRazull and 71 others like this.
  2. Offline


    lol wh
    lol wut? Sorry for the capslock?

    It works FINE with #996.
  3. Offline


    driver: sqlite
    password: databasepassword
    user: databaseuser
    uri: mysql://localhost/exampledb
    file: permissions.yml
    directory: plugins/Permissions/
    backend: file
    debug: false
    basedir: plugins\PermissionsEx
    how do I enable in here?
  4. Offline


    i dont think i can get prefixes to work for some reason...
  5. Tried it. Removed it.
    Doesnt do anything.
  6. Offline


    I also cant get prefixes to work, no errors or anything.
  7. Finally got round to putting this on my public server today. Works perfectly.
    Pex > Death > Permissions
    Thanks Pex team <3
    CB996 as well, just saying :p
  8. Offline


    It works, you need another plugin for chat colors.
  9. Offline


    How can i do anything? every i got is You Lack the Permissions. And when i take New version off permission i don't get. you are free from PvP and Mobs in save zone, and ~Wildenress or smth like that!
  10. Offline


    Build 1000? :D Good luck sir! I wish I could donate.
    I know bukkit has permissions now, but they really don't work the way your SQL does, I really like the way it works, if you could keep going it would mean the world to me. Thank you so much for your time.
  11. Offline


    Can you specify permissions for promotion ladders?

    Like: 'permissions.users.promote.[ladder]'

    If not, could this be added? I'd really appreciate it.
  12. Offline


    alright, i've got PEX setup using flatfile all fine now, running great. love it. I want to switch to mysql, how do I go from PEX flatfile to PEX mysql?
    if I add the SQL backend info in the config and restart will it automatically add the permissions to the sql tables? the wiki says it just creates the default tables or something.
  13. Offline


  14. Offline


    ok ive read everything on the wiki ive done everything there but only op's can build and prefix arn't working beside of that everythings good i love your plugin seems great any idea why it isn't working
  15. Offline



    After having taken a look at "the Official Default Groups Plugin",yours is still much more advanced, so I hope you will continue development on PermissionsEx and integrate it with Bukkits built in permission system.

    One thing I look forward to is group weighing.

    Another thing, I think it would be a good idea to split this plugin into three:

    1) PermissionEx
    2) Modifyworld
    3) The chat thing you are working on
    Oscarius likes this.
  16. Offline


    When I first installed this, I too could not create anything in the world.
    Also I could not perform the console PEX command to create an Admin group as my server is "console-less" (running MineOS+).
    To get things working I manually edited the permissions.yml file and added
    - '*'
    To the default group, then restarted my server.
    This essentially gave ADMIN powers to the default, ie EVERYONE.
    I could then perform all the PEX commands as outlined in the basic setup on the Wiki, and promoted myself to the Admin group. I then removed - '*' from the default group and did a /PEX RELOAD.
    From here on I just followed the Wiki examples and all seemed to work fine. No need for OPS unless you wanted the /give command. Though I'll assume there is a PEX command for this, just I don't know it.

    Wondering if the developer should make the default permission file it creates on instalation, to include FULL permissions for the default group, as this would make it a lot easier for users to start off and get things configured. Just make it clear on the Wiki that you need to remove this permission once things are setup. Just a thought!!!!!
  17. Offline


    Thank you, im already working on this.

    Already done in development version :)

    It's already done :) Sorry there is complete mess with documentation after 1.12 release.
    We planning to fix this flaw up to 1.20 release, by rewriting documentation completely.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 15, 2016
    1hacker likes this.
  18. Offline


    Maybe someone can upload a full version, without any "You lack permissions ...." ver 1.7.3
  19. Offline


    +1 for updating the wiki. I thought I had everything setup properly today until a mod emailed me and told me they couldn't promote people. OH NO!

    Found it here in one of the spoiler pages. It's hard to RTFM when the manual is so far behind. My wiki is nowhere near complete or updated either though so I understand.
  20. Offline


    For the life of me I can't make my Admin group impervious to monsters.

    Here's my config.yml

                file: permissions.yml
        backend: file
        basedir: plugins/PermissionsEx
            enable: true
            itemRestrictions: true
            modifyworld: true
            changes: true
    NOTE in the above, I set itemRestrictions: true, after failing to stop mobs from attacking Admin, as I though it might need to be set to true for it to work.

    Here my permissions.yml
    In particular the Admin group where I am trying to negate
    - -modifyworld.entity.mobtarget.*
    - -modifyworld.entity.damage.take.*
    Is this how it is done?????
    Is there an order, ie set All permissions with - '*', then negate, or some other technique??
    Note the two Admin users are also set as OPs in the OP.txt file so they can use the /give command. Can /give be restricted/given in PEX???

            default: true
                rank: '1000'
            prefix: '&0(&8M&7ember&0)&7 '
                rank: '900'
            default: false
            - modifyworld.*
            prefix: '&0(&eVIP&0)&7 '
                rank: '800'
            default: false
            - stargate.destroy.owner
            - stargate.create
            - stargate.use
            - modifyworld.*
            prefix: '&0(&1Moderator&0)&7 '
                rank: '100'
            - -modifyworld.entity.mobtarget.*
            - modifyworld.*
            - '*'
            - -modifyworld.entity.mobtarget.*
            - -modifyworld.entity.damage.take.*
                rank: '50'
            prefix: '&4[Admin]&5'
            - Admin
            - Admin

    Lastly, like others, I cannot get PREFIX to work.
    I've tried the Wiki format such as '&0(&1Moderator&0)&7 '
    also I tried this '&4[Admin]&5'.

    I'm assuming the prefixes show up in the normal CHAT, ie T in multiplayer???
  21. Offline



            - -modifyworld.entity.mobtarget.*
            - -modifyworld.entity.damage.take.*
            - '*'
    Prefix needs a chat plugin, t3hk0d3 is working on one. In the meantime, use iChat or one of the others out there
    big_hairy_jimbo likes this.
  22. Offline


    You're a CHAMP!!!!

    Of course it would be the combination I hadn't tried!!! :)

    Worked like a charm. Mobs totally ignore Admin(s) now.

    Thank you VERY MUCH!!!! :)

    P.S. No probs on the chat. I'll wait for the plugin. Seeing that PEX is pretty bloody good (once you learn how to use it, NOTE this is my first implemented permissions plugin after researching all available), I may as well try his chat plugin once released!!!!


    Love your permissions plugin.

    Is it possible for you to add the OPs CHAT commands to PEX, such as the GIVE command available only to OPS.
    An example node would be

    - modifyworld.give

    This way, I can get rid of OPs completely, and solely use PEX.

    Mind you after thinking about it, perhaps using PEX to enable GIVE without OPs permission, would then make plugins such as Scrollablesigns (where you can set macros to yield multiple GIVE commands without typing) unable to use GIVE, as it's an OP only command??? Thoughts???

    NEVER MIND on the PEX GIVE command as I found a plugin which gives items and supports permissions.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 15, 2016
    1hacker likes this.
  23. Offline


    Can groups be in more then one ladder, for example:
    rank: '1000'
    rank-ladder: '*'
    My world is setup into nations,each with it's own ladder, so could I promote the default, ranked 1000, into a ladr where the next rank is 900? If not, then could you add multi-ladder support?
  24. Offline


    Multi-ladder is in progress.
  25. Offline


    Oh, fantastic! Any estimate on when that will be ready? It's extremely important to my server.
  26. Offline


    Interesting, might try this out later.
  27. Offline


    Hi! I've been studying the wiki on how to set everything up, but I'm still a bit confused about how to do something - If someone could nudge me in the right direction, that'd be tops!

    I have two worlds, world1 and world2. I have a player who is in the group Citizen in world1, but once they enter world2, they use the permissions of the Visitor group instead (which restricts placing/destroying blocks, but keeps all other permissions that Citizen has).
    What I'm trying to get my head around is a way to do this.

    At the moment, I have Visitor inheriting from Citizen, but with:
    - -modifyworld.blocks.destroy.*
    - -modifyworld.blocks.destroy.*
    - -modifyworld.bucket.empty.*
    - -modifyworld.bucket.fill.*

    Am I going about this the wrong way?
    I don't really know how i'm going to make the player switch to Visitor once in world2 ...

    Any insight anyone could give would be really appreciated, because I'm confused! :) I'd rather not go through and block the placing and destroying and bucket-ing per player, there's just got to be a way to do this - I must be missing the obvious. I'm using sql storage, if that's of any relevance.
  28. Offline



    Instead of making two groups, you can make world2 specific permissions for the group Citizen.

    pex group Citizen add -modifyworld.blocks.destroy.* world2
  29. Offline


    Thanks for the response. I thought about doing this, but the problem is that I have other Citizens that need to be able to build/destroy on world2.

    After a little time and thought, I'm thinking about adding people who are to be Visitors to world2 to both the Citizen and Visitors group, with the restrictions in Visitors goup: - -modifyworld.blocks.destroy.* and so forth being world specific to world2.

    My goal here is to have everyone be a Citizen with a select few able to build and destroy on world2. And using a chat plugin, I would like the prefixes of the people with restrictions in world2 to show 'Citizen' when in world1, and 'Visitor' when in world2. I'm not sure which group prefix will take precedence when a restricted Citizen/Visitor goes in to world2.
  30. Offline



    Afaik you can't have world specific prefix'es, but it's a good idea.

    Precedence is sort of random, probably based on sort order in the db, but group weight should be coming soon.

    A temporary solution could be 2 groups: Citizen and VIP-Citizen, but that wouldn't solve your prefix problem :-P

Share This Page