minecraft-data 3.42.1 → 3.43.1

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 (52) hide show
  1. package/doc/api.md +10 -0
  2. package/doc/history.md +9 -0
  3. package/index.js +2 -1
  4. package/minecraft-data/data/bedrock/1.16.201/proto.yml +19 -0
  5. package/minecraft-data/data/bedrock/1.16.201/protocol.json +30 -1
  6. package/minecraft-data/data/bedrock/1.16.210/proto.yml +19 -0
  7. package/minecraft-data/data/bedrock/1.16.210/protocol.json +30 -1
  8. package/minecraft-data/data/bedrock/1.16.220/proto.yml +19 -0
  9. package/minecraft-data/data/bedrock/1.16.220/protocol.json +30 -1
  10. package/minecraft-data/data/bedrock/1.17.0/proto.yml +19 -0
  11. package/minecraft-data/data/bedrock/1.17.0/protocol.json +30 -1
  12. package/minecraft-data/data/bedrock/1.17.10/proto.yml +19 -0
  13. package/minecraft-data/data/bedrock/1.17.10/protocol.json +30 -1
  14. package/minecraft-data/data/bedrock/1.17.30/proto.yml +19 -0
  15. package/minecraft-data/data/bedrock/1.17.30/protocol.json +30 -1
  16. package/minecraft-data/data/bedrock/1.17.40/proto.yml +19 -0
  17. package/minecraft-data/data/bedrock/1.17.40/protocol.json +30 -1
  18. package/minecraft-data/data/bedrock/1.18.0/proto.yml +19 -0
  19. package/minecraft-data/data/bedrock/1.18.0/protocol.json +30 -1
  20. package/minecraft-data/data/bedrock/1.18.11/proto.yml +19 -0
  21. package/minecraft-data/data/bedrock/1.18.11/protocol.json +30 -1
  22. package/minecraft-data/data/bedrock/1.18.30/proto.yml +19 -0
  23. package/minecraft-data/data/bedrock/1.18.30/protocol.json +30 -1
  24. package/minecraft-data/data/bedrock/1.19.1/proto.yml +19 -0
  25. package/minecraft-data/data/bedrock/1.19.1/protocol.json +30 -1
  26. package/minecraft-data/data/bedrock/1.19.10/proto.yml +19 -0
  27. package/minecraft-data/data/bedrock/1.19.10/protocol.json +30 -1
  28. package/minecraft-data/data/bedrock/1.19.20/proto.yml +19 -0
  29. package/minecraft-data/data/bedrock/1.19.20/protocol.json +30 -1
  30. package/minecraft-data/data/bedrock/1.19.21/proto.yml +19 -0
  31. package/minecraft-data/data/bedrock/1.19.21/protocol.json +30 -1
  32. package/minecraft-data/data/bedrock/1.19.30/proto.yml +19 -0
  33. package/minecraft-data/data/bedrock/1.19.30/protocol.json +30 -1
  34. package/minecraft-data/data/bedrock/1.19.40/proto.yml +19 -0
  35. package/minecraft-data/data/bedrock/1.19.40/protocol.json +30 -1
  36. package/minecraft-data/data/bedrock/1.19.50/proto.yml +19 -0
  37. package/minecraft-data/data/bedrock/1.19.50/protocol.json +30 -1
  38. package/minecraft-data/data/bedrock/1.19.60/proto.yml +19 -0
  39. package/minecraft-data/data/bedrock/1.19.60/protocol.json +30 -1
  40. package/minecraft-data/data/bedrock/1.19.62/proto.yml +19 -0
  41. package/minecraft-data/data/bedrock/1.19.62/protocol.json +30 -1
  42. package/minecraft-data/data/bedrock/1.19.70/proto.yml +19 -0
  43. package/minecraft-data/data/bedrock/1.19.70/protocol.json +30 -1
  44. package/minecraft-data/data/bedrock/1.19.80/proto.yml +19 -0
  45. package/minecraft-data/data/bedrock/1.19.80/protocol.json +30 -1
  46. package/minecraft-data/data/bedrock/1.20.0/proto.yml +19 -0
  47. package/minecraft-data/data/bedrock/1.20.0/protocol.json +30 -1
  48. package/minecraft-data/data/bedrock/1.20.10/protocol.json +30 -1
  49. package/minecraft-data/data/bedrock/common/legacy.json +1931 -0
  50. package/minecraft-data/data/bedrock/latest/proto.yml +18 -0
  51. package/minecraft-data/doc/history.md +6 -0
  52. package/package.json +1 -1
