diff --git a/proxy/src/main/java/com/velocitypowered/proxy/connection/client/HandshakeSessionHandler.java b/proxy/src/main/java/com/velocitypowered/proxy/connection/client/HandshakeSessionHandler.java index 4ba17624b..3948d0875 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/connection/client/HandshakeSessionHandler.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/connection/client/HandshakeSessionHandler.java @@ -118,6 +118,8 @@ public class HandshakeSessionHandler implements MinecraftSessionHandler { private void handleLogin(HandshakePacket handshake, InitialInboundConnection ic) { if (!ProtocolVersion.isSupported(handshake.getProtocolVersion())) { + // Bump connection into correct protocol state so that we can send the disconnect packet. + connection.setState(StateRegistry.LOGIN); ic.disconnectQuietly(Component.translatable() .key("multiplayer.disconnect.outdated_client") .arguments(Component.text(ProtocolVersion.SUPPORTED_VERSION_STRING))