Fix checksum error boundary in 1.21.9 and 1.21.11.#1187
Conversation
|
Why is the checksum an i8 and not u8? That almost certainly seems wrong Come to think of it PrismarineJS/node-minecraft-protocol#1442 doesn't seem to make sense either. Is there some inconsistency? |
|
@extremeheat wiki mentioned checksum is sign byte. |
|
Java doesn't have unsigned types. This is not relevant to a checksum which are almost always treated as unsigned. It doesn't make sense to have a signed checksum |
|
A 32 bit checksum will use all 32 bits, there is no "sign bit" left over |
|
Looks like the root issue is that there are different checksum fields with a mismatch of i8/u8... this should be fixed and nmp PR can be reverted |
|
But https://github.com/PrismarineJS/minecraft-data/blob/master/data/pc/1.21.8/protocol.json#L9045 is also i8, and this commit fix the issue I mentioned.😐 |
|
Yes, it's incorrectly i8 in some places and u8 in others. Being fixed in #1188 and PrismarineJS/node-minecraft-protocol#1489 |
fix PrismarineJS/node-minecraft-protocol#1488