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
@@ -1146,13 +1146,23 @@ packet_animate:
1146
1146
  !id: 0x2c
1147
1147
  !bound: both
1148
1148
  action_id: zigzag32 =>
1149
+ # Unused
1149
1150
  0: none
1151
+ # Server bound notification to swing the player's arm. Server is expected to rebroadcast to all that should see the arm move.
1152
+ # See also PlayerAuthInputPacket::InputData::MissedSwing for a very similar action
1150
1153
  1: swing_arm
1151
1154
  2: unknown
1155
+ # Client bound notification to stop sleeping in a bed
1152
1156
  3: wake_up
1157
+ # Client-bound notification to play critical hit particles
1153
1158
  4: critical_hit
1159
+ # Unused
1154
1160
  5: magic_critical_hit
1161
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1162
+ # See Player Auth Input for how to compute this in the latest protocol.
1155
1163
  128: row_right
1164
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1165
+ # See Player Auth Input for how to compute this in the latest protocol.
1156
1166
  129: row_left
1157
1167
  runtime_entity_id: varint64
1158
1168
  _: action_id ?
@@ -2639,8 +2649,7 @@ packet_spawn_particle_effect:
2639
2649
  particle_name: string
2640
2650
  # MoLangVariables is an encoded JSON map of MoLang variables that may be applicable to the particle spawn. This can
2641
2651
  # just be left empty in most cases.
2642
- # TODO: Investigate, probably not a ByteArray...
2643
- molang_variables: ByteArray
2652
+ molang_variables?: string
2644
2653
 
2645
2654
  # AvailableActorIdentifiers is sent by the server at the start of the game to let the client know all
2646
2655
  # entities that are available on the server.
@@ -3996,38 +4005,38 @@ packet_camera_instruction:
3996
4005
  # Ease represents the easing function that is used by the instruction.
3997
4006
  ease_data?:
3998
4007
  type: u8 =>
3999
- - Linear
4000
- - Spring
4001
- - InQuad
4002
- - OutQuad
4003
- - InOutQuad
4004
- - InCubic
4005
- - OutCubic
4006
- - InOutCubic
4007
- - InQuart
4008
- - OutQuart
4009
- - InOutQuart
4010
- - InQuint
4011
- - OutQuint
4012
- - InOutQuint
4013
- - InSine
4014
- - OutSine
4015
- - InOutSine
4016
- - InExpo
4017
- - OutExpo
4018
- - InOutExpo
4019
- - InCirc
4020
- - OutCirc
4021
- - InOutCirc
4022
- - InBounce
4023
- - OutBounce
4024
- - InOutBounce
4025
- - InBack
4026
- - OutBack
4027
- - InOutBack
4028
- - InElastic
4029
- - OutElastic
4030
- - InOutElastic
4008
+ - Linear
4009
+ - Spring
4010
+ - InQuad
4011
+ - OutQuad
4012
+ - InOutQuad
4013
+ - InCubic
4014
+ - OutCubic
4015
+ - InOutCubic
4016
+ - InQuart
4017
+ - OutQuart
4018
+ - InOutQuart
4019
+ - InQuint
4020
+ - OutQuint
4021
+ - InOutQuint
4022
+ - InSine
4023
+ - OutSine
4024
+ - InOutSine
4025
+ - InExpo
4026
+ - OutExpo
4027
+ - InOutExpo
4028
+ - InCirc
4029
+ - OutCirc
4030
+ - InOutCirc
4031
+ - InBounce
4032
+ - OutBounce
4033
+ - InOutBounce
4034
+ - InBack
4035
+ - OutBack
4036
+ - InOutBack
4037
+ - InElastic
4038
+ - OutElastic
4039
+ - InOutElastic
4031
4040
  duration: lf32
4032
4041
  position?: vec3f
4033
4042
  rotation?: vec2f
@@ -721,8 +721,9 @@
721
721
  "16": "minecart_display_block",
722
722
  "17": "minecart_display_offset",
723
723
  "18": "minecart_has_display",