@@ -2402,9 +2402,28 @@ packet_set_local_player_as_initialized:
2402
2402
  # StartGame packet.
2403
2403
  runtime_entity_id: varint64
2404
2404
 
2405
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2406
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2407
+ # options should be removed.
2408
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2409
+ # 'Dynamic' field of the CommandEnum set to true.
2405
2410
  packet_update_soft_enum:
2406
2411
  !id: 0x72
2407
2412
  !bound: client
2413
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2414
+ # packet, because the client uses this to recognise which enum to update.
2415
+ enum_type: string
2416
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2417
+ # options will be added to the enum, the enum options will be set to these options or all of these
2418
+ # options will be removed from the enum.
2419
+ options: string[]varint
2420
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2421
+ # depending on what ActionType is used.
2422
+ action_type: u8 =>
2423
+ 0: add
2424
+ 1: remove
2425
+ 2: update
2426
+
2408
2427
 
2409
2428
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2410
2429
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -7925,7 +7925,36 @@
7925
7925
  ],
7926
7926
  "packet_update_soft_enum": [
7927
7927
  "container",
7928
- []
7928
+ [
7929
+ {
7930
+ "name": "enum_type",
7931
+ "type": "string"
7932
+ },
7933
+ {
7934
+ "name": "options",
7935
+ "type": [
7936
+ "array",
7937
+ {
7938
+ "countType": "varint",
7939
+ "type": "string"
7940
+ }
7941
+ ]
7942
+ },
7943
+ {
7944
+ "name": "action_type",
7945
+ "type": [
7946
+ "mapper",
7947
+ {
7948
+ "type": "u8",
7949
+ "mappings": {
7950
+ "0": "add",
7951
+ "1": "remove",
7952
+ "2": "update"
7953
+ }
7954
+ }
7955
+ ]
7956
+ }
7957
+ ]
7929
7958
  ],
7930
7959
  "packet_network_stack_latency": [
7931
7960
  "container",
@@ -2416,9 +2416,28 @@ packet_set_local_player_as_initialized:
2416
2416
  # StartGame packet.
2417
2417
  runtime_entity_id: varint64
2418
2418
 
2419
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2420
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2421
+ # options should be removed.
2422
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2423
+ # 'Dynamic' field of the CommandEnum set to true.
2419
2424
  packet_update_soft_enum:
2420
2425
  !id: 0x72
2421
2426
  !bound: client
2427
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2428
+ # packet, because the client uses this to recognise which enum to update.
2429
+ enum_type: string
2430
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2431
+ # options will be added to the enum, the enum options will be set to these options or all of these
2432
+ # options will be removed from the enum.
2433
+ options: string[]varint
2434
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2435
+ # depending on what ActionType is used.
2436
+ action_type: u8 =>
2437
+ 0: add
2438
+ 1: remove
2439
+ 2: update
2440
+
2422
2441
 
2423
2442
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2424
2443
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -7976,7 +7976,36 @@
7976
7976
  ],
