Overview Packets PlayerAuthInput ID 0x90 · 144 Client → Server Movement
Sent every tick with server-authoritative movement: position, rotation, input flags, pending item/block actions and vehicle state. Replaces client-bound MovePlayer as the client's movement packet.
player-auth-input.bin
struct PlayerAuthInput {
Vec2 Rot;
Vec3 Pos;
Vec2 Move;
float32 (LE) YHeadRot;
varuint32 [] · InputData[] InputData;
InputMode InputMode;
ClientPlayMode PlayMode;
NewInteractionModel NewInteractionModel;
Vec2 InteractRotation;
PlayerInputTick ClientTick;
Vec3 PosDelta;
optional byte + PackedItemUseLegacyInventoryTransaction ItemUseTransaction;
optional byte + ItemStackRequestCereal.RequestData ItemStackRequest;
optional byte + list[PlayerBlockActionData] PlayerBlockActions;
optional byte + Vec2 VehicleRot;
optional byte + ActorUniqueID ClientPredictedVehicle;
Vec2 AnalogMoveVector;
Vec3 CameraOrientation;
Vec2 RawMoveVector;
} Structure Field Type Description Rot Vec2 Pos Vec3 Move Vec2 Y Head Rot float32 (LE) Input Data varuint32 count + InputData[] Length-prefixed sequence. Input Mode InputMode Play Mode ClientPlayMode New Interaction Model NewInteractionModel Interact Rotation Vec2 Client Tick PlayerInputTick Pos Delta Vec3 Item Use Transaction optional byte + PackedItemUseLegacyInventoryTransaction Presence flag on the wire; value omitted when absent. Item Stack Request optional byte + ItemStackRequestCereal.RequestData Presence flag on the wire; value omitted when absent. Player Block Actions optional byte + list[PlayerBlockActionData] Presence flag on the wire; value omitted when absent. Vehicle Rot optional byte + Vec2 Presence flag on the wire; value omitted when absent. Client Predicted Vehicle optional byte + ActorUniqueID Presence flag on the wire; value omitted when absent. Analog Move Vector Vec2 Camera Orientation Vec3 Raw Move Vector Vec2
Structure of Vec2 Field Type Description X float32 (LE) Y float32 (LE)
Structure of Vec3 Field Type Description X float32 (LE) Y float32 (LE) Z float32 (LE)
Structure of PackedItemUseLegacyInventoryTransaction Field Type Description Id ItemStackLegacyRequestId Slots optional byte + list[LegacySetSlot] Presence flag on the wire; value omitted when absent. Transaction ItemUseInventoryTransaction
Structure of RequestData Field Type Description Client Request Id ItemStackRequestId Actions varuint32 count + TakeActionData | PlaceActionData | SwapActionData | DropActionData | DestroyActionData | ConsumeActionData | CreateActionData | LabTableCombineActionData | BeaconPaymentActionData | MineBlockActionData | CraftRecipeActionData | CraftRecipeAutoActionData | CraftCreativeActionData | CraftRecipeOptionalActionData | CraftRepairAndDisenchantActionData | CraftLoomActionData | CraftNonImplementedActionData | CraftResultsActionData[] Length-prefixed sequence. Strings To Filter varuint32 count + string[] Length-prefixed sequence. Strings To Filter Origin int32 (LE)
Structure of PlayerBlockActionData Field Type Description Player Action Type PlayerActionType Pos BlockPos Facing varint32
Structure of ItemStackLegacyRequestId Field Type Description Raw Id varint32
Structure of LegacySetSlot Field Type Description Container Enum ContainerEnumName Slots byte[]
Structure of ItemUseInventoryTransaction Field Type Description Actions varuint32 count + InventoryAction[] Length-prefixed sequence. Action Type varuint32 Trigger Type ItemUseInventoryTransaction.TriggerType Pos BlockPos Face varint32 Slot varint32 Item SerializedNetworkItemStackDescriptor From Pos Vec3 Click Pos Vec3 Target Block Id varuint32 Client Predicted Result ItemUseInventoryTransaction.PredictedResult Client Cooldown State ItemUseInventoryTransaction.ClientCooldownState
Structure of ItemStackRequestId Field Type Description Raw Id varint32
Structure of TakeActionData Field Type Description Action Type constant ItemStackRequestActionType.TAKE Fixed tag written on the wire. Amount uint8 Source SlotInfoData Destination SlotInfoData
Structure of PlaceActionData Field Type Description Action Type constant ItemStackRequestActionType.PLACE Fixed tag written on the wire. Amount uint8 Source SlotInfoData Destination SlotInfoData
Structure of SwapActionData Field Type Description Action Type constant ItemStackRequestActionType.SWAP Fixed tag written on the wire. Source SlotInfoData Destination SlotInfoData
Structure of DropActionData Field Type Description Action Type constant ItemStackRequestActionType.DROP Fixed tag written on the wire. Amount uint8 Source SlotInfoData Randomly bool
Structure of DestroyActionData Field Type Description Action Type constant ItemStackRequestActionType.DESTROY Fixed tag written on the wire. Amount uint8 Source SlotInfoData
Structure of ConsumeActionData Field Type Description Action Type constant ItemStackRequestActionType.CONSUME Fixed tag written on the wire. Amount uint8 Source SlotInfoData
Structure of CreateActionData Field Type Description Action Type constant ItemStackRequestActionType.CREATE Fixed tag written on the wire. Results Index uint8
Structure of LabTableCombineActionData Field Type Description Action Type constant ItemStackRequestActionType.SCREEN_LAB_TABLE_COMBINE Fixed tag written on the wire.
Structure of BeaconPaymentActionData Field Type Description Action Type constant ItemStackRequestActionType.SCREEN_BEACON_PAYMENT Fixed tag written on the wire. Primary Effect Id varint32 Secondary Effect Id varint32
Structure of MineBlockActionData Field Type Description Action Type constant ItemStackRequestActionType.SCREEN_HUD_MINE_BLOCK Fixed tag written on the wire. Slot varint32 Predicted Durability varint32 Net Id Variant int32 (LE)
Structure of CraftRecipeActionData Field Type Description Action Type constant ItemStackRequestActionType.CRAFT_RECIPE Fixed tag written on the wire. Recipe Net Id RecipeNetId Num Crafts uint8
Structure of CraftRecipeAutoActionData Field Type Description Action Type constant ItemStackRequestActionType.CRAFT_RECIPE_AUTO Fixed tag written on the wire. Recipe Net Id RecipeNetId Num Crafts uint8 Ingredients varuint32 count + RecipeIngredientData[] Length-prefixed sequence.
Structure of CraftCreativeActionData Field Type Description Action Type constant ItemStackRequestActionType.CRAFT_CREATIVE Fixed tag written on the wire. Creative Item Net Id varuint32 Num Crafts uint8
Structure of CraftRecipeOptionalActionData Field Type Description Action Type constant ItemStackRequestActionType.CRAFT_RECIPE_OPTIONAL Fixed tag written on the wire. Recipe Net Id RecipeNetId Filtered String Index int32 (LE)
Structure of CraftRepairAndDisenchantActionData Field Type Description Action Type constant ItemStackRequestActionType.CRAFT_REPAIR_AND_DISENCHANT Fixed tag written on the wire. Recipe Net Id int32 (LE) Num Crafts uint8 Repair Cost varint32
Structure of CraftLoomActionData Field Type Description Action Type constant ItemStackRequestActionType.CRAFT_LOOM Fixed tag written on the wire. Pattern Name Id string Num Crafts uint8
Structure of CraftNonImplementedActionData Field Type Description Action Type constant ItemStackRequestActionType.CRAFT_NON_IMPLEMENTED_DEPRECATEDASKTYLAING Fixed tag written on the wire.
Structure of CraftResultsActionData Field Type Description Action Type constant ItemStackRequestActionType.CRAFT_RESULTS_DEPRECATEDASKTYLAING Fixed tag written on the wire. Craft Results varuint32 count + NetworkItemInstanceDescriptorData[] Length-prefixed sequence. Num Crafts uint8
InputData (selected) values 3 JumpDown
6 Jumping
8 Sneaking
20 Sprinting
29 StartSwimming
32 StartGliding
34 PerformItemInteraction
35 PerformBlockActions
36 PerformItemStackRequest
37 HandledTeleport
39 MissedSwing
42 StartFlying
45 IsInClientPredictedVehicle
49 HorizontalCollision
50 VerticalCollision
65 InternalUpdate
Notes Since 1.26.40 (cereal) the input flags are no longer a bitset: Input Data is now a varuint32-length-prefixed list of InputData enum values (ascending, unique). Conditional payloads became explicit optionals: Item Use Transaction, Item Stack Request, Player Block Actions, Vehicle Rot and Client Predicted Vehicle each carry a presence byte. Which optionals are present is signalled by flags in Input Data: PerformItemInteraction (34), PerformItemStackRequest (36), PerformBlockActions (35), IsInClientPredictedVehicle (45). Tick is the client's input tick; servers echo it in correction packets.