1.21.6, the first release of Chase the Skies, is an upcoming game drop that is scheduled to release on June 17, 2025. The update was originally announced at Minecraft Live 2025 on March 22, 2025.[2][3][4][5]
Additions[]
Blocks[]
- Dried Ghast
- Can be found in the Nether in Nether Fossil structures
- Is crafted with a 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 the state
- Emits a vibration frequency of 11 when its block state changes
- 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
- Piglins can now give Dried Ghast Blocks when bartered with
Items[]
- Harness
- Harness is a new item that can be equipped on a Happy Ghast to allow players to ride it
- It is 16 new items, one for each color
- Crafted from 3 Leather, 2 Glass blocks and 1 Wool, the Harness will have the same color as the Wool block used when crafting:
Ingredients | Crafting recipe |
---|---|
Leather + Glass + White Wool |
- Can be re-dyed
- 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
- Music Disc
- Add new music disc "Tears" by Amos Roddy
- Added the following new music tracks by Amos Roddy:
- Below and Above
- Broken Clocks
- Fireflies
- Lilypad
- O's Piano
- Tears
- These new tracks will play in a variety of biomes in both survival and creative, as well as in the main menu
- The Ghast now drops the "Tears" Music Disc when killed by a Fireball deflected by a Player
- Added the following new music tracks by Amos Roddy:
Mobs[]
- Happy Ghast
- The adult Happy Ghast is a new flying mount that can carry up to four players
- Grows up from a Ghastling after about 20 minutes (or faster if the Ghastling is fed Snowballs)
- Can be equipped with a Harness and then be mounted by up to 4 players
- Tempted by Snowballs and Harness
- Harness tempting only works if the Happy Ghast is unharnessed
- Has no panic behavior when taking damage
- Cannot be bred
- Slowly regenerates health, with regeneration speeding up during rain, snow or when flying at the same height as clouds are rendered
- The first player that mounts the Happy Ghast will control it, sitting in front of the Happy Ghast, just above its face
- Pressing the forward key will make the Happy Ghast fly in the direction the player is looking
- Pressing the back key will make the Happy Ghast fly in the opposite direction the player is looking
- Pressing the left and right keys will strafe the Happy Ghast in the respective direction
- Pressing the jump key will make the Happy Ghast fly directly up
- Pressing the sneak key will make the player dismount the Happy Ghast
- When a player mounts, the goggles on the Happy Ghast go down to cover its eyes, indicating that it now can be controlled
- Players mounted after the first player piloting the Happy Ghast are placed in slots on each side of it, starting clockwise from the first player
- Pressing crouch button dismounts the player on top of the Happy Ghast
- If the Happy Ghast detects players on top of it, it then ceases all movement and aligns to the closest cardinal horizontal direction
- This happens regardless of it having a Harness equipped or not
- 3rd person camera is moved back when player is mounted on the Happy Ghast
- When there are no players mounted or walking on the Happy Ghast, the goggles go up and the Happy Ghast starts to roam around the home position
- If players dismount midair, the Happy Ghast will descend towards the ground before it resumes roaming
- Cannot enter boats
- Idles around within 64 blocks from its home position in the similar way as the Ghastling
- If wearing a Harness, the Happy Ghast idles closer to the home position (within 32 blocks)
- The Happy Ghast will try to stay close to blocks when roaming on its own
- Ghastling
- A young version of the Happy Ghast mob.
- Spawns from a Dried Ghast block that has continuously been waterlogged for about 20 minutes.
- After spawning, the Ghastling will try and follow:
- Players within a 16-block radius or
- An adult, non-aquatic passive mob (and some neutral mobs) within a 16-block radius
- If no player or suitable mob is close around the Ghastling will idle around within 32 blocks from its home position (where it spawned or last was interacted with).
- It will reset its home position if it is moved more than 16 blocks away from the border of its home area.
- Can be tempted and fed using Snowballs.
- Will grow up into a Happy Ghast after about 20 minutes (or faster if fed Snowballs).
Locator Bar[]
The Locator Bar works by a server-controlled Waypoint system. Waypoints are received by Players, and connections between Waypoints and Players are managed by the multiplayer server.
- The Locator Bar is a new default UI element for players that displays the direction of other players in the world in multiplayer.
- If there are no other players in the world the experience bar will display as normal, otherwise if another player is in the world (and that player is not hiding) then the experience bar will appear when experience is gained, otherwise the Locator Bar will display in the same area.
- Multiplayer servers can toggle the Locator Bar with the
locatorBar
gamerule- This allows servers to manage Waypoints and their connections with Players
- By default, all Players transmit a Waypoint from themselves, and all Players receive all Waypoints; allowing players to locate other players in multiplayer
- Individual Players can have their transmission and receive ranges controlled by the
waypoint_transmit_range
andwaypoint_receive_range
attributes
- Individual Players can have their transmission and receive ranges controlled by the
- Facing other players within a 120 degrees range will display those players as colored indicators on the Locator Bar
- Other players that are above/below the screen will also display an up/down arrow with their indicator
- The indicator will change to different sized icons depending on how far away the other Player is
- Colored indicators are randomized for each player
- Servers can modify the colors of indicators with the
/waypoint
command- eg:
/waypoint modify @s color red
to set an indicator to red
- eg:
- Players can hide by crouching, wearing a mob head or a Carved Pumpkin, or using a Potion of Invisibility
- Players in Spectator Mode are not visible on the Locator Bar
- However, Spectating player are visible to each other
- Players on a team will override their default indicator color with their team color
- Player Changes
- Crouching will hide the player, preventing them from appearing on the Locator Bar of other players
- Spectators are only visible to other spectators on the Locator Bar
- Item Changes
- The following items will hide players when worn in the head slot:
- Potion Changes
- Using a Potion of Invisibility will also hide players from the Locator Bar
Advancements[]
- Stay Hydrated!
- Husbandry Advancement when a Dried Ghast Block is placed into Water
- Heart Transplanter
- Adventure Advancement that is unlocked when a player places a Creaking Heart with the correct alignment between two Pale Oak Log blocks
Changes[]
- Clouds now exist all the way to the horizon
- Fog was tweaked for improved atmospheric perspective
- Fog is now applied to 3d hud elements such as first person player hands and items in hands
- It now becomes foggier when it rains
- The test framework will no longer try to restart running tests after a server restart
- Updated the main screen panorama
- Updated the pattern of clouds in the sky, to look less scattered.
Items[]
- While gliding, using a firework will only be used as a boost even if placed on a block
Ingredients | Crafting recipe |
---|---|
String |
- Leashes are now rendered twice as thick, to match bedrock
- Leads can now be used to leash two mobs together
- Sneak-interact on any mob while holding a bunch of leashed mobs will leash these mobs to the interacted entity
- You now cannot leash anything to itself
- If the re-leashing an entity would result in immediate leash snapping due to distance, the re-leashing would not happen
- Leads can be snipped from an entity when interacting them with Shears
- This applies to its own leash connection as well as all entities attached to it
- Dispensers can now snip leads from entities in front of them when they are equipped with Shears
- Improved leash mechanics, with reworked leash physics, allowing for more stable leash connection, especially when leashed entities are not on ground
- When dragged on the lead, leashed objects will now orient themselves towards the leasher
- Using a firework rocket when flying with leashed entities will now break the leash connections
- When leashing an already leashed mob, the current lead will now snap and a player will re-leash the object to themselves
- You cannot steal leashed entities from other players
- Interactions with a Leash Knot and Fence Blocks have changed:
- When interacting with a Leash Knot or a Fence Block, if there are any player-leashed entities in range of the leash knot, they will be re-leashed to the Leash Knot or a Fence Block
- In case of attaching of mobs fails due to distance or there is nothing to attach, the player will now transfer all fence leashed entities to itself
- If there is nothing left attached to the Leash Knot, it disappears
- Sneak-interact can only result in attaching of the player mobs to the fence
- Interacting with Shears or punching the Leash Knot will result in all current connections broken
- Boats and large mobs that can be leashed, but cannot fit in the boat (Horses, Donkey, Mule, Camel and Sniffer) can now be leashed in a special 4-leash configuration to the Happy Ghast
- Happy Ghast will also present a custom layer when its leashing something using a quad connection
- Leashed in quad connection are now rendered without slack
- Leash snapping distance has been changed from 10 to 12 blocks
- The distance between centers of entities bounding boxes, rather than their feet is used to determine the distance between two leashed entities
- Happy Ghast leash is now longer - with free roaming distance of 10 blocks and leash snapping at 16 blocks
- Saddles
- Saddles can now be crafted with 3 Leather and 1 Iron Ingot
- Recipe unlocks when a player picks up their first Leather
Ingredients | Crafting recipe |
---|---|
Leather + Iron Ingot |
- Some loot tables have had saddles removed from them and replaced with 1-5 Leather:
- Monster Room chests
- Ancient City chests
- Desert Pyramid chests
- Jungle Pyramid chests
- Stronghold altar chests
- Shears
- Shears can be used to remove Saddles, Horse Armor, Harnesses and Carpets from the mobs they are equipped on.
- Unless the mob has a rider
- Unless the player is crouching
- Saddles cannot be removed from Ravagers using Shears
- Dispensers with Shears cannot remove Saddles, Horse Armor, Harnesses or Carpets equipped on mobs
- Shearing Saddles, Horse Armor, and Carpets emits a vibration frequency of 6, along with the Unequip frequency of 4
- Splash Potions
- Splash Potions distance to affected entities now depends on the closest distance between the entity hitbox and the splash potion hitbox where it landed
- This means that if an entity is hit directly by the splash potion, it will receive the full effect of the potion
- If the entities are grouped together, they will receive the same effect strength
Mobs[]
- The old 16x pixel textures of the Ghast is now changed to 32x pixel textures, to look more similar to its passive counterpart.
- Increased the third-person camera distance when spectating or riding Ghasts, Ender Dragons, and Giants
- Wolves, Sheep and Pigs now have their legs mirrored
- Spectators will now teleport together with, but stop spectating, entities that move to other dimensions
- Horses, Donkeys, and Mules can now be fed carrots to heal, grow, and improve their temper
Projectiles[]
- Projectiles now have a target tolerance margin that changes over time
- Previously, all projectiles had a fixed 0.3 blocks target tolerance margin
- 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 previous 0.3 blocks margin
- This allows for better precision close to the shooting player or entity, while still allowing for some collision leeway when the projectile is further away
Realms[]
- Changed the layout of the Realms configuration screen to use tabs
- A Worlds tab containing changes to any of the world slots, creating new worlds and changing their settings
- A Players tab to manage the players that have access and their level of access to the Realm
- A Subscription tab to manage the Realms subscription
- A Settings tab to change the settings of the Realm
- Introduced a Region Preference setting that allows for more granular control over what region a Realm is started
- Changed wording for
Close
/Open
Realm toTemporarily close
/Reopen
Realm - Added the Realms logo to the Realms loading screens
- Added region information when connecting to a Realm
Music and Sound[]
- Music now plays even when the game is paused
- Added an option to the Music & Sound settings that allows players to change how frequently music plays while in a game world
- Added an option to the Music & Sound settings that enables a music toast to be shown whenever a song starts playing
- With this option enabled, the song that is currently playing will be seen at all times in the top left corner of the in-game Pause Menu
- The following sound categories have been renamed:
- Friendly Creatures -> Friendly Mobs
- Hostile Creatures -> Hostile Mobs
- Added new sound volume category called "UI" for sounds played by UI elements, like button clicks
Ambient Desert Block Sounds Changes[]
- Ambient sand sounds no longer require sky access to play
- Ambient sand sounds now have a slightly decreased chance to play
- Sand blocks no longer trigger ambient wind sounds
- Terracotta blocks no longer trigger ambient sand sounds
- Terracotta blocks no longer trigger ambient wind sounds
- Short Dry Grass and Tall Dry Grass can now trigger ambient wind sounds when above 2 Sand, Red Sand or Terracotta blocks
- Dead Bush ambient sounds now have a slightly increased chance of playing
Technical Changes[]
- Pressing F3 + V now prints client-side version information
- All JSON files (in worlds, packs, configuration, etc.) are now parsed in strict mode
Data Pack[]
- The data pack version is now
80
. - Dimension Type definitions have a new optional field,
cloud_height
that indicates on what y-level the clouds start in the dimension --quickPlaySingleplayer
command line argument can now be used without an identifier to launch into the last played world- Users will now be prompted for confirmation before executing a command from the
run_command
click action in books and chat if the command can't be parsed or requires elevated permissions (i.e. higher than 0) - The
minecraft:custom
click event has been expanded to carry a full NBT tag
- Attributes
- Added attribute
camera_distance
- Default value:
4.0
- Modifies the distance at which the camera is placed away from the player or spectated entity when in a third-person view
- If the entity being ridden has a larger
camera_distance
attribute, that distance will be used - This distance is multiplied by the
scale
attribute to get a final target camera distance
- Default value:
- Added
flying_speed
attribute for Ghasts- Ghasts now have a
flying_speed
attribute that affects their flying speed
- Ghasts now have a
- The
scale
attribute for the Happy Ghast now has a limit of1.0
- Added attribute
waypoint_transmit_range
andwaypoint_receive_range
- Default:
0.0
, Minimum:0.0
, Maximum:60000000.0
- Players have a default transmission and receive range of
60,000,000
- Mobs with a transmission range above zero will send waypoint packets to nearby receivers that are within that range
- Similarly, receivers only receive waypoints that are inside their receive range (and receive nothing if that range is zero)
- Examples:
/attribute @s minecraft:waypoint_transmit_range base set 0
will prevent a player from transmitting (hiding them)/attribute @s minecraft:waypoint_transmit_range base set 80
will only let a player transmit up to 80 blocks (hiding them from players further than that)/attribute @s minecraft:waypoint_receive_range base set 0
will prevent a player from receiving (turns off their Locator Bar)/attribute @s minecraft:waypoint_receive_range base set 120
will only let a player see Locator Bar dots that are within 120 blocks (hiding all players further than that)
- Default:
- Commands
- Added
/datapack create
- Creates new empty directory data pack for current world
- Supported pack version is always equal to one supported by game
- Available only to server owners
- Syntax:
/datapack create <id> <name>
id
: new pack name, must be a valid directory namename
: text component to be placed indescription
inpack.mcmeta
- Added
/dialog
- New command has been added to show dialog to clients
- Syntax:
/dialog show <targets> <dialog>
- show dialog to player(s)<targets>
- player name, UUID or a player selector<dialog>
- a namespaced ID fromminecraft:dialog
registry or inline dialog value as described above- Returns number of players in
targets
argument
/dialog clear <targets>
- clean dialog for player(s), if they have any visible<targets>
- player name, UUID or a player selector- Returns number of players in
targets
argument
- Modified
/playsound
- Added new category
ui
- Sounds in this category will continue playing when paused, similarly to
music
- Added new category
- Added
/version
- No arguments
- Prints current version information on server side
- Available in singleplayer or for server operators
- Added
/waypoint
- For querying and modifying waypoints.
/waypoint list
/waypoint modify <entity-selector> color <color>
/waypoint modify <entity-selector> color hex <hex-color>
/waypoint modify <entity-selector> color reset
/waypoint modify <entity-selector> style <waypoint_style/resource>
/waypoint modify <entity-selector> style reset
- Arguments:
entity-selector
: For selecting entities that are transmitting as waypoints (seewaypoint_transmit_range
attribute)color
: Overrides the Locator Bar icon color for this waypointhex <hex-color>
arguments are in web format (RRGGBB)- Red is either
hex F00
orhex FF0000
- Cornflower blue is
hex 6495ED
/style
: For changing the icon spriteset and selection distances/set <waypoint_style/resource>
changes the style to a specific asset under/waypoint_style/
reset
will restore the default icon behavior of the Locator Bar
- Red is either
- Waypoint Styles
- These define custom icons to be displayed on the Locator Bar and are within the
waypoint_style/
asset directory. - The default implementation is as such:
- These define custom icons to be displayed on the Locator Bar and are within the
- For querying and modifying waypoints.
{ "near_distance": 128, "far_distance": 332, "sprites": [ "minecraft:default_0", "minecraft:default_1", "minecraft:default_2", "minecraft:default_3" ] }
near_distance
andfar_distance
are optional and default to the values128
and332
respectively.far_distance
distance must be greater thannear_distance
- Each sprite is searched within the prefix of
hud/locator_bar_dot/
(the directorytextures/gui/sprites/hud/locator_bar_dot
).
- Data Components
attribute_modifiers
Item Component- Added optional
display
field toattributes_modifiers
entries - There are 3
display
types:default
: Current behavior of showing the calculated attribute modifier values on the tooltiphidden
: Does not show the attribute modifier entryoverride
: Replaces the shown attribute modifier text- Contains a single field
value
for the text contents to show for this attribute modifier entry
- Contains a single field
- Added optional
equippable
Item Component- Added optional field
can_be_sheared
(boolean)- If
true
, players can use Shears to remove this equippable item from a target mob by right-clicking, provided all other shearing conditions are satisfied - If not specified, it defaults to
false
- If
- Added optional field
shearing_sound
(sound event)- It's a sound event that plays when the equippable item is sheared
- If not specified, it defaults to the
item.shears.snip
sound event
- Added optional field
painting/variant
Item Component no longer accepts inline variants
area_effect_cloud
Entity Data- The
Particle
field has been renamed tocustom_particle
, and now always functions as an exact override for the default coloredentity_effect
particle- The field will not be written if no override is specified
- The color will no longer be inherited from the potion contents when specifying the
entity_effect
ortinted_leaves
particle
- The
- Added
home_pos
andhome_radius
fields to all mobs- Mobs with set home position will limit their pathfinding to stay within the indicated area
- Some mobs, like Bats, Slimes, Magma Cubes, Phantoms and Ender Dragons may ignore it
- Interacting with leashes or riding may change the home position of the mob
tnt
Entity Data- The entity that primed the TNT is now stored in an optional
owner
field (UUID of Living entity)
- The entity that primed the TNT is now stored in an optional
vex
Entity Data- The owner of a Vex is now stored in an optional
owner
field (UUID of Mob)
- The owner of a Vex is now stored in an optional
- Dialogs
- Added a way to display simple modal dialogs to a user
- Dialogs are an experimental feature
- Every dialog can have inputs and can submit information
- Dialogs are stored in a
minecraft:dialog
registry, but can also be defined inline - A new keybind called "Quick Actions" has been added to allow accessing content-configured dialogs
- To avoid user confusion, dialog screens are marked with a warning sign next to the title
- Clicking on this warning leads to a dialog that explains to user that this screen is provided by custom content
- It also gives user an option to leave current world to avoid them being locked in infinite loop of dialogs
- If a new dialog is received by the client while warning screen is visible, it will not replace it, but when user clicks the "Back" button, the new dialog will be restored instead
- Dialogs can be displayed by server in
play
andconfiguration
connection phases- However, only inline registries are allowed in
configuration
, since registries are not yet available in that phase
- However, only inline registries are allowed in
- Dialogs always close after user selects any action
- Dialogs can configure if they pause the game and if they close after an action is taken
- Dialogs by default will also close after Escape key is pressed
- When this happens, dialog will run action specific to dialog type described as "exit action" below
- This behavior is configurable
- When dialog screen is closed, game goes back to previously displayed non-dialog screen or back to gameplay
- That means that new dialogs always replace already opened ones, if any
- Dialogs screens will pause the game in singleplayer mode
- Dialogs can be configured to be accessible from Pause menu
- This replaces and expands "Server Links" button added in previous versions
- Most dialogs follow a common layout, however exact contents depend on type:
- Header with title and warning button
- Body elements (labels, inputs, buttons and submit actions), scrollable if needed
- Optional footer, contains main buttons and submit actions
- The order of elements is:
- Body
- Inputs
- Actions
- Developer's Note: Dialogs are not supposed to fully describe any in-game UI, but just to allow custom content to display simple messages and get input from users. This feature is intentionally limited to match that use case.
- Dialog Description Format
- Dialogs are stored in
minecraft:dialog
registry that can be provided by a datapack - Fields:
type
- one of dialog types fromminecraft:dialog_type
registry<type-specific>
- see below
- Common Dialog Fields
- Most dialog types share some fields. To avoid duplication, they are listed in this section
- Fields:
title
- screen title, text component- Should be always visible on screen, no matter the specific type
external_title
- name to be used for a button leading to this dialog (for example from Pause screen), optional text component- If not present,
title
will be used instead
- If not present,
body
- optional list of body elements or a single element, see belowcan_close_with_escape
- can dialog be dismissed with Escape key, defaulttrue
pause
- if the dialog screen should pause the game in single-player mode, default:true
after_action
- an additional operation performed on the dialog after click or submit actions, default:close
- After every action the dialog will always evaluate the contents of the
after_action
field close
- closes the dialog and returns to the previous non-dialog screen (if any)none
- does nothing, i.e. keeps the current dialog screen open- only available if
pause
isfalse
to avoid locking the game in single-player mode
- only available if
wait_for_response
- replace the current dialog with a "Waiting for Response" screen- this option is intended to prevent users from sending multiple actions on slow connections
- servers are expected to eventually replace this screen with a new dialog
- to avoid accidental locking, a "Back" button will become active after 5 seconds
- clicking this button will continue as if the dialog was closed (i.e. the game returns to the previous non-dialog screen, if any)
- The "Waiting for Response" screen will unpause the game in single-player mode to avoid locking the game
- this option is intended to prevent users from sending multiple actions on slow connections
- After every action the dialog will always evaluate the contents of the
- Common Button Data
- Most actions in dialog types share following fields that describe appearance of a button associated with that action:
label
- text componenttooltip
- optional text component to display when button is highlighted or hovered overwidth
- width of the button, positive integer between1
and1024
(inclusive), with default150
- Most actions in dialog types share following fields that describe appearance of a button associated with that action:
- Action Types
- All existing
click_event
actions (except foropen_file
) are included as dialog action types. - Uses same format as
click_event
on text components (but withaction
replaced withtype
) For example, when usingshow_dialog
, entry for action button will look like:
- All existing
- Dialogs are stored in
{ "label": "some label", "action": { "type": "show_dialog", "dialog": "some:id" } }
minecraft:dynamic/run_command
Action Type- This action will build a
run_command
event using a provided macro template - The macro will be expanded with string values from all inputs
- For example, if the macro template is
some_command $(some_input)
, the string value from the input withkey
ofsome_input
will be used for the template expansion - Inputs not used in macro will be ignored, while macro parameters not matching any inputs will be replaced with an empty string
- Fields:
template
- a string with a macro template to be interpreted as a command
- This action will build a
minecraft:dynamic/custom
Action Type- This method will build a
minecraft:custom
event using all input values - All input contents will be sent together inside a compound tag, with tag value of each input put under id from
key
field of that input - Additional static fields can be added to payload
- Fields:
additions
- fields to be added to payload, optional compound tagid
- namespaced ID
- This method will build a
- Click Action
- Common object used in dialogs to represent clickable action on a dialog
- Fields:
- Common button data (see above)
action
- an action to perform when button is clicked, optional object with fields:type
- value fromminecraft:dialog_action_type
registry<type-specific>
- see below, depends on type
- Dialog Types
minecraft:confirmation
- A simple screen with two actions in footer
- Exit action: same as
no
action - Fields:
- Common dialog fields (see above)
yes
- click action (see above) for positive outcomeno
- click action (see above) for negative outcome
minecraft:dialog_list
- A scrollable list of buttons leading directly to other dialogs, arranged in columns
- Titles of those buttons will be taken from
external_title
fields of targeted dialogs - Screen also has button in footer that runs exit action and closes the screen
- Label will be
gui.cancel
if dialog has defined exit action andgui.back
if it has no side effects - Exit action: defined in
on_cancel
field - Fields:
- Common dialog fields (see above)
dialogs
- dialog, a list of dialogs or a dialog tagexit_action
- holds an optional action- If present, a button for it will appear in footer, otherwise the footer is not present
- Also used for the Escape action
columns
- positive integer describing number of columns, default:2
button_width
- width of buttons in the list, positive integer with default150
minecraft:multi_action
- A scrollable list of actions arranged in columns
- Screen also has button in footer that runs exit action and closes the screen
- Label will be
gui.cancel
if dialog has defined exit action andgui.back
if it has no side effects
- Label will be
- Exit action: defined in
on_cancel
field - Fields:
- Common dialog fields (see above)
actions
- non-empty list of click actions (see above)exit_action
- holds an optional action- If present, a button for it will appear in footer, otherwise the footer is not present
- Also used for the Escape action
columns
- positive integer describing number of columns, default:2
minecraft:notice
- A simple screen with one action in footer
- Exit action: same as
action
- Fields:
- Common dialog fields (see above)
action
- click action (see above), defaults to button withgui.ok
label and no action or tooltip
minecraft:server_links
- A scrollable list of links received from server in
minecraft:server_links
packet, arranged in columns - Screen also has button in footer that runs exit action and closes the screen
- Label will be
gui.cancel
if dialog has defined exit action andgui.back
if it has no side effects - Note: this is a replacement for previous Server Links screen, but now with an additional body
- Exit action: defined in
on_cancel
field - Fields:
- Common dialog fields (see above)
exit_action
- holds an optional action- If present, a button for it will appear in footer, otherwise the footer is not present
- Also used for the Escape action
columns
- positive integer describing number of columns, default:2
button_width
- width of buttons in the list, positive integer with default150
- A scrollable list of links received from server in
- Dialog Body Types
- All dialogs have a list of body elements describing contents between title and actions or inputs
- Click events are handled by the dialog screen like any other action - that means it will also run the
after_action
- Fields:
type
- one of dialog body types fromminecraft:dialog_body_type
registry<type-specific>
- see below
minecraft:item
- Item with optional description
- If description is present, it will be rendered to the right of item
- Item will be rendered as if it was in inventory slot
- Item is not scaled even if
width
andheight
are set to values other than default - Fields:
item
- item stack with countdescription
- optional object with fields:contents
- text componentwidth
- maximum width of contents, positive integer between1
and1024
(inclusive), with default200
- Can also be just be text component
show_decorations
- iftrue
, count and damage bar will be rendered over the item, default:true
show_tooltip
- iftrue
, item tooltip will show up when item is hovered, default:true
width
- horizontal size of element, between1
and256
(inclusive), default:16
height
- vertical size of element, between1
and256
(inclusive), default:16
minecraft:plain_message
- A multiline label
- Fields:
contents
- text componentwidth
- maximum width of message, positive integer between1
and1024
(inclusive), with default200
- Input Control Types
- Input dialog uses a set of controls to accept user input
- When submitted, current value of input will be converted to a string and sent to the server as described by Submit Action section below
- Fields:
type
- one of input control types fromminecraft:input_control_type
registrykey
- string identifier of value used when submitting data, must be a valid template argument (letters, digits and _)<type-specific>
- see below
minecraft:boolean
- A plain checkbox with a label
- Fields:
label
- a text component to be displayed to the right of controlinitial
- an initial value, default:false
(i.e. unchecked)on_true
- a string value to send when control is checked, default:'true'
on_false
- a string value to send when control is unchecked, default:'false'
- Output values:
- As template substitution:
on_true
when checked,on_false
when unchecked - As tag:
1b
when checked,0b
when unchecked
- As template substitution:
minecraft:number_range
- A slider for picking a numeric value out of some range
- Sends currently selected value
- Whole numbers will be sent without decimal point
- Fields:
label
- a text component to be used as a slider labellabel_format
- a translation key to be used for building label (first argument is contents oflabel
field, second argument is current value), default:options.generic_value
width
- width of input, positive integer between1
and1024
(inclusive), with default:200
start
- start value (when slider is in leftmost position) (inclusive), floatend
- end value (when slider is in rightmost position) (inclusive), floatstep
- step size, optional positive float- If present, only values of
initial + <any integer> * step
will be allowed - If absent, any value from the range is allowed
- If present, only values of
initial
- if not specified, now defaults to the middle of the range
- Output values:
- As template substitution: text representation of current value
- Whole numbers will be sent without decimal point
- As tag: a float tag with current value
- As template substitution: text representation of current value
minecraft:single_option
- A button that cycles between a set of options when clicked
- Sends value associated with currently selected preset
- Fields:
label
- a text component to be displayed on the buttonlabel_visible
- iftrue
, label will be incorporated into button text, default:true
width
- width of button, positive integer between1
and1024
(inclusive), with default:200
options
- a list of objects with fields:id
- a string value to send on submitdisplay
- a text component to display on button, optional (if not present,id
is used)initial
- an optional boolean flag that selects initial option (only one option can have it set totrue
)- Additionally list might also contain plain string - in that case it's equivalent to a single entry with field
id
set to that string and other fields set to default
minecraft:text
- Simple text input
- Sends current contents without modification
- Fields:
width
- width of input, positive integer between1
and1024
(inclusive), with default:200
label
- a text component to be displayed to the left of controllabel_visible
- controls label visibility, default:true
initial
- initial contents, default:""
(empty)max_length
- maximum length of input, positive integer with default of32
multiline
- if present, allows users to input multiple lines, optional object with fields:max_lines
- if present, limits maximum lines, optional positive integerheight
- height of input, optional integer in range1
to512
- If this field is omitted, but
max_lines
is present, the height that will be chosen to fit the maximum number of lines can't exceed512
- If this and
max_lines
are both omitted, it will default to a height that fits 4 lines
- If this field is omitted, but
- Output values:
- As template substitution: contents with special characters escaped to fit in a SNBT literal (note: both
'
and"
are escaped) - As tag: a string tag with contents without modification
- As template substitution: contents with special characters escaped to fit in a SNBT literal (note: both
- Submit Actions
- Every submit action on input dialog has a button associated with it
- When one of those buttons is clicked, values of all inputs will be collected and sent to a server using one of methods described below
id
field of a submit action will be included as an input with keyaction
- Submit action fields:
- Common button data (see above)
id
- string identifier of an actionaction
- an action to perform when button is clicked, optional object with fields:type
- value fromminecraft:dialog_action_type
registry<type-specific>
- see below, depends ontype
- Note: server does not validate individual values as they arrive as filled commands or custom payloads
- Submit Method Types
minecraft:command_template
- This method will build a command using a provided macro template and request the server to run it (same as
minecraft:run_command
click event) - If the command requires permission higher than
0
(when any operator permissions are required), a confirmation dialog will be shown - Macro will be expanded with values from input
- For example, if macro is
some_command $(action)
,action
parameter will be expanded toid
field of a submit action - Inputs not used in macro will be ignored, while macro parameters not matching any inputs will be replaced with an empty string
- Fields:
template
- a string with a macro template to be interpreted as a command
- This method will build a command using a provided macro template and request the server to run it (same as
minecraft:custom_form
- This method will build a custom server click action from all values and request the server to run it (same as
minecraft:custom
click event) - Format:
- keys are separated from values with horizontal tabulation (
U+0009
) character - key-value entries are separated with line feed (
U+000A
) character - If characters
U+0009
andU+000A
are present in any key or value, they will be escaped to\t
and\n
- keys are separated from values with horizontal tabulation (
- Fields:
id
- namespaced ID
- This method will build a custom server click action from all values and request the server to run it (same as
minecraft:custom_template
- This method will build a custom server click action using a provided macro template and send it to the server (same as
minecraft:custom
click event) - Macro will be expanded with values from input
- Inputs not used in macro will be ignored, while macro parameters not matching any inputs will be replaced with an empty string
- Fields:
template
- a string with a macro template to be used as a payloadid
- namespaced ID
- This method will build a custom server click action using a provided macro template and send it to the server (same as
- Built-in dialogs
- The built-in datapack contains some custom dialogs to provide customization of specific screens used by client
minecraft:custom_options
- Shows contents of
minecraft:pause_screen_additions
tag (see below) - Lets user select a specific dialog if this tag contains multiple entries
- Note: Since this tag is meant for interoperability, any content that replaces this dialog should be careful to not hide other dialog providers
- Shows contents of
minecraft:server_links
- Replacement for previously existing "Server Links" screen
- Meant to simplify migration for servers that used this feature previously
- Game Rules
- Added
LocatorBar
game rule- Default is
true
: enabling the Locator Bar - Changing to
off
will remove all existing Waypoints from all players - Renamed from
useLocatorBar
during the experiment. This may break minor command related features in worlds created in the previous snapshot.
- Default is
- Pause Screen Configuration
- A data pack can request some of the available dialogs to be accessible from Pause screen
- This feature replaces "Server Links" button and is placed on Pause screen according to the same rules
- Buttons leading to dialogs exposed in this way will use label described in
external_title
field - This feature is configured by
minecraft:pause_screen_additions
dialog tag:- If this tag is not specified or is empty but the server has sent
server_links
packet, tag will be handled as if it containedminecraft:server_links
dialog- Note: this matches previous Server Links feature behavior
- If this dialog is removed, the tag remains empty
- If this tag is still empty, button is not visible ("Send Feedback" and "Report Bugs" buttons are visible instead)
- If this tag has a single element, Pause screen button will lead directly to this dialog
- If this tag has multiple elements, Pause screen button will lead to
minecraft:custom_options
which (by default) lets user select one of the tag elements- If this dialog is removed, button is not visible
- If this tag is not specified or is empty but the server has sent
- Quick Actions Keybind
- A new keybind has been addded that allows users to access a set of dialogs
- Default key:
G
- This feature is configured by
minecraft:quick_actions
dialog tag- If this tag is empty, the keybind does nothing
- If this tag has a single element, the keybind will open this dialog
- If this tag has multiple elements, the keybind will lead to
minecraft:quick_actions
dialog which (by default) lets user select one of the tag elements- If this dialog is removed, the keybind does nothing
- This option is intended to be used in custom content and by servers, so this tag is empty by default
- Block tags:
- Added
#happy_ghast_avoids
: blocks that happy ghasts avoid getting close to - Added
#triggers_ambient_desert_dry_vegetation_block_sounds
: contains blocks that can trigger ambient desert dry vegetation sounds to play from blocks above - Added
#triggers_ambient_dried_ghast_block_sounds
: blocks that can trigger ambient Dried Ghast sounds to play when a Dried Ghast block is placed on them - Renamed
#plays_ambient_desert_block_sounds
to#triggers_ambient_desert_sand_block_sounds
- Added
- Item tags:
- Added
#happy_ghast_food
: contains items that can be used to feed Happy Ghasts - Added
#happy_ghast_tempt_items
: contains items that can be used to tempt Happy Ghasts
- Added
- Entity tags:
- Added
#can_equip_harness
: contains entities that can equip the Harness items - Added
#followable_friendly_mobs
: contains non-baby entities that will be followed by Baby Happy Ghasts
- Added
- Updated
#followable_friendly_mobs
to include the Happy Ghast
- Text Components
- Click Events
- New click action
minecraft:custom
has been added- When user clicks a component with this click action, client will send a dedicated packet
minecraft:custom_click_action
to a server - The intended use is as an alternative for
run_command
to be used by modded servers without worrying about having to add custom commands - This packet has no functionality on vanilla servers
- Fields:
id
- namespaced IDpayload
- optional string field
- When user clicks a component with this click action, client will send a dedicated packet
- New click action
- Dialog Click Event
- New action
show_dialog
has been added- When user clicks this component, a dialog will be opened for them
- Fields:
dialog
- a namespaced ID fromminecraft:dialog
registry or inline dialog value as described above
- New action
- Triggers
- Added
minecraft:player_sheared_equipment
- Can Trigger when a player shears off a shearable equipment from an Entity
- Conditions:
item
- Item that is shearedentity
- The entity that was sheared
Resource Pack[]
- The resource pack version is now
63
. - The game will now consistently respect
blur
texture parameter in.png.mcmeta
files - Panorama textures must now all be the same size, and square
- All core shader uniforms are now uniform blocks
- The cloud texture (
clouds.png
) can no longer be colored
- Block Models
elements[].rotation.angle
value in block models is no longer limited to multiplies of22.5
degrees and can now be any angle from-45
to+45
- Equipment Assets
- Added new
happy_ghast_body
layer type, rendering in the body slot of the Happy Ghast
- Font
- Updated Unifont to 16.0.03
- Added previously omitted Unifont glyphs for Private Use Areas
- Those glyphs are loaded as a separate sub-font
minecraft:include/unifont_pua
and are not included in any normally used font - Characters in those areas are managed by Under-CSUR (Under-ConScript Unicode Registry), which adds various scripts not present in official Unicode set, like Tengwar or Sitelen Pona
- Those glyphs are loaded as a separate sub-font
unihex
Font Provider- Field
size_overrides
is now optional (defaults to empty list)
- Field
- Item Models
- Item model definitions now have a boolean field
oversized_in_gui
which isfalse
by default- If
true
, the item model will be allowed to be bigger than its item slot - If
false
, the item model will be clipped to the item slot size when being rendered in gui - This ability of items being rendered outside their slots should not be considered officially supported, it was temporarily restored as an exception since many servers are relying on it
- At some point in the future we hope to replace it with an officially supported way of achieving similar functionality
- If
- Introduced new item model
minecraft:player_head
to handle player profile texture loading and rendering - Removed support for
minecraft:profile
fromminecraft:head
minecraft:player_head
special model type- Renders a player head
- Uses profile from the
minecraft:profile
component to load a texture. Renders a default texture until the profile texture is fully loaded - No fields
minecraft:head
special model type- No longer supports profile from
minecraft:profile
component to load a player texture - Renders a default player texture when
kind
isplayer
and no texture override is supplied - Fields remain unchanged
- No longer supports profile from
- Shaders & Post-process Effects
Developer's Note: Although it is possible in Resource Packs, overriding Core Shaders is considered as unsupported and not an intended Resource Pack feature. These shaders exist as part of the internal implementation of the game, and as such, may change at any time as the game's internals evolve. We understand that overriding Core Shaders is used for very cool Resource Pack features, many of which lack supported alternatives. We would like to provide better, supported alternatives in the future.
- All built-in uniforms are now uniform blocks instead of opaque loose uniforms
- Custom uniforms provided to post-process shaders are now uniform blocks
- Uniform definitions inside json files are now per-block
- Shader fog changes
- The fog is now split into environmental and render-distance-based
- Previously both those concepts were mixed in the same uniforms
- Environmental fog is supposed to represent the "fogginess" of the environment the player is in: lava, water, and now also atmosphere
- Render distance fog is supposed to obscure the border of visible terrain
- Environmental fog uses spherical distance to determine its intensity, render distance fog uses cylindrical distance
- The resulting fog value for any given vertex is the maximum of both
- Post-process Effect Definitions
- Entries in the
targets
map have been expanded to support new properties- New optional boolean field:
persistent
(default:false
)- If
true
, this render target will be persistent across frames - The contents of the target will be cleared when the screen is resized
- If
- New optional field:
clear_color
(default:[0, 0, 0, 0]
)- Format: integer ARGB value, or float array in order
[R, G, B, A]
- When this target is created or cleared, it will be filled with this color
- Format: integer ARGB value, or float array in order
- New optional boolean field:
- The
uniforms
values is now a list-per-block, instead of a global list- e.g.
uniforms: { "UniformBlockName": [ { "type": "vec2", "value": [...] } ] }
- The order of uniforms in a block must match the order in the shader
- e.g.
name
as part of a uniform definition is no longer used- We encourage setting it to help keep the json file organised/readable, but the game won't use it
value
as part of a uniform definition replaces the oldvalues
, and thetype
depends on the type field- This field is required
"type": "int"
needs"value": 123
(a single int)"type": "float"
needs"value": 123.4
(a single float)"type": "vec2"
needs"value": [1.2, 3.4]
(two floats)"type": "vec3"
needs"value": [1.2, 3.4, 5.6]
(three floats)"type": "ivec3"
needs"value": [1, 2, 3]
(three ints)"type": "vec4"
needs"value": [1.2, 3.4, 5.6, 7.8]
(four floats)"type": "matrix4x4"
needs"value": [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0]
(four rows of four columns of floats)
- We do not validate that the uniform block is valid for a given shader, giving incorrect information will cause undefined and funky behavior
- Entries in the
- Post-process Effect Shaders
- Instead of every uniform being an individual opaque type, they are now grouped in uniform blocks
- They will be set according to the pass definition in the json file, and may be shared across both vertex and fragment shaders
- The list of sizes (all
vec2 *Size
uniforms) are now replaced with a singleSamplerInfo
uniform block- This contains, in order, the size of the output texture followed by the size every input texture
- The order of textures in the definition file will dictate the order of samplers in this uniform
- For most post chains this is just
OutSize
andInSize
as before - All sizes are
vec2
post/bits.fsh
- Expects a
BitsConfig
offloat Resolution
andfloat MosaicSize
- Expects a
post/blit.fsh
- Expects a
BlitConfig
ofvec4 ColorModulate
- Expects a
post/blur.vsh
andpost/box_blur.fsh
- Expects a
BlurConfig
ofvec2 BlurDir
andfloat Radius
- Expects a
post/color_convolve.fsh
- Expects a
ColorConfig
ofvec3 RedMatrix
,vec3 GreenMatrix
andvec3 BlueMatrix
- Expects a
post/invert.fsh
- Expects a
InvertConfig
offloat InverseAmount
- Expects a
post/rotscale.vsh
- Expects a
RotScaleConfig
ofvec2 InScale
,vec2 InOffset
andfloat InRotation
- Expects a
post/spiderclip.fsh
- Expects a
SpiderConfig
ofvec4 Scissor
andvec4 Vignette
- Expects a
Globals
Uniform Block- Available through
#moj_import <minecraft:globals.glsl>
for convenience - Most shaders are able to receive this uniform block, even if they don't normally use it
- Contains
ScreenSize
,GlintAlpha
,GameTime
andMenuBlurRadius
(new)MenuBlurRadius
is the blur radius of the background when a menu is open
- Available through
Fog
Uniform Block- Available through
#moj_import <minecraft:fog.glsl>
for convenience - Most shaders are able to receive this uniform block, even if they don't normally use it
- Contains
FogColor
,FogRenderDistanceStart
,FogRenderDistanceEnd
,FogSkyEnd
(new) andFogCloudsEnd
(new),FogEnvironmentalStart
(new),FogEnvironmentalEnd
(new)FogSkyEnd
is new and represents where the fog should end when drawing for the skyFogCloudsEnd
is new and represents where the fog should end when drawing the cloudsFogRenderDistanceStart
represents the render distance fog startFogRenderDistanceEnd
represents the render distance fog endFogEnvironmentalStart
is new and represents the start of environment-based fogFogEnvironmentalEnd
is new and represents the end of environment-based fog
FogStart
was replaced withFogRenderDistanceStart
FogEnd
was replaced withFogRenderDistanceEnd
FOG_IS_SKY
has been removed in favor of splitting up the sky shaderFogShape
was removed. Render distance fog is now cylindrical and environmental is for spherical
- Available through
Projection
Uniform Block- Available through
#moj_import <minecraft:projection.glsl>
for convenience - Most shaders are able to receive this uniform block, even if they don't normally use it
- Contains
ProjMat
with no changes
- Available through
DynamicTransforms
Uniform Block- Available through
#moj_import <minecraft:dynamictransforms.glsl>
for convenience - Is no longer available to shaders that do not normally use it
- Contains
ModelViewMat
,ColorModulator
,ModelOffset
,TextureMat
,LineWidth
- These are very likely to change in the near future
- The values of some of these are often hard coded and may not make sense for a given shader, ie
LineWidth
in any non-line based pipeline
- Available through
Lighting
Uniform Block- Available through
#moj_import <minecraft:light.glsl>
for convenience - Most shaders are able to receive this uniform block, even if they don't normally use it
- The values may not make sense if the shader wouldn't normally expect it, however
- Contains
Light0_Direction
andLight1_Direction
- Available through
CloudInfo
Uniform Block- Only available to the clouds shaders (
rendertype_clouds.vsh
/rendertype_clouds.fsh
)- Contains
CloudColor
,CloudOffset
andCellSize
(new)CellSize
contains the size of an individual cloud cell
- Contains
- Only available to the clouds shaders (
LightmapInfo
Uniform Block- Only available to the lightmap shader (
lightmap.fsh
) - Contains
AmbientLightFactor
,SkyFactor
,BlockFactor
,UseBrightLightmap
,NightVisionFactor
,DarknessScale
,DarkenWorldFactor
,BrightnessFactor
,SkyLightColor
with no change in behavior
- Only available to the lightmap shader (
- Instead of every uniform being an individual opaque type, they are now grouped in uniform blocks
- Sounds
- Changed location on the sounds for glow squid, squid, guardian, horse, rabbit and pufferfish from
entity
folder to themob
folder - Added
entity/leashknot/break
for when a Lead snaps - The following sounds have been renamed:
entity/leashknot/break1
->entity/leashknot/unleash1
entity/leashknot/break2
->entity/leashknot/unleash2
entity/leashknot/break3
->entity/leashknot/unleash3
entity/leashknot/place1
->entity/leashknot/leash1
entity/leashknot/place2
->entity/leashknot/leash2
entity/leashknot/place3
->entity/leashknot/leash3
- The following sounds have been added for shearing Saddles, Horse Armor, and Carpets from Llamas
mob/horse/armor_unequip
mob/horse/saddle_unequip
mob/llama/unequip
- Sound Events
block.sand.wind
has been renamed toblock.dry_grass.ambient
- UI Sprites
- The
hud/locator_bar_arrow_up
andhud/locator_bar_arrow_down
sprites are now animated with a standardanimation
definition in the corresponding.mcmeta
files - The Mob Effect atlas has been removed, and sprites in the
textures/mob_effect/
folder are now included within the GUI atlas- This means Mob Effect sprites now support GUI sprite scaling properties
- Added
icon/music_notes
andtoast/now_playing
sprites
Fixes[]
- Reverted the fix for MC-101556: Nether Portal teleport range is too large (equivalent to a full block)
- Developer's Note: After consideration, we have decided to revert this change as it came in quite late in the snapshot cycle and unintentionally broke some functionality that our community were relying on. We'd like to revisit this at some point when we have time to deal with the issues that showed up due to this change
- The fix to MC-3697 has been partially reverted. Decorative hanging entities such as paintings and item frames are now immune to explosions from submerged TNT while items and armor stands are once again vulnerable to them
- 20 issues fixed
- From released versions before 1.21.6
- MC-147260 – Map icons are not displayed in the cartography table
- MC-191306 – Sounds played using
/playsound
are played in all dimensions - MC-266318 – Trapdoors and doors have inconsistent subtitles for being opened and closed
- MC-275374 – Drowneds with
CanBreakDoors:1b
don't break doors - MC-276264 – Advancement screen shadow renders below item icons
- MC-277992 – 1 color in the pale chest boat item is incorrect
- MC-278466 – Bundle experiment data pack related strings are not in deprecated.json
- MC-278873 – The data fixer regenerates chunks containing items obtained from flower pots using
Ctrl + Pick Block
before version 1.13, or it crashes the game if the item is in the player's inventory - MC-280047 – Temperate cows use their 1.14 texture with the
Programmer Art
resource pack enabled - MC-280266 – Firefly bushes don't produce as many, or as constant, amounts of particles as on Bedrock Edition
- MC-280268 – Blazes and breezes use "large" spawn eggs despite mobs of a similar size using "medium"
- MC-280471 – The
Particle.color
field in area effect clouds is read-only - MC-293619 – The chicken spawn egg texture in
Programmer Art
is missing pixels that match the inventory slot background color - MC-295681 – Leaf litter can generate inside of woodland mansions
- MC-295850 – Done and Cancel buttons on the world creation Edit Game Rules screen do the same thing
- MC-295866 – The
/setblock
and/fill
commands no longer update redstone power in some situations - MC-295867 – Structures from previous versions fail with
DataFixerUpper
- MC-296035 – Two pixels from "
mooshroom_spawn_egg
" are the same as "cow_spawn_egg
" - MC-296624 – Old Brown Mooshroom texture is missing from
Programmer Art
- MC-297537 – Extra "
entity.wolf_whine.whine
" sound event exists in sounds.json
- 41 issues fixed
- From released and snapshot versions before 25w16a
- MC-104231 – Loading a custom structure doesn't load rails correctly
- MC-277369 – The draft report icon isn't initially visible when saving a report as a draft
- MC-277370 – The draft report icon doesn't initially disappear when a report is discarded
- MC-279515 – The game stalls when running the "
/test clearall
" command with large radiuses - MC-280297 – The volume level between grass and dirt is inconsistent
- MC-293754 – Minecraft causes OpenGL errors occasionally
- MC-295395 – Entities interact differently with nether portals
- MC-295677 – Title screen fades in from black after closing the "Welcome to Minecraft" screen
- MC-295895 – 1.21.5 breaks minecart behavior when travelling through nether portals
- MC-295944 – Reloading a professionless zombie villager causes it to gain random profession clothing
- MC-296099 – Nether portal collision is or isn't working depending on the cardinal direction
- MC-296121 –
ClientboundLevelChunkPacketData
buffer size is too big - MC-296348 –
NoAI:1b
mobs cannot be ridden in 1.21.5+ - MC-296353 – Potions, tipped arrows, and dyed leather armor render with missing or incorrect colors in the inventory
- MC-296355 – Characters in front of the cursor render one pixel too far to the left
- MC-296356 – Hitbox rendering in GUIs is broken
- MC-296357 – Happy ghasts produce footstep sounds when flying close above blocks
- MC-296358 – A player in Spectator mode on top of a happy ghast makes it stop moving
- MC-296363 – Scrolling in the experiments screen does not move the positions where the buttons can be selected
- MC-296365 – Block placing sounds are played when the block states of completely unhydrated dried ghasts are changed
- MC-296366 – Kicked for flying while flying happy ghast
- MC-296367 – The enchantment glint in the inventory appears on all items of the same type
- MC-296373 – The side faces of dried ghast tentacles aren’t culled when covered by blocks
- MC-296376 – Sounds produced by ghastlings can be heard from too far away
- MC-296381 – Dried Ghasts always face north in world generation
- MC-296382 – Filled maps are blurry
- MC-296401 – Harnesses are not sorted correctly in the Creative Inventory
- MC-296419 – Spectators' names in multiplayer tab list render improperly compared to 1.21.5
- MC-296426 – Text background lacks opacity over hotbar icons
- MC-296427 – Happy ghasts move/spin erratically when leashed to a fence
- MC-296434 – Unable to see items when hovering over them inside of a bundle
- MC-296437 – Items render behind effect icons and recipe book inside of the inventory
- MC-296444 – Blur is applied to resource pack icons
- MC-296465 – Highlighting text on a sign causes it to override the sign background
- MC-296467 – Item tooltips cause items behind it to not render
- MC-296470 – Items render behind text in anvils
- MC-296471 – Hud is now hidden while in bed resulting in delayed hud rendering
- MC-296517 – The menu panorama turns gray when the switching realm worlds interface is open
- MC-296518 – Text inside the middle of the java realms information box completely disappears when selected
- MC-296524 – Server and singleplayer world icons are blurry
- MC-296638 – Clocks, compasses, and lodestone compasses do not render enchantment glint in certain display contexts when using Fabulous! graphics
- 28 issues fixed
- From released and snapshot versions before 25w17a
- MC-240121 – "
1x1_b5.nbt
" piece does not generate in woodland mansions - MC-296369 – Dispensers cannot equip harnesses onto happy ghasts
- MC-296421 – Right-clicking a happy ghast equipped with a harness while crouching will play hand animation
- MC-296438 – The "
display
" field on Attribute Modifiers is not optional, despite the changelog saying it is - MC-296443 – Happy ghasts don’t avoid pathfinding into dangerous blocks
- MC-296511 – Gamemode Switcher icons become invisible when using resource pack with opaque or translucent
selection.png
- MC-296516 – Tooltips are incorrectly rendered below nearby elements when holding your mouse cursor over players that are online on realms
- MC-296538 – Rarity of Dried Ghast is inconsistent with its crafting ingredients (recipe has updated to Soul Sand Block rather than a Bone Block)
- MC-296542 – Waypoints on locator bar do not adjust to 3rd person front camera
- MC-296567 – Waypoints on locator bar do not respect team colors
- MC-296583 – Applying the
waypoint_transmit_range
attribute to an entity at the same time it is summoned makes it not show on the locator bar - MC-296750 – The game crashes after startup on some systems (predominantly Linux systems) with AMD graphics
- MC-296755 – Resource Packs: The panorama overlay now renders in front of everything in the title screen
- MC-296756 – Clouds do not render at render distance 2 & 3
- MC-296764 – The text cursor renders behind command auto-complete text
- MC-296766 – GUIs of rideable mobs are missing their slots as of 25w16a
- MC-296770 – Strikethrough text in the villager interface is rendered behind characters
- MC-296774 – Player messages within the "Select Chat Messages to Report" menu aren’t rendered while selected
- MC-296775 – Some elements within the "Select Chat Messages to Report" menu are rendered darker while player messages are selected
- MC-296777 – Lead shift right-clicking doesn't work on Boats with Chests
- MC-296779 – The social interactions menu is rendered darker than normal
- MC-296782 – Player models within the “Report Player Skin” menu are rendered darker and lower than normal
- MC-296794 – Furnaces, blast furnaces, and smokers sometimes do not show the burn progress and lit progress animations
- MC-296805 – The game crashes when holding your mouse cursor over players that are online on realms
- MC-296806 – Cloud rendering has a considerable impact on performance as of 25w16a
- MC-296807 – The titles of selected tabs within the "Create New World" menu are rendered behind the background
- MC-296808 – The titles of lists within the resource pack and data pack menus are rendered behind the background
- MC-296984 – The "No pending invites!" text within the realms invitation menu is rendered behind the background
- 18 issues fixed
- From released and snapshot versions before 25w18a
- MC-200925 – Ghasts are not affected by potions thrown on their head
- MC-262268 – Keyboard navigation does not work in the book and quill GUI
- MC-264431 –
#minecraft:sand
tag has twominecraft:suspicious_sand
- MC-278459 –
unifont.json
contains trailing comma - MC-279284 – Experience orbs from thrown bottles o' enchanting are very prone to getting stuck inside blocks
- MC-279875 – Cannot diagonally climb slab through suspended scaffolding
- MC-280281 – Fishing bobbers rapidly jitter when attached to entities that are moving
- MC-280502 – Translation key
snbt.parser.undescore_not_allowed
has a typo - MC-295879 – Sprint-hitting boats and then getting in them causes the boat to fall through the block underneath
- MC-295914 – Loot table files accept invalid JSON
- MC-296354 – Happy ghasts aren’t affected by potions thrown on their heads
- MC-296784 – The "Welcome to Minecraft" screen is missing its fade out
- MC-296866 – Predicates of particular namespaces failed to be accessed on
/execute
- MC-296898 – Happy ghasts' home slightly drift over time
- MC-297112 – You cannot use
CTRL+NUM
to navigate to tabs within the configure realms menu - MC-297114 – The realms menu incorrectly claims that realms are expiring soon
- MC-297115 – The “This is a Snapshot Realm…” box no longer renders with a black background
- MC-297184 – 'Realms' is lowercase in
mco.errorMessage.realmsService.configurationError
.
- 20 issues fixed
- From released and snapshot versions before 25w19a
- MC-69821 – TNT "forgets" the player that ignited it when the world is reloaded
- MC-118430 – Vex summoner is not stored in NBT despite being used for AI task
- MC-118432 – Vex summoner is not reset once it is dead
- MC-277486 – Mob effect icons ignore "
scaling
" parameter inmcmeta
files - MC-277903 – Creative inventory tab icons can display item cooldown overlay
- MC-295690 – Players stay on fire for a while after barely touching fire
- MC-296432 – The ability to stand on top of happy ghasts which have a larger scale attribute becomes unreliable or even impossible
- MC-296460 – Debug crosshair renders incorrectly
- MC-296494 – The player sometimes falls from a happy ghast when reconnecting to a world
- MC-296701 – Transformed entities do not retain their
custom_data
component - MC-296709 – All non-default
jukebox_playable
components are deleted from existing items when updating past 1.21.4 - MC-296797 – The movement of happy ghasts for non-controlling passengers is jittery
- MC-296813 – The panorama isn't slightly blurred anymore which causes some "flickering" effects
- MC-296970 – The dried ghast block has a hit sound event (
block.dried_ghast.hit
has now been removed) - MC-297142 – The "Leave Bed" button is invisible
- MC-297235 – Clouds not fully rendered depending on angle when very high above the world
- MC-297271 – Waypoint packet is handled by network thread instead of render thread, causing crash
- MC-297339 – Sign text is non-functional
- MC-297347 – Tamed animals no longer sit when their owner changes dimension
- MC-297461 – Equipment and sleeping pos data cannot be loaded in 1.21.4, but can be loaded in 1.21.5 to bees spawned from bee nest and bee hive
- 15 issues fixed
- From released and snapshot versions before 25w20a
- MC-97423 – Horse temporarily stuck in jump animation if dismounted
- MC-103511 – Sound/Song stops playing after adjusting the volume
- MC-118081 – Sounds don't pause when game is paused on some UI screens
- MC-248682 – Translucent blocks moved by pistons aren't affected by fog correctly
- MC-248688 – Falling translucent blocks aren't affected by fog correctly
- MC-269744 – Out of memory crash when using a preset with a large layer
- MC-276665 – Music is never turning on when it's toggled in the menu
- MC-277991 – The 2 brightest pixel colors on pale oak boat items are still switched
- MC-296311 – TNT touching water will destroy blocks and damage entities but will ignore decorative entities
- MC-296836 – Happy ghast saddle model doesn't change when lead is broken by exceeding max range.
- MC-296843 – Clouds are rendered incorrectly on some Mac systems
- MC-297524 – Connection with realm gives weird HTML text
- MC-297535 – The enchantment glint doesn't render in first person or the inventory
- MC-297544 – Rain fog does not affect 1st person hand or items
- MC-297570 – Block breaking overlay not affected by environmental fog
- 20 issues fixed
- From released and snapshot versions before 25w21a
- MC-36696 – Clicking on the statistics button on the menu screen advances the game by 1 tick
- MC-112730 – Beacon beam and structure block render twice per frame
- MC-236464 – Beacon beams emitted from below the player are invisible after reloading chunks
- MC-258336 – Frost Walker causes frequent visual corruption near chunk borders on Threaded and Semi-Blocking Chunk Builder
- MC-296337 – Minecarts cause memory usage increases and crashes
- MC-297264 – Cat breeds are not seed based anymore
- MC-297336 – Experience orbs from thrown bottles o' enchanting are very prone to getting stuck inside blocks when thrown against a corner
- MC-297615 – Untranslatable error message when trying to join a closed Realm
- MC-297803 – The string "
menu.custom_screen_info.contents
" misspells "personal" as "pesonal" - MC-297806 –
music.game.swamp.labyrinthine
misspells the song's title - MC-297808 –
music.game.oxygene
is missing the grave accent sign - MC-297812 – Bold text is rendered differently than in previous versions
- MC-297813 – Amos Roddy is not listed in the credits
- MC-297823 –
music.game.mice_on_venus
is using wrong capitalization - MC-297845 – Clicking the Statistics button in Singleplayer does not play the button click sound until you resume playing
- MC-297846 – The music toast flashes in the pause menu when the Music slider is set to zero
- MC-297875 – Text shadow from underlined text overlaps the text below it in chat messages
- MC-297888 – Text no longer renders in a consistent order across different fonts
- MC-297917 – The client stops responding when showing a dialog with an extremely wide button
- MC-297977 – Dialog columns layout has extra spacing between the grid and the overflow linear layout
- 26 issues fixed
- From released and snapshot versions before 1.21.6-pre1
- MC-94800 – URL shown in open URL dialog is not shortened
- MC-140819 – Lectern model extends past inventory slot
- MC-200092 –
/setworldspawn
seems to ignore the 'angle
' parameter - MC-272825 – Custom filled maps from 23w31a and earlier do not upgrade properly in later versions
- MC-280276 – Some item models can still clip into the block below when hovering on the ground
- MC-296420 – '
/datapack create
' can create directories with illegal names - MC-296431 – Clipping item sprites to stay in slot makes it impossible to hide the slot for resource packs
- MC-296458 – Player heads in the inventory don't show the right skin
- MC-297275 – Players can desync from their mounts when jumping on a happy ghast
- MC-297550 – Happy ghasts don’t remain stationary correctly when players dismount them while other players are still controlling them
- MC-297807 – Clicking "Save and Quit to Title" in the dialog warning menu takes you to the server list even if the world is singleplayer or locally-hosted LAN
- MC-297817 – Newly placed paintings sometimes appear at a different position
- MC-297848 – The menu background is not shown for a short amount of time when leaving a world from a dialog
- MC-297868 – Items in the
armor.body
and saddle slots are not kept when dying while the game rulekeepInventory
is set to true - MC-297893 –
prevent_equipment_drop
enchantment effect does not work witharmor.body
and saddle slots - MC-297894 –
/clear
command does not cleararmor.body
and saddle slots - MC-297897 – Players can fall through happy ghasts
- MC-297899 – FPS drops due to clouds
- MC-297906 – Running a command with a large output whilst on a dedicated server causes a kick and no logged output
- MC-297915 – The name plates of entities with an empty custom name are now rendered incorrectly
- MC-298071 – All naturally spawned zombie villagers are professionless since 25w16a
- MC-298101 – Sniffers now show the digging animation instead of the walking animation
- MC-298116 – The warning text in the confirm link screen is no longer visible
- MC-298117 – All buttons at the bottom of the Realms screen are clickable when no realm is selected
- MC-298139 – Items bigger than the size of a slot incorrectly bleed over onto other items
- MC-298146 – GUI items disappear at high screen resolutions
- 14 issues fixed
- From released and snapshot versions before 1.21.6-pre2
- MC-217887 – Unsigned books written in 1.9-pre1 or earlier don't upgrade properly
- MC-297575 – Happy Ghast with nbt NoAI set to
true
can't be controlled by player - MC-297591 – Ender pearls can unexpectedly come to a halt
- MC-298104 – The
max_lines
field of multiline text input control is unrestricted, lagging the game - MC-298144 – The initial value of
minecraft:text
input type is limited to 32 characters, regardless ofmax_length
field - MC-298155 – Dialog
command_template
using a multiline text input causes player to be kicked out of the server due to illegal characters in chat (which is\n
) - MC-298209 – Player cannot move while touching a happy ghast's body
- MC-298301 – Blinking the cursor shifts all characters to the right of a multilines
text
field input in Dialogs - MC-298307 – Entering and exiting a pale garden while in Creative mode causes the current music track to remain silent
- MC-298358 – Riding a mob into powder snow no longer affects the player properly
- MC-298361 – Happy ghast with player riding, teleports back and forth when exiting nether portal
- MC-298368 – "
music_notes.png.mcmeta
" has an extra index that does not exist, causing a warning - MC-298394 – Freezing in Powdered Snow is very inconsistent and jittery
- MC-298422 – Ghasts and happy ghasts do not take damage from harmful blocks under some circumstances
- 12 issues fixed
- From released and snapshot versions before 1.21.6-pre3
- MC-296371 – The entity shadows of happy ghasts are too small in relation to the size of their models
- MC-296374 – The entity shadows of ghastlings are too small in relation to the size of their models
- MC-296853 – The "Shear Brilliance" advancement is incorrectly given by shearing a lead off a wolf
- MC-297113 – Hotbar shown in loading terrain screen
- MC-297497 – The “Connection Lost” title isn’t displayed when being kicked from realms due to idle timeout
- MC-297972 – Dialog body content is misaligned
- MC-298353 – Ridden entities won't make the lead breaking sound when attached to a fence
- MC-298412 – Subtitles are no longer shown when the master volume is set to zero
- MC-298466 – When clicking the "yes" button to confirm command execution in a dialog, if the player is put into another dialog, the click sound from the "yes" button will not be played until it is closed
- MC-298492 – Disconnecting through dialog in configuration phase causes the client to crash.
- MC-298516 – While running
/dialog clear
and/dialog show
every tick, pressing the warning button just after joining the world can crash the game - MC-298520 – Items in slots now render behind the container title, mismatching 1.21.5 behavior
- 4 issues fixed
- From released and snapshot versions before 1.21.6-pre4
- MC-279417 – Luring mobs onto blocks at Y=-64 will instead make them pathfind to the highest elevation
- MC-298446 – The "Thunder roars" sound is no longer affected by the master volume
- MC-298510 – Happy ghasts stay still for a few seconds when you get off them
- MC-298653 – Master volume slider no longer affects /playsoud sounds with high volume
- 3 issues fixed
- From released and snapshot versions before 1.21.6-rc1
- MC-298022 – Not signed Books and Quills with an overflowing new line at the bottom do not depict the pages' contents
- MC-298633 – Happy Ghast gets you stuck in blocks while riding and gets stuck in blocks upon dismount
- MC-298658 – Locator Bar shows inaccurate positions after respawn
Gallery[]
References[]
- ↑ VIBRANT VISUALS & CHASE THE SKIES
- ↑ a b "Minecraft Live 2025: The Recap" by Sophie Austin. Minecraft.net, October 15, 2023
- ↑ a b "The Spring to Life game drop comes today, the summer drop updates comes in June!" – @JustJosIt on X, March 25, 2025 (archived)
- ↑ a b "Snapshot 25w15a" by Java Team. Minecraft.net, April 8, 2025
"Snapshot 25w16a" by Java Team. Minecraft.net, April 15, 2025
"Snapshot 25w17a" by Java Team. Minecraft.net, April 22, 2025
"Snapshot 25w18a" by Java Team. Minecraft.net, April 29, 2025
"Snapshot 25w19a" by Java Team. Minecraft.net, May 6, 2025
"Snapshot 25w20a" by Java Team. Minecraft.net, May 13, 2025
"Snapshot 25w21a" by Java Team. Minecraft.net, May 20, 2025
"1.21.6-pre1" by Java Team. Minecraft.net, May 28, 2025
"1.21.6-pre2" by Java Team. Minecraft.net, June 2, 2025
"1.21.6-pre3" by Java Team. Minecraft.net, June 4, 2025
"1.21.6-pre4" by Java Team. Minecraft.net, June 10, 2025
"1.21.6-rc1" by Java Team. Minecraft.net, June 12, 2025 - ↑ a b "Our next game drop has a name: Get ready to Chase the Skies" by Sophie Austin. Minecraft.net, June 1, 2025