LuckPermsπ
Context Integrationπ
Any BetonQuest tag (global and per-player) can be used as a LuckPerms context. This means that a player needs the specified tag for a permission
to be true - this removes the need for tons of permission add ... actions as you can hook your existing
quest progress tags right into LuckPerms permission
contexts.
The syntax is as follows:
| key | value |
|---|---|
| betonquest:tag:PACKAGE_NAME>TAG_NAME | true |
| betonquest:globaltag:PACKAGE_NAME>TAG_NAME | true |
| betonquest:tag:myPackage>tagName | true |
| betonquest:globaltag:myQuest>someTag | true |
Check the Luck Perms documentation for an in-depth explanation on what contexts are and how to add them to permissions.
Permissionsπ
If you prefer to directly add or remove permissions without triggering the LuckPerms changelog chat notifications,
you can utilize the luckperms addPermission and luckperms removePermission actions.
You also have the possibility to assign groups to the player via the group.<GroupName> permission.
actions:
addDefaultGroup: "luckperms addPermission permission:group.default,group.quester" #(1)!
addNegated: "luckperms addPermission permission:tutorial.done value:false" #(2)!
addWithContext: "luckperms addPermission permission:group.legend context:server;lobby" #(3)!
addTemporary: "luckperms addPermission permission:donator.level.one expiry:20 unit:MINUTES" #(4)!
removeTutorial: "luckperms removePermission permission:tutorial.done"
removeMultiple: "luckperms removePermission permission:tutorial.done,group.default" #(5)!
- You can define single or multiple permissions with the
permissionkey. You need to separate them with a comma. - You can define Permissions with a optional
valueoffalseto negate them and give them to the player. If you want to override the value of the permission, you can use thevalueargument and set it totrue. - You can also add optional
contexts to the permissions likeserver;lobby. Read more about contexts here. You can define multiple contexts by separating them with a comma. - With the key
expiryyou can define the time until the permission expires. There can only be one expiry argument. If you dont use theunitparameter, it defaults do DAYS. Other units can be found here. - You can remove multiple permissions at once by separating them with a comma.
You can also add context, value and expiry to the removePermission action
but its not recommended as it only removes exact matches.
Instead only use the permission to remove.