minecraft-data 3.105.0 → 3.106.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 (208) hide show
  1. package/.github/workflows/commands.yml +24 -0
  2. package/.github/workflows/npm-publish.yml +6 -4
  3. package/doc/history.md +11 -0
  4. package/index.d.ts +0 -3
  5. package/minecraft-data/data/bedrock/1.16.220/protocol.json +36 -1
  6. package/minecraft-data/data/bedrock/1.16.220/types.yml +5 -30
  7. package/minecraft-data/data/bedrock/1.17.0/protocol.json +36 -1
  8. package/minecraft-data/data/bedrock/1.17.0/types.yml +5 -30
  9. package/minecraft-data/data/bedrock/1.17.10/protocol.json +36 -1
  10. package/minecraft-data/data/bedrock/1.17.10/types.yml +5 -30
  11. package/minecraft-data/data/bedrock/1.17.30/protocol.json +36 -1
  12. package/minecraft-data/data/bedrock/1.17.30/types.yml +5 -30
  13. package/minecraft-data/data/bedrock/1.17.40/protocol.json +36 -1
  14. package/minecraft-data/data/bedrock/1.17.40/types.yml +5 -30
  15. package/minecraft-data/data/bedrock/1.18.0/protocol.json +36 -1
  16. package/minecraft-data/data/bedrock/1.18.0/types.yml +5 -30
  17. package/minecraft-data/data/bedrock/1.18.11/protocol.json +36 -1
  18. package/minecraft-data/data/bedrock/1.18.11/types.yml +5 -30
  19. package/minecraft-data/data/bedrock/1.18.30/protocol.json +36 -1
  20. package/minecraft-data/data/bedrock/1.18.30/types.yml +5 -30
  21. package/minecraft-data/data/bedrock/1.19.1/protocol.json +36 -1
  22. package/minecraft-data/data/bedrock/1.19.1/types.yml +5 -30
  23. package/minecraft-data/data/bedrock/1.19.10/protocol.json +36 -1
  24. package/minecraft-data/data/bedrock/1.19.10/types.yml +5 -30
  25. package/minecraft-data/data/bedrock/1.19.20/protocol.json +36 -1
  26. package/minecraft-data/data/bedrock/1.19.20/types.yml +5 -30
  27. package/minecraft-data/data/bedrock/1.19.21/protocol.json +36 -1
  28. package/minecraft-data/data/bedrock/1.19.21/types.yml +5 -30
  29. package/minecraft-data/data/bedrock/1.19.30/protocol.json +36 -1
  30. package/minecraft-data/data/bedrock/1.19.30/types.yml +5 -30
  31. package/minecraft-data/data/bedrock/1.19.40/protocol.json +36 -1
  32. package/minecraft-data/data/bedrock/1.19.40/types.yml +5 -30
  33. package/minecraft-data/data/bedrock/1.19.50/protocol.json +36 -1
  34. package/minecraft-data/data/bedrock/1.19.50/types.yml +5 -30
  35. package/minecraft-data/data/bedrock/1.19.60/protocol.json +36 -1
  36. package/minecraft-data/data/bedrock/1.19.60/types.yml +5 -30
  37. package/minecraft-data/data/bedrock/1.19.62/protocol.json +36 -1
  38. package/minecraft-data/data/bedrock/1.19.62/types.yml +5 -30
  39. package/minecraft-data/data/bedrock/1.19.70/protocol.json +36 -1
  40. package/minecraft-data/data/bedrock/1.19.70/types.yml +5 -30
  41. package/minecraft-data/data/bedrock/1.19.80/protocol.json +36 -1
  42. package/minecraft-data/data/bedrock/1.19.80/types.yml +5 -30
  43. package/minecraft-data/data/bedrock/1.20.0/protocol.json +36 -1
  44. package/minecraft-data/data/bedrock/1.20.0/types.yml +5 -30
  45. package/minecraft-data/data/bedrock/1.20.10/protocol.json +36 -1
  46. package/minecraft-data/data/bedrock/1.20.10/types.yml +5 -30
  47. package/minecraft-data/data/bedrock/1.20.30/protocol.json +36 -1
  48. package/minecraft-data/data/bedrock/1.20.30/types.yml +5 -30
  49. package/minecraft-data/data/bedrock/1.20.40/protocol.json +36 -1
  50. package/minecraft-data/data/bedrock/1.20.40/types.yml +5 -30
  51. package/minecraft-data/data/bedrock/1.20.50/protocol.json +36 -1
  52. package/minecraft-data/data/bedrock/1.20.50/types.yml +5 -30
  53. package/minecraft-data/data/bedrock/1.20.61/protocol.json +36 -1
  54. package/minecraft-data/data/bedrock/1.20.61/types.yml +5 -30
  55. package/minecraft-data/data/bedrock/1.20.71/protocol.json +36 -1
  56. package/minecraft-data/data/bedrock/1.20.71/types.yml +5 -30
  57. package/minecraft-data/data/bedrock/1.20.80/protocol.json +36 -1
  58. package/minecraft-data/data/bedrock/1.20.80/types.yml +5 -30
  59. package/minecraft-data/data/bedrock/1.21.0/protocol.json +36 -1
  60. package/minecraft-data/data/bedrock/1.21.0/types.yml +5 -30
  61. package/minecraft-data/data/bedrock/1.21.100/protocol.json +36 -1
  62. package/minecraft-data/data/bedrock/1.21.100/types.yml +5 -30
  63. package/minecraft-data/data/bedrock/1.21.111/protocol.json +36 -1
  64. package/minecraft-data/data/bedrock/1.21.111/types.yml +5 -30
  65. package/minecraft-data/data/bedrock/1.21.120/protocol.json +36 -1
  66. package/minecraft-data/data/bedrock/1.21.120/types.yml +5 -30
  67. package/minecraft-data/data/bedrock/1.21.124/protocol.json +36 -1
  68. package/minecraft-data/data/bedrock/1.21.124/types.yml +5 -30
  69. package/minecraft-data/data/bedrock/1.21.130/protocol.json +36 -1
  70. package/minecraft-data/data/bedrock/1.21.130/types.yml +5 -30
  71. package/minecraft-data/data/bedrock/1.21.2/protocol.json +36 -1
  72. package/minecraft-data/data/bedrock/1.21.2/types.yml +5 -30
  73. package/minecraft-data/data/bedrock/1.21.20/protocol.json +36 -1
  74. package/minecraft-data/data/bedrock/1.21.20/types.yml +5 -30
  75. package/minecraft-data/data/bedrock/1.21.30/protocol.json +36 -1
  76. package/minecraft-data/data/bedrock/1.21.30/types.yml +5 -30
  77. package/minecraft-data/data/bedrock/1.21.42/protocol.json +36 -1
  78. package/minecraft-data/data/bedrock/1.21.42/types.yml +5 -30
  79. package/minecraft-data/data/bedrock/1.21.50/protocol.json +36 -1
  80. package/minecraft-data/data/bedrock/1.21.50/types.yml +5 -30
  81. package/minecraft-data/data/bedrock/1.21.60/protocol.json +36 -1
  82. package/minecraft-data/data/bedrock/1.21.60/types.yml +5 -30
  83. package/minecraft-data/data/bedrock/1.21.70/protocol.json +36 -1
  84. package/minecraft-data/data/bedrock/1.21.70/types.yml +5 -30
  85. package/minecraft-data/data/bedrock/1.21.80/protocol.json +36 -1
  86. package/minecraft-data/data/bedrock/1.21.80/types.yml +5 -30
  87. package/minecraft-data/data/bedrock/1.21.90/protocol.json +36 -1
  88. package/minecraft-data/data/bedrock/1.21.90/types.yml +5 -30
  89. package/minecraft-data/data/bedrock/1.21.93/protocol.json +36 -1
  90. package/minecraft-data/data/bedrock/1.21.93/types.yml +5 -30
  91. package/minecraft-data/data/bedrock/1.26.0/protocol.json +36 -1
  92. package/minecraft-data/data/bedrock/latest/types.yml +5 -30
  93. package/minecraft-data/data/pc/1.10/proto.yml +7 -9
  94. package/minecraft-data/data/pc/1.10/protocol.json +23 -30
  95. package/minecraft-data/data/pc/1.10-pre1/proto.yml +7 -9
  96. package/minecraft-data/data/pc/1.10-pre1/protocol.json +23 -30
  97. package/minecraft-data/data/pc/1.11/proto.yml +7 -9
  98. package/minecraft-data/data/pc/1.11/protocol.json +23 -30
  99. package/minecraft-data/data/pc/1.12/proto.yml +7 -9
  100. package/minecraft-data/data/pc/1.12/protocol.json +23 -30
  101. package/minecraft-data/data/pc/1.12-pre4/proto.yml +7 -9
  102. package/minecraft-data/data/pc/1.12-pre4/protocol.json +23 -30
  103. package/minecraft-data/data/pc/1.12.1/proto.yml +7 -9
  104. package/minecraft-data/data/pc/1.12.1/protocol.json +23 -30
  105. package/minecraft-data/data/pc/1.12.2/proto.yml +7 -9
  106. package/minecraft-data/data/pc/1.12.2/protocol.json +23 -30
  107. package/minecraft-data/data/pc/1.13/proto.yml +7 -9
  108. package/minecraft-data/data/pc/1.13/protocol.json +23 -30
  109. package/minecraft-data/data/pc/1.13.1/proto.yml +7 -9
  110. package/minecraft-data/data/pc/1.13.1/protocol.json +23 -30
  111. package/minecraft-data/data/pc/1.13.2/proto.yml +7 -9
  112. package/minecraft-data/data/pc/1.13.2/protocol.json +23 -30
  113. package/minecraft-data/data/pc/1.13.2-pre1/proto.yml +7 -9
  114. package/minecraft-data/data/pc/1.13.2-pre1/protocol.json +23 -30
  115. package/minecraft-data/data/pc/1.13.2-pre2/proto.yml +7 -9
  116. package/minecraft-data/data/pc/1.13.2-pre2/protocol.json +23 -30
  117. package/minecraft-data/data/pc/1.14/proto.yml +7 -9
  118. package/minecraft-data/data/pc/1.14/protocol.json +23 -30
  119. package/minecraft-data/data/pc/1.14.1/proto.yml +7 -9
  120. package/minecraft-data/data/pc/1.14.1/protocol.json +23 -30
  121. package/minecraft-data/data/pc/1.14.3/proto.yml +7 -9
  122. package/minecraft-data/data/pc/1.14.3/protocol.json +23 -30
  123. package/minecraft-data/data/pc/1.14.4/proto.yml +7 -9
  124. package/minecraft-data/data/pc/1.14.4/protocol.json +23 -30
  125. package/minecraft-data/data/pc/1.15/proto.yml +7 -9
  126. package/minecraft-data/data/pc/1.15/protocol.json +23 -30
  127. package/minecraft-data/data/pc/1.15.1/proto.yml +7 -9
  128. package/minecraft-data/data/pc/1.15.1/protocol.json +23 -30
  129. package/minecraft-data/data/pc/1.15.2/proto.yml +7 -9
  130. package/minecraft-data/data/pc/1.15.2/protocol.json +23 -30
  131. package/minecraft-data/data/pc/1.16/proto.yml +7 -9
  132. package/minecraft-data/data/pc/1.16/protocol.json +23 -30
  133. package/minecraft-data/data/pc/1.16-rc1/proto.yml +7 -9
  134. package/minecraft-data/data/pc/1.16-rc1/protocol.json +23 -30
  135. package/minecraft-data/data/pc/1.16.1/proto.yml +7 -9
  136. package/minecraft-data/data/pc/1.16.1/protocol.json +23 -30
  137. package/minecraft-data/data/pc/1.16.2/proto.yml +7 -9
  138. package/minecraft-data/data/pc/1.16.2/protocol.json +23 -30
  139. package/minecraft-data/data/pc/1.17/proto.yml +7 -9
  140. package/minecraft-data/data/pc/1.17/protocol.json +23 -30
  141. package/minecraft-data/data/pc/1.17.1/proto.yml +7 -9
  142. package/minecraft-data/data/pc/1.17.1/protocol.json +23 -30
  143. package/minecraft-data/data/pc/1.18/proto.yml +7 -9
  144. package/minecraft-data/data/pc/1.18/protocol.json +23 -30
  145. package/minecraft-data/data/pc/1.18.2/proto.yml +7 -9
  146. package/minecraft-data/data/pc/1.18.2/protocol.json +23 -30
  147. package/minecraft-data/data/pc/1.19/proto.yml +6 -6
  148. package/minecraft-data/data/pc/1.19/protocol.json +21 -20
  149. package/minecraft-data/data/pc/1.19.2/proto.yml +6 -6
  150. package/minecraft-data/data/pc/1.19.2/protocol.json +21 -20
  151. package/minecraft-data/data/pc/1.19.3/proto.yml +6 -6
  152. package/minecraft-data/data/pc/1.19.3/protocol.json +21 -20
  153. package/minecraft-data/data/pc/1.19.4/proto.yml +6 -6
  154. package/minecraft-data/data/pc/1.19.4/protocol.json +21 -20
  155. package/minecraft-data/data/pc/1.20/proto.yml +6 -6
  156. package/minecraft-data/data/pc/1.20/protocol.json +21 -20
  157. package/minecraft-data/data/pc/1.20.2/proto.yml +6 -6
  158. package/minecraft-data/data/pc/1.20.2/protocol.json +21 -20
  159. package/minecraft-data/data/pc/1.20.3/proto.yml +6 -6
  160. package/minecraft-data/data/pc/1.20.3/protocol.json +21 -20
  161. package/minecraft-data/data/pc/1.20.5/proto.yml +6 -6
  162. package/minecraft-data/data/pc/1.20.5/protocol.json +21 -20
  163. package/minecraft-data/data/pc/1.21.1/proto.yml +6 -6
  164. package/minecraft-data/data/pc/1.21.1/protocol.json +21 -20
  165. package/minecraft-data/data/pc/1.21.3/proto.yml +6 -6
  166. package/minecraft-data/data/pc/1.21.3/protocol.json +21 -20
  167. package/minecraft-data/data/pc/1.21.4/proto.yml +6 -6
  168. package/minecraft-data/data/pc/1.21.4/protocol.json +21 -20
  169. package/minecraft-data/data/pc/1.21.5/proto.yml +6 -6
  170. package/minecraft-data/data/pc/1.21.5/protocol.json +21 -20
  171. package/minecraft-data/data/pc/1.21.6/proto.yml +6 -6
  172. package/minecraft-data/data/pc/1.21.6/protocol.json +21 -20
  173. package/minecraft-data/data/pc/1.21.8/proto.yml +6 -6
  174. package/minecraft-data/data/pc/1.21.8/protocol.json +21 -20
  175. package/minecraft-data/data/pc/1.21.9/proto.yml +0 -1
  176. package/minecraft-data/data/pc/1.7/proto.yml +6 -6
  177. package/minecraft-data/data/pc/1.7/protocol.json +21 -20
  178. package/minecraft-data/data/pc/1.8/proto.yml +9 -12
  179. package/minecraft-data/data/pc/1.8/protocol.json +25 -40
  180. package/minecraft-data/data/pc/1.9/proto.yml +7 -9
  181. package/minecraft-data/data/pc/1.9/protocol.json +23 -30
  182. package/minecraft-data/data/pc/1.9.1-pre2/proto.yml +7 -9
  183. package/minecraft-data/data/pc/1.9.1-pre2/protocol.json +23 -30
  184. package/minecraft-data/data/pc/1.9.2/proto.yml +7 -9
  185. package/minecraft-data/data/pc/1.9.2/protocol.json +23 -30
  186. package/minecraft-data/data/pc/1.9.4/proto.yml +7 -9
  187. package/minecraft-data/data/pc/1.9.4/protocol.json +23 -30
  188. package/minecraft-data/data/pc/15w40b/proto.yml +7 -9
  189. package/minecraft-data/data/pc/15w40b/protocol.json +23 -30
  190. package/minecraft-data/data/pc/16w20a/proto.yml +7 -9
  191. package/minecraft-data/data/pc/16w20a/protocol.json +23 -30
  192. package/minecraft-data/data/pc/16w35a/proto.yml +7 -9
  193. package/minecraft-data/data/pc/16w35a/protocol.json +23 -30
  194. package/minecraft-data/data/pc/17w15a/proto.yml +7 -9
  195. package/minecraft-data/data/pc/17w15a/protocol.json +23 -30
  196. package/minecraft-data/data/pc/17w18b/proto.yml +7 -9
  197. package/minecraft-data/data/pc/17w18b/protocol.json +23 -30
  198. package/minecraft-data/data/pc/17w50a/proto.yml +7 -9
  199. package/minecraft-data/data/pc/17w50a/protocol.json +23 -30
  200. package/minecraft-data/data/pc/20w13b/proto.yml +7 -9
  201. package/minecraft-data/data/pc/20w13b/protocol.json +23 -30
  202. package/minecraft-data/data/pc/21w07a/proto.yml +7 -9
  203. package/minecraft-data/data/pc/21w07a/protocol.json +23 -30
  204. package/minecraft-data/data/pc/common/features.json +0 -5
  205. package/minecraft-data/data/pc/common/protocolVersions.json +96 -0
  206. package/minecraft-data/data/pc/latest/proto.yml +0 -1
  207. package/minecraft-data/doc/history.md +6 -0
  208. package/package.json +1 -1