7977
7977
  "packet_update_soft_enum": [
7978
7978
  "container",
7979
- []
7979
+ [
7980
+ {
7981
+ "name": "enum_type",
7982
+ "type": "string"
7983
+ },
7984
+ {
7985
+ "name": "options",
7986
+ "type": [
7987
+ "array",
7988
+ {
7989
+ "countType": "varint",
7990
+ "type": "string"
7991
+ }
7992
+ ]
7993
+ },
7994
+ {
7995
+ "name": "action_type",
7996
+ "type": [
7997
+ "mapper",
7998
+ {
7999
+ "type": "u8",
8000
+ "mappings": {
8001
+ "0": "add",
8002
+ "1": "remove",
8003
+ "2": "update"
8004
+ }
8005
+ }
8006
+ ]
8007
+ }
8008
+ ]
7980
8009
  ],
7981
8010
  "packet_network_stack_latency": [
7982
8011
  "container",
@@ -2467,9 +2467,28 @@ packet_set_local_player_as_initialized:
2467
2467
  # StartGame packet.
2468
2468
  runtime_entity_id: varint64
2469
2469
 
2470
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2471
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2472
+ # options should be removed.
2473
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2474
+ # 'Dynamic' field of the CommandEnum set to true.
2470
2475
  packet_update_soft_enum:
2471
2476
  !id: 0x72
2472
2477
  !bound: client
2478
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2479
+ # packet, because the client uses this to recognise which enum to update.
2480
+ enum_type: string
2481
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2482
+ # options will be added to the enum, the enum options will be set to these options or all of these
2483
+ # options will be removed from the enum.
2484
+ options: string[]varint
2485
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2486
+ # depending on what ActionType is used.
2487
+ action_type: u8 =>
2488
+ 0: add
2489
+ 1: remove
2490
+ 2: update
2491
+
2473
2492
 
2474
2493
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2475
2494
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -8044,7 +8044,36 @@
8044
8044
  ],
8045
8045
  "packet_update_soft_enum": [
8046
8046
  "container",
8047
- []
8047
+ [
8048
+ {
8049
+ "name": "enum_type",
8050
+ "type": "string"
8051
+ },
8052
+ {
8053
+ "name": "options",
8054
+ "type": [
8055
+ "array",
8056
+ {
8057
+ "countType": "varint",
8058
+ "type": "string"
8059
+ }
8060
+ ]
8061
+ },
8062
+ {
8063
+ "name": "action_type",
8064
+ "type": [
8065
+ "mapper",
8066
+ {
8067
+ "type": "u8",
8068
+ "mappings": {
8069
+ "0": "add",
8070
+ "1": "remove",
8071
+ "2": "update"
8072
+ }
8073
+ }
8074
+ ]
8075
+ }
8076
+ ]
8048
8077
  ],
8049
8078
  "packet_network_stack_latency": [
8050
8079
  "container",
@@ -2498,9 +2498,28 @@ packet_set_local_player_as_initialized:
2498
2498
  # StartGame packet.
2499
2499
  runtime_entity_id: varint64
2500
2500
 
2501
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2502
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2503
+ # options should be removed.
2504
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2505
+ # 'Dynamic' field of the CommandEnum set to true.
2501
2506
  packet_update_soft_enum:
2502
2507
  !id: 0x72
2503
2508
  !bound: client
2509
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2510
+ # packet, because the client uses this to recognise which enum to update.
2511
+ enum_type: string
2512
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2513
+ # options will be added to the enum, the enum options will be set to these options or all of these
2514
+ # options will be removed from the enum.
2515
+ options: string[]varint
2516
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2517
+ # depending on what ActionType is used.
2518
+ action_type: u8 =>
2519
+ 0: add
2520
+ 1: remove
2521
+ 2: update
2522
+
2504
2523
 
2505
2524
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2506
2525
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -8187,7 +8187,36 @@
8187
8187
  ],
8188
8188
  "packet_update_soft_enum": [
8189
8189
  "container",
8190
- []
8190
+ [
8191
+ {
8192
+ "name": "enum_type",
8193
+ "type": "string"
8194
+ },
8195
+ {
8196
+ "name": "options",
8197
+ "type": [
8198
+ "array",
8199
+ {
8200
+ "countType": "varint",
8201
+ "type": "string"
8202
+ }
8203
+ ]
8204
+ },
8205
+ {
8206
+ "name": "action_type",
8207
+ "type": [
8208
+ "mapper",
8209
+ {
8210
+ "type": "u8",
8211
+ "mappings": {
8212
+ "0": "add",
8213
+ "1": "remove",
8214
+ "2": "update"
8215
+ }
8216
+ }
8217
+ ]
8218
+ }
8219
+ ]
8191
8220
  ],