724
- "20": "old_swell",
725
- "21": "swell_dir",
724
+ "19": "horse_type",
725
+ "20": "creeper_swell",
726
+ "21": "creeper_swell_direction",
726
727
  "22": "charge_amount",
727
728
  "23": "enderman_held_runtime_id",
728
729
  "24": "entity_age",
@@ -752,7 +753,7 @@
752
753
  "49": "wither_target_1",
753
754
  "50": "wither_target_2",
754
755
  "51": "wither_target_3",
755
- "52": "aerial_attack",
756
+ "52": "wither_aerial_attack",
756
757
  "53": "boundingbox_width",
757
758
  "54": "boundingbox_height",
758
759
  "55": "fuse_length",
@@ -760,7 +761,7 @@
760
761
  "57": "rider_rotation_locked",
761
762
  "58": "rider_max_rotation",
762
763
  "59": "rider_min_rotation",
763
- "60": "rider_rotation_offset",
764
+ "60": "rider_seat_rotation_offset",
764
765
  "61": "area_effect_cloud_radius",
765
766
  "62": "area_effect_cloud_waiting",
766
767
  "63": "area_effect_cloud_particle_id",
@@ -777,7 +778,7 @@
777
778
  "74": "controlling_rider_seat_number",
778
779
  "75": "strength",
779
780
  "76": "max_strength",
780
- "77": "spell_casting_color",
781
+ "77": "evoker_spell_casting_color",
781
782
  "78": "limited_life",
782
783
  "79": "armor_stand_pose_index",
783
784
  "80": "ender_crystal_time_offset",
@@ -795,11 +796,11 @@
795
796
  "92": "flags_extended",
796
797
  "93": "laying_amount",
797
798
  "94": "laying_amount_previous",
798
- "95": "duration",
799
- "96": "spawn_time",
800
- "97": "change_rate",
801
- "98": "change_on_pickup",
802
- "99": "pickup_count",
799
+ "95": "area_effect_cloud_duration",
800
+ "96": "area_effect_cloud_spawn_time",
801
+ "97": "area_effect_cloud_change_rate",
802
+ "98": "area_effect_cloud_change_on_pickup",
803
+ "99": "area_effect_cloud_pickup_count",
803
804
  "100": "interact_text",
804
805
  "101": "trade_tier",
805
806
  "102": "max_trade_tier",
@@ -9270,7 +9271,10 @@
9270
9271
  },
9271
9272
  {
9272
9273
  "name": "molang_variables",
9273
- "type": "ByteArray"
9274
+ "type": [
9275
+ "option",
9276
+ "string"
9277
+ ]
9274
9278
  }
9275
9279
  ]
9276
9280
  ],
@@ -195,8 +195,9 @@ MetadataDictionary: []varint
195
195
  16: minecart_display_block #int (id | (data << 16))
196
196
  17: minecart_display_offset #int
197
197
  18: minecart_has_display #byte (must be 1 for minecart to show block inside)
198
- 20: old_swell
199
- 21: swell_dir
198
+ 19: horse_type
199
+ 20: creeper_swell
200
+ 21: creeper_swell_direction
200
201
  22: charge_amount
201
202
  23: enderman_held_runtime_id #short
202
203
  24: entity_age #short
@@ -226,7 +227,7 @@ MetadataDictionary: []varint
226
227
  49: wither_target_1 #long
227
228
  50: wither_target_2 #long
228
229
  51: wither_target_3 #long
229
- 52: aerial_attack
230
+ 52: wither_aerial_attack
230
231
  53: boundingbox_width
231
232
  54: boundingbox_height
232
233
  55: fuse_length
@@ -234,7 +235,7 @@ MetadataDictionary: []varint
234
235
  57: rider_rotation_locked #byte
235
236
  58: rider_max_rotation #float
236
237
  59: rider_min_rotation #float
237
- 60: rider_rotation_offset
238
+ 60: rider_seat_rotation_offset
238
239
  61: area_effect_cloud_radius #float
239
240
  62: area_effect_cloud_waiting #int
240
241
  63: area_effect_cloud_particle_id #int
@@ -251,7 +252,7 @@ MetadataDictionary: []varint
251
252
  74: controlling_rider_seat_number #byte