@@ -575,7 +575,7 @@ TransactionActions: []varint
575
575
  99999: craft
576
576
  _: source_type?
577
577
  if container or craft:
578
- inventory_id: WindowIDVarint
578
+ inventory_id: WindowIDZigzag32
579
579
  if world_interaction:
580
580
  flags: varint
581
581
  if craft or craft_slot:
@@ -1416,7 +1416,7 @@ CommandPermissionLevelVarint: u8 =>
1416
1416
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1417
1417
  # Below window IDs are hard-coded and created when the game starts and the server does not
1418
1418
  # send a `container_open` for them.
1419
- WindowID: i8 =>
1419
+ WindowID_: =>
1420
1420
  -100: drop_contents
1421
1421
  -24: beacon
1422
1422
  -23: trading_output
@@ -1445,34 +1445,9 @@ WindowID: i8 =>
1445
1445
  123: fixed_inventory
1446
1446
  124: ui
1447
1447
 
1448
- WindowIDVarint: varint =>
1449
- -100: drop_contents
1450
- -24: beacon
1451
- -23: trading_output
1452
- -22: trading_use_inputs
1453
- -21: trading_input_2
1454
- -20: trading_input_1
1455
- -17: enchant_output
1456
- -16: enchant_material
1457
- -15: enchant_input
1458
- -13: anvil_output
1459
- -12: anvil_result
1460
- -11: anvil_material
1461
- -10: container_input
1462
- -5: crafting_use_ingredient
1463
- -4: crafting_result
1464
- -3: crafting_remove_ingredient
1465
- -2: crafting_add_ingredient
1466
- -1: none
1467
- 0: inventory
1468
- 1: first
1469
- 100: last
1470
- 119: offhand
1471
- 120: armor
1472
- 121: creative
1473
- 122: hotbar
1474
- 123: fixed_inventory
1475
- 124: ui
1448
+ WindowID: i8 => WindowID_
1449
+ WindowIDVarint: varint => WindowID_
1450
+ WindowIDZigzag32: zigzag32 => WindowID_
1476
1451
 
