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
@@ -547,7 +547,7 @@ TransactionActions: []varint
547
547
  99999: craft
548
548
  _: source_type?
549
549
  if container or craft:
550
- inventory_id: WindowIDVarint
550
+ inventory_id: WindowIDZigzag32
551
551
  if world_interaction:
552
552
  flags: varint
553
553
  if craft or craft_slot:
@@ -1330,7 +1330,7 @@ CommandPermissionLevelVarint: u8 =>
1330
1330
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1331
1331
  # Below window IDs are hard-coded and created when the game starts and the server does not
1332
1332
  # send a `container_open` for them.
1333
- WindowID: i8 =>
1333
+ WindowID_: =>
1334
1334
  -100: drop_contents
1335
1335
  -24: beacon
1336
1336
  -23: trading_output
@@ -1359,34 +1359,9 @@ WindowID: i8 =>
1359
1359
  123: fixed_inventory
1360
1360
  124: ui
1361
1361
 
1362
- WindowIDVarint: varint =>
1363
- -100: drop_contents
1364
- -24: beacon
1365
- -23: trading_output
1366
- -22: trading_use_inputs
1367
- -21: trading_input_2
1368
- -20: trading_input_1
1369
- -17: enchant_output
1370
- -16: enchant_material
1371
- -15: enchant_input
1372
- -13: anvil_output
1373
- -12: anvil_result
1374
- -11: anvil_material
1375
- -10: container_input
1376
- -5: crafting_use_ingredient
1377
- -4: crafting_result
1378
- -3: crafting_remove_ingredient
1379
- -2: crafting_add_ingredient
1380
- -1: none
1381
- 0: inventory
1382
- 1: first
1383
- 100: last
1384
- 119: offhand
1385
- 120: armor
1386
- 121: creative
1387
- 122: hotbar
1388
- 123: fixed_inventory
1389
- 124: ui
1362
+ WindowID: i8 => WindowID_
1363
+ WindowIDVarint: varint => WindowID_
1364
+ WindowIDZigzag32: zigzag32 => WindowID_
1390
1365
 
1391
1366
  WindowType: i8 =>
1392
1367
  -9: none
@@ -1271,7 +1271,7 @@
1271
1271
  [
1272
1272
  {
1273
1273
  "name": "inventory_id",
1274
- "type": "WindowIDVarint"
1274
+ "type": "WindowIDZigzag32"
1275
1275
  }
1276
1276
  ]
1277
1277
  ],
@@ -3410,6 +3410,41 @@
3410
3410
  }
3411
3411
  }
3412
3412
  ],
