OverviewPacketsPrimitiveShapes ID 0x148 · 328Server → ClientScripting
Send primitive drawing shape info (from scripting) to the client for rendering.
primitive-shapes.bin
struct PrimitiveShapes {
varuint32 [] · PrimitiveShapeDataPayload[] Shapes;
}Structure
| Field | Type | Description |
|---|
| Shapes | varuint32 count + PrimitiveShapeDataPayload[] | Length-prefixed sequence. |
Structure of PrimitiveShapeDataPayload
| Field | Type | Description |
|---|
| Network Id | varuint64 | |
| Shape Type | optional byte + ScriptPrimitiveShapeType | Presence flag on the wire; value omitted when absent. |
| Location | optional byte + Vec3 | Presence flag on the wire; value omitted when absent. |
| Scale | optional byte + float32 | Presence flag on the wire; value omitted when absent. |
| Rotation | optional byte + Vec3 | Presence flag on the wire; value omitted when absent. |
| Time Left Total Sec | optional byte + float32 | Presence flag on the wire; value omitted when absent. |
| Max Render Distance | optional byte + float32 | Presence flag on the wire; value omitted when absent. |
| Color | optional byte + Color | Presence flag on the wire; value omitted when absent. |
| Dimension Id | optional byte + DimensionType | Presence flag on the wire; value omitted when absent. |
| Attached To Id | optional byte + ActorUniqueID | Presence flag on the wire; value omitted when absent. |
| Extra Data Payload | tagged case index (0=None, 1=ArrowDataPayload, 2=TextDataPayload, 3=BoxDataPayload, 4=LineDataPayload, 5=SphereDataPayload, 6=CylinderDataPayload, 7=PyramidDataPayload, 8=EllipsoidDataPayload, 9=ConeDataPayload) | Variant: an index selects the payload type — see the tables below. |
Structure of Vec3
| Field | Type | Description |
|---|
| X | float32 (LE) | |
| Y | float32 (LE) | |
| Z | float32 (LE) | |
Structure of ArrowDataPayload
| Field | Type | Description |
|---|
| End Location | optional byte + Vec3 | Presence flag on the wire; value omitted when absent. |
| Arrow Head Length | optional byte + float32 | Presence flag on the wire; value omitted when absent. |
| Arrow Head Radius | optional byte + float32 | Presence flag on the wire; value omitted when absent. |
| Num Segments | optional byte + uint8 | Presence flag on the wire; value omitted when absent. |
Structure of TextDataPayload
| Field | Type | Description |
|---|
| Text | string | |
| Use Rotation | bool | |
| Background Color | optional byte + Color | Presence flag on the wire; value omitted when absent. |
| Line Gap Height | float32 (LE) | |
| Depth Test | bool | |
| Show Backface | bool | |
| Show Text Backface | bool | |
Structure of BoxDataPayload
| Field | Type | Description |
|---|
| Box Bound | Vec3 | |
Structure of LineDataPayload
| Field | Type | Description |
|---|
| End Location | Vec3 | |
Structure of SphereDataPayload
| Field | Type | Description |
|---|
| Num Segments | uint8 | |
Structure of CylinderDataPayload
| Field | Type | Description |
|---|
| Radius X | Vec2 | |
| Radius Z | Vec2 | |
| Height | float32 (LE) | |
| Num Segments | uint8 | |
Structure of PyramidDataPayload
| Field | Type | Description |
|---|
| Width | float32 (LE) | |
| Depth | optional byte + float32 | Presence flag on the wire; value omitted when absent. |
| Height | float32 (LE) | |
Structure of EllipsoidDataPayload
| Field | Type | Description |
|---|
| Radii | Vec3 | |
| Segments Per Axis | uint8 | |
Structure of ConeDataPayload
| Field | Type | Description |
|---|
| Radii | Vec2 | |
| Height | float32 (LE) | |
| Num Segments | uint8 | |
Structure of Vec2
| Field | Type | Description |
|---|
| X | float32 (LE) | |
| Y | float32 (LE) | |
Notes