1477
1452
  WindowType: i8 =>
1478
1453
  -9: none
@@ -1347,7 +1347,7 @@
1347
1347
  [
1348
1348
  {
1349
1349
  "name": "inventory_id",
1350
- "type": "WindowIDVarint"
1350
+ "type": "WindowIDZigzag32"
1351
1351
  }
1352
1352
  ]
1353
1353
  ],
@@ -3601,6 +3601,41 @@
3601
3601
  }
3602
3602
  }
3603
3603
  ],
3604
+ "WindowIDZigzag32": [
3605
+ "mapper",
3606
+ {
3607
+ "type": "zigzag32",
3608
+ "mappings": {
3609
+ "0": "inventory",
3610
+ "1": "first",
3611
+ "100": "last",
3612
+ "119": "offhand",
3613
+ "120": "armor",
3614
+ "121": "creative",
3615
+ "122": "hotbar",
3616
+ "123": "fixed_inventory",
3617
+ "124": "ui",
3618
+ "-100": "drop_contents",
3619
+ "-24": "beacon",
3620
+ "-23": "trading_output",
3621
+ "-22": "trading_use_inputs",
3622
+ "-21": "trading_input_2",
3623
+ "-20": "trading_input_1",
3624
+ "-17": "enchant_output",
3625
+ "-16": "enchant_material",
3626
+ "-15": "enchant_input",
3627
+ "-13": "anvil_output",
3628
+ "-12": "anvil_result",
3629
+ "-11": "anvil_material",
3630
+ "-10": "container_input",
3631
+ "-5": "crafting_use_ingredient",
3632
+ "-4": "crafting_result",
3633
+ "-3": "crafting_remove_ingredient",
3634
+ "-2": "crafting_add_ingredient",
3635
+ "-1": "none"
3636
+ }
3637
+ }
3638
+ ],
3604
3639
  "WindowType": [
3605
3640
  "mapper",
3606
3641
  {
@@ -578,7 +578,7 @@ TransactionActions: []varint
578
578
  99999: craft
579
579
  _: source_type?
580
580
  if container or craft:
581
- inventory_id: WindowIDVarint
581
+ inventory_id: WindowIDZigzag32
582
582
  if world_interaction:
583
583
  flags: varint
584
584
  if craft or craft_slot:
@@ -1420,7 +1420,7 @@ CommandPermissionLevelVarint: u8 =>
1420
1420
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1421
1421
  # Below window IDs are hard-coded and created when the game starts and the server does not
1422
1422
  # send a `container_open` for them.
1423
- WindowID: i8 =>
1423
+ WindowID_: =>
1424
1424
  -100: drop_contents
1425
1425
  -24: beacon
1426
1426
  -23: trading_output
@@ -1449,34 +1449,9 @@ WindowID: i8 =>
1449
1449
  123: fixed_inventory
1450
1450
  124: ui
1451
1451
 
1452
- WindowIDVarint: varint =>
1453
- -100: drop_contents
1454
- -24: beacon
1455
- -23: trading_output
1456
- -22: trading_use_inputs
1457
- -21: trading_input_2
1458
- -20: trading_input_1
1459
- -17: enchant_output
1460
- -16: enchant_material
1461
- -15: enchant_input
1462
- -13: anvil_output
1463
- -12: anvil_result
1464
- -11: anvil_material
1465
- -10: container_input
1466
- -5: crafting_use_ingredient
1467
- -4: crafting_result
1468
- -3: crafting_remove_ingredient
1469
- -2: crafting_add_ingredient
1470
- -1: none
1471
- 0: inventory
1472
- 1: first
1473
- 100: last
1474
- 119: offhand
1475
- 120: armor
1476
- 121: creative
1477
- 122: hotbar
1478
- 123: fixed_inventory
1479
- 124: ui
1452
+ WindowID: i8 => WindowID_
1453
+ WindowIDVarint: varint => WindowID_
1454
+ WindowIDZigzag32: zigzag32 => WindowID_
1480
1455
 
1481
1456
  WindowType: i8 =>
1482
1457
  -9: none
@@ -1347,7 +1347,7 @@
1347
1347
  [
1348
1348
  {
1349
1349
  "name": "inventory_id",
1350
- "type": "WindowIDVarint"
1350
+ "type": "WindowIDZigzag32"
1351
1351
  }
1352
1352
  ]
1353
1353
  ],
@@ -3613,6 +3613,41 @@
3613
3613
  }
