minecraft-data 3.43.0 → 3.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/doc/history.md +8 -0
  2. package/minecraft-data/data/bedrock/1.16.201/proto.yml +19 -0
  3. package/minecraft-data/data/bedrock/1.16.201/protocol.json +30 -1
  4. package/minecraft-data/data/bedrock/1.16.210/proto.yml +19 -0
  5. package/minecraft-data/data/bedrock/1.16.210/protocol.json +30 -1
  6. package/minecraft-data/data/bedrock/1.16.220/proto.yml +19 -0
  7. package/minecraft-data/data/bedrock/1.16.220/protocol.json +33 -4
  8. package/minecraft-data/data/bedrock/1.16.220/types.yml +3 -3
  9. package/minecraft-data/data/bedrock/1.17.0/proto.yml +19 -0
  10. package/minecraft-data/data/bedrock/1.17.0/protocol.json +33 -4
  11. package/minecraft-data/data/bedrock/1.17.0/types.yml +3 -3
  12. package/minecraft-data/data/bedrock/1.17.10/proto.yml +19 -0
  13. package/minecraft-data/data/bedrock/1.17.10/protocol.json +33 -4
  14. package/minecraft-data/data/bedrock/1.17.10/types.yml +3 -3
  15. package/minecraft-data/data/bedrock/1.17.30/proto.yml +19 -0
  16. package/minecraft-data/data/bedrock/1.17.30/protocol.json +33 -4
  17. package/minecraft-data/data/bedrock/1.17.30/types.yml +3 -3
  18. package/minecraft-data/data/bedrock/1.17.40/proto.yml +19 -0
  19. package/minecraft-data/data/bedrock/1.17.40/protocol.json +33 -4
  20. package/minecraft-data/data/bedrock/1.17.40/types.yml +3 -3
  21. package/minecraft-data/data/bedrock/1.18.0/proto.yml +19 -0
  22. package/minecraft-data/data/bedrock/1.18.0/protocol.json +33 -4
  23. package/minecraft-data/data/bedrock/1.18.0/types.yml +3 -3
  24. package/minecraft-data/data/bedrock/1.18.11/proto.yml +19 -0
  25. package/minecraft-data/data/bedrock/1.18.11/protocol.json +33 -4
  26. package/minecraft-data/data/bedrock/1.18.11/types.yml +3 -3
  27. package/minecraft-data/data/bedrock/1.18.30/proto.yml +19 -0
  28. package/minecraft-data/data/bedrock/1.18.30/protocol.json +33 -4
  29. package/minecraft-data/data/bedrock/1.18.30/types.yml +3 -3
  30. package/minecraft-data/data/bedrock/1.19.1/proto.yml +19 -0
  31. package/minecraft-data/data/bedrock/1.19.1/protocol.json +33 -4
  32. package/minecraft-data/data/bedrock/1.19.1/types.yml +3 -3
  33. package/minecraft-data/data/bedrock/1.19.10/proto.yml +19 -0
  34. package/minecraft-data/data/bedrock/1.19.10/protocol.json +33 -4
  35. package/minecraft-data/data/bedrock/1.19.10/types.yml +3 -3
  36. package/minecraft-data/data/bedrock/1.19.20/proto.yml +19 -0
  37. package/minecraft-data/data/bedrock/1.19.20/protocol.json +33 -4
  38. package/minecraft-data/data/bedrock/1.19.20/types.yml +3 -3
  39. package/minecraft-data/data/bedrock/1.19.21/proto.yml +19 -0
  40. package/minecraft-data/data/bedrock/1.19.21/protocol.json +33 -4
  41. package/minecraft-data/data/bedrock/1.19.21/types.yml +3 -3
  42. package/minecraft-data/data/bedrock/1.19.30/proto.yml +19 -0
  43. package/minecraft-data/data/bedrock/1.19.30/protocol.json +33 -4
  44. package/minecraft-data/data/bedrock/1.19.30/types.yml +3 -3
  45. package/minecraft-data/data/bedrock/1.19.40/proto.yml +19 -0
  46. package/minecraft-data/data/bedrock/1.19.40/protocol.json +33 -4
  47. package/minecraft-data/data/bedrock/1.19.40/types.yml +3 -3
  48. package/minecraft-data/data/bedrock/1.19.50/proto.yml +19 -0
  49. package/minecraft-data/data/bedrock/1.19.50/protocol.json +33 -4
  50. package/minecraft-data/data/bedrock/1.19.50/types.yml +3 -3
  51. package/minecraft-data/data/bedrock/1.19.60/proto.yml +19 -0
  52. package/minecraft-data/data/bedrock/1.19.60/protocol.json +33 -4
  53. package/minecraft-data/data/bedrock/1.19.60/types.yml +3 -3
  54. package/minecraft-data/data/bedrock/1.19.62/proto.yml +19 -0
  55. package/minecraft-data/data/bedrock/1.19.62/protocol.json +33 -4
  56. package/minecraft-data/data/bedrock/1.19.62/types.yml +3 -3
  57. package/minecraft-data/data/bedrock/1.19.70/proto.yml +19 -0
  58. package/minecraft-data/data/bedrock/1.19.70/protocol.json +33 -4
  59. package/minecraft-data/data/bedrock/1.19.70/types.yml +3 -3
  60. package/minecraft-data/data/bedrock/1.19.80/proto.yml +19 -0
  61. package/minecraft-data/data/bedrock/1.19.80/protocol.json +33 -4
  62. package/minecraft-data/data/bedrock/1.19.80/types.yml +3 -3
  63. package/minecraft-data/data/bedrock/1.20.0/proto.yml +19 -0
  64. package/minecraft-data/data/bedrock/1.20.0/protocol.json +33 -4
  65. package/minecraft-data/data/bedrock/1.20.0/types.yml +3 -3
  66. package/minecraft-data/data/bedrock/1.20.10/protocol.json +33 -4
  67. package/minecraft-data/data/bedrock/latest/proto.yml +18 -0
  68. package/minecraft-data/data/bedrock/latest/types.yml +3 -3
  69. package/minecraft-data/data/pc/1.19.4/protocol.json +4 -4
  70. package/minecraft-data/data/pc/common/features.json +30 -0
  71. package/minecraft-data/doc/history.md +8 -0
  72. package/package.json +2 -2
