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

    Drakia

    @t3hk0d3 Just a heads up, after a LOT of testing with a user of Stargate, I have come to the conclusion that wildcard and negation nodes are loaded in a very screwed up manner.
    This will work as expected, with all access to networks except for 'Bah':
    Code:
            - -stargate.network.Bah
            - stargate.network.*[.code]
    However this will not work, they get access to all network nodes:
    [code]        - stargate.network.*
            - -stargate.network.Bah
    I also noticed that giving 'stargate.network.*' gives the user the 'stargate.network' permission node, which to me is unexpected.
     
  3. Offline

    drt

    t3hk0d3 please make a note of this ordering necessity in the main post of this thread.

    t'would be very helpful indeed :) PEX is dominant... thank you for continuing an alternate permissions method.
    it allows us to find new things that may be limited by bukkits perms. (just a theory) for stimulation's sake.
     
  4. Offline

    nitroxygen

    Is there any problems with this with CB 1060???
     
  5. Offline

    ZacTheDead

    ok, when i type this(pex user zacthedead) into the server
    i get this.....
    Code:
    2011-08-29 20:03:42 [INFO] zacthedead are member of:
    2011-08-29 20:03:42 [INFO]    default (rank 1000 @ default)
    2011-08-29 20:03:42 [INFO] zacthedead's permissions:
    2011-08-29 20:03:42 [INFO]    modifyworld.* @common (from default)
    2011-08-29 20:03:42 [INFO] zacthedead's options:
    but i have used my permissions.yml and here it is..... (i can'ty use any command even if i have listed it in here what have i done wrong?!)
    Code:
    groups:
        Guest:
            default: true
            permissions:
            - modifyworld.*              (see!)
            - essentials.ping
            - essentials.whois
            - essentials.afk
            - essentials.help
            - essentials.helpop
            - essentials.list
            - essentials.mail
            - essentials.mail.send
            - essentials.motd
            - essentials.msg
            - essentials.rules
            - essentials.back
            - essentials.suicide
            - essentials.home
            - essentials.sethome
            - essentials.tpa
            - essentials.tpaall
            - essentials.tpahere
            - essentials.tpaccept
            - essentials.tpdeny
            - essentials.portal
            - essentials.sleepingignored
            - essentials.signs.use.disposal
            - commandSigns.use
            - WeatherControl.clear
            - WeatherControl.status
        Member:
            default: false
            permissions:
            - commandSigns.use
            - modifyworld.*
            - essentials.ping
            - essentials.whois
            - essentials.afk
            - essentials.help
            - essentials.helpop
            - essentials.list
            - essentials.mail
            - essentials.mail.send
            - essentials.motd
            - essentials.msg
            - essentials.rules
            - essentials.back
            - essentials.suicide
            - essentials.home
            - essentials.sethome
            - essentials.tpa
            - essentials.tpaall
            - essentials.tpahere
            - essentials.tpaccept
            - essentials.portal
            - essentials.sleepingignored
            - essentials.signs.use.disposal
            - commandSigns.use
            - prefixer.list
            - essentials.ignore
            - WeatherControl.clear
            - WeatherControl.status
            options:
                rank: '900'
        VIP:
            default: false
            permissions:
            - modiftworld.*
            - commandSigns.create
            - commandSigns.use
            - commandSigns.super
            - essentials.*
            - factions.*
            - prefixer.self
            - prefixer.remove
            - prefixer.list
            - essentials.warp.*
            - essentials.tp
            - essentials.ignore
            - WeatherControl.*
            options:
                rank: '800'
        Admin:
            default: false
            permissions:
            - '*'
        friend:
            default: false
            permissions:
            - '*'
        default:
            permissions:
            - modifyworld.*
            options:
                rank: '1000'
        Moderator:
            permissions:
            - null
            - null
            - null
            - null
            options:
                rank: '100'
        Admins:
            options:
                rank: '0'
    users:
        zacthedead:
            group:
            - default
            permissions: null
        M_the_dead:
            group:
            - default
            permissions: null
    So why can i use any command?
     
  6. Offline

    erickingsr


    Because, your default group name is 'Guest'. Under users you listed yourself being part of the group 'default' - However, there's no such group. Either remove the '- default' from your username or change the name of 'Group' to 'default'.
     
  7. Offline

    fr34k_tk

    I asekd you some days ago, if you are an OP. I did that because some plugins tend to give Ops all permissions. /deop yourselfe and try again.
    The output of /pex user zacthedead shows, that you have only the permissions you want for this group, hence your configuration seems to be correct.
     
  8. Offline

    Jake Buly

    How do I enable groups to talk? I'm very new to PermissionEx so sorry if this is a dumb question. Also I am using the Chatmanager.jar plugin as well.

    Thanks!

    Server: 71.230.255.1
     
  9. Offline

    t3hk0d3

    Right, Order matters! :D
     
  10. Offline

    Drakia

    That is a terrible system, order should never matter when it comes to negations. And if order IS going to matter, the logical assumption is you give * then negate, not the other way around.
     
  11. Offline

    t3hk0d3

    Dude, there were serious argue about negated nodes order on IRC. In few words - negated permissions pre ordering drop flexibility and sucks. User should choose by himself how to order his permissions. Previous "tradition" from Permissions were bogus and was hack around stupidity. Reducing abilities to contol own permissions to match stupid "traditions" are bad idea.
     
  12. Offline

    Drakia

    Yeah, users should be able to choose how to order their permissions and negations. It's too bad they can't with this plugin.
    And I'm not talking "tradition", I'm talking logic. Logically you give all permissions THEN subtract nodes, not the other way around.
     
    Lunar Delta and andrewkm like this.
  13. Offline

    Azlodin

    Continuing with this discussion... When a permission is inherited from a different group (Group B inherits Group A) and a negation entry is added to Group B. What is the outcome?

    1. Do the inherited permissions (from Group A) become loaded after the default permissions of Group B?

    2. Do they all get loaded together?

    Currently I am not having the negation node in Group B work if it is inheriting the node from Group A (same node, just not a negation).
     
  14. Offline

    Default112

    It works like a firewall. Going from top to bottom an checking the nodes. So negated nodes must stay on top.
     
  15. Offline

    VanillaSnack

    I just put the .jar Files into Plugin and tried to use the first command there... but it tells me that I do not have the permission to do it .... what the hell ?
     
  16. Offline

    BladeTec

    Alrighty, I'm going in for my 3rd post !
     
  17. Offline

    Ketrel

    Can you make it so a negative permission supersedes anything else?
     
  18. Offline

    VanillaSnack

    Can somebody help me with that ?

    What are the basics commands for this ? Like killing mobs and building etc. ?

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

    Thequickthinkin

     
  20. Offline

    drt

    this is dumb... if i have a person in a c group thant cant use something, then add(not set) him to a group that can, he still cant because the way this shitty plugin adds groups and required ordering of negations :p
    i thought pex was the best perm plugin and i realize now... i have cake in my teeth... THE LIES!
     
  21. Offline

    parker_digg

    I cannot get the plugin to work with MCMMO or MyHome, even though MyHome claims to work with it. I am using just the permissions layer until I can get it fixed. I need to get to PEX so I can use console commands to rank for auto-donations.
     
  22. Offline

    slater96

    WorldEdit doesn't semm to recognise it help plz...

    Code:
    users:
        slater96:
            group:
            - Admin
            permissions:
        scoot132:
            group:
            - Mod
            permissions:
        Melonman634:
            group:
            - Citizen
            permissions:
        NinjaM007:
            group:
            - Citizen
            permissions:
    groups:
        Guest:
            default: true
            permissions:
            - essentials.list
            - essentials.motd
            - essentials.help
            - essentials.rules
            - essentials.afk
            - essentials.spawn
            worlds:
                creative:
                    permissions:
                    - essentials.item
                    - essentials.itemspawn.item-<itemname>
                    - essentials.itemspawn.item-<itemid>
                    - essentials.itemspawn.item-all
                    - essentials.clearinventory
                    - XcraftGate.use.*
            prefix: '&f[&6Guest&f]'
        Citizen:
            inheritance:
            - Guest
            permissions:
            - permissions.build
            - essentials.warp
            - essentials.home
            - essentials.sethome
            - essentials.warp.list
            - essentials.signs.use.*
            - essentials.seen
            - essentials.mail.send
            - essentials.mail
            - iConomy.payment
            - iConomy.rank
            - iConomy.access
            - jobs.join.<jobname>
            - lockette.user.create.*
            - mobarena.use.*
            - mobarena.classes.*
            - mobarena.arenas.*
            - choptree.chop
            - ChestShop.shop.*
            - XcraftGate.use.*
            - deathpenalty.losemoney
            - essentials.kit
            prefix: '&f[&2Citizen&f]'
        Mod:
            inheritance:
            - Citizen
            permissions:
            - worldedit.history.undo
            - worldedit.history.redo
            - worldedit.history.clear
            - worldedit.navigation.unstuck
            - worldedit.navigation.ascend
            - worldedit.navigation.descend
            - worldedit.navigation.ceiling
            - worldedit.navigation.thru
            - worldedit.navigation.jumpto
            - worldedit.navigation.up
            - worldedit.region.*
            - worldedit.wand.*
            - worldedit.wand
            - worldedit.wand.toggle
            - worldedit.selection.*
            prefix: '&f[&dMod&f]'
        Admin:
            inheritance:
            - Mod
            permissions:
            - '*'
            prefix: '&f[&4Admin&f]'
     
  23. Offline

    STiChad

    I don't know if anyone has said something about this but there's no option to change a persons group, there's only the option to add a group to their list or add them too the group (same thing in the end but found there's 2 different commands you can use, sorta odd) There's no command to change their group, not add another one but change the one. I end up having to add them to the new group and remove them from the old one, which is annoying. I was wondering if in the future there would be a "change" groups command:
    pex user [username] change group [groupname]
    Something like that, merely a convenience doesn't need to happen but would be nice.

    Other than that fantastic plugin, no problems!
     
  24. Offline

    Leviathanx

    "/pex user <username> group set <group>" changes their group. Or even the promotion and demotion commands would work as well.

    Make an Admin group through the commands via the console, then add yourself to it, then you can do in game commands.

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

    Tagz

    Is there a way to make it so that the prefix provided to the user overwrites the prefix from the group they are currently a part of?
     
  26. Offline

    STiChad

    Now see I tried that but it did the same as "group add".
    I'll give it another go tonight but I've definitely tired it.

    Dunno what I did wrong but it works just fine now.
    Thanks for the help mate!
     
  27. Offline

    fiddlex

    I have noticed that after a server restart on my server some of the people I have promoted with this command gets deranked, anyone else experiencing this?
     
  28. Offline

    Windows_i7_920

    Try using /save-all before the restart. I've never used this plugin before, but save-all usually fixes issues such as this with systems like this.
     
  29. Offline

    Po1ntBlank

    Crap. I hate changing permissions -_- I wish we could just go back to when there was the one, 2.x permissions everyone used =/ But, because I HAVE to change permissions plugin now, this looks like a wonderful replacement
     
  30. Offline

    XxFuNxX

    This is awesome, good job :p
     
  31. Offline

    MeatBat

    Hi all!
    please help me, where is my fault?
    Code:
    groups:
        default:
            default: true
            info:
                prefix: ''
                suffix: ''
                build: true
            permissions: null
        moderators:
            inheritance:
            - default
    users:
        testplayer:
            permissions:
            - modifyworld.blocks.interact.(air|sand)
            - modifyworld.blocks.place.(air|sand)
            - modifyworld.blocks.destroy.(air|sand)
            - modifyworld.chat
            - permissions.*
            group: null
    I can't place sand blocks. Also I try modifyworld.blocks.*.sand, modifyworld.blocks.*.12,
    Code:
     modifyworld.blocks.interact.12
     modifyworld.blocks.destroy.12
     modifyworld.blocks.place.12
    and other variants. I just want allow only sand blocks placing/destroying.
    pex config (open)
    Code:
    permissions:
        backends:
            file:
                file: permissions.yml
        backend: file
        superperms:
            disable-unmatched: false
            enable: true
            matched-permissions: true
            raw-permissions: true
        allowOps: false
        debug: false
        basedir: plugins\PermissionsEx
        modifyworld:
            enable: true
            itemRestrictions: true
        informplayers:
            modifyworld: true
            changes: true

    modifyworld config (open)
    Code:
    informPlayers: true
    enable: true
    itemRestrictions: false
    messages:
        prohibitedItem: You have prohibited item "%s".
        whitelistMessage: You are not allowed to join this server. Goodbye!
        permissionDenied: Sorry, you don't have enough permissions
        whitelist: You are not allowed to join this server. Goodbye!
    whitelist: false
    drop-restricted-item: false
    
    
     

Share This Page