252
253
  75: strength #int
253
254
  76: max_strength #int
254
- 77: spell_casting_color #int
255
+ 77: evoker_spell_casting_color #int
255
256
  78: limited_life
256
257
  79: armor_stand_pose_index # int
257
258
  80: ender_crystal_time_offset # int
@@ -269,11 +270,11 @@ MetadataDictionary: []varint
269
270
  92: flags_extended
270
271
  93: laying_amount
271
272
  94: laying_amount_previous
272
- 95: duration
273
- 96: spawn_time
274
- 97: change_rate
275
- 98: change_on_pickup
276
- 99: pickup_count
273
+ 95: area_effect_cloud_duration
274
+ 96: area_effect_cloud_spawn_time
275
+ 97: area_effect_cloud_change_rate
276
+ 98: area_effect_cloud_change_on_pickup
277
+ 99: area_effect_cloud_pickup_count
277
278
  100: interact_text
278
279
  101: trade_tier
279
280
  102: max_trade_tier
@@ -515,8 +516,14 @@ TransactionUseItem:
515
516
  # ActionType is the type of the UseItem inventory transaction. It is one of the action types found above,
516
517
  # and specifies the way the player interacted with the block.
517
518
  action_type: varint =>
519
+ # Right click item use on a surface like placing a block
518
520
  0: click_block
521
+ # Start right click and hold style item use or potentially interact with nothing.
522
+ # If it is a usable item like food the server is expected to send a SetActorDataPacket with ActorFlags::USINGITEM along with the transaction response.
523
+ # While using an item, movement speed is slowed which will be reflected in the move vector in Player Auth Input.
519
524
  1: click_air
525
+ # Block breaking like left click. When using server auth block breaking as specified in StartGamePacket this is never sent.
526
+ # Instead, block actions are supplied in Player Auth Input.
520
527
  2: break_block
521
528
  # BlockPosition is the position of the block that was interacted with. This is only really a correct
522
529
  # block position if ActionType is not UseItemActionClickAir.
@@ -589,10 +596,19 @@ Transaction:
589
596
  legacy: TransactionLegacy
590
597
  # What type of transaction took place
591
598
  transaction_type: varint =>
599
+ # Sent for container UI operations depending on if ItemStackNetManager is enabled
592
600
  0: normal
601
+ # Sent from server to client to reject a transaction
593
602
  1: inventory_mismatch
603
+ # Sent for a player performing right click style item use.
604
+ # See the contained ItemUseInventoryTransaction::ActionType for the expected use case.
594
605
  2: item_use
606
+ # Sent for a player right clicking on an entity or attacking them.
607
+ # See ItemUseInventoryTransaction::ActionType for which it is.
595
608
  3: item_use_on_entity
609
+ # Sent when releasing right click on a chargeable item like a bow or finishing charging like a crossbow.
610
+ # This is different than canceling item use early which would be in Player Auth Input.
611
+ # See ItemReleaseInventoryTransaction::ActionType for which it is.
596
612
  4: item_release
597
613
  # The list of inventory internal actions in this packet, e.g. inventory GUI actions
598
614
  actions: TransactionActions
@@ -611,7 +627,9 @@ Transaction:
611
627
  # ActionType is the type of the UseItemOnEntity inventory transaction. It is one of the action types
612
628
  # found in the constants above, and specifies the way the player interacted with the entity.
613
629
  action_type: varint =>
630
+ # Right click interact with actor.
614
631
  0: interact
632
+ # Left click style attack of actor or elytra spin attack. Server is expected to deal damage to the entity with visuals.
615
633
  1: attack
616
634
  # HotBarSlot is the hot bar slot that the player was holding while clicking the entity. It should be used
617
635
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -632,7 +650,9 @@ Transaction:
632
650
  # As of 1.13, the ActionType is always 0. This field can be ignored, because releasing food (by consuming
633
651
  # it) or releasing a bow (to shoot an arrow) is essentially the same.
634
652
  action_type: varint =>
653
+ # Release right click and hold style item use, like firing a bow
635
654
  0: release
655
+ # Finish right click and hold style item use, like charging a crossbow
636
656
  1: consume