package/doc/history.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # History
2
2
 
3
+ ## 3.44.0
4
+
5
+ * update `minecraft-data`
6
+
7
+ ## 3.43.1
8
+
9
+ * update `minecraft-data`
10
+
3
11
  ## 3.43.0
4
12
 
5
13
  * update `minecraft-data`
@@ -1834,9 +1834,28 @@ packet_set_local_player_as_initialized:
1834
1834
  # StartGame packet.
1835
1835
  runtime_entity_id: varint64
1836
1836
 
1837
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
1838
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
1839
+ # options should be removed.
1840
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
1841
+ # 'Dynamic' field of the CommandEnum set to true.
1837
1842
  packet_update_soft_enum:
1838
1843
  !id: 0x72
1839
1844
  !bound: client
1845
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
1846
+ # packet, because the client uses this to recognise which enum to update.
1847
+ enum_type: string
1848
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
1849
+ # options will be added to the enum, the enum options will be set to these options or all of these
1850
+ # options will be removed from the enum.
1851
+ options: string[]varint
1852
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
1853
+ # depending on what ActionType is used.
1854
+ action_type: u8 =>
1855
+ 0: add
1856
+ 1: remove
1857
+ 2: update
1858
+
1840
1859
 
1841
1860
  packet_network_stack_latency:
1842
1861
  !id: 0x73
@@ -6409,7 +6409,36 @@
6409
6409
  ],