3413
+ "WindowIDZigzag32": [
3414
+ "mapper",
3415
+ {
3416
+ "type": "zigzag32",
3417
+ "mappings": {
3418
+ "0": "inventory",
3419
+ "1": "first",
3420
+ "100": "last",
3421
+ "119": "offhand",
3422
+ "120": "armor",
3423
+ "121": "creative",
3424
+ "122": "hotbar",
3425
+ "123": "fixed_inventory",
3426
+ "124": "ui",
3427
+ "-100": "drop_contents",
3428
+ "-24": "beacon",
3429
+ "-23": "trading_output",
3430
+ "-22": "trading_use_inputs",
3431
+ "-21": "trading_input_2",
3432
+ "-20": "trading_input_1",
3433
+ "-17": "enchant_output",
3434
+ "-16": "enchant_material",
3435
+ "-15": "enchant_input",
3436
+ "-13": "anvil_output",
3437
+ "-12": "anvil_result",
3438
+ "-11": "anvil_material",
3439
+ "-10": "container_input",
3440
+ "-5": "crafting_use_ingredient",
3441
+ "-4": "crafting_result",
3442
+ "-3": "crafting_remove_ingredient",
3443
+ "-2": "crafting_add_ingredient",
3444
+ "-1": "none"
3445
+ }
3446
+ }
3447
+ ],
3413
3448
  "WindowType": [
3414
3449
  "mapper",
3415
3450
  {
@@ -547,7 +547,7 @@ TransactionActions: []varint
547
547
  99999: craft
548
548
  _: source_type?
549
549
  if container or craft:
550
- inventory_id: WindowIDVarint
550
+ inventory_id: WindowIDZigzag32
551
551
  if world_interaction:
552
552
  flags: varint
553
553
  if craft or craft_slot:
@@ -1339,7 +1339,7 @@ CommandPermissionLevelVarint: u8 =>
1339
1339
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1340
1340
  # Below window IDs are hard-coded and created when the game starts and the server does not
1341
1341
  # send a `container_open` for them.
1342
- WindowID: i8 =>
1342
+ WindowID_: =>
1343
1343
  -100: drop_contents
1344
1344
  -24: beacon
1345
1345
  -23: trading_output
@@ -1368,34 +1368,9 @@ WindowID: i8 =>
1368
1368
  123: fixed_inventory
1369
1369
  124: ui
1370
1370
 
1371
- WindowIDVarint: varint =>
1372
- -100: drop_contents
1373
- -24: beacon
1374
- -23: trading_output
1375
- -22: trading_use_inputs
1376
- -21: trading_input_2
1377
- -20: trading_input_1
1378
- -17: enchant_output
1379
- -16: enchant_material
1380
- -15: enchant_input
1381
- -13: anvil_output
1382
- -12: anvil_result
1383
- -11: anvil_material
1384
- -10: container_input
1385
- -5: crafting_use_ingredient
1386
- -4: crafting_result
1387
- -3: crafting_remove_ingredient
1388
- -2: crafting_add_ingredient
1389
- -1: none
1390
- 0: inventory
1391
- 1: first
1392
- 100: last
1393
- 119: offhand
1394
- 120: armor
1395
- 121: creative
1396
- 122: hotbar
1397
- 123: fixed_inventory
1398
- 124: ui
1371
+ WindowID: i8 => WindowID_
1372
+ WindowIDVarint: varint => WindowID_
1373
+ WindowIDZigzag32: zigzag32 => WindowID_
1399
1374
 
1400
1375
  WindowType: i8 =>
1401
1376
  -9: none
@@ -1271,7 +1271,7 @@
1271
1271
  [
1272
1272
  {
1273
1273
  "name": "inventory_id",
1274
- "type": "WindowIDVarint"
1274
+ "type": "WindowIDZigzag32"
1275
1275
  }
1276
1276
  ]
1277
1277
  ],
@@ -3412,6 +3412,41 @@
3412
3412
  }
3413
3413
  }
3414
3414
  ],
