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
@@ -608,7 +608,7 @@ TransactionActions: []varint
608
608
  99999: craft
609
609
  _: source_type?
610
610
  if container or craft:
611
- inventory_id: WindowIDVarint
611
+ inventory_id: WindowIDZigzag32
612
612
  if world_interaction:
613
613
  flags: varint
614
614
  if craft or craft_slot:
@@ -1456,7 +1456,7 @@ CommandPermissionLevelVarint: u8 =>
1456
1456
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1457
1457
  # Below window IDs are hard-coded and created when the game starts and the server does not
1458
1458
  # send a `container_open` for them.
1459
- WindowID: i8 =>
1459
+ WindowID_: =>
1460
1460
  -100: drop_contents
1461
1461
  -24: beacon
1462
1462
  -23: trading_output
@@ -1485,34 +1485,9 @@ WindowID: i8 =>
1485
1485
  123: fixed_inventory
1486
1486
  124: ui
1487
1487
 
1488
- WindowIDVarint: varint =>
1489
- -100: drop_contents
1490
- -24: beacon
1491
- -23: trading_output
1492
- -22: trading_use_inputs
1493
- -21: trading_input_2
1494
- -20: trading_input_1
1495
- -17: enchant_output
1496
- -16: enchant_material
1497
- -15: enchant_input
1498
- -13: anvil_output
1499
- -12: anvil_result
1500
- -11: anvil_material
1501
- -10: container_input
1502
- -5: crafting_use_ingredient
1503
- -4: crafting_result
1504
- -3: crafting_remove_ingredient
1505
- -2: crafting_add_ingredient
1506
- -1: none
1507
- 0: inventory
1508
- 1: first
1509
- 100: last
1510
- 119: offhand
1511
- 120: armor
1512
- 121: creative
1513
- 122: hotbar
1514
- 123: fixed_inventory
1515
- 124: ui
1488
+ WindowID: i8 => WindowID_
1489
+ WindowIDVarint: varint => WindowID_
1490
+ WindowIDZigzag32: zigzag32 => WindowID_
1516
1491
 
1517
1492
  WindowType: i8 =>
1518
1493
  -9: none
@@ -1413,7 +1413,7 @@
1413
1413
  [
1414
1414
  {
1415
1415
  "name": "inventory_id",
1416
- "type": "WindowIDVarint"
1416
+ "type": "WindowIDZigzag32"
1417
1417
  }
1418
1418
  ]
1419
1419
  ],
@@ -3664,6 +3664,41 @@
3664
3664
  }
3665
3665
  }
3666
3666
  ],
