minecraft-data 3.76.0 → 3.78.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 (38) hide show
  1. package/data.js +51 -2
  2. package/doc/history.md +8 -0
  3. package/index.d.ts +3 -0
  4. package/minecraft-data/README.md +2 -2
  5. package/minecraft-data/data/bedrock/1.21.30/proto.yml +4291 -0
  6. package/minecraft-data/data/bedrock/1.21.30/types.yml +2406 -0
  7. package/minecraft-data/data/bedrock/1.21.42/protocol.json +12754 -0
  8. package/minecraft-data/data/bedrock/1.21.42/version.json +6 -0
  9. package/minecraft-data/data/bedrock/common/protocolVersions.json +6 -0
  10. package/minecraft-data/data/bedrock/common/versions.json +2 -1
  11. package/minecraft-data/data/bedrock/latest/proto.yml +53 -19
  12. package/minecraft-data/data/bedrock/latest/types.yml +16 -0
  13. package/minecraft-data/data/dataPaths.json +51 -2
  14. package/minecraft-data/data/pc/1.20.3/proto.yml +7 -2
  15. package/minecraft-data/data/pc/1.20.3/protocol.json +29 -5
  16. package/minecraft-data/data/pc/1.20.5/enchantments.json +28 -28
  17. package/minecraft-data/data/pc/1.20.5/items.json +67 -67
  18. package/minecraft-data/data/pc/1.20.5/proto.yml +3446 -0
  19. package/minecraft-data/data/pc/1.20.5/protocol.json +98 -60
  20. package/minecraft-data/data/pc/1.21.1/blocks.json +39811 -0
  21. package/minecraft-data/data/pc/1.21.1/enchantments.json +959 -0
  22. package/minecraft-data/data/pc/1.21.1/foods.json +412 -0
  23. package/minecraft-data/data/pc/1.21.1/items.json +8780 -0
  24. package/minecraft-data/data/pc/1.21.1/language.json +6883 -0
  25. package/minecraft-data/data/pc/1.21.1/materials.json +134 -0
  26. package/minecraft-data/data/pc/1.21.1/protocol.json +9224 -0
  27. package/minecraft-data/data/pc/1.21.1/recipes.json +28095 -0
  28. package/minecraft-data/data/pc/1.21.1/sounds.json +6446 -0
  29. package/minecraft-data/data/pc/1.21.1/tints.json +447 -0
  30. package/minecraft-data/data/pc/1.21.1/version.json +6 -0
  31. package/minecraft-data/data/pc/common/features.json +5 -0
  32. package/minecraft-data/data/pc/common/protocolVersions.json +48 -0
  33. package/minecraft-data/data/pc/common/versions.json +2 -1
  34. package/minecraft-data/data/pc/latest/proto.yml +106 -18
  35. package/minecraft-data/doc/add-data-new-version.md +1 -0
  36. package/minecraft-data/doc/history.md +7 -0
  37. package/minecraft-data/tools/js/incrementVersion.js +1 -1
  38. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- !version: 1.20.5
1
+ !version: 1.21.1
2
2
  !StartDocs: true
3
3
 
4
4
  ^types:
@@ -38,6 +38,9 @@
38
38
  "countType": "varint"
39
39
  }
40
40
  ]
41
+ vec2f:
42
+ x: f32
43
+ y: f32
41
44
  vec3f:
42
45
  x: f32
43
46
  y: f32
@@ -69,6 +72,7 @@
69
72
  - custom_model_data
70
73
  - hide_additional_tooltip
71
74
  - hide_tooltip
75
+ - repair_cost
72
76
  - creative_slot_lock
73
77
  - enchantment_glint_override
74
78
  - intangible_projectile
@@ -344,7 +348,7 @@
344
348
  if jukebox_playable:
345
349
  directMode: bool
346
350
  _: directMode ?
347
- if false:
351
+ if true:
348
352
  jukeboxSongName: string
349
353
  jukeboxSongType: varint
350
354
  _: jukeboxSongType ?
@@ -355,9 +359,11 @@
355
359
  if 0:
