minecraft-data 3.83.0 → 3.84.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 (126) hide show
  1. package/.github/workflows/ci.yml +2 -2
  2. package/.github/workflows/npm-publish.yml +1 -1
  3. package/data.js +23 -1
  4. package/doc/history.md +8 -0
  5. package/minecraft-data/.github/workflows/bedrock-ci.yml +2 -2
  6. package/minecraft-data/.github/workflows/build-gh-pages.yml +2 -2
  7. package/minecraft-data/.github/workflows/ci.yml +1 -1
  8. package/minecraft-data/.github/workflows/update-helper.yml +1 -1
  9. package/minecraft-data/README.md +1 -1
  10. package/minecraft-data/data/bedrock/1.16.201/proto.yml +10 -0
  11. package/minecraft-data/data/bedrock/1.16.201/types.yml +13 -0
  12. package/minecraft-data/data/bedrock/1.16.210/proto.yml +10 -0
  13. package/minecraft-data/data/bedrock/1.16.210/protocol.json +11 -10
  14. package/minecraft-data/data/bedrock/1.16.210/types.yml +30 -10
  15. package/minecraft-data/data/bedrock/1.16.220/proto.yml +10 -0
  16. package/minecraft-data/data/bedrock/1.16.220/protocol.json +11 -10
  17. package/minecraft-data/data/bedrock/1.16.220/types.yml +30 -10
  18. package/minecraft-data/data/bedrock/1.17.0/proto.yml +10 -0
  19. package/minecraft-data/data/bedrock/1.17.0/protocol.json +11 -10
  20. package/minecraft-data/data/bedrock/1.17.0/types.yml +30 -10
  21. package/minecraft-data/data/bedrock/1.17.10/proto.yml +10 -0
  22. package/minecraft-data/data/bedrock/1.17.10/protocol.json +11 -10
  23. package/minecraft-data/data/bedrock/1.17.10/types.yml +30 -10
  24. package/minecraft-data/data/bedrock/1.17.30/proto.yml +10 -0
  25. package/minecraft-data/data/bedrock/1.17.30/protocol.json +11 -10
  26. package/minecraft-data/data/bedrock/1.17.30/types.yml +30 -10
  27. package/minecraft-data/data/bedrock/1.17.40/protocol.json +11 -10
  28. package/minecraft-data/data/bedrock/1.17.40/types.yml +30 -10
  29. package/minecraft-data/data/bedrock/1.18.0/proto.yml +10 -0
  30. package/minecraft-data/data/bedrock/1.18.0/protocol.json +11 -10
  31. package/minecraft-data/data/bedrock/1.18.0/types.yml +30 -10
  32. package/minecraft-data/data/bedrock/1.18.11/proto.yml +10 -0
  33. package/minecraft-data/data/bedrock/1.18.11/protocol.json +11 -10
  34. package/minecraft-data/data/bedrock/1.18.11/types.yml +30 -10
  35. package/minecraft-data/data/bedrock/1.18.30/proto.yml +11 -2
  36. package/minecraft-data/data/bedrock/1.18.30/protocol.json +15 -11
  37. package/minecraft-data/data/bedrock/1.18.30/types.yml +30 -10
  38. package/minecraft-data/data/bedrock/1.19.1/proto.yml +11 -2
  39. package/minecraft-data/data/bedrock/1.19.1/protocol.json +15 -11
  40. package/minecraft-data/data/bedrock/1.19.1/types.yml +30 -10
  41. package/minecraft-data/data/bedrock/1.19.10/proto.yml +11 -2
  42. package/minecraft-data/data/bedrock/1.19.10/protocol.json +15 -11
  43. package/minecraft-data/data/bedrock/1.19.10/types.yml +30 -10
  44. package/minecraft-data/data/bedrock/1.19.20/proto.yml +11 -2
  45. package/minecraft-data/data/bedrock/1.19.20/protocol.json +15 -11
  46. package/minecraft-data/data/bedrock/1.19.20/types.yml +30 -10
  47. package/minecraft-data/data/bedrock/1.19.21/proto.yml +11 -2
  48. package/minecraft-data/data/bedrock/1.19.21/protocol.json +15 -11
  49. package/minecraft-data/data/bedrock/1.19.21/types.yml +30 -10
  50. package/minecraft-data/data/bedrock/1.19.30/proto.yml +11 -2
  51. package/minecraft-data/data/bedrock/1.19.30/protocol.json +15 -11
  52. package/minecraft-data/data/bedrock/1.19.30/types.yml +30 -10
  53. package/minecraft-data/data/bedrock/1.19.40/proto.yml +11 -2
  54. package/minecraft-data/data/bedrock/1.19.40/protocol.json +15 -11
  55. package/minecraft-data/data/bedrock/1.19.40/types.yml +30 -10
  56. package/minecraft-data/data/bedrock/1.19.50/proto.yml +11 -2
  57. package/minecraft-data/data/bedrock/1.19.50/protocol.json +15 -11
  58. package/minecraft-data/data/bedrock/1.19.50/types.yml +30 -10
  59. package/minecraft-data/data/bedrock/1.19.60/proto.yml +11 -2
  60. package/minecraft-data/data/bedrock/1.19.60/protocol.json +15 -11
  61. package/minecraft-data/data/bedrock/1.19.60/types.yml +30 -10
  62. package/minecraft-data/data/bedrock/1.19.62/proto.yml +11 -2
  63. package/minecraft-data/data/bedrock/1.19.62/protocol.json +15 -11
  64. package/minecraft-data/data/bedrock/1.19.62/types.yml +30 -10
  65. package/minecraft-data/data/bedrock/1.19.70/proto.yml +11 -2
  66. package/minecraft-data/data/bedrock/1.19.70/protocol.json +15 -11
  67. package/minecraft-data/data/bedrock/1.19.70/types.yml +30 -10
  68. package/minecraft-data/data/bedrock/1.19.80/proto.yml +11 -2
  69. package/minecraft-data/data/bedrock/1.19.80/protocol.json +15 -11
  70. package/minecraft-data/data/bedrock/1.19.80/types.yml +30 -10
  71. package/minecraft-data/data/bedrock/1.20.0/proto.yml +11 -2
  72. package/minecraft-data/data/bedrock/1.20.0/protocol.json +15 -11
  73. package/minecraft-data/data/bedrock/1.20.0/types.yml +30 -10
  74. package/minecraft-data/data/bedrock/1.20.10/proto.yml +11 -2
  75. package/minecraft-data/data/bedrock/1.20.10/protocol.json +15 -11
  76. package/minecraft-data/data/bedrock/1.20.10/types.yml +30 -10
  77. package/minecraft-data/data/bedrock/1.20.30/proto.yml +43 -34
  78. package/minecraft-data/data/bedrock/1.20.30/protocol.json +15 -11
  79. package/minecraft-data/data/bedrock/1.20.30/types.yml +30 -10
  80. package/minecraft-data/data/bedrock/1.20.40/proto.yml +43 -34
  81. package/minecraft-data/data/bedrock/1.20.40/protocol.json +15 -11
  82. package/minecraft-data/data/bedrock/1.20.40/types.yml +30 -10
  83. package/minecraft-data/data/bedrock/1.20.50/proto.yml +43 -34
  84. package/minecraft-data/data/bedrock/1.20.50/protocol.json +15 -11
  85. package/minecraft-data/data/bedrock/1.20.50/types.yml +30 -10
  86. package/minecraft-data/data/bedrock/1.20.61/proto.yml +43 -34
  87. package/minecraft-data/data/bedrock/1.20.61/protocol.json +15 -11
  88. package/minecraft-data/data/bedrock/1.20.61/types.yml +30 -10
  89. package/minecraft-data/data/bedrock/1.20.71/proto.yml +43 -34
  90. package/minecraft-data/data/bedrock/1.20.71/protocol.json +15 -11
  91. package/minecraft-data/data/bedrock/1.20.71/types.yml +30 -10
  92. package/minecraft-data/data/bedrock/1.20.80/proto.yml +43 -34
  93. package/minecraft-data/data/bedrock/1.20.80/protocol.json +22 -12
  94. package/minecraft-data/data/bedrock/1.20.80/types.yml +36 -10
  95. package/minecraft-data/data/bedrock/1.21.0/proto.yml +43 -34
  96. package/minecraft-data/data/bedrock/1.21.0/protocol.json +34 -25
  97. package/minecraft-data/data/bedrock/1.21.0/types.yml +48 -23
  98. package/minecraft-data/data/bedrock/1.21.2/proto.yml +43 -34
  99. package/minecraft-data/data/bedrock/1.21.2/protocol.json +34 -25
  100. package/minecraft-data/data/bedrock/1.21.2/types.yml +48 -23
  101. package/minecraft-data/data/bedrock/1.21.20/proto.yml +43 -34
  102. package/minecraft-data/data/bedrock/1.21.20/protocol.json +35 -25
  103. package/minecraft-data/data/bedrock/1.21.20/types.yml +49 -23
  104. package/minecraft-data/data/bedrock/1.21.30/proto.yml +43 -34
  105. package/minecraft-data/data/bedrock/1.21.30/protocol.json +37 -25
  106. package/minecraft-data/data/bedrock/1.21.30/types.yml +51 -23
  107. package/minecraft-data/data/bedrock/1.21.42/proto.yml +44 -34
  108. package/minecraft-data/data/bedrock/1.21.42/protocol.json +44 -25
  109. package/minecraft-data/data/bedrock/1.21.42/types.yml +51 -23
  110. package/minecraft-data/data/bedrock/1.21.50/proto.yml +4410 -0
  111. package/minecraft-data/data/bedrock/1.21.50/protocol.json +44 -25
  112. package/minecraft-data/data/bedrock/1.21.50/types.yml +2466 -0
  113. package/minecraft-data/data/bedrock/1.21.60/language.json +10840 -0
  114. package/minecraft-data/data/bedrock/1.21.60/protocol.json +13244 -0
  115. package/minecraft-data/data/bedrock/1.21.60/version.json +6 -0
  116. package/minecraft-data/data/bedrock/common/features.json +5 -0
  117. package/minecraft-data/data/bedrock/common/protocolVersions.json +6 -0
  118. package/minecraft-data/data/bedrock/common/versions.json +2 -1
  119. package/minecraft-data/data/bedrock/latest/proto.yml +123 -46
  120. package/minecraft-data/data/bedrock/latest/types.yml +72 -33
  121. package/minecraft-data/data/dataPaths.json +24 -2
  122. package/minecraft-data/data/pc/1.21.4/entities.json +2813 -175
  123. package/minecraft-data/data/pc/common/protocolVersions.json +32 -0
  124. package/minecraft-data/doc/history.md +12 -0
  125. package/minecraft-data/tools/js/extractPcEntityMetadata.js +1 -1
  126. package/package.json +1 -1
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 776,
3
+ "minecraftVersion": "1.21.60",
4
+ "majorVersion": "1.21",
5
+ "releaseType": "release"
6
+ }
@@ -82,5 +82,10 @@
82
82
  "name": "blockHashes",
