minecraft-data 3.104.0 → 3.105.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/.github/workflows/commands.yml +24 -0
  2. package/.github/workflows/npm-publish.yml +6 -4
  3. package/data.js +28 -1
  4. package/doc/history.md +8 -0
  5. package/index.d.ts +3 -3
  6. package/minecraft-data/data/bedrock/1.16.220/protocol.json +36 -1
  7. package/minecraft-data/data/bedrock/1.16.220/types.yml +5 -30
  8. package/minecraft-data/data/bedrock/1.17.0/protocol.json +36 -1
  9. package/minecraft-data/data/bedrock/1.17.0/types.yml +5 -30
  10. package/minecraft-data/data/bedrock/1.17.10/protocol.json +36 -1
  11. package/minecraft-data/data/bedrock/1.17.10/types.yml +5 -30
  12. package/minecraft-data/data/bedrock/1.17.30/protocol.json +36 -1
  13. package/minecraft-data/data/bedrock/1.17.30/types.yml +5 -30
  14. package/minecraft-data/data/bedrock/1.17.40/protocol.json +36 -1
  15. package/minecraft-data/data/bedrock/1.17.40/types.yml +5 -30
  16. package/minecraft-data/data/bedrock/1.18.0/protocol.json +36 -1
  17. package/minecraft-data/data/bedrock/1.18.0/types.yml +5 -30
  18. package/minecraft-data/data/bedrock/1.18.11/protocol.json +36 -1
  19. package/minecraft-data/data/bedrock/1.18.11/types.yml +5 -30
  20. package/minecraft-data/data/bedrock/1.18.30/protocol.json +36 -1
  21. package/minecraft-data/data/bedrock/1.18.30/types.yml +5 -30
  22. package/minecraft-data/data/bedrock/1.19.1/protocol.json +36 -1
  23. package/minecraft-data/data/bedrock/1.19.1/types.yml +5 -30
  24. package/minecraft-data/data/bedrock/1.19.10/protocol.json +36 -1
  25. package/minecraft-data/data/bedrock/1.19.10/types.yml +5 -30
  26. package/minecraft-data/data/bedrock/1.19.20/protocol.json +36 -1
  27. package/minecraft-data/data/bedrock/1.19.20/types.yml +5 -30
  28. package/minecraft-data/data/bedrock/1.19.21/protocol.json +36 -1
  29. package/minecraft-data/data/bedrock/1.19.21/types.yml +5 -30
  30. package/minecraft-data/data/bedrock/1.19.30/protocol.json +36 -1
  31. package/minecraft-data/data/bedrock/1.19.30/types.yml +5 -30
  32. package/minecraft-data/data/bedrock/1.19.40/protocol.json +36 -1
  33. package/minecraft-data/data/bedrock/1.19.40/types.yml +5 -30
  34. package/minecraft-data/data/bedrock/1.19.50/protocol.json +36 -1
  35. package/minecraft-data/data/bedrock/1.19.50/types.yml +5 -30
  36. package/minecraft-data/data/bedrock/1.19.60/protocol.json +36 -1
  37. package/minecraft-data/data/bedrock/1.19.60/types.yml +5 -30
  38. package/minecraft-data/data/bedrock/1.19.62/protocol.json +36 -1
  39. package/minecraft-data/data/bedrock/1.19.62/types.yml +5 -30
  40. package/minecraft-data/data/bedrock/1.19.70/protocol.json +36 -1
  41. package/minecraft-data/data/bedrock/1.19.70/types.yml +5 -30
  42. package/minecraft-data/data/bedrock/1.19.80/protocol.json +36 -1
  43. package/minecraft-data/data/bedrock/1.19.80/types.yml +5 -30
  44. package/minecraft-data/data/bedrock/1.20.0/protocol.json +36 -1
  45. package/minecraft-data/data/bedrock/1.20.0/types.yml +5 -30
  46. package/minecraft-data/data/bedrock/1.20.10/protocol.json +36 -1
  47. package/minecraft-data/data/bedrock/1.20.10/types.yml +5 -30
  48. package/minecraft-data/data/bedrock/1.20.30/protocol.json +36 -1
  49. package/minecraft-data/data/bedrock/1.20.30/types.yml +5 -30
  50. package/minecraft-data/data/bedrock/1.20.40/protocol.json +36 -1
  51. package/minecraft-data/data/bedrock/1.20.40/types.yml +5 -30
  52. package/minecraft-data/data/bedrock/1.20.50/protocol.json +36 -1
  53. package/minecraft-data/data/bedrock/1.20.50/types.yml +5 -30
  54. package/minecraft-data/data/bedrock/1.20.61/protocol.json +36 -1
  55. package/minecraft-data/data/bedrock/1.20.61/types.yml +5 -30
  56. package/minecraft-data/data/bedrock/1.20.71/protocol.json +36 -1
  57. package/minecraft-data/data/bedrock/1.20.71/types.yml +5 -30
  58. package/minecraft-data/data/bedrock/1.20.80/protocol.json +36 -1
  59. package/minecraft-data/data/bedrock/1.20.80/types.yml +5 -30
  60. package/minecraft-data/data/bedrock/1.21.0/protocol.json +36 -1
  61. package/minecraft-data/data/bedrock/1.21.0/types.yml +5 -30
  62. package/minecraft-data/data/bedrock/1.21.100/protocol.json +36 -1
  63. package/minecraft-data/data/bedrock/1.21.100/types.yml +5 -30
  64. package/minecraft-data/data/bedrock/1.21.111/protocol.json +36 -1
  65. package/minecraft-data/data/bedrock/1.21.111/types.yml +5 -30
  66. package/minecraft-data/data/bedrock/1.21.120/protocol.json +36 -1
  67. package/minecraft-data/data/bedrock/1.21.120/types.yml +5 -30
  68. package/minecraft-data/data/bedrock/1.21.124/protocol.json +36 -1
  69. package/minecraft-data/data/bedrock/1.21.124/types.yml +5 -30
  70. package/minecraft-data/data/bedrock/1.21.130/protocol.json +36 -1
  71. package/minecraft-data/data/bedrock/1.21.130/types.yml +5 -30
  72. package/minecraft-data/data/bedrock/1.21.2/protocol.json +36 -1
  73. package/minecraft-data/data/bedrock/1.21.2/types.yml +5 -30
  74. package/minecraft-data/data/bedrock/1.21.20/protocol.json +36 -1
  75. package/minecraft-data/data/bedrock/1.21.20/types.yml +5 -30
  76. package/minecraft-data/data/bedrock/1.21.30/protocol.json +36 -1
  77. package/minecraft-data/data/bedrock/1.21.30/types.yml +5 -30
  78. package/minecraft-data/data/bedrock/1.21.42/protocol.json +36 -1
  79. package/minecraft-data/data/bedrock/1.21.42/types.yml +5 -30
  80. package/minecraft-data/data/bedrock/1.21.50/protocol.json +36 -1
  81. package/minecraft-data/data/bedrock/1.21.50/types.yml +5 -30
  82. package/minecraft-data/data/bedrock/1.21.60/protocol.json +36 -1
  83. package/minecraft-data/data/bedrock/1.21.60/types.yml +5 -30
  84. package/minecraft-data/data/bedrock/1.21.70/protocol.json +36 -1
  85. package/minecraft-data/data/bedrock/1.21.70/types.yml +5 -30
  86. package/minecraft-data/data/bedrock/1.21.80/protocol.json +36 -1
  87. package/minecraft-data/data/bedrock/1.21.80/types.yml +5 -30
  88. package/minecraft-data/data/bedrock/1.21.90/protocol.json +36 -1
  89. package/minecraft-data/data/bedrock/1.21.90/types.yml +5 -30
  90. package/minecraft-data/data/bedrock/1.21.93/protocol.json +36 -1
  91. package/minecraft-data/data/bedrock/1.21.93/types.yml +5 -30
  92. package/minecraft-data/data/bedrock/1.26.0/protocol.json +36 -1
  93. package/minecraft-data/data/bedrock/latest/types.yml +5 -30
  94. package/minecraft-data/data/dataPaths.json +28 -1
  95. package/minecraft-data/data/pc/1.10/proto.yml +7 -9
  96. package/minecraft-data/data/pc/1.10/protocol.json +23 -30
  97. package/minecraft-data/data/pc/1.10-pre1/proto.yml +7 -9
  98. package/minecraft-data/data/pc/1.10-pre1/protocol.json +23 -30
  99. package/minecraft-data/data/pc/1.11/proto.yml +7 -9
  100. package/minecraft-data/data/pc/1.11/protocol.json +23 -30
  101. package/minecraft-data/data/pc/1.12/proto.yml +7 -9
  102. package/minecraft-data/data/pc/1.12/protocol.json +23 -30
  103. package/minecraft-data/data/pc/1.12-pre4/proto.yml +7 -9
  104. package/minecraft-data/data/pc/1.12-pre4/protocol.json +23 -30
  105. package/minecraft-data/data/pc/1.12.1/proto.yml +7 -9
  106. package/minecraft-data/data/pc/1.12.1/protocol.json +23 -30
  107. package/minecraft-data/data/pc/1.12.2/proto.yml +7 -9
  108. package/minecraft-data/data/pc/1.12.2/protocol.json +23 -30
  109. package/minecraft-data/data/pc/1.13/proto.yml +7 -9
  110. package/minecraft-data/data/pc/1.13/protocol.json +23 -30
  111. package/minecraft-data/data/pc/1.13.1/proto.yml +7 -9
  112. package/minecraft-data/data/pc/1.13.1/protocol.json +23 -30
  113. package/minecraft-data/data/pc/1.13.2/proto.yml +7 -9
  114. package/minecraft-data/data/pc/1.13.2/protocol.json +23 -30
  115. package/minecraft-data/data/pc/1.13.2-pre1/proto.yml +7 -9
  116. package/minecraft-data/data/pc/1.13.2-pre1/protocol.json +23 -30
  117. package/minecraft-data/data/pc/1.13.2-pre2/proto.yml +7 -9
  118. package/minecraft-data/data/pc/1.13.2-pre2/protocol.json +23 -30
  119. package/minecraft-data/data/pc/1.14/proto.yml +7 -9
  120. package/minecraft-data/data/pc/1.14/protocol.json +23 -30
  121. package/minecraft-data/data/pc/1.14.1/proto.yml +7 -9
  122. package/minecraft-data/data/pc/1.14.1/protocol.json +23 -30
  123. package/minecraft-data/data/pc/1.14.3/proto.yml +7 -9
  124. package/minecraft-data/data/pc/1.14.3/protocol.json +23 -30
  125. package/minecraft-data/data/pc/1.14.4/proto.yml +7 -9
  126. package/minecraft-data/data/pc/1.14.4/protocol.json +23 -30
  127. package/minecraft-data/data/pc/1.15/proto.yml +7 -9
  128. package/minecraft-data/data/pc/1.15/protocol.json +23 -30
  129. package/minecraft-data/data/pc/1.15.1/proto.yml +7 -9
  130. package/minecraft-data/data/pc/1.15.1/protocol.json +23 -30
  131. package/minecraft-data/data/pc/1.15.2/proto.yml +7 -9
  132. package/minecraft-data/data/pc/1.15.2/protocol.json +23 -30
  133. package/minecraft-data/data/pc/1.16/proto.yml +7 -9
  134. package/minecraft-data/data/pc/1.16/protocol.json +23 -30
  135. package/minecraft-data/data/pc/1.16-rc1/proto.yml +7 -9
  136. package/minecraft-data/data/pc/1.16-rc1/protocol.json +23 -30
  137. package/minecraft-data/data/pc/1.16.1/proto.yml +7 -9
  138. package/minecraft-data/data/pc/1.16.1/protocol.json +23 -30
  139. package/minecraft-data/data/pc/1.16.2/proto.yml +7 -9
  140. package/minecraft-data/data/pc/1.16.2/protocol.json +23 -30
  141. package/minecraft-data/data/pc/1.17/proto.yml +7 -9
  142. package/minecraft-data/data/pc/1.17/protocol.json +23 -30
  143. package/minecraft-data/data/pc/1.17.1/proto.yml +7 -9
  144. package/minecraft-data/data/pc/1.17.1/protocol.json +23 -30
  145. package/minecraft-data/data/pc/1.18/proto.yml +7 -9
  146. package/minecraft-data/data/pc/1.18/protocol.json +23 -30
  147. package/minecraft-data/data/pc/1.18.2/proto.yml +7 -9
  148. package/minecraft-data/data/pc/1.18.2/protocol.json +23 -30
  149. package/minecraft-data/data/pc/1.19/proto.yml +6 -6
  150. package/minecraft-data/data/pc/1.19/protocol.json +21 -20
  151. package/minecraft-data/data/pc/1.19.2/proto.yml +6 -6
  152. package/minecraft-data/data/pc/1.19.2/protocol.json +21 -20
  153. package/minecraft-data/data/pc/1.19.3/proto.yml +6 -6
  154. package/minecraft-data/data/pc/1.19.3/protocol.json +21 -20
  155. package/minecraft-data/data/pc/1.19.4/proto.yml +6 -6
  156. package/minecraft-data/data/pc/1.19.4/protocol.json +21 -20
  157. package/minecraft-data/data/pc/1.20/proto.yml +6 -6
  158. package/minecraft-data/data/pc/1.20/protocol.json +21 -20
  159. package/minecraft-data/data/pc/1.20.2/proto.yml +6 -6
  160. package/minecraft-data/data/pc/1.20.2/protocol.json +21 -20
  161. package/minecraft-data/data/pc/1.20.3/proto.yml +6 -6
  162. package/minecraft-data/data/pc/1.20.3/protocol.json +21 -20
  163. package/minecraft-data/data/pc/1.20.5/proto.yml +6 -6
  164. package/minecraft-data/data/pc/1.20.5/protocol.json +21 -20
  165. package/minecraft-data/data/pc/1.21.1/proto.yml +6 -6
  166. package/minecraft-data/data/pc/1.21.1/protocol.json +21 -20
  167. package/minecraft-data/data/pc/1.21.11/attributes.json +247 -0
  168. package/minecraft-data/data/pc/1.21.11/biomes.json +652 -0
  169. package/minecraft-data/data/pc/1.21.11/blockCollisionShapes.json +146215 -0
  170. package/minecraft-data/data/pc/1.21.11/blocks.json +44682 -0
  171. package/minecraft-data/data/pc/1.21.11/effects.json +242 -0
  172. package/minecraft-data/data/pc/1.21.11/enchantments.json +980 -0
  173. package/minecraft-data/data/pc/1.21.11/entities.json +4363 -0
  174. package/minecraft-data/data/pc/1.21.11/foods.json +442 -0
  175. package/minecraft-data/data/pc/1.21.11/instruments.json +94 -0
  176. package/minecraft-data/data/pc/1.21.11/items.json +10026 -0
  177. package/minecraft-data/data/pc/1.21.11/language.json +7769 -0
  178. package/minecraft-data/data/pc/1.21.11/loginPacket.json +19819 -0
  179. package/minecraft-data/data/pc/1.21.11/materials.json +233 -0
  180. package/minecraft-data/data/pc/1.21.11/particles.json +462 -0
  181. package/minecraft-data/data/pc/1.21.11/protocol.json +11696 -0
  182. package/minecraft-data/data/pc/1.21.11/recipes.json +31864 -0
  183. package/minecraft-data/data/pc/1.21.11/sounds.json +7354 -0
  184. package/minecraft-data/data/pc/1.21.11/tints.json +465 -0
  185. package/minecraft-data/data/pc/1.21.11/version.json +6 -0
  186. package/minecraft-data/data/pc/1.21.3/proto.yml +6 -6
  187. package/minecraft-data/data/pc/1.21.3/protocol.json +21 -20
  188. package/minecraft-data/data/pc/1.21.4/proto.yml +6 -6
  189. package/minecraft-data/data/pc/1.21.4/protocol.json +21 -20
  190. package/minecraft-data/data/pc/1.21.5/proto.yml +6 -6
  191. package/minecraft-data/data/pc/1.21.5/protocol.json +21 -20
  192. package/minecraft-data/data/pc/1.21.6/proto.yml +6 -6
  193. package/minecraft-data/data/pc/1.21.6/protocol.json +21 -20
  194. package/minecraft-data/data/pc/1.21.8/proto.yml +6 -6
  195. package/minecraft-data/data/pc/1.21.8/protocol.json +21 -20
  196. package/minecraft-data/data/pc/1.21.9/proto.yml +3771 -0
  197. package/minecraft-data/data/pc/1.7/proto.yml +6 -6
  198. package/minecraft-data/data/pc/1.7/protocol.json +21 -20
  199. package/minecraft-data/data/pc/1.8/proto.yml +9 -12
  200. package/minecraft-data/data/pc/1.8/protocol.json +25 -40
  201. package/minecraft-data/data/pc/1.9/proto.yml +7 -9
  202. package/minecraft-data/data/pc/1.9/protocol.json +23 -30
  203. package/minecraft-data/data/pc/1.9.1-pre2/proto.yml +7 -9
  204. package/minecraft-data/data/pc/1.9.1-pre2/protocol.json +23 -30
  205. package/minecraft-data/data/pc/1.9.2/proto.yml +7 -9
  206. package/minecraft-data/data/pc/1.9.2/protocol.json +23 -30
  207. package/minecraft-data/data/pc/1.9.4/proto.yml +7 -9
  208. package/minecraft-data/data/pc/1.9.4/protocol.json +23 -30
  209. package/minecraft-data/data/pc/15w40b/proto.yml +7 -9
  210. package/minecraft-data/data/pc/15w40b/protocol.json +23 -30
  211. package/minecraft-data/data/pc/16w20a/proto.yml +7 -9
  212. package/minecraft-data/data/pc/16w20a/protocol.json +23 -30
  213. package/minecraft-data/data/pc/16w35a/proto.yml +7 -9
  214. package/minecraft-data/data/pc/16w35a/protocol.json +23 -30
  215. package/minecraft-data/data/pc/17w15a/proto.yml +7 -9
  216. package/minecraft-data/data/pc/17w15a/protocol.json +23 -30
  217. package/minecraft-data/data/pc/17w18b/proto.yml +7 -9
  218. package/minecraft-data/data/pc/17w18b/protocol.json +23 -30
  219. package/minecraft-data/data/pc/17w50a/proto.yml +7 -9
  220. package/minecraft-data/data/pc/17w50a/protocol.json +23 -30
  221. package/minecraft-data/data/pc/20w13b/proto.yml +7 -9
  222. package/minecraft-data/data/pc/20w13b/protocol.json +23 -30
  223. package/minecraft-data/data/pc/21w07a/proto.yml +7 -9
  224. package/minecraft-data/data/pc/21w07a/protocol.json +23 -30
  225. package/minecraft-data/data/pc/common/features.json +5 -5
  226. package/minecraft-data/data/pc/common/protocolVersions.json +96 -0
  227. package/minecraft-data/data/pc/common/versions.json +2 -1
  228. package/minecraft-data/data/pc/latest/proto.yml +79 -3
  229. package/minecraft-data/doc/history.md +9 -0
  230. package/minecraft-data/tools/js/compileProtocol.js +8 -2
  231. package/package.json +2 -2