8192
8221
  "packet_network_stack_latency": [
8193
8222
  "container",
@@ -2498,9 +2498,28 @@ packet_set_local_player_as_initialized:
2498
2498
  # StartGame packet.
2499
2499
  runtime_entity_id: varint64
2500
2500
 
2501
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2502
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2503
+ # options should be removed.
2504
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2505
+ # 'Dynamic' field of the CommandEnum set to true.
2501
2506
  packet_update_soft_enum:
2502
2507
  !id: 0x72
2503
2508
  !bound: client
2509
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2510
+ # packet, because the client uses this to recognise which enum to update.
2511
+ enum_type: string
2512
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2513
+ # options will be added to the enum, the enum options will be set to these options or all of these
2514
+ # options will be removed from the enum.
2515
+ options: string[]varint
2516
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2517
+ # depending on what ActionType is used.
2518
+ action_type: u8 =>
2519
+ 0: add
2520
+ 1: remove
2521
+ 2: update
2522
+
2504
2523
 
2505
2524
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2506
2525
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -8187,7 +8187,36 @@
8187
8187
  ],
8188
8188
  "packet_update_soft_enum": [
8189
8189
  "container",
8190
- []
8190
+ [
8191
+ {
8192
+ "name": "enum_type",
8193
+ "type": "string"
8194
+ },
8195
+ {
8196
+ "name": "options",
8197
+ "type": [
8198
+ "array",
8199
+ {
8200
+ "countType": "varint",
8201
+ "type": "string"
8202
+ }
8203
+ ]
8204
+ },
8205
+ {
8206
+ "name": "action_type",
8207
+ "type": [
8208
+ "mapper",
8209
+ {
8210
+ "type": "u8",
8211
+ "mappings": {
8212
+ "0": "add",
8213
+ "1": "remove",
8214
+ "2": "update"
8215
+ }
8216
+ }
8217
+ ]
8218
+ }
8219
+ ]
8191
8220
  ],
8192
8221
  "packet_network_stack_latency": [
8193
8222
  "container",
@@ -2501,9 +2501,28 @@ packet_set_local_player_as_initialized:
2501
2501
  # StartGame packet.
2502
2502
  runtime_entity_id: varint64
2503
2503
 
2504
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2505
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2506
+ # options should be removed.
2507
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2508
+ # 'Dynamic' field of the CommandEnum set to true.
2504
2509
  packet_update_soft_enum:
2505
2510
  !id: 0x72
2506
2511
  !bound: client
2512
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2513
+ # packet, because the client uses this to recognise which enum to update.
2514
+ enum_type: string
2515
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2516
+ # options will be added to the enum, the enum options will be set to these options or all of these
2517
+ # options will be removed from the enum.
2518
+ options: string[]varint
2519
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2520
+ # depending on what ActionType is used.
2521
+ action_type: u8 =>
2522
+ 0: add
2523
+ 1: remove
2524
+ 2: update
2525
+
2507
2526
 
2508
2527
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2509
2528
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -8291,7 +8291,36 @@
8291
8291
  ],
8292
8292
  "packet_update_soft_enum": [
8293
8293
  "container",
8294
- []
8294
+ [
8295
+ {
8296
+ "name": "enum_type",
8297
+ "type": "string"
8298
+ },
8299
+ {
8300
+ "name": "options",
8301
+ "type": [
8302
+ "array",
8303
+ {
8304
+ "countType": "varint",
8305
+ "type": "string"
8306
+ }
8307
+ ]
8308
+ },
8309
+ {
8310
+ "name": "action_type",
8311
+ "type": [
8312
+ "mapper",
8313
+ {
8314
+ "type": "u8",
8315
+ "mappings": {
8316
+ "0": "add",
8317
+ "1": "remove",
8318
+ "2": "update"
8319
+ }
8320
+ }
8321
+ ]
8322
+ }
8323
+ ]
8295
8324
  ],
