mc-protocol

Protocol specification of the current minecraft release / snapshot. Most useful when developing with ProtocolLib.

View on GitHub

1.21.11 Pre-Release 3 (Snapshot)

Series Java Runtime Java Version Protocol Version World Version Resource Pack Version Data Pack Version Build Timestamp (UTC)
main java-runtime-delta 21 1073742105 4665 75.0 94.0 25/11/2025 13:53:39

Handshake (Serverbound)

0x00 - Client Intention (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 protocolVersion int int
1 0 hostName String String
2 1 port int int
3 0 intention ClientIntent ClientIntent

Status (Clientbound)

0x00 - Status Response (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 status ServerStatus ServerStatus

0x01 - Pong Response (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 time long long

Status (Serverbound)

0x00 - Status Request (C ➔ S)

Packet has no fields

0x01 - Ping Request (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 time long long

Login (Clientbound)

0x00 - Login Disconnect (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 reason Component Component

0x01 - Hello (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 serverId String String
1 0 publicKey byte[] byte[]
2 1 challenge byte[] byte[]
3 0 shouldAuthenticate boolean boolean

0x02 - Login Finished (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 gameProfile GameProfile GameProfile

0x03 - Login Compression (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 compressionThreshold int int

0x04 - Custom Query (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 transactionId int int
1 0 payload CustomQueryPayload CustomQueryPayload
Index Type Index Name Raw Type Full Type
0 0 key Identifier Identifier

Login (Serverbound)

0x00 - Hello (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 name String String
1 0 profileId UUID UUID

0x01 - Key (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 keybytes byte[] byte[]
1 1 encryptedChallenge byte[] byte[]

0x02 - Custom Query Answer (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 transactionId int int
1 0 payload CustomQueryAnswerPayload CustomQueryAnswerPayload

0x03 - Login Acknowledged (C ➔ S)

Packet has no fields

Index Type Index Name Raw Type Full Type
0 0 key Identifier Identifier
1 0 payload byte[] byte[]

Configuration (Clientbound)

Index Type Index Name Raw Type Full Type
0 0 key Identifier Identifier

0x01 - Custom Payload (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 payload CustomPacketPayload CustomPacketPayload

0x02 - Disconnect (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 reason Component Component

0x03 - Finish Configuration (S ➔ C)

Packet has no fields

0x04 - Keep Alive (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id long long

0x05 - Ping (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int

0x06 - Reset Chat (S ➔ C)

Packet has no fields

0x07 - Registry Data (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 registry ResourceKey ResourceKey<? extends Registry<?>>
1 0 entries List List<RegistrySynchronization$PackedRegistryEntry>

0x08 - Resource Pack Pop (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id Optional Optional<UUID>

0x09 - Resource Pack Push (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id UUID UUID
1 0 url String String
2 1 hash String String
3 0 required boolean boolean
4 0 prompt Optional Optional<Component>
Index Type Index Name Raw Type Full Type
0 0 key Identifier Identifier
1 0 payload byte[] byte[]

0x0B - Transfer (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 host String String
1 0 port int int

0x0C - Update Enabled Features (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 features Set Set<Identifier>

0x0D - Update Tags (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 tags Map Map<ResourceKey<? extends Registry<?>>, TagNetworkSerialization$NetworkPayload>

0x0E - Select Known Packs (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 knownPacks List List<KnownPack>

0x0F - Custom Report Details (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 details Map Map<String, String>
Index Type Index Name Raw Type Full Type
0 0 links List List<ServerLinks$UntrustedEntry>

0x11 - Clear Dialog (S ➔ C)

Packet has no fields

0x12 - Show Dialog (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 dialog Holder Holder<Dialog>

0x13 - Code Of Conduct (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 codeOfConduct String String

Configuration (Serverbound)

0x00 - Client Information (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 information ClientInformation ClientInformation
Index Type Index Name Raw Type Full Type
0 0 key Identifier Identifier
1 0 payload byte[] byte[]

0x02 - Custom Payload (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 payload CustomPacketPayload CustomPacketPayload

0x03 - Finish Configuration (C ➔ S)

Packet has no fields

0x04 - Keep Alive (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id long long

0x05 - Pong (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id int int

0x06 - Resource Pack (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id UUID UUID
1 0 action ServerboundResourcePackPacket$Action ServerboundResourcePackPacket$Action

0x07 - Select Known Packs (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 knownPacks List List<KnownPack>

0x08 - Custom Click Action (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id Identifier Identifier
1 0 payload Optional Optional<Tag>

0x09 - Accept Code Of Conduct (C ➔ S)

Packet has no fields

Game (Clientbound)

0x00 - Bundle Delimiter (S ➔ C)

Packet has no fields

0x01 - Add Entity (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 uuid UUID UUID
2 0 type EntityType EntityType<?>
3 0 x double double
4 1 y double double
5 2 z double double
6 0 movement Vec3 Vec3
7 0 xRot byte byte
8 1 yRot byte byte
9 2 yHeadRot byte byte
10 1 data int int

0x02 - Animate (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 1 action int int

0x03 - Award Stats (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 stats Object2IntMap Object2IntMap<Stat<?>>

0x04 - Block Changed Ack (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 sequence int int

0x05 - Block Destruction (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 pos BlockPos BlockPos
2 1 progress int int

0x06 - Block Entity Data (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 type BlockEntityType BlockEntityType<?>
2 0 tag CompoundTag CompoundTag

0x07 - Block Event (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 b0 int int
2 1 b1 int int
3 0 block Block Block

0x08 - Block Update (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 blockState BlockState BlockState

0x09 - Boss Event (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id UUID UUID
1 0 operation ClientboundBossEventPacket$Operation ClientboundBossEventPacket$Operation

0x0A - Change Difficulty (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 difficulty Difficulty Difficulty
1 0 locked boolean boolean

0x0B - Chunk Batch Finished (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 batchSize int int

0x0C - Chunk Batch Start (S ➔ C)

Packet has no fields

0x0D - Chunks Biomes (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 chunkBiomeData List List<ClientboundChunksBiomesPacket$ChunkBiomeData>

0x0E - Clear Titles (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 resetTimes boolean boolean

0x0F - Command Suggestions (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 1 start int int
2 2 length int int
3 0 suggestions List List<ClientboundCommandSuggestionsPacket$Entry>

0x10 - Commands (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 rootIndex int int
1 0 entries List List<ClientboundCommandsPacket$Entry>

0x11 - Container Close (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 containerId int int

0x12 - Container Set Content (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 1 stateId int int
2 0 items List List<ItemStack>
3 0 carriedItem ItemStack ItemStack

0x13 - Container Set Data (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 1 id int int
2 2 value int int

0x14 - Container Set Slot (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 1 stateId int int
2 2 slot int int
3 0 itemStack ItemStack ItemStack
Index Type Index Name Raw Type Full Type
0 0 key Identifier Identifier

0x16 - Cooldown (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 cooldownGroup Identifier Identifier
1 0 duration int int

0x17 - Custom Chat Completions (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 action ClientboundCustomChatCompletionsPacket$Action ClientboundCustomChatCompletionsPacket$Action
1 0 entries List List<String>

0x18 - Custom Payload (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 payload CustomPacketPayload CustomPacketPayload

0x19 - Damage Event (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 sourceType Holder Holder<DamageType>
2 1 sourceCauseId int int
3 2 sourceDirectId int int
4 0 sourcePosition Optional Optional<Vec3>

0x1A - Debug Block Value (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 blockPos BlockPos BlockPos
1 0 update DebugSubscription$Update DebugSubscription$Update<?>

0x1B - Debug Chunk Value (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 chunkPos ChunkPos ChunkPos
1 0 update DebugSubscription$Update DebugSubscription$Update<?>

0x1C - Debug Entity Value (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 update DebugSubscription$Update DebugSubscription$Update<?>

0x1D - Debug Event (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 event DebugSubscription$Event DebugSubscription$Event<?>

0x1E - Debug Sample (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 sample long[] long[]
1 0 debugSampleType RemoteDebugSampleType RemoteDebugSampleType

0x1F - Delete Chat (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 messageSignature MessageSignature$Packed MessageSignature$Packed

0x20 - Disconnect (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 reason Component Component

0x21 - Disguised Chat (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 message Component Component
1 0 chatType ChatType$Bound ChatType$Bound

0x22 - Entity Event (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 eventId byte byte

0x23 - Entity Position Sync (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 values PositionMoveRotation PositionMoveRotation
2 0 onGround boolean boolean

0x24 - Explode (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 center Vec3 Vec3
1 0 radius float float
2 0 blockCount int int
3 0 playerKnockback Optional Optional<Vec3>
4 0 explosionParticle ParticleOptions ParticleOptions
5 0 explosionSound Holder Holder<SoundEvent>
6 0 blockParticles WeightedList WeightedList<ExplosionParticleInfo>

0x25 - Forget Level Chunk (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 pos ChunkPos ChunkPos

0x26 - Game Event (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 event ClientboundGameEventPacket$Type ClientboundGameEventPacket$Type
1 0 param float float

0x27 - Game Test Highlight Pos (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 absolutePos BlockPos BlockPos
1 1 relativePos BlockPos BlockPos

0x28 - Mount Screen Open (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 1 inventoryColumns int int
2 2 entityId int int

0x29 - Hurt Animation (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 yaw float float

0x2A - Initialize Border (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 newCenterX double double
1 1 newCenterZ double double
2 2 oldSize double double
3 3 newSize double double
4 0 lerpTime long long
5 0 newAbsoluteMaxSize int int
6 1 warningBlocks int int
7 2 warningTime int int

0x2B - Keep Alive (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id long long

0x2C - Level Chunk With Light (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 x int int
1 1 z int int
2 0 chunkData ClientboundLevelChunkPacketData ClientboundLevelChunkPacketData
3 0 lightData ClientboundLightUpdatePacketData ClientboundLightUpdatePacketData

0x2D - Level Event (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 type int int
1 0 pos BlockPos BlockPos
2 1 data int int
3 0 globalEvent boolean boolean

0x2E - Level Particles (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 x double double
1 1 y double double
2 2 z double double
3 0 xDist float float
4 1 yDist float float
5 2 zDist float float
6 3 maxSpeed float float
7 0 count int int
8 0 overrideLimiter boolean boolean
9 1 alwaysShow boolean boolean
10 0 particle ParticleOptions ParticleOptions

0x2F - Light Update (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 x int int
1 1 z int int
2 0 lightData ClientboundLightUpdatePacketData ClientboundLightUpdatePacketData

0x30 - Login (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 playerId int int
1 0 hardcore boolean boolean
2 0 levels Set Set<ResourceKey<Level>>
3 1 maxPlayers int int
4 2 chunkRadius int int
5 3 simulationDistance int int
6 1 reducedDebugInfo boolean boolean
7 2 showDeathScreen boolean boolean
8 3 doLimitedCrafting boolean boolean
9 0 commonPlayerSpawnInfo CommonPlayerSpawnInfo CommonPlayerSpawnInfo
10 4 enforcesSecureChat boolean boolean

0x31 - Map Item Data (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 mapId MapId MapId
1 0 scale byte byte
2 0 locked boolean boolean
3 0 decorations Optional Optional<List<MapDecoration>>
4 1 colorPatch Optional Optional<MapItemSavedData$MapPatch>

0x32 - Merchant Offers (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 0 offers MerchantOffers MerchantOffers
2 1 villagerLevel int int
3 2 villagerXp int int
4 0 showProgress boolean boolean
5 1 canRestock boolean boolean

0x33 - Pos (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 xa short short
2 1 ya short short
3 2 za short short
4 0 yRot byte byte
5 1 xRot byte byte
6 0 onGround boolean boolean
7 1 hasRot boolean boolean
8 2 hasPos boolean boolean

0x34 - Pos Rot (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 xa short short
2 1 ya short short
3 2 za short short
4 0 yRot byte byte
5 1 xRot byte byte
6 0 onGround boolean boolean
7 1 hasRot boolean boolean
8 2 hasPos boolean boolean

0x35 - Move Minecart (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 lerpSteps List List<NewMinecartBehavior$MinecartStep>

0x36 - Rot (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 xa short short
2 1 ya short short
3 2 za short short
4 0 yRot byte byte
5 1 xRot byte byte
6 0 onGround boolean boolean
7 1 hasRot boolean boolean
8 2 hasPos boolean boolean

0x37 - Move Vehicle (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 position Vec3 Vec3
1 0 yRot float float
2 1 xRot float float

0x38 - Open Book (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 hand InteractionHand InteractionHand

0x39 - Open Screen (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 0 type MenuType MenuType<?>
2 0 title Component Component

0x3A - Open Sign Editor (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 isFrontText boolean boolean

0x3B - Ping (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int

0x3C - Pong Response (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 time long long

0x3D - Place Ghost Recipe (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 0 recipeDisplay RecipeDisplay RecipeDisplay

0x3E - Player Abilities (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 invulnerable boolean boolean
1 1 isFlying boolean boolean
2 2 canFly boolean boolean
3 3 instabuild boolean boolean
4 0 flyingSpeed float float
5 1 walkingSpeed float float

0x3F - Player Chat (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 globalIndex int int
1 0 sender UUID UUID
2 1 index int int
3 0 signature MessageSignature MessageSignature
4 0 body SignedMessageBody$Packed SignedMessageBody$Packed
5 0 unsignedContent Component Component
6 0 filterMask FilterMask FilterMask
7 0 chatType ChatType$Bound ChatType$Bound

0x40 - Player Combat End (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 duration int int

0x41 - Player Combat Enter (S ➔ C)

Packet has no fields

0x42 - Player Combat Kill (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 playerId int int
1 0 message Component Component

0x43 - Player Info Remove (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 profileIds List List<UUID>

0x44 - Player Info Update (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 actions EnumSet EnumSet<ClientboundPlayerInfoUpdatePacket$Action>
1 0 entries List List<ClientboundPlayerInfoUpdatePacket$Entry>

0x45 - Player Look At (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 x double double
1 1 y double double
2 2 z double double
3 0 entity int int
4 0 fromAnchor EntityAnchorArgument$Anchor EntityAnchorArgument$Anchor
5 1 toAnchor EntityAnchorArgument$Anchor EntityAnchorArgument$Anchor
6 0 atEntity boolean boolean

0x46 - Player Position (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 change PositionMoveRotation PositionMoveRotation
2 0 relatives Set Set<Relative>

0x47 - Player Rotation (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 yRot float float
1 0 relativeY boolean boolean
2 1 xRot float float
3 1 relativeX boolean boolean

0x48 - Recipe Book Add (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entries List List<ClientboundRecipeBookAddPacket$Entry>
1 0 replace boolean boolean

0x49 - Recipe Book Remove (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 recipes List List<RecipeDisplayId>

0x4A - Recipe Book Settings (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 bookSettings RecipeBookSettings RecipeBookSettings

0x4B - Remove Entities (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityIds IntList IntList

0x4C - Remove Mob Effect (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 effect Holder Holder<MobEffect>

0x4D - Reset Score (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 owner String String
1 1 objectiveName String String

0x4E - Resource Pack Pop (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id Optional Optional<UUID>

0x4F - Resource Pack Push (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id UUID UUID
1 0 url String String
2 1 hash String String
3 0 required boolean boolean
4 0 prompt Optional Optional<Component>

0x50 - Respawn (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 commonPlayerSpawnInfo CommonPlayerSpawnInfo CommonPlayerSpawnInfo
1 0 dataToKeep byte byte

0x51 - Rotate Head (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 yHeadRot byte byte

0x52 - Section Blocks Update (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 sectionPos SectionPos SectionPos
1 0 positions short[] short[]
2 0 states BlockState[] BlockState[]

0x53 - Select Advancements Tab (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 tab Identifier Identifier

0x54 - Server Data (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 motd Component Component
1 0 iconBytes Optional Optional<byte[]>

0x55 - Set Action Bar Text (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 text Component Component

0x56 - Set Border Center (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 newCenterX double double
1 1 newCenterZ double double

0x57 - Set Border Lerp Size (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 oldSize double double
1 1 newSize double double
2 0 lerpTime long long

0x58 - Set Border Size (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 size double double

0x59 - Set Border Warning Delay (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 warningDelay int int

0x5A - Set Border Warning Distance (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 warningBlocks int int

0x5B - Set Camera (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 cameraId int int

0x5C - Set Chunk Cache Center (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 x int int
1 1 z int int

0x5D - Set Chunk Cache Radius (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 radius int int

0x5E - Set Cursor Item (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 contents ItemStack ItemStack

0x5F - Set Default Spawn Position (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 respawnData LevelData$RespawnData LevelData$RespawnData

0x60 - Set Display Objective (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 slot DisplaySlot DisplaySlot
1 0 objectiveName String String

0x61 - Set Entity Data (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 packedItems List List<SynchedEntityData$DataValue<?>>
Index Type Index Name Raw Type Full Type
0 0 sourceId int int
1 1 destId int int

0x63 - Set Entity Motion (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 movement Vec3 Vec3

0x64 - Set Equipment (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entity int int
1 0 slots List List<Pair<EquipmentSlot, ItemStack>>

0x65 - Set Experience (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 experienceProgress float float
1 0 totalExperience int int
2 1 experienceLevel int int

0x66 - Set Health (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 health float float
1 0 food int int
2 1 saturation float float

0x67 - Set Held Slot (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 slot int int

0x68 - Set Objective (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 objectiveName String String
1 0 displayName Component Component
2 0 renderType ObjectiveCriteria$RenderType ObjectiveCriteria$RenderType
3 0 numberFormat Optional Optional<NumberFormat>
4 0 method int int

0x69 - Set Passengers (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 vehicle int int
1 0 passengers int[] int[]

0x6A - Set Player Inventory (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 slot int int
1 0 contents ItemStack ItemStack

0x6B - Set Player Team (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 method int int
1 0 name String String
2 0 players Collection Collection<String>
3 0 parameters Optional Optional<ClientboundSetPlayerTeamPacket$Parameters>

0x6C - Set Score (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 owner String String
1 1 objectiveName String String
2 0 score int int
3 0 display Optional Optional<Component>
4 1 numberFormat Optional Optional<NumberFormat>

0x6D - Set Simulation Distance (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 simulationDistance int int

0x6E - Set Subtitle Text (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 text Component Component

0x6F - Set Time (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 gameTime long long
1 1 dayTime long long
2 0 tickDayTime boolean boolean

0x70 - Set Title Text (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 text Component Component

0x71 - Set Titles Animation (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 fadeIn int int
1 1 stay int int
2 2 fadeOut int int

0x72 - Sound Entity (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 sound Holder Holder<SoundEvent>
1 0 source SoundSource SoundSource
2 0 id int int
3 0 volume float float
4 1 pitch float float
5 0 seed long long

0x73 - Sound (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 sound Holder Holder<SoundEvent>
1 0 source SoundSource SoundSource
2 0 x int int
3 1 y int int
4 2 z int int
5 0 volume float float
6 1 pitch float float
7 0 seed long long

0x74 - Start Configuration (S ➔ C)

Packet has no fields

0x75 - Stop Sound (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 name Identifier Identifier
1 0 source SoundSource SoundSource
Index Type Index Name Raw Type Full Type
0 0 key Identifier Identifier
1 0 payload byte[] byte[]

0x77 - System Chat (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 content Component Component
1 0 overlay boolean boolean

0x78 - Tab List (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 header Component Component
1 1 footer Component Component

0x79 - Tag Query (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 transactionId int int
1 0 tag CompoundTag CompoundTag

0x7A - Take Item Entity (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 itemId int int
1 1 playerId int int
2 2 amount int int

0x7B - Teleport Entity (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 change PositionMoveRotation PositionMoveRotation
2 0 relatives Set Set<Relative>
3 0 onGround boolean boolean

0x7C - Test Instance Block Status (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 status Component Component
1 0 size Optional Optional<Vec3i>

0x7D - Ticking State (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 tickRate float float
1 0 isFrozen boolean boolean

0x7E - Ticking Step (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 tickSteps int int

0x7F - Transfer (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 host String String
1 0 port int int

0x80 - Update Advancements (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 reset boolean boolean
1 0 added List List<AdvancementHolder>
2 0 removed Set Set<Identifier>
3 0 progress Map Map<Identifier, AdvancementProgress>
4 1 showAdvancements boolean boolean

0x81 - Update Attributes (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 attributes List List<ClientboundUpdateAttributesPacket$AttributeSnapshot>

0x82 - Update Mob Effect (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 effect Holder Holder<MobEffect>
2 1 effectAmplifier int int
3 2 effectDurationTicks int int
4 0 flags byte byte

0x83 - Update Recipes (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 itemSets Map Map<ResourceKey<RecipePropertySet>, RecipePropertySet>
1 0 stonecutterRecipes SelectableRecipe$SingleInputSet SelectableRecipe$SingleInputSet<StonecutterRecipe>

0x84 - Update Tags (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 tags Map Map<ResourceKey<? extends Registry<?>>, TagNetworkSerialization$NetworkPayload>

0x85 - Projectile Power (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 accelerationPower double double

0x86 - Custom Report Details (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 details Map Map<String, String>
Index Type Index Name Raw Type Full Type
0 0 links List List<ServerLinks$UntrustedEntry>

0x88 - Tracked Waypoint (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 operation ClientboundTrackedWaypointPacket$Operation ClientboundTrackedWaypointPacket$Operation
1 0 waypoint TrackedWaypoint TrackedWaypoint

0x89 - Clear Dialog (S ➔ C)

Packet has no fields

0x8A - Show Dialog (S ➔ C)

Index Type Index Name Raw Type Full Type
0 0 dialog Holder Holder<Dialog>

Game (Serverbound)

0x00 - Accept Teleportation (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id int int

0x01 - Block Entity Tag Query (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 transactionId int int
1 0 pos BlockPos BlockPos

0x02 - Select Bundle Item (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 slotId int int
1 1 selectedItemIndex int int

0x03 - Change Difficulty (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 difficulty Difficulty Difficulty

0x04 - Change Game Mode (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 mode GameType GameType

0x05 - Chat Ack (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 offset int int

0x06 - Chat Command (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 command String String

0x07 - Chat Command Signed (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 command String String
1 0 timeStamp Instant Instant
2 0 salt long long
3 0 argumentSignatures ArgumentSignatures ArgumentSignatures
4 0 lastSeenMessages LastSeenMessages$Update LastSeenMessages$Update

0x08 - Chat (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 message String String
1 0 timeStamp Instant Instant
2 0 salt long long
3 0 signature MessageSignature MessageSignature
4 0 lastSeenMessages LastSeenMessages$Update LastSeenMessages$Update

0x09 - Chat Session Update (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 chatSession RemoteChatSession$Data RemoteChatSession$Data

0x0A - Chunk Batch Received (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 desiredChunksPerTick float float

0x0B - Client Command (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 action ServerboundClientCommandPacket$Action ServerboundClientCommandPacket$Action

0x0C - Client Tick End (C ➔ S)

Packet has no fields

0x0D - Client Information (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 information ClientInformation ClientInformation

0x0E - Command Suggestion (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 command String String

0x0F - Configuration Acknowledged (C ➔ S)

Packet has no fields

0x10 - Container Button Click (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 1 buttonId int int

0x11 - Container Click (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 1 stateId int int
2 0 slotNum short short
3 0 buttonNum byte byte
4 0 clickType ClickType ClickType
5 0 changedSlots Int2ObjectMap Int2ObjectMap<HashedStack>
6 0 carriedItem HashedStack HashedStack

0x12 - Container Close (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 containerId int int

0x13 - Container Slot State Changed (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 slotId int int
1 1 containerId int int
2 0 newState boolean boolean
Index Type Index Name Raw Type Full Type
0 0 key Identifier Identifier
1 0 payload byte[] byte[]

0x15 - Custom Payload (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 payload CustomPacketPayload CustomPacketPayload

0x16 - Debug Subscription Request (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 subscriptions Set Set<DebugSubscription<?>>

0x17 - Edit Book (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 slot int int
1 0 pages List List<String>
2 0 title Optional Optional<String>

0x18 - Entity Tag Query (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 transactionId int int
1 1 entityId int int

0x19 - Interact (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 entityId int int
1 0 action ServerboundInteractPacket$Action ServerboundInteractPacket$Action
2 0 usingSecondaryAction boolean boolean

0x1A - Jigsaw Generate (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 levels int int
2 0 keepJigsaws boolean boolean

0x1B - Keep Alive (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id long long

0x1C - Lock Difficulty (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 locked boolean boolean

0x1D - Pos (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 x double double
1 1 y double double
2 2 z double double
3 0 yRot float float
4 1 xRot float float
5 0 onGround boolean boolean
6 1 horizontalCollision boolean boolean
7 2 hasPos boolean boolean
8 3 hasRot boolean boolean

0x1E - Pos Rot (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 x double double
1 1 y double double
2 2 z double double
3 0 yRot float float
4 1 xRot float float
5 0 onGround boolean boolean
6 1 horizontalCollision boolean boolean
7 2 hasPos boolean boolean
8 3 hasRot boolean boolean

0x1F - Rot (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 x double double
1 1 y double double
2 2 z double double
3 0 yRot float float
4 1 xRot float float
5 0 onGround boolean boolean
6 1 horizontalCollision boolean boolean
7 2 hasPos boolean boolean
8 3 hasRot boolean boolean

0x20 - Status Only (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 x double double
1 1 y double double
2 2 z double double
3 0 yRot float float
4 1 xRot float float
5 0 onGround boolean boolean
6 1 horizontalCollision boolean boolean
7 2 hasPos boolean boolean
8 3 hasRot boolean boolean

0x21 - Move Vehicle (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 position Vec3 Vec3
1 0 yRot float float
2 1 xRot float float
3 0 onGround boolean boolean

0x22 - Paddle Boat (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 left boolean boolean
1 1 right boolean boolean

0x23 - Pick Item From Block (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 includeData boolean boolean

0x24 - Pick Item From Entity (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 includeData boolean boolean

0x25 - Ping Request (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 time long long

0x26 - Place Recipe (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 containerId int int
1 0 recipe RecipeDisplayId RecipeDisplayId
2 0 useMaxItems boolean boolean

0x27 - Player Abilities (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 isFlying boolean boolean

0x28 - Player Action (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 direction Direction Direction
2 0 action ServerboundPlayerActionPacket$Action ServerboundPlayerActionPacket$Action
3 0 sequence int int

0x29 - Player Command (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id int int
1 0 action ServerboundPlayerCommandPacket$Action ServerboundPlayerCommandPacket$Action
2 1 data int int

0x2A - Player Input (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 input Input Input

0x2B - Player Loaded (C ➔ S)

Packet has no fields

0x2C - Pong (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id int int

0x2D - Recipe Book Change Settings (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 bookType RecipeBookType RecipeBookType
1 0 isOpen boolean boolean
2 1 isFiltering boolean boolean

0x2E - Recipe Book Seen Recipe (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 recipe RecipeDisplayId RecipeDisplayId

0x2F - Rename Item (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 name String String

0x30 - Resource Pack (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id UUID UUID
1 0 action ServerboundResourcePackPacket$Action ServerboundResourcePackPacket$Action

0x31 - Seen Advancements (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 action ServerboundSeenAdvancementsPacket$Action ServerboundSeenAdvancementsPacket$Action
1 0 tab Identifier Identifier

0x32 - Select Trade (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 item int int

0x33 - Set Beacon (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 primary Optional Optional<Holder<MobEffect>>
1 1 secondary Optional Optional<Holder<MobEffect>>

0x34 - Set Carried Item (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 slot int int

0x35 - Set Command Block (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 command String String
2 0 trackOutput boolean boolean
3 1 conditional boolean boolean
4 2 automatic boolean boolean
5 0 mode CommandBlockEntity$Mode CommandBlockEntity$Mode

0x36 - Set Command Minecart (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 entity int int
1 0 command String String
2 0 trackOutput boolean boolean

0x37 - Set Creative Mode Slot (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 slotNum short short
1 0 itemStack ItemStack ItemStack

0x38 - Set Jigsaw Block (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 name Identifier Identifier
2 1 target Identifier Identifier
3 2 pool Identifier Identifier
4 0 finalState String String
5 0 joint JigsawBlockEntity$JointType JigsawBlockEntity$JointType
6 0 selectionPriority int int
7 1 placementPriority int int

0x39 - Set Structure Block (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 updateType StructureBlockEntity$UpdateType StructureBlockEntity$UpdateType
2 0 mode StructureMode StructureMode
3 0 name String String
4 1 offset BlockPos BlockPos
5 0 size Vec3i Vec3i
6 0 mirror Mirror Mirror
7 0 rotation Rotation Rotation
8 1 data String String
9 0 ignoreEntities boolean boolean
10 1 strict boolean boolean
11 2 showAir boolean boolean
12 3 showBoundingBox boolean boolean
13 0 integrity float float
14 0 seed long long

0x3A - Set Test Block (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 position BlockPos BlockPos
1 0 mode TestBlockMode TestBlockMode
2 0 message String String

0x3B - Sign Update (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 lines String[] String[]
2 0 isFrontText boolean boolean

0x3C - Swing (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 hand InteractionHand InteractionHand

0x3D - Teleport To Entity (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 uuid UUID UUID

0x3E - Test Instance Block Action (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 pos BlockPos BlockPos
1 0 action ServerboundTestInstanceBlockActionPacket$Action ServerboundTestInstanceBlockActionPacket$Action
2 0 data TestInstanceBlockEntity$Data TestInstanceBlockEntity$Data

0x3F - Use Item On (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 blockHit BlockHitResult BlockHitResult
1 0 hand InteractionHand InteractionHand
2 0 sequence int int

0x40 - Use Item (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 hand InteractionHand InteractionHand
1 0 sequence int int
2 0 yRot float float
3 1 xRot float float

0x41 - Custom Click Action (C ➔ S)

Index Type Index Name Raw Type Full Type
0 0 id Identifier Identifier
1 0 payload Optional Optional<Tag>