minecraft-data 3.83.1 → 3.84.1

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 (124) 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 +4405 -0
  111. package/minecraft-data/data/bedrock/1.21.50/protocol.json +87 -98
  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 +13214 -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 +135 -63
  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/common/protocolVersions.json +40 -0
  123. package/minecraft-data/doc/history.md +13 -0
  124. package/package.json +1 -1
@@ -186,8 +186,9 @@ MetadataDictionary: []varint
186
186
  16: minecart_display_block #int (id | (data << 16))
187
187
  17: minecart_display_offset #int
188
188
  18: minecart_has_display #byte (must be 1 for minecart to show block inside)
189
- 20: old_swell
190
- 21: swell_dir
189
+ 19: horse_type
190
+ 20: creeper_swell
191
+ 21: creeper_swell_direction
191
192
  22: charge_amount
192
193
  23: enderman_held_runtime_id #short
193
194
  24: entity_age #short
@@ -217,7 +218,7 @@ MetadataDictionary: []varint
217
218
  49: wither_target_1 #long
218
219
  50: wither_target_2 #long
219
220
  51: wither_target_3 #long
220
- 52: aerial_attack
221
+ 52: wither_aerial_attack
221
222
  53: boundingbox_width
222
223
  54: boundingbox_height
223
224
  55: fuse_length
@@ -225,7 +226,7 @@ MetadataDictionary: []varint
225
226
  57: rider_rotation_locked #byte
226
227
  58: rider_max_rotation #float
227
228
  59: rider_min_rotation #float
228
- 60: rider_rotation_offset
229
+ 60: rider_seat_rotation_offset
229
230
  61: area_effect_cloud_radius #float
230
231
  62: area_effect_cloud_waiting #int
231
232
  63: area_effect_cloud_particle_id #int
@@ -242,7 +243,7 @@ MetadataDictionary: []varint
242
243
  74: controlling_rider_seat_number #byte
243
244
  75: strength #int
244
245
  76: max_strength #int
245
- 77: spell_casting_color #int
246
+ 77: evoker_spell_casting_color #int
246
247
  78: limited_life
247
248
  79: armor_stand_pose_index # int
248
249
  80: ender_crystal_time_offset # int
@@ -260,11 +261,11 @@ MetadataDictionary: []varint
260
261
  92: flags_extended
261
262
  93: laying_amount
262
263
  94: laying_amount_previous
263
- 95: duration
264
- 96: spawn_time
265
- 97: change_rate
266
- 98: change_on_pickup
267
- 99: pickup_count
264
+ 95: area_effect_cloud_duration
265
+ 96: area_effect_cloud_spawn_time
266
+ 97: area_effect_cloud_change_rate
267
+ 98: area_effect_cloud_change_on_pickup
268
+ 99: area_effect_cloud_pickup_count
268
269
  100: interact_text
269
270
  101: trade_tier
270
271
  102: max_trade_tier
@@ -501,8 +502,14 @@ TransactionUseItem:
501
502
  # ActionType is the type of the UseItem inventory transaction. It is one of the action types found above,
502
503
  # and specifies the way the player interacted with the block.
503
504
  action_type: varint =>
505
+ # Right click item use on a surface like placing a block
504
506
  0: click_block
507
+ # Start right click and hold style item use or potentially interact with nothing.
508
+ # If it is a usable item like food the server is expected to send a SetActorDataPacket with ActorFlags::USINGITEM along with the transaction response.
509
+ # While using an item, movement speed is slowed which will be reflected in the move vector in Player Auth Input.
505
510
  1: click_air
511
+ # Block breaking like left click. When using server auth block breaking as specified in StartGamePacket this is never sent.
512
+ # Instead, block actions are supplied in Player Auth Input.
506
513
  2: break_block
507
514
  # BlockPosition is the position of the block that was interacted with. This is only really a correct
508
515
  # block position if ActionType is not UseItemActionClickAir.
@@ -575,10 +582,19 @@ Transaction:
575
582
  legacy: TransactionLegacy
576
583
  # What type of transaction took place
577
584
  transaction_type: varint =>
585
+ # Sent for container UI operations depending on if ItemStackNetManager is enabled
578
586
  0: normal
587
+ # Sent from server to client to reject a transaction
579
588
  1: inventory_mismatch
589
+ # Sent for a player performing right click style item use.
590
+ # See the contained ItemUseInventoryTransaction::ActionType for the expected use case.
580
591
  2: item_use
592
+ # Sent for a player right clicking on an entity or attacking them.
593
+ # See ItemUseInventoryTransaction::ActionType for which it is.
581
594
  3: item_use_on_entity