3614
3614
  }
3615
3615
  ],
3616
+ "WindowIDZigzag32": [
3617
+ "mapper",
3618
+ {
3619
+ "type": "zigzag32",
3620
+ "mappings": {
3621
+ "0": "inventory",
3622
+ "1": "first",
3623
+ "100": "last",
3624
+ "119": "offhand",
3625
+ "120": "armor",
3626
+ "121": "creative",
3627
+ "122": "hotbar",
3628
+ "123": "fixed_inventory",
3629
+ "124": "ui",
3630
+ "-100": "drop_contents",
3631
+ "-24": "beacon",
3632
+ "-23": "trading_output",
3633
+ "-22": "trading_use_inputs",
3634
+ "-21": "trading_input_2",
3635
+ "-20": "trading_input_1",
3636
+ "-17": "enchant_output",
3637
+ "-16": "enchant_material",
3638
+ "-15": "enchant_input",
3639
+ "-13": "anvil_output",
3640
+ "-12": "anvil_result",
3641
+ "-11": "anvil_material",
3642
+ "-10": "container_input",
3643
+ "-5": "crafting_use_ingredient",
3644
+ "-4": "crafting_result",
3645
+ "-3": "crafting_remove_ingredient",
3646
+ "-2": "crafting_add_ingredient",
3647
+ "-1": "none"
3648
+ }
3649
+ }
3650
+ ],
3616
3651
  "WindowType": [
3617
3652
  "mapper",
3618
3653
  {
@@ -578,7 +578,7 @@ TransactionActions: []varint
578
578
  99999: craft
579
579
  _: source_type?
580
580
  if container or craft:
581
- inventory_id: WindowIDVarint
581
+ inventory_id: WindowIDZigzag32
582
582
  if world_interaction:
583
583
  flags: varint
584
584
  if craft or craft_slot:
@@ -1428,7 +1428,7 @@ CommandPermissionLevelVarint: u8 =>
1428
1428
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1429
1429
  # Below window IDs are hard-coded and created when the game starts and the server does not
1430
1430
  # send a `container_open` for them.
1431
- WindowID: i8 =>
1431
+ WindowID_: =>
1432
1432
  -100: drop_contents
1433
1433
  -24: beacon
1434
1434
  -23: trading_output
@@ -1457,34 +1457,9 @@ WindowID: i8 =>
1457
1457
  123: fixed_inventory
1458
1458
  124: ui
1459
1459
 
1460
- WindowIDVarint: varint =>
1461
- -100: drop_contents
1462
- -24: beacon
1463
- -23: trading_output
1464
- -22: trading_use_inputs
1465
- -21: trading_input_2
1466
- -20: trading_input_1
1467
- -17: enchant_output
1468
- -16: enchant_material
1469
- -15: enchant_input
1470
- -13: anvil_output
1471
- -12: anvil_result
1472
- -11: anvil_material
1473
- -10: container_input
1474
- -5: crafting_use_ingredient
1475
- -4: crafting_result
1476
- -3: crafting_remove_ingredient
1477
- -2: crafting_add_ingredient
1478
- -1: none
1479
- 0: inventory
1480
- 1: first
1481
- 100: last
1482
- 119: offhand
1483
- 120: armor
1484
- 121: creative
1485
- 122: hotbar
1486
- 123: fixed_inventory
1487
- 124: ui
1460
+ WindowID: i8 => WindowID_
1461
+ WindowIDVarint: varint => WindowID_
1462
+ WindowIDZigzag32: zigzag32 => WindowID_
1488
1463
 
1489
1464
  WindowType: i8 =>
1490
1465
  -9: none
@@ -1368,7 +1368,7 @@
1368
1368
  [
1369
1369
  {
1370
1370
  "name": "inventory_id",
1371
- "type": "WindowIDVarint"
1371
+ "type": "WindowIDZigzag32"
1372
1372
  }
1373
1373
  ]
1374
1374
  ],
@@ -3615,6 +3615,41 @@
3615
3615
  }
