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
@@ -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,6 +26,12 @@
25
26
  "restBuffer": "native",
26
27
  "nbt": "native",
27
28
  "optionalNbt": "native",
29
+ "ByteArray": [
30
+ "buffer",
31
+ {
32
+ "countType": "varint"
33
+ }
34
+ ],
28
35
  "string": [
29
36
  "pstring",
30
37
  {
@@ -2894,7 +2901,19 @@
2894
2901
  [
2895
2902
  {
2896
2903
  "name": "action",
2897
- "type": "varint"
2904
+ "type": [
2905
+ "mapper",
2906
+ {
2907
+ "type": "varint",
2908
+ "mappings": {
2909
+ "0": "add_player",
2910
+ "1": "update_game_mode",
2911
+ "2": "update_latency",
2912
+ "3": "update_display_name",
2913
+ "4": "remove_player"
2914
+ }
2915
+ }
2916
+ ]
2898
2917
  },
2899
2918
  {
2900
2919
  "name": "data",
@@ -2906,105 +2925,101 @@
2906
2925
  "container",
2907
2926
  [
2908
2927
  {
2909
- "name": "UUID",
2928
+ "name": "uuid",
2910
2929
  "type": "UUID"
2911
2930
  },
2912
2931
  {
2913
- "name": "name",
2914
- "type": [
2915
- "switch",
2916
- {
2917
- "compareTo": "../action",
2918
- "fields": {
2919
- "0": "string"
2920
- },
2921
- "default": "void"
2922
- }
2923
- ]
2924
- },
2925
- {
2926
- "name": "properties",
2932
+ "anon": true,
2927
2933
  "type": [
2928
2934
  "switch",
2929
2935
  {
2930
2936
  "compareTo": "../action",
2931
2937
  "fields": {
2932
- "0": [
2933
- "array",
2934
- {
2935
- "countType": "varint",
2936
- "type": [
2937
- "container",
2938
- [
2939
- {
2940
- "name": "name",
2941
- "type": "string"
2942
- },
2943
- {
2944
- "name": "value",
2945
- "type": "string"
2946
- },
2938
+ "add_player": [
2939
+ "container",
2940
+ [
2941
+ {
2942
+ "name": "name",
2943
+ "type": "string"
2944
+ },
2945
+ {
2946
+ "name": "properties",
2947
+ "type": [
2948
+ "array",
2947
2949
  {
2948
- "name": "signature",
2950
+ "countType": "varint",
2949
2951
  "type": [
2950
- "option",
2951
- "string"
2952
+ "container",
2953
+ [
2954
+ {
2955
+ "name": "name",
2956
+ "type": "string"
2957
+ },
2958
+ {
2959
+ "name": "value",
2960
+ "type": "string"
2961
+ },
2962
+ {
2963
+ "name": "signature",
2964
+ "type": [
2965
+ "option",
2966
+ "string"
2967
+ ]
2968
+ }
2969
+ ]
2952
2970
  ]
2953
2971
  }
2954
2972
  ]
2955
- ]
2956
- }
2957
- ]
2958
- },
2959
- "default": "void"
2960
- }
2961
- ]
2962
- },
2963
- {
2964
- "name": "gamemode",
2965
- "type": [
2966
- "switch",
2967
- {
2968
- "compareTo": "../action",
2969
- "fields": {
2970
- "0": "varint",
2971
- "1": "varint"
2972
- },
2973
- "default": "void"
2974
- }
2975
- ]
2976
- },
2977
- {
2978
- "name": "ping",
2979
- "type": [
2980
- "switch",
2981
- {
2982
- "compareTo": "../action",
2983
- "fields": {
2984
- "0": "varint",
2985
- "2": "varint"
2986
- },
2987
- "default": "void"
2988
- }
2989
- ]
2990
- },
2991
- {
2992
- "name": "displayName",
2993
- "type": [
2994
- "switch",
2995
- {
2996
- "compareTo": "../action",
2997
- "fields": {
2998
- "0": [
2999
- "option",
3000
- "string"
2973
+ },
2974
+ {
2975
+ "name": "gamemode",
2976
+ "type": "varint"
2977
+ },
2978
+ {
2979
+ "name": "ping",
2980
+ "type": "varint"
2981
+ },
2982
+ {
2983
+ "name": "displayName",
2984
+ "type": [
2985
+ "option",
2986
+ "string"
2987
+ ]
2988
+ }
2989
+ ]
3001
2990
  ],
3002
- "3": [
3003
- "option",
3004
- "string"
3005
- ]
3006
- },
3007
- "default": "void"
2991
+ "update_game_mode": [
2992
+ "container",
2993
+ [
2994
+ {
2995
+ "name": "gamemode",
2996
+ "type": "varint"
2997
+ }
2998
+ ]
2999
+ ],
3000
+ "update_latency": [
3001
+ "container",
3002
+ [
3003
+ {
3004
+ "name": "ping",
3005
+ "type": "varint"
3006
+ }
3007
+ ]
3008
+ ],
3009
+ "update_display_name": [
3010
+ "container",
3011
+ [
3012
+ {
3013
+ "name": "displayName",
3014
+ "type": [
3015
+ "option",
3016
+ "string"
3017
+ ]
3018
+ }
3019
+ ]
3020
+ ],
3021
+ "remove_player": "void"
3022
+ }
3008
3023
  }
3009
3024
  ]
3010
3025
  }
@@ -19,6 +19,7 @@
19
19
  option: native
20
20
  entityMetadataLoop: native
21
21
  bitfield: native
22
+ bitflags: native
22
23
  container: native
23
24
  switch: native
24
25
  void: native
@@ -26,12 +27,8 @@
26
27
  restBuffer: native
27
28
  nbt: native
28
29
  optionalNbt: native
29
- string: [
30
- "pstring",
31
- {
32
- "countType": "varint"
33
- }
34
- ]
30
+ ByteArray: ["buffer", { "countType": "varint" }]
31
+ string: ["pstring", { "countType": "varint" }]
35
32
  slot:
36
33
  present: bool
37
34
  _: present ?
@@ -924,37 +921,34 @@
924
921
  message: event ?
925
922
  if 2: string
926
923
  default: void
927
- packet_player_info:
928
- action: varint
924
+ # MC: ClientboundPlayerInfoPacket
925
+ packet_player_info:
926
+ action: varint =>
927
+ - add_player
928
+ - update_game_mode
929
+ - update_latency
930
+ - update_display_name
931
+ - remove_player
932
+ ## https://github.com/extremeheat/extracted_minecraft_data/blob/client1.18.1/client/net/minecraft/network/protocol/game/ClientboundPlayerInfoPacket.java#L122
929
933
  data: []varint
930
- UUID: UUID
931
- name: ../action ?
932
- if 0: string
933
- default: void
934
- properties: ../action ?
935
- if 0: []varint
934
+ uuid: UUID
935
+ _: ../action ?
936
+ if add_player:
936
937
  name: string
937
- value: string
938
- signature?: string
939
- default: void
940
- gamemode: ../action ?
941
- if 0: varint
942
- if 1: varint
943
- default: void
944
- ping: ../action ?
945
- if 0: varint
946
- if 2: varint
947
- default: void
948
- displayName: ../action ?
949
- if 0: [
950
- "option",
951
- "string"
952
- ]
953
- if 3: [
954
- "option",
955
- "string"
956
- ]
957
- default: void
938
+ properties: []varint
939
+ name: string
940
+ value: string
941
+ signature?: string
942
+ gamemode: varint
943
+ ping: varint
944
+ displayName?: string
945
+ if update_game_mode:
946
+ gamemode: varint
947
+ if update_latency:
948
+ ping: varint
949
+ if update_display_name:
950
+ displayName?: string
951
+ if remove_player: void
958
952
  packet_position:
959
953
  x: f64
960
954
  y: f64
@@ -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,6 +26,12 @@
25
26
  "restBuffer": "native",
26
27
  "nbt": "native",
27
28
  "optionalNbt": "native",
29
+ "ByteArray": [
30
+ "buffer",
31
+ {
32
+ "countType": "varint"
33
+ }
34
+ ],
28
35
  "string": [
29
36
  "pstring",
30
37
  {
@@ -2913,7 +2920,19 @@
2913
2920
  [
2914
2921
  {
2915
2922
  "name": "action",
2916
- "type": "varint"
2923
+ "type": [
2924
+ "mapper",
2925
+ {
2926
+ "type": "varint",
2927
+ "mappings": {
2928
+ "0": "add_player",
2929
+ "1": "update_game_mode",
2930
+ "2": "update_latency",
2931
+ "3": "update_display_name",
2932
+ "4": "remove_player"
2933
+ }
2934
+ }
2935
+ ]
2917
2936
  },
2918
2937
  {
2919
2938
  "name": "data",
@@ -2925,105 +2944,101 @@
2925
2944
  "container",
2926
2945
  [
2927
2946
  {
2928
- "name": "UUID",
2947
+ "name": "uuid",
2929
2948
  "type": "UUID"
2930
2949
  },
2931
2950
  {
2932
- "name": "name",
2933
- "type": [
2934
- "switch",
2935
- {
2936
- "compareTo": "../action",
2937
- "fields": {
2938
- "0": "string"
2939
- },
2940
- "default": "void"
2941
- }
2942
- ]
2943
- },
2944
- {
2945
- "name": "properties",
2951
+ "anon": true,
2946
2952
  "type": [
2947
2953
  "switch",
2948
2954
  {
2949
2955
  "compareTo": "../action",
2950
2956
  "fields": {
2951
- "0": [
2952
- "array",
2953
- {
2954
- "countType": "varint",
2955
- "type": [
2956
- "container",
2957
- [
2958
- {
2959
- "name": "name",
2960
- "type": "string"
2961
- },
2962
- {
2963
- "name": "value",
2964
- "type": "string"
2965
- },
2957
+ "add_player": [
2958
+ "container",
2959
+ [
2960
+ {
2961
+ "name": "name",
2962
+ "type": "string"
2963
+ },
2964
+ {
2965
+ "name": "properties",
2966
+ "type": [
2967
+ "array",
2966
2968
  {
2967
- "name": "signature",
2969
+ "countType": "varint",
2968
2970
  "type": [
2969
- "option",
2970
- "string"
2971
+ "container",
2972
+ [
2973
+ {
2974
+ "name": "name",
2975
+ "type": "string"
2976
+ },
2977
+ {
2978
+ "name": "value",
2979
+ "type": "string"
2980
+ },
2981
+ {
2982
+ "name": "signature",
2983
+ "type": [
2984
+ "option",
2985
+ "string"
2986
+ ]
2987
+ }
2988
+ ]
2971
2989
  ]
2972
2990
  }
2973
2991
  ]
2974
- ]
2975
- }
2976
- ]
2977
- },
2978
- "default": "void"
2979
- }
2980
- ]
2981
- },
2982
- {
2983
- "name": "gamemode",
2984
- "type": [
2985
- "switch",
2986
- {
2987
- "compareTo": "../action",
2988
- "fields": {
2989
- "0": "varint",
2990
- "1": "varint"
2991
- },
2992
- "default": "void"
2993
- }
2994
- ]
2995
- },
2996
- {
2997
- "name": "ping",
2998
- "type": [
2999
- "switch",
3000
- {
3001
- "compareTo": "../action",
3002
- "fields": {
3003
- "0": "varint",
3004
- "2": "varint"
3005
- },
3006
- "default": "void"
3007
- }
3008
- ]
3009
- },
3010
- {
3011
- "name": "displayName",
3012
- "type": [
3013
- "switch",
3014
- {
3015
- "compareTo": "../action",
3016
- "fields": {
3017
- "0": [
3018
- "option",
3019
- "string"
2992
+ },
2993
+ {
2994
+ "name": "gamemode",
2995
+ "type": "varint"
2996
+ },
2997
+ {
2998
+ "name": "ping",
2999
+ "type": "varint"
3000
+ },
3001
+ {
3002
+ "name": "displayName",
3003
+ "type": [
3004
+ "option",
3005
+ "string"
3006
+ ]
3007
+ }
3008
+ ]
3020
3009
  ],
3021
- "3": [
3022
- "option",
3023
- "string"
3024
- ]
3025
- },
3026
- "default": "void"
3010
+ "update_game_mode": [
3011
+ "container",
3012
+ [
3013
+ {
3014
+ "name": "gamemode",
3015
+ "type": "varint"
3016
+ }
3017
+ ]
3018
+ ],
3019
+ "update_latency": [
3020
+ "container",
3021
+ [
3022
+ {
3023
+ "name": "ping",
3024
+ "type": "varint"
3025
+ }
3026
+ ]
3027
+ ],
3028
+ "update_display_name": [
3029
+ "container",
3030
+ [
3031
+ {
3032
+ "name": "displayName",
3033
+ "type": [
3034
+ "option",
3035
+ "string"
3036
+ ]
3037
+ }
3038
+ ]
3039
+ ],
3040
+ "remove_player": "void"
3041
+ }
3027
3042
  }
3028
3043
  ]
3029
3044
  }
@@ -19,6 +19,7 @@
19
19
  option: native
20
20
  entityMetadataLoop: native
21
21
  bitfield: native
22
+ bitflags: native
22
23
  container: native
23
24
  switch: native
24
25
  void: native
@@ -26,12 +27,8 @@
26
27
  restBuffer: native
27
28
  nbt: native
28
29
  optionalNbt: native
29
- string: [
30
- "pstring",
31
- {
32
- "countType": "varint"
33
- }
34
- ]
30
+ ByteArray: ["buffer", { "countType": "varint" }]
31
+ string: ["pstring", { "countType": "varint" }]
35
32
  slot:
36
33
  present: bool
37
34
  _: present ?
@@ -924,37 +921,34 @@
924
921
  message: event ?
925
922
  if 2: string
926
923
  default: void
927
- packet_player_info:
928
- action: varint
924
+ # MC: ClientboundPlayerInfoPacket
925
+ packet_player_info:
926
+ action: varint =>
927
+ - add_player
928
+ - update_game_mode
929
+ - update_latency
930
+ - update_display_name
931
+ - remove_player
932
+ ## https://github.com/extremeheat/extracted_minecraft_data/blob/client1.18.1/client/net/minecraft/network/protocol/game/ClientboundPlayerInfoPacket.java#L122
929
933
  data: []varint
930
- UUID: UUID
931
- name: ../action ?
932
- if 0: string
933
- default: void
934
- properties: ../action ?
935
- if 0: []varint
934
+ uuid: UUID
935
+ _: ../action ?
936
+ if add_player:
936
937
  name: string
937
- value: string
938
- signature?: string
939
- default: void
940
- gamemode: ../action ?
941
- if 0: varint
942
- if 1: varint
943
- default: void
944
- ping: ../action ?
945
- if 0: varint
946
- if 2: varint
947
- default: void
948
- displayName: ../action ?
949
- if 0: [
950
- "option",
951
- "string"
952
- ]
953
- if 3: [
954
- "option",
955
- "string"
956
- ]
957
- default: void
938
+ properties: []varint
939
+ name: string
940
+ value: string
941
+ signature?: string
942
+ gamemode: varint
943
+ ping: varint
944
+ displayName?: string
945
+ if update_game_mode:
946
+ gamemode: varint
947
+ if update_latency:
948
+ ping: varint
949
+ if update_display_name:
950
+ displayName?: string
951
+ if remove_player: void
958
952
  packet_position:
959
953
  x: f64
960
954
  y: f64