← Packet index

Packet 58

LevelChunkPacket

Level Chunk Packet

Used to start a chunk transaction.

Packet datagramWire order
HeaderID 58varuint
0Chunk PositionChunkPos · variable
1Dimension IdDimensionType · variable
2Sub-chunks Countvaruint32 · variable (up to 5 bytes)
3Client Request SubChunk Limitvarint32 · variable (up to 5 bytes)
4Cache Enabledboolean · 1 byte
5Cache Metadataarray<LevelChunkPacketPayload SubChunkMetadata> · variable
6Serialized Chunk Datastring · variable

Serialized fields

7 top-level fields
  1. 0Chunk PositionChunk column position (chunk x, chunk z).ChunkPos
    1. 0XCompressionvarint32
    2. 1ZCompressionvarint32
  2. 1Dimension IdDimension the chunk belongs to.DimensionType
    1. 0valueCompressionvarint32
  3. 2Sub-chunks CountNumber of sub-chunks serialized in this packet.Compressionvaruint32
  4. 3Client Request SubChunk LimitoptionalOptional client sub-chunk request limit; -1 means no limit. Present only in request mode.Compressionvarint32
  5. 4Cache EnabledWhether the client cache (blob) protocol is used for this chunk.boolean
  6. 5Cache MetadataPer-sub-chunk cache blob hashes; populated only when Cache Enabled is set.LevelChunkPacketPayload SubChunkMetadataas array<LevelChunkPacketPayload SubChunkMetadata>
    1. 0Blob IdContent hash identifying the cached blob for this sub-chunk (see the client cache protocol).uint64
  7. 6Serialized Chunk DataThe serialized chunk payload (block, biome, heightmap and block-entity data).string

Changelog

Stable releases

Changes between stable protocol releases.

No stable release changes are recorded for this packet.