8296
8325
  "packet_network_stack_latency": [
8297
8326
  "container",
@@ -2511,9 +2511,28 @@ packet_set_local_player_as_initialized:
2511
2511
  # StartGame packet.
2512
2512
  runtime_entity_id: varint64
2513
2513
 
2514
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2515
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2516
+ # options should be removed.
2517
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2518
+ # 'Dynamic' field of the CommandEnum set to true.
2514
2519
  packet_update_soft_enum:
2515
2520
  !id: 0x72
2516
2521
  !bound: client
2522
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2523
+ # packet, because the client uses this to recognise which enum to update.
2524
+ enum_type: string
2525
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2526
+ # options will be added to the enum, the enum options will be set to these options or all of these
2527
+ # options will be removed from the enum.
2528
+ options: string[]varint
2529
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2530
+ # depending on what ActionType is used.
2531
+ action_type: u8 =>
2532
+ 0: add
2533
+ 1: remove
2534
+ 2: update
2535
+
2517
2536
 
2518
2537
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2519
2538
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -8363,7 +8363,36 @@
8363
8363
  ],
8364
8364
  "packet_update_soft_enum": [
8365
8365
  "container",
8366
- []
8366
+ [
8367
+ {
8368
+ "name": "enum_type",
8369
+ "type": "string"
8370
+ },
8371
+ {
8372
+ "name": "options",
8373
+ "type": [
8374
+ "array",
8375
+ {
8376
+ "countType": "varint",
8377
+ "type": "string"
8378
+ }
8379
+ ]
8380
+ },
8381
+ {
8382
+ "name": "action_type",
8383
+ "type": [
8384
+ "mapper",
8385
+ {
8386
+ "type": "u8",
8387
+ "mappings": {
8388
+ "0": "add",
8389
+ "1": "remove",
8390
+ "2": "update"
8391
+ }
8392
+ }
8393
+ ]
8394
+ }
8395
+ ]
8367
8396
  ],
8368
8397
  "packet_network_stack_latency": [
8369
8398
  "container",
@@ -2511,9 +2511,28 @@ packet_set_local_player_as_initialized:
2511
2511
  # StartGame packet.
2512
2512
  runtime_entity_id: varint64
2513
2513
 
2514
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2515
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2516
+ # options should be removed.
2517
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2518
+ # 'Dynamic' field of the CommandEnum set to true.
2514
2519
  packet_update_soft_enum:
2515
2520
  !id: 0x72
2516
2521
  !bound: client
2522
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2523
+ # packet, because the client uses this to recognise which enum to update.
2524
+ enum_type: string
2525
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2526
+ # options will be added to the enum, the enum options will be set to these options or all of these
2527
+ # options will be removed from the enum.
2528
+ options: string[]varint
2529
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2530
+ # depending on what ActionType is used.
2531
+ action_type: u8 =>
2532
+ 0: add
2533
+ 1: remove
2534
+ 2: update
2535
+
2517
2536
 
2518
2537
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2519
2538
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -8379,7 +8379,36 @@
8379
8379
  ],
8380
8380
  "packet_update_soft_enum": [
8381
8381
  "container",
8382
- []
8382
+ [
8383
+ {
8384
+ "name": "enum_type",
8385
+ "type": "string"
8386
+ },
8387
+ {
8388
+ "name": "options",
8389
+ "type": [
8390
+ "array",
8391
+ {
8392
+ "countType": "varint",
8393
+ "type": "string"
8394
+ }
8395
+ ]
8396
+ },
8397
+ {
8398
+ "name": "action_type",
8399
+ "type": [
8400
+ "mapper",
8401
+ {
8402
+ "type": "u8",
8403
+ "mappings": {
8404
+ "0": "add",
8405
+ "1": "remove",
8406
+ "2": "update"
8407
+ }
8408
+ }
8409
+ ]
8410
+ }
8411
+ ]
8383
8412
  ],