3616
3616
  }
3617
3617
  ],
3618
+ "WindowIDZigzag32": [
3619
+ "mapper",
3620
+ {
3621
+ "type": "zigzag32",
3622
+ "mappings": {
3623
+ "0": "inventory",
3624
+ "1": "first",
3625
+ "100": "last",
3626
+ "119": "offhand",
3627
+ "120": "armor",
3628
+ "121": "creative",
3629
+ "122": "hotbar",
3630
+ "123": "fixed_inventory",
3631
+ "124": "ui",
3632
+ "-100": "drop_contents",
3633
+ "-24": "beacon",
3634
+ "-23": "trading_output",
3635
+ "-22": "trading_use_inputs",
3636
+ "-21": "trading_input_2",
3637
+ "-20": "trading_input_1",
3638
+ "-17": "enchant_output",
3639
+ "-16": "enchant_material",
3640
+ "-15": "enchant_input",
3641
+ "-13": "anvil_output",
3642
+ "-12": "anvil_result",
3643
+ "-11": "anvil_material",
3644
+ "-10": "container_input",
3645
+ "-5": "crafting_use_ingredient",
3646
+ "-4": "crafting_result",
3647
+ "-3": "crafting_remove_ingredient",
3648
+ "-2": "crafting_add_ingredient",
3649
+ "-1": "none"
3650
+ }
3651
+ }
3652
+ ],
3618
3653
  "WindowType": [
3619
3654
  "mapper",
3620
3655
  {
@@ -587,7 +587,7 @@ TransactionActions: []varint
587
587
  99999: craft
588
588
  _: source_type?
589
589
  if container or craft:
590
- inventory_id: WindowIDVarint
590
+ inventory_id: WindowIDZigzag32
591
591
  if world_interaction:
592
592
  flags: varint
593
593
  if craft or craft_slot:
@@ -1431,7 +1431,7 @@ CommandPermissionLevelVarint: u8 =>
1431
1431
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1432
1432
  # Below window IDs are hard-coded and created when the game starts and the server does not
1433
1433
  # send a `container_open` for them.
1434
- WindowID: i8 =>
1434
+ WindowID_: =>
1435
1435
  -100: drop_contents
1436
1436
  -24: beacon
1437
1437
  -23: trading_output
@@ -1460,34 +1460,9 @@ WindowID: i8 =>
1460
1460
  123: fixed_inventory
1461
1461
  124: ui
1462
1462
 
1463
- WindowIDVarint: varint =>
1464
- -100: drop_contents
1465
- -24: beacon
1466
- -23: trading_output
1467
- -22: trading_use_inputs
1468
- -21: trading_input_2
1469
- -20: trading_input_1
1470
- -17: enchant_output
1471
- -16: enchant_material
1472
- -15: enchant_input
1473
- -13: anvil_output
1474
- -12: anvil_result
1475
- -11: anvil_material
1476
- -10: container_input
1477
- -5: crafting_use_ingredient
1478
- -4: crafting_result
1479
- -3: crafting_remove_ingredient
1480
- -2: crafting_add_ingredient
1481
- -1: none
1482
- 0: inventory
1483
- 1: first
1484
- 100: last
1485
- 119: offhand
1486
- 120: armor
1487
- 121: creative
1488
- 122: hotbar
1489
- 123: fixed_inventory
1490
- 124: ui
1463
+ WindowID: i8 => WindowID_
1464
+ WindowIDVarint: varint => WindowID_
1465
+ WindowIDZigzag32: zigzag32 => WindowID_
1491
1466
 
1492
1467
  WindowType: i8 =>
1493
1468
  -9: none
@@ -1371,7 +1371,7 @@
1371
1371
  [
1372
1372
  {
1373
1373
  "name": "inventory_id",
1374
- "type": "WindowIDVarint"
1374
+ "type": "WindowIDZigzag32"
1375
1375
  }
1376
1376
  ]
1377
1377
  ],
@@ -3618,6 +3618,41 @@
3618
3618
  }