356
360
  soundName: string
357
361
  fixedRange?: f32
358
- description: anonymousNbt
359
- duration: f32
360
- output: varint
362
+ description: anonymousNbt
363
+ duration: f32
364
+ output: varint
365
+ if false:
366
+ songLocation: string
361
367
  showInTooltip: bool
362
368
  if recipes: anonymousNbt
363
369
  # Name Type Description
@@ -553,8 +559,7 @@
553
559
  # TODO: This will require a custom type ; we need type - 1 length of blockIds
554
560
  blockIds: type ?
555
561
  if 0: void
556
- #default: varint[]varint
557
- default: ["arrayWithLengthOffset", {"count": "type", "type": "varint"}]
562
+ default: ["arrayWithLengthOffset", {"count": "type", "type": "varint", "lengthOffset": -1}]
558
563
 
559
564
  BlockProperty:
560
565
  # Name of the block state property.
@@ -719,8 +724,15 @@
719
724
  if sculk_charge: f32
720
725
  if shriek: varint
721
726
  if vibration:
722
- position: string
723
- entityId: varint
727
+ position_type: varint =>
728
+ - block
729
+ - entity
730
+ position: position_type ?
731
+ if block: position
732
+ if entity:
733
+ entityId: varint
734
+ entity_eye_height: f32
735
+ ticks: varint
724
736
  ingredient: Slot[]varint
