3
0
Mirror von https://github.com/GeyserMC/Geyser.git synchronisiert 2024-12-26 08:10:11 +01:00

Always replace spaces in usernames when using Floodgate

Bungeecord recently started checking usernames for spaces in the login start packet. To resolve this we just always send the username without spaces in the login start packet. Floodgate is still able to get the real username of the Bedrock player and Floodgate is also still in charge of the final username.
Dieser Commit ist enthalten in:
Tim203 2021-05-30 00:22:11 +02:00
Ursprung 934fc12b16
Commit 360e2f4b9a
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 064EE9F5BF7C3EE8

Datei anzeigen

@ -581,7 +581,14 @@ public class GeyserSession implements CommandSender {
protocol = new MinecraftProtocol(authenticationService.getSelectedProfile(), authenticationService.getAccessToken()); protocol = new MinecraftProtocol(authenticationService.getSelectedProfile(), authenticationService.getAccessToken());
} else { } else {
protocol = new MinecraftProtocol(username); // always replace spaces when using Floodgate,
// as usernames with spaces cause issues with Bungeecord's login cycle
String validUsername = username;
if (remoteAuthType == AuthType.FLOODGATE) {
validUsername = username.replace(' ', '_');
}
protocol = new MinecraftProtocol(validUsername);
} }
connectDownstream(); connectDownstream();