3619
3619
  }
3620
3620
  ],
3621
+ "WindowIDZigzag32": [
3622
+ "mapper",
3623
+ {
3624
+ "type": "zigzag32",
3625
+ "mappings": {
3626
+ "0": "inventory",
3627
+ "1": "first",
3628
+ "100": "last",
3629
+ "119": "offhand",
3630
+ "120": "armor",
3631
+ "121": "creative",
3632
+ "122": "hotbar",
3633
+ "123": "fixed_inventory",
3634
+ "124": "ui",
3635
+ "-100": "drop_contents",
3636
+ "-24": "beacon",
3637
+ "-23": "trading_output",
3638
+ "-22": "trading_use_inputs",
3639
+ "-21": "trading_input_2",
3640
+ "-20": "trading_input_1",
3641
+ "-17": "enchant_output",
3642
+ "-16": "enchant_material",
3643
+ "-15": "enchant_input",
3644
+ "-13": "anvil_output",
3645
+ "-12": "anvil_result",
3646
+ "-11": "anvil_material",
3647
+ "-10": "container_input",
3648
+ "-5": "crafting_use_ingredient",
3649
+ "-4": "crafting_result",
3650
+ "-3": "crafting_remove_ingredient",
3651
+ "-2": "crafting_add_ingredient",
3652
+ "-1": "none"
3653
+ }
3654
+ }
3655
+ ],
3621
3656
  "WindowType": [
3622
3657
  "mapper",
3623
3658
  {
@@ -590,7 +590,7 @@ TransactionActions: []varint
590
590
  99999: craft
591
591
  _: source_type?
592
592
  if container or craft:
593
- inventory_id: WindowIDVarint
593
+ inventory_id: WindowIDZigzag32
594
594
  if world_interaction:
595
595
  flags: varint
596
596
  if craft or craft_slot:
@@ -1434,7 +1434,7 @@ CommandPermissionLevelVarint: u8 =>
1434
1434
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1435
1435
  # Below window IDs are hard-coded and created when the game starts and the server does not
1436
1436
  # send a `container_open` for them.
1437
- WindowID: i8 =>
1437
+ WindowID_: =>
1438
1438
  -100: drop_contents
1439
1439
  -24: beacon
1440
1440
  -23: trading_output
@@ -1463,34 +1463,9 @@ WindowID: i8 =>
1463
1463
  123: fixed_inventory
1464
1464
  124: ui
1465
1465
 
1466
- WindowIDVarint: varint =>
1467
- -100: drop_contents
1468
- -24: beacon
1469
- -23: trading_output
1470
- -22: trading_use_inputs
1471
- -21: trading_input_2
1472
- -20: trading_input_1
1473
- -17: enchant_output
1474
- -16: enchant_material
1475
- -15: enchant_input
1476
- -13: anvil_output
1477
- -12: anvil_result
1478
- -11: anvil_material
1479
- -10: container_input
1480
- -5: crafting_use_ingredient
1481
- -4: crafting_result
1482
- -3: crafting_remove_ingredient
1483
- -2: crafting_add_ingredient
1484
- -1: none
1485
- 0: inventory
1486
- 1: first
1487
- 100: last
1488
- 119: offhand
1489
- 120: armor
1490
- 121: creative
1491
- 122: hotbar
1492
- 123: fixed_inventory
1493
- 124: ui
1466
+ WindowID: i8 => WindowID_
1467
+ WindowIDVarint: varint => WindowID_
1468
+ WindowIDZigzag32: zigzag32 => WindowID_
1494
1469
 
1495
1470
  WindowType: i8 =>
1496
1471
  -9: none
@@ -1376,7 +1376,7 @@
1376
1376
  [
1377
1377
  {
1378
1378
  "name": "inventory_id",
1379
- "type": "WindowIDVarint"
1379
+ "type": "WindowIDZigzag32"
1380
1380
  }
1381
1381
  ]
1382
1382
  ],
@@ -3627,6 +3627,41 @@
3627
3627
  }
