Packet 30
InventoryTransactionPacket
HeaderID 30varuint
0Legacy Request IDItemStackLegacyRequestId · variable
1Legacy Set Item Slotsarray<LegacySetSlot> · variable
2TransactiononeOf<NormalTransactionData, InventoryMismatchData, ItemUseInventoryTransaction, ItemUseOnActorInventoryTransaction, ItemReleaseInventoryTransaction> · variable
Serialized fields
3 top-level fields0Legacy Request IDItemStackLegacyRequestId
- 0IDCompression
varint32
1Legacy Set Item SlotsoptionalLegacySetSlotas
array<LegacySetSlot>0Container EnumCompressionEnum-as-ValueContainerEnumNameas
uint8- 0
AnvilInputContainer - 1
AnvilMaterialContainer - 2
AnvilResultPreviewContainer - 3
SmithingTableInputContainer - 4
SmithingTableMaterialContainer - 5
SmithingTableResultPreviewContainer - 6
ArmorContainer - 7
LevelEntityContainer - 8
BeaconPaymentContainer - 9
BrewingStandInputContainer - 10
BrewingStandResultContainer - 11
BrewingStandFuelContainer - 12
CombinedHotbarAndInventoryContainer - 13
CraftingInputContainer - 14
CraftingOutputPreviewContainer - 15
RecipeConstructionContainer - 16
RecipeNatureContainer - 17
RecipeItemsContainer - 18
RecipeFoodContainer - 19
RecipeBlocksContainer - 20
RecipeFurnaceItemsContainer - 21
RecipeSearchContainer - 22
RecipeSearchBarContainer - 23
RecipeEquipmentContainer - 24
RecipeBookContainer - 25
EnchantingInputContainer - 26
EnchantingMaterialContainer - 27
FurnaceFuelContainer - 28
FurnaceIngredientContainer - 29
FurnaceResultContainer - 30
HorseEquipContainer - 31
HotbarContainer - 32
InventoryContainer - 33
ShulkerBoxContainer - 34
TradeIngredient1Container - 35
TradeIngredient2Container - 36
TradeResultPreviewContainer - 37
OffhandContainer - 38
CompoundCreatorInput - 39
CompoundCreatorOutputPreview - 40
ElementConstructorOutputPreview - 41
MaterialReducerInput - 42
MaterialReducerOutput - 43
LabTableInput - 44
LoomInputContainer - 45
LoomDyeContainer - 46
LoomMaterialContainer - 47
LoomResultPreviewContainer - 48
BlastFurnaceIngredientContainer - 49
SmokerIngredientContainer - 50
Trade2Ingredient1Container - 51
Trade2Ingredient2Container - 52
Trade2ResultPreviewContainer - 53
GrindstoneInputContainer - 54
GrindstoneAdditionalContainer - 55
GrindstoneResultPreviewContainer - 56
StonecutterInputContainer - 57
StonecutterResultPreviewContainer - 58
CartographyInputContainer - 59
CartographyAdditionalContainer - 60
CartographyResultPreviewContainer - 61
BarrelContainer - 62
CursorContainer - 63
CreatedOutputContainer - 64
SmithingTableTemplateContainer - 65
CrafterLevelEntityContainer - 66
DynamicContainer
- 0
- 1Slots
array<uint8>
2Transaction
oneOf<NormalTransactionData, InventoryMismatchData, ItemUseInventoryTransaction, ItemUseOnActorInventoryTransaction, ItemReleaseInventoryTransaction>0NormalTransactionData
NormalTransactionData0ActionsInventoryTransaction
0ActionsInventoryActionas
array<InventoryAction>0SourceInventorySource
0Source TypeCompressionEnum-as-ValueInventorySourceTypeas
varuint32- 0
Container Inventory - 1
Global Inventory - 2
World Interaction - 3
Creative Inventory - 4
Non Implemented Feature TODO
- 0
2Bit FlagsoptionalCompressionEnum-as-ValueInventorySourceFlagsas
varuint32- 0
No Flag - 1
World Interaction Random
- 0
- 1SlotCompression
varuint32 - 2From ItemNetworkItemStackDescriptor
- 3To ItemNetworkItemStackDescriptor
1InventoryMismatchData
InventoryMismatchData0ActionsInventoryTransaction
0ActionsInventoryActionas
array<InventoryAction>0SourceInventorySource
0Source TypeCompressionEnum-as-ValueInventorySourceTypeas
varuint32- 0
Container Inventory - 1
Global Inventory - 2
World Interaction - 3
Creative Inventory - 4
Non Implemented Feature TODO
- 0
2Bit FlagsoptionalCompressionEnum-as-ValueInventorySourceFlagsas
varuint32- 0
No Flag - 1
World Interaction Random
- 0
- 1SlotCompression
varuint32 - 2From ItemNetworkItemStackDescriptor
- 3To ItemNetworkItemStackDescriptor
2ItemUseInventoryTransaction
ItemUseInventoryTransaction0ActionsInventoryTransaction
0ActionsInventoryActionas
array<InventoryAction>0SourceInventorySource
0Source TypeCompressionEnum-as-ValueInventorySourceTypeas
varuint32- 0
Container Inventory - 1
Global Inventory - 2
World Interaction - 3
Creative Inventory - 4
Non Implemented Feature TODO
- 0
2Bit FlagsoptionalCompressionEnum-as-ValueInventorySourceFlagsas
varuint32- 0
No Flag - 1
World Interaction Random
- 0
- 1SlotCompression
varuint32 - 2From ItemNetworkItemStackDescriptor
- 3To ItemNetworkItemStackDescriptor
1Action TypeCompressionEnum-as-ValueItemUseActionTypeas
varint32- 0
Place - 1
Use - 2
Destroy - 3
Use As Attack
- 0
2Trigger TypeCompressionEnum-as-ValueItemUseTriggerTypeas
uint8- 0
Unknown - 1
Player Input - 2
Simulation Tick
- 0
- 4FaceCompression
uint8 - 5SlotCompression
varint32 - 10Target Block IdCompression
varuint32 11Client Interact PredictionEnum-as-ValueItemUsePredictedResultas
uint8- 0
Failure - 1
Success
- 0
12Client Cooldown StateEnum-as-ValueItemUseClientCooldownStateas
uint8- 0
Off - 1
On
- 0
3ItemUseOnActorInventoryTransaction
ItemUseOnActorInventoryTransaction0ActionsInventoryTransaction
0ActionsInventoryActionas
array<InventoryAction>0SourceInventorySource
0Source TypeCompressionEnum-as-ValueInventorySourceTypeas
varuint32- 0
Container Inventory - 1
Global Inventory - 2
World Interaction - 3
Creative Inventory - 4
Non Implemented Feature TODO
- 0
2Bit FlagsoptionalCompressionEnum-as-ValueInventorySourceFlagsas
varuint32- 0
No Flag - 1
World Interaction Random
- 0
- 1SlotCompression
varuint32 - 2From ItemNetworkItemStackDescriptor
- 3To ItemNetworkItemStackDescriptor
1Runtime IdActorRuntimeID
- 0Actor Runtime IDCompression
varuint64
2Action TypeCompressionEnum-as-ValueItemUseOnActorActionTypeas
varint32- 0
Interact - 1
Attack - 2
Item Interact
- 0
- 3SlotCompression
varint32
4ItemReleaseInventoryTransaction
ItemReleaseInventoryTransaction0ActionsInventoryTransaction
0ActionsInventoryActionas
array<InventoryAction>0SourceInventorySource
0Source TypeCompressionEnum-as-ValueInventorySourceTypeas
varuint32- 0
Container Inventory - 1
Global Inventory - 2
World Interaction - 3
Creative Inventory - 4
Non Implemented Feature TODO
- 0
2Bit FlagsoptionalCompressionEnum-as-ValueInventorySourceFlagsas
varuint32- 0
No Flag - 1
World Interaction Random
- 0
- 1SlotCompression
varuint32 - 2From ItemNetworkItemStackDescriptor
- 3To ItemNetworkItemStackDescriptor
1Action TypeCompressionEnum-as-ValueItemReleaseActionTypeas
varint32- 0
Release - 1
Use
- 0
- 2SlotCompression
varint32
Changelog
Stable releases
Changes between stable protocol releases.
No stable release changes are recorded for this packet.
Preview builds
Changes between Minecraft Preview protocol builds.
- Released
- Protocol
- 2192
Packet
1 entryChanged 1
- Added supporting type
HandSlot: Added enum type. - Added supporting type
HandSlot: Added enum valueMainhandwith value0. - Added supporting type
HandSlot: Added enum valueOffhandwith value1. - Changed supporting type
ItemUseInventoryTransaction: Added fieldHand(typeuint8). - Changed supporting type
ItemUseInventoryTransaction: MovedItemfrom field 6 to 7. - Changed supporting type
ItemUseInventoryTransaction: MovedFrom Positionfrom field 7 to 8. - Changed supporting type
ItemUseInventoryTransaction: MovedClick Positionfrom field 8 to 9. - Changed supporting type
ItemUseInventoryTransaction: MovedTarget Block Idfrom field 9 to 10. - Changed supporting type
ItemUseInventoryTransaction: MovedClient Interact Predictionfrom field 10 to 11. - Changed supporting type
ItemUseInventoryTransaction: MovedClient Cooldown Statefrom field 11 to 12.