6410
6410
  "packet_update_soft_enum": [
6411
6411
  "container",
6412
- []
6412
+ [
6413
+ {
6414
+ "name": "enum_type",
6415
+ "type": "string"
6416
+ },
6417
+ {
6418
+ "name": "options",
6419
+ "type": [
6420
+ "array",
6421
+ {
6422
+ "countType": "varint",
6423
+ "type": "string"
6424
+ }
6425
+ ]
6426
+ },
6427
+ {
6428
+ "name": "action_type",
6429
+ "type": [
6430
+ "mapper",
6431
+ {
6432
+ "type": "u8",
6433
+ "mappings": {
6434
+ "0": "add",
6435
+ "1": "remove",
6436
+ "2": "update"
6437
+ }
6438
+ }
6439
+ ]
6440
+ }
6441
+ ]
6413
6442
  ],
6414
6443
  "packet_network_stack_latency": [
6415
6444
  "container",
@@ -1925,9 +1925,28 @@ packet_set_local_player_as_initialized:
1925
1925
  # StartGame packet.
1926
1926
  runtime_entity_id: varint64
1927
1927
 
1928
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
1929
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
1930
+ # options should be removed.
1931
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
1932
+ # 'Dynamic' field of the CommandEnum set to true.
1928
1933
  packet_update_soft_enum:
1929
1934
  !id: 0x72
1930
1935
  !bound: client
1936
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
1937
+ # packet, because the client uses this to recognise which enum to update.
1938
+ enum_type: string
1939
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
1940
+ # options will be added to the enum, the enum options will be set to these options or all of these
1941
+ # options will be removed from the enum.
1942
+ options: string[]varint
1943
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
1944
+ # depending on what ActionType is used.
1945
+ action_type: u8 =>
1946
+ 0: add
1947
+ 1: remove
1948
+ 2: update
1949
+
1931
1950
 
1932
1951
  packet_network_stack_latency:
1933
1952
  !id: 0x73
@@ -6630,7 +6630,36 @@
6630
6630
  ],
6631
6631
  "packet_update_soft_enum": [
6632
6632
  "container",
6633
- []
6633
+ [
6634
+ {
6635
+ "name": "enum_type",
6636
+ "type": "string"
6637
+ },
6638
+ {
6639
+ "name": "options",
6640
+ "type": [
6641
+ "array",
6642
+ {
6643
+ "countType": "varint",
6644
+ "type": "string"
6645
+ }
6646
+ ]
6647
+ },
6648
+ {
6649
+ "name": "action_type",
6650
+ "type": [
6651
+ "mapper",
6652
+ {
6653
+ "type": "u8",
6654
+ "mappings": {
6655
+ "0": "add",
6656
+ "1": "remove",
6657
+ "2": "update"
6658
+ }
6659
+ }
6660
+ ]
6661
+ }
6662
+ ]
6634
6663
  ],
