LuckPerms

LuckPerms

905k Downloads

Using any special character breaks the plugin

MakeItGame opened this issue ยท 2 comments

commented

Description

I was using the plugin normaly but then noticed that up to one point my new roles did not show at all in my chat/tab/scorebaord. After trying everything to fix it, it could not be fixed, so i purged the database and remade it from scratch (backups were corrupt). then when i did all the roles again, everything worked up to the point where i created the role with the special sign again ( : ). so i guess that is what causes the plugin to break
(i have essentialsX + essentialsXChat installed for chat plugin and https://www.spigotmc.org/resources/tab-1-5-1-21-1.57806/ as my tab plugin, and on both everything works fine with all roles until i create that one role)

Reproduction Steps

/lp editor
[in editor]
create a new role that has in the displayname and prefix the sign ":" and save it
Give an player on the server the role

Expected Behaviour

the role will show up on the chat, tablist and scoreboard (used placeholder api and never had any issues up to this point)

Server Details

CraftBukkit- version 3871-Spigot-d2eba2c-3f9263b (MC: 1.20.1) (API Version 1.20.1-R0.1-Snapshot)

LuckPerms Version

v5.4.139

Logs and Configs

https://gist.github.com/MakeItGame/8447477739aedf6ca5ae487957eb54e4
https://gist.github.com/MakeItGame/fcb5553d63cde0c4ad2c56978e33f4d5
https://gist.github.com/MakeItGame/1c30f6caac797eb70f1b39a2021a7812

Extra Details

No response

commented

The term "displayname" in LP is slightly misleading - it is not for user-facing display. It's only for overriding the internal name of the group. 99.9% of servers have no reason to touch it. User-facing display should use meta (i.e. prefixes/suffixes or a custom meta key) - this is the proper resolution of your problem.

Had you tried to set this display name ingame, LP should have thrown an error and not permitted the invalid displayname. Unfortunately, we know the editor bypasses at least one safety check, it seems this is a second safety check it bypasses.

commented

It seems I was mistaken when I said this was an illegal displayname - I cannot reproduce any issues on Paper 1.21.1-116, LP v5.4.141, and PlaceholderAPI v2.11.6 - running /lp group default setdisplayname :invalid works as expected and causes no issues.

However, upon further inspection of your logs, it appears your server has been reloaded several times, which is unsupported (why?). If you can reproduce after a restart with no errors, and provide evidence that Luckperms is throwing an error and not just display plugins, please re-open this issue.