3628
3628
  }
3629
3629
  ],
3630
+ "WindowIDZigzag32": [
3631
+ "mapper",
3632
+ {
3633
+ "type": "zigzag32",
3634
+ "mappings": {
3635
+ "0": "inventory",
3636
+ "1": "first",
3637
+ "100": "last",
3638
+ "119": "offhand",
3639
+ "120": "armor",
3640
+ "121": "creative",
3641
+ "122": "hotbar",
3642
+ "123": "fixed_inventory",
3643
+ "124": "ui",
3644
+ "-100": "drop_contents",
3645
+ "-24": "beacon",
3646
+ "-23": "trading_output",
3647
+ "-22": "trading_use_inputs",
3648
+ "-21": "trading_input_2",
3649
+ "-20": "trading_input_1",
3650
+ "-17": "enchant_output",
3651
+ "-16": "enchant_material",
3652
+ "-15": "enchant_input",
3653
+ "-13": "anvil_output",
3654
+ "-12": "anvil_result",
3655
+ "-11": "anvil_material",
3656
+ "-10": "container_input",
3657
+ "-5": "crafting_use_ingredient",
3658
+ "-4": "crafting_result",
3659
+ "-3": "crafting_remove_ingredient",
3660
+ "-2": "crafting_add_ingredient",
3661
+ "-1": "none"
3662
+ }
3663
+ }
3664
+ ],
3630
3665
  "WindowType": [
3631
3666
  "mapper",
3632
3667
  {
@@ -595,7 +595,7 @@ TransactionActions: []varint
595
595
  99999: craft
596
596
  _: source_type?
597
597
  if container or craft:
598
- inventory_id: WindowIDVarint
598
+ inventory_id: WindowIDZigzag32
599
599
  if world_interaction:
600
600
  flags: varint
601
601
  if craft or craft_slot:
@@ -1442,7 +1442,7 @@ CommandPermissionLevelVarint: u8 =>
1442
1442
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1443
1443
  # Below window IDs are hard-coded and created when the game starts and the server does not
1444
1444
  # send a `container_open` for them.
1445
- WindowID: i8 =>
1445
+ WindowID_: =>
1446
1446
  -100: drop_contents
1447
1447
  -24: beacon
1448
1448
  -23: trading_output
@@ -1471,34 +1471,9 @@ WindowID: i8 =>
1471
1471
  123: fixed_inventory
1472
1472
  124: ui
1473
1473
 
1474
- WindowIDVarint: varint =>
1475
- -100: drop_contents
1476
- -24: beacon
1477
- -23: trading_output
1478
- -22: trading_use_inputs
1479
- -21: trading_input_2
1480
- -20: trading_input_1
1481
- -17: enchant_output
1482
- -16: enchant_material
1483
- -15: enchant_input
1484
- -13: anvil_output
1485
- -12: anvil_result
1486
- -11: anvil_material
1487
- -10: container_input
1488
- -5: crafting_use_ingredient
1489
- -4: crafting_result
1490
- -3: crafting_remove_ingredient
1491
- -2: crafting_add_ingredient
1492
- -1: none
1493
- 0: inventory
1494
- 1: first
1495
- 100: last
1496
- 119: offhand
1497
- 120: armor
1498
- 121: creative
1499
- 122: hotbar
1500
- 123: fixed_inventory
1501
- 124: ui
1474
+ WindowID: i8 => WindowID_
1475
+ WindowIDVarint: varint => WindowID_
1476
+ WindowIDZigzag32: zigzag32 => WindowID_
1502
1477
 
1503
1478
  WindowType: i8 =>
1504
1479
  -9: none
@@ -1377,7 +1377,7 @@
1377
1377
  [
1378
1378
  {
1379
1379
  "name": "inventory_id",
1380
- "type": "WindowIDVarint"
1380
+ "type": "WindowIDZigzag32"
1381
1381
  }
1382
1382
  ]
1383
1383
  ],
@@ -3628,6 +3628,41 @@
3628
3628
  }
