| Player Rotation (Required) |
Vec2 |
0 |
Orientation of the player at the start of the tick. |
Vec2
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
|
| Position (Required) |
Vec3 |
1 |
Client predicted position at the end of the tick. |
Vec3
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
| Z (Required) |
float |
2 |
|
|
| Move Vector (Required) |
Vec2 |
2 |
The desired local space move direction of the player. |
Vec2
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
|
| Player Head Rotation (Required) |
float |
3 |
Effectively the same as the Y component of Player Rotation. |
| Input Data (Required) |
array<PlayerAuthInputData> |
4 |
Bitset of per-tick input flags (jumping, sneaking, gliding, collisions, etc.). Each flag gates additional optional fields below. |
| Input Mode (Required) |
varuint32 |
5 |
The input device the player is using (mouse/keyboard, touch, gamepad, motion controller). |
Enum Values:
| Index |
Value |
| 0 |
Undefined |
| 1 |
Mouse |
| 2 |
Touch |
| 3 |
GamePad |
| 4 |
Count |
|
| Play Mode (Required) |
varuint32 |
6 |
The play mode (normal or one of the reality/VR modes). |
Enum Values:
| Index |
Value |
| 0 |
Normal |
| 1 |
Teaser |
| 2 |
Screen |
| 3 |
ExitLevel |
| 4 |
NumModes |
|
| New Interaction Model (Required) |
varint32 |
7 |
The interaction model in use (classic, touch, or crosshair). |
Enum Values:
| Index |
Value |
| 0 |
Touch |
| 1 |
Crosshair |
| 2 |
Classic |
| 3 |
Count |
|
| Interact Rotation (Required) |
Vec2 |
8 |
The rotation the player is looking for interactions. |
Vec2
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
|
| Client Tick (Required) |
PlayerInputTick |
9 |
Which simulation frame client is on. |
PlayerInputTick
| Field Name |
Type |
Field Index |
Description |
| Input tick (Required) |
varuint64 |
0 |
In server authoritative movement mode the client supplies this in PlayerAuthInputPacket.
For any client-bound packets containing a tick, the server should supply the tick value corresponding to the most recently processed PlayerAuthInputPacket.
This allows the client to adjust any client predictions made while the packet was in flight.
If the packet is being sent to the client but not relating to data of the player or a client-predicted vehicle, it can be zero.
It is also acceptable to specify zero for players, although this may lead to minor visual flickers and less smooth application of CorrectPlayerMovePredictionPacket. |
|
| Pos Delta (Required) |
Vec3 |
10 |
Client predicted velocity at the end of the tick. |
Vec3
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
| Z (Required) |
float |
2 |
|
|
| Item Use Transaction |
PackedItemUseLegacyInventoryTransaction |
11 |
Item use transaction for this tick. Present only when the Input Data flags indicate a transaction occurred. |
PackedItemUseLegacyInventoryTransaction
| Field Name |
Type |
Field Index |
Description |
| Legacy Request ID (Required) |
ItemStackLegacyRequestId |
0 |
The legacy item stack request id associated with this item interaction. Zero means no legacy request. |
ItemStackLegacyRequestId
| Field Name |
Type |
Field Index |
Description |
| ID (Required) |
varint32 |
0 |
Raw Id (32 bit signed) |
|
| Legacy Set Item Slots |
array<LegacySetSlot> |
1 |
Only present when Legacy Request ID is valid. Lists container slots involved in the interaction. |
LegacySetSlot (Array Item)
| Field Name |
Type |
Field Index |
Description |
| Container Enum (Required) |
varuint8 |
0 |
The container enum name identifying which container slot set this belongs to. |
Enum Values:
| Index |
Value |
| 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 |
|
| Slots (Required) |
array<uint8> |
1 |
List of inventory slot indices within the given container. |
|
| Item Use Transaction (Required) |
ItemUseInventoryTransaction |
2 |
The reflected item use transaction performed on this auth-input tick. |
ItemUseInventoryTransaction
| Field Name |
Type |
Field Index |
Description |
| Actions (Required) |
InventoryTransaction |
0 |
Base inventory actions. Lists the inventory slot changes associated with this transaction. |
InventoryTransaction
| Field Name |
Type |
Field Index |
Description |
| Actions (Required) |
array<InventoryAction> |
0 |
List of inventory slot changes. Each action describes which container slot is changing and what the item descriptor transitions from and to. |
InventoryAction (Array Item)
| Field Name |
Type |
Field Index |
Description |
| Source (Required) |
InventorySource |
0 |
The inventory source identifying which container this action targets. |
InventorySource
| Field Name |
Type |
Field Index |
Description |
| Source Type (Required) |
varuint32 |
0 |
The inventory source type. |
Enum Values:
| Index |
Value |
| 0 |
Container Inventory |
| 1 |
Global Inventory |
| 2 |
World Interaction |
| 3 |
Creative Inventory |
| 4 |
Non Implemented Feature TODO |
|
| Container ID |
varint8 |
1 |
Container window ID. Present only for ContainerInventory and NonImplementedFeatureTODO source types. |
| Bit Flags |
varuint32 |
2 |
Source flags. Present only for WorldInteraction source type. |
Enum Values:
| Index |
Value |
| 0 |
No Flag |
| 1 |
World Interaction Random |
|
|
| Slot (Required) |
varuint32 |
1 |
The slot index within the source container. |
| From Item (Required) |
NetworkItemStackDescriptor |
2 |
The item descriptor representing the state of the slot before this action. |
| To Item (Required) |
NetworkItemStackDescriptor |
3 |
The item descriptor representing the desired state of the slot after this action. |
|
|
| Action Type (Required) |
varint32 |
1 |
The type of item use action performed. |
Enum Values:
| Index |
Value |
| 0 |
Place |
| 1 |
Use |
| 2 |
Destroy |
| 3 |
Use As Attack |
|
| Trigger Type (Required) |
varuint8 |
2 |
PlayerInput if a direct result of the player's initial button input. SimulationTick if the player is holding down input from a previous tick. |
Enum Values:
| Index |
Value |
| 0 |
Unknown |
| 1 |
Player Input |
| 2 |
Simulation Tick |
|
| Position (Required) |
BlockPos |
3 |
The position of the target block. |
BlockPos
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
varint32 |
0 |
|
| Y (Required) |
varint32 |
1 |
|
| Z (Required) |
varint32 |
2 |
|
|
| Face (Required) |
varuint8 |
4 |
The face of the target block that was clicked. |
| Slot (Required) |
varint32 |
5 |
The inventory slot of the item being used. |
| Item (Required) |
NetworkItemStackDescriptor |
6 |
The item stack descriptor of the item being used. |
| From Position (Required) |
Vec3 |
7 |
The player's position when this transaction was sent. |
Vec3
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
| Z (Required) |
float |
2 |
|
|
| Click Position (Required) |
Vec3 |
8 |
The position within the target block face that was clicked. |
Vec3
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
| Z (Required) |
float |
2 |
|
|
| Target Block Id (Required) |
varuint32 |
9 |
The runtime block state ID of the target block. |
| Client Interact Prediction (Required) |
uint8 |
10 |
Whether the client predicted the interaction would succeed. |
Enum Values:
| Index |
Value |
| 0 |
Failure |
| 1 |
Success |
|
| Client Cooldown State (Required) |
uint8 |
11 |
Whether the item is currently on cooldown on the client. |
|
|
|
| Item Stack Request |
ItemStackRequest |
12 |
Item stack request for this tick. Present only when the Input Data flags indicate a request occurred. |
ItemStackRequest
| Field Name |
Type |
Field Index |
Description |
| Client Request Id (Required) |
ItemStackRequestId |
0 |
|
ItemStackRequestId
| Field Name |
Type |
Field Index |
Description |
| ID (Required) |
varint32 |
0 |
Raw Id (32 bit signed) |
|
| Actions (Required) |
array<unknown> |
1 |
Action list. Each entry starts with an ItemStackRequestActionType byte followed by that action's payload. |
| Strings To Filter (Required) |
array<string> |
2 |
Array of strings to submit to profanity filtering service |
| StringsToFilterOrigin (Required) |
int32 |
3 |
|
Enum Values:
| Index |
Value |
| 0 |
unknown |
| 1 |
ServerChatPublic |
| 2 |
ServerChatWhisper |
| 3 |
SignText |
| 4 |
AnvilText |
| 5 |
BookAndQuillText |
| 6 |
CommandBlockText |
| 7 |
BlockActorDataText |
| 8 |
JoinEventText |
| 9 |
LeaveEventText |
| 10 |
SlashCommandChat |
| 11 |
CartographyText |
| 12 |
KickCommand |
| 13 |
TitleCommand |
| 14 |
SummonCommand |
| 15 |
ServerForm |
| 16 |
DataDrivenUI |
|
|
| Player Block Actions |
array<PlayerBlockActionData> |
13 |
Block actions performed this tick. Present only when the Input Data flags indicate block actions occurred. |
PlayerBlockActionData (Array Item)
| Field Name |
Type |
Field Index |
Description |
| Player Action Type (Required) |
varint32 |
0 |
The server-authoritative block action type. |
Enum Values:
| Index |
Value |
| 0 |
Unknown |
| 1 |
StartDestroyBlock |
| 2 |
AbortDestroyBlock |
| 3 |
StopDestroyBlock |
| 4 |
StartSleeping |
| 5 |
StopSleeping |
| 6 |
Respawn |
| 7 |
StartJump |
| 8 |
StartSprinting |
| 9 |
StopSprinting |
| 10 |
StartSneaking |
| 11 |
StopSneaking |
| 12 |
CreativeDestroyBlock |
| 13 |
ChangeDimensionAck |
| 14 |
StartGliding |
| 15 |
StopGliding |
| 16 |
DenyDestroyBlock |
| 17 |
CrackBlock |
| 18 |
StartSwimming |
| 19 |
StopSwimming |
| 20 |
StartSpinAttack |
| 21 |
StopSpinAttack |
| 22 |
PredictDestroyBlock |
| 23 |
ContinueDestroyBlock |
| 24 |
StartItemUseOn |
| 25 |
StopItemUseOn |
| 26 |
HandledTeleport |
| 27 |
MissedSwing |
| 28 |
StartCrawling |
| 29 |
StopCrawling |
| 30 |
StartFlying |
| 31 |
StopFlying |
| 32 |
StartUsingItem |
| 33 |
InternalUpdate |
| 34 |
Count |
|
| Position (Required) |
BlockPos |
1 |
The block position for the action. StopDestroyBlock serializes the default value. |
BlockPos
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
varint32 |
0 |
|
| Y (Required) |
varint32 |
1 |
|
| Z (Required) |
varint32 |
2 |
|
|
| Facing (Required) |
varint32 |
2 |
Facing, or action-specific integer data for AbortDestroyBlock. |
|
| Vehicle Rotation |
Vec2 |
14 |
Rotation of the vehicle the player is in. Present only when the Input Data flags indicate the player is in a vehicle. |
Vec2
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
|
| Client Predicted Vehicle |
ActorUniqueID |
15 |
The client-predicted vehicle the player is riding. Present only when the Input Data flags indicate the player is in a vehicle. |
ActorUniqueID
| Field Name |
Type |
Field Index |
Description |
| Actor Unique ID (Required) |
varint64 |
0 |
|
|
| Analog Move Vector (Required) |
Vec2 |
16 |
Same idea as move vector. |
Vec2
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
|
| Camera Orientation (Required) |
Vec3 |
17 |
The world space unit vector for the camera forward direction. |
Vec3
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
| Z (Required) |
float |
2 |
|
|
| Raw Move Vector (Required) |
Vec2 |
18 |
Same as move vector but not affected by input permissions. |
Vec2
| Field Name |
Type |
Field Index |
Description |
| X (Required) |
float |
0 |
|
| Y (Required) |
float |
1 |
|
|