637
657
  # HotBarSlot is the hot bar slot that the player was holding while releasing the item. It should be used
638
658
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -1148,13 +1148,23 @@ packet_animate:
1148
1148
  !id: 0x2c
1149
1149
  !bound: both
1150
1150
  action_id: zigzag32 =>
1151
+ # Unused
1151
1152
  0: none
1153
+ # Server bound notification to swing the player's arm. Server is expected to rebroadcast to all that should see the arm move.
1154
+ # See also PlayerAuthInputPacket::InputData::MissedSwing for a very similar action
1152
1155
  1: swing_arm
1153
1156
  2: unknown
1157
+ # Client bound notification to stop sleeping in a bed
1154
1158
  3: wake_up
1159
+ # Client-bound notification to play critical hit particles
1155
1160
  4: critical_hit
1161
+ # Unused
1156
1162
  5: magic_critical_hit
1163
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1164
+ # See Player Auth Input for how to compute this in the latest protocol.
1157
1165
  128: row_right
1166
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1167
+ # See Player Auth Input for how to compute this in the latest protocol.
1158
1168
  129: row_left
1159
1169
  runtime_entity_id: varint64
1160
1170
  _: action_id ?
@@ -2644,8 +2654,7 @@ packet_spawn_particle_effect:
2644
2654
  particle_name: string
2645
2655
  # MoLangVariables is an encoded JSON map of MoLang variables that may be applicable to the particle spawn. This can
2646
2656
  # just be left empty in most cases.
2647
- # TODO: Investigate, probably not a ByteArray...
2648
- molang_variables: ByteArray
2657
+ molang_variables?: string
2649
2658
 
2650
2659
  # AvailableActorIdentifiers is sent by the server at the start of the game to let the client know all
2651
2660
  # entities that are available on the server.
@@ -4001,38 +4010,38 @@ packet_camera_instruction:
4001
4010
  # Ease represents the easing function that is used by the instruction.
4002
4011
  ease_data?:
4003
4012
  type: u8 =>
4004
- - Linear
4005
- - Spring
4006
- - InQuad
4007
- - OutQuad
4008
- - InOutQuad
4009
- - InCubic
4010
- - OutCubic
4011
- - InOutCubic
4012
- - InQuart
4013
- - OutQuart
4014
- - InOutQuart
4015
- - InQuint
4016
- - OutQuint
4017
- - InOutQuint
4018
- - InSine
4019
- - OutSine
4020
- - InOutSine
4021
- - InExpo
4022
- - OutExpo
4023
- - InOutExpo
4024
- - InCirc
4025
- - OutCirc
4026
- - InOutCirc
4027
- - InBounce
4028
- - OutBounce
4029
- - InOutBounce
4030
- - InBack
4031
- - OutBack
4032
- - InOutBack
4033
- - InElastic
4034
- - OutElastic
4035
- - InOutElastic
4013
+ - Linear
4014
+ - Spring
4015
+ - InQuad
4016
+ - OutQuad
4017
+ - InOutQuad
4018
+ - InCubic
4019
+ - OutCubic
4020
+ - InOutCubic
4021
+ - InQuart
4022
+ - OutQuart
4023
+ - InOutQuart
4024
+ - InQuint
4025
+ - OutQuint
4026
+ - InOutQuint
4027
+ - InSine
4028
+ - OutSine
4029
+ - InOutSine
4030
+ - InExpo
4031
+ - OutExpo
4032
+ - InOutExpo
4033
+ - InCirc
4034
+ - OutCirc
4035
+ - InOutCirc
4036
+ - InBounce
4037
+ - OutBounce
4038
+ - InOutBounce
4039
+ - InBack
4040
+ - OutBack
4041
+ - InOutBack
4042
+ - InElastic
4043
+ - OutElastic
4044
+ - InOutElastic
4036
4045
  duration: lf32
4037
4046
  position?: vec3f
4038
4047
  rotation?: vec2f
@@ -738,8 +738,9 @@
738
738
  "16": "minecart_display_block",
739
739
  "17": "minecart_display_offset",