@@ -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
  {
@@ -596,7 +596,7 @@ TransactionActions: []varint
596
596
  99999: craft
597
597
  _: source_type?
598
598
  if container or craft:
599
- inventory_id: WindowIDVarint
599
+ inventory_id: WindowIDZigzag32
600
600
  if world_interaction:
601
601
  flags: varint
602
602
  if craft or craft_slot:
@@ -1444,7 +1444,7 @@ CommandPermissionLevelVarint: u8 =>
1444
1444
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1445
1445
  # Below window IDs are hard-coded and created when the game starts and the server does not
1446
1446
  # send a `container_open` for them.
1447
- WindowID: i8 =>
1447
+ WindowID_: =>
1448
1448
  -100: drop_contents
1449
1449
  -24: beacon
1450
1450
  -23: trading_output
@@ -1473,34 +1473,9 @@ WindowID: i8 =>
1473
1473
  123: fixed_inventory
1474
1474
  124: ui
1475
1475
 
1476
- WindowIDVarint: varint =>
1477
- -100: drop_contents
1478
- -24: beacon
1479
- -23: trading_output
1480
- -22: trading_use_inputs
1481
- -21: trading_input_2
1482
- -20: trading_input_1
1483
- -17: enchant_output
1484
- -16: enchant_material
1485
- -15: enchant_input
1486
- -13: anvil_output
1487
- -12: anvil_result
1488
- -11: anvil_material
1489
- -10: container_input
1490
- -5: crafting_use_ingredient
1491
- -4: crafting_result
1492
- -3: crafting_remove_ingredient
1493
- -2: crafting_add_ingredient
1494
- -1: none
1495
- 0: inventory
1496
- 1: first
1497
- 100: last
1498
- 119: offhand
1499
- 120: armor
1500
- 121: creative
1501
- 122: hotbar
1502
- 123: fixed_inventory
1503
- 124: ui
1476
+ WindowID: i8 => WindowID_
1477
+ WindowIDVarint: varint => WindowID_
1478
+ WindowIDZigzag32: zigzag32 => WindowID_
1504
1479
 
1505
1480
  WindowType: i8 =>
1506
1481
  -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
  {
@@ -596,7 +596,7 @@ TransactionActions: []varint
596
596
  99999: craft
597
597
  _: source_type?
598
598
  if container or craft:
599
- inventory_id: WindowIDVarint
599
+ inventory_id: WindowIDZigzag32
600
600
  if world_interaction:
601
601
  flags: varint
602
602
  if craft or craft_slot:
@@ -1444,7 +1444,7 @@ CommandPermissionLevelVarint: u8 =>
1444
1444
  # List of Window IDs. When a new container is opened (container_open), a new sequential Window ID is created.
1445
1445
  # Below window IDs are hard-coded and created when the game starts and the server does not
1446
1446
  # send a `container_open` for them.
1447
- WindowID: i8 =>
1447
+ WindowID_: =>
1448
1448
  -100: drop_contents
1449
1449
  -24: beacon
1450
1450
  -23: trading_output
@@ -1473,34 +1473,9 @@ WindowID: i8 =>
1473
1473
  123: fixed_inventory
1474
1474
  124: ui
1475
1475
 
1476
- WindowIDVarint: varint =>
1477
- -100: drop_contents
1478
- -24: beacon
1479
- -23: trading_output
1480
- -22: trading_use_inputs
1481
- -21: trading_input_2
1482
- -20: trading_input_1
1483
- -17: enchant_output
1484
- -16: enchant_material
1485
- -15: enchant_input
1486
- -13: anvil_output
1487
- -12: anvil_result
1488
- -11: anvil_material
1489
- -10: container_input
1490
- -5: crafting_use_ingredient
1491
- -4: crafting_result
1492
- -3: crafting_remove_ingredient
1493
- -2: crafting_add_ingredient
1494
- -1: none
1495
- 0: inventory
1496
- 1: first
1497
- 100: last
1498
- 119: offhand
1499
- 120: armor
1500
- 121: creative
1501
- 122: hotbar
1502
- 123: fixed_inventory
1503
- 124: ui
1476
+ WindowID: i8 => WindowID_
1477
+ WindowIDVarint: varint => WindowID_
1478
+ WindowIDZigzag32: zigzag32 => WindowID_
1504
1479
 
1505
1480
  WindowType: i8 =>
1506
1481
  -9: none
@@ -1417,7 +1417,7 @@
1417
1417
  [
1418
1418
  {
1419
1419
  "name": "inventory_id",
1420
- "type": "WindowIDVarint"
1420
+ "type": "WindowIDZigzag32"
1421
1421
  }
1422
1422
  ]
1423
1423
  ],
@@ -3620,6 +3620,41 @@
3620
3620
  }
