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

    flames

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    congratz, finally the release :)
  4. Offline

    ks07

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Been watching this plugin grow in IRC for a while now, and I really have to say it's looking very good. So good that our server plans to move over to this plugin as soon as we have some spare time to carry out the changeover! Nice work :)
    zok, firecopy and Motocross635 like this.
  5. Offline

    John Kapsis

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    How about an xml backend??
    would it be hard??
  6. Offline

    NEO

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Looks like it was allot of hard work :p

    Cant wait to try it out.
  7. Offline

    flames

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    we are running this permissions plugin already since more than a week, and its awesome stable and powerfull. we are uning it with mysql.
  8. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Nope, im already thinking how to implement this. Maybe up to next major version. Also i think this would be a separate plugin. In order to show to others how to write own backends.
  9. Offline

    Sabinno

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    PermissionSex?
    No, just kidding.
    Anyways, this plugin runs GREAT on my server!
    Thank you so much for creating this plugin.
    This is simply the greatest alternative to Permissions I've ever seen... I've been waiting so long for something like this!
    -Sabinno-
    neil9444 and ShootToMaim like this.
  10. Offline

    John Kapsis

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    what do you mean??
    if you check my signature i make GUIs for configuring pluggins, yml is not supported in vb.net (yet) but xml literals in vb.net are the best around!!!
    check it out and if i see an xml backend i could have your plugin in the supported plugins list really easy!!!
  11. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I mean we are already dicussed xml support, and i'll add xml support soon, but mb this would be a separate plugin, in order to show how to write own backends for pex, later this plugin would be merged in main plugin.

    BTW
    http://yaml.codeplex.com/
    http://www.codeproject.com/KB/recipes/yamlparser.aspx
    http://yaml-net-parser.sourceforge.net/default.html :)
  12. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Thank you for kind responce :p
  13. Offline

    68x

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    This is amazing! I can easily integrate this my forums. Simple ranks too!
    MinopolisMc likes this.
  14. Offline

    John Kapsis

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I've been watching these quite a while now but none of them is in a state that would make it easy for me to use them, i prefer xml cause it is much more steady in a day to day use, i can actually create very robust listing systems and have checks and error handling in the code that will ensure that all the data flow is correct and consistent. yml simply is to unstable in general and does not provide the tools needed to implement any way of data checks and even if you do manage to get a decent error control in the end you will still have a ton of bug to work out...

    As for the backend i am very happy to hear that!!
    is there an eta or something? so i can plan ahead on my schedule :)
  15. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    New bugfix version - 1.01.
  16. Offline

    Nitnelave

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I got the 1.01 and I get this error (also with iConomyDeath, both starting early in the load cycle, but after PermissionEx):
    [SEVERE] Error occurred while enabling UpdateInfo v0.1 (Is it up to date?): There is issue with plugin, which trying to check permissions while PermissionsEx plugin disabled
    java.lang.RuntimeException: There is issue with plugin, which trying to check permissions while PermissionsEx plugin disabled
    at com.nijikokun.bukkit.Permissions.Permissions.getHandler(Permissions.java:67)
    at de.lingo93.updateinfo.UpdateInfo.setupPermissions(UpdateInfo.java:124)
    at de.lingo93.updateinfo.UpdateInfo.onEnable(UpdateInfo.java:50)
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:125)
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:750)
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:253)
    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:131)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:109)
    at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:336)
    at org.bukkit.command.SimpleCommandMap$ReloadCommand.execute(SimpleCommandMap.java:213)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:97)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:270)
    at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:401)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:386)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:292)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    (running CB798)
  17. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Look like they called Permissions before PermissionsCompat run onEnable. Just be sure they are loaded after PermissionEx and PermissionsCompat.
  18. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Anyway, now PEC (PermissionsCompat) should be more compatible :)
  19. Offline

    Kilajawa

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Nice plugin I must say!
  20. Offline

    Yggy

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    "hierarchy" is the correct spelling.
    Figure a quality plugin like this deserves quality spelling. ;)
  21. Offline

    Nitnelave

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Works fine now, with 1.02, no more errors.
  22. Offline

    DragonSupremacy

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Outta curiosity, what are the pro's/con's of using a MySQL-based permissions system like this, rather then for instance GroupManager which I am currently running on my server?

    Also, since I don't see any "reload" option (maybe I just read past it), does that mean whichever change is made is done on-the-fly? And can you change a user's group while they're offline?
  23. Offline

    flames

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    @DragonSupremacy,
    1. pro is definitely the abiliy to manage your permissions with 3d party apps. you could use even groups and users of a forum as your permissions. writers of config GUIs will be happy to use mysql instead of yaml. contra is the additional setup of mysql server.
    but the more important argument for pex is not only the mysql backend, its pex itself, pex is definitely more powerful than any other permission system actually out there. just compare the feature list. show me one that has an antigriefing/restriction system that is comparable with pex modifyworld. or ingame commands that really work and are simple to learn.
    as soon as bukkit.permissions is out, we will see if it can hold with pex :p
    2. yes
    3. yes
  24. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Thank you, this is a shame for me :( Im not native english speaker :(
    jeretman123 likes this.
  25. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    pex reload - command on the top of list :)

    On-the-fly updating aren't implemented for perfomance reasons. Instead of this Player's related changes are reset after Player quit. So you need just reconnect. For groups you need "pex reload". I think it's okay, since groups are changed only be administrators. This is if you change source of data (file or data of sql server directly).

    If changes done be command interface (pex command) they are "on-the-fly".
  26. Offline

    Kainzo

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    looks like a nice plugin - however I wont be switching to a new permission system until it is officially released and even then - that's a slim chance.
  27. Offline

    DragonSupremacy

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

    Actually, if you count AntiBuild in Permissions/GroupManager, it does the same thing. PermissionsPlus has /group <player> <member> (but with /pr -reload all), GroupManager is a tad different, with /manuadd.

    Anyway, I'll check this out, we'll see how it goes :)
  28. Offline

    t3hk0d3

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    AntiBuild support only block placing/destroying. Modifyworld support much more:

    ShootToMaim, f1eins0pp and Valtn55 like this.
  29. Offline

    eastonch

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Looks super complex. I'm hoping 3.0 comes out with the ability to change permission nodes ingame easier. :)

    Good job!
  30. Offline

    flames

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    look at the forum where pex is currently placed, it is plugin releases, so its official now :p
  31. Offline

    DragonSupremacy

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Ok, (being a MySQL nub), how would I go about putting in permission nodes and such into the db, or should I just stick with file backend?

Share This Page