minecraft-data 3.90.0 → 3.92.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 (149) hide show
  1. package/data.js +54 -0
  2. package/doc/history.md +8 -0
  3. package/index.d.ts +5 -2
  4. package/minecraft-data/data/dataPaths.json +54 -0
  5. package/minecraft-data/data/pc/1.10/proto.yml +29 -35
  6. package/minecraft-data/data/pc/1.10/protocol.json +101 -86
  7. package/minecraft-data/data/pc/1.10-pre1/proto.yml +29 -35
  8. package/minecraft-data/data/pc/1.10-pre1/protocol.json +101 -86
  9. package/minecraft-data/data/pc/1.11/proto.yml +29 -35
  10. package/minecraft-data/data/pc/1.11/protocol.json +101 -86
  11. package/minecraft-data/data/pc/1.12/proto.yml +29 -35
  12. package/minecraft-data/data/pc/1.12/protocol.json +101 -86
  13. package/minecraft-data/data/pc/1.12-pre4/proto.yml +29 -35
  14. package/minecraft-data/data/pc/1.12-pre4/protocol.json +101 -86
  15. package/minecraft-data/data/pc/1.12.1/proto.yml +29 -35
  16. package/minecraft-data/data/pc/1.12.1/protocol.json +101 -86
  17. package/minecraft-data/data/pc/1.12.2/proto.yml +29 -35
  18. package/minecraft-data/data/pc/1.12.2/protocol.json +101 -86
  19. package/minecraft-data/data/pc/1.13/proto.yml +29 -35
  20. package/minecraft-data/data/pc/1.13/protocol.json +101 -86
  21. package/minecraft-data/data/pc/1.13.1/proto.yml +29 -35
  22. package/minecraft-data/data/pc/1.13.1/protocol.json +101 -86
  23. package/minecraft-data/data/pc/1.13.2/proto.yml +29 -35
  24. package/minecraft-data/data/pc/1.13.2/protocol.json +101 -86
  25. package/minecraft-data/data/pc/1.13.2-pre1/proto.yml +29 -35
  26. package/minecraft-data/data/pc/1.13.2-pre1/protocol.json +101 -86
  27. package/minecraft-data/data/pc/1.13.2-pre2/proto.yml +29 -35
  28. package/minecraft-data/data/pc/1.13.2-pre2/protocol.json +101 -86
  29. package/minecraft-data/data/pc/1.14/proto.yml +29 -35
  30. package/minecraft-data/data/pc/1.14/protocol.json +101 -86
  31. package/minecraft-data/data/pc/1.14.1/proto.yml +29 -35
  32. package/minecraft-data/data/pc/1.14.1/protocol.json +101 -86
  33. package/minecraft-data/data/pc/1.14.3/proto.yml +29 -35
  34. package/minecraft-data/data/pc/1.14.3/protocol.json +101 -86
  35. package/minecraft-data/data/pc/1.14.4/proto.yml +29 -35
  36. package/minecraft-data/data/pc/1.14.4/protocol.json +101 -86
  37. package/minecraft-data/data/pc/1.15/proto.yml +29 -35
  38. package/minecraft-data/data/pc/1.15/protocol.json +101 -86
  39. package/minecraft-data/data/pc/1.15.1/proto.yml +29 -35
  40. package/minecraft-data/data/pc/1.15.1/protocol.json +101 -86
  41. package/minecraft-data/data/pc/1.15.2/proto.yml +29 -35
  42. package/minecraft-data/data/pc/1.15.2/protocol.json +101 -86
  43. package/minecraft-data/data/pc/1.16/proto.yml +29 -35
  44. package/minecraft-data/data/pc/1.16/protocol.json +101 -86
  45. package/minecraft-data/data/pc/1.16-rc1/proto.yml +29 -35
  46. package/minecraft-data/data/pc/1.16-rc1/protocol.json +101 -86
  47. package/minecraft-data/data/pc/1.16.1/proto.yml +29 -35
  48. package/minecraft-data/data/pc/1.16.1/protocol.json +101 -86
  49. package/minecraft-data/data/pc/1.16.2/proto.yml +29 -35
  50. package/minecraft-data/data/pc/1.16.2/protocol.json +101 -86
  51. package/minecraft-data/data/pc/1.17/proto.yml +30 -36
  52. package/minecraft-data/data/pc/1.17/protocol.json +102 -87
  53. package/minecraft-data/data/pc/1.17.1/proto.yml +30 -36
  54. package/minecraft-data/data/pc/1.17.1/protocol.json +102 -87
  55. package/minecraft-data/data/pc/1.18/proto.yml +30 -36
  56. package/minecraft-data/data/pc/1.18/protocol.json +102 -87
  57. package/minecraft-data/data/pc/1.18.2/proto.yml +30 -36
  58. package/minecraft-data/data/pc/1.18.2/protocol.json +102 -87
  59. package/minecraft-data/data/pc/1.19/proto.yml +34 -67
  60. package/minecraft-data/data/pc/1.19/protocol.json +123 -127
  61. package/minecraft-data/data/pc/1.19.2/proto.yml +35 -68
  62. package/minecraft-data/data/pc/1.19.2/protocol.json +123 -127
  63. package/minecraft-data/data/pc/1.19.3/proto.yml +39 -309
  64. package/minecraft-data/data/pc/1.19.3/protocol.json +65 -324
  65. package/minecraft-data/data/pc/1.19.4/proto.yml +39 -309
  66. package/minecraft-data/data/pc/1.19.4/protocol.json +65 -324
  67. package/minecraft-data/data/pc/1.20/proto.yml +40 -310
  68. package/minecraft-data/data/pc/1.20/protocol.json +65 -324
  69. package/minecraft-data/data/pc/1.20.2/proto.yml +40 -310
  70. package/minecraft-data/data/pc/1.20.2/protocol.json +65 -324
  71. package/minecraft-data/data/pc/1.20.3/proto.yml +156 -327
  72. package/minecraft-data/data/pc/1.20.3/protocol.json +186 -369
  73. package/minecraft-data/data/pc/1.20.5/proto.yml +427 -845
  74. package/minecraft-data/data/pc/1.20.5/protocol.json +669 -931
  75. package/minecraft-data/data/pc/1.21.1/proto.yml +415 -898
  76. package/minecraft-data/data/pc/1.21.1/protocol.json +585 -1058
  77. package/minecraft-data/data/pc/1.21.3/proto.yml +429 -572
  78. package/minecraft-data/data/pc/1.21.3/protocol.json +760 -920
  79. package/minecraft-data/data/pc/1.21.4/protocol.json +766 -917
  80. package/minecraft-data/data/pc/1.21.5/attributes.json +226 -0
  81. package/minecraft-data/data/pc/1.21.5/biomes.json +652 -0
  82. package/minecraft-data/data/pc/1.21.5/blockCollisionShapes.json +142530 -0
  83. package/minecraft-data/data/pc/1.21.5/blocks.json +41307 -0
  84. package/minecraft-data/data/pc/1.21.5/effects.json +236 -0
  85. package/minecraft-data/data/pc/1.21.5/enchantments.json +959 -0
  86. package/minecraft-data/data/pc/1.21.5/entities.json +1502 -0
  87. package/minecraft-data/data/pc/1.21.5/foods.json +402 -0
  88. package/minecraft-data/data/pc/1.21.5/instruments.json +94 -0
  89. package/minecraft-data/data/pc/1.21.5/items.json +9164 -0
  90. package/minecraft-data/data/pc/1.21.5/language.json +7163 -0
  91. package/minecraft-data/data/pc/1.21.5/materials.json +206 -0
  92. package/minecraft-data/data/pc/1.21.5/particles.json +458 -0
  93. package/minecraft-data/data/pc/1.21.5/recipes.json +29948 -0
  94. package/minecraft-data/data/pc/1.21.5/sounds.json +6810 -0
  95. package/minecraft-data/data/pc/1.21.5/tints.json +465 -0
  96. package/minecraft-data/data/pc/1.21.5/version.json +6 -0
  97. package/minecraft-data/data/pc/1.21.6/attributes.json +247 -0
  98. package/minecraft-data/data/pc/1.21.6/biomes.json +652 -0
  99. package/minecraft-data/data/pc/1.21.6/blockCollisionShapes.json +142541 -0
  100. package/minecraft-data/data/pc/1.21.6/blocks.json +41360 -0
  101. package/minecraft-data/data/pc/1.21.6/effects.json +236 -0
  102. package/minecraft-data/data/pc/1.21.6/enchantments.json +959 -0
  103. package/minecraft-data/data/pc/1.21.6/entities.json +1512 -0
  104. package/minecraft-data/data/pc/1.21.6/foods.json +402 -0
  105. package/minecraft-data/data/pc/1.21.6/instruments.json +94 -0
  106. package/minecraft-data/data/pc/1.21.6/items.json +9278 -0
  107. package/minecraft-data/data/pc/1.21.6/language.json +7389 -0
  108. package/minecraft-data/data/pc/1.21.6/materials.json +206 -0
  109. package/minecraft-data/data/pc/1.21.6/particles.json +458 -0
  110. package/minecraft-data/data/pc/1.21.6/recipes.json +30473 -0
  111. package/minecraft-data/data/pc/1.21.6/sounds.json +6910 -0
  112. package/minecraft-data/data/pc/1.21.6/tints.json +465 -0
  113. package/minecraft-data/data/pc/1.21.6/version.json +6 -0
  114. package/minecraft-data/data/pc/1.7/proto.yml +3 -6
  115. package/minecraft-data/data/pc/1.7/protocol.json +7 -0
  116. package/minecraft-data/data/pc/1.8/proto.yml +29 -35
  117. package/minecraft-data/data/pc/1.8/protocol.json +101 -86
  118. package/minecraft-data/data/pc/1.9/proto.yml +29 -35
  119. package/minecraft-data/data/pc/1.9/protocol.json +101 -86
  120. package/minecraft-data/data/pc/1.9.1-pre2/proto.yml +29 -35
  121. package/minecraft-data/data/pc/1.9.1-pre2/protocol.json +101 -86
  122. package/minecraft-data/data/pc/1.9.2/proto.yml +29 -35
  123. package/minecraft-data/data/pc/1.9.2/protocol.json +101 -86
  124. package/minecraft-data/data/pc/1.9.4/proto.yml +29 -35
  125. package/minecraft-data/data/pc/1.9.4/protocol.json +101 -86
  126. package/minecraft-data/data/pc/15w40b/proto.yml +29 -35
  127. package/minecraft-data/data/pc/15w40b/protocol.json +101 -86
  128. package/minecraft-data/data/pc/16w20a/proto.yml +29 -35
  129. package/minecraft-data/data/pc/16w20a/protocol.json +101 -86
  130. package/minecraft-data/data/pc/16w35a/proto.yml +29 -35
  131. package/minecraft-data/data/pc/16w35a/protocol.json +101 -86
  132. package/minecraft-data/data/pc/17w15a/proto.yml +29 -35
  133. package/minecraft-data/data/pc/17w15a/protocol.json +101 -86
  134. package/minecraft-data/data/pc/17w18b/proto.yml +29 -35
  135. package/minecraft-data/data/pc/17w18b/protocol.json +101 -86
  136. package/minecraft-data/data/pc/17w50a/proto.yml +29 -35
  137. package/minecraft-data/data/pc/17w50a/protocol.json +101 -86
  138. package/minecraft-data/data/pc/20w13b/proto.yml +29 -35
  139. package/minecraft-data/data/pc/20w13b/protocol.json +101 -86
  140. package/minecraft-data/data/pc/21w07a/proto.yml +29 -35
  141. package/minecraft-data/data/pc/21w07a/protocol.json +101 -86
  142. package/minecraft-data/data/pc/common/features.json +7 -2
  143. package/minecraft-data/data/pc/common/protocolVersions.json +203 -36
  144. package/minecraft-data/data/pc/common/versions.json +2 -1
  145. package/minecraft-data/data/pc/latest/proto.yml +427 -572
  146. package/minecraft-data/doc/history.md +12 -0
  147. package/minecraft-data/doc/protocol.md +6 -4
  148. package/package.json +2 -2
  149. package/test/load.js +8 -0