83
83
  "description": "Block runtime IDs are generated from a hash function",
84
84
  "versions": ["1.19.80", "latest"]
85
+ },
86
+ {
87
+ "name": "itemRegistryPacket",
88
+ "description": "The item registry is sent in a dedicated packet as opposed to StartGame",
89
+ "versions": ["1.21.60", "latest"]
85
90
  }
86
91
  ]
@@ -1,4 +1,10 @@
1
1
  [
2
+ {
3
+ "version": 776,
4
+ "minecraftVersion": "1.21.60",
5
+ "majorVersion": "1.21",
6
+ "releaseType": "release"
7
+ },
2
8
  {
3
9
  "version": 766,
4
10
  "minecraftVersion": "1.21.50",
@@ -38,5 +38,6 @@
38
38
  "1.21.20",
39
39
  "1.21.30",
40
40
  "1.21.42",
41
- "1.21.50"
41
+ "1.21.50",
42
+ "1.21.60"
42
43
  ]
@@ -1,7 +1,7 @@
1
1
  # Created from MiNET and gophertunnel docs
2
2
  # The version below is the latest version this protocol schema was updated for.
3
3
  # The output protocol.json will be in the folder for the version
4
- !version: 1.21.50
4
+ !version: 1.21.60
5
5
 
6
6
  # Some ProtoDef aliases
7
7
  string: ["pstring",{"countType":"varint"}] # String / array types
@@ -43,6 +43,7 @@ MapInfo: native
43
43
  # * S→C: [Resource Pack Stack](#packet_resource_pack_stack)
44
44
  # * C→S: [Resource Pack Client Response](#packet_resource_pack_client_response)
45
45
  # * S→C: [Start Game](#packet_start_game)
46
+ # * S→C: [Item Registry](#packet_item_registry)
46
47
  # * S→C: [Creative Content](#packet_creative_content)
47
48
  # * S→C: [Biome Definition List](#packet_biome_definition_list)
48
49
  # * S→C: [Chunks](#packet_level_chunk)
@@ -435,9 +436,6 @@ packet_start_game:
435
436
 
436
437
  # BlockProperties is a list of all the custom blocks registered on the server.
437
438
  block_properties: BlockProperties
438
- # A list of all items with their legacy IDs which are available in the game.
439
- # Failing to send any of the items that are in the game will crash mobile clients.
440
- itemstates: Itemstates
441
439
  # A unique ID specifying the multi-player session of the player.
442
440
  # A random UUID should be filled out for this field.
443
441
  multiplayer_correlation_id: string
@@ -1181,13 +1179,23 @@ packet_animate:
1181
1179
  !id: 0x2c
1182
1180
  !bound: both
1183
1181
  action_id: zigzag32 =>
1182
+ # Unused
1184
1183
  0: none
1184
+ # Server bound notification to swing the player's arm. Server is expected to rebroadcast to all that should see the arm move.
1185
+ # See also PlayerAuthInputPacket::InputData::MissedSwing for a very similar action
1185
1186
  1: swing_arm
1186
1187
  2: unknown
1188
+ # Client bound notification to stop sleeping in a bed
1187
1189
  3: wake_up
1190
+ # Client-bound notification to play critical hit particles
1188
1191
  4: critical_hit
1192
+ # Unused
1189
1193
  5: magic_critical_hit
1194
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1195
+ # See Player Auth Input for how to compute this in the latest protocol.
1190
1196
  128: row_right
1197
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1198
+ # See Player Auth Input for how to compute this in the latest protocol.
1191
1199
  129: row_left
1192
1200
  runtime_entity_id: varint64
1193
1201
  _: action_id ?
@@ -1717,6 +1725,10 @@ packet_boss_event:
1717
1725
  # the name tag of the boss entity at all times. It is only set if the EventType is BossEventShow or
1718
1726
  # BossEventTitle.
1719
1727
  title: string
1728
+ # FilteredBossBarTitle is a filtered version of BossBarTitle with all the
1729
+ # profanity removed. The client will use this over BossBarTitle if this
1730
+ # field is not empty and they have the "Filter Profanity" setting enabled.
1731
+ filtered_title: string
1720
1732
  # HealthPercentage is the percentage of health that is shown in the boss bar. It currently does not
1721
1733
  # function, and instead uses the health percentage of the boss entity at all times. It is only set if the
1722
1734
  # EventType is BossEventShow or BossEventHealthPercentage.
@@ -1740,6 +1752,10 @@ packet_boss_event:
1740
1752
  progress: lf32
1741
1753
  if set_bar_title:
1742
1754
  title: string
1755
+ # FilteredBossBarTitle is a filtered version of BossBarTitle with all the
1756
+ # profanity removed. The client will use this over BossBarTitle if this
1757
+ # field is not empty and they have the "Filter Profanity" setting enabled.
1758
+ filtered_title: string
1743
1759
  if update_properties:
1744
1760
  screen_darkening: li16
1745
1761
  color: varint
@@ -1940,6 +1956,9 @@ packet_command_block_update:
1940
1956
  # Name is the name of the command block updated. If not empty, it will show this name hovering above the
1941
1957
  # command block when hovering over the block with the cursor.
1942
1958
  name: string
1959
+ # FilteredName is a filtered version of Name with all the profanity removed. The client will use this
1960
+ # over Name if this field is not empty and they have the "Filter Profanity" setting enabled.
1961
+ filtered_name: string
1943
1962
  # ShouldTrackOutput specifies if the command block tracks output. If set to false, the output box won't
1944
1963
  # be shown within the command block.
1945
1964
  should_track_output: bool
@@ -2188,6 +2207,10 @@ packet_structure_block_update:
2188
2207
  # StructureName is the name of the structure that was set in the structure block's UI. This is the name
2189
2208
  # used to export the structure to a file.
2190
2209
  structure_name: string
2210
+ # FilteredStructureName is a filtered version of StructureName with all the profanity removed. The client
2211
+ # will use this over StructureName if this field is not empty and they have the "Filter Profanity"
2212
+ # setting enabled.
2213
+ filtered_structure_name: string
2191
2214
  # DataField is the name of a function to run, usually used during natural generation. A description can
2192
2215
  # be found here: https://minecraft.wiki/w/Structure_Block#Data.
2193
2216
  data_field: string
@@ -2697,8 +2720,7 @@ packet_spawn_particle_effect:
2697
2720
  particle_name: string
2698
2721
  # MoLangVariables is an encoded JSON map of MoLang variables that may be applicable to the particle spawn. This can
2699
2722
  # just be left empty in most cases.
2700
- # TODO: Investigate, probably not a ByteArray...
2701
- molang_variables: ByteArray
2723
+ molang_variables?: string
2702
2724
 
2703
2725
  # AvailableActorIdentifiers is sent by the server at the start of the game to let the client know all
2704
2726
  # entities that are available on the server.
@@ -3234,10 +3256,27 @@ InputFlag: [ "bitflags", {
3234
3256
  packet_creative_content:
3235
3257
  !id: 0x91
3236
3258
  !bound: client
3237
- # Items is a list of the items that should be added to the creative inventory.
3259
+ # The groups that are displayed within the creative inventory menu.
3260
+ groups: []varint
3261
+ # Where the group shows up in the creative inventory (e.g. Construction, Items, etc)
3262
+ category: li32 =>
3263
+ - all
3264
+ - construction
3265
+ - nature
3266
+ - equipment
3267
+ - items
3268
+ - item_command_only
3269
+ # The name of the group (e.g. Decorative stone, Wool, etc.)
3270
+ name: string
3271
+ # The item whose icon is used to label the group (icon you click on to open/close the group)
3272
+ icon_item: ItemLegacy
3273
+ # Individual items that are displayed within the creative inventory menu, grouped by their category.
3238
3274
  items: []varint
3275
+ # The index of the item in the creative menu.
3239
3276
  entry_id: varint
3240
3277
  item: ItemLegacy
3278
+ # The group index of the item - which group in the groups array this item belongs to.
3279
+ group_index: varint
3241
3280
 
3242
3281
  # PlayerEnchantOptions is sent by the server to update the enchantment options displayed when the user opens
3243
3282
  # the enchantment table and puts an item in. This packet was added in 1.16 and allows the server to decide on
@@ -3488,12 +3527,15 @@ packet_correct_player_move_prediction:
3488
3527
  # Tick is the tick of the movement which was corrected by this packet.
3489
3528
  tick: varint64
3490
3529
 
3491
- # ItemComponent is sent by the server to attach client-side components to a custom item.
3492
- packet_item_component:
3530
+ # ItemRegistryPacket is used to declare what items the server makes available, and components of custom items.
3531
+ # After 1.21.60, this packet replaces the functionality of the "itemstates" field in the StartGamePacket
3532
+ # In pre-1.21.60 versions, this was the ItemComponentPacket, and was
3533
+ # sent by the server to attach client-side components to custom items.
3534
+ packet_item_registry:
3493
3535
  !id: 0xa2
3494
3536
  !bound: client
3495
- # `entries` holds a list of all custom items with their respective components set.
3496
- entries: ItemComponentList
3537
+ # `items` holds a list of all items.
3538
+ itemstates: Itemstates
3497
3539
 
3498
3540
  # FilterText is sent by the both the client and the server. The client sends the packet to the server to
3499
3541
  # allow the server to filter the text server-side. The server then responds with the same packet and the
@@ -4080,38 +4122,38 @@ packet_camera_instruction:
4080
4122
  # Ease represents the easing function that is used by the instruction.
4081
4123
  ease_data?:
4082
4124
  type: u8 =>
4083
- - Linear
4084
- - Spring
4085
- - InQuad
4086
- - OutQuad
4087
- - InOutQuad
4088
- - InCubic
4089
- - OutCubic
4090
- - InOutCubic
4091
- - InQuart
4092
- - OutQuart
4093
- - InOutQuart
4094
- - InQuint
4095
- - OutQuint
4096
- - InOutQuint
4097
- - InSine
4098
- - OutSine
4099
- - InOutSine
4100
- - InExpo
4101
- - OutExpo
4102
- - InOutExpo
4103
- - InCirc
4104
- - OutCirc
4105
- - InOutCirc
4106
- - InBounce
4107
- - OutBounce
4108
- - InOutBounce
4109
- - InBack
4110
- - OutBack
4111
- - InOutBack
4112
- - InElastic
4113
- - OutElastic
4114
- - InOutElastic
4125
+ - Linear
4126
+ - Spring
4127
+ - InQuad
4128
+ - OutQuad
4129
+ - InOutQuad
4130
+ - InCubic
4131
+ - OutCubic
4132
+ - InOutCubic
4133
+ - InQuart
4134
+ - OutQuart
4135
+ - InOutQuart
4136
+ - InQuint
4137
+ - OutQuint
4138
+ - InOutQuint
4139
+ - InSine
4140
+ - OutSine
4141
+ - InOutSine
4142
+ - InExpo
4143
+ - OutExpo
4144
+ - InOutExpo
4145
+ - InCirc
4146
+ - OutCirc
4147
+ - InOutCirc
4148
+ - InBounce
4149
+ - OutBounce
4150
+ - InOutBounce
4151
+ - InBack
4152
+ - OutBack
4153
+ - InOutBack
4154
+ - InElastic
4155
+ - OutElastic
4156
+ - InOutElastic
4115
4157
  duration: lf32
4116
4158
  position?: vec3f
4117
4159
  rotation?: vec2f
@@ -4120,6 +4162,7 @@ packet_camera_instruction:
4120
4162
  # ViewOffset is only used in a follow_orbit camera and controls an offset based on a pivot point to the
4121
4163
  # player, causing it to be shifted in a certain direction.
4122
4164
  offset?: vec2f
4165
+ entity_offset?: vec3f
4123
4166
  default?: bool
4124
4167
  # Clear can be set to true to clear all the current camera instructions.
4125
4168
  clear?: bool
@@ -4316,10 +4359,14 @@ packet_camera_aim_assist:
4316
4359
  # Distance is the distance that the camera should keep from the target, if TargetMode is set to
4317
4360
  # CameraAimAssistTargetModeDistance.
4318
4361
  distance: lf32
4319
- # TargetMode is the mode that the camera should use to aim at the target. This is one of the constants above.
4320
- target_mode: u8
4362
+ # TargetMode is the mode that the camera should use to aim at the target. This is one of the constants below.
4363
+ target_mode: u8 =>
4364
+ - angle
4365
+ - distance
4321
4366
  # Action is the action that should be performed with the aim assist. This is one of the constants above.
4322
- action: u8
4367
+ action: u8 =>
4368
+ - set
4369
+ - clear
4323
4370
 
4324
4371
  # ContainerRegistryCleanup is sent by the server to trigger a client-side cleanup of the dynamic container registry.
4325
4372
  packet_container_registry_cleanup:
@@ -4398,3 +4445,33 @@ packet_camera_aim_assist_presets:
4398
4445
  # HandSettings is the identifier of a category to use when the player is not holding an item. This must
4399
4446
  # be the identifier of a category within the above `categories` field.
4400
4447
  hand_settings?: string
4448
+ operation: u8 =>
4449
+ - set
4450
+ - add_to_existing
4451
+
4452
+ packet_client_camera_aim_assist:
4453
+ !id: 0x141
4454
+ #!bound: client
4455
+ preset_id: string
4456
+ action: u8 =>
4457
+ # Sets aim-assist to use the settings from a CameraPresets aim_assist field.
4458
+ 0: set_from_camera_preset
4459
+ # Clears aim-assist settings.
4460
+ 1: clear
4461
+ allow_aim_assist: bool
4462
+
4463
+ packet_client_movement_prediction_sync:
4464
+ !id: 0x142
4465
+ #!bound: ?
4466
+ data_flags: varint128 # TODO - figure out flags
4467
+ bounding_box:
4468
+ scale: lf32
4469
+ width: lf32
4470
+ height: lf32
4471
+ movement_speed: lf32
4472
+ underwater_movement_speed: lf32
4473
+ lava_movement_speed: lf32
4474
+ jump_strength: lf32
4475
+ health: lf32
4476
+ hunger: lf32
4477
+ entity_runtime_id: varint64
@@ -71,8 +71,14 @@ Itemstates: []varint
71
71
  name: string
72
72
  runtime_id: li16
73
73
  component_based: bool
74
-
75
-
74
+ # Version is the version of the item entry which is used by the client to determine how to handle the
75
+ # item entry. It is one of the constants above.
76
+ version: zigzag32 =>
77
+ - legacy
78
+ - data_driven
79
+ - none
80
+ # Components on the item
81
+ nbt: nbt
76
82
 
77
83
  ItemExtraDataWithBlockingTick:
78
84
  has_nbt: lu16 =>
@@ -195,8 +201,9 @@ MetadataDictionary: []varint
195
201
  16: minecart_display_block #int (id | (data << 16))
196
202
  17: minecart_display_offset #int
197
203
  18: minecart_has_display #byte (must be 1 for minecart to show block inside)
198
- 20: old_swell
199
- 21: swell_dir
204
+ 19: horse_type
205
+ 20: creeper_swell
206
+ 21: creeper_swell_direction
200
207
  22: charge_amount
201
208
  23: enderman_held_runtime_id #short
202
209
  24: entity_age #short
@@ -226,7 +233,7 @@ MetadataDictionary: []varint
226
233
  49: wither_target_1 #long
227
234
  50: wither_target_2 #long
228
235
  51: wither_target_3 #long
229
- 52: aerial_attack
236
+ 52: wither_aerial_attack
230
237
  53: boundingbox_width
231
238
  54: boundingbox_height
232
239
  55: fuse_length
@@ -234,7 +241,7 @@ MetadataDictionary: []varint
234
241
  57: rider_rotation_locked #byte
235
242
  58: rider_max_rotation #float
236
243
  59: rider_min_rotation #float
237
- 60: rider_rotation_offset
244
+ 60: rider_seat_rotation_offset
238
245
  61: area_effect_cloud_radius #float
239
246
  62: area_effect_cloud_waiting #int
240
247
  63: area_effect_cloud_particle_id #int
@@ -251,7 +258,7 @@ MetadataDictionary: []varint
251
258
  74: controlling_rider_seat_number #byte
252
259
  75: strength #int
253
260
  76: max_strength #int
254
- 77: spell_casting_color #int
261
+ 77: evoker_spell_casting_color #int
255
262
  78: limited_life
256
263
  79: armor_stand_pose_index # int
257
264
  80: ender_crystal_time_offset # int
@@ -269,11 +276,11 @@ MetadataDictionary: []varint
269
276
  92: flags_extended
270
277
  93: laying_amount
271
278
  94: laying_amount_previous
272
- 95: duration
273
- 96: spawn_time
274
- 97: change_rate
275
- 98: change_on_pickup
276
- 99: pickup_count
279
+ 95: area_effect_cloud_duration
280
+ 96: area_effect_cloud_spawn_time
281
+ 97: area_effect_cloud_change_rate
282
+ 98: area_effect_cloud_change_on_pickup
283
+ 99: area_effect_cloud_pickup_count
277
284
  100: interact_text
278
285
  101: trade_tier
279
286
  102: max_trade_tier
@@ -294,19 +301,20 @@ MetadataDictionary: []varint
294
301
  117: nearby_cured_discount_timestamp
295
302
  118: hitbox
296
303
  119: is_buoyant
297
- 120: base_runtime_id
298
- 121: freezing_effect_strength
299
- 122: buoyancy_data
300
- 123: goat_horn_count
301
- 124: update_properties
302
- 125: movement_sound_distance_offset
303
- 126: heartbeat_interval_ticks
304
- 127: heartbeat_sound_event
305
- 128: player_last_death_position
306
- 129: player_last_death_dimension
307
- 130: player_has_died
308
- 131: collision_box
309
- 132: visible_mob_effects
304
+ 120: freezing_effect_strength
305
+ 121: buoyancy_data
306
+ 122: goat_horn_count
307
+ 123: update_properties
308
+ 124: movement_sound_distance_offset
309
+ 125: heartbeat_interval_ticks
310
+ 126: heartbeat_sound_event
311
+ 127: player_last_death_position
312
+ 128: player_last_death_dimension
313
+ 129: player_has_died
314
+ 130: collision_box
315
+ 131: visible_mob_effects # long
316
+ 132: filtered_name # string
317
+ 133: bed_enter_position # blockpos
310
318
  type: varint =>
311
319
  0: byte
312
320
  1: short
@@ -460,7 +468,8 @@ MetadataFlags2: [ "bitflags", {
460
468
  "timer_flag_1",
461
469
  "timer_flag_2",
462
470
  "timer_flag_3",
463
- "body_rotation_blocked"
471
+ "body_rotation_blocked",
472
+ "render_when_invisible"
464
473
  ]
465
474
  }]
466
475
 
@@ -521,8 +530,14 @@ TransactionUseItem:
521
530
  # ActionType is the type of the UseItem inventory transaction. It is one of the action types found above,
522
531
  # and specifies the way the player interacted with the block.
523
532
  action_type: varint =>
533
+ # Right click item use on a surface like placing a block
524
534
  0: click_block
535
+ # Start right click and hold style item use or potentially interact with nothing.
536
+ # If it is a usable item like food the server is expected to send a SetActorDataPacket with ActorFlags::USINGITEM along with the transaction response.
537
+ # While using an item, movement speed is slowed which will be reflected in the move vector in Player Auth Input.
525
538
  1: click_air
539
+ # Block breaking like left click. When using server auth block breaking as specified in StartGamePacket this is never sent.
540
+ # Instead, block actions are supplied in Player Auth Input.
526
541
  2: break_block
527
542
  # TriggerType is the type of the trigger that caused the inventory transaction. It is one of the trigger
528
543
  # types found in the constants above. If TriggerType is TriggerTypePlayerInput, the transaction is from
@@ -607,10 +622,19 @@ Transaction:
607
622
  legacy: TransactionLegacy
608
623
  # What type of transaction took place
609
624
  transaction_type: varint =>
625
+ # Sent for container UI operations depending on if ItemStackNetManager is enabled
610
626
  0: normal
627
+ # Sent from server to client to reject a transaction
611
628
  1: inventory_mismatch
629
+ # Sent for a player performing right click style item use.
630
+ # See the contained ItemUseInventoryTransaction::ActionType for the expected use case.
612
631
  2: item_use
632
+ # Sent for a player right clicking on an entity or attacking them.
633
+ # See ItemUseInventoryTransaction::ActionType for which it is.
613
634
  3: item_use_on_entity
635
+ # Sent when releasing right click on a chargeable item like a bow or finishing charging like a crossbow.
636
+ # This is different than canceling item use early which would be in Player Auth Input.
637
+ # See ItemReleaseInventoryTransaction::ActionType for which it is.
614
638
  4: item_release
615
639
  # The list of inventory internal actions in this packet, e.g. inventory GUI actions
616
640
  actions: TransactionActions
@@ -629,7 +653,9 @@ Transaction:
629
653
  # ActionType is the type of the UseItemOnEntity inventory transaction. It is one of the action types
630
654
  # found in the constants above, and specifies the way the player interacted with the entity.
631
655
  action_type: varint =>
656
+ # Right click interact with actor.
632
657
  0: interact
658
+ # Left click style attack of actor or elytra spin attack. Server is expected to deal damage to the entity with visuals.
633
659
  1: attack
634
660
  # HotBarSlot is the hot bar slot that the player was holding while clicking the entity. It should be used
635
661
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -650,7 +676,9 @@ Transaction:
650
676
  # As of 1.13, the ActionType is always 0. This field can be ignored, because releasing food (by consuming
651
677
  # it) or releasing a bow (to shoot an arrow) is essentially the same.
652
678
  action_type: varint =>
679
+ # Release right click and hold style item use, like firing a bow
653
680
  0: release
681
+ # Finish right click and hold style item use, like charging a crossbow
654
682
  1: consume
655
683
  # HotBarSlot is the hot bar slot that the player was holding while releasing the item. It should be used
656
684
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -1158,12 +1186,6 @@ ItemStackResponses: []varint
1158
1186
  durability_correction: zigzag32
1159
1187
 
1160
1188
 
1161
- ItemComponentList: []varint
1162
- # Name is the name of the item, which is a name like 'minecraft:stick'.
1163
- name: string
1164
- # Data is a map containing the components and properties of the item.
1165
- nbt: nbt
1166
-
1167
1189
  CommandOrigin:
1168
1190
  # Origin is one of the values above that specifies the origin of the command. The origin may change,
1169
1191
  # depending on what part of the client actually called the command. The command may be issued by a
@@ -1569,6 +1591,7 @@ ContainerSlotType: u8 =>
1569
1591
  - smithing_table_template
1570
1592
  - crafter
1571
1593
  - dynamic
1594
+ - registry # 125
1572
1595
 
1573
1596
  SoundType: varint =>
1574
1597
  - ItemUseOn
@@ -2213,6 +2236,7 @@ DeviceOS: li32 =>
2213
2236
  - IOS
2214
2237
  - OSX
2215
2238
  - FireOS
2239
+ # Deprecated
2216
2240
  - GearVR
2217
2241
  - Hololens
2218
2242
  - Win10
@@ -2249,6 +2273,7 @@ AbilitySet: ["bitflags",
2249
2273
  "world_builder",
2250
2274
  "no_clip",
2251
2275
  "privileged_builder",
2276
+ "vertical_fly_speed",
2252
2277
  "count"
2253
2278
  ]
2254
2279
  }
@@ -2268,8 +2293,10 @@ AbilityLayers:
2268
2293
  allowed: AbilitySet
2269
2294
  # The abilities that are currently active
2270
2295
  enabled: AbilitySet
2271
- # FlySpeed is the default fly speed of the layer.
2296
+ # FlySpeed is the default horizontal fly speed of the layer.
2272
2297
  fly_speed: lf32
2298
+ # VerticalFlySpeed is the default vertical fly speed of the layer.
2299
+ vertical_fly_speed: lf32
2273
2300
  # WalkSpeed is the default walk speed of the layer.
2274
2301
  walk_speed: lf32
2275
2302
 
@@ -2300,6 +2327,8 @@ CameraPresets:
2300
2327
  # Radius is only used in a follow_orbit camera and controls how far away from the player the camera should
2301
2328
  # be rendered.
2302
2329
  radius?: lf32
2330
+ yaw_limit_min?: lf32
2331
+ yaw_limit_max?: lf32
2303
2332
  ## TODO: make this an enum afer adding proper optional support inside pdefyaml
2304
2333
  audio_listener?: u8
2305
2334
  player_effects?: bool
@@ -2385,6 +2414,7 @@ DisconnectFailReason: zigzag32 =>
2385
2414
  - block_mismatch
2386
2415
  - invalid_heights
2387
2416
  - invalid_widths
2417
+ # deprecated
2388
2418
  - connection_lost
2389
2419
  - zombie_connection
2390
2420
  - shutdown
@@ -2428,6 +2458,15 @@ DisconnectFailReason: zigzag32 =>
2428
2458
  - server_shutdown
2429
2459
  - game_setup_cancelled
2430
2460
  - game_setup_failed
2461
+ - no_venue
2462
+ - conn_signalling_sign_in_failed
2463
+ - session_access_denied
2464
+ - service_sign_in_issue
2465
+ - conn_no_signaling_channel
2466
+ - conn_not_logged_in
2467
+ - conn_client_signalling_error
2468
+ - sub_client_login_disabled
2469
+ - deep_link_trying_to_open_demo_world_while_signed_in
2431
2470
 
2432
2471
  FullContainerName:
2433
2472
  container_id: ContainerSlotType
@@ -2376,10 +2376,32 @@
2376
2376
  "steve": "bedrock/1.21.50",
2377
2377
  "blocksB2J": "bedrock/1.21.0",
2378
2378
  "blocksJ2B": "bedrock/1.21.0",
2379
- "proto": "bedrock/latest",
2379
+ "proto": "bedrock/1.21.50",
2380
2380
  "types": "bedrock/latest",
2381
2381
  "version": "bedrock/1.21.50",
2382
2382
  "language": "bedrock/1.20.10"
2383
+ },
2384
+ "1.21.60": {
2385
+ "blocks": "bedrock/1.21.0",
2386
+ "blockStates": "bedrock/1.21.0",
2387
+ "blockCollisionShapes": "bedrock/1.21.0",
2388
+ "biomes": "bedrock/1.20.0",
2389
+ "entities": "bedrock/1.21.0",
2390
+ "items": "bedrock/1.21.0",
2391
+ "recipes": "bedrock/1.19.10",
2392
+ "instruments": "bedrock/1.17.0",
2393
+ "materials": "pc/1.17",
2394
+ "enchantments": "bedrock/1.19.1",
2395
+ "effects": "pc/1.17",
2396
+ "protocol": "bedrock/1.21.60",
2397
+ "windows": "bedrock/1.16.201",
2398
+ "steve": "bedrock/1.21.50",
2399
+ "blocksB2J": "bedrock/1.21.0",
2400
+ "blocksJ2B": "bedrock/1.21.0",
2401
+ "proto": "bedrock/latest",
2402
+ "types": "bedrock/latest",
2403
+ "version": "bedrock/1.21.60",
2404
+ "language": "bedrock/1.21.60"
2383
2405
  }
2384
2406
  }
2385
- }
2407
+ }