Skip to main content

Remove

This packet is sent when the player removes a shape or lift.

  • ID: 0x23 (35)
  • Size: 33 bytes
  • LZ4 Compressed: Yes
  • State: Playing
  • Bound To: Client -> Server

Structure

OffsetField NameField TypeNotes
0x00Local Position HighVec3iThe position of the positive-x, positive-y, positive-z, exclusive corner of blocks to remove, local to the body. The value of this field is equal to the value of Local Position Low plus the size of the box of blocks to remove. Always (0, 0, 0) for parts, but the server accepts any value.
0x0CLocal Position LowVec3iThe position of the negative-x, negative-y, negative-z, inclusive corner of blocks to remove, local to the body. Always (0, 0, 0) for parts, but the server accepts any value.
0x18Removed Surfaceenum RemovedSurface : u8The type of surface to remove.
0x19Removed Surface Data... (8 bytes)The data of the removed surface.

Vec3i

note

The order of the coordinates is Z, Y, X, which may be seen as counterintuitive.

OffsetField NameField TypeNotes
0x00Zbe s32The signed Z coordinate.
0x04Ybe s32The signed Y coordinate.
0x08Xbe s32The signed X coordinate.

RemovedSurface Enum

This is an exhaustive list. Packets with values not listed in the table do not do anything.

IDRemoved Surface
4Body
6Lift
note

Packet 39 - Remove Joint is sent when a joint is removed, not packet 35 - Remove.

RemovedSurface 4 - Body

OffsetField NameField TypeNotes
0x00Shape IDbe u32The ID of the part to remove. Always 0 for blocks.
0x04Body IDbe u32The ID of the body the shape to remove the shape from.

RemovedSurface 6 - Lift

OffsetField NameField TypeNotes
0x00Unknown4 bytesAlways equal to 00 00 00 00. Any value is accepted by the server.
0x04Lift IDbe u32The ID of the lift to remove.