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


    Thanks. =D
  3. Offline


    Ah, guess the wiki is outdated. Anyways, the following option should be in your config.yml:
            enable: false
    Just change false to true, there are a few other setting under superperms but I haven't played around with those yet.

    Edit: Didn't see you edited your post. Bukkit's permission.yml doesn't need anything in it. Think of PEX's superperm support as plug n' play.
  4. Offline


    Can someone quickly tell my why I should use this over BukkitPerms? Isnt PEX just another *external* plugin thats prone to dev leavage and such, like the many other plugins before it? Wouldnt BukkitPerms as the one *official* plugin be the right way to go?

    Am just confused, would like to give this a go as it's feature rich, but I dont want to switch yet again in a month.
  5. okay like that! thx!
  6. Offline


    Well still having the problem... Ingame, the "*" permission is above the "-modify..." permission. In my Database the "-modify..." permission has a lower id. Another thing: the permission swap doens't work. the "-modify..." permission always has the lower id.

    Maybe there is a bug in the SQL syntax, when the plugin fetches the permissions?
  7. Offline


    Hey Could you maby make a youtube video aboute how to use this plugin it could be great and help alot of peopels
  8. Offline

    Lunar Delta

    BukkitPerms is a *plugin*, one that can be just as easily abandoned as any other. "SuperPerms" is the permissions functionality that are built-in to the Bukkit API. But you still need a plugin to manage and implement them.

    BukkitPerms and PEX are both SuperPerms 'management' plugins. PEX is just the more full featured (and probably easier to use) of the two.
  9. Offline


  10. Offline


    Yes, but it wont work :)

    SuperPerms are enable by default :)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Sep 9, 2018
    meiamone, Thomas Carlsen and Jeyge like this.
  11. Offline


    Thank you for the answer - that helps!

    What I still dont really get is: BukkitPerms has nodes as

    node.node.node: true
    node.node2.node2: false
    which is exactly how SuperPerms reads permissions: true/false.

    Now when I switch from BukkitPerms to PEX, I suddenly loose all my true/false nodes again? How do I add plugins that are only compatible with BukkitPerms? How do I add plugins that are only compatbile with permissions 2/3? Do I need to add a bridge for both?

    I really love the features of PEX, but it makes me wonder way too much about things...
  12. Offline


    you are comletely right good sir

    paste it to or use code tag

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Sep 9, 2018
    erickingsr likes this.
  13. Offline


    Last edited by a moderator: Sep 9, 2018
  14. Offline


    @t3hk0d3 I got an error message while stopping the server:

    2011-08-25 17:15:05 [SEVERE] Could not pass event PLUGIN_DISABLE to PermissionsEx
    java.lang.IllegalArgumentException: Plugin PermissionsEx v1.13 is disabled
        at org.bukkit.permissions.PermissibleBase.addAttachment(
        at org.bukkit.craftbukkit.entity.CraftHumanEntity.addAttachment(
        at ru.tehkode.permissions.bukkit.BukkitPermissions.updatePermissions(
        at ru.tehkode.permissions.bukkit.BukkitPermissions.updatePermissions(
        at ru.tehkode.permissions.bukkit.BukkitPermissions.updateAllPlayers(
        at ru.tehkode.permissions.bukkit.BukkitPermissions$BukkitEvents.onPluginDisable(
        at org.bukkit.plugin.RegisteredListener.callEvent(
        at org.bukkit.plugin.SimplePluginManager.callEvent(
        at org.bukkit.plugin.SimplePluginManager.disablePlugin(
        at org.bukkit.plugin.SimplePluginManager.disablePlugins(
        at org.bukkit.craftbukkit.CraftServer.disablePlugins(
        at net.minecraft.server.MinecraftServer.stop(
  15. Offline


    Thank you for bugreport. Fixed in lastest development version.
  16. Offline


    Ah yeah, forgot I changed that setting haha.

    You just add all the nodes like you normally would with the old Permissions plugin. As for the superperms, On my test server I don't have any true/false I just simply have the node and it works flawlessly.
  17. Offline


    Yes. I actually managed to fix it. Things work perfectly and I no longer have to pull an all-nighter trying to make sense of text while exhausted.
  18. Offline


    How do I update to this from permissions 3?
  19. Offline


    Last edited by a moderator: Sep 9, 2018
  20. I think there is a problem with: modifyworld.items.have.<itemid>
    Wiki tells: Player can held <itemid> in hand...
    That's clear, but when i choose an item and want to wield it in quickbar, every item of this type will disappear vrom inventory. I tried it with 277 (Diamond Shovel), had 4 of them in my inventory, took 1 into quickbar and selected it and *woosh* all 4 Shovel were deleted.
    Bug or Feature?
    If the Wiki is right, it's a bug. If it's a feature, the wiki is wrong :)
  21. Offline


    I had trouble understanding this - which is why I came here for additional help. Excuse my 'noobness' but I don;t know how to downgrade to permissions 2 as I never thought that'd ever be necessary, some more detailed steps would be much appreciated.
  22. Offline


    Eagerly awaiting @t3hk0d3 to come online to solve my issue
  23. It's pretty easy.
    Just copy&paste the content of your "groups.yml" and "users.yml" into a file called "world.yml" (world is the name of your map). Everything else is well explained in the wiki. Just type the 3 commands inside your console.
  24. Offline


    You might find this helpful:
  25. Offline


    oops, fail on my part, I listened too much to a collegue of mine who somehow was convinced it wasn't included. :p

    Chat, é á à ï ü Ã Ø etc. Really makes your non-english european users happy.

    Huge fail on permissions side, impossible to gasp (for simple server owners and users) why they changed the system in the first place...

    Another fail for my plugin search skills...

    Sorry to have bothered you with with 2 out of 4 questions being of the time-wasting type.

    There is one little remark left... is there any particular technical reason to put everything in one file? I really liked having groups and users in seperate files...


    PS, google translate couldn't make anything meaningful of that cyrillic part :D,
    PPS, I completely fail to find ANYTHING remotely similar to the roles plugin... only a load of plugins that each offer their own jobs/class system, while roles lets me make my own classes by adding permissions form any plugin. Care to give me a hint?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Sep 9, 2018
  26. Offline


  27. Offline


    Chat Manager doesnt do anything with encoding, at least i believe so. Anyway, will check. Печалька!

    This will be changed in 1.14 :)
  28. Offline


    @t3hk0d3 Would you mind looking in my problems with SQL based negative permissions? Since I'm not the only one having this problem...
  29. Offline


    I'm receiving this after copying each command into the console.
  30. I'm trying to switch from Permissions 3.x to this, but I'm having a really hard time trying to work out how to manage multiple worlds.

    I have 5 worlds, each having different groups (Though some groups are named the same but provide different permissions) and each user in a different group in each world. When converting Permissions to this it seems that all of the groups are global and users are only in a single group.

    I could really do with some help/guidance on how the multi-world support works with this plugin. It looks to be a much more efficient and easy to use plugin than Permissions, I just can't figure out how to manage multiple worlds properly and until I can I cannot switch to PEX.

    EDIT: Also, I get this error if I put all of my different world's user/groups into their own worlds.yml (e.g. world.yml, world1.yml, world2.yml) and then try to use the migration commands (happens once I do the pex dump file permissions.yml command).

    22:48:21 [INFO] Error: null
    22:48:21 [SEVERE] Error: null
    22:48:21 [SEVERE] java.util.ConcurrentModificationException
    22:48:21 [SEVERE]       at java.util.HashMap$HashIterator.nextEntry(Unknown Sour
    22:48:21 [SEVERE]       at java.util.HashMap$ Source)
    22:48:21 [SEVERE]       at ru.tehkode.permissions.compat.P2Entity.getAllOptions(
    22:48:21 [SEVERE]       at ru.tehkode.permissions.ProxyPermissionUser.getAllOpti
    22:48:21 [SEVERE]       at ru.tehkode.permissions.backends.FileBackend.dumpData(
    22:48:21 [SEVERE]       at ru.tehkode.permissions.bukkit.commands.UtilityCommand
    22:48:21 [SEVERE]       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native M
    22:48:21 [SEVERE]       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown S
    22:48:21 [SEVERE]       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno
    wn Source)
    22:48:21 [SEVERE]       at java.lang.reflect.Method.invoke(Unknown Source)
    22:48:21 [SEVERE]       at ru.tehkode.permissions.commands.CommandsManager$Comma
    22:48:21 [SEVERE]       at ru.tehkode.permissions.commands.CommandsManager.execu
    22:48:21 [SEVERE]       at ru.tehkode.permissions.bukkit.PermissionsEx.onCommand
    22:48:21 [SEVERE]       at org.bukkit.command.PluginCommand.execute(PluginComman
    22:48:21 [SEVERE]       at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCo
    22:48:21 [SEVERE]       at org.bukkit.craftbukkit.CraftServer.dispatchCommand(Cr
    22:48:21 [SEVERE]       at net.minecraft.server.MinecraftServer.b(MinecraftServe
    22:48:21 [SEVERE]       at net.minecraft.server.MinecraftServer.h(MinecraftServe
    22:48:21 [SEVERE]       at
    22:48:21 [SEVERE]       at
    EDIT2: Alright, I've figured out how to set this up for multiple worlds. But boy is it going to take a while for me to do this manually.
  31. Offline


    I would VERY much aprreciate help with the issue, both the permissions.yml and <World>.yml ( Im converting to pex now, so im using /pex backend p2compat and it gives me an error on line 278, column 1 that says "users" except in those files, line 278 does not say users) are on page 79, and the error is
    please help, my server is shut down until its fixed.



Share This Page