595
+ # Sent when releasing right click on a chargeable item like a bow or finishing charging like a crossbow.
596
+ # This is different than canceling item use early which would be in Player Auth Input.
597
+ # See ItemReleaseInventoryTransaction::ActionType for which it is.
582
598
  4: item_release
583
599
  # The list of inventory internal actions in this packet, e.g. inventory GUI actions
584
600
  actions: TransactionActions
@@ -597,7 +613,9 @@ Transaction:
597
613
  # ActionType is the type of the UseItemOnEntity inventory transaction. It is one of the action types
598
614
  # found in the constants above, and specifies the way the player interacted with the entity.
599
615
  action_type: varint =>
616
+ # Right click interact with actor.
600
617
  0: interact
618
+ # Left click style attack of actor or elytra spin attack. Server is expected to deal damage to the entity with visuals.
601
619
  1: attack
602
620
  # HotBarSlot is the hot bar slot that the player was holding while clicking the entity. It should be used
603
621
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -618,7 +636,9 @@ Transaction:
618
636
  # As of 1.13, the ActionType is always 0. This field can be ignored, because releasing food (by consuming
619
637
  # it) or releasing a bow (to shoot an arrow) is essentially the same.
620
638
  action_type: varint =>
639
+ # Release right click and hold style item use, like firing a bow
621
640
  0: release
641
+ # Finish right click and hold style item use, like charging a crossbow
622
642
  1: consume
623
643
  # HotBarSlot is the hot bar slot that the player was holding while releasing the item. It should be used
624
644
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -1135,13 +1135,23 @@ packet_animate:
1135
1135
  !id: 0x2c
1136
1136
  !bound: both
1137
1137
  action_id: zigzag32 =>
1138
+ # Unused
1138
1139
  0: none
1140
+ # Server bound notification to swing the player's arm. Server is expected to rebroadcast to all that should see the arm move.
1141
+ # See also PlayerAuthInputPacket::InputData::MissedSwing for a very similar action
1139
1142
  1: swing_arm
1140
1143
  2: unknown
1144
+ # Client bound notification to stop sleeping in a bed
1141
1145
  3: wake_up
1146
+ # Client-bound notification to play critical hit particles
1142
1147
  4: critical_hit
1148
+ # Unused
1143
1149
  5: magic_critical_hit
1150
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1151
+ # See Player Auth Input for how to compute this in the latest protocol.
1144
1152
  128: row_right
1153
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1154
+ # See Player Auth Input for how to compute this in the latest protocol.
1145
1155
  129: row_left
1146
1156
  runtime_entity_id: varint64
1147
1157
  _: action_id ?
@@ -2628,8 +2638,7 @@ packet_spawn_particle_effect:
2628
2638
  particle_name: string
2629
2639
  # MoLangVariables is an encoded JSON map of MoLang variables that may be applicable to the particle spawn. This can
2630
2640
  # just be left empty in most cases.
2631
- # TODO: Investigate, probably not a ByteArray...
2632
- molang_variables: ByteArray
2641
+ molang_variables?: string
2633
2642
 
2634
2643
  # AvailableActorIdentifiers is sent by the server at the start of the game to let the client know all
2635
2644
  # entities that are available on the server.
@@ -676,8 +676,9 @@
676
676
  "16": "minecart_display_block",
677
677
  "17": "minecart_display_offset",
678
678
  "18": "minecart_has_display",
679
- "20": "old_swell",
680
- "21": "swell_dir",
679
+ "19": "horse_type",
680
+ "20": "creeper_swell",
681
+ "21": "creeper_swell_direction",
681
682
  "22": "charge_amount",
682
683
  "23": "enderman_held_runtime_id",
683
684
  "24": "entity_age",
@@ -707,7 +708,7 @@
707
708
  "49": "wither_target_1",
708
709
  "50": "wither_target_2",
709
710
  "51": "wither_target_3",
710
- "52": "aerial_attack",
711
+ "52": "wither_aerial_attack",
711
712
  "53": "boundingbox_width",
712
713
  "54": "boundingbox_height",
713
714
  "55": "fuse_length",
@@ -715,7 +716,7 @@
715
716
  "57": "rider_rotation_locked",
716
717
  "58": "rider_max_rotation",
717
718
  "59": "rider_min_rotation",
718
- "60": "rider_rotation_offset",
719
+ "60": "rider_seat_rotation_offset",
719
720
  "61": "area_effect_cloud_radius",
720
721
  "62": "area_effect_cloud_waiting",
721
722
  "63": "area_effect_cloud_particle_id",