3621
3621
  }
3622
3622
  ],
3623
+ "WindowIDZigzag32": [
3624
+ "mapper",
3625
+ {
3626
+ "type": "zigzag32",
3627
+ "mappings": {
3628
+ "0": "inventory",
3629
+ "1": "first",
3630
+ "100": "last",
3631
+ "119": "offhand",
3632
+ "120": "armor",
3633
+ "121": "creative",
3634
+ "122": "hotbar",
3635
+ "123": "fixed_inventory",
3636
+ "124": "ui",
3637
+ "-100": "drop_contents",
3638
+ "-24": "beacon",
3639
+ "-23": "trading_output",
3640
+ "-22": "trading_use_inputs",
3641
+ "-21": "trading_input_2",
3642
+ "-20": "trading_input_1",
3643
+ "-17": "enchant_output",
3644
+ "-16": "enchant_material",
3645
+ "-15": "enchant_input",
3646
+ "-13": "anvil_output",
3647
+ "-12": "anvil_result",
3648
+ "-11": "anvil_material",
3649
+ "-10": "container_input",
3650
+ "-5": "crafting_use_ingredient",
3651
+ "-4": "crafting_result",
3652
+ "-3": "crafting_remove_ingredient",
3653
+ "-2": "crafting_add_ingredient",
3654
+ "-1": "none"
3655
+ }
3656
+ }
3657
+ ],
3623
3658
  "WindowType": [
3624
3659
  "mapper",
3625
3660
  {
@@ -612,7 +612,7 @@ TransactionActions: []varint
612
612
  99999: craft
613
613
  _: source_type?
614
614
  if container or craft:
615
- inventory_id: WindowIDVarint
615
+ inventory_id: WindowIDZigzag32
616
616
  if world_interaction:
617
617
  flags: varint
618
618
  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
@@ -1664,7 +1664,7 @@
1664
1664
  "tints": "pc/1.21.9",
1665
1665
  "version": "pc/1.21.9",
1666
1666
  "windows": "pc/1.16.1",
1667
- "proto": "pc/latest"
1667
+ "proto": "pc/1.21.9"
1668
1668
  },
1669
1669
  "1.21.10": {
1670
1670
  "attributes": "pc/1.21.9",
@@ -1691,6 +1691,33 @@
1691
1691
  "tints": "pc/1.21.9",
1692
1692
  "version": "pc/1.21.9",
1693
1693
  "windows": "pc/1.16.1",
1694
+ "proto": "pc/1.21.9"
1695
+ },
1696
+ "1.21.11": {
1697
+ "attributes": "pc/1.21.11",
1698
+ "blockCollisionShapes": "pc/1.21.11",
1699
+ "blocks": "pc/1.21.11",
1700
+ "blockLoot": "pc/1.20",
1701
+ "biomes": "pc/1.21.11",
1702
+ "commands": "pc/1.20.3",
1703
+ "effects": "pc/1.21.11",
1704
+ "enchantments": "pc/1.21.11",
1705
+ "entities": "pc/1.21.11",
1706
+ "entityLoot": "pc/1.20",
1707
+ "foods": "pc/1.21.11",
1708
+ "instruments": "pc/1.21.11",
1709
+ "items": "pc/1.21.11",
1710
+ "language": "pc/1.21.11",
1711
+ "loginPacket": "pc/1.21.11",
1712
+ "mapIcons": "pc/1.20.2",
1713
+ "materials": "pc/1.21.11",
1714
+ "particles": "pc/1.21.11",
1715
+ "protocol": "pc/1.21.11",
1716
+ "recipes": "pc/1.21.11",
1717
+ "sounds": "pc/1.21.11",
1718
+ "tints": "pc/1.21.11",
1719
+ "version": "pc/1.21.11",
1720
+ "windows": "pc/1.16.1",
1694
1721
  "proto": "pc/latest"
1695
1722
  }
1696
1723
  },
