{{Infobox version
| title = v1.21.30
| edition = Bedrock
| image = Bedrock 1.21.30 PatchNotes.jpg
| image2 = Bedrock 1.21.30.png
|internal = '''Windows, Xbox''': 1.21.3003.0<br>'''ChromeOS, Android, iOS, iPadOS, Fire''': 1.21.30.03<br>'''PlayStation 4''': 2.97<br>'''Nintendo Switch''': v108
|versioncode = '''Android''':<br />
952103003 (armeabi-v7a, 34)<br />
962103003 (x86, 34)<br />
972103003 (arm64-v8a, 34)<br />
982103003 (x86_64, 34)
| build = 27468783
| server = 1.21.30.03
| serverdl = '''Server'''<br>[https://minecraft.azureedge.net/bin-win/bedrock-server-1.21.30.03.zip Windows]<br>[https://minecraft.azureedge.net/bin-linux/bedrock-server-1.21.30.03.zip Linux]
| date = September 17, 2024
| prevparent = 1.21.0
| prev = 1.21.23
| next = 1.21.31
| nextparent =
}}

'''1.21.30''' is a minor update to {{BE}} released on September 17, 2024,<ref>{{cite|url=https://feedback.minecraft.net/hc/en-us/articles/30220110283533-Minecraft-1-21-30-Bedrock|title=Minecraft - 1.21.30 (Bedrock)|website=Minecraft Feedback|date=September 17, 2024}}</ref><ref>{{Mcnet|minecraft-1-21-30-bedrock-changelog|Minecraft 1.21.30 Bedrock Changelog|September 17, 2024|Jay Wells}}</ref> which changes lots of names of blocks and items to parity with {{JE}}, adds [[bundle]]s as an experimental feature, and fixes bugs.

== Additions ==
=== General ===
;Full Keyboard Gameplay
*Added {{keys|Q}} and {{keys|E}} as left and right click equivalents in JSON UI menus (including inventory menus) when playing in Full Keyboard Gameplay mode.

;[[How to Play]]
*Added line break ability for How to Play topic labels instead of having it add "..." when the line got too long.

;[[Tag]]s
*Added the following block tags:
** {{cd|minecraft:wood_tier_destructible}}
** {{cd|minecraft:stone_tier_destructible}}
** {{cd|minecraft:gold_tier_destructible}}
** {{cd|minecraft:iron_tier_destructible}}
** {{cd|minecraft:diamond_tier_destructible}}
** {{cd|minecraft:netherite_tier_destructible}}
** {{cd|minecraft:is_mace_item_destructible}}
** {{cd|minecraft:is_shovel_item_destructible}}
** {{cd|minecraft:is_shears_item_destructible}}
** {{cd|minecraft:is_sword_item_destructible}}
** {{cd|minecraft:is_tool_item_destructible}}
** {{cd|minecraft:is_hatchet_item_destructible}}
** {{cd|minecraft:is_digger_item_destructible}}
** {{cd|minecraft:is_pickaxe_item_destructible}}
** {{cd|minecraft:is_hoe_item_destructible}}

== Changes ==
=== Blocks ===
;[[Chemistry Table]]
* The different chemistry table type [[block states]] for the <code>chemistry_table</code> ID have now been split up into their own IDs.
{|class="mw-collapsible mw-collapsed wikitable"
! [[Bedrock Edition data values|Old ID]]
! [[Bedrock Edition data values|New ID]]
|-
| rowspan="4" | {{BlockSprite|compound-creator}} <code>chemistry_table</code>
| {{BlockSprite|compound-creator}} <code>compound_creator</code>
|-
| {{BlockSprite|material-reducer}} <code>material_reducer</code>
|-
| {{BlockSprite|element-constructor}} <code>element_constructor</code>
|-
| {{BlockSprite|lab-table}} <code>lab_table</code>
|}

;[[Colored Torch]]
* The different color bit [[block states]] for the <code>colored_torch_rg</code> and <code>colored_torch_bp</code> IDs have now been split up into their own IDs.
{|class="mw-collapsible mw-collapsed wikitable"
! [[Bedrock Edition data values|Old ID]]
! [[Bedrock Edition data values|New ID]]
|-
| rowspan="2" | {{BlockSprite|colored-torches}} <code>colored_torch_rg</code>
| {{BlockSprite|red-torch}} <code>colored_torch_red</code>
|-
| {{BlockSprite|green-torch}} <code>colored_torch_green</code>
|-
| rowspan="2" | {{BlockSprite|colored-torches}} <code>colored_torch_bp</code>
| {{BlockSprite|blue-torch}} <code>colored_torch_blue</code>
|-
| {{BlockSprite|purple-torch}} <code>colored_torch_purple</code>
|}

;[[Log]]s, [[Stripped Log]]s, [[Wood]]s, and [[Stripped Wood]]s
*All Logs, Stripped Logs, Woods, and Stripped Woods are now treated consistently across various scenarios:
**Flying mobs that can land on trees now recognize these blocks as suitable landing positions.
**[[Parrot]]s now prefer these blocks as landing spots.
**Previously, these behaviors applied only to a subset of these blocks.

;[[Purpur Block]]
* The different chisel type [[block states]] for the <code>purpur_block</code> ID have now been split up into their own IDs.
** The previously unused chiseled and smooth purpur blocks were renamed to {{cd|deprecated_purpur_block_1}} and {{cd|deprecated_purpur_block_2}} for backward compatibility, but are hidden from creative inventory and commands.
{|class="mw-collapsible mw-collapsed wikitable"
! [[Bedrock Edition data values|Old ID]]
! [[Bedrock Edition data values|New ID]]
|-
| rowspan="2" | {{BlockSprite|purpur-block}} <code>purpur_block</code>
| {{BlockSprite|purpur-block}} <code>purpur_block</code>
|-
| {{BlockSprite|purpur-pillar}} <code>purpur_pillar</code>
|}

;[[Redstone power]]
*The following blocks have been brought to parity with {{JE}} for redstone power: 
**{{cd|minecraft:mangrove_roots}} is now powered
**{{cd|minecraft:beacon}} is no longer powered
**{{cd|minecraft:tnt}} is no longer powered
**{{cd|minecraft:sea_lantern}} is no longer powered

;[[Sponge]]
* The different [[block states]] for the <code>sponge</code> ID have now been split up into their own IDs.
{|class="mw-collapsible mw-collapsed wikitable"
! [[Bedrock Edition data values|Old ID]]
! [[Bedrock Edition data values|New ID]]
|-
| rowspan="2" | {{BlockSprite|sponge}} <code>sponge</code>
| {{BlockSprite|sponge}} <code>sponge</code>
|-
| {{BlockSprite|wet-sponge}} <code>wet_sponge</code>
|}

;[[Structure Void]]
*{{cd|structure_void}} has had its block state removed and {{cd|air}} variants are converted to the base block.

;[[TNT]] and [[Underwater TNT]]
* The different allow underwater bit [[block states]] for the <code>tnt</code> ID have now been split up into their own IDs.
{|class="mw-collapsible mw-collapsed wikitable"
! [[Bedrock Edition data values|Old ID]]
! [[Bedrock Edition data values|New ID]]
|-
| rowspan="2" | {{BlockSprite|tnt}} <code>tnt</code>
| {{BlockSprite|tnt}} <code>tnt</code>
|-
| {{BlockSprite|underwater-tnt}} <code>underwater_tnt</code>
|}

;[[Wall]]s
* The different wall block type [[block states]] for the <code>cobblestone_wall</code> ID have now been split up into their own IDs.
**{{cd|granite_wall}}, {{cd|diorite_wall}}, {{cd|andesite_wall}}, {{cd|stone_brick_wall}}, {{cd|mossy_stone_brick_wall}} and {{cd|prismarine_wall}} now have a hardness of 1.5.
**{{cd|sandstone_wall}} and {{cd|red_sandstone_wall}} now have a hardness of 0.8.
**{{cd|end_stone_brick_wall}} now has a hardness of 3.
{|class="mw-collapsible mw-collapsed wikitable"
! [[Bedrock Edition data values|Old ID]]
! [[Bedrock Edition data values|New ID]]
|-
| rowspan="14" | {{BlockSprite|cobblestone-wall}} <code>cobblestone_wall</code>
| {{BlockSprite|cobblestone-wall}} <code>cobblestone_wall</code>
|-
| {{BlockSprite|mossy-cobblestone-wall}} <code>mossy_cobblestone_wall</code>
|-
| {{BlockSprite|granite-wall}} <code>granite_wall</code>
|-
| {{BlockSprite|diorite-wall}} <code>diorite_wall</code>
|-
| {{BlockSprite|andesite-wall}} <code>andesite_wall</code>
|-
| {{BlockSprite|sandstone-wall}} <code>sandstone_wall</code>
|-
| {{BlockSprite|brick-wall}} <code>brick_wall</code>
|-
| {{BlockSprite|stone-brick-wall}} <code>stone_brick_wall</code>
|-
| {{BlockSprite|mossy-stone-brick-wall}} <code>mossy_stone_brick_wall</code>
|-
| {{BlockSprite|nether-brick-wall}} <code>nether_brick_wall</code>
|-
| {{BlockSprite|end-stone-brick-wall}} <code>end_stone_brick_wall</code>
|-
| {{BlockSprite|prismarine-wall}} <code>prismarine_wall</code>
|-
| {{BlockSprite|red-sandstone-wall}} <code>red_sandstone_wall</code>
|-
| {{BlockSprite|red-nether-brick-wall}} <code>red_nether_brick_wall</code>
|}

=== Command format ===
;{{cmd|/reload}}
*Added {{cd|all}} parameter to {{cmd|/reload}} command. This causes players to quit the world and rejoin, as well as reloading all behavior and resource packs.

=== Gameplay ===
;[[Death messages]]
* Added a new death message for when players or their pets are defeated by a [[mace]] smash attack.
** '''<''player/mob''> was smashed by <''player''>'''
** '''<''player/mob''> was smashed by <''player''> with <''item''>'''

;[[Sound]]s
* Water splash sounds have been adapted to the {{JE}}.

=== General ===
;[[Rarity]]
*The rarity of all items and blocks in the game has been re-evaluated to more accurately reflect the current challenge of obtaining them, given the following guidelines:
**Items and blocks become rarer depending on the following factors:
***The chance of finding it in a loot table, including mob drops.
***The amount of traveling required to obtain it.
***The difficulty of any obstacle that must be overcome to obtain it.
***The possible amount of that item or block that exists in the world.
**Any item or block that can be crafted must inherit the highest rarity of its crafting ingredients.
***For example, a Mace has an Epic rarity because one of its ingredients (the Heavy Core) has an Epic rarity.
***Likewise, any crafted item that has only Common crafting ingredients must also be Common.
**The lists below detail the items and blocks that have changed to that rarity category.
:'''Common'''
*{{ItemLink|End Crystal}}
*{{ItemLink|Golden Apple}}
:'''Uncommon'''
{{columns-list|colwidth=16em|
*{{BlockLink|Sniffer Egg}}
*{{ItemLink|Chainmail Helmet}}
*{{ItemLink|Chainmail Chestplate}}
*{{ItemLink|Chainmail Leggings}}
*{{ItemLink|Chainmail Boots}}
*{{ItemLink|Recovery Compass}}
*{{ItemLink|Heart of the Sea}}
*{{ItemLink|Disc Fragment 5}}
*{{ItemLink|Nautilus Shell}}
*{{ItemLink|Echo Shard}}
*{{ItemLink|Goat Horn|Goat Horns}}
*{{ItemLink|Pottery Sherd|Pottery Sherds}}
*{{ItemLink|Ominous Bottle}}
*{{BlockLink|Ominous Banner}}
*{{ItemLink|Heads}}
*{{ItemLink|Netherite Upgrade}}
*{{ItemLink|Sentry Armor Trim}}
*{{ItemLink|Dune Armor Trim}}
*{{ItemLink|Coast Armor Trim}}
*{{ItemLink|Wild Armor Trim}}
*{{ItemLink|Tide Armor Trim}}
*{{ItemLink|Snout Armor Trim}}
*{{ItemLink|Rib Armor Trim}}
*{{ItemLink|Wayfinder Armor Trim}}
*{{ItemLink|Shaper Armor Trim}}
*{{ItemLink|Raiser Armor Trim}}
*{{ItemLink|Host Armor Trim}}
*{{ItemLink|Flow Armor Trim}}
*{{ItemLink|Bolt Armor Trim}}
*{{ItemLink|Music Disc 13}}
*{{ItemLink|Music Disc Cat}}
*{{ItemLink|Music Disc Blocks}}
*{{ItemLink|Music Disc Chirp}}
*{{ItemLink|id=music-disc-creator-music-box|Music Disc Creator (Music Box)}}
*{{ItemLink|Music Disc Far}}
*{{ItemLink|Music Disc Mall}}
*{{ItemLink|Music Disc Mellohi}}
*{{ItemLink|Music Disc Stal}}
*{{ItemLink|Music Disc Strad}}
*{{ItemLink|Music Disc Ward}}
*{{ItemLink|Music Disc 11}}
*{{ItemLink|Music Disc Wait}}
*{{ItemLink|Music Disc Relic}}
*{{ItemLink|Music Disc 5}}
*{{ItemLink|Music Disc Precipice}}
}}
:'''Rare'''
{{columns-list|colwidth=16em|
*{{ItemLink|Enchanted Golden Apple}}
*{{ItemLink|Trident}}
*{{ItemLink|Nether Star}}
*{{ItemLink|Ward Armor Trim}}
*{{ItemLink|Eye Armor Trim}}
*{{ItemLink|Vex Armor Trim}}
*{{ItemLink|Spire Armor Trim}}
*{{BlockLink|Wither Skeleton Skull}}
*{{ItemLink|Skull Charge Banner Pattern}}
*{{ItemLink|Thing Banner Pattern}}
*{{ItemLink|Music Disc Pigstep}}
*{{ItemLink|Music Disc otherside}}
*{{ItemLink|Music Disc Creator}}
}}
:'''Epic'''
*{{BlockLink|Dragon Egg}}
*{{ItemLink|Elytra}}
*{{BlockLink|Dragon Head}}
*{{ItemLink|Silence Armor Trim}}

*When an item is enchanted, their rarity status is now increased depending on their base rarity:
**If the base rarity of an item is Common or Uncommon, it becomes Rare when enchanted.
**If the base rarity of an item is Rare, it becomes Epic when enchanted.
**If the base rarity of an item is Epic, it remains Epic when enchanted.

;[[Realms]]
*The Realms backup list now displays the date that the backup was created, instead of the age of the backup.

;Touch Controls
*Improved new d-pad for touch controls. It is now more compact, includes back strafing buttons, and a slightly extended zone outside where camera input is not received in order to prevent unexpected camera movement. When customizing controls, the diagonal buttons are visible as well.

;UI
*Shortened the URL for signing in on another device to https://microsoft.com/link.
*Added a button in the game menu to take a screenshot. Players can view their screenshots in the screenshot gallery on their profile pages.
*Renamed the maximum framerate slider "Framerate Limit" and added a tooltip to better describe its purpose.
*[[Enchantment]]s that have only one possible level no longer display the level in their name.
*The names of many items and blocks were brought to parity with {{JE}}:
{|class="mw-collapsible mw-collapsed wikitable"
! Old name
! New name
|-
|{{ItemLink|Book and Quill|Book & Quill}}
|[[Book and Quill]]
|-
|{{ItemLink|Chainmail Helmet|Chain Helmet}}
|[[Chainmail Helmet]]
|-
|{{ItemLink|Chainmail Chestplate|Chain Chestplate}}
|[[Chainmail Chestplate]]
|-
|{{ItemLink|Chainmail Leggings|Chain Leggings}}
|[[Chainmail Leggings]]
|-
|{{ItemLink|Chainmail Boots|Chain Boots}}
|[[Chainmail Boots]]
|-
|{{ItemLink|Enchanted Golden Apple|Enchanted Apple}}
|[[Enchanted Golden Apple]]
|-
|{{ItemLink|Steak|Cooked Beef}}
|[[Steak]]
|-
|{{ItemLink|Melon Slice|Melon}}
|[[Melon Slice]]
|-
|{{ItemLink|Glistering Melon Slice|Glistering Melon}}
|[[Glistering Melon Slice]]
|-
|{{ItemLink|Milk Bucket|Milk}}
|[[Milk Bucket]]
|-
|{{ItemLink|Wheat Seeds|Seeds}}
|[[Wheat Seeds]]
|-
|{{BlockLink|Snow Block|Snow}}
|[[Snow Block]]
|-
|{{BlockLink|Snow|Top Snow}}
|[[Snow]]
|-
|{{BlockLink|Short Grass|Grass}}
|[[Short Grass]]
|-
|{{BlockLink|Tall Grass|Double Tallgrass}}
|[[Tall Grass]]
|-
|{{ItemLink|Sugar Cane|Sugar Canes}}
|[[Sugar Cane]]
|-
|{{BlockLink|Clay|Clay Block}}
|[[Clay]]
|-
|{{ItemLink|Clay Ball|Clay}}
|[[Clay Ball]]
|-
|{{ItemLink|Turtle Spawn Egg|Sea Turtle Spawn Egg}}
|[[Turtle Spawn Egg]]
|-
|{{BlockLink|Turtle Egg|Sea Turtle Egg}}
|[[Turtle Egg]]
|-
|{{BlockLink|Bricks|Brick Block}}
|[[Bricks]]
|-
|{{BlockLink|Nether Bricks|Nether Brick Block}}
|[[Nether Bricks]]
|-
|{{BlockLink|Red Nether Bricks|Red Nether Brick}}
|[[Red Nether Bricks]]
|-
|{{BlockLink|Prismarine Brick Slab|Prismarine Bricks Slab}}
|[[Prismarine Brick Slab]]
|-
|{{BlockLink|Stone Brick Slab|Stone Bricks Slab}}
|[[Stone Brick Slab]]
|-
|{{BlockLink|Brick Slab|Bricks Slab}}
|[[Brick Slab]]
|-
|{{BlockLink|Infested Stone Bricks|Infested Stone Brick}}
|[[Infested Stone Bricks]]
|-
|{{BlockLink|Daylight Detector|Daylight Sensor}}
|[[Daylight Detector]]
|-
|{{BlockLink|Enchanting Table|Enchantment Table}}
|[[Enchanting Table]]
|-
|{{BlockLink|Heavy Weighted Pressure Plate|Weighted Pressure Plate (Heavy)}}
|[[Heavy Weighted Pressure Plate]]
|-
|{{BlockLink|Light Weighted Pressure Plate|Weighted Pressure Plate (Light)}}
|[[Light Weighted Pressure Plate]]
|-
|{{BlockLink|Chipped Anvil|Slightly Damaged Anvil}}
|[[Chipped Anvil]]
|-
|{{BlockLink|Damaged Anvil|Very Damaged Anvil}}
|[[Damaged Anvil]]
|-
|{{BlockLink|Player Head|Head}}
|[[Player Head]]
|-
|{{BlockLink|Light Block}}
|[[Light Block|Light]]
|-
|{{BlockLink|Ominous Banner|Illager Banner}}
|[[Ominous Banner]]
|}
*The name of the Stone Mason [[villager]] profession has been renamed to Mason to match {{JE}}.
*Added hotkeys to take screenshots in game on controller and keyboard. On mouse/keyboard: {{Keys|F2}}. On controller: {{Xbtn|lb}} + {{Xbtn|rb}}, {{Psbtn|l1}} + {{Psbtn|r1}}, {{Nsbtn|l}} + {{Nsbtn|r}}.

=== Items ===
;[[Banner Pattern]]s
*[[File:Flower Charge Banner Pattern JE2 BE2.png|32px]] [[File:Creeper Charge Banner Pattern JE2 BE2.png|32px]] [[File:Skull Charge Banner Pattern JE2 BE2.png|32px]] [[File:Thing Banner Pattern JE2 BE2.png|32px]] [[File:Globe Banner Pattern JE2 BE2.png|32px]] [[File:Snout Banner Pattern JE2 BE2.png|32px]] [[File:Flow Banner Pattern JE2 BE2.png|32px]] [[File:Guster Banner Pattern JE2 BE2.png|32px]] [[File:Field Masoned Banner Pattern JE1 BE2.png|32px]] [[File:Bordure Indented Banner Pattern JE1 BE2.png|32px]] Added unique item textures for each banner pattern.

;[[Mace]]
*Reverted a change that caused several bugs with the mace regarding stacking, enchanting, and durability. As a consequence, mobs are once again unable to do mace smash attacks.<ref>{{bug|MCPE-185896}}</ref>

;[[Name Tag]]
*Adding input glyph support in the name tags displayed over the entities.

;[[Smithing Template]]s
*Smithing Template items are now named after their template type instead of the generic "Smithing Template" name.
**They instead specify that they are a Smithing Template through a subtitle in the hover text.

=== Mobs ===
; [[Fox]]
* Reduced the health from {{hp|20}} to {{hp|10}} to match ''Java Edition''.

=== World generation ===
;[[Trial Chambers]]
*Replaced the empty chests at the entrance of chamber with a Hopper and Barrel to better show the players that these are meant for disposal and inventory management.

=== Technical ===
;[[Add-On]]s and Script Engine
*Removed deprecated behavior pack download related code from packets in the world join flow.
*The default for the "gui" "item_display_transforms" "rotation" field is [30, 45, 0] instead of [30, 225, 0]
 "item_display_transforms": {
 "gui" : {
 "translation": [0, 0, 0],
 "rotation": [30, 45, 0],
 "scale": [0.625, 0.625, 0.625],
 "rotation_pivot" : [0, 0, 0],
 "scale_pivot" : [0, 0, 0],
 "fit_to_frame" : true
 }
 }

;AI Goals 
*Removed the {{cd|minecraft:behavior.peek}} AI goal component that was never used.

;[[API]]
*Released {{cd|@minecraft/server}} version {{cd|1.3.0}}.
**Note: This can still change while in ''Preview''.
*Added {{cd|@minecraft/server}} version {{cd|1.4.0-beta}}.
*Released {{cd|playerEmoteWorld}} after event from {{cd|Beta}} to {{cd|1.14.0}}.
*Released class {{cd|BlockRecordPlayerComponent}} from {{cd|beta}} to {{cd|1.14.0}}.
*Released {{cd|UIManagerclass}} from {{cd|Beta}} to {{cd|1.3.0}}.
*Released {{cd|EntityQueryPropertyOptions}} from {{cd|beta}} to {{cd|1.14.0}}.
*Moved {{cd|EntityStrengthComponent}} from {{cd|beta}} to {{cd|1.13}}.
*Changes to iterators to make them properly store their own state, be simplified and better handle common usages.
*The following APIs have been shipped out of experimental: {{cd|PlayerCursorInventoryComponent}} API, Target Selector for Actor Properties APIs, and the Block Record Player Component APIs.

;[[Block]]s
*Added the {{cd|minecraft:redstone_conductivity}} component, which controls the basic Redstone properties of a custom block.
*Parsing {{cd|blocks.json}} now produces a Content Error if its {{cd|format_version}} is greater or equal than the block names it overrides.
*The {{cd|item_display_transforms}} field in block geometries no longer requires the "Upcoming Creator Features" toggle.

;[[Commands]]
*The {{cmd|/locate structure}} command output now displays the identifier of the found structure instead of its name.

;Entity Components
*{{cd|behavior.fire_at_target}} is no longer restricted to Vanilla content.
**This goal allows an entity to attack by firing a shot with a delay.
*{{cd|behavior.jump_around_target}} is no longer restricted to Vanilla content.
**This goal allows an entity to jump over and around a target.
*{{cd|behavior.move_around_target}} is no longer restricted to Vanilla content.
**This goal allows an entity to move around a target.

;Gameplay
*Exposed the entity offset so the user can change the camera's pivot point from the entity's center for third person boom cameras.

;General
*Updated Feature Rules documentation.
*Added GUI Log Level option to the Creator section of settings, which selects the level of content logs displayed on-screen when content logs are enabled.

;[[Item]]s
*Adds a content error for if an icon can't be found with {{cd|icon_name}} from {{cd|minecraft:icon}} in 1.10 data.
*Added {{cd|minecraft:rarity}} item component that allows specifying the rarity of an item.
**It has a single field {{cd|value}} that accepts the following values:
***{{cd|common}}.
***{{cd|uncommon}}.
***{{cd|rare}}.
***{{cd|epic}}.
**Can also be written as an inlined value like so: {{cd|minecraft:rarity}}: {{cd|uncommon}}.
**The rarity of the item determines which color it uses for its name.
***If the item has a {{cd|minecraft:hover_text_color}} component specified, that hover text color has priority and is used instead of the rarity color.
*Item data versioned 1.16.100+ can now be overridden by item data versioned 1.16.100+ higher in the pack stack.
*Enables Creators to override 1.16.100+ data driven Vanilla items with 1.16.100+ data.
*Added {{cd|minecraft:storage_item}} item component to allow an item to store data of the dynamic container associated with it:
**This component requires that the bundles toggle is enabled.
**A dynamic container is a container for storing items that is linked to an item instead of a block or an entity.
**To use this component the item must have {{cd|minecraft:max_stack_size}} set to 1.
**The {{cd|max_slots}} field (1 to 64) defines the number of slots of the dynamic container.
**The {{cd|max_weight_limit}} field defines the maximum allowed sum of the weight of the items in all slots of the dynamic container.
***Items that stack to 64 weigh 1 each, those that stack to 16 weigh 4 each and unstackable items weigh 64.
**The {{cd|allow_nested_storage_items}} field allows for other items with a {{cd|minecraft:storage_item}} component to be put inside it.
**The {{cd|weight_in_storage_item}} (0 to 64) defines the additional weight the item adds when inside another storage item.
***A value of 0 means that this item is not allowed inside another storage item.
**The {{cd|banned_items}} field defines the items that are not allowed in the item's dynamic container.
**The {{cd|allowed_items}} field defines the items that are exclusively allowed in the item's dynamic container.
***If empty all items are allowed in the item's dynamic container.
*Added {{cd|minecraft:bundle_interaction}} item component to enable bundle-specific interaction scheme and tooltip.
**This component requires that the bundles toggle is enabled.
**To use this component the item must have a {{cd|minecraft:storage_item}} component defined.
**The {{cd|minecraft:bundle_interaction}} component interacts with the container created by the {{cd|minecraft:storage_item}} component.
**The {{cd|num_viewable_slots}} field (1 to 64) defines the maximum number of item stacks accessible from the top of the bundle, while other slots are hidden.
**Textures named {{cd|[item_name]_open_front}} and {{cd|[item_name]_open_back}} must be added to {{cd|textures/textures_list.json}}.
*The {{cd|minecraft:dyeable}} component is now exposed to creators.

;[[Loot Table]]s
*Added {{cd|set_potion}} item function for loot tables that can set the potion type of compatible items with a potion id.
**It has a single field {{cd|id}} that accepts the following potion id values:
***{{cd|water}}
***{{cd|mundane}}
***{{cd|long_mundane}}
***{{cd|thick}}
***{{cd|awkward}}
***{{cd|nightvision}}
***{{cd|long_nightvision}}
***{{cd|invisibility}}
***{{cd|long_invisibility}}
***{{cd|leaping}}
***{{cd|long_leaping}}
***{{cd|strong_leaping}}
***{{cd|fire_resistance}}
***{{cd|long_fire_resistance}}
***{{cd|swiftness}}
***{{cd|long_swiftness}}
***{{cd|strong_swiftness}}
***{{cd|slowness}}
***{{cd|long_slowness}}
***{{cd|strong_slowness}}
***{{cd|water_breathing}}
***{{cd|long_water_breathing}}
***{{cd|healing}}
***{{cd|strong_healing}}
***{{cd|harming}}
***{{cd|strong_harming}}
***{{cd|poison}}
***{{cd|long_poison}}
***{{cd|strong_poison}}
***{{cd|regeneration}}
***{{cd|long_regeneration}}
***{{cd|strong_regeneration}}
***{{cd|strength}}
***{{cd|long_strength}}
***{{cd|strong_strength}}
***{{cd|weakness}}
***{{cd|long_weakness}}
***{{cd|wither}}
***{{cd|turtle_master}}
***{{cd|long_turtle_master}}
***{{cd|strong_turtle_master}}
***{{cd|slow_falling}}
***{{cd|long_slow_falling}}
***{{cd|wind_charged}}
***{{cd|weaving}}
***{{cd|oozing}}
***{{cd|infested}}
**The following types of items are compatible with the {{cd|set_potion}} function:
***[[Potion]]
***[[Lingering Potion]]
***[[Splash Potion]]
***[[Arrow]]

;[[Resource Pack|Resource]] and [[Behavior Pack]]s
*The player's {{cd|helmet_layer_visible}} variable is now based on the result of the {{cd|has_head_gear}} [[Molang]] query and the player and persona render controller's part visibility for the helmet layer no longer checks for the existence of head gear. 
**This fixes attachable scripts setting the {{cd|helmet_layer_visible}} to 1.0 to now properly work and maintains a fix that prevents persona hair and head gear from clipping outside of mob and [[Pumpkin]] heads.

;[[Trading|Trade Tables]]
*The Trade Table files are now versioned:
**TradeTier's {{cd|total_exp_required}} is a required member from version {{cd|1.21.30}}.
**TradeTier's {{cd|groups}} is a required member from version {{cd|1.21.30}}.
**TradeItem's quantity {{cd|min}} cannot be lower than {{cd|max}} from version {{cd|1.21.30}}.

== Experimental ==
These additions and changes are accessible by enabling the "Beta APIs", "Bundles", and "Upcoming Creator Features" experimental toggles.
=== Additions ===
==== Items ====
;[[File:Bundle Filled BE1.png|32px]] [[Bundle]]s
* Added bundles.
* A bundle is an item that can pack different items together into the same stack.
* A bundle fits one stack (usually 64 items) but it can be a mixture of many different item types.
* Player can insert items into a bundle directly in the [[inventory]].
* The bundle tooltip fits 3 rows and can always show at least 8 item types.
* Player can select any of the visible items to pull out of the bundle:
** Use the scroll wheel on mouse, the right stick on a game controller, or tap on a touch device.
* When selecting an item to remove, the bundle icon shows that item poking out of the bundle.
* When holding a bundle in hand, player can empty it onto the ground.
* The bundle is crafted with one string above one leather:
{{Crafting
|B1=String
|B2=Leather
|Output=Bundle
|ignoreusage=1
}}

==== Technical ====
;Add-Ons and Script Engine
*Added {{cd|item_display_transforms}} control to the block geometry file. This controls the way a block is visually represented in the UI, on the player, and floating on the ground. It exists inside the {{cd|minecraft:geometry}} json object and requires geometry {{cd|format_version}} 1.21.0 and the "Upcoming Creator Features" toggle
**Default values example:
 "item_display_transforms": { "gui" : { "translation": [0, 0, 0], "rotation": [30, 225, 0], "scale": [0.625, 0.625, 0.625], "rotation_pivot" : [0, 0, 0], "scale_pivot" : [0, 0, 0], "fit_to_frame" : true }, "firstperson_righthand": { "translation": [0, 0, 0], "rotation": [0, 45, 0], "scale": [0.4, 0.4, 0.4], "rotation_pivot" : [0, 0, 0], "scale_pivot" : [0, 0, 0] }, "firstperson_lefthand": { "translation": [0, 0, 0], "rotation": [0, -135, 0], "scale": [0.4, 0.4, 0.4], "rotation_pivot" : [0, 0, 0], "scale_pivot" : [0, 0, 0] }, "thirdperson_righthand": { "translation": [0, 2.5, 0], "rotation": [75, 45, 0], "scale": [0.375, 0.375, 0.375], "rotation_pivot" : [0, 0, 0], "scale_pivot" : [0, 0, 0] }, "thirdperson_lefthand": { "translation": [0, 2.5, 0], "rotation": [75, 45, 0], "scale": [0.375, 0.375, 0.375], "rotation_pivot" : [0, 0, 0], "scale_pivot" : [0, 0, 0] }, "ground": { "translation": [0, 3.0, 0], "rotation": [0, 0, 0], "scale": [0.25, 0.25, 0.25], "rotation_pivot" : [0, 0, 0], "scale_pivot" : [0, 0, 0] }, "fixed": { "translation": [0, 0, 0], "rotation": [0, 0, 0], "scale": [0.5, 0.5, 0.5], "rotation_pivot" : [0, 0, 0], "scale_pivot" : [0, 0, 0] }, "head": { "translation": [0, 0, 0], "rotation": [0, 0, 0], "scale": [1, 1, 1], "rotation_pivot" : [0, 0, 0], "scale_pivot" : [0, 0, 0] } }

;API
*{{cd|PlayerInteractWithBlockBeforeEvent}}
**Added property readonly {{cd|isFirstEvent: boolean}} to {{cd|beta}}. This value is true if the event was triggered on players initial interaction button press and false if triggered on holding the interaction button.
*{{cd|PlayerInteractWithBlockAfterEvent}}
**Added property readonly {{cd|beforeItemStack?: ItemStack}} to {{cd|beta}}. This is the item the player was selecting before the interaction succeeded.
**Added property readonly {{cd|isFirstEvent: boolean}} to {{cd|beta}}. This value is true if the event was triggered on players initial interaction button press and false if triggered on holding the interaction button.
**This after event no longer always triggers on an empty hand. The interaction with the block needs to be successful for it to trigger the after event.
*{{cd|PlayerInteractWithEntityAfterEvent}}
**Added property readonly {{cd|beforeItemStack?: ItemStack}} to {{cd|beta}}. This is the item the player was selecting before the interaction succeeded.
**Canceling the before event now no longer triggers the after event.
**This event now triggers only on a successful interaction.
*{{cd|ItemUseOnBeforeEvent}}
**Added property readonly {{cd|isFirstEvent: boolean}} to {{cd|beta}}. This value is true if the event was triggered on players initial interaction button press and false on events triggered from holding the interaction button.
*{{cd|ItemUseOnAfterEvent}}
**Added property readonly {{cd|isFirstEvent: boolean}} to {{cd|beta}}. This value is true if the event was triggered on players initial interaction button press and false on events triggered from holding the interaction button.

;[[Block]]s
*Added new experimental field {{cd|item_specific_speeds}} to {{cd|minecraft:destructible_by_mining}} block component.

;Gameplay
*Focus Target Camera: Added {{cd|rotation_speed}} in the free camera preset JSON to control the speed of rotation for targeting an entity. This value is a float that represents degrees turned per second.
*Focus Target Camera: Added {{cd|snap_to_target}} bool in the free camera preset JSON to enable snapping to the target entity on the first tick.

=== Changes ===
==== Technical ====
;[[API]]
*Moved class {{cd|PlayerCursorInventoryComponent}} from {{cd|beta}} to {{cd|1.14.0}}.

== Fixes ==
{{fixes|project=MCPE|fixedin=1.21.30.21 Preview,1.21.30.22 Preview,1.21.30.23 Preview,1.21.30.24 Preview
|;old
|33801|You can use a pumpkin to spawn an iron golem.
|44120|Water splash sounds still uses old splash sounds.
|46302|Parrots don't imitate sounds of newly added hostile mobs.
|48233|Foxes have 20 health.
|59729|Snow layers don't drop themselves when mined with a silk touch enchanted shovel.
|66061|End Gateway Teleports to Main End Island.
|66830|Mooshroom only spawn in light level > 11.
|79271|Sea lanterns conducting redstone and not acting like transparent block.
|94448|Snow golems die in hot biomes with the Fire Resistance effect.
|100267|ID changes left behind legacy IDs.
|101388|Outdated, incorrect, or inconsistent item/block names.
|130262|Banners render in front of transparent blocks.
|144222|Vertically retracting waterlogged blocks creates ghost water.
|153838|Mangrove roots don't conduct redstone signals.
|158447|Custom entity death message name uses unknown lang code.
|160236|The arrow in the Stonecutter UI only appears after placing an ingredient (in the Classic UI Profile).
|169818|Scaffolding isn’t supported by Structure Blocks.
|171061|Pitcher Plant crafts to only one Cyan Dye once again.
|172971|The Moon looks less brighter than usual.
|174857|Some Wither Skeleton related sounds still outdated.
|175207|Light/shadow stripes on Deferred Technical Preview.
|176186|Beacon text uses white color in Pocket UI.
|176952|Multiple trial chamber structures have missing or incorrect blocks.
|178305|Trial Spawner's hitbox is a bit small.
|180083|{{cd|Player.IsEmoting}} bool (@minecraft/server api) does not return true when emoting.
|180238|Mob Effects icons stay the same size when GUI scale is changed.
|180424|Bed generates with the wrong color in trial chambers.
|180432|Boats disappear and reappear when riding them.
|180912|{{cd|wall_dispenser}} dispenser traps can generate behind walls in trial chambers.
|181944|When updating to versions past 1.20.80, blocks in item form in old worlds using numerical IDs are not upgraded correctly.
|182414|Incorrect item rarity colors.
|182448|Dismount from a camel gets stuck in the ground.
|182508|Banner pattern rarity color is in the description instead of the name.
|183011|Breeze becomes Peaceful toward target within short range.
|183058|{{cd|variable.helmet_layer_visible}} doesn't work.
|183157|Didn't die in survival after hitting 0 hearts.
|183455|Firework rockets are sometimes crafted with a flight duration of 1 regardless of the amount of gunpowder used.
|183508|Game crashes when opening a lectern that has a book and quill while it is being moved by a sticky piston.
|183825|Category tabs are missing when switching from Classic to Pocket UI with recipe book closed.
|183986|{{cmd|/camera set}} still behaves incorrectly when run during an existing camera interpolation.
|184157|{{cmd|/hud @s hide all}} does not hide the D-Pad arrow buttons.
|184363|Dismounting a horse/mule/strider clips you 1 block into the ground when using touch controls.
|184728|Null pointer dereference (game crash) when rendering custom block.
|otherissuescount=35}}
; Others
*Kelp, seagrass and turtle eggs can no longer be placed on any type of Fence, instead of just a subset of them.
*The Bad Omen effect can now be reset by drinking an Ominous Bottle of any level.
*Fixed a bug that caused placeholder textures to appear after minimizing and then restoring the game window.
*Fixed an issue where the invite screen in-game would not show the correct substatus.
*Realms Stories content is no longer cropped when scrolling.
*Text no longer overlaps screenshots in Realms Stories on Galaxy Z Flip devices on any UI size.
*Gamepad legend no longer overlaps with UI elements when choosing a Preview Realm to create a world on.
*In split screen mode, show the subscriptions tab only for the primary player.
*Realm ID is now displayed in the debug text for preview/beta builds while connected to a Realm or while on associated screens.
*Some slime trial spawners in trial chambers won't spawn slimes without player intervention.
*Fixed Ominous Vault may fail to generate in Pedestal and {{cd|chamber_1/2}}.
*Fixed a softlock that could occur when purchasing subscriptions.
*Fixed a bug where the 'Drink' interaction prompt was not displayed when the player was holding an Ominous Bottle.
*The chat output's scroll position keeps its position after the game screen re-gains focus.
*Fixed {{cd|minecraft:repeating_command_block}} to not execute when changing to {{cd|needs redstone}} from {{cd|automatic}}.
*Fixed an issue where item components would not initialize on remote clients ().
*Fixed {{cd|minecraft:structure_blockdebug}} bounding box rendering when clients initially load server worlds containing one.
*Fixed an issue where {{cd|@minecraft/server-ui}} version {{cd|1.3.0}} was not accessible.
*Fixed bug where culling rules for data driven blocks did not rotate with the transformation component.
*EDU: Fixed Material Reducer recipes not working with some flattened blocks such as Andesite or Terracotta.
*Parrots can now imitate Endermites.
*Basalt Deltas now have a moody ambient sound again.
*Fixed an issue where items durability and storage bar was incorrect size and placement on certain screens.
*Fixed Mushroom Farms in Woodland Mansions that incorrectly spawned Dirt instead of Coarse Dirt.
*Fixed the {{cd|next}} method for iterable objects.
*Fixed an issue with {{cd|minecraft:redstone_conductivity}} support for custom blocks.
*Bundle recipe is now unlocked by obtaining leather or string.
*Bundle now has the correct animation when adding and removing items on touch screen devices.
*Moving a stack of multiple items into a bundle now correctly moves any existing identical items to the top.
*"Up" direction with gamepad's right-stick now correctly navigates in the bundle's submenu.
*Sculk charge particles now have sound.
*Fixed an issue where the world seed template button may be missing in the Create New World screen.
*Villagers no longer make idle sounds when sleeping.
*Fixed bug where all custom blocks were rotated 180 degrees in the UI.
*Specifying an invalid sound event in a {{cd|sounds.json}} file now triggers a content error.
{{fixes|project=REALMS|fixedin=1.21.30.21 Preview
|;old
|11940|RealismCraft addons randomly stop working & duplicating}}

== References ==
{{reflist}}

== Navigation ==
{{Navbox Bedrock Edition versions|1.2x}}

[[es:Bedrock Edition 1.21.30]]
[[pt:Edição Bedrock 1.21.30]]
[[uk:1.21.30 (Bedrock Edition)]]
[[zh:基岩版1.21.30]]