3667
+ "WindowIDZigzag32": [
3668
+ "mapper",
3669
+ {
3670
+ "type": "zigzag32",
3671
+ "mappings": {
3672
+ "0": "inventory",
3673
+ "1": "first",
3674
+ "100": "last",
3675
+ "119": "offhand",
3676
+ "120": "armor",
3677
+ "121": "creative",
3678
+ "122": "hotbar",
3679
+ "123": "fixed_inventory",
3680
+ "124": "ui",
3681
+ "-100": "drop_contents",
3682
+ "-24": "beacon",
3683
+ "-23": "trading_output",
3684
+ "-22": "trading_use_inputs",
3685
+ "-21": "trading_input_2",
3686
+ "-20": "trading_input_1",
3687
+ "-17": "enchant_output",
3688
+ "-16": "enchant_material",
3689
+ "-15": "enchant_input",
3690
+ "-13": "anvil_output",
3691
+ "-12": "anvil_result",
3692
+ "-11": "anvil_material",
3693
+ "-10": "container_input",
3694
+ "-5": "crafting_use_ingredient",
3695
+ "-4": "crafting_result",
3696
+ "-3": "crafting_remove_ingredient",
3697
+ "-2": "crafting_add_ingredient",
3698
+ "-1": "none"
3699
+ }
3700
+ }
3701
+ ],
3667
3702
  "WindowType": [
3668
3703
  "mapper",
3669
3704
  {
@@ -608,7 +608,7 @@ TransactionActions: []varint
608
608
  99999: craft
609
609
  _: source_type?
610
610
  if container or craft:
611
- inventory_id: WindowIDVarint
611
+ inventory_id: WindowIDZigzag32
612
612
  if world_interaction:
613
613
  flags: varint
614
614
  if craft or craft_slot:
@@ -1456,7 +1456,7 @@ CommandPermissionLevelVarint: u8 =>
1456
1456
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1457
1457
  # Below window IDs are hard-coded and created when the game starts and the server does not
1458
1458
  # send a `container_open` for them.
1459
- WindowID: i8 =>
1459
+ WindowID_: =>
1460
1460
  -100: drop_contents
1461
1461
  -24: beacon
1462
1462
  -23: trading_output
@@ -1485,34 +1485,9 @@ WindowID: i8 =>
1485
1485
  123: fixed_inventory
1486
1486
  124: ui
1487
1487
 
1488
- WindowIDVarint: varint =>
1489
- -100: drop_contents
1490
- -24: beacon
1491
- -23: trading_output
1492
- -22: trading_use_inputs
1493
- -21: trading_input_2
1494
- -20: trading_input_1
1495
- -17: enchant_output
1496
- -16: enchant_material
1497
- -15: enchant_input
1498
- -13: anvil_output
1499
- -12: anvil_result
1500
- -11: anvil_material
1501
- -10: container_input
1502
- -5: crafting_use_ingredient
1503
- -4: crafting_result
1504
- -3: crafting_remove_ingredient
1505
- -2: crafting_add_ingredient
1506
- -1: none
1507
- 0: inventory
1508
- 1: first
1509
- 100: last
1510
- 119: offhand
1511
- 120: armor
1512
- 121: creative
1513
- 122: hotbar
1514
- 123: fixed_inventory
1515
- 124: ui
1488
+ WindowID: i8 => WindowID_
1489
+ WindowIDVarint: varint => WindowID_
1490
+ WindowIDZigzag32: zigzag32 => WindowID_
1516
1491
 
1517
1492
  WindowType: i8 =>
1518
1493
  -9: none
@@ -1413,7 +1413,7 @@
1413
1413
  [
1414
1414
  {
1415
1415
  "name": "inventory_id",
1416
- "type": "WindowIDVarint"
1416
+ "type": "WindowIDZigzag32"
1417
1417
  }
1418
1418
  ]
1419
1419
  ],
@@ -3664,6 +3664,41 @@
3664
3664
  }
3665
3665
  }
3666
3666
  ],