@@ -28,6 +28,10 @@
28
28
  optionalNbt: native
29
29
  ByteArray: ["buffer", { "countType": "varint" }]
30
30
  string: ["pstring", { "countType": "varint" }]
31
+ vec3i16:
32
+ x: i16
33
+ y: i16
34
+ z: i16
31
35
  slot:
32
36
  blockId: i16
33
37
  _: blockId ?
@@ -232,9 +236,7 @@
232
236
  pitch: i8
233
237
  yaw: i8
234
238
  objectData: i32
235
- velocityX: i16
236
- velocityY: i16
237
- velocityZ: i16
239
+ velocity: vec3i16
238
240
  packet_spawn_entity_experience_orb:
239
241
  entityId: varint
240
242
  x: f64
@@ -257,9 +259,7 @@
257
259
  yaw: i8
258
260
  pitch: i8
259
261
  headPitch: i8
260
- velocityX: i16
261
- velocityY: i16
262
- velocityZ: i16
262
+ velocity: vec3i16
263
263
  metadata: entityMetadata
264
264
  packet_spawn_entity_painting:
265
265
  entityId: varint
@@ -621,9 +621,7 @@
621
621
  vehicleId: i32
622
622
  packet_entity_velocity:
623
623
  entityId: varint
624
- velocityX: i16
625
- velocityY: i16
626
- velocityZ: i16
624
+ velocity: vec3i16
627
625
  packet_entity_equipment:
628
626
  entityId: varint
629
627
  slot: varint
@@ -37,6 +37,23 @@
37
37
  "countType": "varint"
38
38
  }
39
39
  ],
40
+ "vec3i16": [
41
+ "container",
42
+ [
43
+ {
44
+ "name": "x",
45
+ "type": "i16"
46
+ },
47
+ {
48
+ "name": "y",
49
+ "type": "i16"
50
+ },
51
+ {
52
+ "name": "z",
53
+ "type": "i16"
54
+ }
55
+ ]
56
+ ],
40
57
  "slot": [
41
58
  "container",
42
59
  [
@@ -583,16 +600,8 @@
583
600
  "type": "i32"
584
601
  },
585
602
  {
586
- "name": "velocityX",
587
- "type": "i16"
588
- },
589
- {
590
- "name": "velocityY",
591
- "type": "i16"
592
- },
593
- {
594
- "name": "velocityZ",
595
- "type": "i16"
603
+ "name": "velocity",
604
+ "type": "vec3i16"
596
605
  }
597
606
  ]
598
607
  ],
@@ -686,16 +695,8 @@
686
695
  "type": "i8"
687
696
  },
688
697
  {
689
- "name": "velocityX",
690
- "type": "i16"
691
- },
692
- {
693
- "name": "velocityY",
694
- "type": "i16"
695
- },
696
- {
697
- "name": "velocityZ",
698
- "type": "i16"
698
+ "name": "velocity",
699
+ "type": "vec3i16"
699
700
  },