3629
3629
  }
3630
3630
  ],
3631
+ "WindowIDZigzag32": [
3632
+ "mapper",
3633
+ {
3634
+ "type": "zigzag32",
3635
+ "mappings": {
3636
+ "0": "inventory",
3637
+ "1": "first",
3638
+ "100": "last",
3639
+ "119": "offhand",
3640
+ "120": "armor",
3641
+ "121": "creative",
3642
+ "122": "hotbar",
3643
+ "123": "fixed_inventory",
3644
+ "124": "ui",
3645
+ "-100": "drop_contents",
3646
+ "-24": "beacon",
3647
+ "-23": "trading_output",
3648
+ "-22": "trading_use_inputs",
3649
+ "-21": "trading_input_2",
3650
+ "-20": "trading_input_1",
3651
+ "-17": "enchant_output",
3652
+ "-16": "enchant_material",
3653
+ "-15": "enchant_input",
3654
+ "-13": "anvil_output",
3655
+ "-12": "anvil_result",
3656
+ "-11": "anvil_material",
3657
+ "-10": "container_input",
3658
+ "-5": "crafting_use_ingredient",
3659
+ "-4": "crafting_result",
3660
+ "-3": "crafting_remove_ingredient",
3661
+ "-2": "crafting_add_ingredient",
3662
+ "-1": "none"
3663
+ }
3664
+ }
3665
+ ],
3631
3666
  "WindowType": [
3632
3667
  "mapper",
3633
3668
  {