LuckPerms mcchat incompatibility #96

Closed
opened 2019-05-20 21:26:40 +00:00 by NorbiPeti · 0 comments
NorbiPeti commented 2019-05-20 21:26:40 +00:00 (Migrated from github.com)

The LuckPerms plugin loads the user permissions on login, but it also performs a permissible injection (PEX possibly does that too, but we didn't call the login event before) which expects a CraftHumanEntity. (The reason we need to call the login event now is that otherwise, it refuses to get permissions sync because it'd need to load them.) This causes an exception and rejects the (fake) player login when using mcchat.

Possible solutions:

  1. Ignore the problem and go back to PEX (I had difficulties with default permissions for some reason but that might be fixed); do not fire login events
  2. Get LuckPerms to load user data some other way, might not be easy, probably not possible without adding plugin-specific code
  3. Extend from CraftPlayer without an NMS entity, would need to override every method to ensure there are no NPEs; a problem is that we already extend DiscordSenderBase
The LuckPerms plugin loads the user permissions on login, but it also performs a permissible injection (PEX possibly does that too, but we didn't call the login event before) which expects a CraftHumanEntity. (The reason we need to call the login event now is that otherwise, it refuses to get permissions sync because it'd need to load them.) This causes an exception and rejects the (fake) player login when using `mcchat`. Possible solutions: 1. Ignore the problem and go back to PEX (I had difficulties with default permissions for some reason but that might be fixed); do not fire login events 2. Get LuckPerms to load user data some other way, might not be easy, probably not possible without adding plugin-specific code 3. Extend from CraftPlayer without an NMS entity, would need to override every method to ensure there are no NPEs; a problem is that we already extend DiscordSenderBase
Sign in to join this conversation.
No description provided.