700
701
  {
701
702
  "name": "metadata",
@@ -2250,16 +2251,8 @@
2250
2251
  "type": "varint"
2251
2252
  },
2252
2253
  {
2253
- "name": "velocityX",
2254
- "type": "i16"
2255
- },
2256
- {
2257
- "name": "velocityY",
2258
- "type": "i16"
2259
- },
2260
- {
2261
- "name": "velocityZ",
2262
- "type": "i16"
2254
+ "name": "velocity",
2255
+ "type": "vec3i16"
2263
2256
  }
2264
2257
  ]
2265
2258
  ],
@@ -28,6 +28,10 @@
28
28
  optionalNbt: native
29
29
  ByteArray: ["buffer", { "countType": "varint" }]
30
30
  string: ["pstring", { "countType": "varint" }]
31
+ vec3i16:
32
+ x: i16
33
+ y: i16
34
+ z: i16
31
35
  slot:
32
36
  blockId: i16
33
37
  _: blockId ?
@@ -232,9 +236,7 @@
232
236
  pitch: i8
233
237
  yaw: i8
234
238
  objectData: i32
235
- velocityX: i16
236
- velocityY: i16
237
- velocityZ: i16
239
+ velocity: vec3i16
238
240
  packet_spawn_entity_experience_orb:
239
241
  entityId: varint
240
242
  x: f64
@@ -257,9 +259,7 @@
257
259
  yaw: i8
258
260
  pitch: i8
259
261
  headPitch: i8
260
- velocityX: i16
261
- velocityY: i16
262
- velocityZ: i16
262
+ velocity: vec3i16
263
263
  metadata: entityMetadata
264
264
  packet_spawn_entity_painting:
265
265
  entityId: varint
@@ -621,9 +621,7 @@
621
621
  vehicleId: i32
622
622
  packet_entity_velocity:
623
623
  entityId: varint
624
- velocityX: i16
625
- velocityY: i16
626
- velocityZ: i16
624
+ velocity: vec3i16
627
625
  packet_entity_equipment:
628
626
  entityId: varint
629
627
  slot: varint
@@ -37,6 +37,23 @@
37
37
  "countType": "varint"
38
38
  }
39
39
  ],
40
+ "vec3i16": [
41
+ "container",
42
+ [
43
+ {
44
+ "name": "x",
45
+ "type": "i16"
46
+ },
47
+ {
48
+ "name": "y",
49
+ "type": "i16"
50
+ },
51
+ {
52
+ "name": "z",
53
+ "type": "i16"
54
+ }
55
+ ]
56
+ ],
40
57
  "slot": [
41
58
  "container",
42
59
  [
@@ -583,16 +600,8 @@
583
600
  "type": "i32"
584
601
  },
585
602
  {
586
- "name": "velocityX",
587
- "type": "i16"
588
- },
589
- {
590
- "name": "velocityY",
591
- "type": "i16"
592
- },
593
- {
594
- "name": "velocityZ",
595
- "type": "i16"
603
+ "name": "velocity",
604
+ "type": "vec3i16"
596
605
  }
597
606
  ]