3415
+ "WindowIDZigzag32": [
3416
+ "mapper",
3417
+ {
3418
+ "type": "zigzag32",
3419
+ "mappings": {
3420
+ "0": "inventory",
3421
+ "1": "first",
3422
+ "100": "last",
3423
+ "119": "offhand",
3424
+ "120": "armor",
3425
+ "121": "creative",
3426
+ "122": "hotbar",
3427
+ "123": "fixed_inventory",
3428
+ "124": "ui",
3429
+ "-100": "drop_contents",
3430
+ "-24": "beacon",
3431
+ "-23": "trading_output",
3432
+ "-22": "trading_use_inputs",
3433
+ "-21": "trading_input_2",
3434
+ "-20": "trading_input_1",
3435
+ "-17": "enchant_output",
3436
+ "-16": "enchant_material",
3437
+ "-15": "enchant_input",
3438
+ "-13": "anvil_output",
3439
+ "-12": "anvil_result",
3440
+ "-11": "anvil_material",
3441
+ "-10": "container_input",
3442
+ "-5": "crafting_use_ingredient",
3443
+ "-4": "crafting_result",
3444
+ "-3": "crafting_remove_ingredient",
3445
+ "-2": "crafting_add_ingredient",
3446
+ "-1": "none"
3447
+ }
3448
+ }
3449
+ ],
3415
3450
  "WindowType": [
3416
3451
  "mapper",
3417
3452
  {
@@ -547,7 +547,7 @@ TransactionActions: []varint
547
547
  99999: craft
548
548
  _: source_type?
549
549
  if container or craft:
550
- inventory_id: WindowIDVarint
550
+ inventory_id: WindowIDZigzag32
551
551
  if world_interaction:
552
552
  flags: varint
553
553
  if craft or craft_slot:
@@ -1341,7 +1341,7 @@ CommandPermissionLevelVarint: u8 =>
1341
1341
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1342
1342
  # Below window IDs are hard-coded and created when the game starts and the server does not
1343
1343
  # send a `container_open` for them.
1344
- WindowID: i8 =>
1344
+ WindowID_: =>
1345
1345
  -100: drop_contents
1346
1346
  -24: beacon
1347
1347
  -23: trading_output
@@ -1370,34 +1370,9 @@ WindowID: i8 =>
1370
1370
  123: fixed_inventory
1371
1371
  124: ui
1372
1372
 
1373
- WindowIDVarint: varint =>
1374
- -100: drop_contents
1375
- -24: beacon
1376
- -23: trading_output
1377
- -22: trading_use_inputs
1378
- -21: trading_input_2
1379
- -20: trading_input_1
1380
- -17: enchant_output
1381
- -16: enchant_material
1382
- -15: enchant_input
1383
- -13: anvil_output
1384
- -12: anvil_result
1385
- -11: anvil_material
1386
- -10: container_input
1387
- -5: crafting_use_ingredient
1388
- -4: crafting_result
1389
- -3: crafting_remove_ingredient
1390
- -2: crafting_add_ingredient
1391
- -1: none
1392
- 0: inventory
1393
- 1: first
1394
- 100: last
1395
- 119: offhand
1396
- 120: armor
1397
- 121: creative
1398
- 122: hotbar
1399
- 123: fixed_inventory
1400
- 124: ui
1373
+ WindowID: i8 => WindowID_
1374
+ WindowIDVarint: varint => WindowID_
1375
+ WindowIDZigzag32: zigzag32 => WindowID_
1401
1376
 
1402
1377
  WindowType: i8 =>
1403
1378
  -9: none
@@ -1273,7 +1273,7 @@
1273
1273
  [
1274
1274
  {
1275
1275
  "name": "inventory_id",
1276
- "type": "WindowIDVarint"
1276
+ "type": "WindowIDZigzag32"
1277
1277
  }
1278
1278
  ]
1279
1279
  ],
@@ -3417,6 +3417,41 @@
3417
3417
  }
3418
3418
  }
3419
3419
  ],
