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. Interesting...

    *tries a few things*

    Got it!:D

    @ACStache pegged it as well. Your ranks are bare numbers. Once I put them into single quotes, PEX dumped it into the SQL file without a whimper.

    I confirmed this format for the ranks as well on the wiki. The basic perm setup page has an example at the bottom of it and the ranks there are in quotes as well.

    (I knew adding the file results to that page would come in handy eventually:))
     
    ACStache likes this.
  3. Nobody ?
     
  4. Offline

    Revenger

    Cheers its hard to maintain a perfect setup with soo much stuff as things get mildly overlooked.

    But I try and people on the server I take things a bit too seriously with making sure everything is perfect but its for good reason :D
     
  5. When is that error showing up?
     
  6. I don't know... I add a new items in bukkit sources (not the first items) yesterday... (armor and tools obsidian).
     
  7. Offline

    Logan

    When I press tab, it colors everyone's names, includes their nicknames (not original), and includes the PermissionsEX prefix.

    How can I remove this...
    I want it to be default.
     
  8. I'm afraid I have no idea. Once you start changing the core bukkit executable, who knows what's going to happen.:(
     
  9. Offline

    Mdcouron1996

    Would you fix it for me cuz i dont know how to
     
  10. Offline

    MichaelMurphree

    do you guys want me to post my permission.yml for my problem?
     
  11. On an other server test, only PermissionsEX running, I haven't got any error... I think there are conflicts with other plugins. I'll look for the guilty :)
     
  12. Offline

    Jaleth

    I am using a dev build of Multiverse and will try switching to a recommended release, but its seemingly inability to work with any PEX build after 1.15 is pretty aggravating.
     
  13. Offline

    dustyn33

    i cant rank up and ranks dont work, i cant use the rank up command
     
  14. Offline

    Phinary

    For ChatManager, think you can add a thing where it says nobody hears you in local chat if nobody hears you?

    Also, think you can add it so you can toggle your chat into global chat instead of typing ! before everything? ie /chat global or something
     
  15. Offline

    monir

    Why is it 2 alternatvie for debug in the config and what effect do they have?
     
  16. One is for superperms, one is for PEX.

    This is based on my observations, I could be misunderstanding something.

    Player in the ops.txt
    debug true
    superperms debug true

    If you have a player in the ops.txt file who tries to, say set the world time, but doesn't have the permission node in the PEX config, the superperms debug line would show that the node was checked for and granted by the superperms 'layer' and not PEX. If the superperms line was false, it would only show grant/deny lines from the PEX 'layer'

    Well, according to your permissions you posted, you don't have any ranks configured.:)

    Check this section of the wiki:
    https://github.com/t3hk0d3/PermissionsEx/wiki/Ranks-(Promotion-and-Demotion)

    And it looks like th3k0d3 did some work on the dev bukkit PEX page, so I guess I will see you all there. I really wish it had some kind of notification system for 'forum' posts in there. :(

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

    zanew8

    I will be waiting for the update! :)
     
  18. Offline

    dustyn33

    i dont quite understand... but if u could fix it then you get many cookies! but if not i understand
     
  19. Offline

    monir

    I dont under stand the diffrrence between pex and superperms is both needed?And i wonder its 2 jar files one named permissonsEx and one only permissions do i need the permission jar to?
     
  20. Well, what don't you understand? Lets start there.

    For the debug output, yes. You could turn them both off if you wanted and just toggle the main PEX debug on from the console as needed, which is what I do.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Nov 10, 2018
  21. Offline

    epiqu1n

    Does this have the ability to bind certain permissions to certain areas?
     
  22. Offline

    the_creeperlord

    Could you please list all the colors? Like say what color is &7? and &3? Thanks
     
  23. Define certain areas.:)

    If you mean limiting permissions to specific worlds, yes, PEX does multiworld nicely.

    http://www.minecraftwiki.net/wiki/Classic_server_protocol#Color_Codes

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

    epiqu1n

    Sorry, what I meant was if I could enable/disable specific permissions within a certain set of coordinates or chunks.
     
  25. Offline

    ndeems

    Code:
    groups:
        default:
            default: true
            permissions:
            - modifyworld.chat
            options:
                rank: '1000'
        Admins:
            permissions:
            - '*'
            options:
                rank: '0'
        User:
            permissions:
            - jobs.world.*
            - modifyworld.chat
            - modifyworld.sneak
            - modifyworld.sprint
            - modifyword.usebeds
            - modifyworld.bucket.*
            - modifyworld.digestion
            - modifyworld.blocks.place.*
            - modifyworld.blocks.interact.*
            - modifyworld.damage.*
            - modifyworld.mobtarget.*
            - modifyworld.interact.*
            - modifyworld.tame.*
            - modifyworld.vehicle.destroy
            - modifyworld.vehicle.enter
            - -modifyworld.vehicle.collide
            - modifyworld.items.*
            - modifyworld.item.*
            - essentials.signs.use.buy
            - essentials.protect.pvp
            - essentials.worth
            - essentials.realname
            - essentials.nick
            - essentials.afk
            - essentials.signs.break.trade
            - essentials.signs.create.trade
            - essentials.signs.use.trade
            - essentials.pay
            - essentials.balance
            - essentials.signs.break.protection
            - essentials.signs.create.protection
            - essentials.signs.use.protection
            - essentials.delhome
            - essentials.sethome
            - essentials.suicide
            - essentials.motd
            - essentials.list
            - essentials.protect
            options:
                rank: '900'
    users:
        User1:
            group:
            - Admins
        User2:
            group:
            - User
            permissions:
            - modifyworld.blocks.destroy.(stone|1)
    Ok, still having trouble with my permissions file. The above file should allow User2 (not actual name, just a place holder) to break stone only yet he can't break anything. If I give him modifyworld.blocks.break.* , he can break any block so it's not an interact permission node. I also tried making "stone" capitalized and putting it on different lines. In the config use item names is set to true. I also tried setting it to false and just using IDs, tried using just names with it set to true, etc. What do?

    EDIT: I use PEX, WorldEdit, Essentials, and EpicZones.
     
  26. Ah. I'm afraid not that I'm aware of. It would be an interesting feature, but AFAIK, it's not possible.

    What I would do is take a look at the configs for Essentials and EpicZones.:)

    I'm not sure about essentials, but from what I remember about EpicZones, it can selectively deny actions within a given zone. I tried your permissions on my test server without EpicZones and I was able to destroy stone blocks while in the same group as User2.

    I'm afraid that from my perspective and testing, this isn't a PEX failing. It look like you have a conflicting plugin.:(

    Try it with just PEX , the compatibility layer and waypoints. With your permissions file as you posted it, waypoint 1.6.4 (not waypoints 0.03) worked fine.

    If it helps any, I noticed that when waypoint denied permission to do a command, the denied line was blue, vs PEX using a red line.

    Wait, vanilla, as in non-bukkit? I just want to make sure we are talking about bukkit here.:)

    Here are the configs from my test server.

    PEX config.yml:
    Code:
    permissions:
        backends:
            file:
                file: permissions.yml
        backend: file
        superperms:
            enable: true
            debug: true
            strict-mode: false
            parent-nodes: true
            compatibility-mode: false
            enable-wildcards: true
            disable-unmatched: false
        createUserRecords: false
        allowOps: false
        debug: true
        basedir: plugins\PermissionsEx
    Modifyworld config.yml:
    Code:
    informPlayers: true
    enable: true
    itemRestrictions: true
    messages:
        prohibitedItem: You have prohibited item "%s".
        whitelistMessage: You are not allowed to join this server. Goodbye!
        permissionDenied: Sorry, modifyworld says you don't have enough permissions
        whitelist: You are not allowed to join this server. Goodbye!
    whitelist: false
    drop-restricted-item: false
    use-material-names: false
    check-metadata: true
    item-use-check: false
    That web site says it's a bukkit permissions YML helper, but the output you provided from that looks more like something group manager uses than PEX.:eek:

    For starters, the first line of what you posted should be the users line, not the dashes or the plugin line. I think if you get rid of those, it might work with PEX, but I don't know for sure.

    That's an odd one. Can you link to your permissions.yml? There might be something that PEX doesn't have that much problem with, but fails with SQL.:eek:

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 2, 2019
  27. Offline

    halo3rlz

    So, I have added the permissions from Waypoint. Some of the nodes work others don't. I added them through the console.
    Code:
    groups:
        Admins:
            prefix: '&0(&4Admins&0)&7 '
            permissions:
            - waypoint.*
            - '*'
            options:
                rank: '0'
        Member:
            prefix: '&0(&8M&7ember&0)&7 '
            options:
                rank: '900'
            default: true
            worlds:
                world:
                    default: true
            permissions:
            - waypoint.basic.list
            - waypoint.basic.invite.decline
            - waypoint.basic.invite.accept
            - waypoint.basic.invite
            - waypoint.basic.teleport
            - waypoint.basic.delete
            - waypoint.basic.add
            - waypoint.home.set
            - waypoint.home
            - waypoint.spawn
            - waypoint.basic.*
        VIP:
            prefix: '&0(&eVIP&0)&7 '
            options:
                rank: '800'
        Moderator:
            prefix: '&0(&1Moderator&0)&7 '
            options:
                rank: '100'
    
    Waypoint.home, .home.set, and .spawn - the commands all work but the rest do not.
    Not sure what to do.
     
  28. Offline

    ndeems

    Well now I'm really confused. You saying that it worked on your test server gave me hope that my file was fine but when I created a vanilla server with only PEX installed, that user still couldn't break a stone block. I even made sure we were hundreds of blocks away from spawn :(

    What are your settings in the configs for PEX and Modifyworld? Anything else I should be changing on a vanilla server?
     
  29. Offline

    fondelaar

    OMG MY PERMISSIONS WONT WORK
    and i dont know what to check at the yaml checker.
    i get this error:
    09:27 AM [WARNING] Server permissions file permissions.yml is not valid YAML.

    id like to know what i did wrong.

    this is my premissions file:
    Code:
    ---
    plugin:
      permissions:
        system: 'default'
        copies: ''
    groups:
      Admins:
        default: false
        info:
          prefix: '&b'
          suffix: '§multiplay'
          build: true
        inheritance: ''
        permissions:
          - '*'
      Default:
        default: true
        info:
          prefix: 'mortal'
          suffix: ''
          build: true
        inheritance: ''
        permissions:
          - 'essentials.help'
          - 'essentials.home'
          - 'essentials.motd'
          - 'essentials.rules'
          - 'essentials.sethome'
          - 'telepads.use'
          - 'essentials.tpa'
          - 'essentials.tpaccept'
          - 'essentials.tpdeny'
          - 'essentials.back'
          - 'essentials.balance'
          - 'essentials.pay'
          - 'essentials.signs.trade.use'
          - 'essentials.afk'
          - 'essentials.msg'
          - 'essentials.me'
          - 'essentials.portal'
          - 'essentials.spawn'
          - 'essentials.chat.question'
          - 'lwc.protect'
          - 'towny.wild.*'
          - 'towny.chat.global'
          - 'towny.top'
          - 'towny.town.toggle.*'
          - 'towny.town.spawn.*'
          - 'towny.town.new'
          - 'towny.town.resident'
          - 'towny.town.claim.outpost'
          - 'towny.town.claim'
          - 'towny.claimed.switch'
          - 'TreeAssist.Replant'
          - 'MobBounty.*'
          - 'iConomy.payment'
          - 'modifyworld.blocks.place.*'
          - 'modifyworld.chat'
          - 'modifyworld.items.pickup.*'
          - 'modifyworld.blocks.destroy.*'
          - 'modifyworld.blocks.interact.*'
          - 'modifyworld.items.drop.*'
          - 'modifyworld.bucket.fill'
          - 'modifyworld.bucket.empty'
          - 'modifyworld.usebeds'
          - 'modifyworld.entity.damage.deal'
          - 'modifyworld.entity.damage.take'
          - 'modifyworld.entity.mobtarget'
          - 'modifyworld.vehicle.enter'
          - 'modifyworld.vehicle.destroy'
      Moderator:
        default: false
        info:
          prefix: 'demi-god'
          suffix: ''
          build: true
        inheritance:
          - 'Default'
        permissions:
          - 'lwc.admin'
          - 'towny.claimed.*'
          - 'towny.nation.*'
          - 'towny.town.*'
          - 'TreeAssist.AutoRemove'
          - 'iConomy.access'
          - 'essentials.*'
    users:
      DeHollander:
        group: 'Moderator'
        permissions: ''
      blowery:
        group: 'Moderator'
        permissions: ''
      fondelaar:
        group: 'Admins'
        permissions: ''
      lysellda:
        group: 'Moderator'
        permissions: ''
      strangeon_net:
        group: 'Moderator'
        permissions: ''
    
    and this is the site i used to make it:
    http://www.wi-alliance.com/yamlhelper/

    thanks for your help!!
     
  30. Offline

    ScottSpittle

    Thanks for the reply but that doesnt work. i get the following error.
     
  31. Offline

    RustyDagger

    @t3hkod3

    Why is it that groups of permissions that i define using bukkits built in permissions.yml that is located in the root of server not work when i use them with PEX example.

    The Permissions.yml From the root is formatted just like the plugin.yml so.

    Code:
    essentials.rusty.player:
        children:
            essentials.tpaccept
            essentials.tpdeny
            essentials.afk
            essentials.help
            essentials.me
            essentials.msg
            essentials.r
            essentials.rules
            essentials.mail
            essentials.mail.send
    
    is valid yes?

    However when i use essentials.rusty.player in my PEX plugin.yml my users do not get the permissions this is a feature of bukkit that i find very helpful because it allows me to compress large groups of permissions into just one node and that is very handy when dealing with Multi world setups because it can save putting in the same 30 lines 3 times and that just makes editing the file that much faster.

    also tell me to use world copying and i flame you its useless because you cant negate inherited nodes. even if you specify them....
     

Share This Page