WorldEdit

WorldEdit

43M Downloads

Per player/group Limits

LadyCailinBot opened this issue ยท 6 comments

commented

WORLDEDIT-2749 - Reported by Avalon.Adventures

With WorldEdit you can only set one block limit, one polygonal limit and one radius limit. That has always bugged me because i run build server for a large minecraft server network and if someone misbehaves with WE but i don't want to fully disable their access and i have no other option, I cannot set that players block, polygon or radius limit, i can only change the whole servers so everyone pays for his mistake. This is where my idea came in.

The limits in the config.yml are the default levels for all limits that you can do with World Edit, but you can override those limits with a permission even if the permission says that user has a lower max limit.
So, this might also mean giving the //limit command an upgrade as well (Ex. //limit blocks-changed , //limit polygon , //limit radius )
And if your into that could you could add an override perm to disallow/allow blocks per user which can override the disallowed-blocks area in the config.

The override limits permissions would go as follows
limit.override.blocks-changed. //sets the maximum limit to for the user/group
limit.override.polygonal-points. //sets the maximum limit to for the user/group
limit.override.radius. //sets the maximum limit to for the user/group

Override Block Perms
limit.override.disallowed-block. //makes it so user/group cannot use that block id or block name in the world edit commands
limit.override.disallowed-block.- //makes it so that no user/user group can use the block ids that inbetween those two ids, and also cannot use the two ids.
limit.override.allowed-block. //makes it so user/group use that block id or block name (if blocks disallowed in the config) in the world edit commands
limit.override.allowed-block.- //makes it so user/group use that block id or block name and all IDs inbetween (if blocks disallowed in the config) in the world edit commands

commented

Comment by wizjany

already on our list
it's not really possible to do as permission nodes though because there isn't a clear API for assigning "values" to nodes - it would likely be done as a section in configuration

commented

Comment by Avalon.Adventures

By already on the list do you mean that it is planned to be added in a future version of World Edit?

commented

Comment by Chekkaa

wizjany, I'm not an expert on making Bukkit plugins, so let me try to understand this. Is it not possible to do through permission nodes because to see if a player has the permission for, say, limit.override.blocks-changed.10000, you would have to loop through and check every possible number? If that's the issue, I know PEX has a getPermissions(player) method that just returns a list of all permissions a player has. After that, it would be trivial to search for every permission in the list that contains "limit.override.blocks-changed" and use the one with the highest number at the end. Surely the other permission plugins offer similar functionality?

commented

Comment by dukesmart

Replying for interest

Use a method in the config to specify the group's limit.

{cut Example}


block-limit:
  guest: 0
  member: 0
  VIP: 5000
  mod: 20000
  admin: -1
  owner: -1

{cut}

If it is necessary to use an associated permission node with these, then perhaps like the way that Essentials uses permission nodes with multiple sethomes. (E.g. essentials.sethome.multiple.vip, and for our purposes here: ```
worldedit.limit.group.vip

commented

Comment by wizjany

please don't bump issues needlessly
i've already gone over using permissions like that

commented

WorldEdit has long since been out of the business of being a tool for players. This sort of setup is not recommended.