3420
+ "WindowIDZigzag32": [
3421
+ "mapper",
3422
+ {
3423
+ "type": "zigzag32",
3424
+ "mappings": {
3425
+ "0": "inventory",
3426
+ "1": "first",
3427
+ "100": "last",
3428
+ "119": "offhand",
3429
+ "120": "armor",
3430
+ "121": "creative",
3431
+ "122": "hotbar",
3432
+ "123": "fixed_inventory",
3433
+ "124": "ui",
3434
+ "-100": "drop_contents",
3435
+ "-24": "beacon",
3436
+ "-23": "trading_output",
3437
+ "-22": "trading_use_inputs",
3438
+ "-21": "trading_input_2",
3439
+ "-20": "trading_input_1",
3440
+ "-17": "enchant_output",
3441
+ "-16": "enchant_material",
3442
+ "-15": "enchant_input",
3443
+ "-13": "anvil_output",
3444
+ "-12": "anvil_result",
3445
+ "-11": "anvil_material",
3446
+ "-10": "container_input",
3447
+ "-5": "crafting_use_ingredient",
3448
+ "-4": "crafting_result",
3449
+ "-3": "crafting_remove_ingredient",
3450
+ "-2": "crafting_add_ingredient",
3451
+ "-1": "none"
3452
+ }
3453
+ }
3454
+ ],
3420
3455
  "WindowType": [
3421
3456
  "mapper",
3422
3457
  {
@@ -549,7 +549,7 @@ TransactionActions: []varint
549
549
  99999: craft
550
550
  _: source_type?
551
551
  if container or craft:
552
- inventory_id: WindowIDVarint
552
+ inventory_id: WindowIDZigzag32
553
553
  if world_interaction:
554
554
  flags: varint
555
555
  if craft or craft_slot:
@@ -1346,7 +1346,7 @@ CommandPermissionLevelVarint: u8 =>
1346
1346
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1347
1347
  # Below window IDs are hard-coded and created when the game starts and the server does not
1348
1348
  # send a `container_open` for them.
1349
- WindowID: i8 =>
1349
+ WindowID_: =>
1350
1350
  -100: drop_contents
1351
1351
  -24: beacon
1352
1352
  -23: trading_output
@@ -1375,34 +1375,9 @@ WindowID: i8 =>
1375
1375
  123: fixed_inventory
1376
1376
  124: ui
1377
1377
 
1378
- WindowIDVarint: varint =>
1379
- -100: drop_contents
1380
- -24: beacon
1381
- -23: trading_output
1382
- -22: trading_use_inputs
1383
- -21: trading_input_2
1384
- -20: trading_input_1
1385
- -17: enchant_output
1386
- -16: enchant_material
1387
- -15: enchant_input
1388
- -13: anvil_output
1389
- -12: anvil_result
1390
- -11: anvil_material
1391
- -10: container_input
1392
- -5: crafting_use_ingredient
1393
- -4: crafting_result
1394
- -3: crafting_remove_ingredient
1395
- -2: crafting_add_ingredient
1396
- -1: none
1397
- 0: inventory
1398
- 1: first
1399
- 100: last
1400
- 119: offhand
1401
- 120: armor
1402
- 121: creative
1403
- 122: hotbar
1404
- 123: fixed_inventory
1405
- 124: ui
1378
+ WindowID: i8 => WindowID_
1379
+ WindowIDVarint: varint => WindowID_
1380
+ WindowIDZigzag32: zigzag32 => WindowID_
1406
1381
 
1407
1382
  WindowType: i8 =>
1408
1383
  -9: none
@@ -1318,7 +1318,7 @@
1318
1318
  [
1319
1319
  {
1320
1320
  "name": "inventory_id",
1321
- "type": "WindowIDVarint"
1321
+ "type": "WindowIDZigzag32"
1322
1322
  }
1323
1323
  ]
1324
1324
  ],
@@ -3464,6 +3464,41 @@
3464
3464
  }
3465
3465
  }
3466
3466
  ],
