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

    Buckethead

    here is my config. it didnt give error in parser

    http://pastie.org/2673795

    and http://pastie.org/2673797

    WTF permissions is the same way but example is saying another does this actualy work for u though

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

    RG_PankO

    This is what I did.
    It colours the user's names but doesnt have [GROUP] before the name.
    Basicly the pattern changed from:
    [*GROUP*] Player: Message
    to:
    *Player*: Message

    where the text between * and * is colored.

    Can you fix that and add group name before the name of the user?Coloring the text is cool fine, but the group name before it looks better.
     
  4. Offline

    Buckethead

    wait a minute why is there pex and permissions in same package?
     
  5. Offline

    Icelaunche

    well i still use perms (yes, it still works) but it might nit be the same on PEX
     
  6. Offline

    Buckethead

    i cant find regular permissions here or on dev. could u upload it here?
     
  7. Offline

    Kanurame

    That doesnt help at all. I know exactly how to use permissions... I want to know how to get a person IN the default group when they log on for the first time (security purposes).
     
  8. Offline

    Buckethead

    whatever group u have set to default is the one they initially join when they first get here. the one set to default:true. all other groups need to have that option set to false

    also rank 1000?

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

    ratty

  10. Offline

    nala3

  11. Offline

    Kaikz

  12. Offline

    nytmaster

    THIS PLUGIN DOES NOT WORK WITH NEW RELEASE
     
  13. The wiki explains what those files are.

    The parser didn't error, no, but you either missed what the oputput was showing you or didn't look at it. The online YAML parser I link to (and is linked to in the first post) is a generic YAML checker, it will check to see if the file as a whole is a valid YAML format, not if something is not in the right place for a specific purpose.

    Look at the output for the prefix bit you quoted above (#2572 and 2578):
    Code:
    {
      "Admins": {
        "default": false,
        "info": {
          "prefix": "&4[ADMIN]",
          "suffix": "",
          "build": true
        },
        "inheritance": null,
        "permissions": [
          "*"
        ]
      }
    }
    Look at where the prefix section is. Now look at yours (I removed large chunks of the output for readability):
    Code:
        "Admin": {
          "default": false,
          "inheritance": [
            "Moderator"
          ],
          "permissions": [
            "SimpleJail.setjail",
            "nSpleef.admin.forceleave",
    (edit)
            "geoiptools.geoupdate",
            "deadbolt.command.reload"
          ]
        },
        "options": {
          "prefix": "&c<Citizen>&f"
        },
        "Moderator": {
          "default": false,
    (edit)
        "Citizen": {
          "default": false,
          "inheritance": [
            "Guest"
          ],
          "permissions": [
            "essentials.tell",
            "modifyworld.vehicle.destroy",
    (edit)
            "modifyworld.vehicle.enter",
            "modifyworld.vehicle.collide"
          ]
        },
        "Owner": {
    (edit)
    Notice how prefix: is on it's own line and not a subheading of a group?

    Big Hints (tm) follow:
    You still don't have the prefix part quite in the right place (and I'm not talking just line number).

    How far an item is indented matters with YAML files.

    @Toasty

    And this is incorrect. The built-in bridge, to put it simply, listens for calls to SuperPerms and does it's own checking, it does not read the root level permissions.yml file (this was confirmed to me by t3hkod3 in a ticket for another issue).

    I'm sure that it's more complicated than that, but that's a quick and easy way to think of it.
     
  14. Offline

    nala3

    are you 12? there is no need for a capital letter spam.
     
  15. Offline

    Jobsti

  16. Offline

    nytmaster

    Did it for a reason not to use until fixed for new release I guessed it worked becuase you saw it.
    also im 35 thanks for asking
     
  17. Offline

    The3vilm0nk3y

    If you add default: true to a group it will add them to that group by default upon first join.

    not that im aware of.. just the default: true
     
  18. Offline

    nala3

    check a couple posts above it :)
     
  19. Offline

    Hitman4Hire

  20. Offline

    t3hk0d3

    Fixed for 1317. Just redownload using links from OP post.

    Hm, can't reproduce:

    Code:
    17:03:55 [INFO] Done (0,202s)! For help, type "help" or "?"
    >pex user t3hk0d3 group set Default
    17:04:04 [INFO] User groups set!
    >
    weird. Try to make full jvm restart (ie restart server completely).

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

    min

    console command "stop"
    ========================================================================
    2011-10-11 16:19:28 [SEVERE] Error occurred (in the plugin loader) while disabling Permissions v2.7.7 (Is it up to date?): null
    java.lang.NullPointerException
    at java.lang.Class.isAssignableFrom(Native Method)
    at org.bukkit.plugin.java.JavaPluginLoader.removeClass(JavaPluginLoader.java:245)
    at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:992)
    at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:296)
    at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:289)
    at org.bukkit.craftbukkit.CraftServer.disablePlugins(CraftServer.java:166)
    at net.minecraft.server.MinecraftServer.stop(MinecraftServer.java:325)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:404)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
     
  22. Offline

    Kaikz

    That's a bug in #1317 itself. Use #1318 to fix that.
     
  23. Offline

    Inscrutable

    Heh. I came to post an error and found a fix instead! Thank You Indeed! I am most grateful.
    The Updated PermissionsEx 1.14 works well in RB1317 (and also build 1318, thanks Kaikz :D)
    But I wonder why you haven't appended a new version number to it?
     
  24. Offline

    Kaikz

    Code:
        ... 7 more
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
        at ru.tehkode.permissions.bukkit.PermissionsEx.onCommand(PermissionsEx.java:123)
        at ru.tehkode.permissions.commands.CommandsManager.execute(CommandsManager.java:88)
    Caused by: java.lang.NoClassDefFoundError: ru/tehkode/utils/StringUtils
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:485)
        at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:506)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:354)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:358)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:163)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
    org.bukkit.command.CommandException: Unhandled exception executing command 'pex' in plugin PermissionsEx v1.14
    2011-10-11 02:37:28 [WARNING] Unexpected exception while parsing console command
    Example: /pex user Kaikz group set Default
     
  25. Offline

    Valtos

    How many updates you have deployed without increasing Version?! Thanks a lot!!!1

    My problem is still there.
    Sry that i can't post my permissions.yml... i use SQLBackend.

    Any help for my problem?

    Have updated my plugin.yml
    But the problem is still there ;(

    Code:
    name: Management
    version: 0.88b
    
    main: de.nysoft.management.Management
    database: false
    depend: [Spout, iConomy, Towny]
    
    commands:
        pos:
            description: Get your current Position
            usage: /pos
            permission: management.command.pos
        robot:
            description: Use the Robot to easy modify Blocks
            usage: /robot
            permission: management.command.robot
        login:
            description: Login CommunityUser of No-FM-Community
            usage: /login [email] [password]
            permission: management.command.login
        management:
            description: Get Statistics about Management-PlugIn
            usage: /management
            permission: management.command.management
        location:
            description: Set or teleport to Starting- and Waiting-Location
            usage: /location [set|tp] [starting|waiting]
            permission: management.command.location
        npc:
            description: Create, delete or rename NPCs
            usage: /npc [create|delete|rename|types|status|tp|animate|move] [name] [type|newname]
            permission: management.command.npc
    
    permissions:
        management.*:
            description: Gives access to all Management Plugin Permissions
            children:
                management.command.robot: true
                management.command.pos: true
                management.command.login: true
                management.command.management: true
                management.command.location: true
                management.command.npc: true
        management.command.*:
            description: Gives access to all Management Plugin Commands
            children:
                management.command.robot: true
                management.command.pos: true
                management.command.login: true
                management.command.management: true
                management.command.location: true
                management.command.npc: true
        management.teamcommand.*:
            description: Gives access to Management Plugin Team-Commands
            children:
                management.command.robot: false
                management.command.pos: true
                management.command.login: true
                management.command.management: false
                management.command.location: false
                management.command.npc: true
        management.command.pos:
            description: Allows you to see your position
            default: false
        management.command.robot:
            description: Allows you to use the robot
            default: false
        management.command.login:
            description: Allows you to login into community-database
            default: true
        management.command.management:
            description: Allows you to see Management-Statistics
            default: false
        management.command.location:
            description: Allows you to set or teleport to Starting- and Waiting-Location
            default: false
        management.command.npc:
            description: Allows you manage NPCs
            default: false
    Please... thanks

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

    Kaikz

    That fixed it. Thanks.
     
  27. Offline

    terrigan

    We use ChatManager, does not load in with RB1317, get ChatManager Disabled! in console.
     
  28. Offline

    BlancoLanda

    I get this error:

    Code:
    16:15:37 [SEVERE] Could not pass event ENTITY_DEATH to ecoCreature
    java.lang.IncompatibleClassChangeError: Expecting non-static method ru.tehkode.p
    ermissions.bukkit.PermissionsEx.has(Lorg/bukkit/entity/Player;Ljava/lang/String;
    )Z
            at net.milkbowl.vault.permission.plugins.Permission_PermissionsEx.player
    Has(Permission_PermissionsEx.java:85)
            at net.milkbowl.vault.permission.plugins.Permission_PermissionsEx.has(Pe
    rmission_PermissionsEx.java:80)
            at se.crafted.chrisb.ecoCreature.managers.ecoRewardManager.registerCreat
    ureReward(ecoRewardManager.java:68)
            at se.crafted.chrisb.ecoCreature.listeners.ecoEntityListener.onEntityDea
    th(ecoEntityListener.java:76)
            at org.bukkit.plugin.java.JavaPluginLoader$64.execute(JavaPluginLoader.j
    ava:707)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:58)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:339)
            at org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDeathEvent(C
    raftEventFactory.java:288)
            at net.minecraft.server.EntityLiving.a(EntityLiving.java:545)
            at net.minecraft.server.EntityLiving.die(EntityLiving.java:528)
            at net.minecraft.server.EntityLiving.damageEntity(EntityLiving.java:469)
    
            at net.minecraft.server.EntityMonster.damageEntity(EntityMonster.java:44
    )
            at net.minecraft.server.EntityHuman.d(EntityHuman.java:721)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:916)
            at net.minecraft.server.Packet7UseEntity.a(SourceFile:33)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
            at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java
    :500)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:471)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    I'm running PEX v1.14, and CraftBukkit RB1318, this is my permissions.yml file of PEX:

    Code:
    groups:
        Members:
            default: true
            permissions:
            - turnstile.open
            - pvpreward.givereward
            - pvpreward.getreward
            - train.properties.default
            - residence.create
            - lwc.protect
            - ChestShop.shop.create
            - ChestShop.shop.sell
            - ChestShop.shop.buy
            - iConomy.user
            - modifyworld.*
            - ecoCreature.Creature.CraftCaveSpider
            - ecoCreature.Creature.CraftCreeper
            - ecoCreature.Creature.CraftEnderman
            - ecoCreature.Creature.CraftGhast
            - ecoCreature.Creature.CraftMonster
            - ecoCreature.Creature.CraftPigZombie
            - ecoCreature.Creature.CraftSilverfish
            - ecoCreature.Creature.CraftSkeleton
            - ecoCreature.Creature.CraftSlime
            - ecoCreature.Creature.CraftSpider
            - ecoCreature.Creature.CraftSquid
            - ecoCreature.Creature.CraftZombie
            - ecoCreature.Creature.Spawner
            - commandbook.intro
        Admins:
            prefix: '&f(&cAdmin&f)'
            permissions:
            - -vanish.silentjoin
            - '*'
            worlds:
                AD:
                    prefix: $c
    users:
        BlancoLanda:
            group:
            - Admins
        23serxio:
            group:
            - Admins
        5micael:
            group:
            - Admins
        bergerkiller:
            group:
            - Members
    
    How can I make ecoCreature work again?
     
  29. Offline

    Later42

    Whenever I start my server with build 1318, I get this error. Any ideas?
    Code:
    2011-10-11 16:41:48 [SEVERE] class ru.tehkode.permissions.config.Configuration$ConfigurationRepresenter overrides final method representData.(Ljava/lang/Object;)Lorg/yaml/snakeyaml/nodes/Node; initializing PermissionsEx v1.14 (Is it up to date?)
    java.lang.VerifyError: class ru.tehkode.permissions.config.Configuration$ConfigurationRepresenter overrides final method representData.(Ljava/lang/Object;)Lorg/yaml/snakeyaml/nodes/Node;
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClassCond(Unknown Source)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$000(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:36)
        at org.bukkit.plugin.java.JavaPluginLoader.getClassByName(JavaPluginLoader.java:221)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:32)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:24)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at ru.tehkode.permissions.bukkit.PermissionsEx.loadConfig(PermissionsEx.java:181)
        at ru.tehkode.permissions.bukkit.PermissionsEx.onLoad(PermissionsEx.java:71)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:139)
        at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:112)
        at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:52)
        at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:136)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:348)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    2011-10-11 16:41:48 [WARNING] [PermissionsCompat] PermissionsEx plugin not found. Some plugins may not work.
     
  30. Offline

    madvane20

    i am haven issues getting it to work heres my log if u need ill list my plugins and craft bukkit version
     

    Attached Files:

  31. Offline

    Rich Boos

    This is the superior permissions plugin. For those of us running dedicated servers it is a time saver to have everything in 1 file, with the groups listed first, because most of us only have an SSH terminal. The per-world permissions are much easier and straightforward to work with imho than worrying about 'inheritance' like other permissions managers do.

    Thank you t3hkod3
     

Share This Page