Skip to content

Conversation

@Happy2018new
Copy link
Contributor

@Happy2018new Happy2018new commented Jul 12, 2025

This pull request fix so many packets (the data type for some fields), and the following is the reference list.
Note that when this pull request merged, #209 also can be closed.

  • See UpdateSubChunkBlocks, and you can find that the data type for Position is protocol.BlockPos which encoding by io.UBlockPos.

  • See PlayerAuthInput and PackedItemUseLegacyInventoryTransaction, and you can find that the correct marshal for field BlockPosition is io.UBlockPos.

  • See AddVolumeEntity, RemoveVolumeEntity and EntityNetId, and you can find that the data type for EntityRuntimeID is uint32 whcih encoding by io.Varuint32.

  • See AgentActionEvent and int, and you can find that the data type for Action is int32 which encoding by io.Int32.

  • See ChangeMobProperty and ActorUniqueID, and you can find that the data type for EntityUniqueID is int64 which encoding by io.Varint64.

  • See CommandBlockUpdate, and you can find that the data type for TickDelay is uint32 (unsigned int) which encoding by io.Uint32.

  • See LessonProgress, and you can find that the data type for Action is int32 which encoding by io.Varint32.

  • See OnScreenTextureAnimation, and you can find that the data type for AnimationType is uint32 (unsigned int) which encoding by io.Uint32.

  • See RequestChunkRadius, and you can find that the data type for MaxChunkRadius is byte which encoding by io.Uint8.

  • See RequestPermissions, and you can find that the data type for PermissionLevel is int32 which encoding by io.Varint32.

  • See SimpleEvent, and you can find that the data type for EventType is uint16 (unsigned short) which encoding by io.Uint16.

  • See StartGame which path is StartGamePacket/Settings (LevelSettings) and LevelSettings which path is LevelSettings/override force experimental gameplay has value, and you can find that the data type for ForceExperimentalGameplay is bool which encoding by io.Bool.

  • See LegacyTelemetryEventPacket, and you can find that the event which named AgentCreated has no data, but missing marshal in gophertunnel.

  • See PlayerArmorDamagePacket, and you can find that the data type for ArmourSlot is int32 which encoding by io.Varint32. Or you can look up this image.

image

@Happy2018new Happy2018new marked this pull request as draft July 12, 2025 11:36
@Happy2018new Happy2018new marked this pull request as ready for review July 12, 2025 11:37
@Happy2018new Happy2018new changed the title Protocol: Fix packet.UpdateSubChunkBlocks Protocol: Fix some packets Jul 13, 2025
@Happy2018new Happy2018new marked this pull request as draft July 13, 2025 04:52
@Happy2018new Happy2018new marked this pull request as ready for review July 13, 2025 05:09
@Happy2018new
Copy link
Contributor Author

Happy2018new commented Jul 13, 2025

All right, and ready for review.

@Happy2018new
Copy link
Contributor Author

Happy2018new commented Jul 13, 2025

Most changes are come from @CoozillaX, and I just compare these changes with documents which wrote by Mojang.

@Happy2018new Happy2018new changed the title Protocol: Fix some packets minecraft/protocol:: Fix some packets Aug 9, 2025
@Happy2018new Happy2018new changed the title minecraft/protocol:: Fix some packets minecraft/protocol: Fix some packets Aug 9, 2025
@Happy2018new
Copy link
Contributor Author

Is this pull request still considered? Has it been forgotten?
Sorry I mention this, but it have no response for about 30+ days...

Copy link
Collaborator

@TwistedAsylumMC TwistedAsylumMC left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a few things that I do not believe to be correct. I have gone over everything whilst looking at multiple sources + looking deeper into BDS. The docs are not a 100% reliable source so unless you can prove that the things I've commented on are actually correct, they should be reverted

@Happy2018new
Copy link
Contributor Author

Happy2018new commented Sep 4, 2025

All conversations have been solved, and ready for merge.

@Happy2018new
Copy link
Contributor Author

Happy2018new commented Oct 9, 2025

I confirmed everything again with the new docs, and my changes are still correct with current/latest mc version.

The following packets are failed to confirm due to the new docs not record them.

  • PlayerAuthInput
  • CommandBlockUpdate
  • StartGame
  • LegacyTelemertyEvent (Packet ID is 65)

@Happy2018new
Copy link
Contributor Author

Happy2018new commented Oct 15, 2025

Hello, is there anything I have not done with this pull request? If so, please tell me so I can start to work on it. (This PR takes about 3 month and still not merge)

@TwistedAsylumMC TwistedAsylumMC merged commit 5fe8be4 into Sandertv:master Oct 15, 2025
1 check passed
@TwistedAsylumMC
Copy link
Collaborator

Apologies for taking a while to merge this, I completely forgot about it. Thanks for all the work!

@Happy2018new
Copy link
Contributor Author

You are welcome.

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.

2 participants