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

    [​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
    Show Changelog (open)
    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.
     
    BRampersad, grid21, MrRazull and 71 others like this.
  2. Offline

    Adv

    Correct, it's just permissions.user.promote, ladder is used for ladders not ranks.
     
  3. Offline

    rediem

    What, no bridge? :/
     
  4. Offline

    M1sT3rM4n

    Looks like it's time for me to do the switcharoo to this thing :)
     
  5. Offline

    EliteMouse

    I understood my error: after one line i had a tab.
    try find in your permissions.yml in line 278, column 1 a tab
     
  6. Offline

    erickingsr

    Read the OP.
     
  7. Offline

    deviantek

    Still not working. That node refers to ladder's. My mods a receiving this error despite being properly setup in the rank structure:

    "You don't have enough permissions to promote on this ladder."

    This is what the nodes you gave me do:
    pex promote <user> [ladder] permissions.user.promote.<ladder> Promote <user> on [ladder]. If [ladder] is not specified default would be used.
    pex demote <user> [ladder] permissions.user.demote.<ladder> Promote <user> on [ladder]. If [ladder] is not specified default would be used.

    Doesn't say anything about ranks in those nodes?
     
  8. Offline

    Subject0017

    every time I try to run PEX on my server I get this thing on all my mods saying
    No Known Permissions Plugin detected Defaulting to Ops.
    is there any thing you can do to help?
     
  9. just did the Permissions 3 to PEX switch, and I have to say it was the best plugin replacement ever!
    • not a single error
    • all permissions work
    • all plugins work
    • chat is working
    im stunned! :eek:

    Now for som questions (nooby maybe, but i could not find anything about it in the thread)
    1. how does this work with SuperPerm? it dosent update the SuperPerm permissions.yml file
    2. I know for a fact that many of my plugins have SuperPerm support, but on start up only 1 of my plugins are using PEX, the other ones uses the Permissions 2 "fallback" that was included in the zip file? Is this a little the same question as the 1st one? is it because this aint a SuperPerm manager but just a step ahead?
    Ones again thanks for this plugin, i love the Permissions way !
     
  10. Offline

    Flyingbox

    This is driving me crazy. Using the latest Essentials full suite and I get "could not pass (action here) to (file/addon here) with...almost everything. It's spamming my console. I can't find working permissions to keep dynmap and essentials running as sticking with the old version will kill dynmap.
    Code:
    2011-08-24 05:55:06 [SEVERE] Could not pass event PLAYER_INTERACT to EssentialsProtect
    java.lang.NullPointerException
    at com.earth2me.essentials.PlayerExtension.getGroup(PlayerExtension.java:56)
    at com.earth2me.essentials.PlayerExtension.canBuild(PlayerExtension.java:66)
    at com.earth2me.essentials.protect.EssentialsProtectPlayerListener.onPlayerInteract(EssentialsProtectPlayerListener.java:47)
    at org.bukkit.plugin.java.JavaPluginLoader$11.execute(JavaPluginLoader.java:314)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
    at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:168)
    at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:210)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:573)
    at net.minecraft.server.Packet15Place.a(SourceFile:57)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:89)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:454)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:363)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-08-24 05:55:08 [SEVERE] Could not pass event PLAYER_INTERACT to EssentialsProtect
    java.lang.NullPointerException
    at com.earth2me.essentials.PlayerExtension.getGroup(PlayerExtension.java:56)
    at com.earth2me.essentials.PlayerExtension.canBuild(PlayerExtension.java:66)
    at com.earth2me.essentials.protect.EssentialsProtectPlayerListener.onPlayerInteract(EssentialsProtectPlayerListener.java:47)
    at org.bukkit.plugin.java.JavaPluginLoader$11.execute(JavaPluginLoader.java:314)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
    at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:168)
    at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:210)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:573)
    at net.minecraft.server.Packet15Place.a(SourceFile:57)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:89)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:454)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:363)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-08-24 05:55:12 [SEVERE] Could not pass event PLAYER_CHAT to EssentialsChat
    java.lang.NullPointerException
    at com.earth2me.essentials.PlayerExtension.getGroup(PlayerExtension.java:56)
    at com.earth2me.essentials.chat.EssentialsChatPlayerListener.onPlayerChat(EssentialsChatPlayerListener.java:56)
    at org.bukkit.plugin.java.JavaPluginLoader$6.execute(JavaPluginLoader.java:279)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:706)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:694)
    at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:89)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:454)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:363)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
     
  11. Offline

    Inscrutable

    First, thanks for making a great plugin that actually allows SuperPerms and old Permissions to live together.

    I made the change to PermissionsEx (from the late lamented Permissions 3.15) and RB#1060 over the weekend.
    The converter didn't let me convert my four world files (one only), so I had to struggle to put it together by hand. This has mostly worked, hooray, but I have one serious problem remaining:

    When using group-based signs, the players are granted access only to the first group named in the permissions file.
    Chestshops and Movecraft signs did not recognise the permissions of subsequent groups.
    [I have not tested Lockette or Stargate yet]
    Is there a better way to arrange the permissions file to allow per-world primary groups?
    Here is a (hopefully relevant) slice of my permissions file:

    Code:
    ...[under users:]
    Inscrutable:
            permissions:
            - mchat.title.mad
            - mchat.chatcol.dkred
            group:
            - Overlord
            - Seraphim
            - Aesir
    
    ...[and later, under groups:]
    
        Seraphim:
            permissions: null
            worlds:
                Tartarus:
                    permissions:
                    - mchat.group.seraphim
    
    
    As it is, the server assumed I am an Overlord in Tartarus for the purposes of Chestshops and Movecraft.
    Permissions for the appropriate group for that world (Tartarus) were denied.

    The other groups are similarly nested under their respective worlds: headings,
    and the permissions seem to work, and come and go as required for these and other groups.
    But the group-sign based permissions are failing to cope with multiworld.
    This is a real problem, as part of my setup relies on world specific group-based inheritance.
    I tried it with all groups nested under each user as world: worldname: permissions:
    too, and the group names defaulted to Ghost (my global default group).

    Any suggestions/help?
     
  12. Is there a way to keep users and groups separate? A file with over 1000 users + groups is a pain in the butt to maintain! =)
     
  13. Offline

    Arton

    Could you maby do it so it work like this
    or something like that
    -----------------------------------------------------------
    Group Name:
    default: true
    info:
    prefix: '&8[&8Vip2&8]&8 '
    suffix: '&f'
    build: false
    inheritance: - like so you dont need to write all the permissions code
    - Group name
    - Group name
    permissions:
    - Plugin.something
    -----------------------------------------------------------
    and let ichat work with this to ? :p
     
  14. Offline

    Lunar Delta

    This was my exact experience, except with Group Manager and not P3. I can't express my thanks to the author enough for this awesome plugin. I try to recommend it whenever I can.
     
  15. Offline

    25CentStudios

    The thing is @EliteMouse is that the "users" the 'u' is in column 1
     
  16. Offline

    Default112

    I'm not much of a pusher, but some others seem to have similar issues. Can you confirm that?
     
  17. Offline

    25CentStudios

    Now this is spamming my console
    10:20:35 [SEVERE] Could not pass event PLAYER_MOVE to Multiverse-Portals
    java.lang.RuntimeException: No groups defined. Check your permissions file.

    The thing is, i was converting to PEX from Perms 3.1.6, and i thought i did everything right with THIS code which made THIS config, which gave me THIS error. I dont know what to do or whats wrong! The main issue with this is right here: http://pastebin.com/dnyHPnLT
     
  18. Offline

    Arton

    Could someone tell me how to get the colors on the name preffixes surffixes ?
    and is it possible to make it like [Guest] [IGN] [ChatMessage]
    and is it possible to use the &1 colors code ?
     
  19. Offline

    M1sT3rM4n

    Here's my impression after converting from Yeti's 3.1.6 to this:

    1. You are trying to unify all of the major chat functions + permission functions into something more intuitive. That's nice, but you also eliminated support for special characters when iChat and other plugins already do support them.

    2. By marking 3.1.6 as inactive and not supporting it in further updates while pushing Ex, bPermissions, or what have you, you threw me into a world of disarray at first. I had to test run the server a lot of times before I figured out the syntax for the config.yaml, and trust me, I followed the Wiki. What used to take me two plugins to achieve what I needed (Permissions 3.1.6 and iChat) has now been fragmented into even more plugins!

    3. Native support for permission inheritance now requires yet another plugin! See #2.

    I like this plugin because it has potential, but its developers need to do more testing before throwing us under the truck as they're ironing out the bugs and cutting off support for something that was universally accepted beforehand.
     
  20. Offline

    MangoChips

    Hey Im a total noob and i need help converting from permissions 3 to this. the wiki and guides just made it all the more confusing to me. Why couldn't of you made this as easy to install as permissions?
     
  21. Offline

    OrtwinS

    Ok, as far I can see PEX is becoming the new defacto standard permissions plugin, I do however miss a few pieces before I say goodbye to GM.

    - Negative permission nodes, its way easier to be able to add worldedit.* and substract a few nodes than having to add the 100 other nodes I do want to allow
    - support for special characters
    - maybe permissions 3 support? for the few rare plugins that are perm3 only

    And most important:
    A 'roles' kind of plugin, or native support build into PEX. For those who haven't been around long enough to know: roles lets your users join/leave roles themselves, which can be changing their actual group, or adding/substracting subgroups, all this so they can join for example different factions or choose a character class or job (or multiple if you want to). Here is the original thread for a better explanation.
     
  22. Offline

    MangoChips

    I Agree! Permissions 3 Support would be great :D
     
  23. Offline

    25CentStudios

    Would really appreciate an answer, cant open server until its fixed
     
  24. Offline

    Don Redhorse

    I can't... permissions 3 support plugins will switch over to superperms or die..

    so if you need a dead plugin you have 2 choices... get it picked up and recoded or search for a new one.

    I needed to do it to... but this is better than adding more code for stuff which doesn't have a future and is only interim.
     
  25. Offline

    deviantek


    HELP PLEASE!!! :(
     
  26. Offline

    Paswaru

    First line of permissions.yml, change group: to groups:
     
  27. Offline

    25CentStudios

    That just made it worse, now it says: Cant pass Plugin_Enable to iconomy for EVERY PLUGIN!!
     
  28. Offline

    Arton

    is there someone there can make a youtube video tutorial of how to use this plugin that could be great
     
  29. Offline

    t3hk0d3

    show output of
    pex user <user>
     
  30. Offline

    Default112

    I have a similar Issue. I followed the basic tutorial and since I'm admin mobs should not be able to target me... But they can.

    My output of pex user:
     
  31. Offline

    erawr00

    I noticed with the databases that the permissions aren't in any particular order. Even if you set -modifyworld.entity.mobtarget.* before the *

    The * may actually register before the modifyworld.entitymobtarget.*

    This was the main reason I switched back to my yml file from a mysql database.
     

Share This Page