LuckPerms

LuckPerms

41.4k Downloads

LP is not letting some plugins access the default group

ThatOverPowered opened this issue ยท 1 comments

commented

Description

Im using AGMRanks plugin (https://www.spigotmc.org/resources/agm-ranks-rankup-plugin.75787/)

Long story short, the plugin needs to access the "default" group to work, which LP is not letting it do so.
I contacted the AGMRanks author thinking it was a problem ralted to his plugin, we discuss about it, and we reach the conclusion that this issue is caused by LP.

This code might be useful for the LP dev team:
https://git.agmdev.xyz/AGMRanks/blob/master/src/main/java/me/ashenguard/agmranks/ranks/RankManager.java#L45
https://git.agmdev.xyz/AGMRanks/blob/master/src/main/java/me/ashenguard/agmranks/Vault.java#L99

Reproduction Steps

Install AGMRanks and AGMCore (Dependency), Vault and LP.

AGMRanks will send a warn saying that plugin was disabled because there is no "default" group in the permission manager.

Expected Behaviour

AGMRanks should be able link/hook with the "default" group of LP

Server Details

git-Paper-66 (MC: 1.18) (Implementing API version 1.18-R0.1-SNAPSHOT)

LuckPerms Version

5.3.87

Logs and Configs

No response

Extra Details

No response

commented

By default, the Vault getGroups method returns the display name of all loaded groups.

@Override
public String[] getGroups() {
return this.plugin.getGroupManager().getAll().values().stream()
.map(this::groupName)
.toArray(String[]::new);
}

You can make it return the group ids instead by changing the vault-group-use-displaynames config option.

private String groupName(Group group) {
if (this.plugin.getConfiguration().get(ConfigKeys.VAULT_GROUP_USE_DISPLAYNAMES)) {
return group.getPlainDisplayName();
} else {
return group.getName();
}
}