Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.21.2/1.21.3 update #975

Merged
merged 64 commits into from
Oct 26, 2024
Merged

1.21.2/1.21.3 update #975

merged 64 commits into from
Oct 26, 2024

Conversation

booky10
Copy link
Collaborator

@booky10 booky10 commented Aug 30, 2024

Test build downloads: https://github.com/retrooper/packetevents/actions/runs/11483962127
This has been merged, please use https://ci.codemc.io/job/retrooper/job/packetevents/ instead.


Third snapshot was released last wednesday, so the release will probably still take some time.
Rc1 was released on thursday, so the release will probably happen next week tuesday.
This PR should be complete and ready, after testing.
Vanilla 1.21.2 and Spigot 1.21.2 are out, I've tested this PR on Fabric 1.21.2 and Spigot 1.21.2.
Additionally, I've tested this PR on 1.20.6, 1.16.2 and 1.8.8.

TODO

  • Update all registry mappings
  • Update packet mappings
    • Implement WrapperPlayServerRecipeBookSettings
    • Implement every implementation of RecipeDisplay...
    • Mark old recipe wrappers as obsolete, mojang has completely rewritten them
    • Update packet serialization structures of existing packets
      • ClientboundExplodePacket :(
      • ClientboundPlaceGhostRecipePacket
      • ClientboundPlayerPositionPacket
      • ClientboundSetTimePacket
      • ClientboundTeleportEntityPacket
      • ClientboundUpdateRecipesPacket
      • CommonPlayerSpawnInfo -> respawn packet + login packet
      • ServerboundEditBookPacket limits?
      • ServerboundPlaceRecipePacket
      • ServerboundPlayerInputPacket
      • ServerboundRecipeBookSeenRecipePacket
      • ClientboundGameProfilePacket/ClientboundLoginFinishedPacket
  • Update block tags / item tags
  • early testing using on fabric
  • Figure out how to handle attributes loosing their prefix
  • Check color nbt format for particles

Noteworthy changes:

  • Custom recipe ingredients no longer allow for item components to be assigned, may affect something
  • The player inventory or the item cursor can no longer be updated using magic numbers and normal slot change packets, this is now done with WrapperPlayServerSetPlayerInventory and WrapperPlayServerSetCursorItem respectively
    • Packetevents "transforms" incorrectly used WrapperPlayServerSetSlot packets to these new packets for now
  • Both the BOAT entity type and CHEST_BOAT entity types have been split into separate entity types for each boat type
  • Packetevents no longer defines base components of item types in code, but loads a generated version-specific definition from file

Fixes #1039

Could potentially solve retrooper#962, although I can't reproduce that issue

This may be caused by two different changes to packetevents:
1. We did a little memory optimization so only elements different to the vanilly registry get stored
2. We fixed an issue where some elements would not equal the "same" vanilla element

This could cause every custom element to just never be registered, so we now do explicit deep-equals checks before saving the vanilla element instead
@Bram1903
Copy link
Contributor

Booky on it again 💪🏻 Extremely cool to see you constantly working on the latest snapshot support, so PacketEvents supports the latest Minecraft release almost the moment it drops!

@booky10
Copy link
Collaborator Author

booky10 commented Oct 21, 2024

I've tested re-encoding all packets (especially recipes) with a fabric server and fabric client, so this PR should be ready
Should of course still be tested again after Paper (and Spigot) are done with upgrading to 1.21.2

@booky10 booky10 marked this pull request as ready for review October 22, 2024 16:08
@booky10
Copy link
Collaborator Author

booky10 commented Oct 22, 2024

1.21.2 has been released an hour ago and this PR has now been tested on Spigot 1.21.2.

Thanks mojang for fixing the salmon!
@booky10 booky10 changed the title 1.21.2 update 1.21.2/1.21.3 update Oct 23, 2024
@booky10
Copy link
Collaborator Author

booky10 commented Oct 23, 2024

Mojang has released 1.21.3, fixing crucial bugs, such as salmons being too small.
Tthis PR should still work fine, nothing changed on the server side - except salmons of course

@booky10 booky10 merged commit 52d92e6 into retrooper:2.0 Oct 26, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1.21.3 Velocity doesn't work
2 participants