@@ -732,7 +733,7 @@
732
733
  "74": "controlling_rider_seat_number",
733
734
  "75": "strength",
734
735
  "76": "max_strength",
735
- "77": "spell_casting_color",
736
+ "77": "evoker_spell_casting_color",
736
737
  "78": "limited_life",
737
738
  "79": "armor_stand_pose_index",
738
739
  "80": "ender_crystal_time_offset",
@@ -750,11 +751,11 @@
750
751
  "92": "flags_extended",
751
752
  "93": "laying_amount",
752
753
  "94": "laying_amount_previous",
753
- "95": "duration",
754
- "96": "spawn_time",
755
- "97": "change_rate",
756
- "98": "change_on_pickup",
757
- "99": "pickup_count",
754
+ "95": "area_effect_cloud_duration",
755
+ "96": "area_effect_cloud_spawn_time",
756
+ "97": "area_effect_cloud_change_rate",
757
+ "98": "area_effect_cloud_change_on_pickup",
758
+ "99": "area_effect_cloud_pickup_count",
758
759
  "100": "interact_text",
759
760
  "101": "trade_tier",
760
761
  "102": "max_trade_tier",
@@ -9016,7 +9017,10 @@
9016
9017
  },
9017
9018
  {
9018
9019
  "name": "molang_variables",
9019
- "type": "ByteArray"
9020
+ "type": [
9021
+ "option",
9022
+ "string"
9023
+ ]
9020
9024
  }
9021
9025
  ]
9022
9026
  ],
@@ -186,8 +186,9 @@ MetadataDictionary: []varint
186
186
  16: minecart_display_block #int (id | (data << 16))
187
187
  17: minecart_display_offset #int
188
188
  18: minecart_has_display #byte (must be 1 for minecart to show block inside)
189
- 20: old_swell
190
- 21: swell_dir
189
+ 19: horse_type
190
+ 20: creeper_swell
191
+ 21: creeper_swell_direction
191
192
  22: charge_amount
192
193
  23: enderman_held_runtime_id #short
193
194
  24: entity_age #short
@@ -217,7 +218,7 @@ MetadataDictionary: []varint
217
218
  49: wither_target_1 #long
218
219
  50: wither_target_2 #long
219
220
  51: wither_target_3 #long
220
- 52: aerial_attack
221
+ 52: wither_aerial_attack
221
222
  53: boundingbox_width
222
223
  54: boundingbox_height
223
224
  55: fuse_length
@@ -225,7 +226,7 @@ MetadataDictionary: []varint
225
226
  57: rider_rotation_locked #byte
226
227
  58: rider_max_rotation #float
227
228
  59: rider_min_rotation #float
228
- 60: rider_rotation_offset
229
+ 60: rider_seat_rotation_offset
229
230
  61: area_effect_cloud_radius #float
230
231
  62: area_effect_cloud_waiting #int
231
232
  63: area_effect_cloud_particle_id #int
@@ -242,7 +243,7 @@ MetadataDictionary: []varint
242
243
  74: controlling_rider_seat_number #byte
243
244
  75: strength #int
244
245
  76: max_strength #int
245
- 77: spell_casting_color #int
246
+ 77: evoker_spell_casting_color #int
246
247
  78: limited_life
247
248
  79: armor_stand_pose_index # int
248
249
  80: ender_crystal_time_offset # int
@@ -260,11 +261,11 @@ MetadataDictionary: []varint
260
261
  92: flags_extended
261
262
  93: laying_amount
262
263
  94: laying_amount_previous
263
- 95: duration
264
- 96: spawn_time
265
- 97: change_rate
266
- 98: change_on_pickup
267
- 99: pickup_count
264
+ 95: area_effect_cloud_duration
265
+ 96: area_effect_cloud_spawn_time
266
+ 97: area_effect_cloud_change_rate
267
+ 98: area_effect_cloud_change_on_pickup
268
+ 99: area_effect_cloud_pickup_count
268
269
  100: interact_text
269
270
  101: trade_tier
270
271
  102: max_trade_tier
@@ -503,8 +504,14 @@ TransactionUseItem:
503
504
  # ActionType is the type of the UseItem inventory transaction. It is one of the action types found above,
504
505
  # and specifies the way the player interacted with the block.
505
506
  action_type: varint =>
507
+ # Right click item use on a surface like placing a block
506
508
  0: click_block
509
+ # Start right click and hold style item use or potentially interact with nothing.
510
+ # If it is a usable item like food the server is expected to send a SetActorDataPacket with ActorFlags::USINGITEM along with the transaction response.
511
+ # While using an item, movement speed is slowed which will be reflected in the move vector in Player Auth Input.
507
512
  1: click_air
