Transient permissions not working
Closed this issue · 8 comments
Hey @lucko
First off, love the plugin and thanks so much for the support so far!
Heroes can grant permission-skills to players via class/level and remove them if they lose a level or change class. These permission skills are permission-nodes granted to the player as a transient permission. This is the example config for that. I can say 100% that the "permission-skill" has been granted to the player but the nodes aren't working for them. They cannot use this simple Lighter when restricted via WorldGuard
ArtisanCrafter:
usage: Provides Lighter, Shear, and LavaBucket Use.
permissions:
- wg.fire
- wg.lavabucket
- wg.shears
This pulls from WorldGuard's blacklist.txt which you can find the permission creation here.
#Lighters
[259,51]
ignore-groups=founder,admin,mod6
ignore-perms=wg.fire
on-use=deny,tell
message=Restricted
comment=fire starter!
My assumptions here.... something isnt working nicely with the SuperPermissions between LuckPerms and Heroes that was working fine via zPerms or bPerms. We are a rather large server and this move was done because I do feel that LuckPerms is the better permissions, I just need to make sure all systems are functional before fully moving.
@Kainzo Did it solve the issue for you? At least for us the issue persists. For us it isn't WorldGuard, but Crackshot.
Just decompiled Crackshot, the issue there is still related to this ticket, but just slightly different.
Basically, it's using attachments to set a permission only for a split second.
That's one example, but you get the point.
The LP implementation of PermissionAttachment doesn't apply changes instantly - they're applied and propagated to the Users permission calculators asynchronously to avoid blocking the main thread whilst the caches are re-populated.
I'll have to work around this, as I can see it's going to become an issue.
Getting this from time to time:
https://pastebin.com/RCiJnjCC
Yeah, that's thrown whenever a plugin sets a permission via an attachment.
Working on a fix atm.
Thanks a lot! Will test when we updated our plugins depending on LP API and we start on that when the api refatoring is done.