Bedrock Edition 1.21.90

| Edition | ||||||
|---|---|---|---|---|---|---|
| Official name | ||||||
| Release date |
June 17, 2025 | |||||
| Server version | ||||||
| Editor version | ||||||
| Internal version |
Windows, Xbox: 1.21.9003.0 | |||||
| Version code |
Android: | |||||
| Development versions | ||||||
| Downloads |
Server (1.21.90.3) | |||||
| Protocol version |
818 | |||||
| ||||||
{
"title": "v1.21.90",
"images": [
"Bedrock 1.21.90.png"
],
"rows": [
{
"field": "''(link to Bedrock Edition article, displayed as Bedrock Edition)''",
"label": "(link to Edition article, displayed as Edition)"
},
{
"field": "(link to Chase the Skies article, displayed as Chase the Skies)",
"label": "Official name"
},
{
"field": "June 17, 2025",
"label": "Release date"
},
{
"field": "(link to Bedrock Dedicated Server 1.21.90.3 article, displayed as 1.21.90.3)–(link to Bedrock Dedicated Server 1.21.90.4 article, displayed as 1.21.90.4)",
"label": "Server version"
},
{
"field": "(link to Bedrock Editor 1.0.0 article, displayed as 1.0.0)",
"label": "(link to Bedrock Editor article, displayed as Editor) version"
},
{
"field": "'''Windows, Xbox''': 1.21.9003.0<br>'''ChromeOS, Android, iOS, iPadOS, Fire''': 1.21.90.3<br>'''PlayStation 4''': 3.13<br>'''PlayStation 5''': 1.021.000<br>'''Nintendo Switch''': v124",
"label": "Internal version"
},
{
"field": "<small>'''Android''':<br>\n952109003 (armeabi-v7a, 34)<br>\n962109003 (x86, 34)<br>\n972109003 (arm64-v8a, 34)<br>\n982109003 (x86_64, 34)</small>",
"label": "Version code"
},
{
"field": "<div class=\"hlist\"><span style=\"white-space:nowrap;\">(link to :Category:Bedrock Edition 1.21.90 previews article, displayed as '''Previews''') (7) </span><br/><span style=\"white-space:nowrap;\">(link to :Category:Bedrock Edition 1.21.90 betas article, displayed as '''Betas''') (7) </span><br/>((link to Bedrock Edition 1.21.90/Development versions article, displayed as View all))</div>",
"label": "<span style=\"white-space: normal;\">Development versions</span>"
},
{
"field": "'''Server (1.21.90.3)'''<br>\n[https://www.minecraft.net/bedrockdedicatedserver/bin-win/bedrock-server-1.21.90.3.zip Windows]<br>\n[https://www.minecraft.net/bedrockdedicatedserver/bin-linux/bedrock-server-1.21.90.3.zip Linux]<br>\n'''Server (1.21.90.4)'''<br>\n[https://www.minecraft.net/bedrockdedicatedserver/bin-win/bedrock-server-1.21.90.4.zip Windows]<br>\n[https://www.minecraft.net/bedrockdedicatedserver/bin-linux/bedrock-server-1.21.90.4.zip Linux]",
"label": "Downloads"
},
{
"field": "818",
"label": "(link to Protocol version article, displayed as Protocol version)"
}
],
"invimages": [],
"footer": "<table style=\"margin: auto; word-break: break-word;\">\n<tr style=\"background: inherit;\">\n<td style=\"padding: 0.4em\" >[[Bedrock Edition 1.21.0|<span style=\"margin-right:-0.35em\">◄</span>◄ 1.21.0]]</td>\n<td rowspan=\"2\" style=\"padding: 0.4em\">''' 1.21.90'''</td>\n<td style=\"padding: 0.4em\" ></td>\n</tr>\n<tr style=\"background: inherit;\">\n<td style=\"padding: 0.4em\">\n[[Bedrock Edition 1.21.84|◄ 1.21.84]]\n</td>\n\n<td style=\"padding: 0.4em\">\n[[Bedrock Edition 1.21.91| 1.21.91 ►]]\n</td>\n</tr>\n</table>"
}
1.21.90, the release of Chase the Skies, is a game drop for Bedrock Edition that was released on June 17, 2025[1], which adds happy ghasts, Vibrant Visuals, improves lead mechanics, and fixes bugs.
Additions
Blocks
- Found in Nether fossils in soul sand valleys.
- Can be obtained through bartering.
- Can be crafted with 1 soul sand and 8 ghast tears.
| Ingredients | Crafting recipe |
|---|---|
| Ghast Tear + Soul Sand |
- When waterlogged, it undergoes 3 state changes over about 20 minutes until it spawns a ghastling mob.
- Makes sounds and shows particles depending on state.
- If mined during the waterlogging, it will revert to its "dry" state regardless of what state it has reached during waterlogging.
- Will revert states back to its initial "dry" state when it is taken away from being waterlogged, using the same time scale.
Items
- Crafted out of 3 leather, 2 glass and 1 wool, the harness will have the same color as the wool used when crafting.
| Ingredients | Crafting recipe |
|---|---|
| Leather + Glass + Matching Wool |
- Can be re-dyed.
| Ingredients | Crafting recipe |
|---|---|
| Any Harness + Matching Dye |
- Can only be equipped on a happy ghast.
- Allows up to 4 players to mount the happy ghast.
- Can be removed from the happy ghast using shears but only when no players are mounted.
- Used to spawn a happy ghast.
Added the "Tears" music disc by Amos Roddy.
- Obtained by killing a ghast with a fireball deflected by a player.
- Has a comparator output of 10 when played in a jukebox.
- Added the painting "Dennis" by Sarah Boeving.
| Picture | Name | Size | Artist |
|---|---|---|---|
|
Dennis | 3x3 | Sarah Boeving |
Mobs
- A rideable entity, which can be equipped with a harness and ridden by up to four players.
- Can be stood on, similar to a Shulker.
- When not being ridden, will approach players holding snowballs and a harness.
Baby versions are called ghastlings.
- Spawned after a dried ghast gets hydrated in water.
- Can be fed snowballs to speed up their growth.
- Can be summoned using the command:
/summon happy_ghast ~ ~ ~ ~ ~ minecraft:spawn_baby. - Ghastlings can follow happy ghasts.
Gameplay
| Icon | Achievement | In-game description | Actual requirements (if different) | Gamerscore earned | Trophy type (PS) | ||
|---|---|---|---|---|---|---|---|
| PS4 | Other | ||||||
| Stay Hydrated! | Place a Dried Ghast block into water | — | 10 | Silver | |||
- The distance of players now modifies the size of the locator bar player dot instead of the opacity.
- The Jump and Dash bars no longer take precedence over the Locator Bar while inactive in Creative Mode.
- Interaction Button in Creative Mode moved up for Touch devices such that it no longer covers the Locator Bar.
- Player Dots on the Locator Bar now show correctly while using split-screen.
- The item name tooltip is no longer cut off while the Locator Bar is enabled in Creative Mode.
- Player Dots on the Locator Bar now show correctly in third person view while using split-screen.
- The Locator Bar has been de-experimentified and is now available in non-experimental worlds.
- Added 5 new background music tracks by Amos Roddy to cherry grove, forest, desert, grove, and lush caves Biomes:
- "Below and Above"
- "Broken Clocks"
- "Fireflies"
- "Lilypad"
- "O's Piano"
Vibrant Visuals