8384
8413
  "packet_network_stack_latency": [
8385
8414
  "container",
@@ -2515,9 +2515,28 @@ packet_set_local_player_as_initialized:
2515
2515
  # StartGame packet.
2516
2516
  runtime_entity_id: varint64
2517
2517
 
2518
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2519
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2520
+ # options should be removed.
2521
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2522
+ # 'Dynamic' field of the CommandEnum set to true.
2518
2523
  packet_update_soft_enum:
2519
2524
  !id: 0x72
2520
2525
  !bound: client
2526
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2527
+ # packet, because the client uses this to recognise which enum to update.
2528
+ enum_type: string
2529
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2530
+ # options will be added to the enum, the enum options will be set to these options or all of these
2531
+ # options will be removed from the enum.
2532
+ options: string[]varint
2533
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2534
+ # depending on what ActionType is used.
2535
+ action_type: u8 =>
2536
+ 0: add
2537
+ 1: remove
2538
+ 2: update
2539
+
2521
2540
 
2522
2541
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2523
2542
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the
@@ -8424,7 +8424,36 @@
8424
8424
  ],
8425
8425
  "packet_update_soft_enum": [
8426
8426
  "container",
8427
- []
8427
+ [
8428
+ {
8429
+ "name": "enum_type",
8430
+ "type": "string"
8431
+ },
8432
+ {
8433
+ "name": "options",
8434
+ "type": [
8435
+ "array",
8436
+ {
8437
+ "countType": "varint",
8438
+ "type": "string"
8439
+ }
8440
+ ]
8441
+ },
8442
+ {
8443
+ "name": "action_type",
8444
+ "type": [
8445
+ "mapper",
8446
+ {
8447
+ "type": "u8",
8448
+ "mappings": {
8449
+ "0": "add",
8450
+ "1": "remove",
8451
+ "2": "update"
8452
+ }
8453
+ }
8454
+ ]
8455
+ }
8456
+ ]
8428
8457
  ],
8429
8458
  "packet_network_stack_latency": [
8430
8459
  "container",
@@ -2516,9 +2516,28 @@ packet_set_local_player_as_initialized:
2516
2516
  # StartGame packet.
2517
2517
  runtime_entity_id: varint64
2518
2518
 
2519
+ # UpdateSoftEnum is sent by the server to update a soft enum, also known as a dynamic enum, previously sent
2520
+ # in the AvailableCommands packet. It is sent whenever the enum should get new options or when some of its
2521
+ # options should be removed.
2522
+ # The UpdateSoftEnum packet will apply for enums that have been set in the AvailableCommands packet with the
2523
+ # 'Dynamic' field of the CommandEnum set to true.
2519
2524
  packet_update_soft_enum:
2520
2525
  !id: 0x72
2521
2526
  !bound: client
2527
+ # EnumType is the type of the enum. This type must be identical to the one set in the AvailableCommands
2528
+ # packet, because the client uses this to recognise which enum to update.
2529
+ enum_type: string
2530
+ # Options is a list of options that should be updated. Depending on the ActionType field, either these
2531
+ # options will be added to the enum, the enum options will be set to these options or all of these
2532
+ # options will be removed from the enum.
2533
+ options: string[]varint
2534
+ # ActionType is the type of the action to execute on the enum. The Options field has a different result,
2535
+ # depending on what ActionType is used.
2536
+ action_type: u8 =>
2537
+ 0: add
2538
+ 1: remove
2539
+ 2: update
2540
+
2522
2541
 
2523
2542
  # NetworkStackLatency is sent by the server (and the client, on development builds) to measure the latency
2524
2543
  # over the entire Minecraft stack, rather than the RakNet latency. It has other usages too, such as the