Skip to main content

VoxelUpdateRequestInput

Input for sending a voxel update request to the UDP game server. This updates a single voxel (block) in a specific chunk. Voxel coordinates are relative to the chunk.

input VoxelUpdateRequestInput {
appId: BigInt!
chunk: ChunkCoordinatesInput!
uuid: String!
voxel: VoxelCoordinatesInput!
voxelType: Int!
voxelState: String
distance: Int
decayRate: Int
sequenceNumber: Int
}

Fields​

VoxelUpdateRequestInput.appId ● BigInt! non-null scalar​

The ID of the app where the voxel is located.

VoxelUpdateRequestInput.chunk ● ChunkCoordinatesInput! non-null input​

The chunk coordinates containing the voxel. A chunk is a 16x16x16 voxel cube.

VoxelUpdateRequestInput.uuid ● String! non-null scalar​

A unique identifier for this voxel update. Must be exactly 32 bytes when encoded as UTF-8.

VoxelUpdateRequestInput.voxel ● VoxelCoordinatesInput! non-null input​

The voxel coordinates within the chunk. App-defined: any signed 16-bit integer on each axis (-32768 to 32767); apps on the 16x16x16 dense grid use 0-15.

VoxelUpdateRequestInput.voxelType ● Int! non-null scalar​

The new voxel type ID. App-defined: any signed 16-bit integer (-32768 to 32767). This determines the appearance and properties of the voxel.

VoxelUpdateRequestInput.voxelState ● String scalar​

Optional voxel state data, base64-encoded. Omit (or send an empty string) when the voxel has no extra state — an empty payload is a type-only update.

VoxelUpdateRequestInput.distance ● Int scalar​

Chunk replication distance (0-8). Defaults to 8 for voxel updates. Clamped to 0-8.

VoxelUpdateRequestInput.decayRate ● Int scalar​

Decay algorithm for replication: 0 = none, 1 = exponential, 2 = linear 50%, 3 = linear 25%, 4 = linear 10%, 5 = linear 5%. Defaults to 0 (none) for voxel updates.

VoxelUpdateRequestInput.sequenceNumber ● Int scalar​

Client-assigned correlation id for this datagram: a uint8 (0-255) that wraps at gameClientBootstrap.sequenceNumberModulo (256); defaults to 0 if omitted. For CORRELATION ONLY — it is NOT an idempotency key and the server does not dedupe replays. Echoed on the matching response and on any GenericErrorResponse for this send, both delivered on the udpNotifications subscription.

Member Of​

sendVoxelUpdate mutation