3667
+ "WindowIDZigzag32": [
3668
+ "mapper",
3669
+ {
3670
+ "type": "zigzag32",
3671
+ "mappings": {
3672
+ "0": "inventory",
3673
+ "1": "first",
3674
+ "100": "last",
3675
+ "119": "offhand",
3676
+ "120": "armor",
3677
+ "121": "creative",
3678
+ "122": "hotbar",
3679
+ "123": "fixed_inventory",
3680
+ "124": "ui",
3681
+ "-100": "drop_contents",
3682
+ "-24": "beacon",
3683
+ "-23": "trading_output",
3684
+ "-22": "trading_use_inputs",
3685
+ "-21": "trading_input_2",
3686
+ "-20": "trading_input_1",
3687
+ "-17": "enchant_output",
3688
+ "-16": "enchant_material",
3689
+ "-15": "enchant_input",
3690
+ "-13": "anvil_output",
3691
+ "-12": "anvil_result",
3692
+ "-11": "anvil_material",
3693
+ "-10": "container_input",
3694
+ "-5": "crafting_use_ingredient",
3695
+ "-4": "crafting_result",
3696
+ "-3": "crafting_remove_ingredient",
3697
+ "-2": "crafting_add_ingredient",
3698
+ "-1": "none"
3699
+ }
3700
+ }
3701
+ ],
3667
3702
  "WindowType": [
3668
3703
  "mapper",
3669
3704
  {
@@ -608,7 +608,7 @@ TransactionActions: []varint
608
608
  99999: craft
609
609
  _: source_type?
610
610
  if container or craft:
611
- inventory_id: WindowIDVarint
611
+ inventory_id: WindowIDZigzag32
612
612
  if world_interaction:
613
613
  flags: varint
614
614
  if craft or craft_slot:
@@ -1456,7 +1456,7 @@ CommandPermissionLevelVarint: u8 =>
1456
1456
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1457
1457
  # Below window IDs are hard-coded and created when the game starts and the server does not
1458
1458
  # send a `container_open` for them.
1459
- WindowID: i8 =>
1459
+ WindowID_: =>
1460
1460
  -100: drop_contents
1461
1461
  -24: beacon
1462
1462
  -23: trading_output
@@ -1485,34 +1485,9 @@ WindowID: i8 =>
1485
1485
  123: fixed_inventory
1486
1486
  124: ui
1487
1487
 
1488
- WindowIDVarint: varint =>
1489
- -100: drop_contents
1490
- -24: beacon
1491
- -23: trading_output
1492
- -22: trading_use_inputs
1493
- -21: trading_input_2
1494
- -20: trading_input_1
1495
- -17: enchant_output
1496
- -16: enchant_material
1497
- -15: enchant_input
1498
- -13: anvil_output
1499
- -12: anvil_result
1500
- -11: anvil_material
1501
- -10: container_input
1502
- -5: crafting_use_ingredient
1503
- -4: crafting_result
1504
- -3: crafting_remove_ingredient
1505
- -2: crafting_add_ingredient
1506
- -1: none
1507
- 0: inventory
1508
- 1: first
1509
- 100: last
1510
- 119: offhand
1511
- 120: armor
1512
- 121: creative
1513
- 122: hotbar
1514
- 123: fixed_inventory
1515
- 124: ui
1488
+ WindowID: i8 => WindowID_
1489
+ WindowIDVarint: varint => WindowID_
1490
+ WindowIDZigzag32: zigzag32 => WindowID_
1516
1491
 
1517
1492
  WindowType: i8 =>
1518
1493
  -9: none
@@ -1414,7 +1414,7 @@
1414
1414
  [
1415
1415
  {
1416
1416
  "name": "inventory_id",
1417
- "type": "WindowIDVarint"
1417
+ "type": "WindowIDZigzag32"
1418
1418
  }
1419
1419
  ]
1420
1420
  ],
@@ -3617,6 +3617,41 @@
3617
3617
  }
3618
3618
  }
3619
3619
  ],