- Made Vibrant Visuals the default graphics mode for supported devices.
- It is customizable and has two different built-in forms: "Favor Performance", and "Favor Visuals".
- Specific feature and visual settings can also be adjusted by expanding "Vibrant Visuals Options".
- Removed the ability to press
;to toggling graphics modes. - Added the ability to data-drive some of the Vibrant Visuals settings per biome.
- Creators can provide multiple versions of atmospherics, color grading, lighting and water configurations.
- Each configuration must have a unique
identifierand file name.
- Each configuration must have a unique
- The reserved JSON names for each group of settings (e.g.,
lighting/global.json) will continue to function as before. - Creators can utilize the
minecraft:atmosphere_identifier,minecraft:color_grading_identifier,minecraft:lighting_identifier, andminecraft:water_identifierin Client Biome JSONs to connect particular rendering settings to a given biome. - Note that certain parameters, such as tone mapping operators, caustics and wave simulation on/off cannot be customized per biome at this time.
- Parameters are spatially blended as players move between biomes.
- Creators can provide multiple versions of atmospherics, color grading, lighting and water configurations.
- Added
henyey_greenstein_gsettings to the fog json files.- New section
henyey_greenstein_gallows specifying values for bothairandwater.
- New section
- Customized atmospherics, color grading, fog and lighting for the Overworld, the Nether, the End, and a variety of biomes.
- Some issues exist with atmospherics in Nether and End dimensions.
- Shadows:
- Cloud shadows no longer pop in and out of view when looking on Android devices.
- Paintings now render with correct PBR properties, shadows and illumination.
- Changed shadows so that they cast further at sunrise and sunset. Prior to this change, shadows were clamped at a 30 degree angle relative to the horizon. This clamp has now been reduced to 10 degrees. This also improves an issue where specular highlights, light rays and volumetric fog were not properly occluded when the sun or moon was behind a mountain at a low angle.
- MERS changes:
- Added MERS texture support for Signs.
- Updated a variety of MERS textures.
- Made glass more reflective.
- Tweaked metallics on cauldrons and ancient debris.
- Tweaked emissives on eyeblossoms.
- Added emissive to the End crystal to match item icon.
- Added MERS textures for happy ghast and harnesses.
- Adjusted the glow lichen block emissive.
- Recalibrated all emissive values in MERS textures.
- Updated the appearance of metals for a variety of block textures.
- Increased emissive intensity and adjusted tone mapping parameters.
- Increased back-scattering of light underwater.
- Textures:
- Added new texture assets for a variety of armor trims, particles, spawn eggs, water, and the dark oak boat.
- Updated the textures of cave vines, chorus flower, pumpkin, firefly bush, a variety of other plants, bee, dolphin, ghast, pig saddle and strider textures.
- Added temperature grading settings to the color grading json files.
- Schemas must specify a format version of
1.21.90to access this new setting. - New
temperatureobject added tocolor_grading. enabledset totrueorfalsecontrols if temperature grading is enabled.typeset to eitherwhite_balanceorcolor_temperaturecontrols the type of grading applied.white_balanceuses the temperature value to adjust the camera's white point. Lower temperature values will cause the scene to appear more blue.color_temperatureis the inverse of the white balance operation. Lower temperature values will cause the scene to appear more red.
temperaturesets the temperature in degrees Kelvin.
- Schemas must specify a format version of
- Reduced the intensity and speed of the water caustics animation.
- Improved the Snell's window effect when looking up from underwater.
- End flashes:
- They are now visible again in the End.
the_end_light_flashsound effect now triggers when they happen.
- The local player's vehicle will now always be eligible for rendering, no matter the orientation of the model compared to the render bounding box.
- Particles rendered without the
minecraft:particle_appareance_lightingcomponent are now renderered as expected. - Updated shadow configurations for "Favors Performance" on all Xbox platforms.
- Updated volumetric configs for "Favors Performance" on Xbox One and Xbox One X.
- Temporarily reverted weather-related changes to sky color while some issues are sorted out.
Changes
Blocks
- Maximum beacon beam height is now 2048.
- Now render from any chunk loaded in worlds opened in at least 1.21.90.
- Dead bush ambient sounds now have a slightly increased chance of playing.
- Sound files for breaking and placing grass blocks are now slightly louder.
- Ambient sand sounds no longer requires sky access to play.
- Ambient sand sounds now have a slightly decreased chance to play.
- Ambient sand sounds can now play in all biomes.
- The frequency and conditions for the sounds are now completely independent of the biome the blocks are in.
- Sand, red sand, and terracotta blocks no longer make ambient wind sounds (
block.sand.wind).- They still make sand sounds (
block.sand.idle).
- They still make sand sounds (
Short Dry Grass and Tall Dry Grass
- Short dry grass and tall dry grass can now make ambient wind sounds (
block.sand.wind) when above 2 sand, red sand, terracotta blocks.
Command format
- The camera
defaultcommand will now properly reset third person camera view offset values - The
/controlschemecommand no longer requires the "Experimental Creator Camera" toggle.
Items
- Using a firework rocket to boost while flying with an elytra now causes leashed mobs to unleash.
- Entities can now be leashed to a pre-existing leash knot by interacting with it.
- Players can retrieve entities tied to a leash knot by interacting with it.
- Shears can now be used to remove leash knots.
- Any leashable entity can now be leashed to any other leashable entity.
- To leash an entity to another entity, the player must:
- Have the entity already leashed to themselves.
- Sneak and interact with the target entity while holding the lead.
- Leashed entities can now be "stolen" by leashing them again, transferring ownership to the player.
- If re-leashing an entity would result in immediate leash snapping due to distance, the re-leashing cannot be done.
- To prevent erratic behavior when leashed to each other, llamas that are leashed no longer attempt to form caravans.
- A leashed entity cannot be leashed to itself.
- Baby mobs can only be leashed one way - to another entity; they cannot have other mobs leashed to them.
- To leash an entity to another entity, the player must:
- When leashed to a happy ghast, horses, camels, donkeys, mules, boats, chest boats, and sniffers now adjust their position gradually over time, aligning smoothly with their leash holder when suspended mid-air.
- In all other cases, entities align to the direction they are being pulled and no longer behave erratically when suspended mid-air.
- Mid-air friction now applies to boats just like any other entity, meaning they can no longer orbit the player or behave excessively bouncily.
- The distance at which leads break has been increased to 12 blocks, except for the happy ghast, which has a break distance of 16 blocks.
- When the lead is pulled, leashed objects will now orient themselves towards the leasher.
- The distance between centers of entities bounding boxes is used to determine the distance between two leashed entities.
- Boats and large leashable mobs that cannot fit in a boat (horses, donkeys, mules, camels, and sniffers) when leashed to a happy ghast are rendered with four leashes instead of one.
- In this configuration, the happy ghast also features a rope layer wrapping around it.
- Shears can now be used on leashed entities to unleash them, removing both incoming and outgoing leash connections.
- Players cannot cut other players' leashes.
- Dispensers can now use shears to unleash leashed entities.
- The recipe for leads has been updated to use string instead of a slimeball.
| Ingredients | Crafting recipe |
|---|---|
| String |
- Attaching a leashed entity to another entity and using shears to cut leashes now take precedence over other interactions
- Example: Attempting to shear a leashed sheep will now un-leash it instead of shearing it
- Leash break distance is now calculated between the centers of the two entities' collision boxes, aligning with the rest of the leash physics calculations
- Can now be found in monster room, ancient city, desert temple, jungle temple and stronghold altar chests in quantities 1-5.
- Can be removed from mobs wearing them by using shears on the mob.
- Cannot be removed this way from ravagers or mobs with riders.
- Shears in a dispenser don't work.
- Saddles can now be crafted with 3 leather and 1 iron ingot.
- The recipe unlocks when a player picks up their first leather.
| Ingredients | Crafting recipe |
|---|---|
| Leather + Iron Ingot |
- No longer found in chests in monster rooms, ancient cities, desert temples, jungle temples and in stronghold altar chests.
- Can now remove saddles, horse armor, harnesses and carpets from mobs.
- They cannot be removed if the mob has a rider.
- They cannot be removed if the player is crouching.
- Saddles cannot be removed from ravagers.
- Dispensers with shears cannot remove saddles, horse armor, harnesses and carpets equipped on mobs.
- Now the mooshroom spawn egg uses its own colors and no longer has two pixels that are the same as the cow spawn egg texture.
Mobs
General
- Mobs' and players' legs are now positioned more horizontally when riding, reducing clipping into the ridden entity.
- Increased blaze attack sound distance to 32 to match Java Edition.
- Blaze's attack distance has been increased from 16 to 48 blocks to match its target detection range.
- Boats are now able to be pulled out of water using a lead.
- They can now be fed carrots to heal, grow, and improve their temper.
- Piglins can now give dried ghast blocks when bartered with.
- Decreased zoglin speed when chasing the player to match Java Edition.
- Baby zombified piglins can no longer have golden swords equipped.
- Decreased the speed of zombified piglins when chasing the player to match Java Edition.
Non-mob entities
- Projectiles now have a tolerance margin that changes over time.
- Previously, all projectiles had a fixed 0.3 blocks tolerance margin added to the collision.
- Now, all projectiles start with no margin for the first two ticks of their flight.
- After that, the target margin will expand by 0.05 blocks per tick until it reaches the target margin of 0.3 blocks.
- This allows for more precise collision on targets close to the shooting player or entity, while still allowing for some collision leeway for targets further away.
Gameplay
- Text to speech will select an appropriate voice if available when changing in-game language on Android, iOS, and Windows 10/11.
Graphical
- Updated the clouds texture.
the_end_light_flashsound effect now triggers when the light flashes in the End dimension with Vibrant Visuals.- Added custom sounds for leashing mobs, unleashing mobs, collecting leashed mobs, and leashing mobs to other mobs.
- Added custom sounds for using shears to remove saddles, horse armor, harnesses, and carpets from mobs.
- Ajusted ambient sand sounds from sand, red sand, and terracotta:
- They no longer require sky access to play.
- They have a slightly decreased chance to play.
- They now play in all biomes equally.
- Sand, red sand, and terracotta blocks no longer make ambient wind sounds (
block.sand.wind).- They still make sand sounds (
block.sand.idle).
- They still make sand sounds (
- Short dry grass and tall dry grass can now make ambient wind sounds (
block.sand.wind) when above 2 sand, red sand, terracotta blocks.
The Overworld
- Re-enabled Overworld chunk blending which was disabled in the last preview.
General
- Gamertags are used on all platforms to identify players in cross-platform multiplayer games.
- Realm owners can now choose to require members to opt into the Timeline in order to play on the Realm.
- To turn this feature on, go to Realms Stories --> Settings and enable "Require opt in to Timeline".
- The feature can be turned on and off at will.
- While the feature is on, Realm members who have not opted in will remain members of the Realm, but will not be able to play until they opt in.
- If a Realm member who previously opted in chooses to opt out, they will not be able to play on the Realm until they opt in again.
- Realm owners will be able to play on the Realm regardless of whether they have opted in.
- To turn this feature on, go to Realms Stories --> Settings and enable "Require opt in to Timeline".
- Chat background opacity can now be controlled with a new accessibility setting.
- The Text Background Opacity accessibility setting defaults to 60% opacity.
- The vertical angle upon which the locator bar arrow icons become visible now corresponds to the player's FOV setting.
- The animated up and down arrows on the locator bar have been repositioned to be closer to the player dot.
- Closing an anvil or an enchanting table now results in the experience bar being shown for 5 seconds instead of the locator bar.
- While using the "Joystick & tap to interact" touch mode, the "Joystick Visibility Option" is now forced into "Visible Joystick" while using the
player_relative_strafeorcamera_relative_strafecontrol scheme.
- The panorama has changed to reflect the Chase the Skies drop.
Technical
@minecraft/server-ui 2.0.0is now released,2.1.0-betais the new beta version for@minecraft/server-ui.- Added integer overflow detection in
ScoreboardObjective.addScore. Original value will be retained when overflow is detected. NamespaceNameErrornow has better error information and the name property value will now be set toNamespaceNameError.BlockComponentPlayerDestroyEventrenamed toBlockComponentPlayerBreakEvent.PlayerPlaceBlockBeforeEventpermutationBeingPlacedrenamed topermutationToPlace.
BlockCustomComponentonPlayerDestroyrenamed toonPlayerBreak.
- Added
lookAtmethod onEntity. - Added
customComponentParameters: CustomComponentParameterstoItemCustomComponentInstance. - Added
customComponentParameters: CustomComponentParameterstoBlockCustomComponentInstance. - Custom components V2 now support assigning string, array, object, bool, or number.
GameModeenum member names changed:survivalrenamed toSurvival.creativerenamed toCreative.adventurerenamed toAdventure.spectatorrenamed toSpectator.
- Added
isValidproperty onCamerafrombetatostable. - Moved
TicksPerDayfrombetatostable. - Moved enum
ScriptTintMethodfrombetatostable. - Moved enum
ScriptBlockMapColorComponentfrombetatostable. - Released
getBlockBelowandgetBlockAboveonDimensionto2.0.0. - Changed
playersproperty onPlayAnimationOptionsto an array ofPlayerobjects, instead of string names in2.0.0. - Released error
ContainerRulesErrorto2.0.0. - Removed
CameraDefaultOptionsforV2.0.- Added
setDefaultCamera(cameraPreset: string, easeOptions?: CameraEaseOptions): voidtoV2.0. This will replace passing theCameraDefaultOptionsinto theCamera.setCamerafunction. Will also now reset the position and rotation of third-person cameras back to the values defined in the JSON.
- Added
- Added a new condition
damaged_by_entitythat allows checking which entity type applied damage to an entity that is dropping loot.- Similar to the
killed_by_entityandentity_killedconditions, allows specifying anentity_typefield to check against when deciding which entry in a loot table to select.
- Similar to the
@minecraft/server
- Added
localizationKeyread only property toDimension, which is the key for localization of a dimension's name used in language files. - Added
EntityHungerComponent,EntitySaturationComponent,EntityExhaustionComponentthat allows read and write access to hunger, saturation, and exhaustion values onplayerobjects. - Added
totalArmorandtotalToughnessread only properties toEntityEquippableComponent. BlockMovableComponentAPIs have been added tobeta.BlockMovableComponent::movementTypeBlockMovableComponent::stickyType
- Renamed
CameraEaseOptionsto justEaseOptionsto forV2.0scripting. - Improved the naming used for the
nameproperty of several custom error classes. - Block custom component event
beforeOnPlayerPlaceis now called when an item usingreplace_block_itemis set to true for V2.0.0 and higher custom components.- In 2.0.0, when using
setCurrentValueof anEntityAttributeComponent, the desired value is checked against theeffectiveMinandeffectiveMax. If the value is out of bounds, an error is thrown.
- In 2.0.0, when using
- Enabled
Player.applyImpulseandPlayer.clearVelocityinbeta, which no longer throw errors.
@minecraft/server-admin
- Updated
transferPlayerto support NetherNet transfers. It now takes either a hostname/port combination or a NetherNet ID.
Block Components
- UV locking will not be supported for geometry using Box UVs if the box sides are not equal, in other words the box has non square UVs. Geometry with per-face UVs and non square faces will be supported.
- UV locking will not be supported if Block Json
format_versionis less than1.19.80.
- Added a parameter to the culling rules schema to disable culling against full and opaque blocks.
conditionfield is now optional.- removed
defaultas a value forconditionfield in the culling rules schema. - added new optional
cull_against_full_and_opaqueboolean field in the culling rules schema.- if not specified, it will be set to
true. - if set to
falseculling against full and opaque blocks will not be considered.
- if not specified, it will be set to
- When custom components v2 experiment is enabled, custom components can be assigned string, array, object, bool, or number:
"components": {
"example_namespace:example_component": "foo", "example_namespace:example_component2": 4, "example_namespace:example_component3": [ "hello", "world" ], "example_namespace:example_component4": true, "example_namespace:example_component5": { "stuff": 4 },}
- Custom components v2 experiment no longer required to use custom components v2.
- Custom components v2 is available in JSON versions 1.21.90 and higher
minecraft:custom_componentsdeprecated in 1.21.90.- The
minecraft:material_instancescomponent will no longer produce a content error if the*material is missing. - Replaced
emitter_intensitywithemitter_particle_countinblock_destruction.jsonandblock_slide.json. This is to go in line with the particle count field in theBlockDestructionParticlesComponent.emitter_intensitywill still be used in the previous versions of these files. culling_layerfield in the block's geometry component has been moved out of experimental.conditionfield inrulesfor culling has been moved out of experimental.alpha_test_to_opaque,alpha_test_single_sided_to_opaque, andblend_to_opaquewill not shift to opaque in the distance.
Camera
- Unlocked over the shoulder is now unlocked by using the
camera_relativecontrol scheme with thefollow_orbitpreset.
- Added integer overflow detection in
/scoreboard players operationfor +=, -=, *=, /= and %=. Original value will be retained when overflow is detected.
Components
- Added the
minecraft:remove_in_peacefulcomponent:- Determines whether an entity should despawn on "Peaceful" difficulty
- Content warnings will log missing texture references for
minecraft:material_instancesblock component. - Added the
minecraft:leashable_tocomponent:- Allows players to leash entities to the owner entity, retrieve those already leashed, or free them using shears.
- Players can leash entities to the owner entity by sneaking and interacting while having entities leashed to themselves.
- The
can_retrieve_fromfield determines whether players can retrieve entities leashed to the owner entity.
- Added new fields to the
minecraft:leashablecomponent:can_be_cut: Determines whether players can cut both incoming and outgoing leashes by using shears on the entity.spring_type: Apresetssubfield that defines the type of spring-like force pulling the entity toward its leash holder.- Available values:
bouncy: Simulates a highly elastic spring that never reaches equilibrium if the leashed entity is suspended mid-air.dampened: Simulates a dampened spring attached to the front of the leashed entity’s collision that reaches equilibrium if the entity is suspended mid-air and aligns with its movement direction.quad_dampened: Simulates four dampened springs connected to the center of each side of the entity's collision that reaches equilibrium if the entity is suspended mid-air and gradually aligns with the leash holder over time.
- Available values:
rotation_adjustment: Apresetssubfield that adjusts the rotation at which the entity reaches equilibrium.
- The
minecraft:input_air_controlledcomponent no longer requiresuse_beta_features. - Added validation for asset references in particle effect Json:
- texture reference in
basic_render_parameters - block references in
minecraft:particle_expire_if_in_blocks - block references in
minecraft:particle_expire_if_not_in_blocks
- texture reference in
- Content warnings will log missing block and biome references in Biome JSON.
- The
minecraft:interactcomponent'sspawn_itemsfield now has ay_offsetsubfield, which allows to adjust the vertical spawn position of items.
- Exposed a new parameter for dedicated server to disallow usage of Vibrant Visuals while connected.
Entity Components
- Added
minecraft:body_rotation_always_follows_headentity component:- Ensures the entity's body is always aligned with the head.
- Does not override the
minecraft:body_rotation_blockedcomponent.
Entity Filters
- Added the new
is_riding_selfentity filter- Returns
trueif the subject entity is riding the calling entity on which the filter is used.
- Returns
- Added the
is_vehicle_familyentity filter, which returns true when the subject entity is riding a vehicle with the specified family.
- Custom Components v2 experiment removed. Custom Components v2 is enabled when using
@minecraft/serverversion2.0.0and above.
Goals
minecraft:rideablecomponent'sdismount_modeis now correctly applied when passengers are forced to dismount by theminecraft:behavior.floatgoal.
- When using Custom Components v2, custom components can be assigned string, array, object, bool, or number:
"components": {
"example_namespace:example_component": "foo", "example_namespace:example_component2": 4, "example_namespace:example_component3": [ "hello", "world" ], "example_namespace:example_component4": true, "example_namespace:example_component5": { "stuff": 4 },}
- Custom components v2 experiment no longer required to use custom components v2.
- Custom components v2 is available in JSON versions 1.21.90 and higher
minecraft:custom_componentsdeprecated in 1.21.90.- Extended
minecraft:wearableitem component to allow hiding players' locations, similar to mob heads and the carved pumpkin.- The new
hides_player_locationboolean field defines whether players are hidden on the locator bar and locator maps when eqipped in the appropriate wearable slot, defined by theslotfield. - The default value of
hides_player_locationisfalse. - All
minecraft:wearableitem components defined previously will have the value ofhides_player_locationdefault tofalse.
- The new
- Added the
query.is_riding_any_entity_of_typeMolang query, which checks whether an entity is riding another entity of any specified type.
Network Protocol
- Added
ActorFlags::BODY_ROTATION_ALWAYS_FOLLOWS_HEAD.
UI
- Added warning pop-up for some Android devices when switching to Vibrant Visuals graphics mode.
- Added a toggle to video settings to enable in-game graphics mode switching. Enabling in-game graphics mode switching may impact texture quality.
Experimental
These additions and changes are accessible by enabling the "Beta APIs" and "Upcoming Creator Features" experimental toggles.
Additions
Technical
API
@minecraft/server 2.1.0-beta
- Added class
PlayerHotbarSelectedSlotChangeAfterEvent. This will be triggered every time the hotbar slot changes. - Added enum
PlayerInventoryType. - Added class
PlayerInventoryItemChangeAfterEvent. This will be triggered every time an item changes in the player's inventory. This includes the 27 inventory slots and 9 for hotbar. - Added
stopSoundandstopAllSoundstoDimensionandPlayer. - Added enum
LiquidSettingsinbeta. - Added optional property
liquidSettingsto scripting interfacesJigsawPlaceOptionsandJigsawStructurePlaceOptionsinbeta. Defaults toApplyWaterlogging. - New
cheatsRequiredproperty onCustomCommandinterface.- If undefined or
true(default istrue), custom command execution requires that cheats are enabled. Iffalse, then the custom command can execute without cheats enabled.
- If undefined or
- Removed
Player.isOp(). - Added read-only property
layerPermissionLeveltoPlayer. - Added property
commandPermissionLeveltoPlayer. - Added
PlayerPermissionLevelenum withVisitor,Member,Operatorvalues. - Added enum
ContainerRulesErrorReasontobeta. Contains the reasons thatContainerRulesErrorcan fail. - Added interface
ContainerRulestobeta. Contains rules that if broken on container operations will throw aContainerRulesError. Container- Added optional property
readonly containerRules?: ContainerRulestobeta. If the rules of the container are broken will throw aContainerRulesError. - Added property
readonly weight: numbertobeta. The total weight of allItemStacksin the container.
- Added optional property
ItemStack- Added property
readonly weight: numbertobeta. The total weight all the items in theItemStack.
- Added property
- Added class
ItemInventoryComponenttobeta. This component will be on all items that contain aminecraft:storage_itemcomponent and will allow access to its container.
@minecraft/debug-utilities 1.0.0-beta
- Added new Debug Drawing feature:
- Added new classes:
DebugArrow,DebugBox,DebugCircle,DebugDrawer,DebugLine,DebugShape,DebugSphere,DebugText. - Added new global object for accessing and using this new feature:
debugDrawer: DebugDrawer.
- Added new classes:
Block Components
- Added field
uv_locktominecraft:geometryblock component behind Upcoming Creator Features experiment.- UV locking will allow faces to have the same texture orientations as the default geometry state, regardless of how
minecraft:transformationcomponent rotates the geometry.
- UV locking will allow faces to have the same texture orientations as the default geometry state, regardless of how
- Added
minecraft:random_offsetcomponent under the Upcoming Creator Features toggle. This allows for blocks to randomly offset like foliage does in the Vanilla game. Example:
{
"format_version": "1.21.80",
"minecraft:block": {
"description": {
"identifier": "test:test_block"
},
"components": {
"minecraft:collision_box": {
"origin": [-4.0, 4.0, -4.0],
"size": [8, 8, 8]
},
"minecraft:random_offset": {
"x": {
// This is the range of possible values we can pick from
"range": {
"min": -4,
"max": 4
},
// This is the equally spaced steps across the given range
// Provide 0 for all possible values in the range
"steps": 16
},
"y": {
"range": {
"min": -4,
"max": 4
},
"steps": 16
},
"z": {
"range": {
"min": -4,
"max": 4
},
"steps": 16
}
}
}
}
- Added
minecraft:movablecomponent under the "Upcoming Creator Features" toggle. This allows for blocks to configure how they should react when moved by a piston.movement_type(Required): Specifies how the block should react when moved by a piston.push_pull: Will allow a block to be pushed by a piston/sticky piston and pulled by a sticky piston (e.g. grass).push: Will allow a block to be pushed by a piston/sticky piston (e.g. glazed terracotta).immovable: Will not allow a block to be pushed or pulled by a piston/sticky piston (e.g. bedrock).popped: Will pop a block when pushed by a piston/sticky piston (e.g. leaves).
sticky(Optional): Specifies how the block should handle adjacent blocks when moved by a piston.none: Default. Will not add any additional behavior.same: Will move adjacent blocks along with it when moved by a piston. It will not move different blocks with"sticky": "same"(e.g. a honey block can move another honey block but not a slime block).- NOTE: This field only works when used with:
"movement_type": "push_pull"
"format_version": "1.21.90",
"minecraft:movable": {
"movement_type": "push_pull",
"sticky": "same"
- Added optional property
liquidSettingsto/place structureand/place jigsawcommands. Defaults toapply_waterlogging.
Components
- The
BlockDestructionParticlescomponent has a new field allowing creators to determine the amount of particles that are generated on the destruction of the block.
- Added optional property
liquid_settingstominecraft:jigsawJSON to allow control over handling liquids when placing structures. Defaults toapply_waterlogging.
Changes
Technical
API
- Custom Command registration will create an alias from the command name without the namespace.
- If the name has already been claimed, then the alias will not be created and a content log warning will appear.
- Removed unused classes:
EntityIterator,EntityTypeIterator,FilterGroup, andPlayerIterator. - Updated class
Container:reverseFindhas been renamed tofindLast.containsnow returns undefined if it fails to find the item.firstEmptySlotnow returns undefined if it fails to find an empty slot.firstItemnow returns undefined if it fails to find the item.findnow returns undefined if it fails to find the item.reverseFindnowreturns undefined if it fails to find the item.
- Updated error messaging when imports can't be found.
- Removed content warning when a custom component was registered without closures for custom components V2:
- This allows
data-onlycomponents to be registered in script and added to blocks and items that only contain parameters without functionality.
- This allows
@minecraft/diagnostics
- Updated
SentryOptionsproperties:dsn: Updated to allow the usage ofSecretString, allowing for secrets from@minecraft/server-adminto be used to initialize Sentry.- (new)
maxBreadcrumbs: The maximum number of breadcrumbs to store and report per error event to Sentry. Default is 20, supported values range from 0 (no breadcrumbs) to 100. - (new)
sampleRate: A number between 0 and 1 that indicates the percentage of events that should be sent to Sentry. For example, a value of 0.5 means that 50% of events will be sent. Default is 1 (100% of events). 0 means no events will be sent. - (new)
debug: When set totrue, additional content logging from the Sentry system will be enabled. Defaults tofalse.
- The
/controlschemecommand no longer requires the "Experimental Creator Camera" toggle.- The
camera_relative_strafecontrol scheme remains experimental and still requires the toggle.
- The
- Deprecated
align_target_and_camera_forward. Usecontrol_schemeto switch between control schemes instead.
World generation
- Namespaces can now be used in template pool element location and jigsaw block identifiers.
Fixes
From released versions before 1.21.60
- MCPE-21743 – Punching a leash knot uses the generic punch sound
- MCPE-35647 – Blazes attack range too low
- MCPE-64477 – Can't use various items while looking at interactive blocks while sneaking
- MCPE-68841 – A Little text error.
- MCPE-74632 – Nether fossils spawn infrequently
- MCPE-79331 – Text Background Opacity doesn't work for most text
- MCPE-80066 – Crimson and warped roots can be lit on fire and burn
- MCPE-80319 – Parrots imitate mobs way too often
- MCPE-88837 – Piglin brutes do not despawn in Peaceful mode
- MCPE-89549 – No stray and wither jockeys
- MCPE-114701 – Magma cubes and slimes jump when changing goals
- MCPE-127677 – Placing Water Onto A Spore Blossom Deletes The Spore
- MCPE-166103 – Piglins, brutes and hoglins of the bastions doesn't drop xp when killed
- MCPE-166394 – Slime and Magma Cube can still attack player during death animation
- MCPE-172657 – A player sits in the boat too high (Java parity)
- MCPE-174465 – Player is teleported to the void when using an end gateway
- MCPE-174826 – Sponges can absorb water from waterlogged barriers
- MCPE-174857 – Some Wither Skeleton related sounds still outdated
- MCPE-177722 – Long
/tellrawCommands cause the Game to Freeze when run in Chat - MCPE-178295 – Lava disappears when placed or dispensed into a waterlogged block
- MCPE-181002 – Trident isn't grouped next to tools/weapons in the creative tab
- MCPE-184566 –
/playsoundleaks across dimensions - MCPE-185829 – Wind Burst now launches much less blocks
- MCPE-187171 – Bundle tootip was overlaps with the item tooltip
- MCPE-187962 – Storage management UI does not allow access to all controls for mobile devices
- MCPE-188353 – Unable to put specific amount of items inside of a bundle using touch controls
- MCPE-188934 – When playing splitscreen and second player looks up then down, the clouds for the first player disappear
- MCPE-189370 – Pressing up on the left thumbstick or D-pad while in the Graphics Mode dropdown menu takes the user to the top of the Video Settings menu
- MCPE-189501 – Attacking a mob or player while sprint jumping randomly removes all of the player's momentum, sometimes even teleporting the player backwards
- MCPE-190647 – Item breathing animation is not smooth when a world's Days Played count is high
- MCPE-190716 – Arm detaches from body and shield in off-hand slot floats above shoulder when game is paused
- MCPE-191029 – Block breaking animations do not stop after pausing the game
- MCPE-194284 –
/testforblockignoring block states after 1.21.70 update - MCPE-194367 – The top layer of the Snowy Kingdom Preset uses full snow blocks instead of snow layers
- MCPE-194838 – Frozen Peaks, Jagged Peaks & Snowy Slopes replace all water under Y=63 with ice
- MCPE-199213 – New items added in 1.21.80.25 preview have extra spaces in their names
- MCPE-199256 – Vibrant Visuals: The adjust brightness slider doesn't work properly
- MCPE-200698 – Vibrant Visuals: Textures turn pink after suspend and resume, opening Settings, or exiting world
- MCPE-200797 – Player shadow appears on happy ghast face
- MCPE-201604 – Ghasts and Happy Ghasts are not affected by splash potions that hit their top
- MCPE-201608 – Happy Ghast takes Friendly Fire Damage from Players standing on top
- MCPE-201809 – Vibrant Visuals: Night Vision effect is extremely dark instead of bright
- MCPE-201832 – Hitting blocks while swimming will slow you down
- MCPE-201849 – Ghast stays completely still when shooting fireballs with the Drop 2 2025 experiment enabled
- MCPE-201851 – Happy ghast can be pushed too easily
- MCPE-201984 – Vibrant Visuals: Standing near a lightsource illuminates the sky
- MCPE-203239 – Vibrant Visuals: Water disappears above Y coordinate 190
- MCPE-203972 – Vibrant Visuals: Screen appears black
- MCPE-204062 – Vibrant Visuals: Water has blue fog trail following it
- MCPE-206642 – Vibrant Visuals: Static water looks clearer than flowing water
- MCPE-206924 – Vibrant Visuals: Reflections flicker severely on higher than default FOV
- MCPE-212378 – Baby Happy Ghast does not grow up naturally
- MCPE-212398 – Vibrant Visuals: Deep black pixels trigger graphical artifacts when the player stops moving if TAAU is enabled
- MCPE-212409 – Vibrant Visuals: Artifacts on clouds when viewing them up close
- MCPE-212932 – Music immediately cuts off instead of fading out when exiting the world with pause feature disabled
- MCPE-216786 – Happy Ghast will spin when tied to fence
- MCPE-216825 – The
faceLocationproperty of custom component player interact events is not relative to the block - MCPE-216867 – You no longer start to swim automatically when you double tab forward button to sprint jump into water
- MCPE-217394 – "Game is paused" text can overflow
- MCPE-217551 – Player Locator Bar doesn't show player locations correctly in split screen multiplayer
- MCPE-218740 – Happy ghast is not scaled down properly when harnessed
Other
- Fixed a bug where directional lighting cut out 8 blocks under the water surface while using Vibrant Visuals.
- Non-waterlogged Dried Ghast blocks now only play ambient sounds when on top of a Soul Sand or a Soul Soil block.
- Fixed issue where jungle leaves did not become transparent when setting all leaf types to be transparent.
- Fixed crash that would sometimes occur when using command blocks.
- Players mounted on the Happy Ghast no longer appear invisible to other players when the Happy Ghast is immobile.
- Players mounted on the Happy Ghast no longer have their hitbox displaced when the Happy Ghast is immobile.
- Happy Ghast no longer becomes a platform when a Player is standing next to it.
- Fixed bug where piloted Happy Ghast could be moved while non-riding players were standing on it.
- Fixed a bug where Happy Ghast would keep looking at you after no longer being tempted.
- Bundle UI now correctly disappears when switching Inventory tabs with controller input.
- Tapping on the Bundles Tooltip on Touch devices no longer interacts with the UI behind it.
- Fixed an issue where only changing the access of PlayStation friends to your world would not be saved when exiting the menu.
- Fixed incorrect warnings for using valid older block ids with
minecraft:block_placercomponent. - Fixed
query.healthin resource packs to return 0 for the Wither once it has died. - Fixed the Nether having overworld fog in Vibrant Visuals.
- Dispensing a lava bucket on a waterlogged Dried Ghast no longer duplicates the Dried Ghast.
- Fixed an issue where swapping item slots during an attack against a mob would re-select the original item slot used during the attack instead of staying on the new inventory slot item.
- Fixed a bug in Vibrant Visuals where materials with certain properties rendered black.
- Mobs will no longer clip through blocks sometimes when viewing them at a distance when they auto step up a block.
- Pigs saddled by hand no longer drop two saddles when killed. (All pigs saddled by hand between 1.21.70 and now will still drop their duplicated saddles on death.)
- Fixed a bug with the
minecraft:geometrycomponent where the full block geometry identifierminecraft:geometry.full_blockwas being ignored for several behaviors, including:- Mob spawning (mobs with custom spawn rules can now spawn on blocks using full block geometry)
- Chest obstruction (blocks with full block geometry will now obstruct Chests)
- Grass and Farmland survival (Grass and Farmland will turn into Dirt with a block using full block geometry above them)
- Nylium survival (Nylium will turn into Netherrack with a block using full block geometry above it)
- Vine growth (Vines will now spread to blocks using full block geometry)
- Breathability (Mobs and actors can no longer breathe in blocks using full block geometry)
- Fixed incorrect warning for using valid entity with event identifier in
minecraft:entity_placercomponent. - Fixed
query.healthto work for the Wither to properly reflect the elapsed ticks since it started dying. - Jigsaw structures being placed in water no longer replace water incorrectly.
- Harness is no longer invisible on a Happy Ghast when equipped by a Dispenser.
- Empty open Bundle icon now renders correctly when Bundles are tapped with Touch Controls.
- Marking read only structures for deletion along with editable ones no longer disables the delete button.
- Saving a large structure from a selection on the Structure Panel no longer makes the game unresponsive.
- Fixed projectiles not being fired in the correct direction when using custom cameras and touch input.
- Using a custom equippable block item in creative mode will no longer duplicate the item and equip it; it will simply place the block in the world.
- Fixed an issue with Leather armor having a stripe of emissive across the texture.
- Fixed a z-fighting issue between water and leaf blocks in Vibrant Visuals.
- Fixed an issue where Vibrant Visuals would sometimes apply to worlds that do not correctly support it.
- Fixed Enderman held blocks not being shaded correctly in Vibrant Visuals.
- Fixed an issue with moving blocks (e.g. blocks held by Endermen, TNT inside of minecarts) not casting shadows in Vibrant Visuals.
- Fixed a crash happening on PS5 when loading a world with leashed entities.
- Fixed a bug where Parrots imitating a Drowned used Zombie sounds.
- Fixed bug where sliders move super fast when using gamepad. Added a timeout to avoid this problem.
- Fixed crash when blocks that specify non-existent textures as
carried_texturesare held in hand. - Fix for incorrect normals and/or crashes when holding certain items in hand with Vibrant Visuals enabled.
- Fixed an issue where entities are rendering and animating twice.
- Fixed a crash with the Debug Drawing system after using the
/reloadcommand. - Fixed an issue where Debug Drawing primitives wouldn't be visible after using the
/reloadcommand. - Fixed an issue where Debug Drawing primitives wouldn't be visible for new players joining the world.
- Fixed the
minecraft:follow_orbitcamera not having the correct control scheme in its allow list. - The touch screen d-pad control now shows the correct buttons when using camera relative control schemes.
- Fixed sculk vein block looking small and elongated when held or in an item frame.
- Now the cold cow variant has the correct mirroring of its horn texture.
- Flying mobs no longer make footstep sounds when moving close to the ground.
- Happy Ghasts will now correctly detect players on a different mount on top of them.
- Fix a crash in split-screen mode when a player would destroy a chest or book an other player had open.
- Fixed an issue where a resource pack error could be encountered when transfering between servers that use different versions of the same resource pack.
- Fixed an issue where downloading server resources would infinitely hang if another device requested to download the same resources at the same time.
- Fixed blocks in minecarts not being lit properly.
- Fixed a crash that could occur when a block's textures are configured to point to an empty atlas entry.
- Fixed incorrect content warnings for missing block textures in
minecraft:material_instancescomponent. - Fixed issue with the
player_relativecontrol scheme that made it really hard to travel directly forward or directly backwards. - Fixed an issue where the player's head would sometimes jitter when using certain control schemes.
- Fixed the
camera_relative_strafecontrol scheme. - Fixed issue with dried ghast block where replacing a dried ghast block in the same location would keep the random tick of the old, removed block, causing it to age faster than expected.
- Fixed a bug where entities that should not be moving were moving slightly.
- The back faces of transparent items held in hand, like stained glass, are no longer visible in Vibrant Visuals.
- Clouds no longer have a pink or yellow tint, during sunrise and sunset respectively, in Vibrant Visuals.
- Fixed inconsistent pixels on the pale oak boat and pale oak boat with chest items to match other boat items.
- The green harness item no longer uses the gray harness texture when Vibrant Visuals is enabled.
- Happy ghast and ghastlings no longer z-fight with adjacent blocks.
- Ghastlings are no longer rotated sideways when riding boats or chest boats.
- Happy ghast and ghast shadows are no longer cast on their tentacles when Fancy Graphics are enabled.
- Ropes wrapping a happy ghast are now rendered when certain entities are attached to it and it is harnessed.
- Cows and mooshrooms no longer render with four ropes when leashed to a happy ghast.
- Ghasts can no longer spawn in areas that are too small, preventing suffocation on spawn.
- Large entities attached by a leash to the happy ghast now properly render with four leashes when using simple graphics.
- The player dot now correctly decreases to the smallest size for the stationary player when another player moves linearly away from them.
- Fixed an issue where some on-screen UI elements would let the user interact with the world under them.
- Fixed a bug where the
includeLiquidBlocksproperty onBlockRaycastOptionswould not correctly result in hits on flowing water. This affects the following API methods in all versions:entity.getBlockFromViewDirection,dimension.getBlockFromRay,dimension.getBlockBelow, anddimension.getBlockAbove. - Fixed a crash when adding or changing priority of resource packs in the create new world screen.
- Terrain matching jigsaw template pools will no longer create floating islands.
- Fixed ambient lighting levels in the Nether in Vibrant Visuals.
- Fixed fog settings in warm and humid biomes in Vibrant Visuals.
- Fixed black screen issues on some Android devices when in Vibrant Visuals.
- Fixed items with empty icon textures displaying as garbled pixels when held in hand.
- Fixed the default control schemes for all cameras.
- Fixed the leash attach positions for the parrot and the glow squid.
- Fixed a crash that could occur when viewing the friends drawer.
Video
- Updates for Creators
References
- ↑ "Minecraft: Bedrock Edition 1.21.90 - Chase the Skies" – Minecraft Feedback, June 17, 2025.