@@ -17,6 +17,7 @@
17
17
  "option": "native",
18
18
  "entityMetadataLoop": "native",
19
19
  "bitfield": "native",
20
+ "bitflags": "native",
20
21
  "container": "native",
21
22
  "switch": "native",
22
23
  "void": "native",
@@ -24,6 +25,12 @@
24
25
  "restBuffer": "native",
25
26
  "nbt": "native",
26
27
  "optionalNbt": "native",
28
+ "ByteArray": [
29
+ "buffer",
30
+ {
31
+ "countType": "varint"
32
+ }
33
+ ],
27
34
  "string": [
28
35
  "pstring",
29
36
  {
@@ -1795,7 +1802,19 @@
1795
1802
  [
1796
1803
  {
1797
1804
  "name": "action",
1798
- "type": "varint"
1805
+ "type": [
1806
+ "mapper",
1807
+ {
1808
+ "type": "varint",
1809
+ "mappings": {
1810
+ "0": "add_player",
1811
+ "1": "update_game_mode",
1812
+ "2": "update_latency",
1813
+ "3": "update_display_name",
1814
+ "4": "remove_player"
1815
+ }
1816
+ }
1817
+ ]
1799
1818
  },
1800
1819
  {
1801
1820
  "name": "data",
@@ -1807,105 +1826,101 @@
1807
1826
  "container",
1808
1827
  [
1809
1828
  {
1810
- "name": "UUID",
1829
+ "name": "uuid",
1811
1830
  "type": "UUID"
1812
1831
  },
1813
1832
  {
1814
- "name": "name",
1833
+ "anon": true,
1815
1834
  "type": [
1816
1835
  "switch",
1817
1836
  {
1818
1837
  "compareTo": "../action",
1819
1838
  "fields": {
1820
- "0": "string"
1821
- },
1822
- "default": "void"
1823
- }
1824
- ]
1825
- },
1826
- {
1827
- "name": "properties",
1828
- "type": [
1829
- "switch",
1830
- {
1831
- "compareTo": "../action",
1832
- "fields": {
1833
- "0": [
1834
- "array",
1835
- {
1836
- "countType": "varint",
1837
- "type": [
1838
- "container",
1839
- [
1839
+ "add_player": [
1840
+ "container",
1841
+ [
1842
+ {
1843
+ "name": "name",
1844
+ "type": "string"
1845
+ },
1846
+ {
1847
+ "name": "properties",
1848
+ "type": [
1849
+ "array",
1840
1850
  {
1841
- "name": "name",
1842
- "type": "string"
1843
- },
1844
- {
1845
- "name": "value",
1846
- "type": "string"
1847
- },
1848
- {
1849
- "name": "signature",
1851
+ "countType": "varint",
1850
1852
  "type": [
1851
- "option",
1852
- "string"
1853
+ "container",
1854
+ [
1855
+ {
1856
+ "name": "name",
1857
+ "type": "string"
1858
+ },
1859
+ {
1860
+ "name": "value",
1861
+ "type": "string"
1862
+ },
1863
+ {
1864
+ "name": "signature",
1865
+ "type": [
1866
+ "option",
1867
+ "string"
1868
+ ]
1869
+ }
1870
+ ]
1853
1871
  ]
1854
1872
  }
1855
1873
  ]
1856
- ]
1857
- }
1858
- ]
1859
- },
1860
- "default": "void"
1861
- }
1862
- ]
1863
- },
1864
- {
1865
- "name": "gamemode",
1866
- "type": [
1867
- "switch",
1868
- {
1869
- "compareTo": "../action",
1870
- "fields": {
1871
- "0": "varint",
1872
- "1": "varint"
1873
- },
1874
- "default": "void"
1875
- }
1876
- ]
1877
- },
1878
- {
1879
- "name": "ping",
1880
- "type": [
1881
- "switch",
1882
- {
1883
- "compareTo": "../action",
1884
- "fields": {
1885
- "0": "varint",
1886
- "2": "varint"
1887
- },
1888
- "default": "void"
1889
- }
1890
- ]
1891
- },
1892
- {
1893
- "name": "displayName",
1894
- "type": [
1895
- "switch",
1896
- {
1897
- "compareTo": "../action",
1898
- "fields": {
1899
- "0": [
1900
- "option",
1901
- "string"
1874
+ },
1875
+ {
1876
+ "name": "gamemode",
1877
+ "type": "varint"
1878
+ },
1879
+ {
1880
+ "name": "ping",
1881
+ "type": "varint"
1882
+ },
1883
+ {
1884
+ "name": "displayName",
1885
+ "type": [
1886
+ "option",
1887
+ "string"
1888
+ ]
1889
+ }
1890
+ ]
1902
1891
  ],
1903
- "3": [
1904
- "option",
1905
- "string"
1906
- ]
1907
- },
1908
- "default": "void"
1892
+ "update_game_mode": [
1893
+ "container",
1894
+ [
1895
+ {
1896
+ "name": "gamemode",
1897
+ "type": "varint"
1898
+ }
1899
+ ]
1900
+ ],
1901
+ "update_latency": [
1902
+ "container",
1903
+ [
1904
+ {
1905
+ "name": "ping",
1906
+ "type": "varint"
1907
+ }
1908
+ ]
1909
+ ],
1910
+ "update_display_name": [
1911
+ "container",
1912
+ [
1913
+ {
1914
+ "name": "displayName",
1915
+ "type": [
1916
+ "option",
1917
+ "string"
1918
+ ]
1919
+ }
1920
+ ]
1921
+ ],
1922
+ "remove_player": "void"
1923
+ }
1909
1924
  }
1910
1925
  ]
1911
1926
  }
@@ -18,6 +18,7 @@
18
18
  option: native
19
19
  entityMetadataLoop: native
20
20
  bitfield: native
21
+ bitflags: native
21
22
  container: native
22
23
  switch: native
23
24
  void: native
@@ -25,12 +26,8 @@
25
26
  restBuffer: native
26
27
  nbt: native
27
28
  optionalNbt: native
28
- string: [
29
- "pstring",
30
- {
31
- "countType": "varint"
32
- }
33
- ]
29
+ ByteArray: ["buffer", { "countType": "varint" }]
30
+ string: ["pstring", { "countType": "varint" }]
34
31
  slot:
35
32
  blockId: i16
36
33
  _: blockId ?
@@ -518,37 +515,34 @@
518
515
  message: event ?
519
516
  if 2: string
520
517
  default: void
521
- packet_player_info:
522
- action: varint
518
+ # MC: ClientboundPlayerInfoPacket
519
+ packet_player_info:
520
+ action: varint =>
521
+ - add_player
522
+ - update_game_mode
523
+ - update_latency
524
+ - update_display_name
525
+ - remove_player
526
+ ## https://github.com/extremeheat/extracted_minecraft_data/blob/client1.18.1/client/net/minecraft/network/protocol/game/ClientboundPlayerInfoPacket.java#L122
523
527
  data: []varint
524
- UUID: UUID
525
- name: ../action ?
526
- if 0: string
527
- default: void
528
- properties: ../action ?
529
- if 0: []varint
528
+ uuid: UUID
529
+ _: ../action ?
530
+ if add_player:
530
531
  name: string
531
- value: string
532
- signature?: string
533
- default: void
534
- gamemode: ../action ?
535
- if 0: varint
536
- if 1: varint
537
- default: void
538
- ping: ../action ?
539
- if 0: varint
540
- if 2: varint
541
- default: void
542
- displayName: ../action ?
543
- if 0: [
544
- "option",
545
- "string"
546
- ]
547
- if 3: [
548
- "option",
549
- "string"
550
- ]
551
- default: void
532
+ properties: []varint
533
+ name: string
534
+ value: string
535
+ signature?: string
536
+ gamemode: varint
537
+ ping: varint
538
+ displayName?: string
539
+ if update_game_mode:
540
+ gamemode: varint
541
+ if update_latency:
542
+ ping: varint
543
+ if update_display_name:
544
+ displayName?: string
545
+ if remove_player: void
552
546
  packet_position:
553
547
  x: f64
554
548
  y: f64
@@ -17,6 +17,7 @@
17
17
  "option": "native",
18
18
  "entityMetadataLoop": "native",
19
19
  "bitfield": "native",
20
+ "bitflags": "native",
20
21
  "container": "native",
21
22
  "switch": "native",
22
23
  "void": "native",
@@ -24,6 +25,12 @@
24
25
  "restBuffer": "native",
25
26
  "nbt": "native",
26
27
  "optionalNbt": "native",
28
+ "ByteArray": [
29
+ "buffer",
30
+ {
31
+ "countType": "varint"
32
+ }
33
+ ],
27
34
  "string": [
28
35
  "pstring",
29
36
  {
@@ -1795,7 +1802,19 @@
1795
1802
  [
1796
1803
  {
1797
1804
  "name": "action",
1798
- "type": "varint"
1805
+ "type": [
1806
+ "mapper",
1807
+ {
1808
+ "type": "varint",
1809
+ "mappings": {
1810
+ "0": "add_player",
1811
+ "1": "update_game_mode",
1812
+ "2": "update_latency",
1813
+ "3": "update_display_name",
1814
+ "4": "remove_player"
1815
+ }
1816
+ }
1817
+ ]
1799
1818
  },
1800
1819
  {
1801
1820
  "name": "data",
@@ -1807,105 +1826,101 @@
1807
1826
  "container",
1808
1827
  [
1809
1828
  {
1810
- "name": "UUID",
1829
+ "name": "uuid",
1811
1830
  "type": "UUID"
1812
1831
  },
1813
1832
  {
1814
- "name": "name",
1833
+ "anon": true,
1815
1834
  "type": [
1816
1835
  "switch",
1817
1836
  {
1818
1837
  "compareTo": "../action",
1819
1838
  "fields": {
1820
- "0": "string"
1821
- },
1822
- "default": "void"
1823
- }
1824
- ]
1825
- },
1826
- {
1827
- "name": "properties",
1828
- "type": [
1829
- "switch",
1830
- {
1831
- "compareTo": "../action",
1832
- "fields": {
1833
- "0": [
1834
- "array",
1835
- {
1836
- "countType": "varint",
1837
- "type": [
1838
- "container",
1839
- [
1839
+ "add_player": [
1840
+ "container",
1841
+ [
1842
+ {
1843
+ "name": "name",
1844
+ "type": "string"
1845
+ },
1846
+ {
1847
+ "name": "properties",
1848
+ "type": [
1849
+ "array",
1840
1850
  {
1841
- "name": "name",
1842
- "type": "string"
1843
- },
1844
- {
1845
- "name": "value",
1846
- "type": "string"
1847
- },
1848
- {
1849
- "name": "signature",
1851
+ "countType": "varint",
1850
1852
  "type": [
1851
- "option",
1852
- "string"
1853
+ "container",
1854
+ [
1855
+ {
1856
+ "name": "name",
1857
+ "type": "string"
1858
+ },
1859
+ {
1860
+ "name": "value",
1861
+ "type": "string"
1862
+ },
1863
+ {
1864
+ "name": "signature",
1865
+ "type": [
1866
+ "option",
1867
+ "string"
1868
+ ]
1869
+ }
1870
+ ]
1853
1871
  ]
1854
1872
  }
1855
1873
  ]
1856
- ]
1857
- }
1858
- ]
1859
- },
1860
- "default": "void"
1861
- }
1862
- ]
1863
- },
1864
- {
1865
- "name": "gamemode",
1866
- "type": [
1867
- "switch",
1868
- {
1869
- "compareTo": "../action",
1870
- "fields": {
1871
- "0": "varint",
1872
- "1": "varint"
1873
- },
1874
- "default": "void"
1875
- }
1876
- ]
1877
- },
1878
- {
1879
- "name": "ping",
1880
- "type": [
1881
- "switch",
1882
- {
1883
- "compareTo": "../action",
1884
- "fields": {
1885
- "0": "varint",
1886
- "2": "varint"
1887
- },
1888
- "default": "void"
1889
- }
1890
- ]
1891
- },
1892
- {
1893
- "name": "displayName",
1894
- "type": [
1895
- "switch",
1896
- {
1897
- "compareTo": "../action",
1898
- "fields": {
1899
- "0": [
1900
- "option",
1901
- "string"
1874
+ },
1875
+ {
1876
+ "name": "gamemode",
1877
+ "type": "varint"
1878
+ },
1879
+ {
1880
+ "name": "ping",
1881
+ "type": "varint"
1882
+ },
1883
+ {
1884
+ "name": "displayName",
1885
+ "type": [
1886
+ "option",
1887
+ "string"
1888
+ ]
1889
+ }
1890
+ ]
1902
1891
  ],
1903
- "3": [
1904
- "option",
1905
- "string"
1906
- ]
1907
- },
1908
- "default": "void"
1892
+ "update_game_mode": [
1893
+ "container",
1894
+ [
1895
+ {
1896
+ "name": "gamemode",
1897
+ "type": "varint"
1898
+ }
1899
+ ]
1900
+ ],
1901
+ "update_latency": [
1902
+ "container",
1903
+ [
1904
+ {
1905
+ "name": "ping",
1906
+ "type": "varint"
1907
+ }
1908
+ ]
1909
+ ],
1910
+ "update_display_name": [
1911
+ "container",
1912
+ [
1913
+ {
1914
+ "name": "displayName",
1915
+ "type": [
1916
+ "option",
1917
+ "string"
1918
+ ]
1919
+ }
1920
+ ]
1921
+ ],
1922
+ "remove_player": "void"
1923
+ }
1909
1924
  }
1910
1925
  ]
1911
1926
  }
@@ -18,6 +18,7 @@
18
18
  option: native
19
19
  entityMetadataLoop: native
20
20
  bitfield: native
21
+ bitflags: native
21
22
  container: native
22
23
  switch: native
23
24
  void: native
@@ -25,12 +26,8 @@
25
26
  restBuffer: native
26
27
  nbt: native
27
28
  optionalNbt: native
28
- string: [
29
- "pstring",
30
- {
31
- "countType": "varint"
32
- }
33
- ]
29
+ ByteArray: ["buffer", { "countType": "varint" }]
30
+ string: ["pstring", { "countType": "varint" }]
34
31
  slot:
35
32
  blockId: i16
36
33
  _: blockId ?
@@ -544,37 +541,34 @@
544
541
  message: event ?
545
542
  if 2: string
546
543
  default: void
547
- packet_player_info:
548
- action: varint
544
+ # MC: ClientboundPlayerInfoPacket
545
+ packet_player_info:
546
+ action: varint =>
547
+ - add_player
548
+ - update_game_mode
549
+ - update_latency
550
+ - update_display_name
551
+ - remove_player
552
+ ## https://github.com/extremeheat/extracted_minecraft_data/blob/client1.18.1/client/net/minecraft/network/protocol/game/ClientboundPlayerInfoPacket.java#L122
549
553
  data: []varint
550
- UUID: UUID
551
- name: ../action ?
552
- if 0: string
553
- default: void
554
- properties: ../action ?
555
- if 0: []varint
554
+ uuid: UUID
555
+ _: ../action ?
556
+ if add_player:
556
557
  name: string
557
- value: string
558
- signature?: string
559
- default: void
560
- gamemode: ../action ?
561
- if 0: varint
562
- if 1: varint
563
- default: void
564
- ping: ../action ?
565
- if 0: varint
566
- if 2: varint
567
- default: void
568
- displayName: ../action ?
569
- if 0: [
570
- "option",
571
- "string"
572
- ]
573
- if 3: [
574
- "option",
575
- "string"
576
- ]
577
- default: void
558
+ properties: []varint
559
+ name: string
560
+ value: string
561
+ signature?: string
562
+ gamemode: varint
563
+ ping: varint
564
+ displayName?: string
565
+ if update_game_mode:
566
+ gamemode: varint
567
+ if update_latency:
568
+ ping: varint
569
+ if update_display_name:
570
+ displayName?: string
571
+ if remove_player: void
578
572
  packet_position:
579
573
  x: f64
580
574
  y: f64