diff --git a/core/src/main/java/org/geysermc/geyser/network/GameProtocol.java b/core/src/main/java/org/geysermc/geyser/network/GameProtocol.java index 628053c31..598488067 100644 --- a/core/src/main/java/org/geysermc/geyser/network/GameProtocol.java +++ b/core/src/main/java/org/geysermc/geyser/network/GameProtocol.java @@ -246,7 +246,10 @@ public final class GameProtocol { * @param buffer */ private static void fakeItemRead(ByteBuf buffer) { - VarInts.readInt(buffer); // Runtime ID + int id = VarInts.readInt(buffer); // Runtime ID + if (id == 0) { // nothing more to read + return; + } buffer.skipBytes(2); // count VarInts.readUnsignedInt(buffer); // damage boolean hasNetId = buffer.readBoolean();