diff --git a/proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLogin.java b/proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLogin.java index 33febbe94..0cd589ee9 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLogin.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLogin.java @@ -143,7 +143,7 @@ public class ServerLogin implements MinecraftPacket { public int expectedMaxLength(ByteBuf buf, Direction direction, ProtocolVersion version) { // Accommodate the rare (but likely malicious) use of UTF-8 usernames, since it is technically // legal on the protocol level. - int base = 1 + (16 * 4); + int base = 1 + (16 * 3); // Adjustments for Key-authentication if (version.compareTo(ProtocolVersion.MINECRAFT_1_19) >= 0) { if (version.compareTo(ProtocolVersion.MINECRAFT_1_19_3) < 0) { diff --git a/proxy/src/main/java/com/velocitypowered/proxy/server/VelocityRegisteredServer.java b/proxy/src/main/java/com/velocitypowered/proxy/server/VelocityRegisteredServer.java index dc671414d..fe28ae00e 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/server/VelocityRegisteredServer.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/server/VelocityRegisteredServer.java @@ -155,9 +155,10 @@ public class VelocityRegisteredServer implements RegisteredServer, ForwardingAud */ public boolean sendPluginMessage(ChannelIdentifier identifier, ByteBuf data) { for (ConnectedPlayer player : players.values()) { - VelocityServerConnection connection = player.getConnectedServer(); - if (connection != null && connection.getServer() == this) { - return connection.sendPluginMessage(identifier, data); + VelocityServerConnection serverConnection = player.getConnectedServer(); + if (serverConnection != null && serverConnection.getConnection() != null + && serverConnection.getServer() == this) { + return serverConnection.sendPluginMessage(identifier, data); } }