3467
+ "WindowIDZigzag32": [
3468
+ "mapper",
3469
+ {
3470
+ "type": "zigzag32",
3471
+ "mappings": {
3472
+ "0": "inventory",
3473
+ "1": "first",
3474
+ "100": "last",
3475
+ "119": "offhand",
3476
+ "120": "armor",
3477
+ "121": "creative",
3478
+ "122": "hotbar",
3479
+ "123": "fixed_inventory",
3480
+ "124": "ui",
3481
+ "-100": "drop_contents",
3482
+ "-24": "beacon",
3483
+ "-23": "trading_output",
3484
+ "-22": "trading_use_inputs",
3485
+ "-21": "trading_input_2",
3486
+ "-20": "trading_input_1",
3487
+ "-17": "enchant_output",
3488
+ "-16": "enchant_material",
3489
+ "-15": "enchant_input",
3490
+ "-13": "anvil_output",
3491
+ "-12": "anvil_result",
3492
+ "-11": "anvil_material",
3493
+ "-10": "container_input",
3494
+ "-5": "crafting_use_ingredient",
3495
+ "-4": "crafting_result",
3496
+ "-3": "crafting_remove_ingredient",
3497
+ "-2": "crafting_add_ingredient",
3498
+ "-1": "none"
3499
+ }
3500
+ }
3501
+ ],
3467
3502
  "WindowType": [
3468
3503
  "mapper",
3469
3504
  {
@@ -558,7 +558,7 @@ TransactionActions: []varint
558
558
  99999: craft
559
559
  _: source_type?
560
560
  if container or craft:
561
- inventory_id: WindowIDVarint
561
+ inventory_id: WindowIDZigzag32
562
562
  if world_interaction:
563
563
  flags: varint
564
564
  if craft or craft_slot:
@@ -1357,7 +1357,7 @@ CommandPermissionLevelVarint: u8 =>
1357
1357
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1358
1358
  # Below window IDs are hard-coded and created when the game starts and the server does not
1359
1359
  # send a `container_open` for them.
1360
- WindowID: i8 =>
1360
+ WindowID_: =>
1361
1361
  -100: drop_contents
1362
1362
  -24: beacon
1363
1363
  -23: trading_output
@@ -1386,34 +1386,9 @@ WindowID: i8 =>
1386
1386
  123: fixed_inventory
1387
1387
  124: ui
1388
1388
 
1389
- WindowIDVarint: varint =>
1390
- -100: drop_contents
1391
- -24: beacon
1392
- -23: trading_output
1393
- -22: trading_use_inputs
1394
- -21: trading_input_2
1395
- -20: trading_input_1
1396
- -17: enchant_output
1397
- -16: enchant_material
1398
- -15: enchant_input
1399
- -13: anvil_output
1400
- -12: anvil_result
1401
- -11: anvil_material
1402
- -10: container_input
1403
- -5: crafting_use_ingredient
1404
- -4: crafting_result
1405
- -3: crafting_remove_ingredient
1406
- -2: crafting_add_ingredient
1407
- -1: none
1408
- 0: inventory
1409
- 1: first
1410
- 100: last
1411
- 119: offhand
1412
- 120: armor
1413
- 121: creative
1414
- 122: hotbar
1415
- 123: fixed_inventory
1416
- 124: ui
1389
+ WindowID: i8 => WindowID_
1390
+ WindowIDVarint: varint => WindowID_
1391
+ WindowIDZigzag32: zigzag32 => WindowID_
1417
1392
 
1418
1393
  WindowType: i8 =>
1419
1394
  -9: none
@@ -1321,7 +1321,7 @@
1321
1321
  [
1322
1322
  {
1323
1323
  "name": "inventory_id",
1324
- "type": "WindowIDVarint"
1324
+ "type": "WindowIDZigzag32"
1325
1325
  }
1326
1326
  ]
1327
1327
  ],
@@ -3492,6 +3492,41 @@
3492
3492
  }
3493
3493
  }
3494
3494
  ],