598
607
  ],
@@ -686,16 +695,8 @@
686
695
  "type": "i8"
687
696
  },
688
697
  {
689
- "name": "velocityX",
690
- "type": "i16"
691
- },
692
- {
693
- "name": "velocityY",
694
- "type": "i16"
695
- },
696
- {
697
- "name": "velocityZ",
698
- "type": "i16"
698
+ "name": "velocity",
699
+ "type": "vec3i16"
699
700
  },
700
701
  {
701
702
  "name": "metadata",
@@ -2250,16 +2251,8 @@
2250
2251
  "type": "varint"
2251
2252
  },
2252
2253
  {
2253
- "name": "velocityX",
2254
- "type": "i16"
2255
- },
2256
- {
2257
- "name": "velocityY",
2258
- "type": "i16"
2259
- },
2260
- {
2261
- "name": "velocityZ",
2262
- "type": "i16"
2254
+ "name": "velocity",
2255
+ "type": "vec3i16"
2263
2256
  }
2264
2257
  ]
2265
2258
  ],
@@ -28,6 +28,10 @@
28
28
  optionalNbt: native
29
29
  ByteArray: ["buffer", { "countType": "varint" }]
30
30
  string: ["pstring", { "countType": "varint" }]
31
+ vec3i16:
32
+ x: i16
33
+ y: i16
34
+ z: i16
31
35
  slot:
32
36
  blockId: i16
33
37
  _: blockId ?
@@ -232,9 +236,7 @@
232
236
  pitch: i8
233
237
  yaw: i8
234
238
  objectData: i32
235
- velocityX: i16
236
- velocityY: i16
237
- velocityZ: i16
239
+ velocity: vec3i16
238
240
  packet_spawn_entity_experience_orb:
239
241
  entityId: varint
240
242
  x: f64
@@ -257,9 +259,7 @@
257
259
  yaw: i8
258
260
  pitch: i8
259
261
  headPitch: i8
260
- velocityX: i16
261
- velocityY: i16
262
- velocityZ: i16
262
+ velocity: vec3i16
263
263
  metadata: entityMetadata
264
264
  packet_spawn_entity_painting:
265
265
  entityId: varint
@@ -621,9 +621,7 @@
621
621
  vehicleId: i32
622
622
  packet_entity_velocity:
623
623
  entityId: varint
624
- velocityX: i16
625
- velocityY: i16
626
- velocityZ: i16
624
+ velocity: vec3i16
627
625
  packet_entity_equipment:
628
626
  entityId: varint
629
627
  slot: varint