0x08 C08PacketPlayerBlockPlacement

Player places a block or uses an item. Can also be used for empty-hand interactions (e.g., pressing buttons).

Serverbound (Client → Server) · PLAY · net/minecraft/network/play/client/C08PacketPlayerBlockPlacement.java
playerblockiteminteractworld

Fields

FieldTypeDescription
positionBlockPosPosition where the block/item is used
placedBlockDirectionintFace of the target block (0-5). 255 if no block face targeted.
stackItemStackThe item stack being used/placed
facingX/Y/ZfloatCursor position on block face (0-1). Present when direction != 255.

Wire Encoding

FieldTypeNotes
Block PosPositionEncoded as long
Directionbyte0-5 for face, 255 for no face
Item In HandSlotItemStack being placed/used
Cursor XbyteCursor x (0-1 mapped to byte)
Cursor YbyteCursor y
Cursor ZbyteCursor z

MCP References

MCPNetHandlerPlayServer.processPlayerBlockPlacement()

Handler Interface

HNDINetHandlerPlayServer

implementation Implementation Cases

Scaffold (Tenacity 6.0, Flux B39.11, Monsoon 3.0-A6, Mint B1, Gugustus)

Scaffold places blocks silently. Autoblock sends invalid placement (pos=-1,-1,-1, face=255) to start blocking. NoSlow sends C08 with current item to bypass use-item slowdown.

Vanilla hook: EventSendPacket
KillAura (Autoblock) (Tenacity 6.0, Flux B39.11, Monsoon 3.0-A6, Mint B1, Gugustus)

Scaffold places blocks silently. Autoblock sends invalid placement (pos=-1,-1,-1, face=255) to start blocking. NoSlow sends C08 with current item to bypass use-item slowdown.

Vanilla hook: EventSendPacket
NoSlowdown (Tenacity 6.0, Flux B39.11, Monsoon 3.0-A6, Mint B1, Gugustus)

Scaffold places blocks silently. Autoblock sends invalid placement (pos=-1,-1,-1, face=255) to start blocking. NoSlow sends C08 with current item to bypass use-item slowdown.

Vanilla hook: EventSendPacket
FastUse (Tenacity 6.0, Flux B39.11, Monsoon 3.0-A6, Mint B1, Gugustus)

Scaffold places blocks silently. Autoblock sends invalid placement (pos=-1,-1,-1, face=255) to start blocking. NoSlow sends C08 with current item to bypass use-item slowdown.

Vanilla hook: EventSendPacket
← Back to all packets