3620
+ "WindowIDZigzag32": [
3621
+ "mapper",
3622
+ {
3623
+ "type": "zigzag32",
3624
+ "mappings": {
3625
+ "0": "inventory",
3626
+ "1": "first",
3627
+ "100": "last",
3628
+ "119": "offhand",
3629
+ "120": "armor",
3630
+ "121": "creative",
3631
+ "122": "hotbar",
3632
+ "123": "fixed_inventory",
3633
+ "124": "ui",
3634
+ "-100": "drop_contents",
3635
+ "-24": "beacon",
3636
+ "-23": "trading_output",
3637
+ "-22": "trading_use_inputs",
3638
+ "-21": "trading_input_2",
3639
+ "-20": "trading_input_1",
3640
+ "-17": "enchant_output",
3641
+ "-16": "enchant_material",
3642
+ "-15": "enchant_input",
3643
+ "-13": "anvil_output",
3644
+ "-12": "anvil_result",
3645
+ "-11": "anvil_material",
3646
+ "-10": "container_input",
3647
+ "-5": "crafting_use_ingredient",
3648
+ "-4": "crafting_result",
3649
+ "-3": "crafting_remove_ingredient",
3650
+ "-2": "crafting_add_ingredient",
3651
+ "-1": "none"
3652
+ }
3653
+ }
3654
+ ],
3620
3655
  "WindowType": [
3621
3656
  "mapper",
3622
3657
  {
@@ -609,7 +609,7 @@ TransactionActions: []varint
609
609
  99999: craft
610
610
  _: source_type?
611
611
  if container or craft:
612
- inventory_id: WindowIDVarint
612
+ inventory_id: WindowIDZigzag32
613
613
  if world_interaction:
614
614
  flags: varint
615
615
  if craft or craft_slot:
@@ -1439,7 +1439,7 @@ CommandPermissionLevelVarint: u8 =>
1439
1439
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1440
1440
  # Below window IDs are hard-coded and created when the game starts and the server does not
1441
1441
  # send a `container_open` for them.
1442
- WindowID: i8 =>
1442
+ WindowID_: =>
1443
1443
  -100: drop_contents
1444
1444
  -24: beacon
1445
1445
  -23: trading_output
@@ -1468,34 +1468,9 @@ WindowID: i8 =>
1468
1468
  123: fixed_inventory
1469
1469
  124: ui
1470
1470
 
1471
- WindowIDVarint: varint =>
1472
- -100: drop_contents
1473
- -24: beacon
1474
- -23: trading_output
1475
- -22: trading_use_inputs
1476
- -21: trading_input_2
1477
- -20: trading_input_1
1478
- -17: enchant_output
1479
- -16: enchant_material
1480
- -15: enchant_input
1481
- -13: anvil_output
1482
- -12: anvil_result
1483
- -11: anvil_material
1484
- -10: container_input
1485
- -5: crafting_use_ingredient
1486
- -4: crafting_result
1487
- -3: crafting_remove_ingredient
1488
- -2: crafting_add_ingredient
1489
- -1: none
1490
- 0: inventory
1491
- 1: first
1492
- 100: last
1493
- 119: offhand
1494
- 120: armor
1495
- 121: creative
1496
- 122: hotbar
1497
- 123: fixed_inventory
1498
- 124: ui
1471
+ WindowID: i8 => WindowID_
1472
+ WindowIDVarint: varint => WindowID_
1473
+ WindowIDZigzag32: zigzag32 => WindowID_
1499
1474
 
1500
1475
  WindowType: i8 =>
1501
1476
  -9: none
@@ -1339,7 +1339,7 @@
1339
1339
  [
1340
1340
  {
1341
1341
  "name": "inventory_id",
1342
- "type": "WindowIDVarint"
1342
+ "type": "WindowIDZigzag32"
1343
1343
  }
1344
1344
  ]
1345
1345
  ],
@@ -3580,6 +3580,41 @@
3580
3580
  }
3581
3581
  }
3582
3582
  ],