6635
6664
  "packet_network_stack_latency": [
6636
6665
  "container",
@@ -2263,9 +2263,28 @@ packet_set_local_player_as_initialized:
2263
2263
  # StartGame packet.
2264
2264
  runtime_entity_id: varint64
2265
2265
 
2266
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2267
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2268
+ # options should be removed.
2269
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2270
+ # 'Dynamic' field of the CommandEnum set to true.
2266
2271
  packet_update_soft_enum:
2267
2272
  !id: 0x72
2268
2273
  !bound: client
2274
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2275
+ # packet, because the client uses this to recognise which enum to update.
2276
+ enum_type: string
2277
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2278
+ # options will be added to the enum, the enum options will be set to these options or all of these
2279
+ # options will be removed from the enum.
2280
+ options: string[]varint
2281
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2282
+ # depending on what ActionType is used.
2283
+ action_type: u8 =>
2284
+ 0: add
2285
+ 1: remove
2286
+ 2: update
2287
+
2269
2288
 
2270
2289
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2271
2290
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -2064,7 +2064,7 @@
2064
2064
  [
2065
2065
  {
2066
2066
  "name": "request_id",
2067
- "type": "varint"
2067
+ "type": "zigzag32"
2068
2068
  },
2069
2069
  {
2070
2070
  "name": "actions",
@@ -2342,7 +2342,7 @@
2342
2342
  },
2343
2343
  {
2344
2344
  "name": "request_id",
2345
- "type": "varint"
2345
+ "type": "zigzag32"
2346
2346
  },
2347
2347
  {
2348
2348
  "anon": true,
@@ -2390,7 +2390,7 @@
2390
2390
  },
2391
2391
  {
2392
2392
  "name": "item_stack_id",
2393
- "type": "varint"
2393
+ "type": "zigzag32"
2394
2394
  },
2395
2395
  {
2396
2396
  "name": "custom_name",
@@ -7397,7 +7397,36 @@
7397
7397
  ],
7398
7398
  "packet_update_soft_enum": [
7399
7399
  "container",
7400
- []
7400
+ [
7401
+ {
7402
+ "name": "enum_type",
7403
+ "type": "string"
7404
+ },
7405
+ {
7406
+ "name": "options",
7407
+ "type": [
7408
+ "array",
7409
+ {
7410
+ "countType": "varint",
7411
+ "type": "string"
7412
+ }
7413
+ ]
7414
+ },
7415
+ {
7416
+ "name": "action_type",
7417
+ "type": [
7418
+ "mapper",
7419
+ {
7420
+ "type": "u8",
7421
+ "mappings": {
7422
+ "0": "add",
7423
+ "1": "remove",
7424
+ "2": "update"
7425
+ }
7426
+ }
7427
+ ]
7428
+ }
7429
+ ]
7401
7430
  ],
7402
7431
  "packet_network_stack_latency": [
7403
7432
  "container",
@@ -779,7 +779,7 @@ StackRequestSlotInfo:
779
779
  ItemStackRequest:
780
780
  # RequestID is a unique ID for the request. This ID is used by the server to send a response for this
781
781
  # specific request in the ItemStackResponse packet.
782
- request_id: varint
782
+ request_id: zigzag32
783
783
  actions: []varint
784
784
  type_id: u8 =>
785
785
  # TakeStackRequestAction is sent by the client to the server to take x amount of items from one slot in a
@@ -915,7 +915,7 @@ ItemStackResponses: []varint
915
915
  1: error
916
916
  # RequestID is the unique ID of the request that this response is in reaction to. If rejected, the client
917
917
  # will undo the actions from the request with this ID.
918
- request_id: varint
918
+ request_id: zigzag32
919
919
  _: status ?
920
920
  if ok:
921
921
  # ContainerInfo holds information on the containers that had their contents changed as a result of the
@@ -936,7 +936,7 @@ ItemStackResponses: []varint
936
936
  # sent to the client.
937
937
  count: u8
938
938
  # StackNetworkID is the network ID of the new stack at a specific slot.
939
- item_stack_id: varint
939
+ item_stack_id: zigzag32
940
940
  # CustomName is the custom name of the item stack. It is used in relation to text filtering.
941
941
  custom_name: string
942
942
  # DurabilityCorrection is the current durability of the item stack. This durability will be shown
@@ -2265,9 +2265,28 @@ packet_set_local_player_as_initialized:
2265
2265
  # StartGame packet.
2266
2266
  runtime_entity_id: varint64
2267
2267
 
2268
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2269
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2270
+ # options should be removed.
2271
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2272
+ # 'Dynamic' field of the CommandEnum set to true.
2268
2273
  packet_update_soft_enum:
2269
2274
  !id: 0x72
2270
2275
  !bound: client
2276
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2277
+ # packet, because the client uses this to recognise which enum to update.
2278
+ enum_type: string
2279
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2280
+ # options will be added to the enum, the enum options will be set to these options or all of these
2281
+ # options will be removed from the enum.
2282
+ options: string[]varint
2283
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2284
+ # depending on what ActionType is used.
2285
+ action_type: u8 =>
2286
+ 0: add
2287
+ 1: remove
2288
+ 2: update
2289
+
2271
2290
 
2272
2291
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2273
2292
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -2067,7 +2067,7 @@
2067
2067
  [
2068
2068
  {
2069
2069
  "name": "request_id",
2070
- "type": "varint"
2070
+ "type": "zigzag32"
2071
2071
  },
2072
2072
  {
2073
2073
  "name": "actions",
@@ -2345,7 +2345,7 @@
2345
2345
  },
2346
2346
  {
2347
2347
  "name": "request_id",
2348
- "type": "varint"
2348
+ "type": "zigzag32"
2349
2349
  },
2350
2350
  {
2351
2351
  "anon": true,
@@ -2393,7 +2393,7 @@
2393
2393
  },
2394
2394
  {
2395
2395
  "name": "item_stack_id",
2396
- "type": "varint"
2396
+ "type": "zigzag32"
2397
2397
  },
2398
2398
  {
2399
2399
  "name": "custom_name",
@@ -7476,7 +7476,36 @@
7476
7476
  ],
7477
7477
  "packet_update_soft_enum": [
7478
7478
  "container",
7479
- []
7479
+ [
7480
+ {
7481
+ "name": "enum_type",
7482
+ "type": "string"
7483
+ },
7484
+ {
7485
+ "name": "options",
7486
+ "type": [
7487
+ "array",
7488
+ {
7489
+ "countType": "varint",
7490
+ "type": "string"
7491
+ }
7492
+ ]
7493
+ },
7494
+ {
7495
+ "name": "action_type",
7496
+ "type": [
7497
+ "mapper",
7498
+ {
7499
+ "type": "u8",
7500
+ "mappings": {
7501
+ "0": "add",
7502
+ "1": "remove",
7503
+ "2": "update"
7504
+ }
7505
+ }
7506
+ ]
7507
+ }
7508
+ ]
7480
7509
  ],
7481
7510
  "packet_network_stack_latency": [
7482
7511
  "container",
@@ -782,7 +782,7 @@ StackRequestSlotInfo:
782
782
  ItemStackRequest:
783
783
  # RequestID is a unique ID for the request. This ID is used by the server to send a response for this
784
784
  # specific request in the ItemStackResponse packet.
785
- request_id: varint
785
+ request_id: zigzag32
786
786
  actions: []varint
787
787
  type_id: u8 =>
788
788
  # TakeStackRequestAction is sent by the client to the server to take x amount of items from one slot in a
@@ -918,7 +918,7 @@ ItemStackResponses: []varint
918
918
  1: error
919
919
  # RequestID is the unique ID of the request that this response is in reaction to. If rejected, the client
920
920
  # will undo the actions from the request with this ID.
921
- request_id: varint
921
+ request_id: zigzag32
922
922
  _: status ?
923
923
  if ok:
924
924
  # ContainerInfo holds information on the containers that had their contents changed as a result of the
@@ -939,7 +939,7 @@ ItemStackResponses: []varint
939
939
  # sent to the client.
940
940
  count: u8
941
941
  # StackNetworkID is the network ID of the new stack at a specific slot.
942
- item_stack_id: varint
942
+ item_stack_id: zigzag32
943
943
  # CustomName is the custom name of the item stack. It is used in relation to text filtering.
944
944
  custom_name: string
945
945
  # DurabilityCorrection is the current durability of the item stack. This durability will be shown
@@ -2362,9 +2362,28 @@ packet_set_local_player_as_initialized:
2362
2362
  # StartGame packet.
2363
2363
  runtime_entity_id: varint64
2364
2364
 
2365
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2366
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2367
+ # options should be removed.
2368
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2369
+ # 'Dynamic' field of the CommandEnum set to true.
2365
2370
  packet_update_soft_enum:
2366
2371
  !id: 0x72
2367
2372
  !bound: client
2373
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2374
+ # packet, because the client uses this to recognise which enum to update.
2375
+ enum_type: string
2376
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2377
+ # options will be added to the enum, the enum options will be set to these options or all of these
2378
+ # options will be removed from the enum.
2379
+ options: string[]varint
2380
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2381
+ # depending on what ActionType is used.
2382
+ action_type: u8 =>
2383
+ 0: add
2384
+ 1: remove
2385
+ 2: update
2386
+
2368
2387
 
2369
2388
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2370
2389
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -2067,7 +2067,7 @@
2067
2067
  [
2068
2068
  {
2069
2069
  "name": "request_id",
2070
- "type": "varint"
2070
+ "type": "zigzag32"
2071
2071
  },
2072
2072
  {
2073
2073
  "name": "actions",
@@ -2345,7 +2345,7 @@
2345
2345
  },
2346
2346
  {
2347
2347
  "name": "request_id",
2348
- "type": "varint"
2348
+ "type": "zigzag32"
2349
2349
  },
2350
2350
  {
2351
2351
  "anon": true,
@@ -2393,7 +2393,7 @@
2393
2393
  },
2394
2394
  {
2395
2395
  "name": "item_stack_id",
2396
- "type": "varint"
2396
+ "type": "zigzag32"
2397
2397
  },
2398
2398
  {
2399
2399
  "name": "custom_name",
@@ -7592,7 +7592,36 @@
7592
7592
  ],
7593
7593
  "packet_update_soft_enum": [
7594
7594
  "container",
7595
- []
7595
+ [
7596
+ {
7597
+ "name": "enum_type",
7598
+ "type": "string"
7599
+ },
7600
+ {
7601
+ "name": "options",
7602
+ "type": [
7603
+ "array",
7604
+ {
7605
+ "countType": "varint",
7606
+ "type": "string"
7607
+ }
7608
+ ]
7609
+ },
7610
+ {
7611
+ "name": "action_type",
7612
+ "type": [
7613
+ "mapper",
7614
+ {
7615
+ "type": "u8",
7616
+ "mappings": {
7617
+ "0": "add",
7618
+ "1": "remove",
7619
+ "2": "update"
7620
+ }
7621
+ }
7622
+ ]
7623
+ }
7624
+ ]
7596
7625
  ],
7597
7626
  "packet_network_stack_latency": [
7598
7627
  "container",
@@ -782,7 +782,7 @@ StackRequestSlotInfo:
782
782
  ItemStackRequest:
783
783
  # RequestID is a unique ID for the request. This ID is used by the server to send a response for this
784
784
  # specific request in the ItemStackResponse packet.
785
- request_id: varint
785
+ request_id: zigzag32
786
786
  actions: []varint
787
787
  type_id: u8 =>
788
788
  # TakeStackRequestAction is sent by the client to the server to take x amount of items from one slot in a
@@ -918,7 +918,7 @@ ItemStackResponses: []varint
918
918
  1: error
919
919
  # RequestID is the unique ID of the request that this response is in reaction to. If rejected, the client
920
920
  # will undo the actions from the request with this ID.
921
- request_id: varint
921
+ request_id: zigzag32
922
922
  _: status ?
923
923
  if ok:
924
924
  # ContainerInfo holds information on the containers that had their contents changed as a result of the
@@ -939,7 +939,7 @@ ItemStackResponses: []varint
939
939
  # sent to the client.
940
940
  count: u8
941
941
  # StackNetworkID is the network ID of the new stack at a specific slot.
942
- item_stack_id: varint
942
+ item_stack_id: zigzag32
943
943
  # CustomName is the custom name of the item stack. It is used in relation to text filtering.
944
944
  custom_name: string
945
945
  # DurabilityCorrection is the current durability of the item stack. This durability will be shown
@@ -2378,9 +2378,28 @@ packet_set_local_player_as_initialized:
2378
2378
  # StartGame packet.
2379
2379
  runtime_entity_id: varint64
2380
2380
 
2381
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2382
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2383
+ # options should be removed.
2384
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2385
+ # 'Dynamic' field of the CommandEnum set to true.
2381
2386
  packet_update_soft_enum:
2382
2387
  !id: 0x72
2383
2388
  !bound: client
2389
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2390
+ # packet, because the client uses this to recognise which enum to update.
2391
+ enum_type: string
2392
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2393
+ # options will be added to the enum, the enum options will be set to these options or all of these
2394
+ # options will be removed from the enum.
2395
+ options: string[]varint
2396
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2397
+ # depending on what ActionType is used.
2398
+ action_type: u8 =>
2399
+ 0: add
2400
+ 1: remove
2401
+ 2: update
2402
+
2384
2403
 
2385
2404
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2386
2405
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -2075,7 +2075,7 @@
2075
2075
  [
2076
2076
  {
2077
2077
  "name": "request_id",
2078
- "type": "varint"
2078
+ "type": "zigzag32"
2079
2079
  },
2080
2080
  {
2081
2081
  "name": "actions",
@@ -2353,7 +2353,7 @@
2353
2353
  },
2354
2354
  {
2355
2355
  "name": "request_id",
2356
- "type": "varint"
2356
+ "type": "zigzag32"
2357
2357
  },
2358
2358
  {
2359
2359
  "anon": true,
@@ -2401,7 +2401,7 @@
2401
2401
  },
2402
2402
  {
2403
2403
  "name": "item_stack_id",
2404
- "type": "varint"
2404
+ "type": "zigzag32"
2405
2405
  },
2406
2406
  {
2407
2407
  "name": "custom_name",
@@ -7736,7 +7736,36 @@
7736
7736
  ],
7737
7737
  "packet_update_soft_enum": [
7738
7738
  "container",
7739
- []
7739
+ [
7740
+ {
7741
+ "name": "enum_type",
7742
+ "type": "string"
7743
+ },
7744
+ {
7745
+ "name": "options",
7746
+ "type": [
7747
+ "array",
7748
+ {
7749
+ "countType": "varint",
7750
+ "type": "string"
7751
+ }
7752
+ ]
7753
+ },
7754
+ {
7755
+ "name": "action_type",
7756
+ "type": [
7757
+ "mapper",
7758
+ {
7759
+ "type": "u8",
7760
+ "mappings": {
7761
+ "0": "add",
7762
+ "1": "remove",
7763
+ "2": "update"
7764
+ }
7765
+ }
7766
+ ]
7767
+ }
7768
+ ]
7740
7769
  ],
7741
7770
  "packet_network_stack_latency": [
7742
7771
  "container",
@@ -787,7 +787,7 @@ StackRequestSlotInfo:
787
787
  ItemStackRequest:
788
788
  # RequestID is a unique ID for the request. This ID is used by the server to send a response for this
789
789
  # specific request in the ItemStackResponse packet.
790
- request_id: varint
790
+ request_id: zigzag32
791
791
  actions: []varint
792
792
  type_id: u8 =>
793
793
  # TakeStackRequestAction is sent by the client to the server to take x amount of items from one slot in a
@@ -923,7 +923,7 @@ ItemStackResponses: []varint
923
923
  1: error
924
924
  # RequestID is the unique ID of the request that this response is in reaction to. If rejected, the client
925
925
  # will undo the actions from the request with this ID.
926
- request_id: varint
926
+ request_id: zigzag32
927
927
  _: status ?
928
928
  if ok:
929
929
  # ContainerInfo holds information on the containers that had their contents changed as a result of the
@@ -944,7 +944,7 @@ ItemStackResponses: []varint
944
944
  # sent to the client.
945
945
  count: u8
946
946
  # StackNetworkID is the network ID of the new stack at a specific slot.
947
- item_stack_id: varint
947
+ item_stack_id: zigzag32
948
948
  # CustomName is the custom name of the item stack. It is used in relation to text filtering.
949
949
  custom_name: string
950
950
  # DurabilityCorrection is the current durability of the item stack. This durability will be shown
@@ -2378,9 +2378,28 @@ packet_set_local_player_as_initialized:
2378
2378
  # StartGame packet.
2379
2379
  runtime_entity_id: varint64
2380
2380
 
2381
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2382
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2383
+ # options should be removed.
2384
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2385
+ # 'Dynamic' field of the CommandEnum set to true.
2381
2386
  packet_update_soft_enum:
2382
2387
  !id: 0x72
2383
2388
  !bound: client
2389
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2390
+ # packet, because the client uses this to recognise which enum to update.
2391
+ enum_type: string
2392
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2393
+ # options will be added to the enum, the enum options will be set to these options or all of these
2394
+ # options will be removed from the enum.
2395
+ options: string[]varint
2396
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2397
+ # depending on what ActionType is used.
2398
+ action_type: u8 =>
2399
+ 0: add
2400
+ 1: remove
2401
+ 2: update
2402
+
2384
2403
 
2385
2404
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2386
2405
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the