513
+ # Block breaking like left click. When using server auth block breaking as specified in StartGamePacket this is never sent.
514
+ # Instead, block actions are supplied in Player Auth Input.
508
515
  2: break_block
509
516
  # BlockPosition is the position of the block that was interacted with. This is only really a correct
510
517
  # block position if ActionType is not UseItemActionClickAir.
@@ -577,10 +584,19 @@ Transaction:
577
584
  legacy: TransactionLegacy
578
585
  # What type of transaction took place
579
586
  transaction_type: varint =>
587
+ # Sent for container UI operations depending on if ItemStackNetManager is enabled
580
588
  0: normal
589
+ # Sent from server to client to reject a transaction
581
590
  1: inventory_mismatch
591
+ # Sent for a player performing right click style item use.
592
+ # See the contained ItemUseInventoryTransaction::ActionType for the expected use case.
582
593
  2: item_use
594
+ # Sent for a player right clicking on an entity or attacking them.
595
+ # See ItemUseInventoryTransaction::ActionType for which it is.
583
596
  3: item_use_on_entity
597
+ # Sent when releasing right click on a chargeable item like a bow or finishing charging like a crossbow.
598
+ # This is different than canceling item use early which would be in Player Auth Input.
599
+ # See ItemReleaseInventoryTransaction::ActionType for which it is.
584
600
  4: item_release
585
601
  # The list of inventory internal actions in this packet, e.g. inventory GUI actions
586
602
  actions: TransactionActions
@@ -599,7 +615,9 @@ Transaction:
599
615
  # ActionType is the type of the UseItemOnEntity inventory transaction. It is one of the action types
600
616
  # found in the constants above, and specifies the way the player interacted with the entity.
601
617
  action_type: varint =>
618
+ # Right click interact with actor.
602
619
  0: interact
620
+ # Left click style attack of actor or elytra spin attack. Server is expected to deal damage to the entity with visuals.
603
621
  1: attack
604
622
  # HotBarSlot is the hot bar slot that the player was holding while clicking the entity. It should be used
605
623
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -620,7 +638,9 @@ Transaction:
620
638
  # As of 1.13, the ActionType is always 0. This field can be ignored, because releasing food (by consuming
621
639
  # it) or releasing a bow (to shoot an arrow) is essentially the same.
622
640
  action_type: varint =>
641
+ # Release right click and hold style item use, like firing a bow
623
642
  0: release
643
+ # Finish right click and hold style item use, like charging a crossbow
624
644
  1: consume
625
645
  # HotBarSlot is the hot bar slot that the player was holding while releasing the item. It should be used
626
646
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -1143,13 +1143,23 @@ packet_animate:
1143
1143
  !id: 0x2c
1144
1144
  !bound: both
1145
1145
  action_id: zigzag32 =>
1146
+ # Unused
1146
1147
  0: none
1148
+ # Server bound notification to swing the player's arm. Server is expected to rebroadcast to all that should see the arm move.
1149
+ # See also PlayerAuthInputPacket::InputData::MissedSwing for a very similar action
1147
1150
  1: swing_arm
1148
1151
  2: unknown
1152
+ # Client bound notification to stop sleeping in a bed
1149
1153
  3: wake_up
1154
+ # Client-bound notification to play critical hit particles
1150
1155
  4: critical_hit
1156
+ # Unused
1151
1157
  5: magic_critical_hit
1158
+ # Sent every tick the client is in a boat exclusively in legacy client authoritative movement.
1159
+ # See Player Auth Input for how to compute this in the latest protocol.
1152
1160
  128: row_right
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.
1153
1163
  129: row_left
1154
1164
  runtime_entity_id: varint64
1155
1165
  _: action_id ?
@@ -2636,8 +2646,7 @@ packet_spawn_particle_effect:
2636
2646
  particle_name: string
2637
2647
  # MoLangVariables is an encoded JSON map of MoLang variables that may be applicable to the particle spawn. This can
2638
2648
  # just be left empty in most cases.
2639
- # TODO: Investigate, probably not a ByteArray...
2640
- molang_variables: ByteArray
2649
+ molang_variables?: string
2641
2650
 
2642
2651
  # AvailableActorIdentifiers is sent by the server at the start of the game to let the client know all
2643
2652
  # entities that are available on the server.
@@ -3992,38 +4001,38 @@ packet_camera_instruction:
3992
4001
  # Ease represents the easing function that is used by the instruction.
3993
4002
  ease_data?:
3994
4003
  type: u8 =>
