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

    mrsuperbing

    when i try to rank up, pex user [my username] add group Admin......... it wont work...

    i get this error code when i try to rank up.........

    12:29:09 [WARNING] Unexpected exception while parsing console command
    org.bukkit.command.CommandException: Unhandled exception executing command 'pex'
    in plugin PermissionsEx v1.15
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:41)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:16
    3)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:3
    53)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:3
    49)
    at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:499)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:478)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    Caused by: java.lang.RuntimeException: java.lang.NullPointerException
    at ru.tehkode.permissions.commands.CommandsManager.execute(CommandsManag
    er.java:127)
    at ru.tehkode.permissions.bukkit.PermissionsEx.onCommand(PermissionsEx.j
    ava:126)
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:39)
    ... 7 more
    Caused by: java.lang.NullPointerException
    at ru.tehkode.permissions.backends.FileBackend.getGroups(FileBackend.jav
    a:191)
    at ru.tehkode.permissions.PermissionManager.getGroups(PermissionManager.
    java:233)
    at ru.tehkode.permissions.bukkit.commands.PermissionsCommand.autoComplet
    eGroupName(PermissionsCommand.java:133)
    at ru.tehkode.permissions.bukkit.commands.PermissionsCommand.autoComplet
    eGroupName(PermissionsCommand.java:127)
    at ru.tehkode.permissions.bukkit.commands.UserCommands.userAddGroup(User
    Commands.java:455)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at ru.tehkode.permissions.commands.CommandsManager$CommandBinding.call(C
    ommandsManager.java:298)
    at ru.tehkode.permissions.commands.CommandsManager.execute(CommandsManag
    er.java:120)
    ... 9 more

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

    lycano

    @mrsuperbing please add the command used. Only an error message doesnt help much =)
     
  4. Offline

    UniQueKakarot

    Hi! I Have a problem with the gamemode selection in minecraft. I can't set any permissions for it, so everyone now have the ability to change the gamemode. But I want it only to be available for Admins. Anyone who have the same issues and now how to fix it? :)
     
  5. Offline

    MetalMadness

    2 questions.

    1.Is there a way to use /promote (user) and /demote (user)? I don't like using /pex promote... ( I want it like permissionsplus)

    2.How can I make the plugin automatically add players to the permissions.yml set to the default rank? right now, when a new player joins, they are the rank but it doesnt show them in the yml.


    Thanks a bunch!
     
  6. Offline

    suicidal_banana

    hey hey, still enjoying your plugin (especially since 1.15 fixed the issues 1.14 created for me) but i gotta say im a little surprised at the permissions, i wanted to give my mods the ability to see all groups, and to see a user's group, but if i wanna enable those, i also enable adding/removing groups, and even full user control, any chance on more worked out permissions?
     
  7. Offline

    SilencShadoW

    Hey Guy,
    can u implement TIMED GROUP? for give a user the group VIP for xx minutes/days?
     
  8. Offline

    mrsuperbing

    i used........ pex user mrsuperbing group add admin...........
     
  9. Offline

    saul100

    try /pex user mrsuperbing group set Admin
     
  10. Offline

    MysticAwesome

    What you mean code tags?

    And also I get this

    04.11 06:56:16 [Server] INFO ... 9 more
    04.11 06:56:16 [Server] INFO at ru.tehkode.permissions.commands.CommandsManager.execute(CommandsManager.java:120)
    04.11 06:56:16 [Server] INFO at ru.tehkode.permissions.commands.CommandsManager$CommandBinding.call(CommandsManager.java:298)
    04.11 06:56:16 [Server] INFO at java.lang.reflect.Method.invoke(Method.java:597)
    04.11 06:56:16 [Server] INFO at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    04.11 06:56:16 [Server] INFO at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    04.11 06:56:16 [Server] INFO at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    04.11 06:56:16 [Server] INFO at ru.tehkode.permissions.bukkit.commands.PromotionCommands.promoteUser(PromotionCommands.java:79)
    04.11 06:56:16 [Server] INFO at ru.tehkode.permissions.bukkit.PermissionsEx.getPermissionManager(PermissionsEx.java:143)
    04.11 06:56:16 [Server] INFO Caused by: java.lang.RuntimeException: Permissions manager is not accessable. Is the PermissionsEx plugin enabled?
    04.11 06:56:16 [Server] INFO ... 7 more
    04.11 06:56:16 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
    04.11 06:56:16 [Server] INFO at ru.tehkode.permissions.bukkit.PermissionsEx.onCommand(PermissionsEx.java:126)
    04.11 06:56:16 [Server] INFO at ru.tehkode.permissions.commands.CommandsManager.execute(CommandsManager.java:127)
    04.11 06:56:16 [Server] INFO Caused by: java.lang.RuntimeException: java.lang.RuntimeException: Permissions manager is not accessable. Is the PermissionsEx plugin enabled?
    04.11 06:56:16 [Server] INFO at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    04.11 06:56:16 [Server] INFO at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
    04.11 06:56:16 [Server] INFO at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:485)
    04.11 06:56:16 [Server] INFO at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:506)
    04.11 06:56:16 [Server] INFO at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:351)
    04.11 06:56:16 [Server] INFO at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:355)
    04.11 06:56:16 [Server] INFO at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:163)
    04.11 06:56:16 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
    04.11 06:56:16 [Server] INFO org.bukkit.command.CommandException: Unhandled exception executing command 'pex' in plugin PermissionsEx v1.15
    04.11 06:56:16 [Server] WARNING Unexpected exception while parsing console command
     
  11. Offline

    mrsuperbing

    still get error, i think its the same, didnt really look

    20:16:36 [WARNING] Unexpected exception while parsing console command
    org.bukkit.command.CommandException: Unhandled exception executing command 'pex'
    in plugin PermissionsEx v1.15
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:41)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:16
    3)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:3
    53)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:3
    49)
    at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:499)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:478)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    Caused by: java.lang.RuntimeException: java.lang.NullPointerException
    at ru.tehkode.permissions.commands.CommandsManager.execute(CommandsManag
    er.java:127)
    at ru.tehkode.permissions.bukkit.PermissionsEx.onCommand(PermissionsEx.j
    ava:126)
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:39)
    ... 7 more
    Caused by: java.lang.NullPointerException
    at ru.tehkode.permissions.backends.FileBackend.getGroups(FileBackend.jav
    a:191)
    at ru.tehkode.permissions.PermissionManager.getGroups(PermissionManager.
    java:233)
    at ru.tehkode.permissions.bukkit.commands.PermissionsCommand.autoComplet
    eGroupName(PermissionsCommand.java:133)
    at ru.tehkode.permissions.bukkit.commands.PermissionsCommand.autoComplet
    eGroupName(PermissionsCommand.java:127)
    at ru.tehkode.permissions.bukkit.commands.UserCommands.userSetGroup(User
    Commands.java:499)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at ru.tehkode.permissions.commands.CommandsManager$CommandBinding.call(C
    ommandsManager.java:298)
    at ru.tehkode.permissions.commands.CommandsManager.execute(CommandsManag
    er.java:120)
    ... 9 more
     
  12. Offline

    Hoeze

    How do I create per-world groups or global groups?
    In Permissions I had had global groups and per-world groups, how can i solve this with pex?

    //Sry for my English :p
     
  13. Offline

    Sayomie

    Would it be possible to get a way to promote or rank people w/o having to reload the plugin. One bigger servers doing a reload can cause a decent amount of lag and if you are doing 50 petitions you may have to do a decent amount of promoting which will cause a lot of lag.

    Thx

    Sayomie
     
  14. Gamemode is a built in command with bukkit. The nodes for this are at http://wiki.bukkit.org/CraftBukkit_commands

    However, if all your players are able to access it, you have something misconfigured as per the bukkit page I linked to, it's a Op only command by default.

    #1: I think there is a plugin out there designed to make promotion and demotion of players easier, but I don't recall the name of it. I think buckethead uses it, you might want to look at some of their posts to get the name.

    #2: The wiki lists the config.yml entry createUserRecords, that should sort things out for you.

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

    Sayomie

    You can define for a group global ( Ie all worlds ) and per world permissions.

    group:
    guest:
    prefix: 'Guest'
    default: true
    opetions:
    rank'100'
    suffix: '&7'
    permissions:
    - Global.Permissions
    worlds:
    Main:
    permissions:
    - Main.Permissions
    GuestWorld
    permissions:
    - GuestWorld.Permissions


    As showen above weould be an example of setting different permissions for multiple worlds for a group.
    Hope that helped :)
     
  16. I think there was a request on github for this, you might want to look there and add your support for the idea.

    Suggestion: Use code tags next time [ code ] and [ /code ] (remove the spaces to make it work).

    Try it. Paste your permissions file into a post the put the code in those tags that I mentioned.

    Click Most Options, then click preview. If it doesn't have something like this:
    Code:
    Testing
        a code
            tag
    Then you have your tags wrong.

    Or paste in the lines, highlight the section, then click on the icon to the left of the quotes (aka the code button). That should put the proper tags in the post.

    You shouldn't have to run a /reload for a promotion/demotion to take effect. If you are, something is likely misconfigured in your setup.

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

    mypetsquirrel

    I have an OP that is using creative mode and the /give command to flood the economy with rare items. I simply want to remove those two commands from everyone's ability, or, just the OP group's abilities. My question is more of a formatting question.
    bukkit.command.give
    is the permission node, but how do I implement it? What file does it go into? What format does it take?
    To allow the command for Everyone, I assume it would be:
    bukkit.command.give.everybody
    To allow the command for Operators, I assume it would be:
    bukkit.command.give.operators
    To allow the command for none, is it:
    bukkit.command.give.nobody
    or am I not even in the right ballpark?
    Can I disable it for the OPs and leave it enabled for the Admins?
    Do I need to disable it for ALL to disable it for ANY?
    Ultimate goal is that I need those two commands to be unavailable for OPs - period. How do I do that?
     
  18. Umm, where have you seen a permissions format like that? I'm not being snarky, I'm actually wondering as I've never seen a permissions manager that used that kind of format for the nodes.

    Anyway, you were close. The node is indeed "bukkit.command.give". What I would do is for the group, add a negative node to take it away (- -bukkit.command.give), then add it to those players who are allowed to use it.

    If you are using a file based backend, the negative node should go at the top of the group permissions list and the grant node would go in the permissions section of the player config. The first post has an example permissions file that has both of these things in it as an example.

    But really, I think you have bigger problems than just this. Anyone who will abuse Op commands really shouldn't have them to begin with IMO.
     
  19. Offline

    Sharpie-o

    I made a new group for my server, for mods, but some commands work, some dont.
    Here's the permissions file, tell me if I'm wrong in something. But they can't heal... :S


    Code:
    groups:
        default:
            default: true
            permissions:
            - modifyworld.*
            - jobs.join.*
            - jobs.world.*
            - essentials.balance
            - essentials.balancetop
            - essentials.pay
            - essentials.sell
            - essentials.worth
            - essentials.afk
            - essentials.help
            - essentials.ignore
            - essentials.info
            - essentials.list
            - essentials.mail
            - essentials.mail.send
            - essentials.me
            - essentials.motd
            - essentials.msg
            - essentials.rules
            - essentials.suicide
            - essentials.ping
            - essentials.spawn
            - essentials.back
            - essentials.back.ondeath
            - essentials.delhome
            - essentials.home
            - essentials.sethome
            - essentials.sethome.multiple
            - essentials.top
            - essentials.tpa
            - essentials.tpaccept
            - essentials.tpdeny
            - essentials.chat.color
            - essentials.chat.shout
            - essentials.protect
            - houses.houses
            - iConomy.holdings
            - iConomy.help
            - iConomy.payment
            - iConomy.accounts.give
            - simpleregionmarket.buy
            - lockette.user.create.*
            - residence.create
            - citizens.trader.use.*
            - citizens.healer.use.heal
            - citizens.blacksmith.use.*
            - lightningarrow.use
        Mod:
            default: false
            permissions:
            - citizens.*
            - giveto.*
            - residence.admin
            - lockette.admin.*
            - worldedit.selection.*
            - essentials.bigtree
            - essentials.heal
            - essentials.heal.cooldown.bypass
            - essentials.heal.others
            - essentials.time
            - essentials.time.set
            - essentials.ban
            - essentials.clearinventory
            - essentials.jails
            - essentials.togglejail
            - essentials.weather
            - essentials.tp
            - essentials.tphere
            - worldedit.wand
            inheritance:
            - default
        Admin:
            default: false
            permissions:
            - modifyworld.*
            - '*'
            - jobs.admin.info
            - jobs.admin.fire
            - jobs.admin.employ
            - jobs.admin.promote
            - jobs.admin.demote
            - jobs.admin.grantxp
            - jobs.admin.removexp
            - jobs.admin.transfer
            - jobs.admin.reload
            - simpleregionmarket.*
            - worldedit.selection.*
            - worldguard.*
            - lockette.admin.*
            - residence.admin
            - citizens.*
            - lightningarrow.use
            - giveto.*
            inheritance:
            - default
     
  20. Offline

    nebenezer

    So I made a list of all the ModifyWorld items according to the log.

    I was in mode 1 and put every item in my inventory, then watched them all fall out :p
    Then I opened the log up and cleaned it of all the extra stuff ([INFO] User nebenezer checked for".. etc.) leaving me with a full and complete "items.have.<itemname>" list. This list does have all the .0 extensions so I don't know how it will act in other versions of PEX. I'm still using 1.15.1 dev version. At least all the text names should be relevant to everyone.

    I am theorizing that this have list will be enough to prevent anyone from having an unwanted item. I'll just paste this list into each group and remove any items I want to grant to that groups.. Most Staff positions will get modifyworld.* so this is only necessary for the first few Groups.
    I really feel like I made a good stride today with this list :p

    And the cool thing is with Notepad++ you can very specifically replace characters with something else. So to turn this list into an items.pickup list all you have to do is search>replace "have" with "pickup". Which I may do just for a little redundancy. Also I want to restrict interaction with certain items but allow it for some.. so I'll change "have" to "interact" then remove the line ".interact.lever.0" if I want to allow them to flip levers.

    Anyhow, here is teh list:

    Show Spoiler
    Code:
    groups:
        test_group:
            permissions:
            - -modifyworld.items.have.apple.0
            - -modifyworld.items.have.arrow.0
            - -modifyworld.items.have.bed.0
            - -modifyworld.items.have.bedrock.0
            - -modifyworld.items.have.boat.0
            - -modifyworld.items.have.bone.0
            - -modifyworld.items.have.book.0
            - -modifyworld.items.have.bookshelf.0
            - -modifyworld.items.have.bow.0
            - -modifyworld.items.have.bowl.0
            - -modifyworld.items.have.bread.0
            - -modifyworld.items.have.brick.0
            - -modifyworld.items.have.brickstairs.0
            - -modifyworld.items.have.brownmushroom.0
            - -modifyworld.items.have.bucket.0
            - -modifyworld.items.have.cactus.0
            - -modifyworld.items.have.cake.0
            - -modifyworld.items.have.cakeblock.0
            - -modifyworld.items.have.chainmailboots.0
            - -modifyworld.items.have.chainmailchestplate.0
            - -modifyworld.items.have.chainmailhelmet.0
            - -modifyworld.items.have.chainmailleggings.0
            - -modifyworld.items.have.chest.0
            - -modifyworld.items.have.clay.0
            - -modifyworld.items.have.clayball.0
            - -modifyworld.items.have.claybrick.0
            - -modifyworld.items.have.coal.0
            - -modifyworld.items.have.coalore.0
            - -modifyworld.items.have.cobblestone.0
            - -modifyworld.items.have.cobblestonestairs.0
            - -modifyworld.items.have.compass.0
            - -modifyworld.items.have.cookedbeef.0
            - -modifyworld.items.have.cookedchicken.0
            - -modifyworld.items.have.cookedfish.0
            - -modifyworld.items.have.cookie.0
            - -modifyworld.items.have.deadbush.0
            - -modifyworld.items.have.detectorrail.0
            - -modifyworld.items.have.diamond.0
            - -modifyworld.items.have.diamondaxe.0
            - -modifyworld.items.have.diamondblock.0
            - -modifyworld.items.have.diamondboots.0
            - -modifyworld.items.have.diamondchestplate.0
            - -modifyworld.items.have.diamondhelmet.0
            - -modifyworld.items.have.diamondhoe.0
            - -modifyworld.items.have.diamondleggings.0
            - -modifyworld.items.have.diamondore.0
            - -modifyworld.items.have.diamondpickaxe.0
            - -modifyworld.items.have.diamondspade.0
            - -modifyworld.items.have.diamondsword.0
            - -modifyworld.items.have.diode.0
            - -modifyworld.items.have.dirt.0
            - -modifyworld.items.have.dispenser.0
            - -modifyworld.items.have.egg.0
            - -modifyworld.items.have.enderpearl.0
            - -modifyworld.items.have.feather.0
            - -modifyworld.items.have.fence.0
            - -modifyworld.items.have.fencegate.0
            - -modifyworld.items.have.fishingrod.0
            - -modifyworld.items.have.flint.0
            - -modifyworld.items.have.flintandsteel.0
            - -modifyworld.items.have.furnace.0
            - -modifyworld.items.have.glass.0
            - -modifyworld.items.have.glowstone.0
            - -modifyworld.items.have.glowstonedust.0
            - -modifyworld.items.have.goldaxe.0
            - -modifyworld.items.have.goldblock.0
            - -modifyworld.items.have.goldboots.0
            - -modifyworld.items.have.goldchestplate.0
            - -modifyworld.items.have.goldenapple.0
            - -modifyworld.items.have.goldhelmet.0
            - -modifyworld.items.have.goldhoe.0
            - -modifyworld.items.have.goldingot.0
            - -modifyworld.items.have.goldleggings.0
            - -modifyworld.items.have.goldore.0
            - -modifyworld.items.have.goldpickaxe.0
            - -modifyworld.items.have.goldrecord.0
            - -modifyworld.items.have.goldspade.0
            - -modifyworld.items.have.goldsword.0
            - -modifyworld.items.have.grass.0
            - -modifyworld.items.have.gravel.0
            - -modifyworld.items.have.greenrecord.0
            - -modifyworld.items.have.grilledpork.0
            - -modifyworld.items.have.ice.0
            - -modifyworld.items.have.inksack.0
            - -modifyworld.items.have.inksack.1
            - -modifyworld.items.have.inksack.10
            - -modifyworld.items.have.inksack.11
            - -modifyworld.items.have.inksack.12
            - -modifyworld.items.have.inksack.13
            - -modifyworld.items.have.inksack.14
            - -modifyworld.items.have.inksack.15
            - -modifyworld.items.have.inksack.2
            - -modifyworld.items.have.inksack.3
            - -modifyworld.items.have.inksack.4
            - -modifyworld.items.have.inksack.5
            - -modifyworld.items.have.inksack.6
            - -modifyworld.items.have.inksack.7
            - -modifyworld.items.have.inksack.8
            - -modifyworld.items.have.inksack.9
            - -modifyworld.items.have.ironaxe.0
            - -modifyworld.items.have.ironblock.0
            - -modifyworld.items.have.ironboots.0
            - -modifyworld.items.have.ironchestplate.0
            - -modifyworld.items.have.irondoor.0
            - -modifyworld.items.have.ironfence.0
            - -modifyworld.items.have.ironhelmet.0
            - -modifyworld.items.have.ironhoe.0
            - -modifyworld.items.have.ironingot.0
            - -modifyworld.items.have.ironleggings.0
            - -modifyworld.items.have.ironore.0
            - -modifyworld.items.have.ironpickaxe.0
            - -modifyworld.items.have.ironspade.0
            - -modifyworld.items.have.ironsword.0
            - -modifyworld.items.have.jackolantern.0
            - -modifyworld.items.have.jukebox.0
            - -modifyworld.items.have.ladder.0
            - -modifyworld.items.have.lapisblock.0
            - -modifyworld.items.have.lapisore.0
            - -modifyworld.items.have.lavabucket.0
            - -modifyworld.items.have.leather.0
            - -modifyworld.items.have.leatherboots.0
            - -modifyworld.items.have.leatherchestplate.0
            - -modifyworld.items.have.leatherhelmet.0
            - -modifyworld.items.have.leatherleggings.0
            - -modifyworld.items.have.leaves.4
            - -modifyworld.items.have.lever.0
            - -modifyworld.items.have.log.0
            - -modifyworld.items.have.log.1
            - -modifyworld.items.have.log.2
            - -modifyworld.items.have.map.0
            - -modifyworld.items.have.melon.0
            - -modifyworld.items.have.melonblock.0
            - -modifyworld.items.have.melonseeds.0
            - -modifyworld.items.have.milkbucket.0
            - -modifyworld.items.have.minecart.0
            - -modifyworld.items.have.mossycobblestone.0
            - -modifyworld.items.have.mushroomsoup.0
            - -modifyworld.items.have.netherrack.0
            - -modifyworld.items.have.noteblock.0
            - -modifyworld.items.have.obsidian.0
            - -modifyworld.items.have.painting.0
            - -modifyworld.items.have.paper.0
            - -modifyworld.items.have.pistonbase.7
            - -modifyworld.items.have.pistonstickybase.7
            - -modifyworld.items.have.pork.0
            - -modifyworld.items.have.poweredminecart.0
            - -modifyworld.items.have.poweredrail.0
            - -modifyworld.items.have.pumpkin.0
            - -modifyworld.items.have.pumpkinseeds.0
            - -modifyworld.items.have.rails.0
            - -modifyworld.items.have.rawbeef.0
            - -modifyworld.items.have.rawchicken.0
            - -modifyworld.items.have.rawfish.0
            - -modifyworld.items.have.redmushroom.0
            - -modifyworld.items.have.redrose.0
            - -modifyworld.items.have.redstone.0
            - -modifyworld.items.have.redstoneore.0
            - -modifyworld.items.have.redstonetorchon.0
            - -modifyworld.items.have.rottenflesh.0
            - -modifyworld.items.have.saddle.0
            - -modifyworld.items.have.sand.0
            - -modifyworld.items.have.sandstone.0
            - -modifyworld.items.have.sapling.0
            - -modifyworld.items.have.sapling.1
            - -modifyworld.items.have.sapling.2
            - -modifyworld.items.have.seeds.0
            - -modifyworld.items.have.shears.0
            - -modifyworld.items.have.sign.0
            - -modifyworld.items.have.slimeball.0
            - -modifyworld.items.have.smoothbrick.0
            - -modifyworld.items.have.smoothbrick.1
            - -modifyworld.items.have.smoothbrick.2
            - -modifyworld.items.have.smoothstairs.0
            - -modifyworld.items.have.snowball.0
            - -modifyworld.items.have.snowblock.0
            - -modifyworld.items.have.soulsand.0
            - -modifyworld.items.have.sponge.0
            - -modifyworld.items.have.step.0
            - -modifyworld.items.have.step.1
            - -modifyworld.items.have.step.2
            - -modifyworld.items.have.step.3
            - -modifyworld.items.have.step.4
            - -modifyworld.items.have.step.5
            - -modifyworld.items.have.stick.0
            - -modifyworld.items.have.stone.0
            - -modifyworld.items.have.stoneaxe.0
            - -modifyworld.items.have.stonebutton.0
            - -modifyworld.items.have.stonehoe.0
            - -modifyworld.items.have.stonepickaxe.0
            - -modifyworld.items.have.stoneplate.0
            - -modifyworld.items.have.stonespade.0
            - -modifyworld.items.have.stonesword.0
            - -modifyworld.items.have.storageminecart.0
            - -modifyworld.items.have.string.0
            - -modifyworld.items.have.sugar.0
            - -modifyworld.items.have.sugarcane.0
            - -modifyworld.items.have.sugarcaneblock.0
            - -modifyworld.items.have.sulphur.0
            - -modifyworld.items.have.thinglass.0
            - -modifyworld.items.have.tnt.0
            - -modifyworld.items.have.torch.0
            - -modifyworld.items.have.trapdoor.0
            - -modifyworld.items.have.vine.0
            - -modifyworld.items.have.watch.0
            - -modifyworld.items.have.waterbucket.0
            - -modifyworld.items.have.web.0
            - -modifyworld.items.have.wheat.0
            - -modifyworld.items.have.wood.0
            - -modifyworld.items.have.woodaxe.0
            - -modifyworld.items.have.wooddoor.0
            - -modifyworld.items.have.woodhoe.0
            - -modifyworld.items.have.woodpickaxe.0
            - -modifyworld.items.have.woodplate.0
            - -modifyworld.items.have.woodspade.0
            - -modifyworld.items.have.woodstairs.0
            - -modifyworld.items.have.woodsword.0
            - -modifyworld.items.have.wool.0
            - -modifyworld.items.have.wool.1
            - -modifyworld.items.have.wool.10
            - -modifyworld.items.have.wool.11
            - -modifyworld.items.have.wool.12
            - -modifyworld.items.have.wool.13
            - -modifyworld.items.have.wool.14
            - -modifyworld.items.have.wool.15
            - -modifyworld.items.have.wool.2
            - -modifyworld.items.have.wool.3
            - -modifyworld.items.have.wool.4
            - -modifyworld.items.have.wool.5
            - -modifyworld.items.have.wool.6
            - -modifyworld.items.have.wool.7
            - -modifyworld.items.have.wool.8
            - -modifyworld.items.have.wool.9
            - -modifyworld.items.have.workbench.0
            - -modifyworld.items.have.yellowflower.0
            - modifyworld.login
            - modifyworld.chat
            - modifyworld.items.*
            - modifyworld.blocks.*
    


    *edit - I did a little more legwork and changed them all to allow instead of deny. And I included items.pickup and items.drop. Next on the list is all the modifyworld.blocks.*, I suppose I'll have to build one of every block and then go to Guest and attempt to destroy each block.. Also I'm not sure how many sub lists I might be missing (ie. wallsign and signpost orientations). Fortunately things like the wools and wood blocks have individual item ids. I did read that redstone orientation is determined at runtime so I can forego those tests :)

    Updated modifyworld.items permission nodes list:

    L.M.A.O!!! That's the first time I've ever seen the error message: "Please use less than 30000 characters" !!

    Here is a pastebin of the code: http://pastebin.com/wJPhWJG7

    And a downoald link for the .txt: http://dl.dropbox.com/u/7974884/PEXdevNODEs.txt
     
    Justin The Cynical likes this.
  21. Offline

    mypetsquirrel

    I tried the example you suggested (- -bukkit.command.give) and the command still works, so that's why I thought something needed to be different about it.
     
  22. Offline

    nebenezer

    Are you having problems with people who are in your ops.txt?

    If so then you need to remove them from ops immediately (IMO).

    If you still want to give them lots of power then make them a permissions group and give them
    Code:
    groups:
        Diety:
            permissions:
            - -bukkit.command.give
            - *
    Whatever you do keep problem children away from ops all together..
     
  23. Offline

    Sk8Sanctified

    Hello, I seem to be having an issue with modifyworlds.* when I set it as a per world permission. I would likes to build in the mainworld which is named world. Not any other. I even tried adding the command in game via /pex group Guest add modifyworld.* world but to no luck. Anyone able to help? I use latest PEX and Bukkit 1337

    Here are my permissions
    Code:
    groups:
    
    Guest:
    
    default: true
    
    permissions:
    
    - worldmodes.keep-inventory
    
    - modifyworld.chat
    
    - modifyworld.sprint
    
    - modifyworld.sneak
    
    - essentials.rules
    
    - essentials.list
    
    - essentials.help
    
    options:
    
    rank: '1000'
    
    worlds:
    
    world:
    
    - modifyworld.*
    
    - -worldmodes.mode.creative
    
    - worldmodes.mode.survival
    
    Creative:
    
    - worldmodes.mode.creative
    
    - -worldmodes.mode.survival
    
    Survival:
    
    - -worldmodes.mode.creative
    
    - worldmodes.mode.survival
    
    world_nether:
    
    - -worldmodes.mode.creative
    
    - worldmodes.mode.survival
    
    prefix: '&3(&7Guest&3)&7'
    
    Builder:
    
    default: false
    
    permissions:
    
    - worldmodes.keep-inventory
    
    - worldmodes.mode.*
    
    - worldmodes.drop
    
    - modifyworld.*
    
    - modifyworld.chat
    
    - dirtpaths.*
    
    - essentials.home
    
    - essentials.sethome
    
    - essentials.back
    
    - essentials.back.ondeath
    
    - essentials.protect.entitytarget.bypass
    
    - essentials.afk
    
    - essentials.balance
    
    - essentials.clearinventory
    
    - essentials.depth
    
    - essentials.getpos
    
    - essentials.geoip.show
    
    - essentials.help
    
    - essentials.helpop
    
    - essentials.ignore
    
    - essentials.info
    
    - essentials.list
    
    - essentials.mail
    
    - essentials.mail.send
    
    - essentials.me
    
    - essentials.motd
    
    - essentials.msg
    
    - essentials.nick
    
    - essentials.pay
    
    - essentials.portal
    
    - essentials.protect
    
    - essentials.r
    
    - essentials.rules
    
    - essentials.seen
    
    - essentials.sell
    
    - essentials.suicide
    
    - essentials.worth
    
    - essentials.sethome.multiple
    
    options:
    
    rank: '900'
    
    worlds:
    
    world:
    
    - -worldmodes.mode.creative
    
    - worldmodes.mode.survival
    
    Creative:
    
    - worldmodes.mode.creative
    
    - -worldmodes.mode.survival
    
    Survival:
    
    - -worldmodes.mode.creative
    
    - worldmodes.mode.survival
    
    world_nether:
    
    - -worldmodes.mode.creative
    
    - worldmodes.mode.survival
    
    prefix: '&3(&eBuilder&3)&7'
    
    Kindred:
    
    default: false
    
    inheritance:
    
    - Builder
    
    permissions:
    
    - worldedit.chunkinfo
    
    - worldedit.listchunks
    
    - worldedit.clipboard.load
    
    - worldedit.clipboard.copy
    
    - worldedit.clipboard.flip
    
    - worldedit.clipboard.rotate
    
    - worldedit.clipboard.cut
    
    - worldedit.clipboard.paste
    
    - worldedit.clipboard.clear
    
    - worldedit.history.undo
    
    - worldedit.history.redo
    
    - worldedit.history.clear
    
    - worldedit.navigation.unstuck
    
    - worldedit.navigation.acscend
    
    - worldedit.navigation.descend
    
    - worldedit.navigation.ceiling
    
    - worldedit.navigation.thru
    
    - worldedit.navigation.jumpto
    
    - worldedit.navigation.up
    
    - worldedit.region.replace
    
    - worldedit.region.stack
    
    - worldedit.region.set
    
    - worldedit.region.overlay
    
    - worldedit.region.naturalize
    
    - worldedit.region.walls
    
    - worldedit.region.faces
    
    - worldedit.region.smooth
    
    - worldedit.region.move
    
    - worldedit.regen
    
    - worldedit.analysis.count
    
    - worldedit.selection.size
    
    - worldedit.selection.shift
    
    - worldedit.selection.expand
    
    - worldedit.selection.contract
    
    - worldedit.selection.pos
    
    - worldedit.selection.pos
    
    - worldedit.selection.hpos
    
    - worldedit.selection.hpos
    
    - worldedit.wand
    
    - worldedit.selection.outset
    
    - worldedit.selection.inset
    
    - worldedit.analysis.distr
    
    - worldedit.brush.options.size
    
    - worldedit.brush.options.mask
    
    - worldedit.superpickaxe
    
    - worldedit.superpickaxe.recursive
    
    - worldedit.superpickaxe
    
    - worldedit.superpickaxe.area
    
    - worldedit.tool.info
    
    - worldedit.tool.replacer
    
    - worldedit.tool.data-cycler
    
    - worldedit.tool.flood-fill
    
    - worldedit.brush.sphere
    
    - worldedit.brush.cylinder
    
    - worldedit.brush.clipboard
    
    - worldedit.brush.smooth
    
    - worldedit.brush.ex
    
    - worldedit.tool.deltree
    
    - worldedit.tool.farwand
    
    - worldedit.tool.lrbuild
    
    - worldedit.brush.options.material
    
    - worldedit.brush.options.range
    
    - worldedit.tool.info
    
    - worldedit.tool.replacer
    
    - worldedit.tool.data-cycler
    
    - worldedit.tool.flood-fill
    
    - worldedit.brush.sphere
    
    - worldedit.brush.cylinder
    
    - worldedit.brush.clipboard
    
    - worldedit.brush.smooth
    
    - worldedit.brush.ex
    
    - worldedit.tool.deltree
    
    - worldedit.tool.farwand
    
    - worldedit.tool.lrbuild
    
    - worldedit.remove
    
    - worldedit.fill
    
    - worldedit.fill.recursive
    
    - worldedit.drain
    
    - worldedit.fixlava
    
    - worldedit.fixwater
    
    - worldedit.removeabove
    
    - worldedit.removebelow
    
    - worldedit.removenear
    
    - worldedit.replacenear
    
    - worldedit.snow
    
    - worldedit.thaw
    
    - worldedit.green
    
    - worldedit.extinguish
    
    - powertool
    
    - essentials.warp
    
    - essentials.warp.list
    
    - essentials.sethome.multiple.vip
    
    options:
    
    rank: '800'
    
    prefix: '&3(&2Kindred&3)&7'
    
    Moderator:
    
    default: false
    
    inheritance:
    
    - Kindred
    
    permissions:
    
    - worldedit.generation.cylinder
    
    - worldedit.generation.cylinder
    
    - worldedit.generation.sphere
    
    - worldedit.generation.sphere
    
    - worldedit.generation.pyramid
    
    - worldedit.generation.pyramid
    
    - worldedit.tool.tree
    
    - essentials.tpa
    
    - essentials.tpaccept
    
    - essentials.tpahere
    
    - essentials.tpdeny
    
    - essentials.world
    
    - lytreehelper.generate.trees
    
    - lytreehelper.destroyall
    
    - nofloatingtrees.command.nftpurge
    
    - worldmodes.set.*
    
    - powertool
    
    - -modifyworld.mobtarget.*
    
    - nolagg.clear
    
    - essentials.spawn
    
    - essentials.sethome.multiple.staff
    
    options:
    
    rank: '100'
    
    prefix: '&3(&1Moderator&3)&7'
    
    Admin:
    
    default: false
    
    permissions:
    
    - worldmodes.keep-inventory
    
    - gianttrees.*
    
    - gianttrees.customdangerous
    
    - gianttrees.custom
    
    - gianttrees.nolimit
    
    - gianttrees.reload
    
    - gianttrees.undoall
    
    - gianttrees.build
    
    - lytreehelper.generate.trees
    
    - lytreehelper.destroyall
    
    - lytreehelper.generate.forests
    
    - lytreehelper.generate.nursery
    
    - lytreehelper.db.blockaccess
    
    - lytreehelper.db.forestlist
    
    - lytreehelper.db.registerforest
    
    - lytreehelper.db.deleteforest
    
    - lytreehelper.db.regenerateforest
    
    - lagmeter.*
    
    - nofloatingtrees.command.nftpurge
    
    - essentials.sethome.multiple.unlimited
    
    - essentials.protect.entitytarget.bypass
    
    - '*'
    
    options:
    
    rank: '0'
    
    prefix: '&3(&4Admin&3)&7'
    Edit: made yml define the worlds had permissions not just nodes in the world section and it worked.
     
  24. Offline

    mypetsquirrel

    I have tried this, and it does not work.

    here is my OP permissions, maybe I have typed something wrong
    Code:
        Operators:
            options:
                rank: '100'
            permissions:
            - -bukkit.command.give
            - -bukkit.command.gamemode
            - -mobdisguise.player
            - -modifyworld.mobtarget.*
            - preciousstones.limit4
            - '*'
            prefix: '&9OP '
            suffix: '&f'
    
     
  25. Offline

    MysticAwesome

    No clue what you just said!
     
  26. Offline

    Sayomie

    You do realise that in pex when you promote someone it does a automatic reload. I am looking for a way to promote and rank ppl w/o it doing the automatic reload.
     
  27. Offline

    nebenezer

    Is it possible to set specific groups to gamemode=1 while the rest of the server is gamemode=0 ?
     
  28. Ah, my apologies then, I misunderstood the question.

    Not with PEX that I'm aware of, it's just a permissions manager, it doesn't do anything to the players themselves. You can specify which groups have access to the command, but that's it.

    That should work. Assuming that your users are in the Operators group (vs the operators group, case matters), they might be getting it from an inheritance somewhere else as well, or a different plugin is providing it, overriding the bukkit command.

    Essentials...

    *shudder*

    What error appears in the game and in the console? Have you turned on debugging in PEX to see what permission node it's looking for?

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

    Sharpie-o

    no error, just says "you don't have permission for this".. :S the other nodes work fine. Just heal doesn't
     
  30. OK, so if you use pex toggle debug and try to use the command, what does the server console/screen show?
     
  31. Offline

    Kaaji

    Hello, I noted that I could'nt read all messages which are posted by my default group (visitor) in game since I use PermissionsEx. This is really annoying because I can not read their question and so I can't answer.
    How can I corrige that ? Is it a missing permissions of ChatManager ? or a bug ?
    I realy need a answer quickly please ! :(

    Thanks you.
     

Share This Page