3495
+ "WindowIDZigzag32": [
3496
+ "mapper",
3497
+ {
3498
+ "type": "zigzag32",
3499
+ "mappings": {
3500
+ "0": "inventory",
3501
+ "1": "first",
3502
+ "100": "last",
3503
+ "119": "offhand",
3504
+ "120": "armor",
3505
+ "121": "creative",
3506
+ "122": "hotbar",
3507
+ "123": "fixed_inventory",
3508
+ "124": "ui",
3509
+ "-100": "drop_contents",
3510
+ "-24": "beacon",
3511
+ "-23": "trading_output",
3512
+ "-22": "trading_use_inputs",
3513
+ "-21": "trading_input_2",
3514
+ "-20": "trading_input_1",
3515
+ "-17": "enchant_output",
3516
+ "-16": "enchant_material",
3517
+ "-15": "enchant_input",
3518
+ "-13": "anvil_output",
3519
+ "-12": "anvil_result",
3520
+ "-11": "anvil_material",
3521
+ "-10": "container_input",
3522
+ "-5": "crafting_use_ingredient",
3523
+ "-4": "crafting_result",
3524
+ "-3": "crafting_remove_ingredient",
3525
+ "-2": "crafting_add_ingredient",
3526
+ "-1": "none"
3527
+ }
3528
+ }
3529
+ ],
3495
3530
  "WindowType": [
3496
3531
  "mapper",
3497
3532
  {
@@ -561,7 +561,7 @@ TransactionActions: []varint
561
561
  99999: craft
562
562
  _: source_type?
563
563
  if container or craft:
564
- inventory_id: WindowIDVarint
564
+ inventory_id: WindowIDZigzag32
565
565
  if world_interaction:
566
566
  flags: varint
567
567
  if craft or craft_slot:
@@ -1385,7 +1385,7 @@ CommandPermissionLevelVarint: u8 =>
1385
1385
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1386
1386
  # Below window IDs are hard-coded and created when the game starts and the server does not
1387
1387
  # send a `container_open` for them.
1388
- WindowID: i8 =>
1388
+ WindowID_: =>
1389
1389
  -100: drop_contents
1390
1390
  -24: beacon
1391
1391
  -23: trading_output
@@ -1414,34 +1414,9 @@ WindowID: i8 =>
1414
1414
  123: fixed_inventory
1415
1415
  124: ui
1416
1416
 
1417
- WindowIDVarint: varint =>
1418
- -100: drop_contents
1419
- -24: beacon
1420
- -23: trading_output
1421
- -22: trading_use_inputs
1422
- -21: trading_input_2
1423
- -20: trading_input_1
1424
- -17: enchant_output
1425
- -16: enchant_material
1426
- -15: enchant_input
1427
- -13: anvil_output
1428
- -12: anvil_result
1429
- -11: anvil_material
1430
- -10: container_input
1431
- -5: crafting_use_ingredient
1432
- -4: crafting_result
1433
- -3: crafting_remove_ingredient
1434
- -2: crafting_add_ingredient
1435
- -1: none
1436
- 0: inventory
1437
- 1: first
1438
- 100: last
1439
- 119: offhand
1440
- 120: armor
1441
- 121: creative
1442
- 122: hotbar
1443
- 123: fixed_inventory
1444
- 124: ui
1417
+ WindowID: i8 => WindowID_
1418
+ WindowIDVarint: varint => WindowID_
1419
+ WindowIDZigzag32: zigzag32 => WindowID_
1445
1420
 
1446
1421
  WindowType: i8 =>
1447
1422
  -9: none
@@ -1338,7 +1338,7 @@
1338
1338
  [
1339
1339
  {
1340
1340
  "name": "inventory_id",
1341
- "type": "WindowIDVarint"
1341
+ "type": "WindowIDZigzag32"
1342
1342
  }
1343
1343
  ]
1344
1344
  ],
@@ -3509,6 +3509,41 @@
3509
3509
  }
3510
3510
  }
3511
3511
  ],
3512
+ "WindowIDZigzag32": [
3513
+ "mapper",
3514
+ {
3515
+ "type": "zigzag32",
3516
+ "mappings": {
3517
+ "0": "inventory",
3518
+ "1": "first",
3519
+ "100": "last",
3520
+ "119": "offhand",
3521
+ "120": "armor",
3522
+ "121": "creative",
3523
+ "122": "hotbar",
3524
+ "123": "fixed_inventory",
3525
+ "124": "ui",
3526
+ "-100": "drop_contents",
3527
+ "-24": "beacon",
3528
+ "-23": "trading_output",
3529
+ "-22": "trading_use_inputs",
3530
+ "-21": "trading_input_2",
3531
+ "-20": "trading_input_1",
3532
+ "-17": "enchant_output",
3533
+ "-16": "enchant_material",
3534
+ "-15": "enchant_input",
3535
+ "-13": "anvil_output",
3536
+ "-12": "anvil_result",
3537
+ "-11": "anvil_material",
3538
+ "-10": "container_input",
3539
+ "-5": "crafting_use_ingredient",
3540
+ "-4": "crafting_result",
3541
+ "-3": "crafting_remove_ingredient",
3542
+ "-2": "crafting_add_ingredient",
3543
+ "-1": "none"
3544
+ }
3545
+ }
3546
+ ],
3512
3547
  "WindowType": [
3513
3548
  "mapper",
3514
3549
  {