740
740
  "18": "minecart_has_display",
741
- "20": "old_swell",
742
- "21": "swell_dir",
741
+ "19": "horse_type",
742
+ "20": "creeper_swell",
743
+ "21": "creeper_swell_direction",
743
744
  "22": "charge_amount",
744
745
  "23": "enderman_held_runtime_id",
745
746
  "24": "entity_age",
@@ -769,7 +770,7 @@
769
770
  "49": "wither_target_1",
770
771
  "50": "wither_target_2",
771
772
  "51": "wither_target_3",
772
- "52": "aerial_attack",
773
+ "52": "wither_aerial_attack",
773
774
  "53": "boundingbox_width",
774
775
  "54": "boundingbox_height",
775
776
  "55": "fuse_length",
@@ -777,7 +778,7 @@
777
778
  "57": "rider_rotation_locked",
778
779
  "58": "rider_max_rotation",
779
780
  "59": "rider_min_rotation",
780
- "60": "rider_rotation_offset",
781
+ "60": "rider_seat_rotation_offset",
781
782
  "61": "area_effect_cloud_radius",
782
783
  "62": "area_effect_cloud_waiting",
783
784
  "63": "area_effect_cloud_particle_id",
@@ -794,7 +795,7 @@
794
795
  "74": "controlling_rider_seat_number",
795
796
  "75": "strength",
796
797
  "76": "max_strength",
797
- "77": "spell_casting_color",
798
+ "77": "evoker_spell_casting_color",
798
799
  "78": "limited_life",
799
800
  "79": "armor_stand_pose_index",
800
801
  "80": "ender_crystal_time_offset",
@@ -812,11 +813,11 @@
812
813
  "92": "flags_extended",
813
814
  "93": "laying_amount",
814
815
  "94": "laying_amount_previous",
815
- "95": "duration",
816
- "96": "spawn_time",
817
- "97": "change_rate",
818
- "98": "change_on_pickup",
819
- "99": "pickup_count",
816
+ "95": "area_effect_cloud_duration",
817
+ "96": "area_effect_cloud_spawn_time",
818
+ "97": "area_effect_cloud_change_rate",
819
+ "98": "area_effect_cloud_change_on_pickup",
820
+ "99": "area_effect_cloud_pickup_count",
820
821
  "100": "interact_text",
821
822
  "101": "trade_tier",
822
823
  "102": "max_trade_tier",
@@ -9317,7 +9318,10 @@
9317
9318
  },
9318
9319
  {
9319
9320
  "name": "molang_variables",
9320
- "type": "ByteArray"
9321
+ "type": [
9322
+ "option",
9323
+ "string"
9324
+ ]
9321
9325
  }
9322
9326
  ]
9323
9327
  ],
@@ -200,8 +200,9 @@ MetadataDictionary: []varint
200
200
  16: minecart_display_block #int (id | (data << 16))
201
201
  17: minecart_display_offset #int
202
202
  18: minecart_has_display #byte (must be 1 for minecart to show block inside)
203
- 20: old_swell
204
- 21: swell_dir
203
+ 19: horse_type
204
+ 20: creeper_swell
205
+ 21: creeper_swell_direction
205
206
  22: charge_amount
206
207
  23: enderman_held_runtime_id #short
207
208
  24: entity_age #short
@@ -231,7 +232,7 @@ MetadataDictionary: []varint
231
232
  49: wither_target_1 #long
232
233
  50: wither_target_2 #long
233
234
  51: wither_target_3 #long
234
- 52: aerial_attack
235
+ 52: wither_aerial_attack
235
236
  53: boundingbox_width
236
237
  54: boundingbox_height
237
238
  55: fuse_length
@@ -239,7 +240,7 @@ MetadataDictionary: []varint
239
240
  57: rider_rotation_locked #byte
240
241
  58: rider_max_rotation #float
241
242
  59: rider_min_rotation #float
242
- 60: rider_rotation_offset
243
+ 60: rider_seat_rotation_offset
243
244
  61: area_effect_cloud_radius #float
244
245
  62: area_effect_cloud_waiting #int
245
246
  63: area_effect_cloud_particle_id #int
