跳转至

LevelChunkPacket

文档版本:r/20_u8
协议版本:671

LevelChunkPacket数据包,数字ID是58。该数据包用于protocol.packet.levelchunkpacket.description

结构

digraph "LevelChunkPacket" {
rankdir = LR
0
0 -> 1
1 -> 7
0 -> 8
8 -> 9
0 -> 10
10 -> 11
11 -> 12
12 -> 13
10 -> 14
14 -> 15
15 -> 16
16 -> 17
17 -> 18
16 -> 19
19 -> 20
15 -> 21
21 -> 22
22 -> 23
0 -> 24
24 -> 25
0 -> 26
26 -> 27
27 -> 28
26 -> 29
29 -> 30
30 -> 31
31 -> 32
30 -> 33
33 -> 34
34 -> 35
0 -> 36
36 -> 37

0 [label="LevelChunkPacket",comment="name: \"LevelChunkPacket\", typeName: \"\", id: 0, branchId: 58, recurseId: -1, attributes: 0, notes: \"\""];
1 [label="Chunk Position",comment="name: \"Chunk Position\", typeName: \"ChunkPos\", id: 1, branchId: 0, recurseId: -1, attributes: 256, notes: \"\""];
7 [label="ChunkPos",comment="name: \"ChunkPos\", typeName: \"\", id: 7, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
8 [label="Dimension Id",comment="name: \"Dimension Id\", typeName: \"\", id: 8, branchId: 0, recurseId: -1, attributes: 0, notes: \"\""];
9 [label="varint",comment="name: \"varint\", typeName: \"\", id: 9, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
10 [label="Dependency on 'Client Needs To Request Subchunks?'",shape=note,comment="name: \"Dependency on 'Client Needs To Request Subchunks?'\", typeName: \"\", id: 10, branchId: 0, recurseId: -1, attributes: 2, notes: \"\""];
11 [label="if (0)",shape=diamond,comment="name: \"if (0)\", typeName: \"\", id: 11, branchId: 0, recurseId: -1, attributes: 4, notes: \"\""];
12 [label="Sub-chunks Count",comment="name: \"Sub-chunks Count\", typeName: \"\", id: 12, branchId: 0, recurseId: -1, attributes: 0, notes: \"\""];
13 [label="unsigned varint",comment="name: \"unsigned varint\", typeName: \"\", id: 13, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
14 [label="if (1)",shape=diamond,comment="name: \"if (1)\", typeName: \"\", id: 14, branchId: 1, recurseId: -1, attributes: 4, notes: \"\""];
15 [label="Dependency on 'Client Request SubChunk Limit < 0?'",shape=note,comment="name: \"Dependency on 'Client Request SubChunk Limit < 0?'\", typeName: \"\", id: 15, branchId: 0, recurseId: -1, attributes: 2, notes: \"\""];
16 [label="if (0)",shape=diamond,comment="name: \"if (0)\", typeName: \"\", id: 16, branchId: 0, recurseId: -1, attributes: 4, notes: \"\""];
17 [label="Partial SubChunk Count When Client Requesting",comment="name: \"Partial SubChunk Count When Client Requesting\", typeName: \"\", id: 17, branchId: 0, recurseId: -1, attributes: 0, notes: \"Currently max unsigned 32-bit int\""];
18 [label="unsigned varint",comment="name: \"unsigned varint\", typeName: \"\", id: 18, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
19 [label="Client Request SubChunk Limit",comment="name: \"Client Request SubChunk Limit\", typeName: \"\", id: 19, branchId: 0, recurseId: -1, attributes: 0, notes: \"\""];
20 [label="unsigned short",comment="name: \"unsigned short\", typeName: \"\", id: 20, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
21 [label="if (1)",shape=diamond,comment="name: \"if (1)\", typeName: \"\", id: 21, branchId: 1, recurseId: -1, attributes: 4, notes: \"\""];
22 [label="SubChunk Count When Client Requesting",comment="name: \"SubChunk Count When Client Requesting\", typeName: \"\", id: 22, branchId: 0, recurseId: -1, attributes: 0, notes: \"Currently max unsigned 32-bit int\""];
23 [label="unsigned varint",comment="name: \"unsigned varint\", typeName: \"\", id: 23, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
24 [label="Cache Enabled",comment="name: \"Cache Enabled\", typeName: \"\", id: 24, branchId: 0, recurseId: -1, attributes: 0, notes: \"Lets the server turn off the cache for this chunk even if the Client signaled it supports it.\""];
25 [label="bool",comment="name: \"bool\", typeName: \"\", id: 25, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
26 [label="Dependency on 'Cache Enabled?'",shape=note,comment="name: \"Dependency on 'Cache Enabled?'\", typeName: \"\", id: 26, branchId: 0, recurseId: -1, attributes: 2, notes: \"\""];
27 [label="if (0)",shape=diamond,comment="name: \"if (0)\", typeName: \"\", id: 27, branchId: 0, recurseId: -1, attributes: 4, notes: \"\""];
28 [label="[No Data]",comment="name: \"[No Data]\", typeName: \"\", id: 28, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
29 [label="if (1)",shape=diamond,comment="name: \"if (1)\", typeName: \"\", id: 29, branchId: 1, recurseId: -1, attributes: 4, notes: \"\""];
30 [label="Cache Blobs",comment="name: \"Cache Blobs\", typeName: \"\", id: 30, branchId: 0, recurseId: -1, attributes: 8, notes: \"\""];
31 [label="Blob Count",comment="name: \"Blob Count\", typeName: \"\", id: 31, branchId: 0, recurseId: -1, attributes: 0, notes: \"How many cache blobs make up this chunk.\""];
32 [label="unsigned varint",comment="name: \"unsigned varint\", typeName: \"\", id: 32, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
33 [label="example element",style=dotted,comment="name: \"example element\", typeName: \"\", id: 33, branchId: 0, recurseId: -1, attributes: 16, notes: \"\""];
34 [label="Blob Id",comment="name: \"Blob Id\", typeName: \"\", id: 34, branchId: 0, recurseId: -1, attributes: 0, notes: \"See ClientCacheProtocol.md, included with the documentation for 1.12.0.2\""];
35 [label="unsigned int64",comment="name: \"unsigned int64\", typeName: \"\", id: 35, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
36 [label="Serialized Chunk Data",comment="name: \"Serialized Chunk Data\", typeName: \"\", id: 36, branchId: 0, recurseId: -1, attributes: 0, notes: \"See https://gist.github.com/Tomcc/a96af509e275b1af483b25c543cfbf37\""];
37 [label="string",comment="name: \"string\", typeName: \"\", id: 37, branchId: 0, recurseId: -1, attributes: 512, notes: \"\""];
{ rank = max;7;9;13;18;20;23;25;28;32;35;37}

}

字段

LevelChunkPacket
[chunk_position][dimension_id][dependency_on_client_needs_to_request_subchunks][cache_enabled][dependency_on_cache_enabled][serialized_chunk_data]
Chunk Position:ChunkPos
特殊类型。protocol.packet.levelchunkpacket.chunk_position.description
Dimension Id:varint
基本类型。protocol.packet.levelchunkpacket.dimension_id.description

依赖于Client Needs To Request Subchunks?

if (0)
[sub-chunks_count]
Sub-chunks Count:unsigned varint
基本类型。protocol.packet.levelchunkpacket.dependency_on_client_needs_to_request_subchunks.if_0.sub-chunks_count.description
if (1)
[dependency_on_client_request_subchunk_limit_l_0]

依赖于Client Request SubChunk Limit < 0?

if (0)
[partial_subchunk_count_when_client_requesting][client_request_subchunk_limit]
Partial SubChunk Count When Client Requesting:unsigned varint
基本类型。protocol.packet.levelchunkpacket.dependency_on_client_needs_to_request_subchunks.if_1.dependency_on_client_request_subchunk_limit_l_0.if_0.partial_subchunk_count_when_client_requesting.descriptionCurrently max unsigned 32-bit int
Client Request SubChunk Limit:unsigned short
基本类型。protocol.packet.levelchunkpacket.dependency_on_client_needs_to_request_subchunks.if_1.dependency_on_client_request_subchunk_limit_l_0.if_0.client_request_subchunk_limit.description
if (1)
[subchunk_count_when_client_requesting]
SubChunk Count When Client Requesting:unsigned varint
基本类型。protocol.packet.levelchunkpacket.dependency_on_client_needs_to_request_subchunks.if_1.dependency_on_client_request_subchunk_limit_l_0.if_1.subchunk_count_when_client_requesting.descriptionCurrently max unsigned 32-bit int
Cache Enabled:bool
基本类型。protocol.packet.levelchunkpacket.cache_enabled.descriptionLets the server turn off the cache for this chunk even if the Client signaled it supports it.

依赖于Cache Enabled?

if (0):[No Data]
无数据
if (1)
[cache_blobs]
Cache Blobs
[blob_count][[example_element]..]
Blob Count:unsigned varint
基本类型。protocol.packet.levelchunkpacket.dependency_on_cache_enabled.if_1.cache_blobs.blob_count.descriptionHow many cache blobs make up this chunk.
示例元素
[blob_id]
Blob Id:unsigned int64
基本类型。protocol.packet.levelchunkpacket.dependency_on_cache_enabled.if_1.cache_blobs.example_element.blob_id.descriptionSee ClientCacheProtocol.md, included with the documentation for 1.12.0.2
Serialized Chunk Data:string
特殊类型。protocol.packet.levelchunkpacket.serialized_chunk_data.descriptionSee https://gist.github.com/Tomcc/a96af509e275b1af483b25c543cfbf37