0

I get this error when I try to connect to a Minecraft server using a slightly modified Minecraft client made from scratch in Java from here: Original Minecraft client Java code: Java sending handshake packets to minecraft server My modified version of the code above: https://pastebin.com/FmsBzKnm The error comes from somewhere here...


        socket.close();
        Socket socket2 = new Socket();

        while (!socket2.isConnected()) {
            socket2.connect(host, 4000);
            Thread.sleep(500);
        }

        DataOutputStream out2 = new DataOutputStream(socket2.getOutputStream());
        DataInputStream in2 = new DataInputStream(socket2.getInputStream());

        int packetId2 = getHandshakeAndReturn(version, address, port, 2, out2, in2);
        byte[] test = new byte[readVarInt(in2)];
        in2.readFully(test);
        System.out.println(new String(test));

When I run this I get this error:

Internal Exception: io.netty.handler.codec.DecoderException: 
java.lang.IndexOutOfBoundsException: 
readerIndex(1) + length(1) exceeds writerIndex(1): 
PooledUnsafeDirectByteBuf(ridx: 1, widx: 1, cap: 1)

Note: This error comes from the server which I connected to, not from my code itself. The server disconnects me with the error above.

TonicBK
  • 1
  • 3

1 Answers1

0

Never mind, problem solved. I sent the wrong bytes after the handshake status 2 login.

TonicBK
  • 1
  • 3