@@ -256,7 +257,7 @@ MetadataDictionary: []varint
256
257
  74: controlling_rider_seat_number #byte
257
258
  75: strength #int
258
259
  76: max_strength #int
259
- 77: spell_casting_color #int
260
+ 77: evoker_spell_casting_color #int
260
261
  78: limited_life
261
262
  79: armor_stand_pose_index # int
262
263
  80: ender_crystal_time_offset # int
@@ -274,11 +275,11 @@ MetadataDictionary: []varint
274
275
  92: flags_extended
275
276
  93: laying_amount
276
277
  94: laying_amount_previous
277
- 95: duration
278
- 96: spawn_time
279
- 97: change_rate
280
- 98: change_on_pickup
281
- 99: pickup_count
278
+ 95: area_effect_cloud_duration
279
+ 96: area_effect_cloud_spawn_time
280
+ 97: area_effect_cloud_change_rate
281
+ 98: area_effect_cloud_change_on_pickup
282
+ 99: area_effect_cloud_pickup_count
282
283
  100: interact_text
283
284
  101: trade_tier
284
285
  102: max_trade_tier
@@ -520,8 +521,14 @@ TransactionUseItem:
520
521
  # ActionType is the type of the UseItem inventory transaction. It is one of the action types found above,
521
522
  # and specifies the way the player interacted with the block.
522
523
  action_type: varint =>
524
+ # Right click item use on a surface like placing a block
523
525
  0: click_block
526
+ # Start right click and hold style item use or potentially interact with nothing.
527
+ # If it is a usable item like food the server is expected to send a SetActorDataPacket with ActorFlags::USINGITEM along with the transaction response.
528
+ # While using an item, movement speed is slowed which will be reflected in the move vector in Player Auth Input.
524
529
  1: click_air
530
+ # Block breaking like left click. When using server auth block breaking as specified in StartGamePacket this is never sent.
531
+ # Instead, block actions are supplied in Player Auth Input.
525
532
  2: break_block
526
533
  # BlockPosition is the position of the block that was interacted with. This is only really a correct
527
534
  # block position if ActionType is not UseItemActionClickAir.
@@ -594,10 +601,19 @@ Transaction:
594
601
  legacy: TransactionLegacy
595
602
  # What type of transaction took place
596
603
  transaction_type: varint =>
604
+ # Sent for container UI operations depending on if ItemStackNetManager is enabled
597
605
  0: normal
606
+ # Sent from server to client to reject a transaction
598
607
  1: inventory_mismatch
608
+ # Sent for a player performing right click style item use.
609
+ # See the contained ItemUseInventoryTransaction::ActionType for the expected use case.
599
610
  2: item_use
611
+ # Sent for a player right clicking on an entity or attacking them.
612
+ # See ItemUseInventoryTransaction::ActionType for which it is.
600
613
  3: item_use_on_entity
614
+ # Sent when releasing right click on a chargeable item like a bow or finishing charging like a crossbow.
615
+ # This is different than canceling item use early which would be in Player Auth Input.
616
+ # See ItemReleaseInventoryTransaction::ActionType for which it is.
601
617
  4: item_release
602
618
  # The list of inventory internal actions in this packet, e.g. inventory GUI actions
603
619
  actions: TransactionActions
@@ -616,7 +632,9 @@ Transaction:
616
632
  # ActionType is the type of the UseItemOnEntity inventory transaction. It is one of the action types
617
633
  # found in the constants above, and specifies the way the player interacted with the entity.
618
634
  action_type: varint =>
635
+ # Right click interact with actor.
619
636
  0: interact
637
+ # Left click style attack of actor or elytra spin attack. Server is expected to deal damage to the entity with visuals.
620
638
  1: attack
621
639
  # HotBarSlot is the hot bar slot that the player was holding while clicking the entity. It should be used
622
640
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -637,7 +655,9 @@ Transaction:
637
655
  # As of 1.13, the ActionType is always 0. This field can be ignored, because releasing food (by consuming
638
656
  # it) or releasing a bow (to shoot an arrow) is essentially the same.
639
657
  action_type: varint =>
