Fixed client crashing when receiving vanilla potion effect packets #1559
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #1460 and fixes #1553
Some more advanced servers connect players to a lobby before sending the player to the proper receiving server. This allows for multiple players across multiple versions of modded and vanilla minecraft to interact on the same server. However, AM2's modifications to potion packets was causing issues if a player in a "vanilla" lobby was exposed to a potion effect. Vanilla potion packets are only 8 bytes in size (int, byte, byte, short) but AM2 potion packets are 11 bytes (int, int, byte, short), causing the client running AM2 to be unable to properly read vanilla packets. This pull request modifies potion packets to be read differently based on the size of the incoming packet and has been tested functional in singleplayer, multiplayer, and multiplayer vanilla with potions, beacons, and milk.
If anyone has suggestions to improve the asm modifications, let me know 😄
Also something screwed up the tabs in this file, but that's a separate topic.