3583
+ "WindowIDZigzag32": [
3584
+ "mapper",
3585
+ {
3586
+ "type": "zigzag32",
3587
+ "mappings": {
3588
+ "0": "inventory",
3589
+ "1": "first",
3590
+ "100": "last",
3591
+ "119": "offhand",
3592
+ "120": "armor",
3593
+ "121": "creative",
3594
+ "122": "hotbar",
3595
+ "123": "fixed_inventory",
3596
+ "124": "ui",
3597
+ "-100": "drop_contents",
3598
+ "-24": "beacon",
3599
+ "-23": "trading_output",
3600
+ "-22": "trading_use_inputs",
3601
+ "-21": "trading_input_2",
3602
+ "-20": "trading_input_1",
3603
+ "-17": "enchant_output",
3604
+ "-16": "enchant_material",
3605
+ "-15": "enchant_input",
3606
+ "-13": "anvil_output",
3607
+ "-12": "anvil_result",
3608
+ "-11": "anvil_material",
3609
+ "-10": "container_input",
3610
+ "-5": "crafting_use_ingredient",
3611
+ "-4": "crafting_result",
3612
+ "-3": "crafting_remove_ingredient",
3613
+ "-2": "crafting_add_ingredient",
3614
+ "-1": "none"
3615
+ }
3616
+ }
3617
+ ],
3583
3618
  "WindowType": [
3584
3619
  "mapper",
3585
3620
  {
@@ -567,7 +567,7 @@ TransactionActions: []varint
567
567
  99999: craft
568
568
  _: source_type?
569
569
  if container or craft:
570
- inventory_id: WindowIDVarint
570
+ inventory_id: WindowIDZigzag32
571
571
  if world_interaction:
572
572
  flags: varint
573
573
  if craft or craft_slot:
@@ -1404,7 +1404,7 @@ CommandPermissionLevelVarint: u8 =>
1404
1404
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1405
1405
  # Below window IDs are hard-coded and created when the game starts and the server does not
1406
1406
  # send a `container_open` for them.
1407
- WindowID: i8 =>
1407
+ WindowID_: =>
1408
1408
  -100: drop_contents
1409
1409
  -24: beacon
1410
1410
  -23: trading_output
@@ -1433,34 +1433,9 @@ WindowID: i8 =>
1433
1433
  123: fixed_inventory
1434
1434
  124: ui
1435
1435
 
1436
- WindowIDVarint: varint =>
1437
- -100: drop_contents
1438
- -24: beacon
1439
- -23: trading_output
1440
- -22: trading_use_inputs
1441
- -21: trading_input_2
1442
- -20: trading_input_1
1443
- -17: enchant_output
1444
- -16: enchant_material
1445
- -15: enchant_input
1446
- -13: anvil_output
1447
- -12: anvil_result
1448
- -11: anvil_material
1449
- -10: container_input
1450
- -5: crafting_use_ingredient
1451
- -4: crafting_result
1452
- -3: crafting_remove_ingredient
1453
- -2: crafting_add_ingredient
1454
- -1: none
1455
- 0: inventory
1456
- 1: first
1457
- 100: last
1458
- 119: offhand
1459
- 120: armor
1460
- 121: creative
1461
- 122: hotbar
1462
- 123: fixed_inventory
1463
- 124: ui
1436
+ WindowID: i8 => WindowID_
1437
+ WindowIDVarint: varint => WindowID_
1438
+ WindowIDZigzag32: zigzag32 => WindowID_
1464
1439
 
1465
1440
  WindowType: i8 =>
1466
1441
  -9: none
@@ -1378,7 +1378,7 @@
1378
1378
  [
1379
1379
  {
1380
1380
  "name": "inventory_id",
1381
- "type": "WindowIDVarint"
1381
+ "type": "WindowIDZigzag32"
1382
1382
  }
1383
1383
  ]
1384
1384
  ],
@@ -3635,6 +3635,41 @@
3635
3635
  }
3636
3636
  }
3637
3637
  ],
