Quester

Quester

47.7k Downloads

Permission Nodes?

zerafox opened this issue ยท 8 comments

commented

I'm assuming the Permission nodes are still the same, and since I cannot find them anywhere else I have been trying to use the ones on the old main page...
However, when I negate the node quester.admin from everyone, it makes all commands and interactions not work for anyone. Despite trying to give all the letter quester.use nodes.

I have tried both quester.use.* and quester.use.npc (etc) and have no luck getting the two nodes to work side-by-side.
I need to be able to negate the condition ignore for some of my more trusted staff members, as it is hard to remember when the last time a quest was done, that was only intended to be a daily thing.

Please help me out, I really don't want to have to tell my OP's, including myself that we're out of luck here.
I don't understand why this happens.

RECAP:
- quester.use.npc
- -quester.admin
DOES NOT WORK TOGETHER
cannot interact with NPC at all "You don't have permission for this."

commented

If you are unsure about permissions, you can always look into plugin.yml file inside quester jar. This is what it currently looks like.

quester.admin:
    children:
        quester.modify: true
        quester.use: true
    default: op
quester.modify:
    default: op
quester.use:
    children:
        quester.use.help: true
        quester.use.start: true
        quester.use.npc: true
        quester.use.sign: true
        quester.use.list: true
        quester.use.show: true
        quester.use.profile: true
        quester.use.done: true
        quester.use.cancel: true
        quester.use.progress: true
        quester.use.quests: true
        quester.use.switch: true
    default: true
quester.use.start:
    children:
        quester.use.start.pick: true
        quester.use.start.random: true

As you can see, there is no star-notation defined, and simple "quester.use" node should cover most user interactions. (You need to separately add "quester.use.start"). To deny permissions from your opped staff memebers, I would try taking quester.admin first, then adding quester.use (and maybe quester.modify) after that.
But I believe conditions are not ignored by default in the latest dev build. Only way to ignore them should be to start quest by "/q player quest start ...... -f".

commented

I have attempted to take "quester.admin" and then following that with the other nodes in my file, but still had no luck.
Usually order in the permission nodes doesn't matter and they tend to work just fine. I'm a little confused why it would matter this time, and it's become clear to me that it doesn't as I have tried both orders and layouts.

commented

I have tested this and I can confirm that permissions are not working as intended in some cases. I will change permission nodes to fix this problem.

However, this bug should in no way affect your original intent of making players with quester.admin permission not ignore conditions. As of the last build, nobody ignores conditions by default, and ignoring the conditions on quest start must be forced by command.

commented

Well, it appears that conditions are not ignored in either case, even starting from the NPC. Which is a relief.
If anything, it should be a node itself to ignore the conditions or a configuration option. o.O
But that's just my opinion I suppose.
Remembering to do things via a command I want disabled to force NPC interaction, seems a bit silly.

commented

The command will not force NPC interaction, it will force quest start no matter what conditions or flags there are. Actual permission problem should be fixed in the next build.

commented

No no >.<
I want to force NPC interaction, and disable all command usage to start quests..

You've been talking like using that command is the only option to follow conditions for OPs, which is why I said I didn't want to have to use that command. >.o

commented

I have tried using the child permissions and nodes without '*'
But I promise you, in the Dev Build you have made available the moment I throw on quester.admin in negative form, it doesn't matter whatever else I do with nodes, I cannot interact with him.

I don't know why you seem to ignore the fact that I have tried to tell you the nodes don't seem to work together, that I cannot negate "admin" and use any of the following:

- quester.use
- quester.use.start
- quester.use.npc

to get it working again...

This:

groups:
default:
permissions:
- quester.use
- quester.use.start
- quester.use.npc
- ^quester.admin

Is telling everyone on server that we don't have permissions to talk to any of the NPC's...

Please don't do this again to me, I always feel like you're only reading half of my cries for help and then immediately deeming them nothing or resolved when you apparently feel that I'm just being stupid about things.

commented

Alright, I will investigate, but please try taking "quester.admin" permission BEFORE you add another ones as I suggested. The reason it is not working might be permission plugin giving players permissions at first, but then taking them again because they are all contained in admin perm.