725
737
  position: [
726
738
  "bitfield",
@@ -830,10 +842,22 @@
830
842
  if optional_unsigned_int: optvarint
831
843
  if pose: varint
832
844
  if cat_variant: varint
833
- if wolf_variant: varint
845
+ if wolf_variant:
846
+ wildTexture: string
847
+ tameTexture: string
848
+ angryTexture: string
849
+ maybeInputLength: varint
850
+ biomeLocation: maybeInputLength ?
851
+ if 0: string
852
+ biomeHolders: maybeInputLength ?
853
+ if 0: void
854
+ default: ["arrayWithLengthOffset", {"count": "type", "type": "varint", "lengthOffset": -1}]
834
855
  if frog_variant: varint
835
856
  if optional_global_pos: ["option", "string"]
836
- if painting_variant: varint
857
+ if painting_variant:
858
+ width: varint
859
+ height: varint
860
+ assetId: string
837
861
  if sniffer_state: varint
838
862
  if armadillo_state: varint
839
863
  if vector3: vec3f
@@ -1211,6 +1235,34 @@
1211
1235
  namespace: string
1212
1236
  id: string
1213
1237
  version: string
1238
+ # MC: ClientboundCustomReportDetailsPacket
1239
+ packet_common_custom_report_details:
1240
+ details: []varint
1241
+ key: string
1242
+ value: string
1243
+
1244
+ ServerLinkType: varint =>
1245
+ - bug_report
1246
+ - community_guidelines
1247
+ - support
1248
+ - status
1249
+ - feedback
1250
+ - community
1251
+ - website
1252
+ - forums
1253
+ - news
1254
+ - announcements
1255
+ # MC: ClientboundServerLinksPacket
1256
+ # This packet contains a list of links that the Notchian client will display in the menu
1257
+ # available from the pause menu. Link labels can be built-in or custom (i.e., any text).
1258
+ packet_common_server_links:
1259
+ links: []varint
1260
+ hasKnownType: bool
1261
+ knownType: hasKnownType ?
1262
+ if true: ServerLinkType
1263
+ unknownType: hasKnownType ?
1264
+ if false: anonymousNbt
1265
+ link: string
1214
1266
 
1215
1267
  ^handshaking.toClient.types:
1216
1268
  packet:
@@ -1417,6 +1469,8 @@
1417
1469
  - feature_flags
1418
1470
  - tags
1419
1471
  - select_known_packs
1472
+ - custom_report_details
1473
+ - server_links
1420
1474
  params: name ?
1421
1475
  if cookie_request: packet_common_cookie_request
1422
1476
  if custom_payload: packet_custom_payload
@@ -1433,6 +1487,8 @@
1433
1487
  if feature_flags: packet_feature_flags
1434
1488
  if tags: packet_tags
1435
1489
  if select_known_packs: packet_common_select_known_packs
1490
+ if custom_report_details: packet_common_custom_report_details
1491
+ if server_links: packet_common_server_links
1436
1492
  ^configuration.toServer.types:
1437
1493
  # MC: ServerboundClientInformationPacket
1438
1494
  packet_settings:
@@ -1472,6 +1528,8 @@
1472
1528
  - pong
1473
1529
  - resource_pack_receive
1474
1530
  - select_known_packs
1531
+ - custom_report_details
1532
+ - server_links
1475
1533
  params: name ?
1476
1534
  if settings: packet_settings
1477
1535
  if cookie_response: packet_common_cookie_response
@@ -1481,7 +1539,10 @@
1481
1539
  if pong: packet_pong
1482
1540
  if resource_pack_receive: packet_resource_pack_receive
1483
1541
  if select_known_packs: packet_common_select_known_packs
1542
+ if custom_report_details: packet_common_custom_report_details
1543
+ if server_links: packet_common_server_links
1484
1544
  ^play.toClient.types:
1545
+ # World state information for spawn and respawn packets
1485
1546
  # World state information for spawn and respawn packets
1486
1547
  SpawnInfo:
1487
1548
  dimension: varint
@@ -1667,10 +1728,30 @@
1667
1728
  # MC: ClientboundDisconnectPacket
1668
1729
  packet_kick_disconnect:
1669
1730
  reason: anonymousNbt
1731
+
1732
+ ## client\net\minecraft\network\chat\ChatTypeDecoration.java
1733
+ ## via client\net\minecraft\network\chat\ChatType.java
1734
+ ChatTypeParameterType: varint =>
1735
+ - content
1736
+ - sender
1737
+ - target
1738
+ ChatType:
1739
+ translationKey: string
1740
+ parameters: ChatTypeParameterType[]varint
1741
+ style: anonymousNbt
1742
+ ChatTypes:
1743
+ # Either the extra data is retrieved from the registry (via this ID+1 if non-zero), or it's supplied inline in the chat packet
1744
+ registryIndex: varint
1745
+ _: registryIndex ?
1746
+ if 0:
1747
+ chat: ChatType
1748
+ narration: ChatType
1749
+ default: void
1750
+
1670
1751
  # MC: ClientboundDisguisedChatPacket
1671
1752
  packet_profileless_chat:
1672
1753
  message: anonymousNbt
1673
- type: varint
1754
+ type: ChatTypes
1674
1755
  name: anonymousNbt
1675
1756
  target?: anonymousNbt
1676
1757
  # MC: ClientboundEntityEventPacket
@@ -1693,8 +1774,13 @@
1693
1774
  block_interaction_type: varint
1694
1775
  small_explosion_particle: Particle
1695
1776
  large_explosion_particle: Particle
1696
- explosion_sound_name: string
1697
- sound_range?: f32
1777
+ soundId: varint
1778
+ _: soundId ?
1779
+ if 0:
1780
+ soundName: string
1781
+ range?: f32
1782
+ default:
1783
+
1698
1784
  # MC: ClientboundForgetLevelChunkPacket
1699
1785
  packet_unload_chunk:
1700
1786
  chunkZ: i32
@@ -1919,7 +2005,7 @@
1919
2005
  filterTypeMask: filterType ?
1920
2006
  if 2: i64[]varint
1921
2007
  default: void
1922
- type: varint
2008
+ type: ChatTypes
1923
2009
  networkName: anonymousNbt
1924
2010
  networkTargetName?: anonymousNbt
1925
2011
  # MC: ClientboundPlayerCombatEndPacket
@@ -2301,7 +2387,8 @@
2301
2387
  # MC: ClientboundRespawnPacket
2302
2388
  packet_respawn:
2303
2389
  worldState: SpawnInfo
2304
- copyMetadata: bool
2390
+ # Bit field: 0b1 - KEEP_ATTRIBUTE_MODIFIERS, 0b10 - KEEP_ENTITY_DATA
2391
+ copyMetadata: u8
2305
2392
  # MC: ClientboundRotateHeadPacket
2306
2393
  packet_entity_head_rotation:
2307
2394
  entityId: varint
@@ -2648,7 +2735,7 @@
2648
2735
  - generic.step_height
2649
2736
  value: f64
2650
2737
  modifiers: []varint
2651
- uuid: UUID
2738
+ uuid: string
2652
2739
  amount: f64
2653
2740
  operation: i8
2654
2741
  # MC: ClientboundUpdateMobEffectPacket
@@ -2749,7 +2836,7 @@
2749
2836
  # MC: ClientboundProjectilePowerPacket
2750
2837
  packet_set_projectile_power:
2751
2838
  id: varint
2752
- power: vec3f64
2839
+ accelerationPower: f64
2753
2840
 
2754
2841
  packet:
2755
2842
  name: varint =>
@@ -3317,6 +3404,7 @@
3317
3404
  packet_use_item:
3318
3405
  hand: varint
3319
3406
  sequence: varint
3407
+ rotation: vec2f
3320
3408
 
3321
3409
  packet:
3322
3410
  name: varint =>
@@ -25,6 +25,7 @@ For bedrock edition see [bedrock.md](bedrock.md)
25
25
  | mapIcons.json | No | Icons data can be found in the Minecraft source directly. Alternatively you might be able to look up the icons from the following page on the [Minecraft wiki][7] or from [wiki.vg][8]. | [minecraft-data pr mapIcons][9] |
26
26
  | loginPacket.json | Yes | Running tests on [node-minecraft-protocol][10] |
27
27
  | sounds.json | Yes | Use [minecraft-data-generator-server][2] | Make sure to check the packets that use this and the friendlybytebuffer functions to check if an offset is needed in the generator code.
28
+ | foods.json| Yes | Use [minecraft-data-generator-server][2] | move file obtained with [minecraft-data-generator-server][2] to the correct location and run `extractPcFoods.js` script located in `tools/js`|
28
29
 
29
30
 
30
31
  * All files that say Yes for auto can be gotten from [minecraft-data-auto-updater][9] (that uses [minecraft-data-generator-server][2]). This is the preferred way to extract the data.
@@ -1,3 +1,10 @@
1
+ ## 3.78.0
2
+ * [Add pc 1.21.1 data (#925)](https://github.com/PrismarineJS/minecraft-data/commit/d56346a4e32defcd28d9ba6750957c12001e78d6) (thanks @extremeheat)
3
+ * [Add incrementedChatType feature (#932)](https://github.com/PrismarineJS/minecraft-data/commit/8ef58b15fec74c6a276d0c83cfc741d6fb4e072a) (thanks @SuperGamerTron)
4
+
5
+ ## 3.77.0
6
+ * [Add bedrock 1.21.42 protocol data (#930)](https://github.com/PrismarineJS/minecraft-data/commit/dee9f10b667a31d7bef66e7c5b6c9bdc9d6a7232) (thanks @CreeperG16)
7
+
1
8
  ## 3.76.0
2
9
  * [add has execute command feature](https://github.com/PrismarineJS/minecraft-data/commit/20f34ae536e30370ecdb6fde6412ddba4d67d9a0) (thanks @rom1504)
3
10
 
@@ -57,7 +57,7 @@ function updateProtocol (edition, version, protocolVersionNumber) {
57
57
  if (e.proto === `${edition}/latest`) {
58
58
  e.proto = `${edition}/${oldProtoVersion}`
59
59
  }
60
- latestVersionData = e
60
+ latestVersionData = structuredClone(e) // eslint-disable-line
61
61
  }
62
62
  if (!dataPaths[edition][version]) {
63
63
  dataPaths[edition][version] = latestVersionData
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "minecraft-data",
3
- "version": "3.76.0",
3
+ "version": "3.78.0",
4
4
  "description": "Provide easy access to minecraft data in node.js",
5
5
  "main": "index.js",
6
6
  "tonicExampleFilename": "example.js",