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

    Monstertke

    lol wh
    lol wut? Sorry for the capslock?

    It works FINE with #996.
     
  3. Offline

    kahlilnc

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

    tripletutorial

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

    The24man

    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

    kahlilnc

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

    malaka

    [​IMG]
    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

    MadcowD

    Build 1000? :D Good luck sir! I wish I could donate. http://www.insidiousmc.com/
    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

    Retricide

    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

    Ratchet

    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

    malaka

    how?
     
  14. Offline

    micklol

    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

    1hacker

    @t3hk0d3

    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

    big_hairy_jimbo

    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

    t3hk0d3

    Thank you, im already working on this.

    Already done in development version :)

    https://github.com/t3hk0d3/Modifyworld
    https://github.com/t3hk0d3/ChatManager

    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

    malaka

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

    bradgillap

    +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

    big_hairy_jimbo

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

    Here's my config.yml

    Code:
    permissions:
        backends:
            file:
                file: permissions.yml
        backend: file
        basedir: plugins/PermissionsEx
        modifyworld:
            enable: true
            itemRestrictions: true
        informplayers:
            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???

    Code:
    groups:
        Guest:
            default: true
            permissions:
            - modifyworld.chat
            options:
                rank: '1000'
        Member:
            prefix: '&0(&8M&7ember&0)&7 '
            options:
                rank: '900'
            default: false
            permissions:
            - modifyworld.*
        VIP:
            prefix: '&0(&eVIP&0)&7 '
            options:
                rank: '800'
            default: false
            permissions:
            - stargate.destroy.owner
            - stargate.create
            - stargate.use
            - modifyworld.*
        Moderator:
            prefix: '&0(&1Moderator&0)&7 '
            options:
                rank: '100'
            permissions:
            - -modifyworld.entity.mobtarget.*
            - modifyworld.*
        Admin:
            permissions:
            - '*'
            - -modifyworld.entity.mobtarget.*
            - -modifyworld.entity.damage.take.*
            options:
                rank: '50'
            prefix: '&4[Admin]&5'
    users:
        fred:
            group:
            - Admin
        frederica:
            group:
            - 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

    1hacker

    @big_hairy_jimbo

    Code:
        Admin:
            permissions:
            - -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

    big_hairy_jimbo

    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!!!!

    @t3hk0d3

    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. http://forums.bukkit.org/threads/ad...al-kill-item-blacklist-weather-etc-953.10770/

    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

    Retricide

    Can groups be in more then one ladder, for example:
    Code:
    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

    t3hk0d3

    Multi-ladder is in progress.
     
  25. Offline

    Retricide

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

    d00ba

    Interesting, might try this out later.
     
  27. Offline

    thatdarnweasel

    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.place.*
    - -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.
    Thanks!
     
  28. Offline

    1hacker

    @thatdarnweasel

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

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

    thatdarnweasel

    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

    1hacker

    @thatdarnweasel

    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