Java Edition 1.21.11/Development versions
This is a list of Java Edition 1.21.11 development versions.
25w41a
25w41a is the first snapshot for Java Edition 1.21.11,[unofficial name] released on October 9, 2025.[1]
Additions
Items
- Equippable on nautiluses and zombie nautiluses.
- Has copper, iron, gold, diamond, and netherite variants.
- Copper, iron, golden, and diamond nautilus armor now have a chance to be found in the chests for the following structures:
- Copper, iron and golden nautilus armor can be smelted into the respective nuggets.
- Added nautilus and zombie nautilus spawn eggs.
- New weapon that can be crafted in wood, stone, copper, iron, gold, diamond and netherite versions.
- Each material has different stats for timing, influencing how fast they are to use.
- Copper, iron and golden spears can be smelted into the respective nuggets.
- Cannot be used to mine blocks, as opposed to other weapons.
- Can be enchanted with the exclusive enchantment Lunge, in addition to the available enchantments for swords (except Sweeping Edge).
- Has a minimum reach for damage, being too close to a target will yield no damage.
- Has extended maximum reach compared to other tools and weapons.
- Zombies, husks, zombified piglins and piglins can spawn holding a spear.
- Has two attacks: jab and charge.
- Jab
- Used by quick-pressing the primary action button.
- Is a low-damage attack with knockback.
- Has a cooldown between attacks.
- Wooden spears have the fastest cooldown, while netherite has the slowest.
- Can hit multiple enemies.
- Charge
- Used by holding the secondary action button.
- Damage is based on spear material, the player’s view angle, and the velocity of both the player and the target.
- While holding down the button, the attack goes through three stages before returning to idle:
- Engaged: The spear can deal damage, knockback, and dismount mounted enemies if the speed is above the required thresholds.
- Tired: Indicated by the spear rotating to a vertical position and shaking. The Spear can deal damage and knockback (but not dismount) if the speed is above the required thresholds.
- Disengaged: Indicated by the spear being lowered, pointing downwards. The Spear gives damage but not knockback or dismount if the speed is above the required threshold.
- The spear's range when used by mobs is half of that when used by players, but they can deal damage, dismount and knockback at lower speeds than the players.
- Jab
Mobs
- A new neutral aquatic mob.
- Spawns in all ocean biomes.
- Has 15HP × 7.5 health.
- Attacks using a dash attack, if provoked.
- Occasionally attacks pufferfish within range using the dash attack.
- Takes suffocation damage on land.
- Grants the Breath of the Nautilus effect to mounted players.
- Can be bred and tamed using a pufferfish or a bucket of pufferfish.
- A tamed nautilus can be equipped with a saddle, then the player can ride it.
- While riding it, the player can use its dash attack (similar to camels) by pressing the jump button.
- Once tamed, has a roaming restriction around its home position of 16 blocks with a saddle, and 32 blocks without.
- Has a 5% (1⁄20) chance of dropping a nautilus shell upon death, on a player kill, unaffected by Looting.
- A new underwater mob that spawns with a Drowned rider wielding a trident.
- Hostile only if ridden by a hostile mob.
- Behaves similar to the nautilus except that it cannot be bred.
- Burns in sunlight, like other undead mobs.
- Nautilus armor protects it from sunlight damage.
- Drops 0-3 rotten flesh when killed, on a player kill, unaffected by Looting.
Command format
- New command that allows the creation of a stopwatch that keeps track of real time.
- Stopwatches do not depend on game ticks.
- They only run when the server/world is running, even when paused.
- Syntax:
Gameplay
- Added the following death messages:
- "<player> was speared by <player/mob>"
- "<player> was speared by <player/mob> using <item>"
Breath of the Nautilus
- Effect that affects mounted players.
- Pauses player oxygen consumption (but does not replenish oxygen).
- Lunge
- A new enchantment that is unique to the spear.
- It is incompatible with Mending.
- Only works with the jab attack.
- When doing a jab attack with Lunge, it propels the player horizontally in the view direction.
- The view angle needs to be perfectly leveled horizontally to achieve maximum lunge distance.
- Does significant durability damage to the spear.
General
minecraft:damage_type- Specifies the type of damage this item deals.
- Format: string, damage type identifier.
- e.g.
damage_type='minecraft:spear'
- e.g.
minecraft:kinetic_weapon- Enables a charge-type attack when using the item (primarily for Spears), where, while being used, the damage is dealt along a ray every tick based on the relative speed of the entities.
- Format: object with fields.
min_reach: float, the minimum distance in blocks from the attacker to the target to be considered valid.- Default value:
0.0
- Default value:
max_reach: float, the maximum distance in blocks from the attacker to the target to be considered valid.- Default value:
3.0
- Default value:
hitbox_margin: float, the margin applied to the target bounding box when checking for valid hitbox collision.- Default value:
0.3
- Default value:
delay_ticks: integer, the time in ticks required before weapon is effective.- Default value:
0
- Default value:
dismount_conditions: Indicates the condition to apply dismount. Objects with fields:max_duration_ticks: integer, the ticks after which the condition is no longer checked. This starts after delay has elapsed.min_speed: float, the minimum speed of the attacker, in blocks per second, along the direction that the attacker is looking.- Optional, default value:
0.0
- Optional, default value:
min_relative_speed: float, the minimum relative speed between the attacker and target, in blocks per second, along the direction that the attacker is looking.- Optional, default value:
0.0
- Optional, default value:
knockback_conditions: Indicates the condition to apply knockback. Objects with fields:max_duration_ticks: integer, the ticks after which the condition is no longer checked. This starts after delay has elapsed.min_speed: float, the minimum speed of the attacker, in blocks per second, along the direction that the attacker is looking.- Optional, default value:
0.0
- Optional, default value:
min_relative_speed: float, the minimum relative speed between the attacker and target, in blocks per second, along the direction that the attacker is looking.- Optional, default value:
0.0
- Optional, default value:
damage_conditions: Indicates the condition to apply damage effects. Objects with fields:max_duration_ticks: integer, the ticks after which the condition is no longer checked. This starts after delay has elapsed.min_speed: float, the minimum speed of the attacker, in blocks per second, along the direction that the attacker is looking.- Optional, default value:
0.0
- Optional, default value:
min_relative_speed: float, the minimum relative speed between the attacker and target, in blocks per second, along the direction that the attacker is looking.- Optional, default value:
0.0
- Optional, default value:
forward_movement: float, the distance the item moves out of hand during animation.- Default value:
0.0
- Default value:
damage_multiplier: float, the multiplier for the final damage from the relative speed.- Default value:
1.0
- Default value:
sound: Optional Sound Event to play when the weapon is engaged.hit_sound: Optional Sound Event to play when the weapon hits an entity.- e.g.
kinetic_weapon={max_reach:5.0,forward_movement:1.0,delay:20,damage_conditions:{max_duration_ticks:60},knockback_conditions:{max_duration_ticks:40},dismount_conditions:{max_duration_ticks:20}}
- The damage dealt is calculated as where
relative_speedis the difference of speed vectors of the attacker and the target as projected onto the axis of the attacker's view vector.- Any additional damage from enchantments or attribute modifiers is * after this calculation.
minecraft:minimum_attack_charge- Sets the minimum attack charge on the attack indicator required to attack with this item.
- Format: float (
0.0to1.0).0.0: no charge required.1.0: full charge required.
minecraft:piercing_weapon- Enables a quick attack that damages multiple entities along a ray (primarily for Spears).
- Format: object with fields.
min_reach: float, the minimum distance in blocks from the attacker to the target to be considered valid.- Default value:
0.0
- Default value:
max_reach: float, the maximum distance in blocks from the attacker to the target to be considered valid.- Default value:
3.0
- Default value:
hitbox_margin: float, the margin applied to the target bounding box when checking for valid hitbox collision.- Default value:
0.3
- Default value:
deals_knockback: boolean, whether the attack deals knockback.- Default value:
true
- Default value:
dismounts: boolean, whether the attack dismounts the target.- Default value:
false
- Default value:
sound: Optional Sound Event to play when a player attacks with the weapon.hit_sound: Optional Sound Event to play when the weapon hits an entity.- e.g.
piercing_weapon={min_reach:0,max_reach:4,dismounts:true}
minecraft:swing_animation- Specifies the swing animation to play when attacking or interacting using this item.
- Format: object with fields.
type: string, the animation identifier (none,whack,stab).- Default value:
whack
- Default value:
duration: integer, the duration in ticks.- Default value:
6
- Default value:
- e.g.
swing_animation={type:'stab',duration:20}
minecraft:use_effects- Controls how the player behaves when using an item (right mouse click).
- Format: object with fields.
can_sprint: boolean, whether the player can sprint while using this item.- Default value:
false
- Default value:
speed_multiplier: float (0to1), the speed multiplier applied to the player while using this item.- Default value:
0.2
- Default value:
- e.g.
use_effects={can_sprint:true,speed_multiplier:1.0}
- Block Tags
- Added
#can_glide_through.- Contains climbable blocks that can be glided through without stopping.
- Added
- Enchantment Tags
- Added
#exclusive_set/lunge- Contains all enchantments incompatible with the lunge enchantment.
- Added
- Entity Tags
- Added
#burn_in_daylight- Contains entities that burn in daylight.
- Added
#can_wear_nautilus_armor- Contains entities that can equip nautilus armor.
- Added
#nautilus_hostiles- Contains entities that the nautilus will be hostile towards when untamed.
- Added
- Item Tags
- Added
#enchantable/lunge- Contains all items that can be enchanted with the lunge enchantment.
- Added
#enchantable/melee_weapon - Added
#nautilus_bucket_food- Contains bucketed fish items that can be used to feed a tamed nautilus and zombie nautilus.
- Added
#nautilus_food- Contains all items that can be used to feed a tamed nautilus and zombie nautilus.
- Added
#nautilus_taming_items- Contains items that can be used to tame a nautilus and a zombie nautilus.
- Added
#spears- Contains all spear weapons.
- Added
#zombie_horse_food- Contains all items that can be used to feed a tamed zombie horse.
- Added
Changes
Items
General
- Items will no longer "bob" whenever their durability changes, such as when losing durability from an attack, or repaired by Mending.
Mobs
- Piglins can now spawn holding golden spears and use its Jab attack.
- Piglins now consider golden spears as one of the items they like.
- Zombies and husks can now spawn holding iron spears and use its Charge attack.
- Texture changed from
to have a darker texture. - Now spawns naturally, in plains and savanna biomes.
- Spawns in darkness, and burns in sunlight, like other undead mobs.
- Counts towards the hostile mob cap and spawns with other hostile mobs in the spawning cycle.
- Spawns being ridden by a zombie holding an iron spear, forming a zombie horseman.
- Has 25HP × 12.5 health.
- Can be healed and tempted using red mushrooms.
- Drops 2-3 rotten flesh when killed (instead of 0-2), with an extra 0-1 for each level of Looting.
- The boost from Looting is the same as it was before the update.
- Any zombie riding it now has a chance of dropping a red mushroom on death.[more information needed]
- An unridden zombie horse does not display any hostile behavior towards players.
- If it is ridden by a zombie, the zombie will control its pathfinding and therefore make it hostile.
- Untamed zombie horses despawn like other hostile mobs.
- Tamed zombie horses are persistent and do not despawn.
- Can be tamed in the same fashion as a regular horse, and can then be mounted and controlled by a player.
- Can be equipped with a saddle and horse armor.
- Horse armor protects it from sunlight damage.
- Has variable movement speed and jump strength, determined when it spawns.
- Zombie villagers can now hold Spears and use its Charge attack.
- This change was not mentioned in the changelog.
- Zombified piglins can now spawn holding golden spears and use its Charge attack.
World generation
- Bastion remnant chests can now contain diamond spears.
- Buried treasure chests can now contain iron spears.
- Buried treasure chests can now contain copper, iron, golden and diamond nautilus armor.
- End city chests can now contain diamond spears.
- Ocean ruin chests can now contain stone spears.
- Ocean ruin chests can now contain copper, iron, golden and diamond nautilus armor.
- Shipwreck chests can now contain copper, iron, golden and diamond nautilus armor.
- Weaponsmith chests can now contain copper and iron spears.
Command format
- Added new syntax
/execute execute if unless stopwatch <id> <range> - Allows to compare the elapsed time of a given stopwatch with a floating point value range.
- The stopwatch value is measured in seconds and has an accuracy of at most a millisecond.
- Example:
/execute if stopwatch foo:bar ..10 run say Stopwatch foo:bar has not reached 10 seconds yet.
- Example:
- The stopwatch value is measured in seconds and has an accuracy of at most a millisecond.
Gameplay
- Updated "How Did We Get Here?" to require the Breath of the Nautilus effect.
- Updated "Best Friends Forever" to include the nautilus, zombie nautilus, and the zombie horse.
- Updated "The Parrots and the Bats" to include the nautilus.
- Updated "Two by Two" to require the nautilus.
- Updated "Monster Hunter" to include, and "Monsters Hunted" to require the zombie horse and the zombie nautilus.
- Updated "A Throwaway Joke", "Take Aim" and "It Spreads" to include the nautilus and zombie nautilus.
- Cloud movement and position is now tied to the world time, hence the same for all players on a server.
General
- Several uses of the ⌘ Cmd key on Mac have been rebound to Ctrl:
- The input modifier to drop all items.
- The input modifier to include all the data when picking a block.
- The input modifier to change GUI scale in the Video Settings screen.
- Stopping the recipe book from cycling through variations of items.
- Added a new
minecraft:speardamage type.
- The pack format version is now
89.0.- This is due to
/stopwatchbeing added.
- This is due to
Debug renderer
- More debug renderers are now available through the Debug Settings screen.
- Some existing renderers were improved.
- The performance of debug renderers has been significantly improved.
- Added
exponent- Raises the base to the specified power level.
base- Level-Based Value indicating the base of the exponent.power- Level-Based Value indicating the power of the exponent.
- Raises the base to the specified power level.
- Enchantment Effect Components
minecraft:post_piercing_attack: Effects applying after a piercing attack with an item.
- Enchantment Entity Effects
minecraft:apply_impulse: applies an impulse to the targeted entity.direction- The first step of determining the impulse is applying this vector as local coordinates (the same used by/tp @s ^ ^ ^) onto the entity look vector.coordinate_scale- The second step is scaling the resulting vector by this vector on each axis in world space, X, Y and Z.magnitude- The third step is scaling the resulting vector by this Level-Based Value.
minecraft:play_sound: can now support a list of sound event identifiers, one for each level of enchantment. If a level is higher than the number of sounds, the last sound in the list is used.
- The
AngryAtfield has been renamed toangry_at. - The
AngerTimefield has been removed. - An
anger_end_time(long) field has been added, containing the time anger ends in game ticks.
uniformfont has been updated to use Unifont 17.0.01.
minecraft:consumable- The animation field has been updated:
- Renamed
speartotrident - Added new
spearanimation.
- Renamed
- The animation field has been updated:
minecraft:intangible- Items with this component now show information about it in their tooltip.
- Added new option for all item models:
swap_animation_scale- Defaults to
1.0 - Indicates how fast the item moves up and down when swapping items in hotbar.
- Large speeds can allow items that take more of the screen space to fully duck before swapped into the next item.
- Defaults to
- Added new item model:
spear_in_hand- model for the spear when in hand.
- Added a Debug category category in the key binds screen.
- Keys used to access debug features can now be rebound.
- The debug modifier key can be bound separately from the debug overlay key.
- The key to toggle GUI can now be rebound.
- The key to toggle spectator shader effects, such as when spectating an enderman, can now be rebound.
Minecraft Server Management Protocol
- Is now
1.1.0 - Added a new notification server/activity.
- Indicates that a network connection to the server has been initiated.
- Rate limited to 1 notification per 30 seconds.
- Component Predicates
- Component predicates (predicates field in block, item and entity predicates) now include predicates for checking existence of every component type.
- Those predicates are written as
{<component_type>: {}}. - Such predicate check passes as long as component is present, no matter the actual value.
- Existing predicates for specific components remain unchanged.
- Example:
{predicates:{written_book_content:{author:"foo"}}- existing format for matching books.{predicates:{written_book_content:{}}- special case of above that accepted any value, as long as component existed.{predicates:{instrument:{}}- checks if component minecraft:instrument exists (was not allowed before).
- Entity Predicates
- The
flagspredicate now supports new values:is_in_water: when an entity is touching water or a bubble column.is_fall_flying: when an entity is gliding with an elytra.
- The
- Item Predicates
- Item predicate in command form (
<item>[predicate~{...},component={...}]) has been extended to accept empty predicates for any component type. - Similarly to component predicates in data, those empty entries only check for component existence.
- Existing shorter syntax for checking component existence remains unchanged.
- That means
*[instrument]and*[instrument~{}]are equivalent.
- That means
- Item predicate in command form (
- The version is now
70.0.- This is due to Unifont being updated.
- Added ClientFps JFR event.
- Experience packets that do not change the player's experience progress or level are no longer sent by the server.
- Client FPS is expected to be higher for most players.
- Graphics modes "Fast", "Fancy", and "Fabulous!" have been replaced with graphics presets with the same names.
- Settings on the Video Settings screen have been reordered and split into 3 sections: "Display", "Quality & Performance", and "Interface".
- The following settings that have been removed from the Video Settings screen, because were duplicating accessibility settings:
- "View Bobbing"
- "Glint Speed"
- "Glint Strength"
- "FOV Effects"
- "Distortion Effects"
- Tweaks that were previously hidden behind the "Graphics" setting have been split out to be configurable independently:
- "See-Through Leaves"
- "Show Vignette"
- "Weather Effect Radius"
- Configures the distance in blocks within which rain and snow are visible.
- "Improved Transparency"
- Resolves some of the transparent geometry rendering issues at a significant GPU cost, previously was hidden behind "Fabulous!".
- A new "Preset" slider was added to the top of the "Quality & Performance" section.
- Presets control most of the "Quality & Performance" settings at once, not only the ones that were previously hidden behind the "Graphics" setting.
- Available presets are "Fast", "Fancy", "Fabulous!" and "Custom"
- The default preset is "Fancy" for new players.
- But for players who are upgrading to this version the preset will be set to "Custom" to preserve the current configuration.
- The following settings that have been removed from the Video Settings screen, because were duplicating accessibility settings:
- Anvil destroy, land, place and use sounds now play at a slightly lower volume.
- Added
golden_spearto#piglin_loveditem tag. - Added
#spearsto#enchantable/durabilityitem tag. - Renamed item tag
#enchantable/swordto#enchantable/sweeping. - Renamed
#enchantable/swordto#enchantable/melee_weaponfrom#enchantable/fire_aspectitem tag. - Renamed
#swordsto#enchantable/melee_weaponfrom#enchantable/sharp_weaponitem tag. - Added
nautilus, andzombie_nautilusto#aquatic,#can_equip_saddle, and#not_scary_for_pufferfishentity tags. - Added
nautilusto#can_breathe_under_waterentity tag. - Added
zombie_horseto#can_wear_horse_armorentity tag. - Added
zombie_nautilusto#zombiesentity tag. - Added
spearto#is_player_attack, and#no_knockbackdamage tags. - Added
lungeto#non_treasure, andtooltip_orderenchantment tags.
- celestials.png-atlas
- A new celestials atlas has been introduced, including sprites for objects rendered in the sky such as the Sun and Moon.
- Includes sprites from <namespace>:textures/environment/celestial/<path>.png
- The following textures have been moved or split:
- textures/environment/sun.png -> sun
- textures/environment/end_flash.png -> end_flash
- textures/environment/moon_phases -> moon/full_moon, moon/waning_gibbous, moon/third_quarter, moon/waning_crescent, moon/new_moon, moon/waxing_crescent, moon/first_quarter, moon/waxing_gibbous
- All blocks in the world now have mipmaps applied if enabled in video settings.
- Blocks that did not have mipmaps before, such as different vines, rails, foliage (apart from leaves) and more should look better from higher distances.
texturesection of*.mcmetafiles has a new boolean fielddarkened_cutout_mipmap- The default value is
false - It is set to
truefor the block textures that had mipmaps before this version:- All leaf types and mangrove roots.
- If the field is set to
trueand the texture is cutout the mipmaps will be darkened to emulate the darker interior of the block, this was the behavior for cutout mipmapped blocks before this version. - Leaving the field unset or setting it to
falsewill generate mipmaps without darkening, and it fits well for other types of cutout blocks that do not have dark interior such as flowers, grasses, vines, rails, etc.
- The default value is
- Only mipmaps of level 0 and 1 are now animated for block animated textures.
- Glass and glass panes now support translucent textures.
- Menu sliders will now "stick" to the closest available value when releasing them after dragging with a mouse.
- When using keyboard to change slider values, arrow keys will now move the slider to the next available value, not by one pixel as before.
- The inF3 button in the Debug Option screen has been renamed to inOverlay.
UI Sprites
- Added new UI sprite:
- container/slot/nautilus_armor
- container/slot/spear
- Spear icon used in the smithing table screen.
- Added new nine-sliced sprites:
- container/inventory/effect_background
- container/inventory/effect_background_ambient
- Removed the following sprites:
- container/inventory/effect_background_large
- container/inventory/effect_background_small
Fixes
From released versions before 1.21
- MC-22882 – Ctrl + Q doesn't work on Mac.
- MC-54989 – Sliders can be moved to positions between available values.
- MC-80476 – On macOS, the "drop item stack" shortcut conflicts with the "quit Minecraft" shortcut.
- MC-114265 – Mipmaps are too dark around transparent edges in textures (e.g. side of grass).
- MC-146862 – Long effect names cause text to appear outside the effect box.
- MC-147718 – F1, F3, F3 + [char] combos cannot be rebound.
- MC-159275 – Map player markers on maps of the nether don't rotate when
doDaylightCycleis disabled. - MC-162573 – A white outline is rendered on composters' edges when viewed from far away.
- MC-171688 – Invisibility status of
LivingEntityis not updated whenActiveEffectsare modified directly. - MC-195505 – Short grass is unaffected by mipmap levels.
- MC-234358 – Moiré patterns / aliasing on certain objects when viewed from a distance.
- MC-241862 – It sometimes requires multiple keyboard inputs to change values on sliders.
- MC-248499 – Potion UIs displayed within the inventory don't have cyan outlines if the effects are granted by beacons or conduits.
- MC-264151 – Glass blocks do not use mipmapping, but glass panes do.
- MC-267364 – Teleporting in the air is considered flying by server.
- MC-271941 – Music discs can sometimes spawn inside jukeboxes when ejected from them.
From 1.21.1
- MC-276445 – Highlighted text within the anvil and creative inventory interfaces renders blue making it difficult to read.
From 1.21.4
- MC-278742 – Creakings cannot be ridden by any entities using commands.
- MC-279076 – Certain mobs will always retarget the player upon reloading the chunks, regardless of distance or gamemode.
From 1.21.5
- MC-295949 – Flying through vines with an elytra cancels the flight.
- MC-296952 – F4 key to toggle shaders cannot be rebound.
- MC-297328 – Unloading and reloading an area causes invisible entities to be visible until you get close enough.
- MC-297367 – Checkbox filled status isn't narrated.
- MC-298767 – Piercing arrows phase through mobs that are in the same block.
From 1.21.6
- MC-298915 – Multishot crossbows loaded in survival or adventure mode show their secondary charged projectiles on a separate line in the tooltip.
- MC-299196 – Waypoints fade out when an advancement is granted.
From 1.21.8
- MC-301595 – Music toasts briefly appear in the pause menu after a song has finished.
- MC-301632 – Comparators measuring jukeboxes do not update when a music disc is taken out of a jukebox if the music disc has already finished its song.
From 1.21.9
- MC-300979 – The movement and duration messages in the demo introduction screen now have a text shadow.
- MC-301754 – The hand animation plays when right-clicking shelves with nothing in your hand.
- MC-301763 – The outline of the “Invited” element within the realms “Players” tab renders above other tabs when selected and when a scroll bar is present.
- MC-301805 – Selected item outline on statistics screen renders outside of scissor area.
- MC-302030 – Setting
commandBlocksEnabledto false prevents command blocks from being edited. - MC-302254 – Cursor changes do not work for command suggestions.
- MC-302288 – All shelves have the oak tan map color.
- MC-302549 – Server main thread deadlock during respawn position resolution when the entire world spawn radius is filled with fluids.
- MC-302601 – A white outline is rendered on anvils' top texture when viewed from far away.
25w42a
25w42a is the second snapshot for Java Edition 1.21.11,[unofficial name] released on October 14, 2025.[2]
Additions
General
- Provides a data-driven way to control a variety of visual and gameplay systems.
- Each Environment Attribute controls a specific visual or gameplay effect:
- For example,
minecraft:visual/sky_colorcontrols the color of the sky, andminecraft:gameplay/water_evaporatescontrols whether water can be placed at a given location.
- For example,
- Sources
- Environment Attribute values can be provided by the following Environment Attribute sources (in order of low to high priority):
- Dimensions
- Biomes
- The "effective" value of the Environment Attribute (i.e. what will actually show up in game) will be some combination of the values provided by each source according to their priority.
- For example, in the following scenario:
- The overworld dimension provides
sky_color = #00ff00(green) - The plains biome provides
sky_color = #ff0000(red)
- The overworld dimension provides
- When the player is in the plains biome, they will see the red
sky_color, while anywhere else in the overworld they will see green.
- For example, in the following scenario:
- When an Environment Attribute source provides an Environment Attribute, it can:
- Override the value, such as the plains biome overriding the overworld's
sky_colorin the above scenario. - Apply a modifier to a previous value.
- Override the value, such as the plains biome overriding the overworld's
- Environment Attribute values can be provided by the following Environment Attribute sources (in order of low to high priority):
- Modifiers
- An environment attribute source may simply override the value of a particular attribute.
- However, it is sometimes also desirable to rather apply a modifier to a value provided by a source with lower priority.
- For example, in the following scenario:
- The overworld dimension provides
water_fog_radius = 96.0 - The plains biome modifies
water_fog_radiuswith a multiply modifier of0.85
- The overworld dimension provides
- When in the plains biome, the
water_fog_radiuswill be resolved to , while in any other Overworld biome, it will resolve to96.0.
- The kinds of modifiers available depends on the type of Environment Attribute.
- The most basic modifier, supported by every Environment Attribute, is the override modifier.
- This behaves purely as an override of the preceding value.
- If not specified by an Environment Attribute source, the modifier will always be assumed to be override.
- An environment attribute source may simply override the value of a particular attribute.
- Interpolation
- Interpolation describes the combination of values within a source.
- Is performed on values from a source after modifiers have been applied.
- Only some Environment Attributes support interpolation. This allows for the smooth transition between two or more values, such as when moving between two biomes.
- Biomes
sky_coloris one attribute that will transition smoothly based on position.- For example, in the following scenario:
- The plains biome provides
sky_color = #ff0000(red) - The desert biome provides
sky_color = #ffff00(yellow)
- The plains biome provides
- In the above scenario, as a player moves from a plains to a desert biome, the sky color will gradually shift from red to yellow.
- Other attributes, such as
water_evaporates, represent discrete values and will not be smoothly transitioned - only the biome exactly at a subject position will be considered. - Smooth transitions between biomes are based on the biomes within an 8 block radius of the camera. Biomes that occupy a larger portion of that radius and are closer to the camera will have a stronger influence on the final interpolated value.
- Environment Attribute Map
- Dimension Type and Biome definitions contain a new attributes field, enabling them to define Environment Attributes.
- This map generally takes the form of an object mapping between Environment Attribute IDs and their corresponding values, for example:
"attributes": {
"minecraft:visual/fog_color": "#ffaa00",
"minecraft:gameplay/water_evaporates": true
}
- Values defined as above will always be assumed to use the override modifier.
- The value object can however be expanded in order to express different modifiers, in the format of an object with the following fields:
modifier: optional string modifier ID, dependent on the Attribute Type.- Default:
override
- Default:
argument: the modifier argument (format dependent on the chosen modifier).- How the argument is used also depends on the type of modifier.
- For example, the following definition describes multiplying
water_fog_radiusby 85%:
- The value object can however be expanded in order to express different modifiers, in the format of an object with the following fields:
"attributes": {
"minecraft:visual/water_fog_radius": {
"modifier": "multiply",
"argument": 0.85
}
}
- Common Data Types
- The following data types are reused in various parts of the Environment Attributes system.
- RGB Color
- Format can be one of the following:
- A hex color RGB string, in the form
#rrggbb - A float array with 3 components, between
0and1, in the form[r, g, b] - An integer in packed RGB form.
- A hex color RGB string, in the form
- Format can be one of the following:
- ARGB Color
- Format can be one of the following:
- A hex color ARGB string, in the form
#aarrggbb - A float array with 4 components, between
0and1, in the form[a, r, g, b] - An integer in packed ARGB form.
- A hex color ARGB string, in the form
- Format can be one of the following:
- Particle Options
- A full definition of a particle, including any type-specific properties (as in the /particle command).
- For example:
- A full definition of a particle, including any type-specific properties (as in the /particle command).
{
"type": "minecraft:block_crumble",
"block_state": {
"Name": "minecraft:dirt"
}
}
- Common Modifiers
- Every Environment Attribute has a specific value type, which describes how values must be defined as well as what modifiers are available and how they are interpolated.
- Some are very specific, while others are reused across many attributes.
- Modifiers on Boolean Values
- Argument format: boolean
overrideandnandornorxorxnor
- Argument format: boolean
- Modifiers on Float Values
- Argument format: float
overrideaddsubtractmultiplyminimummaximum
- Argument format: float
- Modifiers on Color Values
- Argument format: RGB color (except
alpha_blend)overrideadd- component-wise additive color blendingsubtract- component-wise subtractive color blending..multiply- component-wise multiplicative color blending.alpha_blend- traditional alpha blending that might be seen in image editing software.- Argument format: ARGB Color
- When the argument alpha is
1, it will behave as an override with no blending.
- Argument format: RGB color (except
- New Environment Attributes
minecraft:visual/fog_color- The color of fog (when the camera is not submerged in another substance).
- Value type: RGB color
- Default value:
#000000 - Modifiers: Color Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Replaces Biome
effects.fog_colorfield.
- Note: the final value is also affected by the time of day, weather, and potion effects.
- The color of fog (when the camera is not submerged in another substance).
minecraft:visual/extra_fog- Controls whether dense fog (like that of the Nether) should be used (when the camera is not submerged in another substance).
- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the camera's position.
- Controls whether dense fog (like that of the Nether) should be used (when the camera is not submerged in another substance).
minecraft:visual/water_fog_color- The color of fog when submerged in water.
- Value type: RGB color
- Default value:
#050533 - Modifiers: Color Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Replaces Biome
effects.water_fog_colorfield.
- Note: the final value is also affected by the time of day, weather, and potion effects.
- The color of fog when submerged in water.
minecraft:visual/water_fog_radius- The distance in blocks from the camera at which underwater fog reaches its maximum density.
- Value type: non-negative float
- Default value:
96.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Replaces
#has_closer_water_fogBiome Tag.
- Note: the final value is also modified by how long the player has been underwater.
- The distance in blocks from the camera at which underwater fog reaches its maximum density.
minecraft:visual/sky_color- The color of the sky. This color is only visible for the overworld sky.
- Value type: RGB color
- Default value:
#000000 - Modifiers: Color Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Replaces Biome
effects.sky_colorfield.
- Note: the final value is also affected by the time of day and weather.
- The color of the sky. This color is only visible for the overworld sky.
minecraft:visual/cloud_opacity- The opacity of clouds. If
0, clouds are entirely disabled and happy ghasts will not regenerate health faster when at cloud height.- Value type: float between 0 and 1
- Default value:
0.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position for rendering, or at the position of a happy ghast for regeneration.
- The opacity of clouds. If
minecraft:visual/cloud_height- The height at which all clouds appear.
- Value type: float
- Default value:
192.33 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position for rendering, or at the position of a happy ghast for regeneration.
- Replaces Dimension Type
cloud_heightfield.
- The height at which all clouds appear.
minecraft:visual/default_dripstone_particle- The default particle to be dripped from dripstone blocks when no fluid is placed above.
- Value type: Particle Options
- Default value:
{type:"minecraft:dripping_dripstone_water"} - Modifiers:
override - Interpolated: no
- Resolved at the position of the dripstone block.
- Replaces Dimension Type
ultrawarmfield.
- The default particle to be dripped from dripstone blocks when no fluid is placed above.
minecraft:visual/ambient_particles- Controls ambient particles that randomly spawn around the camera.
- Value type: list of objects with fields
particle: Particle Options to spawn.probability: float between 0 and 1, the probability to spawn the particle in an empty space when randomly ticked.
- Default value:
[] - Modifiers:
override - Interpolated: no
- Resolved at the camera's position.
- Replaces Biome
effects.particlefield.
- Value type: list of objects with fields
- Controls ambient particles that randomly spawn around the camera.
minecraft:audio/background_music- Controls how and which background music is played.
- Value type: object with fields
default: optional object with fields:sound: Sound Event to play.min_delay: int, minimum delay in ticks between tracks.max_delay: int, maximum delay in ticks between tracks.replace_current_music: optional boolean, whether this track can replace whatever is currently playing.- Default: false
- If not defined and not overridden, no music will start playing while this attribute is active.
underwater: optional object with fields in the same format as default - if present and the player is underwater, will override default.creative: optional object with fields in the same format as default - if present and the player is in Creative Mode, will override default.
- Default value:
{} - Modifiers:
override - Interpolated: no
- Resolved at the camera's position.
- Replaces Biome
effects.musicfield.
- Value type: object with fields
- Controls how and which background music is played.
minecraft:audio/music_volume- The volume at which music should play. Any music playing will fade over time to this value.
- Value type: float between 0 and 1
- Default value:
1.0 - Modifiers: Float Modifiers
- Interpolated: no
- Resolved at the camera's position.
- Replaces Biome
effects.music_volumefield.
- The volume at which music should play. Any music playing will fade over time to this value.
minecraft:audio/ambient_sounds- Controls which ambient sounds are played around the camera, and when.
- Value type: object with fields
loop: optional Sound Event, sound to be continually looped.mood: object with fields, sounds that will be randomly played based on surrounding darkness.sound: Sound Event to play.tick_delay: int, the number of ticks between mood sounds, assuming a light level of 0.block_search_extent: int, the radius in which light levels are sampled.offset: double, an additional distance offset to apply to sounds produced.
additions: list of objects with fields, sounds that will be randomly played.sound: Sound Event to playtick_chance: float between 0 and 1, probability within a tick to play a given sound.
- Default value:
{} - Modifiers:
override - Interpolated: no
- Resolved at the camera's position.
- Replaces Biome
effects.ambient_sound,effects.mood_sound, andeffects.additions_soundfields.
- Value type: object with fields
- Controls which ambient sounds are played around the camera, and when.
minecraft:gameplay/can_start_raidminecraft:gameplay/water_evaporates- If
true, water cannot be placed with a bucket, melting ice will not produce water, wet sponge will dry out when placed, and dripstone will not produce water from mud blocks.- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the position of the interaction.
- Replaces Dimension Type
ultrawarmfield.
- If
minecraft:gameplay/bed_rule- Controls whether a bed can be used to sleep, and whether it can be used to set a respawn point.
- Value type: object with fields.
can_sleep: one of:always- the bed can always be used to sleep (assuming the bed is not obstructed and there are no monsters nearby).when_dark- bed bed can only be used to be sleep when the global skylight level is less than 4.never- the bed can never be used to sleep.
can_set_spawn- same ascan_sleepexplodes- optional boolean, if true the bed will explode when interacted with.- Default:
false
- Default:
error_message: optional Text Component, the message to show if the player is unable to sleep or set their spawn.
- Default value:
{type:"can_sleep_when_dark",error_message:{translate:"block.minecraft.bed.no_sleep"}} - Modifiers:
override - Interpolated: no
- Resolved at the head position of the Bed block.
- Replaces Dimension Type
bed_worksfield.
- Value type: object with fields.
- Controls whether a bed can be used to sleep, and whether it can be used to set a respawn point.
minecraft:gameplay/respawn_anchor_works- Controls whether respawn anchors can be used to set spawn (or respawn).
- If false, the respawn anchor will explode once charged.
- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the position of the Respawn Anchor block.
- Replaces Dimension Type
respawn_anchor_worksfield.
minecraft:gameplay/nether_portal_spawns_piglin- Controls whether nether portal blocks can spawn piglins.
- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the position of a random Nether Portal block.
- Replaces Dimension Type
naturalfield.
- Controls whether nether portal blocks can spawn piglins.
minecraft:gameplay/fast_lava- Controls whether Lava should spread faster and further, as well as have a stronger pushing force on entities when flowing.
- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved for a whole dimension (cannot be specified on a Biome).
- Replaces Dimension Type
ultrawarmfield.
- Controls whether Lava should spread faster and further, as well as have a stronger pushing force on entities when flowing.
minecraft:gameplay/increased_fire_burnout- Controls whether fire blocks burn out more rapidly than normal.
- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the position of the burning Fire block.
- Replaces
#increased_fire_burnoutBiome Tag.
- Controls whether fire blocks burn out more rapidly than normal.
minecraft:gameplay/piglins_zombifyminecraft:gameplay/snow_golem_melts- Controls whether a snow golem should be damaged.
- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the position of the snow golem.
- Replaces
#snow_golem_meltsBiome Tag.
- Controls whether a snow golem should be damaged.
Changes
Items
- Players can now glide with elytra through cave vines and similar blocks.[more information needed]
- Can now be smelted in a blast furnace or furnace.
- The zombie horse and zombie nautilus spawn eggs now work in Peaceful worlds.
- Can no longer be used to hit targets through solid blocks.
- Can no longer break item frames with the jab attack.
Mobs
- Can now be controlled while on land.
- Are now able to despawn when not tamed.
- Piglins now consider golden nautilus armor as one of the items they like.
- No longer burns in sunlight.
- Now cannot hold another item other than a spear when paired with a zombie horse.
- Can no longer be leashed while being ridden by a jockey.
Command format
General
- Resource suggestions now show results in any namespace instead of just within
minecraft.
- Switched the order of the
idargument. querynow returns the queried value and takes in a newscaleargument.- The returned value will be scaled by that argument and truncated.
- The scale is optional and will default to
1if omitted. - Example:
/stopwatch query foo:bar 20to get the elapsed time in ticks.
Gameplay
- Updated the "Oh Shiny" advancement to include the golden spear and golden nautilus armor.
General
- Underwater biome fog color and fog distance is now blended based on the player's position between biomes, similarly to regular biome fog and sky colors.
- Added new attributes field for biomes to specify Environment Attributes.
- Note: certain attributes, such as gameplay/fast_lava are not evaluated positionally and thus cannot be set on a Biome.
- Many subfields under effects have been migrated to Environment Attributes:
- Note: the form of these attributes may not be identical to the original fields.
fog_color->minecraft:visual/fog_colorwater_fog_color->minecraft:visual/water_fog_colorsky_color->minecraft:visual/sky_colorparticle->minecraft:visual/ambient_particlesambient_sound,mood_sound,additions_sound->minecraft:audio/ambient_soundsmusic->minecraft:audio/background_musicmusic_volume->minecraft:audio/music_volume
minecraft:kinetic_weapon- Added new field:
contact_cooldown_ticks: integer, the cooldown in ticks after hitting, and loosing contact with an entity before being able to hit it again.- Default value:
10
- Default value:
- Added new field:
- The pack format version is now
90.0.
- Added new attributes field for dimensions to specify Environment Attributes.
- Many fields have been migrated to Environment Attributes:
- Note: the form of these attributes may not be identical to the original fields.
ultrawarm->minecraft:gameplay/water_evaporates,minecraft:gameplay/fast_lava,visual/default_dripstone_particlebed_works->minecraft:gameplay/bed_rulerespawn_anchor_works->minecraft:gameplay/respawn_anchor_workscloud_height->minecraft:visual/cloud_heightpiglin_safe->minecraft:gameplay/piglins_zombifyhas_raids->minecraft:gameplay/can_start_raidnatural(note: not removed) ->minecraft:gameplay/nether_portal_spawns_piglin
Minecraft Server Management Protocol
- Enable authentication from web browsers.
- Authenticate by passing the token in
Sec-WebSocket-Protocolheader when opening the WebSocket connection.- Example: Sec
-WebSocket-Protocol: minecraft-v1, <token>
- Example: Sec
- Requests authenticating this way are subject to Origin header checks. This requires configuration of allowed origins on the server side using
management-server-allowed-origins. The default value is empty, meaningSec-Websocket-Protocolauthentication is effectively disabled.
- Authenticate by passing the token in
- The version is now
70.1.
- Biome Tags
- Removed
#snow_golem_meltsand#increased_fire_burnout- replaced bygameplay/snow_golem_meltsandgameplay/increased_fire_burnoutEnvironment Attributes. - Removed
#plays_underwater_music- replaced byonly_underwaterfield in theaudio/background_musicEnvironment Attribute. - Removed
#has_closer_water_fog- replaced byvisual/water_fog_radiusEnvironment Attribute.
- Removed
- Block Tags
- Added
#cave_vinesto#can_glide_throughtag.
- Added
- Enchantment Tags
- Removed
#exclusive_set/lungetag.
- Removed
- Entity Tags
- Added
bogged,skeleton,stray, andwither_skeletonand removed#skeletonsfrom#burn_in_daylighttag.
- Added
- Item Tags
- Added
golden_nautilus_armorto#piglin_lovedtag.
- Added
Fixes
From released versions before 1.21
- MC-263562 – World types in Realms backup info screen are untranslatable.
From 1.21.6
- MC-298405 – Text components in the "
label" of input controls in dialogs don't support "hover_event".
From 1.21.8
- MC-299876 – Labels for booleans within dialogs are rendered in a slightly different shade of white than normal.
From 1.21.9
- MC-301271 – Object text components do not render in some places unless there are text glyphs on the same line.
- MC-301518 – The mouse cursor doesn’t change to the hand shape when hovering over checkboxes.
- MC-301520 – The mouse cursor doesn’t change to the hand shape when hovering over the difficulty lock button.
- MC-301557 – The shading direction of the bolts on single and large copper chests does not match.
- MC-301879 – Double weathered and waxed weathered copper chests' bottom texture looks off compared to the other variants.
- MC-302071 – Single and double copper chests have inconsistent side textures.
- MC-302246 – Sprite object component does not render in server list depending on component tree.
- MC-302409 – Lightning that strikes waxed lightning rods do not deoxidize nearby unwaxed copper blocks.
From 1.21.10
- MC-302816 – When running NBT to SNBT conversion, the program waits for 1 minute after completion.
From the previous development version
- MC-302656 – Skeleton horses burn in the sunlight.
- MC-302657 – The "
subtitles.entity.nautilus.eat" string misspells the word “Nautilus” as “Nauilus”. - MC-302664 – Piglins aren't attracted to golden nautilus armor.
- MC-302672 – "Invalid player data" error when loading a world in which you have an effect applied.
- MC-302680 – Zombie horses and zombie nautiluses cannot be spawned in Peaceful difficulty.
- MC-302683 – The "Confirm Command Execution" dialog is popped up for commands with a permission level of 0.
- MC-302729 – Blast furnaces do not smelt nautilus armor.
- MC-302732 – Performing a charge attack with a spear in your off hand applies the effects from the enchantments present on the item held in the main hand.
- MC-302743 – Repeatedly using a spear keeps performing charge attacks every 10 ticks.
- MC-302767 – Holding a spear in Spectator mode and performing a jab attack plays the jab sound.
- MC-302783 – Baby nautiluses use
#minecraft:nautilus_taming_itemsinstead of#minecraft:nautilus_foodfor growing up. - MC-302802 – Spear charge attack breaks item frames when still.
- MC-302813 – Zombified piglins no longer appear to sprint or make any angry noises when angry.
- MC-302817 – Spears with Fire Aspect can ignite victims even when the attacks are blocked.
- MC-302818 – Zombie horsemen can occasionally spawn holding something other than an iron spear.
- MC-302827 – Spears can jab through walls.
- MC-302834 – Wolves' eyes don't turn red when angry.
- MC-302838 – Extreme TPS lag when using high Lunge levels with Unbreaking.
- MC-302842 – Nautiluses and zombie nautiluses never despawn.
- MC-302920 –
/scoreboard players displaysettings sometimes reset on world load. - MC-302924 – Players can no longer be invited to realms.
- MC-302988 – Bees no longer get angry at players or mobs.
- MC-303083 – Searching in the resource/data pack selection screens doesn't properly scroll to the results.
- MC-303089 – Level 3 operators cannot use client-side operator features.
25w43a
25w43a is the third snapshot for Java Edition 1.21.11,[unofficial name] released on October 21, 2025, which makes some tweaks to spear mechanics.[3]
Additions
General
minecraft:discard- Replaces any item stack with empty one.
- No fields.
Changes
Items
- Spears now deal more damage through charge attacks dealt by players, but also mobs. This is because the spear's charge attacks now deal the attack damage attribute's base value on top of their formula.
- The spear model is now slightly larger.
- Spears now provide visual feedback when they hit a target in the charge attack.
Mobs
- Can no longer enter boats.
- Can no longer enter boats.
- No longer suffocates outside water.
Command format
- The
timeargument is now given in ticks instead of seconds.
Gameplay
- Using Lunge no longer causes durability damage to the spear.
- Using Lunge now consumes hunger points by exhausting the player, similar to sprinting or jumping.
- Level I consumes 3 (), level II consumes 4 (), and level III consumes 5 ().
- Lunge can only be used if the player has at least 6 () hunger points in their hunger bar.
- World border interpolation is now dependent on game ticks instead of real time.
- This means the world border will no longer move when the game is paused.
- It will also respect any changes made by the
/tickcommand.
General
- The pack format version is now
91.0.
- Entity Effects
minecraft:apply_exhaustion: applies exhaustion to the targeted entity.amount- Level-Based Value indicating the amount of exhaustion to apply.- Effective only on players.
minecraft:filtered- The field
modifierhas been replaced with two fields:on_pass- function or a list of functions to run whenitem_filterpredicate passes.on_fail- function or a list of functions to run whenitem_filterpredicate fails.
- The field
- Updated the LWJGL library to version 3.3.6.
- The version is now
71.0.
- Added new sound event for the Nautilus:
item.underwater_saddle.equip
- Added
nautilus, andzombie_nautilusto#cannot_be_pushed_onto_boatsentity tag.
- The
darkened_cutout_mipmapfield of the texture section of *.mcmeta files has been replaced by a new fieldmipmap_strategywith the following supported values:meanaverages both color and alpha between groups of four pixels for the current mipmap level to generate the next mipmap level pixel. This was and stays the default strategy for most solid or translucent full block textures.dark_cutoutis similar tomean, but blends colors in a way that makes the pixels bordering cutout pixels darker. This was and stays the strategy for leaves and mangrove roots. It simulates dark interior of the blocks.cutoutis a new strategy that always generates a mipmap based on the original texture instead of the previous mipmap. Used for most cutout blocks that became mipmapped in this version.strict_cutoutis a modification ofcutoutthat uses stricter alpha cutoff value leading to the textures using this value disappearing at higher mipmap levels. Is used for flowers and similar blocks to avoid artifacts.autois the default value and will make the game to pickmeanfor textures that do not contain fully transparent pixels andcutoutfor those that do.
- All mipmap levels are once again animated for block animated textures.
- Beacon and redstone dust now support translucent textures.
Fixes
From released versions before 1.21
- MC-53491 – The world border can change in size when the game is paused.
From 1.21.10
- MC-302695 – Can use the game mode switcher while the game is paused, and doing so unpauses the game.
- MC-302854 – Glass is less transparent when viewed from far away.
- MC-303381 – Game crashes when serializing a world spawn point with yaw or pitch values outside of rotation bounds.
- MC-303382 – Player spawn points with rotation values outside of bounds aren't serialized.
From the Java Edition 1.21.11 development versions
- MC-302669 – Banners sometimes show incorrect textures when viewed from some angles.
- MC-302675 – Some item frames do not render their item correctly after world upgrade.
- MC-302691 – Held and dropped items sometimes fail to render correctly when banners exist in the world.
- MC-302719 – Debug key binds text is improperly capitalized.
- MC-302724 – The
debug.entry.overlaystring is improperly capitalized. - MC-302737 – After using the game mode switcher, you need to press F3 twice to toggle the debug overlay.
- MC-302769 – Several blocks now turn invisible at short distances.
- MC-302790 – The
minecraft:apply_impulseeffect cannot be used inminecraft:location_changed. - MC-302849 – Mobs with spears deal too little damage.
- MC-302872 – Severe color contrast between lava mip levels.
- MC-302887 – Spear charging animation in first person isn’t perfectly mirrored between the main hand and off hand.
- MC-302912 – Zombie nautiluses suffocate out of water, unlike other undead mobs.
- MC-302915 – Mipmapping on cutout textures can cause them to appear larger than they should.
From the previous development version
- MC-302963 – Killing a player's mounted nautilus will cause that player to briefly glide upward, unaffected by gravity.
- MC-302984 – Holding a spear in the off hand and attacking an entity adds the spear's attack damage to the attack.
- MC-303032 – Nautiluses can still be controlled normally even when they are babies or untamed.
- MC-303138 – Piglins and hoglins can zombify in the nether.
- MC-303150 – Can't lay in bed during the day even with
can_sleepset toalwaysandplayerSleepPercentageset to101+. - MC-303157 –
remove_binomialenchantment effect has a chance of producing out-of-range values. - MC-303166 –
/stopwatch createsuggests existing stopwatches. - MC-303181 – Spears have an attribute modifier for
attack_damagefor both hands, even though the charge attack does not use it. - MC-303201 – Zombified piglins attack players in Creative mode.
- MC-303266 – Nautiluses and zombie nautiluses can enter boats.
25w44a
25w44a is the fourth snapshot for Java Edition 1.21.11,[unofficial name] released on October 28, 2025, which adds camel husks and parched.[4]
Additions
Items
- Added camel husk and parched spawn eggs.
Mobs
- New undead variant of the camel.
- Spawns at a light level of 0 in deserts.
- Does not burn in sunlight.
- Has 32HP × 16 health.
- Is hostile if the rider is a hostile mob (similar to the zombie horse). Is passive without a rider.
- Despawns like other hostile mobs, but becomes persistent while ridden by a player.
- Favorite food is rabbit foot, but it cannot be bred.
- Drops 2-3 rotten flesh when killed, with an extra 0-1 for each level of Looting.
- Any husk riding it now has a chance of dropping a rabbit foot on death.
- As a mount, it works similar to a normal camel.
- New variant of the skeleton.
- Spawns at a light level of 0 in deserts replacing some of the regular skeletons.
- Does not spawn in caves, following the husk's spawning rules.
- Does not burn in sunlight.
- Has 16HP × 8 health.
- Shoots arrows of Weakness, and has a chance to drop them as well.
- Has a slower rate of fire compared to a normal skeleton, similar to the bogged.
General
- Added
minecraft:visual/water_fog_start_distance- The distance in blocks from the camera at which underwater fog starts to have an effect. If negative, the fog will start out with density as if it had started that many blocks behind the camera.
- Value type: float
- Default value:
-8.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position
- The distance in blocks from the camera at which underwater fog starts to have an effect. If negative, the fog will start out with density as if it had started that many blocks behind the camera.
- Added
minecraft:visual/fog_start_distance- The distance in blocks from the camera at which fog starts to have an effect (when the camera is not submerged in another substance). If negative, the fog will start out with density as if it had started that many blocks behind the camera. Note: the final value is also modified by weather.
- Value type: float
- Default value:
0.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- The distance in blocks from the camera at which fog starts to have an effect (when the camera is not submerged in another substance). If negative, the fog will start out with density as if it had started that many blocks behind the camera. Note: the final value is also modified by weather.
- Added
minecraft:visual/fog_end_distance- The distance in blocks from the camera at which fog reaches its maximum density (when the camera is not submerged in another substance).
- Value type: non-negative float
- Default value:
1024.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Note: the final value is also modified by weather.
- The distance in blocks from the camera at which fog reaches its maximum density (when the camera is not submerged in another substance).
- Added
minecraft:visual/sky_fog_end_distance- The distance in blocks from the camera at which the fog that affects the sky reaches its maximum density (when the camera is not submerged in another substance).
- Value type: non-negative float
- Default value:
512.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Note: this value is restricted by the Render Distance option.
- The distance in blocks from the camera at which the fog that affects the sky reaches its maximum density (when the camera is not submerged in another substance).
- Added
minecraft:visual/cloud_fog_end_distance- The distance in blocks from the camera at which the fog that affects clouds reaches its maximum density (when the camera is not submerged in another substance).
- Value type: non-negative float
- Default value:
2048.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Note: this value is restricted by the Cloud Distance option.
- The distance in blocks from the camera at which the fog that affects clouds reaches its maximum density (when the camera is not submerged in another substance).
- Added
minecraft:visual/cloud_color- The color of the clouds. If fully transparent, clouds are entirely disabled and happy ghasts will not regenerate health faster when at cloud height.
- Value type: ARGB color
- Default value:
#00000000 - Modifiers: ARGB Color Modifiers
- Interpolated: yes
- Resolved at the camera's position for rendering, or at the position of a happy ghast for regeneration.
- The color of the clouds. If fully transparent, clouds are entirely disabled and happy ghasts will not regenerate health faster when at cloud height.
- Added
minecraft:fire_spread_radius_around_player- Controls the maximum distance in blocks that fire can spread around a player.
- This replaces the previous
doFireTickandallowFireTicksAwayFromPlayergame rules, which have now been removed. - Setting it to
0will disable fire spreading. - Setting it to
-1will allow fire spreading without players around. - Limit: Minimum
-1
- This replaces the previous
- Controls the maximum distance in blocks that fire can spread around a player.
- Added the anisotropic filtering graphics option.
- This new option improves the visual quality of blocks when viewed at a distance or at an angle.
- The default depends on the graphics preset, and the values are "off", "2x", "4x", and "8x".
- If the hardware does not support it, it will not be used.
- This significantly impacts video memory usage (especially combined with a high mipmap count).
- Added the chunk fade time option.
- Located in Video Settings.
- Controls the fade-in time of chunks.
- Added slot sources to allow the location of any inventory slot to be specified within datapacks.
- Format: object with fields.
type: the slot source type.<type-specific>: additional fields depending on the type.
- Format: object with fields.
minecraft:emptyType- Empty selection containing no slots.
minecraft:groupType- Merges several slot sources into one, with the resulting selection containing all slots from each slot source provided.
- If a slot is included in more than one slot source, it will be repeated in the resulting slot source.
- e.g.
[a, b] + [c, a]->[a, b, c, a]
- Format:
terms: list of slot sources to join.
- Can alternatively be written inline as a list of slot sources.
- Merges several slot sources into one, with the resulting selection containing all slots from each slot source provided.
minecraft:slot_rangeType- Selects slots within a slot range from the inventory of an entity or block entity.
- Mirrors the behavior of the
fromargument of the/itemcommand. - Format:
source: an entity or block entity from which the slots will be sourced, from loot context.- Can be
block_entity, this,attacking_entity,last_damage_player,direct_attacker,target_entity, orinteracting_entity
- Can be
slots: a slot range in the format of<slot_type>or<slot_type>.<slot_number>(e.g.armor.chestorcontainer.*).
minecraft:contentsType- Selects all non-empty slots from the inventory component of one or more items.
- If no item is stored inside that component, the resulting selection will be empty.
- The location of the item(s) whose inventory component to use is specified by another slot source.
- If the slot source includes more than one item with that component, the resulting selections will be merged identically as with the
minecraft:grouptype. - e.g.
Bundle [a, b] + Shulker Box [c, d]->[a, b, c, d]
- If the slot source includes more than one item with that component, the resulting selections will be merged identically as with the
- Format:
component: the inventory component to target.- Allowed values are
minecraft:bundle_contents,minecraft:charged_projectiles, andminecraft:container
- Allowed values are
slot_source: a slot source containing slots with item(s) to target.
- Selects all non-empty slots from the inventory component of one or more items.
minecraft:filteredType- Applies a filter to the selected slots, excluding any non-matching slots from the resulting selection.
- Format:
item_filter: an item predicate to match against the items in each slot.slot_source: the slot source to filter.
minecraft:limit_slotsType- Limits the number of slots provided, with the resulting selection containing at most that number of slots.
- Any slots bringing the number of slots above that limit will be excluded, in order of inclusion.
- e.g.
[a, b, c, d]->[a, b, c]if the limit is set to3
- Format:
limit: integer, the maximum number of slots to include in the resulting selection.slot_source: the slot source to limit.
- Limits the number of slots provided, with the resulting selection containing at most that number of slots.
- Example slot source selecting every slot with more than 16 items from the hotbar and armor slots of an entity:
{
"type": "minecraft:filtered",
"item_filter": {
"count": {
"min": 16
}
},
"slot_source": [
{
"type": "minecraft:slot_range",
"source": "this",
"slots": "hotbar.*"
},
{
"type": "minecraft:slot_range",
"source": "this",
"slots": "armor.*"
}
]
}
- Item Tags
- Added
#camel_husk_food- Contains all items that can be used to feed a camel husk.
- Added
- Entity Tags
- Added
#can_float_while_ridden- Contains entities that can float on water while being ridden.
- Added
Changes
Items
The textures of zombie horse spawn eggs have been updated to reflect the mob's updated appearance.
Mobs
- No longer spawn more frequently and in higher light levels between October 20 and November 3.
Horse, mule, donkey, and camel
- No longer sink in water while ridden by a player.
- Can now attack any mob if provoked by that mob, not just players.
- Now can mimic the sounds of zombie nautilus, zombie horse, camel husk and parched.
Command format
- The
timeargument for setting the size can now also specify seconds or in-game days using ansordsuffix. - The
timeargument for setting the warning distance now specifies ticks by default but can also specify seconds or in-game days using ansordsuffix.
Gameplay
- Updated "Monster Hunter" to include, and "Monsters Hunted" to require the camel husk and parched.
- Reduced the number of hunger points consumed by using Lunge across all Enchantment levels.
- Level I consumes 1 (), level II consumes 2 (), and level III consumes 3 ().
- Added a durability cost of 1 for using Lunge across all Enchantment levels.
General
General
- Added support for KQueue on OSX to improve network connection performance.
- The LWJGL library was reverted to version 3.3.3.
- The following color fields in the
effectsdefinition now support colors as a string in the form "#rrggbb", or a float array in the form[red, green, blue]water_colorfoliage_colordry_foliage_colorgrass_colorgrass_color_modifier
- Now fade in instead of appearing out of nowhere, with the fade-in time adjustable through Video Settings.
- The pack format version is now
92.0.
- Modifiers on ARGB Color Values
override- Argument format: ARGB Color
add- component-wise additive color blending.- Argument format: RGB Color
subtract- component-wise subtractive color blending.- Argument format: RGB Color
multiply- component-wise multiplicative color blending.- Argument format: RGB or ARGB Color
- If specified, the alpha component is multiplied independently just like the other color channels.
alpha_blend- traditional alpha blending that might be seen in image editing software.- Argument format: ARGB Color
- When the argument alpha is
1, it will behave as an override with no blending.
- Renamed
minecraft:visual/water_fog_radiustominecraft:visual/water_fog_end_distance - Removed
minecraft:visual/extra_fog - Replaced
minecraft:visual/cloud_opacitywithminecraft:visual/cloud_color
- Environmental Fog in the Nether is no longer dependent on the render distance setting, and will consistently be applied from 10 to 96 blocks.
- Have been moved into a registry.
- With that, all game rules have been renamed from their previous camel case names to resource locations in snake case.
- Additionally, some game rules have been further renamed:
announceAdvancements->minecraft:show_advancement_messagescommandBlocksEnabled->minecraft:command_blocks_workcommand_modification_block_limit->minecraft:max_block_modificationsdisableElytraMovementCheck->minecraft:elytra_movement_check- The value is inverted accordingly in places that use the resource location.
disablePlayerMovementCheck->minecraft:player_movement_check- The value is inverted accordingly in places that use the resource location.
disableRaids->minecraft:raids- The value is inverted accordingly in places that use the resource location.
doDaylightCycle->minecraft:advance_timedoEntityDrops->minecraft:entity_dropsdoImmediateRespawn->minecraft:immediate_respawndoInsomnia->minecraft:spawn_phantomsdoLimitedCrafting->minecraft:limited_craftingdoMobLoot->minecraft:mob_dropsdoMobSpawning->minecraft:spawn_mobsdoPatrolSpawning->minecraft:spawn_patrolsdoTileDrops->minecraft:block_dropsdoTraderSpawning->minecraft:spawn_wandering_tradersdoVinesSpread->minecraft:spread_vinesdoWardenSpawning->minecraft:spawn_wardensdoWeatherCycle->minecraft:advance_weathermaxCommandChainLength->minecraft:max_command_sequence_lengthmaxCommandForkCount->minecraft:max_command_forksnaturalRegeneration->minecraft:natural_health_regenerationsnowAccumulationHeight->minecraft:max_snow_accumulation_heightspawnRadius->minecraft:respawn_radiusspawnerBlocksEnabled->minecraft:spawner_blocks_work
- Limits
- Some game rules that previously did not have a limited value range now do:
minecraft:max_block_modifications: Minimum1minecraft:max_command_forks: Minimum1minecraft:max_command_sequence_length: Minimum0minecraft:max_entity_cramming: Minimum1minecraft:max_snow_accumulation_height: Minimum0, maximum:8minecraft:players_nether_portal_creative_delay: Minimum0minecraft:players_nether_portal_default_delay: Minimum0minecraft:players_sleeping_percentage: Minimum0minecraft:random_tick_speed: Minimum0minecraft:respawn_radius: Minimum0
- Some game rules that previously did not have a limited value range now do:
- In the
game_rulestest environment the keysbool_ruleandint_rulehave been replaced with a single key rules.- It is a map from game rules resource locations to the game rules value. The value type is either integer or boolean depending on the game rule.
- Added new
minecraft:slotsloot pool entry.- Provides the items contained within the selected slots to the loot table.
- Format:
slot_source: a slot source describing where the items are located.
- Supports all standard loot pool entry fields.
- Removed
contentsas a supported value for thedynamicloot entry type.- Its behaviour of providing the contents of a Shulker Box was made redundant by the addition of the
slotsloot entry type, and can now be replicated with theslot_rangeslot source.
- Its behaviour of providing the contents of a Shulker Box was made redundant by the addition of the
Minecraft Server Management Protocol
- The version is now 2.0.0.
- In the
typed_game_ruleanduntyped_game_ruleschemas, the type of the value field has been changed from string to take either a boolean or an integer.- It now uses the game rule resource location as the key.
- The version is now
72.0. - block.vsh/fsh copies terrain.vsh/fsh and handles ad-hoc blocks (e.g. held by entities).
- Added
ChunkSectionuniform, used by terrain.vsh (which replacesDynamicTransforms). - New shaders have been introduced to perform GPU based sprite animations.
Globalsuniform now has camera coordinates.
Shaders & Post-process Effects
- Added
animate_sprite*core shaders, which use a newSpriteAnimationInfouniform.
Sprite Animations
- Sprites (textures as part of a larger atlas) are now animated on the GPU rather than per-tick on the CPU.
- For regular frame-based animations, animate_sprite.vsh and animate_sprite_blit.fsh are used to perform the draw.
- For interpolated animations, animate_sprite.vsh and animate_sprite_interpolate.fsh are used to perform the draw.
- The UBO
SpriteAnimationInfocontains information on where the sprite should be drawn to, within the greater texture atlas.
- Added
minecraft:nautilus_one_cmstatistic (Distance By Nautilus).
- Entity Tags
- Changed
#skeletonsto include parched. - Changed
#zombiesto include camel husk. - Changed
#can_equip_saddleto include camel husk.
- Changed
- "Interface" option inside the Video Settings screen has been renamed to "Preferences".
- The Single Biome Customization screen now has a search box.
- The language selection screen now has a search box to filter languages.
Fixes
From released versions before 1.21
- MC-2791 – The player model in the inventory screen renders in the wrong orientation when it's not standing up straight.
- MC-73186 – Gaps between the faces of item models and complex block models.
- MC-149630 – Some particles have very thin, vertical lines that flash in and out around the particles.
- MC-237158 – Magma blocks can generate on the ceilings of caves below aquifers.
From 1.21.6
- MC-298942 – Character body moves instead of the head when riding a happy ghast.
From 1.21.8
- MC-300642 – When texture atlases are large, gaps are rendered between blocks that have a low resolution.
- MC-301988 – Buttons in the telemetry screen are not aligned properly in some languages.
From 1.21.9
- MC-301311 – The “Transfer Now” button no longer renders highlighted when the java realms information box is selected.
- MC-301516 – The mouse cursor doesn’t change to the hand shape when hovering over tabs in the “Create New World” menu and similar screens.
- MC-301517 – The mouse cursor doesn’t change to the hand shape when hovering over arrows in the singleplayer, multiplayer, resource packs, and data packs menus.
- MC-301527 – The mouse cursor doesn’t change to the resize shape when scrolling in the advancements menu.
- MC-302111 – Elements within the resource pack and data pack menus are not selected in order when using the Tab ↹ key.
- MC-302325 – When the player toggles a debug renderer using its hotkey (F3 + B, F3 + G) while in the debug options screen, the corresponding entry is not updated.
- MC-302338 – The narrator button in the Accessibility Settings menu doesn't update upon pressing Ctrl + B.
- MC-302362 – Clicking on "Singleplayer" or "Multiplayer" in the main menu then immediately clicking on a world or server joins it even when not clicking the play button.
- MC-302482 – Resource and data pack names can overlap selection boxes when the scroll bar is present.
From the Java Edition 1.21.11 development versions
- MC-302678 – Arrows and tridents get stuck on players and mobs.
- MC-303072 – Game crashes when a trident entity with PierceLevel ≥ 1 hits a mob or player.
- MC-303168 – Equipping a saddle onto a nautilus uses the "
subtitles.entity.horse.saddle" subtitle. - MC-303255 – Nautiluses do not deal damage if mobGriefing is false.
From the previous development version
- MC-303429 – Piglins and hoglins shake in the nether.
- MC-303432 – Chinese input is not recognized.
- MC-303434 – Japanese input is not recognized.
- MC-303439 – Held items in third-person view show strange artifacts when viewed at certain angles.
- MC-303455 – The cursor is no longer centered when opening a container or menu on Wayland.
- MC-303460 – The cursor no longer follows the look set by the system on Wayland.
- MC-303461 – The application icon shows the generic Wayland icon instead of the Minecraft icon on Wayland.
- MC-303478 – Cannot launch 25w43a on Linux with Nvidia Graphics.
- MC-303481 – Game has no audio and crashes with Mac Studio Display.
- MC-303485 – The game can no longer save chunks in custom dimensions.
- MC-303504 – Nether sprouts textures still expand when viewed from a sharp angle.
- MC-303506 – Control-key combinations additionally send the normal letter on Wayland.
- MC-303520 – Sweet berry bush textures still expand when viewed from a sharp angle.
- MC-303541 – The game doesn't boot on Wayland.
- MC-303651 – Rotating dropped items sometimes create visual artifacts.
25w45a
25w45a is the fifth snapshot for Java Edition 1.21.11,[unofficial name] released on November 4, 2025, which adds a coral variant of zombie nautilus and a netherite tier of horse armor.[5]
Additions
Mobs
- A new variant of the zombie nautilus.
- Spawns in warm oceans, replacing the normal zombie nautilus.
Items
- Can be obtained by upgrading diamond horse armor with a smithing table.
| Ingredients | Smithing recipe |
|---|---|
| Netherite Upgrade + Diamond Horse Armor + Netherite Ingot |
Gameplay
- Added one new advancement.
| Icon | Advancement | In-game description | Actual requirements (if different) |
|---|---|---|---|
![]() | Mob Kabob[upcoming JE 1.21.11] | Hit five mobs in the same Charge attack using the Spear. |
General
minecraft:visual/sunrise_sunset_color- Controls the color and intensity of the sunrise and sunset effect. If fully transparent, no sunrise or sunset will be rendered. Only visible with the overworld skybox type.
- Value type: ARGB Color
- Default value: "
#00000000" - Modifiers: ARGB Color Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Only visible with the overworld skybox type.
- Controls the color and intensity of the sunrise and sunset effect. If fully transparent, no sunrise or sunset will be rendered. Only visible with the overworld skybox type.
minecraft:visual/sun_angle- The angle in degrees of the sun, clockwise from east to west, with
0being directly up.- Value type: float, angle in degrees
- Default value:
0.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Only visible with the overworld skybox type.
- The angle in degrees of the sun, clockwise from east to west, with
minecraft:visual/moon_angle- The angle in degrees of the moon, clockwise from east to west, with
0being directly up.- Value type: float, angle in degrees
- Default value:
0.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Only visible with the overworld skybox type.
- The angle in degrees of the moon, clockwise from east to west, with
minecraft:visual/star_angle- The angle in degrees of the stars, clockwise from east to west, with
0being directly up.- Value type: float, angle in degrees
- Default value:
0.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Only visible with the overworld skybox type.
- The angle in degrees of the stars, clockwise from east to west, with
minecraft:visual/moon_phase- The phase of the moon.
- Value type: string id, one of:
full_moonwaning_gibbousthird_quarterwaning_crescentnew_moonwaxing_crescentfirst_quarterwaxing_gibbous
- Default value: "
full_moon" - Modifiers: override
- Interpolated: no
- Resolved at the camera's position.
- Value type: string id, one of:
- Only visible with the overworld skybox type.
- The phase of the moon.
minecraft:visual/star_brightness- The brightness of the stars in the sky, where
0.5is the normal brightness during the night and0is fully hidden.- Value type: float between
0and1 - Default value:
0.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- Value type: float between
- Only visible with the overworld skybox type.
- The brightness of the stars in the sky, where
minecraft:visual/sky_light_color- The visual color of sky light. For blocks with a sky light level of 0 (or
minecraft:visual/sky_light_factoris0), this will have no effect. This is the value passed to the lightmap.fsh shader asSkyLightColor.- Value type: RGB Color
- Default value: "#
ffffff" - Modifiers: RGB Color Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- The visual color of sky light. For blocks with a sky light level of 0 (or
minecraft:visual/sky_light_factor- The visual brightness of sky light.
minecraft:visual/sky_light_coloris multiplied by this value. This is the value passed to the lightmap.fsh shader asSkyFactor. - The corresponding gameplay effect is controlled entirely by
minecraft:gameplay/sky_light_level.- Value type: float
- Default value:
1.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the camera's position.
- The visual brightness of sky light.
minecraft:audio/firefly_bush_sounds- If
trueand not below an opaque block, firefly bushes will produce idle sounds.- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the position of a firefly bush.
- If
minecraft:gameplay/sky_light_level- The effective light level of the sky used by mechanics such as mob spawning or daylight detectors.
- For example, a block fully exposed to the sky will be considered to have a light level of exactly this value, while a block deep in a cave will not be affected at all.
- The corresponding visual effect is controlled entirely by
minecraft:visual/sky_light_factor.- Value type: float
- Default value:
15.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved for a whole dimension (cannot be specified on a Biome)
- The effective light level of the sky used by mechanics such as mob spawning or daylight detectors.
minecraft:gameplay/eyeblossom_open- If
true, closed eyeblossoms will eventually open by random block ticks. Iffalse, open eyeblossoms will do the opposite. If "default", open or Closed closed will remain in their current state.- Value type: one of:
truefalse- "
default"
- Default value: "
default" - Modifiers: override
- Interpolated: no
- Resolved at the eyeblossom block's position
- Value type: one of:
- If
minecraft:gameplay/turtle_egg_hatch_chance- The chance that a turtle egg block will switch to its next hatching state when randomly ticked.
- Value type: float between
0and1 - Default value:
0.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the turtle egg block's position.
- Value type: float between
- The chance that a turtle egg block will switch to its next hatching state when randomly ticked.
minecraft:gameplay/creaking_active- While
true, creaking heart blocks (and their corresponding Creaking) will become active. On the other hand, whenfalse, it will enter its dormant state.- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the creaking heart block's position.
- While
minecraft:gameplay/surface_slime_spawn_chance- An additional chance rolled when a natural slime spawn attempt occurs in a biome with the
#allows_surface_slime_spawnstag.- Value type: float between
0and1 - Default value:
0.0 - Modifiers: Float Modifiers
- Interpolated: yes
- Resolved at the position of the slime spawn attempt.
- Value type: float between
- An additional chance rolled when a natural slime spawn attempt occurs in a biome with the
minecraft:gameplay/cat_waking_up_gift_chance
minecraft:gameplay/bees_stay_in_hive- When true, bees will try to navigate to their hives and will not exit unless the hive is broken or next to a fire.
- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at a bee or bee hive block's position.
- When true, bees will try to navigate to their hives and will not exit unless the hive is broken or next to a fire.
minecraft:gameplay/monsters_burn- When
true, monsters will burn while exposed to the sky.- Value type: boolean
- Default value:
false - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the monster's position.
- When
minecraft:gameplay/can_pillager_patrol_spawn- When
true, pillager patrols are able to spawn.- Note: the global skylight level must also be greater than 11.
- Value type: boolean
- Default value:
true - Modifiers: Boolean Modifiers
- Interpolated: no
- Resolved at the position of the patrol spawn attempt.
- Replaces the
#without_patrol_spawnsbiome tag.
- When
minecraft:gameplay/villager_activity- Controls the default AI activity for adult villagers.
- Not all activities are supported by villager AI - if an unsupported one is chosen, the Villager will do nothing. The following activities are supported:
corehideidlemeetpanicpre_raidraidrestwork- Value type: Mob Activity
- Default value: "
minecraft:idle" - Modifiers: override
- Interpolated: no
- Resolved at the villager's position.
minecraft:gameplay/baby_villager_activity- Controls the default AI activity for baby villagers.
- Not all activities are supported by villager AI - if an unsupported one is chosen, the villager will do nothing. The following activities are supported:
corehideidlemeetpanicplaypre_raidraidrest- Value type: Mob Activity
- Default value: "
minecraft:idle" - Modifiers: override
- Interpolated: no
- Resolved at the villager's position.
- Are a new experimental concept defined in data packs under the timeline registry (i.e. found under data/<namespace>/timeline/<id>.json).
- Specify game behavior based on the absolute day time (that which is set by
/time set). Timelines optionally can specify a period over which they will be repeated. - Are able to modify game behavior or visuals by acting as an Environment Attribute source to apply Environment Attribute modifiers.
- Format: object with fields
period_ticks: optional integer, defines the duration in ticks over which the timeline will repeat.- If not specified, the timeline will not repeat
tracks: optional map between Environment Attribute IDs and a corresponding Environment Attribute Track object.
- Format: object with fields
- Timelines by default have no effect unless they are included by a dimension.
- With the inclusion of Timelines, Environment Attribute sources are processed in the following order (from low to high priority):
- Dimensions
- Biomes
- Timelines
- Weather (not data-driven)
- Interpolation
- Timelines can define Attribute Tracks
- These specify how a modifier for a particular Environment Attribute changes over time by defining keyframes.
- Depending on the attribute, interpolation may be used between each keyframe. If interpolation is not used, the previous keyframe value will always be selected.
- For example, a Timeline with a period of 24000 might be set up as following:
- At time =
0, the timeline providessky_color = #ff0000(red) - At time =
1000, the timeline providessky_color = #ff0000(red) - At time =
6000, the timeline providessky_color = #ff00ff(magenta)
- At time =
- Between time =
0and time =1000, the sky color will be red. Between1000and6000, it will shift from red to magenta. Then, from6000all the way until the timeline repeats and reaches time =0again, the color will slowly shift back to red. - Unlike biomes, if a Timeline uses a modifier instead of an override, interpolation is applied to the modifier arguments rather than the final modified values.
- Timelines can define Attribute Tracks
- Attribute Tracks
- An Attribute Track specified within a Timeline takes the format of an object with the following fields:
ease- optional Easing Type (see below), used to ease the interpolaton of the value between keyframes.- Default: linear
- If the target attribute does not support interpolation, the easing mode will have no effect.
- Default: linear
keyframes- list of keyframe objects, must be ordered by the ticks field:ticks- integer between 0 and period_ticks (if specified), defines the tick (within the period) at which this keyframe's value will be active.value- the modifier argument (format dependent on the chosen modifier).- If no modifier is specified (or override is used), the type of this field is the same as the Environment Attribute itself.
- How this value is used depends on the type of modifier.
- Note: at most two keyframes can be placed on the same tick, creating an immediate transition.
modifier- optional string modifier ID, dependent on the Attribute Type (see the Common Modifiers section below).- Default: override
- For example, the following Timeline has a period of
24000, and has an attribute track that modifies onlyminecraft:gameplay/cat_waking_up_gift_chance. Because the easing is constant, between tick362and23667the value is0.0, while between tick23667and362it is0.7. - Like other Environment Attribute sources, the specified value is used as the argument to the specified
modifier. This is then applied on top of sources with a lower priority. In this case the modifier ismaximum, so this timeline will only ever increase the value ofcat_waking_up_gift_chanceto the value specified in the track.
- An Attribute Track specified within a Timeline takes the format of an object with the following fields:
{
"period_ticks": 24000,
"tracks": {
"minecraft:gameplay/cat_waking_up_gift_chance": {
"ease": "constant",
"modifier": "maximum",
"keyframes": [
{ "ticks": 362, "value": 0.0 },
{ "ticks": 23667, "value": 0.7 }
]
}
}
}- Easing Types
- Easing Types control the interpolation between two keyframes by applying a curve. The following built-in Easing Types are provided:
constant- always selects the previous keyframelinearin_backin_bouncein_circin_cubicin_elasticin_expoin_quadin_quartin_quintin_sinein_out_backin_out_bouncein_out_circin_out_cubicin_out_elasticin_out_expoin_out_quadin_out_quartin_out_quintin_out_sineout_backout_bounceout_circout_cubicout_elasticout_expoout_quadout_quartout_quintout_sine
- An Easing Type may also be specified with a Cubic Bézier in the format:
{ "cubic_bezier": [ x1, y1, x2, y2 ]}x1: float between0and1, x-coordinate of the first control point.y1: float, y-coordinate of the first control point.x2: float between0and1, x-coordinate of the second control point.y2: float, y-coordinate of the second control point.
- Easing Types control the interpolation between two keyframes by applying a curve. The following built-in Easing Types are provided:
- Common Data Types
- Mob Activity
- A string ID from the minecraft:activity built-in registry. One of:
minecraft:coreminecraft:idleminecraft:workminecraft:playminecraft:restminecraft:meetminecraft:panicminecraft:raidminecraft:pre_raidminecraft:hideminecraft:fightminecraft:celebrateminecraft:admire_itemminecraft:avoidminecraft:rideminecraft:play_deadminecraft:long_jumpminecraft:ramminecraft:tongueminecraft:swimminecraft:lay_spawnminecraft:sniffminecraft:investigateminecraft:roarminecraft:emergeminecraft:dig
- A string ID from the minecraft:activity built-in registry. One of:
- Mob Activity
- Modifiers
- Added
blend_to_grayRGB/ARGB modifier - modifies a color by taking its grayscale form, applying a brightness modifier, and mixing with this using some factor.- Where
gray = brightness * (0.3 * red + 0.59 * green + 0.11 * blue), result = lerp(factor, subject, [gray, gray, gray])- Argument format: object with fields
brightness: float between0and1, a multiplier to apply to the grayscale value.factor: float between0and1, the factor to mix with.
- Where
- Added
- Biome Tags
- Added
#spawns_coral_variant_zombie_nautilus- Contains the biomes where the coral variant of the zombie nautilus can spawn.
- Added
- Timeline Tags
Changes
Mobs
- Drops 2-3 rotten flesh when killed, with extra 0-1 for each level of Looting.
Zombie horse, camel husk, and nautilus
- Now become persistent with any interaction from a player, not just riding them.
Items
- The margin hitbox from all spears have been changed from
0.25to0.125.[6]
General
- Added new
spear_mobstrigger with fields:player: optional entity predicate, the player using the kinetic weapon.count: optional integer, the number of mobs hit in a single use of the kinetic weapon.
- The pack format version is now
93.0.
minecraft:piercing_weaponandminecraft:kinetic_weapondata components now have bounds on their reach parameters:min_reach: is now valid from0.0to128.0max_reach: is now valid from0.0to128.0hitbox_margin: is now valid from0.0to1.0
- Added a new optional
timelinesfield that specifies which Timelines are active in this dimension.- Format: a Timeline ID, a list of Timeline IDs, or a Timeline Tag.
- The
naturalfield has been fully replaced by theminecraft:gameplay/eyeblossom_openandminecraft:gameplay/creaking_activeenvironment attributes. - The
effectsfield has been removed and replaced with the following new fields:skybox- the skybox rendering type to use, one of:none(wasminecraft:nethereffect ID)overworld(wasminecraft:overworldeffect ID)- Following environment attributes are applied only when the
skyboxisoverworld:minecraft:visual/sky_color,minecraft:visual/sun_angle,minecraft:visual/sunrise_sunset_color,minecraft:visual/moon_phase,minecraft:visual/moon_angle,minecraft:visual/star_angle,minecraft:visual/star_brightness
- Following environment attributes are applied only when the
end(wasminecraft:endeffect ID)- Default:
overworld
cardinal_light- the direction of cardinal lighting that affects blocks, one of:default(wasminecraft:overworldandminecraft:endeffect ID).nether(wasminecraft:nethereffect ID).- Default:
default
- The
fixed_timefield has been replaced by ahas_fixed_timeboolean (default:false)- Time-based effects such as the angle of the sun are now specified instead by environment attributes.
- However, the remainder of behaviors formerly affected by
fixed_timebeing present will now instead use thehas_fixed_timeboolean.
- The limit for the
maxEntityCramminggame rule has been changed to a minimum of 0.
- Zombie Nautilus Variants
- Zombie Nautilus variants can be data-driven by adding entries to data/<namespace>/zombie_nautilus_variant/<id>.json
- This feature is experimental.
- Fields in file:
model- one of: normal, warmasset_id- namespaced id for this variant asset, resolves to assets/<namespace>/textures/<path>.pngspawn_conditions- a uniform variant selection rule.
- Spawn conditions
minecraft:biome- Checks if entity is spawning in specific biomes.
- Fields:
biomes- single entry, list or a tag describing biomes.
minecraft:moon_brightness- Checks if current moon brightness is within certain range.
- Fields:
- range - floating point range (a single number or an object like
{"min": 1, "max": 2})
- range - floating point range (a single number or an object like
minecraft:structures- Checks if entity is spawning in specific structures.
- Fields:
structures- single entry, list or a tag describing structures.
- Zombie Nautilus variants can be data-driven by adding entries to data/<namespace>/zombie_nautilus_variant/<id>.json
- Updated the panorama to resemble Mounts of Mayhem.
- The version is now
73.0.
- Biome Tags
- Removed
#without_patrol_spawns- replaced bygameplay/can_pillager_patrol_spawnenvironment attributes.
- Removed
- Item textures were split out of the blocks atlas into a separate new items atlas that does not have mipmaps.
- All textures used in an item model have to come from the same (items or blocks) atlas.
- All textures used in a block model have to come from the blocks atlas.
Fixes
- MC-199467 – Certain entity animations stop after they've existed in world for too long.
- MC-245895 – View Bobbing stops working after long elytra flight.
- MC-269295 – Jump bar progress renders unused pixels from dynamic texture atlas.
- MC-271729 – Armadillo scute drops are not affected by the
mob_dropsgame rule. - MC-271938 – Mace smash attack can push players in creative mode that are flying.
- MC-301424 –
entity_dataitem component detection is broken in resource packs. - MC-302184 – Copper golems in cave/void air never turn into statues.
- MC-302469 – Creepers at the player's exact position with an explosion radius of 0 set the player's velocity to NaN.
- MC-302477 – Loot tables stopped supporting SNBT as entity data.
- MC-302659 – Items such as grass blocks and cacti have incorrect textures in inventories when mipmap levels are enabled.
- MC-302663 – Any form of attacking non-player entities always produces the “weak attack” sound instead of the appropriate sound.
- MC-302703 – Spear can dismount invulnerable, non-living, and otherwise inanimate passengers from any vehicle.
- MC-302887 – Spear charging animation in first person isn’t perfectly mirrored between the main hand and off hand.
- MC-302911 – If the sun texture cannot be loaded, the moon texture is reused instead.
- MC-303067 – Players can charge with the spear and deal damage while dying.
- MC-303108 – Inventory items are now mipmapped, making them look very blurry.
- MC-303109 – Tick freeze and memory spikes with long
piercing_weaponray reach. - MC-303226 – Music doesn't restart after exiting a pale garden.
- MC-303292 – Cloud movement is jittery when the world's gametime value is large.
- MC-303402 – Hover events on text posted in the chat take effect even when in a GUI.
- MC-303405 – You can attack entities diagonally through solid blocks using spears.
- MC-303413 – Scrolling text does not get clipped properly in UI elements.
- MC-303427 – The lunge enchantment doesn’t work in creative mode if you have 6 or less hunger points.
- MC-303510 – Dropping a spear while charging slows down the player.
- MC-303554 –
minecraft:piercing_weaponcomponent causes attack cooldown damage penalty to be ignored. - MC-303654 – Closed captions of parched show as strays.
- MC-303656 – Placing blocks in empty chunk sections inside loaded chunks shows the chunk fade animation.
- MC-303658 – Block textures are blurry on some systems, depending on mipmap and anisotropic filtering settings.
- MC-303659 – Elements within the language menu are not selected in order when using the TAB key.
- MC-303671 – Camel husks can despawn when wearing a saddle.
- MC-303674 – The hand animation plays when right clicking on a camel husk or zombie horse ridden by another mob with a lead.
- MC-303677 – Camel husks can despawn when attached to a lead.
- MC-303680 – Untamed zombie horses can despawn when attached to a lead.
- MC-303681 – Untamed zombie nautiluses can despawn when attached to a lead.
- MC-303703 – Entities and block entities are not affected by the chunk fade-in effect.
- MC-303704 – Statistics are no longer saved if the folder they would save into doesn't exist yet.
- MC-303705 – Entity cramming can no longer be disabled.
- MC-303714 – The jump bar's progress sprite is improperly scaled.
- MC-303727 – Short effect names can cause the effect duration to appear outside the effect box.
- MC-303734 –
deprecated.jsonrenames translation keys to nonexistent keys. - MC-303744 – Ender pearls can launch players in the direction they are thrown.
- MC-303746 – Spear attacks can hurt entities through doors.
- MC-303799 – There is no 'Search...' text in the search field in the world selection screen.
- MC-303802 – Spamming right click and shift when getting into boat gives a speed boost.
- MC-303891 – Untamed zombie horses and skeleton horses cannot have saddles placed on their saddle slot using
/item.
Notes and references
- ↑ "Minecraft Snapshot 25w41a" – Minecraft.net, October 9, 2025.
- ↑ "Minecraft Snapshot 25w42a" – Minecraft.net, October 14, 2025.
- ↑ "Minecraft Snapshot 25w43a" – Minecraft.net, October 21, 2025.
- ↑ "Minecraft Snapshot 25w44a" – Minecraft.net, October 28, 2025.
- ↑ "Minecraft Snapshot 25w45a" – Minecraft.net, November 4, 2025.
- ↑
"hitbox_margin": 0.25,"hitbox_margin": 0.125,