658
+ # Release right click and hold style item use, like firing a bow
640
659
  0: release
660
+ # Finish right click and hold style item use, like charging a crossbow
641
661
  1: consume
642
662
  # HotBarSlot is the hot bar slot that the player was holding while releasing the item. It should be used
643
663
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -1153,13 +1153,23 @@ packet_animate:
1153
1153
  !id: 0x2c
1154
1154
  !bound: both
1155
1155
  action_id: zigzag32 =>
1156
+ # Unused
1156
1157
  0: none
1158
+ # Server bound notification to swing the player's arm. Server is expected to rebroadcast to all that should see the arm move.
1159
+ # See also PlayerAuthInputPacket::InputData::MissedSwing for a very similar action
1157
1160
  1: swing_arm
1158
1161
  2: unknown
1162
+ # Client bound notification to stop sleeping in a bed
1159
1163
  3: wake_up
1164
+ # Client-bound notification to play critical hit particles
1160
1165
  4: critical_hit
1166
+ # Unused
1161
1167
  5: magic_critical_hit
1168
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1169
+ # See Player Auth Input for how to compute this in the latest protocol.
1162
1170
  128: row_right
1171
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1172
+ # See Player Auth Input for how to compute this in the latest protocol.
1163
1173
  129: row_left
1164
1174
  runtime_entity_id: varint64
1165
1175
  _: action_id ?
@@ -2650,8 +2660,7 @@ packet_spawn_particle_effect:
2650
2660
  particle_name: string
2651
2661
  # MoLangVariables is an encoded JSON map of MoLang variables that may be applicable to the particle spawn. This can
2652
2662
  # just be left empty in most cases.
2653
- # TODO: Investigate, probably not a ByteArray...
2654
- molang_variables: ByteArray
2663
+ molang_variables?: string
2655
2664
 
2656
2665
  # AvailableActorIdentifiers is sent by the server at the start of the game to let the client know all
2657
2666
  # entities that are available on the server.
@@ -3989,38 +3998,38 @@ packet_camera_instruction:
3989
3998
  # Ease represents the easing function that is used by the instruction.
3990
3999
  ease_data?:
3991
4000
  type: u8 =>
3992
- - Linear
3993
- - Spring
3994
- - InQuad
3995
- - OutQuad
3996
- - InOutQuad
3997
- - InCubic
3998
- - OutCubic
3999
- - InOutCubic
4000
- - InQuart
4001
- - OutQuart
4002
- - InOutQuart
4003
- - InQuint
4004
- - OutQuint
4005
- - InOutQuint
4006
- - InSine
4007
- - OutSine
4008
- - InOutSine
4009
- - InExpo
4010
- - OutExpo
4011
- - InOutExpo
4012
- - InCirc
4013
- - OutCirc
4014
- - InOutCirc
4015
- - InBounce
4016
- - OutBounce
4017
- - InOutBounce
4018
- - InBack
4019
- - OutBack
4020
- - InOutBack
4021
- - InElastic
4022
- - OutElastic
4023
- - InOutElastic
4001
+ - Linear
4002
+ - Spring
4003
+ - InQuad
4004
+ - OutQuad
4005
+ - InOutQuad
4006
+ - InCubic
4007
+ - OutCubic
4008
+ - InOutCubic
4009
+ - InQuart
4010
+ - OutQuart
4011
+ - InOutQuart
4012
+ - InQuint
4013
+ - OutQuint
4014
+ - InOutQuint
4015
+ - InSine
4016
+ - OutSine
4017
+ - InOutSine
4018
+ - InExpo
4019
+ - OutExpo
4020
+ - InOutExpo
4021
+ - InCirc
4022
+ - OutCirc
4023
+ - InOutCirc
4024
+ - InBounce
4025
+ - OutBounce
4026
+ - InOutBounce
4027
+ - InBack
4028
+ - OutBack
4029
+ - InOutBack
4030
+ - InElastic
4031
+ - OutElastic
4032
+ - InOutElastic
4024
4033
  duration: lf32
4025
4034
  position?: vec3f
4026
4035
  rotation?: vec2f