Visual-Illusions / Realms

Realms - Minecraft Server Mod (Canary/Bukkit) Plugin for Area Protections
http://wiki.visualillusionsent.net/view/Realms
1 stars 0 forks source link

Group Support for Bukkit #37

Closed TISNF closed 9 years ago

TISNF commented 10 years ago

Realms is unable to parse any groups from any permissions plugin whether they use the Superperms API or not. Per user protection entries in Realms are still honored though.

darkdiplomat commented 10 years ago

This is in progress currently, I have started looking into doing this, both with the Bukkit built in permission systems and using the Vault API. MySalary/dConomy has kind of been my testing ground for this and they seem to be functioning as expected, so when I get the time to finish this I will include the support.

TISNF commented 10 years ago

Nice.

TISNF commented 10 years ago

Any news on this yet? Hate to ask but it's been a month without much word...

darkdiplomat commented 10 years ago

Ive been busy trying to get a lot of different things done, and being sick recently hasnt been much of a help. Its still in progress.

darkdiplomat commented 10 years ago

@TISNF I have added the stuff to hopefully make Group support work, depends on Vault, and is currently untested entirely. If you find an issue just make a comment and I'll take a look

1 more thing, Jenkins builds before 14 didn't run on Bukkit properly, I had to make several changes to fix the bugs. 14 and after should function correctly

TISNF commented 10 years ago

Cool! I'll test as soon as I get home. I'll let you know the results...

TISNF commented 10 years ago

:-/ It's a no go for this build... Vault is installed along side but Realms doesn't seem to understand the groups. For reference I use PermissionsBukkit which is deemed to be compatible with Vault.

Realms is able to read player.isOp (from Bukkit OP list) which gives the player Realms.admin. (Had it in your commit header not sure if you needed that)

EDIT (URGENT): Not sure if due to groups not being readable but anyone can change the permissions to any thing at any time. The is no blockage of delegation of permissions regardless of existing permissions of a zone.

darkdiplomat commented 10 years ago

it can be prefixed with g- if a group name would conflict with a player's name

TISNF commented 10 years ago

OK just making sure I was appending the correct prefix but yeah groups are still not being read unfortunately. Umm not sure if you saw my last comment's edit but I think it might be serious...

darkdiplomat commented 10 years ago

I am unable to confirm a permissions failure using PermissionsBukkit 2.0. Possible errors: Check the configuration file for grant.default= and set it to no Check zones for something like: everyone,delegate,true if delegate is true, then they can do as they please

by default, the everywhere zones should be permissioned as (everyone,{perm},{granted},{override}) everyone,delegate,false,false:everyone,zoning,false,false:everyone,message,false,false:everyone,combat,false,false:everyone,environment,false,false:everyone,enter,true,false:everyone,eat,true,false:everyone,create,true,false:everyone,destroy,true,false:everyone,interact,true,false:everyone,command,true,false:everyone,teleport,true,false:everyone,authed,true,false:

TISNF commented 10 years ago

Ok so a brand new list got me the defaults and it fixed the issue where anyone could have delegated permissions anywhere but I still can't seem to get groups to work.

I have PermissionsBukkit 2.0 as well with custom groups and handles the permissions of plugins fairly well with the groups and users. Vault 1.2.29-b370 (latest for 1.7.2 CB) is installed along side and from my understanding that plugin is just self-working and I don't need to add any configuration to. I'm not sure where I'm going wrong. :(

List of things I've tried/checked:

Am I missing something? Mind asking what your test setup is so I can see where I have a mistake?

darkdiplomat commented 10 years ago

I haven't fully tested the group stuff yet or have a setup to do so. I'll look into it in a bit though

also, are you using anything that would denote world specifics for group?

darkdiplomat commented 10 years ago
user:
    permissions:
        permissions.build: true
    # a world that Realms is used in isn't specified here, Realms/Vault fails to get groups for users subsequently returning false on group checks
    worlds:
        world:
            dummy.perm: true
    inheritance:
    - default
TISNF commented 10 years ago

Nope. My permissions config does NOT use any kind of world-specific perms like shown in your text above.

darkdiplomat commented 10 years ago

if worlds aren't specified is when I have an issue with the system for some reason...

darkdiplomat commented 10 years ago

https://github.com/Visual-Illusions/Realms/commit/425f6c2019c0c7dc8cfa90ce30df6e89d56f9f58 should help correct this issue

TISNF commented 10 years ago

Groups are now working as they should. :)

TISNF commented 10 years ago

Correction... I don't think the chain of authority is followed as far as hierarchy. When specifying a permission for a group it only works for the group specified and none of the groups below it (inheritance). Inheritance is specified in my PermissionsBukkit config. Anyway to work that in?

darkdiplomat commented 10 years ago

build 21 ( http://ci.visualillusionsent.net/view/Bukkit%20Compatible%20Plugins/job/Realms/ ) may correct that situation

TISNF commented 10 years ago

Hmm build 21 seems to have no effect. For the comment above I meant when a group permission is specified that the permission acts like a minimum required rank and all ranks above will automatically be granted such permission. I'm sure you understood what I meant but just in case to clarify...

darkdiplomat commented 10 years ago

I have no way of knowing Group inheritance through Vault

(and didnt mean to delete this comment...)

TISNF commented 10 years ago

:-/ ... hope a solution could be found... but thanks a million for all the work you've put into it so far...

darkdiplomat commented 9 years ago

Bukkit API support is being dropped with the move towards Minecraft 1.8