3638
+ "WindowIDZigzag32": [
3639
+ "mapper",
3640
+ {
3641
+ "type": "zigzag32",
3642
+ "mappings": {
3643
+ "0": "inventory",
3644
+ "1": "first",
3645
+ "100": "last",
3646
+ "119": "offhand",
3647
+ "120": "armor",
3648
+ "121": "creative",
3649
+ "122": "hotbar",
3650
+ "123": "fixed_inventory",
3651
+ "124": "ui",
3652
+ "-100": "drop_contents",
3653
+ "-24": "beacon",
3654
+ "-23": "trading_output",
3655
+ "-22": "trading_use_inputs",
3656
+ "-21": "trading_input_2",
3657
+ "-20": "trading_input_1",
3658
+ "-17": "enchant_output",
3659
+ "-16": "enchant_material",
3660
+ "-15": "enchant_input",
3661
+ "-13": "anvil_output",
3662
+ "-12": "anvil_result",
3663
+ "-11": "anvil_material",
3664
+ "-10": "container_input",
3665
+ "-5": "crafting_use_ingredient",
3666
+ "-4": "crafting_result",
3667
+ "-3": "crafting_remove_ingredient",
3668
+ "-2": "crafting_add_ingredient",
3669
+ "-1": "none"
3670
+ }
3671
+ }
3672
+ ],
3638
3673
  "WindowType": [
3639
3674
  "mapper",
3640
3675
  {
@@ -583,7 +583,7 @@ TransactionActions: []varint
583
583
  99999: craft
584
584
  _: source_type?
585
585
  if container or craft:
586
- inventory_id: WindowIDVarint
586
+ inventory_id: WindowIDZigzag32
587
587
  if world_interaction:
588
588
  flags: varint
589
589
  if craft or craft_slot:
@@ -1425,7 +1425,7 @@ CommandPermissionLevelVarint: u8 =>
1425
1425
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1426
1426
  # Below window IDs are hard-coded and created when the game starts and the server does not
1427
1427
  # send a `container_open` for them.
1428
- WindowID: i8 =>
1428
+ WindowID_: =>
1429
1429
  -100: drop_contents
1430
1430
  -24: beacon
1431
1431
  -23: trading_output
@@ -1454,34 +1454,9 @@ WindowID: i8 =>
1454
1454
  123: fixed_inventory
1455
1455
  124: ui
1456
1456
 
1457
- WindowIDVarint: varint =>
1458
- -100: drop_contents
1459
- -24: beacon
1460
- -23: trading_output
1461
- -22: trading_use_inputs
1462
- -21: trading_input_2
1463
- -20: trading_input_1
1464
- -17: enchant_output
1465
- -16: enchant_material
1466
- -15: enchant_input
1467
- -13: anvil_output
1468
- -12: anvil_result
1469
- -11: anvil_material
1470
- -10: container_input
1471
- -5: crafting_use_ingredient
1472
- -4: crafting_result
1473
- -3: crafting_remove_ingredient
1474
- -2: crafting_add_ingredient
1475
- -1: none
1476
- 0: inventory
1477
- 1: first
1478
- 100: last
1479
- 119: offhand
1480
- 120: armor
1481
- 121: creative
1482
- 122: hotbar
1483
- 123: fixed_inventory
1484
- 124: ui
1457
+ WindowID: i8 => WindowID_
1458
+ WindowIDVarint: varint => WindowID_
1459
+ WindowIDZigzag32: zigzag32 => WindowID_
1485
1460
 
1486
1461
  WindowType: i8 =>
1487
1462
  -9: none
@@ -1343,7 +1343,7 @@
1343
1343
  [
1344
1344
  {
1345
1345
  "name": "inventory_id",
1346
- "type": "WindowIDVarint"
1346
+ "type": "WindowIDZigzag32"
1347
1347
  }
1348
1348
  ]
1349
1349
  ],
@@ -3596,6 +3596,41 @@
3596
3596
  }
3597
3597
  }
3598
3598
  ],
3599
+ "WindowIDZigzag32": [
3600
+ "mapper",
3601
+ {
3602
+ "type": "zigzag32",
3603
+ "mappings": {
3604
+ "0": "inventory",
3605
+ "1": "first",
3606
+ "100": "last",
3607
+ "119": "offhand",
3608
+ "120": "armor",
3609
+ "121": "creative",
3610
+ "122": "hotbar",
3611
+ "123": "fixed_inventory",
3612
+ "124": "ui",
3613
+ "-100": "drop_contents",
3614
+ "-24": "beacon",
3615
+ "-23": "trading_output",
3616
+ "-22": "trading_use_inputs",
3617
+ "-21": "trading_input_2",
3618
+ "-20": "trading_input_1",
3619
+ "-17": "enchant_output",
3620
+ "-16": "enchant_material",
3621
+ "-15": "enchant_input",
3622
+ "-13": "anvil_output",
3623
+ "-12": "anvil_result",
3624
+ "-11": "anvil_material",
3625
+ "-10": "container_input",
3626
+ "-5": "crafting_use_ingredient",
3627
+ "-4": "crafting_result",
3628
+ "-3": "crafting_remove_ingredient",
3629
+ "-2": "crafting_add_ingredient",
3630
+ "-1": "none"
3631
+ }
3632
+ }
3633
+ ],
3599
3634
  "WindowType": [
3600
3635
  "mapper",
3601
3636
  {