3995
- - Linear
3996
- - Spring
3997
- - InQuad
3998
- - OutQuad
3999
- - InOutQuad
4000
- - InCubic
4001
- - OutCubic
4002
- - InOutCubic
4003
- - InQuart
4004
- - OutQuart
4005
- - InOutQuart
4006
- - InQuint
4007
- - OutQuint
4008
- - InOutQuint
4009
- - InSine
4010
- - OutSine
4011
- - InOutSine
4012
- - InExpo
4013
- - OutExpo
4014
- - InOutExpo
4015
- - InCirc
4016
- - OutCirc
4017
- - InOutCirc
4018
- - InBounce
4019
- - OutBounce
4020
- - InOutBounce
4021
- - InBack
4022
- - OutBack
4023
- - InOutBack
4024
- - InElastic
4025
- - OutElastic
4026
- - InOutElastic
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
4027
4036
  duration: lf32
4028
4037
  position?: vec3f
4029
4038
  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",
@@ -9139,7 +9140,10 @@
9139
9140
  },
9140
9141
  {
9141
9142
  "name": "molang_variables",
9142
- "type": "ByteArray"
9143
+ "type": [
9144
+ "option",
9145
+ "string"
9146
+ ]
9143
9147
  }
9144
9148
  ]
9145
9149
  ],
@@ -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
@@ -512,8 +513,14 @@ TransactionUseItem:
512
513
  # ActionType is the type of the UseItem inventory transaction. It is one of the action types found above,
513
514
  # and specifies the way the player interacted with the block.
514
515
  action_type: varint =>
516
+ # Right click item use on a surface like placing a block
515
517
  0: click_block
518
+ # Start right click and hold style item use or potentially interact with nothing.
519
+ # If it is a usable item like food the server is expected to send a SetActorDataPacket with ActorFlags::USINGITEM along with the transaction response.
520
+ # While using an item, movement speed is slowed which will be reflected in the move vector in Player Auth Input.
516
521
  1: click_air
522
+ # Block breaking like left click. When using server auth block breaking as specified in StartGamePacket this is never sent.
523
+ # Instead, block actions are supplied in Player Auth Input.
517
524
  2: break_block
518
525
  # BlockPosition is the position of the block that was interacted with. This is only really a correct
519
526
  # block position if ActionType is not UseItemActionClickAir.
@@ -586,10 +593,19 @@ Transaction:
586
593
  legacy: TransactionLegacy
587
594
  # What type of transaction took place
588
595
  transaction_type: varint =>
596
+ # Sent for container UI operations depending on if ItemStackNetManager is enabled
589
597
  0: normal
598
+ # Sent from server to client to reject a transaction
590
599
  1: inventory_mismatch
600
+ # Sent for a player performing right click style item use.
601
+ # See the contained ItemUseInventoryTransaction::ActionType for the expected use case.
591
602
  2: item_use
603
+ # Sent for a player right clicking on an entity or attacking them.
604
+ # See ItemUseInventoryTransaction::ActionType for which it is.
592
605
  3: item_use_on_entity
606
+ # Sent when releasing right click on a chargeable item like a bow or finishing charging like a crossbow.
607
+ # This is different than canceling item use early which would be in Player Auth Input.
608
+ # See ItemReleaseInventoryTransaction::ActionType for which it is.
593
609
  4: item_release
594
610
  # The list of inventory internal actions in this packet, e.g. inventory GUI actions
595
611
  actions: TransactionActions
@@ -608,7 +624,9 @@ Transaction:
608
624
  # ActionType is the type of the UseItemOnEntity inventory transaction. It is one of the action types
609
625
  # found in the constants above, and specifies the way the player interacted with the entity.
610
626
  action_type: varint =>
627
+ # Right click interact with actor.
611
628
  0: interact
629
+ # Left click style attack of actor or elytra spin attack. Server is expected to deal damage to the entity with visuals.
612
630
  1: attack
613
631
  # HotBarSlot is the hot bar slot that the player was holding while clicking the entity. It should be used
614
632
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.
@@ -629,7 +647,9 @@ Transaction:
629
647
  # As of 1.13, the ActionType is always 0. This field can be ignored, because releasing food (by consuming
630
648
  # it) or releasing a bow (to shoot an arrow) is essentially the same.
631
649
  action_type: varint =>
650
+ # Release right click and hold style item use, like firing a bow
632
651
  0: release
652
+ # Finish right click and hold style item use, like charging a crossbow
633
653
  1: consume
634
654
  # HotBarSlot is the hot bar slot that the player was holding while releasing the item. It should be used
635
655
  # to ensure that the hot bar slot and held item are correctly synchronised with the server.