Java Edition 26.3/Development versions

Minecraft Wiki article. Categories: Pages_using_DynamicPageList4, Articles_to_be_expanded, Development_version_lists

📌 Mirrored from Minecraft Wiki

This article is reproduced from Java Edition 26.3/Development versions on the Minecraft Wiki. Mirrored from revision 3654318. It is licensed CC BY-NC-SA 3.0 by the Minecraft Wiki contributors — not under the Codex’s CC BY-SA 4.0, and it may not be used commercially. Edits belong upstream, not here.

This is a list of Java Edition 26.3 development versions.

26.3 Snapshot 1 (known as 26.3-snapshot-1 in the launcher) is the first snapshot for Java Edition 26.3, released on June 23, 2026,[1] which adds the dappled forest alongside the poplar wood set, as well as abandoned camps, wool stairs, and wool slabs.

Additions

Blocks

Poplar wood set:

Red shrub

  • A bush-like plant block found in small patches in the dappled forest.
  • Using bone meal on a red shrub attempts to grow another shrub on a neighboring block.
  • Can be used in the composter.

Shelf mushroom

  • A mushroom variant found on poplar trees and fallen poplar trees.
  • Comes in two sizes.
    • A small shelf mushroom can be grown into a large shelf mushroom with bone meal.
    • A large shelf mushroom drops two shelf mushroom items when broken.
  • Is bouncy when fallen on by entities, similar to a bed.
    • Shelf mushroom makes a bouncing sound when a living entity bounces on it.
  • Can be used to make mushroom stew and suspicious stew.
  • Can be sold by a wandering trader.
  • Can be used in the composter.

Wool stairs and slabs

  • Comes in sixteen colors.
  • Crafted using wool.
  • Can be used to dampen sounds, like wool and carpets.
  • They are also not usable in other ways like wool.
Non-mob entities

Invicon Poplar Boat.png: Sprite image for Poplar Boat in Minecraft Poplar boat and Invicon Poplar Boat with Chest.png: Sprite image for Poplar Boat with Chest in Minecraft Poplar boat with chest

  • Boat variants that are crafted using poplar planks.
World generation
Biomes

Dappled forest

Features

Poplar tree

  • A tree that generates in dappled forests.
  • Comes in three different colors of leaves, orange, red, and yellow, randomly chosen at generation.
  • Each variant of the tree has its own variant of falling leaf particles matching the color of the leaves.
  • Poplar leaves drop poplar saplings which will randomly grow into any of the three different variants.
  • Generate with leaf litter around or shelf mushrooms on them.
  • Fallen poplar trees have shelf mushrooms on them.
  • The trunk of the trees are made of poplar logs.
    • Poplar logs can be crafted into a new set of poplar wood blocks.
Structures

Abandoned camp

General

Data component format

Features

  • Added minecraft:end_podium feature type
    • Places the end podium.
    • Two feature instances are now used to place the podium from in-game events:
      • end_podium_active
      • end_podium_inactive
    • Fields:
      • active: boolean field controlling if the portal is active.

Loot functions

  • Added minecraft:command_slot_source loot table type.
    • Currently used to evaluate slot sources with the /item and /execute commands.
    • It takes the following parameters:
      • container, the container or inventory being evaluated.
      • origin, the position at which the command was executed.
      • this_entity, the @s entity of the command being executed (optional).

Particles

  • Added minecraft:red_poplar_leaves
    • Falls from red poplar leaves blocks.
    • Has no fields.
  • Added minecraft:orange_poplar_leaves
    • Falls from orange poplar leaves blocks.
    • Has no fields.
  • Added minecraft:yellow_poplar_leaves
    • Falls from yellow poplar leaves blocks.
    • Has no fields.

Tags

  • Biome Tags
    • Added tags for biomes which will generate the respective abandoned camp variant:
      • #has_structure/abandoned_camp_bamboo_jungle
      • #has_structure/abandoned_camp_birch_forest
      • #has_structure/abandoned_camp_cherry_grove
      • #has_structure/abandoned_camp_dappled_forest
      • #has_structure/abandoned_camp_flower_forest
      • #has_structure/abandoned_camp_forest
      • #has_structure/abandoned_camp_meadow
      • #has_structure/abandoned_camp_old_growth_birch_forest
      • #has_structure/abandoned_camp_old_growth_pine_taiga
      • #has_structure/abandoned_camp_old_growth_spruce_taiga
      • #has_structure/abandoned_camp_savanna
      • #has_structure/abandoned_camp_pale_garden
      • #has_structure/abandoned_camp_snowy_taiga
      • #has_structure/abandoned_camp_sparse_jungle
      • #has_structure/abandoned_camp_swamp
      • #has_structure/abandoned_camp_taiga
      • #has_structure/abandoned_camp_windswept_forest
      • #has_structure/abandoned_camp_wooded_badlands
  • Block Tags
    • Added #blocks_dolphin_jump
      • Contains all blocks that dolphins cannot move through when jumping out of water.
    • Added #blocks_fluid_flow
      • Contains all blocks that block fluid flow.
      • Currently, this tag does nothing.[2]
    • Added #blocks_lava_fire_spread
      • Contains all blocks that block the creation of fire by lava.
    • Added #blocks_motion
      • Collection tag containing all blocks that are considered to block motion in some way.
    • Added #blocks_motion_in_heightmap
      • Contains all blocks that are taken into account for the motion_blocking heightmap.
    • Added #blocks_motion_in_heightmap_no_leaves
      • Contains all blocks that are taken into account for the motion_blocking_no_leaves heightmap.
    • Added #blocks_motion_no_leaves
      • Collection tag containing all blocks that are considered to block motion in some way, but excluding leaf blocks.
    • Added #causes_suffocation
      • Contains all blocks where entities can suffocate.
    • Added #entities_can_teleport_to
      • Contains all blocks that entities are allowed to teleport to.
    • Added #ice_melts_when_destroyed_above
      • Contains all blocks that causes ice to melt into water if the ice is destroyed when placed above them.
    • Added #ores
      • Collection tag containing all types of ores.
    • Added #poplar_logs
      • Contains all poplar log blocks.
    • Added #required_for_poplar_leaf_ambience
      • Contains the blocks which can satisfy requirement for Poplar leaves to make ambient sound.
    • Added #skulls
      • Collection tag containing all head and skull blocks.
    • Added #washed_away_by_fluids
      • Contains all blocks that break when a fluid flows through them.
      • Currently, this tag does nothing, causing blocks like redstone components and cobwebs to not be broken by flowing water.[2]
    • Added #wool_slabs
      • Contains all wool slabs blocks.
    • Added #wool_stairs
      • Contains all wool stairs blocks.
  • Damage Type Tags
    • Added #no_wolf_retaliation for all damage types that should not cause tamed wolves to attack their source in order to defend their owner.
  • Entity Tags
    • Added #cannot_be_dismounted_by_item_usage
      • Contains all entities which cannot be dismounted by items.
  • Item Tags
    • Added #poplar_logs
      • Contains all poplar log items.
    • Added #wool_stairs
      • Contains all wool stairs items.
    • Added #wool_slabs
      • Contains all wool slabs items.
    • Added #mushrooms
      • Contains all mushroom items.
    • Added #ores
      • Collection tag containing all types of ores.

Changes

Blocks

Carpets

  • Can no longer be crafted.[3]

Decorated pot

  • Items (bricks and pottery sherds) dropped from breaking a decorated pot side will now preserve data.
  • Decorated pot can now have empty sides which causes it to not drop anything when broken unless it has an item in it.
    • In survival mode, this is accessible via naturally generated undecorated pots and by crafting using the decorated_pot_simple recipe from the recipe book.
    • It is also accessible via the Creative inventory or through commands where at least one side is not defined in sherds.
    • Previously, empty sides were treated as brick.
Items

Pottery sherds

  • Pottery sherds are now data-driven.

Suspicious stew and mushroom stew

  • Can now be crafted with 2 of any mushroom.
Mobs

Sulfur cubes

  • Changed the sounds of the "regular" sulfur cube archetype.

Wandering trader

Non-mob entities

Paintings

  • Paintings with custom names now also show those names when the player looks at them in the world.
Command format

General

/execute

  • Added new slots condition sub-command.
    • Counts the number of slots from the slot source that are present on the targeted block or entity.
    • The slot source will be evaluated with the minecraft:command_slot_source loot type.
    • Syntax:
      • /execute execute if unless slots block <pos> <slot source>
      • /execute execute if unless slots entity <targets> <slot source>
  • The items condition sub-command now takes a slot source as argument instead of a slot.
    • The slot source will be evaluated with the minecraft:command_slot_source loot type.
    • Syntax:
      • /execute execute if unless items block <pos> <slot source> <item predicate>
      • /execute execute if unless items entity <targets> <slot source> <item predicate>

/give

  • When the amount of items passed to the give command is above limit, the command will now signal an error instead of just printing an error message and returning 0.

/item

  • Now takes a slot source as argument in place of anywhere a slot was previously used.
    • It will be evaluated with the minecraft:command_slot_source loot type.
    • Can be a slot source in either inline or reference form.
    • Can be a slot source targeting multiple slots.
    • The replace sub-command has new semantics:
      • One by one in the order they are provided by the slot source, the contents of each destination slot are replaced with the corresponding source item.
      • When there are more destination slots than there are source items, the remaining slots are ignored.
        • Example: replace [12345] with (ABC) -> [ABC45]
      • When there are fewer destination slots than there are source items, the remaining items are ignored.
        • Example: replace [123] with (ABCDE) -> [ABC]
    • String notation slot ranges in the form <slot_type> or <slot_type>.<slot_number> are still permitted.
      • Can be a single slot, such as armor.chest
      • Can be multiple slots, such as container.*
      • Acts as shorthand for a minecraft:slot_range slot source using that slot range.
        • Example: hotbar.4 is the same as {type:"minecraft:slot_range",slots:"hotbar.4"}
  • The entity argument in the from entity item source can now be a selector targeting multiple entities.
    • When more than a single entity is targeted, the slots sourced from each are concatenated.
  • Added new fill and override sub-commands, each with syntax identical to /item replace.
    • /item fill
      • Fills each destination slot with a source item.
      • When there are more destination slots than there are source items, the items repeat until every slot is filled.
        • Example: fill [12345] with (ABC) -> [ABCAB]
    • /item override
      • Overrides the contents of each destination slot with the corresponding source item.
      • When there are more destination slots than there are source items, the remaining slots are cleared.
        • Example: override [12345] with (ABC) -> [ABC__] (where _ represents an empty slot).

/team

  • The result of /team join and /team leave subcommands now reflects the exact count of entities that have joined or left (i.e. excluding entities for which teams have not changed).

/tellraw

  • The nbt component in a raw chat message will only be resolved up to 64k times.

/tick

  • The following subcommands will now signal an error instead of just printing an error message and returning 0:
Gameplay

Advancements

  • Visiting the dappled forest is now required for the "Adventuring Time" advancement.
General

Block entity format

  • minecraft:decorated_pot
    • Field sherds no longer stores a list of 4 item IDs. Instead, the new format is an object with 4 optional item stack fields named:
      • back
      • left
      • right
      • front

Data component format

  • minecraft:pot_decorations
    • Instead of taking a list of 4 item IDs, this component now takes an object with 4 optional item stack fields named:
      • back
      • left
      • right
      • front
  • minecraft:trim_material
    • The format of inline material definitions has been updated
    • Trim Materials
      • The format of elements in the trim_material registry has been updated:
        • asset_name has been replaced with palette_id - Palette Texture ID to be used for this material.
        • override_armor_assets has been removed, overrides are now defined in the Resource Pack Equipment Asset.

Data pack

Features

  • The worldgen/configured_feature registry has moved to worldgen/feature and configuration is now done inline in the root object rather than separated into a config field.
  • minecraft:tree feature type
    • Added shelf_mushroom tree decorator type.
      • Places shelf mushrooms on logs with the specified probability.
      • Format: object with fields:
        • probability - float (between 0 and 1), the probability that any shelf mushrooms will be placed for a given feature.
    • Added poplar_foliage_placer foliage placer type
      • Places leaves blocks for poplar trees in a rhombus shape in one of two possible directions
      • Format: object with fields:
        • height - int provider (between 5 and 16), the height of the foliage.
        • side_hole_chance - float (between 0.0 and 1.0), the chance for blocks to be randomly removed at the edge of the foliage.
    • Added poplar_trunk_placer trunk placer type
      • Places log blocks for poplar trees in a straight shape with branches by the start of the foliage.
      • Format:
        • trunk_height_above_branches - int provider (between 0 and 8), the height of the trunk above the branches.
        • branch_amount - int provider (between 1 and 4), the amount of branches to create by the foliage.

Instrument definition

  • The format of elements in the instrument registry have been updated:
    • Added the durability_damage field - optional non-negative integer, amount of durability to consume on each use.
    • Updated the use_duration field - can now be 0 for no cooldown.

Minecraft Server Management Protocol 3.1.0

  • Added notifications indicating when the server performs a full world upgrade on startup.
    • minecraft:notification/world/upgrade_started
    • minecraft:notification/world/upgrade_progress
    • minecraft:notification/world/upgrade_finished
    • minecraft:notification/world/upgrade_failed

Noise settings

  • The surface_rule field has been renamed to material_rule
    • Format: inline Material Rule or Material Rule ID reference.

Particles

Resource pack

  • The version is now 89.0.

Servers

  • Some log lines that server software might look out for have been removed.
    • The Minecraft Server Management Protocol can be used instead.

Slot sources

  • Slot sources can now be defined as files inside a datapack, within the slot_source folder.
    • Can be used in commands which take slot sources as arguments.
    • Can be used in inline slot sources using the minecraft:reference type.
  • minecraft:contents is no longer restricted to only selecting non-empty slots.
  • Added minecraft:reference
    • Uses the referenced slot source.
    • Fields:
      • name - the namespaced id of the slot source.
  • Changed minecraft:slot_range
    • The source field has a new valid type container, which sources slots from a container or inventory provided through loot context.
    • The source field is now optional.
      • Defaults to the container source type when absent.

Sounds

  • Added new sound events:
    • block.shelf_mushroom.break
    • block.shelf_mushroom.fall
    • block.shelf_mushroom.place
    • block.shelf_mushroom.step
    • block.shelf_mushroom.bounce
    • block.poplar_leaves.ambient

Tags

  • Biome Tags
    • Added dappled_forest to #is_forest, #is_overworld, #spawns_cold_variant_farm_animals, and #has_structure/trial_chambers tags.
  • Block Tags
    • Added tuff to #stone_ore_replaceables tag.
    • Added red_shrub to #replaceable, and #replaceable_by_mushrooms tags.
    • Added red_poplar_leaves, orange_poplar_leaves, and yellow_poplar_leaves to #leaves tag.
    • Added potted_poplar_sapling to #flower_pots tag.
    • Added #poplar_logs to #logs_that_burn tag.
    • Added poplar_log to #overworld_natural_logs tag.
    • Added poplar_planks to #planks tag.
    • Added poplar_sign to #standing_signs tag.
    • Added poplar_hanging_sign to #ceiling_hanging_signs tag.
    • Added poplar_wall_sign to #wall_signs tag.
    • Added poplar_wall_hanging_sign to #wall_hanging_signs tag.
    • Added poplar_button to #wooden_buttons tag.
    • Added poplar_door to #wooden_doors tag.
    • Added poplar_fence to #wooden_fences tag.
    • Added poplar_fence_gate to #fence_gates tag.
    • Added poplar_pressure_plate to #wooden_pressure_plates tag.
    • Added poplar_shelf to #wooden_shelves tag.
    • Added poplar_slab to #wooden_slabs tag.
    • Added poplar_stairs to #wooden_stair tag.
    • Added poplar_trapdoor to #wooden_trapdoors tag.
    • Added #wool_slabs to #slabs tag.
    • Added #wool_stairs to #stairs tag.
    • Added #wool_slabs, and #wool_stairs to #dampens_vibrations tag.
  • Entity Tags
    • Added poplar_boat to #boat tag.
  • Item Tags
    • Added tuff to #stone_ore_replaceables tag.
    • Added red_poplar_leaves, orange_poplar_leaves, and yellow_poplar_leaves to #leaves tag.
    • Added #poplar_logs to #logs_that_burn tag.
    • Added poplar_planks to #planks tag.
    • Added poplar_sign to #signs tag.
    • Added poplar_hanging_sign to #hanging_signs tag.
    • Added poplar_button to #wooden_buttons tag.
    • Added poplar_door to #wooden_doors tag.
    • Added poplar_fence to #wooden_fences tag.
    • Added poplar_fence_gate to #fence_gates tag.
    • Added poplar_pressure_plate to #wooden_pressure_plates tag.
    • Added poplar_shelf to #wooden_shelves tag.
    • Added poplar_slab to #wooden_slabs tag.
    • Added poplar_stairs to #wooden_stair tag.
    • Added poplar_trapdoor to #wooden_trapdoors tag.
    • Added poplar_boat to #boats tag.
    • Added poplar_chest_boat to #chest_boats tag.
    • Added #wool_slabs to #slabs tag.
    • Added #wool_stairs to #stairs tag.
    • Added #wool_slabs, and #wool_stairs to #dampens_vibrations tag.

Textures

  • Palette Textures
    • All armor trim palette textures have been moved from textures/trim/color_palettes/ to textures/palettes/trim/
      • The base armor trim palette texture has instead been moved to textures/palettes/trim_base.png
    • Entity armor trim material textures are no longer generated into the minecraft:trims atlas with paletted_permutations, but rather generated on-demand
      • The base palette id is now specified in a new palette mcmeta section field
      • This section has a single field: base_palette - the base Palette Texture ID to remap from
    • Item armor trim material textures are still generated with paletted_permutations as before
    • Palette Texture locations in the palette_key and permutations fields have been replaced by Palette Texture IDs - i.e. <namespace>:<path> now resolves to <namespace>:textures/palettes/<path>.png
  • Equipment Assets
    • A new optional trim_palette_replacements field controls which trim material palettes should be replaced for this equipment asset (formerly controlled by override_armor_assets in the trim material)
      • Format: map from original Palette ID to a replacement Palette ID
  • Block Sprites
    • Added new Block textures:
      • block/orange_poplar_leaves.png
      • block/red_poplar_leaves.png
      • block/yellow_poplar_leaves.png
      • block/poplar_door_bottom.png
      • block/poplar_door_top.png
      • block/poplar_log_top.png
      • block/poplar_log.png
      • block/poplar_planks.png
      • block/poplar_trapdoor.png
      • block/stripped_poplar_log.png
      • block/stripped_poplar_log_top.png
      • block/poplar_log.png
      • block/shelf_mushroom_stage0.png
      • block/shelf_mushroom_stage1.png
      • block/poplar_hanging_sign.png
      • block/poplar_sign.png
      • block/poplar_sapling.png
      • block/poplar_shelf.png
      • block/red_shrub.png
  • Item Sprites
    • Added new Item textures:
      • item/poplar_door.png
      • item/poplar_hanging_sign.png
      • item/poplar_sign.png
      • item/poplar_boat.png
      • item/poplar_chest_boat.png
  • UI Sprites
    • Added new UI textures:
      • gui/hanging_signs/poplar.png
      • gui/signs/poplar.png
  • Entity Textures
    • Added new Entity textures:
      • entity/boat/poplar.png
      • entity/chest_boat/poplar.png
  • Particles
    • Added new Particle textures:
      • orange_poplar_1.png
      • orange_poplar_2.png
      • orange_poplar_3.png
      • orange_poplar_4.png
      • red_poplar_1.png
      • red_poplar_2.png
      • red_poplar_3.png
      • red_poplar_4.png
      • yellow_poplar_1.png
      • yellow_poplar_2.png
      • yellow_poplar_3.png
      • yellow_poplar_4.png

World generation

  • Material Rule Registry
    • A new data-driven registry has been introduced, loaded from data/<namespace>/worldgen/material_rule/<id>.json.
    • Elements in this registry define a pipeline for selecting what base block to place in the world at a given position.
    • The format is identical to that which was formerly written in the surface_rule field within noise settings files, with the following extensions:
      • Material rules can now be specified either inline (as previously), or as an ID reference to an element in the worldgen/material_rule registry.
      • Material conditions can also now be specified as an ID reference to an element in the worldgen/material_condition registry.
  • Material Condition Registry
    • A new data-driven registry has been introduced, loaded from data/<namespace>/worldgen/material_condition/<id>.json.
    • Elements in this registry define a condition that can be referenced within a Material Rule pipeline (e.g. testing biome or surface depth).
    • The format is identical to that which was formerly written within the condition Material Rule type, with the following extension:
      • Material Conditions can also now be specified as an ID reference to an element in the worldgen/material_condition registry.
  • Structure Placements
    • Added minecraft:dimension_origin
    • New structure placement that places a single instance of the structure at the dimension origin.
      • The dimension origin is defined as the spawn_target for noise settings based dimensions, otherwise Chunk (0, 0).
    • No additional fields.
  • Rule Tests
    • These are the predicates used by ore features (targets[].target) and rule structure processors (rules[].input_predicate and rules[].location_predicate).
    • Added rule test type minecraft:height_match
      • Checks the y-level of a block, returning true only if it is greater than or equal to min_inclusive and less than or equal to max_inclusive.
      • Format: object with fields:
        • min_inclusive – int, the minimum y value of allowed blocks (inclusive).
        • max_inclusive – int, the maximum y value of allowed blocks (inclusive).
    • Added rule test type minecraft:all_of
      • This checks a list of Rule Tests for whether all of them return true for the same block.
      • Format: object with fields:
        • rules - list of Rule Tests, the rules to test the block against.

Fixes

41 issues fixed

From released versions before Java Edition 26.3

  • MC-4 – Item drops sometimes appear at the wrong location.
  • MC-73162 – Breaking an entity that instantly breaks sometimes destroys the block behind it in Creative mode.
  • MC-91006 – Some entities lose their name when placed/broken.
  • MC-102732 – Arrows can visually bounce off of entities that don't wear a shield.
  • MC-113006 – Items reeled in with fishing rods do not move smoothly but appear to teleport.
  • MC-122717 – Command success messages for some commands include unaffected entities, unlike the command result.
  • MC-151857 – The success message of /give when affecting multiple players uses the wrong string.
  • MC-162159 – Riding boats above bubble columns causes players to teleport up 2 blocks.
  • MC-168446 – Single dark oak and pale oak saplings accept bone meal despite not being able to grow.
  • MC-206356 – The motion of falling block entities is visually slow.
  • MC-222818 – You can ignite TNT in Adventure mode.
  • MC-223321 – You can destroy turtle eggs by standing or jumping on them in spawn protection.
  • MC-223323 – You can trample farmland in spawn protection.
  • MC-264003 – Boats carrying players sometimes stop abruptly when sliding along ice.
  • MC-265584 – TNT dispensed in bubble columns with soul sand right under visually moves through blocks above.
  • MC-276692 – Lingering potions which land on the target's head do not grant their effects to the target.
  • MC-279395 – Trees can generate floating over ruined portals.
  • MC-295756 – Pistons desync on the client-side, causing players to be moved differently compared to other entities.
  • MC-297741 – Gravity-affected blocks in upwards bubble columns can clip through solid blocks above them (on the client).
  • MC-298431 – Boats are launched by slime blocks inconsistently.
  • MC-298762 – Phantoms deflect arrows shot from bows/crossbows.
  • MC-302221 – Moving entities deflect arrows.
  • MC-304594 – Spears can dismount interaction entities from their vehicles.
  • MC-305535 – Elytra are activated after only single tapping the "Jump" key when the player is in lava.
  • MC-307625 – The glowing effect is not visible on block displays displaying end portals or end gateways.
  • MC-307890 – Some textures of geyser plume particles use the wrong color in some spots.
  • MC-307933 – Deepslate ores can generate on the surface by replacing tuff around sulfur springs.
  • MC-308008 – The success message of /tag reports that it affected more entities than it did.
  • MC-308009 – The success message of /scoreboard players enable reports that it affected more players than it did.
  • MC-308011 – The success message of /recipe reports that it affected more players than it did.
  • MC-308012 – The success message of /enchant reports that it affected more entities than it did.
  • MC-308013 – The success message of /effect reports that it affected more entities than it did.
  • MC-308254 – Dying to a sulfur cube with a magma block doesn't increment the player's killed_by:sulfur_cube statistic.
  • MC-308314 – Custom player heads do not render their texture properly when inside a sulfur cube.
  • MC-308405 – /unpublish succeeds when the game is not published despite the failure message.
  • MC-308490 – The "regular" sulfur cube archetype produces stone sounds, despite no longer using stone blocks.
  • MC-308789 – Pointed dripstone and sulfur spikes can be destroyed by tridents in Adventure mode.
  • MC-308809 – Full-width spaces take up more space on signs now.
  • MC-308830 – Placing beds to replace tall grass doesn't break the other half.
  • MC-308836 – Obfuscated text no longer keeps a consistent width.
  • MC-308849 – Creakings can take knockback.

26.3 Snapshot 2 (known as 26.3-snapshot-2 in the launcher) is the second snapshot for Java Edition 26.3, released on June 30, 2026, which replaces the approach of the "Improved Transparency" option with a new algorithm and fixes bugs.[4]

Additions

General

Block predicates

  • Added minecraft:height_range
    • Checks the height of the position against a given range.
    • Format:
      • min_inclusive: Vertical Anchor describing the minimum height required.
      • max_inclusive: Vertical Anchor describing the maximum height required.

Data component format

  • Added minecraft:block_transformer
    • This component allows items to transform a block into another block on player interaction.
    • Format: list of objects with fields:
      • block_state_provider - block state provider, used to provide the state for the transformed block.
        • If the block state provider returns no result (as by rule_based_state_provider, for example), the next rule in the list will be attempted.
        • The set of block state providers are the same as the block state providers used in World Generation.
      • sound - optional field, sound event to play on interaction, e.g. minecraft:item.axe.strip.
        • If not present, defaults to play no sound event.
      • particle - optional field, particles to play on interaction.
        • If not present, defaults to none
          • none
          • scrape
          • wax_on
          • wax_off
      • disallowed_faces - optional field, list of directions specifying which faces on the clicked block that cannot be interacted with.
        • If a disallowed face is interacted with, the next rule in the list will be attempted.
        • If not present, defaults to an empty list.
        • Values:
          • up
          • down
          • north
          • south
          • east
          • west
      • loot - optional loot table, the loot table to use for dropping items on a successful transformation, e.g. minecraft:till/rooted_dirt.
        • If not present, defaults to using no loot table.
      • drop_strategy - optional field, configures from where in the block any loot should drop.
        • If not present, defaults to from_middle
        • Values:
          • from_middle - from the middle of the block.
          • clicked_face - from the face interacted with.
      • transform_type - optional field, configures how nearby blocks should be affected by the transformation.
        • If not present, defaults to single_block
        • Values:
          • single_block - only affects the block interacted with.
          • copper_chest - if input and output blocks are both copper chests of any weathering state, waxed or unwaxed, this transformation will affect both sides of a double chest.
      • consume_on_use - optional Boolean, determines if the item should be consumed or not.
        • Only applies to stackable items
        • If not present, defaults to true
      • item_damage_per_use - optional Integer, determines how much damage the item takes with each use.
        • Only applies to non-stackable items.
        • If not present, defaults to 1.
    • Interactions related to the block (rather than the item) have higher priority. See Interactable blocks § Mechanics of use on block for more details.
    • Used, by default, in axes[5], hoes[6], and shovels[7].
    • Armor stand, block items (included powder snow bucket), bone meal, brush, debug stick, end crystal, ender eye, fire charge, firework rocket, flint and steel, all hanging entity items (painting, (glow) item frame), honeycomb, lead, all minecarts, all potions, and all spawn eggs has hardcoded effects when interacting with blocks, whereas this data component has no effect whatsoever.
      • Compass, map, and shears has hardcoded effects when interacting with an item, but attempts to transform the blocks according to this component if that fails.

Features

  • Added the minecraft:copy_properties_provider block state provider
    • Copies common Block State properties from the Block at the evaluated position to the resulting state. Format: object with fields:
      • source_block_state_provider[note 1]: Block State Provider, provides the Block State which the copied properties are copied on top of.
        • Only properties common between both the source and the target blocks will be copied.
  • Added minecraft:overlay feature type
    • Places a set of features in the same location.
      • Note that as opposed to the minecraft:sequence feature type, all features are placed regardless of individual placement success.
    • Format:
      • features: Placed Feature ID, non-empty list of Placed Feature IDs or hash-prefixed Placed Feature Tag for the features to place
  • Added minecraft:projected_random_patchy_square feature type
    • Generates a square where each block is randomly placed or not placed with its probability based on the distance from the center of the square, with the center more likely to generate than the edges. Each placed block can be projected downwards if the appropriate conditions are met.
    • Format:
      • block: Block state provider for which block to place
      • project_through: Block Predicate for which blocks are considered "empty" and should be projected through
      • size: Int provider between 1 and 16 that determines the size of the square as measured from the center to the edge
      • max_projection_height: Non-negative integer representing the maximum change in y level from the original height to the placement height for a block in the square

Loot table

  • Added till/rooted_dirt loot table for drops when rooted dirt is tilled with a hoe.

Tags

  • Added #cannot_place_basalt_pillar_on block tag.
  • Added #turns_into_dirt_path block tag.
    • Contains all blocks that turn into dirt path blocks when a shovel is used for pathmaking.
  • Added #turns_into_farmland block tag.
    • Contains all blocks that turn into farmland blocks when a hoe is used for tilling.
  • Added #dowses_campfires item tag.
    • Contains items that can dowse a lit campfire block.

Changes

Blocks

Carpets

  • Can be crafted once again.

Poplar door

  • Item texture changed from to add hinges like other door variants.

Shelf mushroom

  • Both inventory item and placed block texture has been updated.
  • When placed on the player's head via commands, the shelf mushroom will now look like a duck bill instead of just being placed on top of the player's head.
Items

Shield

  • When using a shield together with a hoe or a shovel, raising the shield will take precedence over tilling and pathmaking.
    • Crouching will allow tilling and pathmaking.
Mobs

General

  • Persistent mobs' random walk/swim behaviors will now deactivate when players are not nearby, in the same way as non-persistent mobs.

Drowned

  • Drowned with tridents will now use a melee attack if the player is within 3 blocks of them to match Bedrock Edition.
    • This attack deals a base attack damage of 11.

Wandering Trader

General

Data pack

  • The pack format version is now 109.0.
  • The definition field from the blocks.json data generation report has been removed

Features

  • Changed the minecraft:random_neighbor_spread feature type
    • Renamed from minecraft:glowstone_blob.
      • Now exposes more control over the feature.
      • Places blocks randomly in an area starting at the origin, each block placing so it has exactly one accepted neighbor.
    • Format changes:
      • Added field block: Block state provider for which block to place.
      • Added field accepted_neighbors: Block ID, list of block IDs or hash-prefixed block tag for which blocks count as a valid neighbor.
      • Added field can_replace: Block predicate for which blocks to replace.
      • Added field attempts: Int provider between 1 and 3000 for how many placements attempts to make.
      • Added field xy_offset[note 2]: Int provider between -16 and 16 for what offsets to try along the x and z axes.
      • Added field y_offset: Int provider between -16 and 16 for what offsets to try along the y axis.
  • Changed the minecraft:single_block_pillar feature type
    • Renamed from minecraft:basalt_pillar.
      • Now exposes more control over the feature functionality.
    • Format changes:
      • Added field block: Block state provider for which block to place.
      • Added field can_replace: Block predicate for which blocks to replace.
      • Added field direction: Vertical direction of the pillar - one of up and down.
      • Added field chance_to_continue: Optional probability between 0 and 1 (default: 1) that the pillar continues another block (assuming can_replace matches)
      • Added field cap_feature: Optional placed feature placed at the end of the pillar.
  • Changed the minecraft:stepped_column_cluster feature type
    • Renamed from minecraft:basalt_columns.
      • Now exposes more control over the feature functionality.
    • Format changes:
      • Added the field block: Block state provider for which block to place.
      • Added the field can_replace: Block predicate for which blocks can be replaced by the column.
      • Added the field continue_through: Block predicate for which pre-existing blocks to accept as part of a column.
      • Added the field cannot_place_on: Block ID, list of block IDs or hash-prefixed block tag ID representing which blocks are avoided when starting placement.
      • Renamed the field reach to column_reach
      • Added the field column_count: int provider (between 1 and 150) - the number of columns to generate.
      • Added the field cluster_reach: int provider (between 0 and 13) - the size of the square to attempt to generate columns in.
        • The effective reach is also limited by height.

Noise settings

  • Spawn Target
    • The spawn_target field has been updated to allow use of any density function, instead of just a subset of those defined within the noise_router field.
    • The suitability of a candidate spawn position is determined by evaluating, in some arbitrary n-dimensional space, the squared Euclidean distance to a set of target hypercubes.
    • For example, one axis might be temperature and the second erosion - and suitability determined by distance to the square between temperature=0.1, erosion=0.2 and temperature=0.3, erosion=0.5. This would prefer any candidate spawn within those ranges equally, while penalizing candidate spawns very far out of that range.
    • Format: list of target hypercubes
      • Target format: map between Density Function ID and a range on that axis:
        • Range is specified as one of:
          • Float, an exact target value.
          • Array of 2 floats, a range of target values in form [min, max].
          • An object with fields:
            • min - float, the minimum value of the target range.
            • max - float, the maximum value of the target range.

Resource pack

  • The version is now 90.0.

Server properties

  • The white-list property is now true by default.

Shaders

  • Replaced current "Improved Transparency" approach with a new Order-independent Transparency (OIT) algorithm which is expected to be much better at solving translucency issues.
    • Added new shaders to support order-independent transparency:
      • core/oit_composite.fsh
      • include/oit.glsl
      • include/oit_add_transmittance.glsl
      • include/oit_common.glsl
      • include/oit_depth_bounds.glsl
      • include/oit_depth_sample.glsl
      • include/oit_sample.glsl
    • Extracted the texture sampling logic from core/terrain.fsh into include/texture_sampling.glsl
    • Renamed the following core shaders:
      • core/rendertype_clouds.vsh -> core/clouds.vsh
      • core/rendertype_clouds.fsh -> core/clouds.fsh
      • core/rendertype_world_border.vsh -> core/world_border.vsh
      • core/rendertype_world_border.fsh -> core/world_border.fsh
    • Updated core shaders to support order-independent transparency
      • Introduced new defines:
        • OIT - A boolean indicating if OIT is enabled.
        • OIT_DEPTH_BOUNDS - A boolean indicating if the depth bounds pass is being executed.
        • OIT_TRANSMITTANCE - A boolean indicating if the transmittance pass is being executed.
        • OIT_ACCUMULATE - A boolean indicating if the accumulate pass is being executed.
        • OIT_ALPHA_ONLY - A boolean indicating if either the depth bounds or transmittance pass is being executed.
        • OIT_ADDITIVE - A boolean indicating that the OIT algorithm should emulate additive blending for the executing pipeline.
        • OIT_OPAQUE_PARTS_THRESHOLD - A float determining above which alpha threshold a fragment should be considered solid and not go through OIT.
        • WAVELET_RANK - An integer internal to the OIT algorithm.
        • COEFF_COUNT - An integer internal to the OIT algorithm.
        • COEFF_ATTACHMENT_COUNT - An integer internal to the OIT algorithm.
        • B3D_IS_ZERO_TO_ONE - A boolean indicating if the current rendering backend uses the depth range of [0, 1], it is available globally to all shaders independently of the OIT setting.
        • Affected shaders:
          • core/block.fsh
          • core/block.vsh
          • core/clouds.fsh
          • core/clouds.vsh
          • core/entity.fsh
          • core/entity.vsh
          • core/item.fsh
          • core/item.vsh
          • core/particle.fsh
          • core/position_color.fsh
          • core/rendertype_beacon_beam.fsh
          • core/rendertype_clouds.fsh
          • core/rendertype_crumbling.fsh
          • core/rendertype_entity_shadow.fsh
          • core/rendertype_lightning.fsh
          • core/rendertype_lines.fsh
          • core/rendertype_world_border.fsh
          • core/terrain.fsh
          • core/terrain.vsh
          • core/text.fsh
          • core/text_background.fsh
          • core/world_border.fsh
          • core/world_border.vsh
    • Removed the old transparency post chain:
      • post_effect/transparency.json
      • shaders/post/transparency.fsh
  • There's a new debug keybind for toggling this functionality on and off, by default set to F3 + X.

Tags

  • Block Tags
    • Removed #nether_carver_replaceables, and #overworld_carver_replaceables tags.
    • Added poplar_sapling to #saplings tag.
    • Added #wool_slabs, and #wool_stairs to #shears_major_breaking_speed tag.
    • Added #bamboo_sapling, and #cobweb to #washed_away_by_fluids tag.
  • Item Tags
    • Added poplar_sapling to #saplings tag.

Textures

  • Particles
    • Added new Particle textures:
      • shelf_mushroom_particle.png

World generation

  • Cave air is no longer generated in Nether caves.
  • Carvers
    • The worldgen/configured_carver registry has been renamed to worldgen/carver
    • Updated minecraft:cave carver type
      • All fields previously under the config field have been inlined to the top-level.
      • Added the count field - non-negative Int Provider, the number of cave tunnels to create from a seed chunk.
      • Renamed yScale to room_vertical_radius_multiplier
      • Added optional start_vertical_radius_multiplier field - Float Provider, acts as a multiplier for the vertical radius of the first segment in each tunnel.
        • If not specified, defaults to 1.0
      • Added the thickness field - non-negative Float Provider, acts as a multiplier for the radius of carved tunnels.
      • Added optional weird_thickness_bias field - Boolean
        • If true, thickness will be multiplied by, with a 10% chance: random(0,1)*random(0,3)+1
        • If not specified, defaults to false
      • Removed the replaceable field, carvers will replace any block (excluding features).
      • Removed the lava_level field, fluids are now always selected by the aquifer or sea_level configuration in the dimension.
      • Removed the debug_settings field.
    • Updated minecraft:canyon carver type
      • All fields previously under the config field have been inlined to the top-level.
      • Renamed and moved yScale to shape.y_scale
      • Removed the replaceable field, carvers will replace any block (excluding features).
      • Removed the lava_level field, fluids are now always selected by the aquifer or sea_level configuration in the dimension.
      • Removed the debug_settings field.
    • Removed minecraft:nether_cave carver type
      • Replaced by the minecraft:cave carver type
  • Int Providers
    • Added minecraft:very_biased_to_bottom Int provider type
      • Picks a random value in the provided range, with a quadratic bias towards the minimum value.
      • Format: object with fields:
        • min_inclusive - Integer, the minimum selected value (inclusive).
        • max_inclusive - Integer, the maximum selected value (inclusive).
  • Placement Modifiers
    • Changed minecraft:offset placement modifier
      • Renamed from random_offset.
      • Format:
        • Removed the fields xz_spread and y_spread.
        • Added the fields x, y, z: Integer providers between -16 and 16 specifiying the axis-specific offset.
  • Vertical Anchors
    • Added a new option for vertical Anchors: relative_to_sea_level
      • Specifies an offset to the sea level of the dimension.

Fixes

48 issues fixed

From released versions before Java Edition 26.3

  • MC-161885 – Many transparent things do not render behind slimes.
  • MC-161898 – Transparent particles make other particles invisible.
  • MC-161926 – The block breaking animation is more transparent when mining ice or stained glass.
  • MC-168653 – Mobs, particles, clouds, water and transparent blocks don't render behind the transparent parts of shulker bullets.
  • MC-190203 – Transparent and specially rendered blocks, entities, clouds, water and particles don't render behind wind charges, and charged creeper, wither and breeze armor.
  • MC-202197 – Entities' name tag background is rendered behind transparent things.
  • MC-210584 – Semi-transparent textures on an item that doesn't have it by default doesn't render water behind it.
  • MC-223559 – Transparent blocks, particles, and clouds are not rendered behind semi-transparent marker armor stands.
  • MC-229405 – The inside of boats blocks the rendering of most translucent objects with the "Improved Transparency" option enabled.
  • MC-252369 – Data packs can fail to load due to a feature cycle when one does not exist.
  • MC-259812 – Block and item displays, beds, clouds, signs, shulker boxes, and semi-transparent blocks and entities don't render behind text displays.
  • MC-265743 – Entities, block entities, clouds and semi-transparent blocks are always rendered in front of text displays with see_through enabled.
  • MC-271069 – Item entities appear to fly towards the player when picked up by a dolphin that isn't being rendered.
  • MC-275111 – Two animals in a boat look sideways instead of at the player when lured.
  • MC-295678 – Translucent blocks above water flicker when crossing chunk borders.
  • MC-296006 – Entities do not face the player correctly whilst in a boat.
  • MC-298659 – Translucent blocks and some entities render above text displays with see_through enabled.
  • MC-303626 – Block hitboxes, particles, semi-transparent blocks and non-block items render behind entity hitboxes with the "Improved Transparency" option enabled.
  • MC-305422 – Players can sometimes get kicked due to a waypoint packet the client fails to handle.
  • MC-306127 – Block outlines are no longer visible behind translucent items.
  • MC-306156 – Breezes, slimes and players between translucent blocks or fluids appear behind them if "Improved Transparency" is enabled.
  • MC-306231 – Boats are filled with water when viewed through translucent blocks with the "Improved Transparency" option enabled.
  • MC-306318 – Translucent items render through the head of players with a translucent item equipped on their head with "Improved Transparency" enabled.
  • MC-307285 – Translucent blocks don't render behind sulfur cubes.
  • MC-307345 – The smoke particles produced by potent sulfur do not render behind stained glass.
  • MC-307902 – Partially transparent blocks inside sulfur cubes don't render correctly.
  • MC-308798 – Dolphins take much longer to pick up items.
  • MC-309081 – Decorated pots and chorus flowers can be destroyed by projectiles in Adventure mode.

From the previous development version

  • MC-309022 – Shelf mushrooms generate facing the wrong direction.
  • MC-309027 – The success message of /teleport with coordinates specified reports that it affected 0 entities.
  • MC-309043 – Carpets can no longer be crafted.
  • MC-309056 – Poplar saplings are not destroyed by water.
  • MC-309067 – Wool slabs and stairs cannot be used as fuel.
  • MC-309075 – Using bone meal on a shelf mushroom a player is standing on causes them to pass through it.
  • MC-309082 – Wandering traders do not sell poplar logs.
  • MC-309084 – Shelf mushrooms' model sticks out of the slot in the hotbar.
  • MC-309105 – Wool stairs and slabs are not broken faster when using shears.
  • MC-309117 – Grass in dappled forests and poplar leaves appear green on maps.
  • MC-309123 – The block breaking particles of shelf mushrooms are not displayed correctly.
  • MC-309133 – The front texture of poplar signs is inconsistent with the front textures of other signs.
  • MC-309136 – The collision box of shelf mushrooms is too large.
  • MC-309173 – The item model of shelf mushrooms displays the large shelf mushroom block model, even though the item places small ones.
  • MC-309184 – Specifying multiple features of type no_op in a data pack prevents the world from loading.
  • MC-309205 – Poplar saplings cannot be used as fuel.
  • MC-309206 – Cobwebs are not destroyed by water.
  • MC-309275 – The texture of the top halves of poplar doors has three miscolored pixels.
  • MC-309302 – Poplar saplings are not in #sapling.
  • MC-309330 – The item texture of poplar doors doesn't have any hinges unlike the item textures of other doors.

26.3 Snapshot 3 (known as 26.3-snapshot-3 in the launcher) is the third snapshot for Java Edition 26.3, released on July 7, 2026,[8] which adds straw beds and cushions, and fixes bugs.

Additions

Blocks

Straw bed

  • A new type of bed which can be used to sleep through the night without resetting the player's spawn point.
  • Can only be used once and is destroyed after use.
  • Cannot be used in the Nether or the End and will be destroyed upon attempt to use, without dropping as an item.
  • Won't be used by villagers, unlike other beds.
  • Generates naturally in abandoned camps.
  • 4 straw beds are crafted with 3 hay bales.
  • Can stack up to 16.
Ingredients Crafting recipe
Hay Bale
Non-mob entities

Cushion

  • A new entity that players can interact with to sit on.
  • Has 16 variants, crafted with its respective variant of wool slab.
  • Can stack up to 16.
Ingredients Crafting recipe
Matching Wool Slab
Invicon White Wool Slab.png: Inventory sprite for White Wool Slab in Minecraft as shown in-game linking to White Wool Slab with description: White Wool SlabInvicon Light Gray Wool Slab.png: Inventory sprite for Light Gray Wool Slab in Minecraft as shown in-game linking to Light Gray Wool Slab with description: Light Gray Wool SlabInvicon Gray Wool Slab.png: Inventory sprite for Gray Wool Slab in Minecraft as shown in-game linking to Gray Wool Slab with description: Gray Wool SlabInvicon Black Wool Slab.png: Inventory sprite for Black Wool Slab in Minecraft as shown in-game linking to Black Wool Slab with description: Black Wool SlabInvicon Brown Wool Slab.png: Inventory sprite for Brown Wool Slab in Minecraft as shown in-game linking to Brown Wool Slab with description: Brown Wool SlabInvicon Red Wool Slab.png: Inventory sprite for Red Wool Slab in Minecraft as shown in-game linking to Red Wool Slab with description: Red Wool SlabInvicon Orange Wool Slab.png: Inventory sprite for Orange Wool Slab in Minecraft as shown in-game linking to Orange Wool Slab with description: Orange Wool SlabInvicon Yellow Wool Slab.png: Inventory sprite for Yellow Wool Slab in Minecraft as shown in-game linking to Yellow Wool Slab with description: Yellow Wool SlabInvicon Lime Wool Slab.png: Inventory sprite for Lime Wool Slab in Minecraft as shown in-game linking to Lime Wool Slab with description: Lime Wool SlabInvicon Green Wool Slab.png: Inventory sprite for Green Wool Slab in Minecraft as shown in-game linking to Green Wool Slab with description: Green Wool SlabInvicon Cyan Wool Slab.png: Inventory sprite for Cyan Wool Slab in Minecraft as shown in-game linking to Cyan Wool Slab with description: Cyan Wool SlabInvicon Light Blue Wool Slab.png: Inventory sprite for Light Blue Wool Slab in Minecraft as shown in-game linking to Light Blue Wool Slab with description: Light Blue Wool SlabInvicon Blue Wool Slab.png: Inventory sprite for Blue Wool Slab in Minecraft as shown in-game linking to Blue Wool Slab with description: Blue Wool SlabInvicon Purple Wool Slab.png: Inventory sprite for Purple Wool Slab in Minecraft as shown in-game linking to Purple Wool Slab with description: Purple Wool SlabInvicon Magenta Wool Slab.png: Inventory sprite for Magenta Wool Slab in Minecraft as shown in-game linking to Magenta Wool Slab with description: Magenta Wool SlabInvicon Pink Wool Slab.png: Inventory sprite for Pink Wool Slab in Minecraft as shown in-game linking to Pink Wool Slab with description: Pink Wool SlabInvicon White Wool Slab.png: Inventory sprite for White Wool Slab in Minecraft as shown in-game linking to White Wool Slab with description: White Wool SlabInvicon Light Gray Wool Slab.png: Inventory sprite for Light Gray Wool Slab in Minecraft as shown in-game linking to Light Gray Wool Slab with description: Light Gray Wool SlabInvicon Gray Wool Slab.png: Inventory sprite for Gray Wool Slab in Minecraft as shown in-game linking to Gray Wool Slab with description: Gray Wool SlabInvicon Black Wool Slab.png: Inventory sprite for Black Wool Slab in Minecraft as shown in-game linking to Black Wool Slab with description: Black Wool SlabInvicon Brown Wool Slab.png: Inventory sprite for Brown Wool Slab in Minecraft as shown in-game linking to Brown Wool Slab with description: Brown Wool SlabInvicon Red Wool Slab.png: Inventory sprite for Red Wool Slab in Minecraft as shown in-game linking to Red Wool Slab with description: Red Wool SlabInvicon Orange Wool Slab.png: Inventory sprite for Orange Wool Slab in Minecraft as shown in-game linking to Orange Wool Slab with description: Orange Wool SlabInvicon Yellow Wool Slab.png: Inventory sprite for Yellow Wool Slab in Minecraft as shown in-game linking to Yellow Wool Slab with description: Yellow Wool SlabInvicon Lime Wool Slab.png: Inventory sprite for Lime Wool Slab in Minecraft as shown in-game linking to Lime Wool Slab with description: Lime Wool SlabInvicon Green Wool Slab.png: Inventory sprite for Green Wool Slab in Minecraft as shown in-game linking to Green Wool Slab with description: Green Wool SlabInvicon Cyan Wool Slab.png: Inventory sprite for Cyan Wool Slab in Minecraft as shown in-game linking to Cyan Wool Slab with description: Cyan Wool SlabInvicon Light Blue Wool Slab.png: Inventory sprite for Light Blue Wool Slab in Minecraft as shown in-game linking to Light Blue Wool Slab with description: Light Blue Wool SlabInvicon Blue Wool Slab.png: Inventory sprite for Blue Wool Slab in Minecraft as shown in-game linking to Blue Wool Slab with description: Blue Wool SlabInvicon Purple Wool Slab.png: Inventory sprite for Purple Wool Slab in Minecraft as shown in-game linking to Purple Wool Slab with description: Purple Wool SlabInvicon Magenta Wool Slab.png: Inventory sprite for Magenta Wool Slab in Minecraft as shown in-game linking to Magenta Wool Slab with description: Magenta Wool SlabInvicon Pink Wool Slab.png: Inventory sprite for Pink Wool Slab in Minecraft as shown in-game linking to Pink Wool Slab with description: Pink Wool SlabInvicon White Wool Slab.png: Inventory sprite for White Wool Slab in Minecraft as shown in-game linking to White Wool Slab with description: White Wool SlabInvicon Light Gray Wool Slab.png: Inventory sprite for Light Gray Wool Slab in Minecraft as shown in-game linking to Light Gray Wool Slab with description: Light Gray Wool SlabInvicon Gray Wool Slab.png: Inventory sprite for Gray Wool Slab in Minecraft as shown in-game linking to Gray Wool Slab with description: Gray Wool SlabInvicon Black Wool Slab.png: Inventory sprite for Black Wool Slab in Minecraft as shown in-game linking to Black Wool Slab with description: Black Wool SlabInvicon Brown Wool Slab.png: Inventory sprite for Brown Wool Slab in Minecraft as shown in-game linking to Brown Wool Slab with description: Brown Wool SlabInvicon Red Wool Slab.png: Inventory sprite for Red Wool Slab in Minecraft as shown in-game linking to Red Wool Slab with description: Red Wool SlabInvicon Orange Wool Slab.png: Inventory sprite for Orange Wool Slab in Minecraft as shown in-game linking to Orange Wool Slab with description: Orange Wool SlabInvicon Yellow Wool Slab.png: Inventory sprite for Yellow Wool Slab in Minecraft as shown in-game linking to Yellow Wool Slab with description: Yellow Wool SlabInvicon Lime Wool Slab.png: Inventory sprite for Lime Wool Slab in Minecraft as shown in-game linking to Lime Wool Slab with description: Lime Wool SlabInvicon Green Wool Slab.png: Inventory sprite for Green Wool Slab in Minecraft as shown in-game linking to Green Wool Slab with description: Green Wool SlabInvicon Cyan Wool Slab.png: Inventory sprite for Cyan Wool Slab in Minecraft as shown in-game linking to Cyan Wool Slab with description: Cyan Wool SlabInvicon Light Blue Wool Slab.png: Inventory sprite for Light Blue Wool Slab in Minecraft as shown in-game linking to Light Blue Wool Slab with description: Light Blue Wool SlabInvicon Blue Wool Slab.png: Inventory sprite for Blue Wool Slab in Minecraft as shown in-game linking to Blue Wool Slab with description: Blue Wool SlabInvicon Purple Wool Slab.png: Inventory sprite for Purple Wool Slab in Minecraft as shown in-game linking to Purple Wool Slab with description: Purple Wool SlabInvicon Magenta Wool Slab.png: Inventory sprite for Magenta Wool Slab in Minecraft as shown in-game linking to Magenta Wool Slab with description: Magenta Wool SlabInvicon Pink Wool Slab.png: Inventory sprite for Pink Wool Slab in Minecraft as shown in-game linking to Pink Wool Slab with description: Pink Wool Slab
Invicon White Cushion.png: Inventory sprite for White Cushion in Minecraft as shown in-game linking to White Cushion with description: White CushionInvicon Light Gray Cushion.png: Inventory sprite for Light Gray Cushion in Minecraft as shown in-game linking to Light Gray Cushion with description: Light Gray CushionInvicon Gray Cushion.png: Inventory sprite for Gray Cushion in Minecraft as shown in-game linking to Gray Cushion with description: Gray CushionInvicon Black Cushion.png: Inventory sprite for Black Cushion in Minecraft as shown in-game linking to Black Cushion with description: Black CushionInvicon Brown Cushion.png: Inventory sprite for Brown Cushion in Minecraft as shown in-game linking to Brown Cushion with description: Brown CushionInvicon Red Cushion.png: Inventory sprite for Red Cushion in Minecraft as shown in-game linking to Red Cushion with description: Red CushionInvicon Orange Cushion.png: Inventory sprite for Orange Cushion in Minecraft as shown in-game linking to Orange Cushion with description: Orange CushionInvicon Yellow Cushion.png: Inventory sprite for Yellow Cushion in Minecraft as shown in-game linking to Yellow Cushion with description: Yellow CushionInvicon Lime Cushion.png: Inventory sprite for Lime Cushion in Minecraft as shown in-game linking to Lime Cushion with description: Lime CushionInvicon Green Cushion.png: Inventory sprite for Green Cushion in Minecraft as shown in-game linking to Green Cushion with description: Green CushionInvicon Cyan Cushion.png: Inventory sprite for Cyan Cushion in Minecraft as shown in-game linking to Cyan Cushion with description: Cyan CushionInvicon Light Blue Cushion.png: Inventory sprite for Light Blue Cushion in Minecraft as shown in-game linking to Light Blue Cushion with description: Light Blue CushionInvicon Blue Cushion.png: Inventory sprite for Blue Cushion in Minecraft as shown in-game linking to Blue Cushion with description: Blue CushionInvicon Purple Cushion.png: Inventory sprite for Purple Cushion in Minecraft as shown in-game linking to Purple Cushion with description: Purple CushionInvicon Magenta Cushion.png: Inventory sprite for Magenta Cushion in Minecraft as shown in-game linking to Magenta Cushion with description: Magenta CushionInvicon Pink Cushion.png: Inventory sprite for Pink Cushion in Minecraft as shown in-game linking to Pink Cushion with description: Pink Cushion
  • Can be placed on any flat surface.
    • Always aligns horizontally to the grid, but vertically sit on top of the supporting surface.
    • Breaks if the supporting block is removed.
  • Cannot be moved.
  • Does not have collision and can overlap with other objects except for other cushions.
Command format

/posteffect

  • Allows adding or removing post effects to players.
    • These are post processing shaders that are applied to the player's screen, after the game has finished normal rendering.
  • Post effects exist on the client (in resource packs), not the server – the server cannot know if one will actually apply.
  • Post effects themselves were already part of the resource pack format, but only a few hardcoded ones were available to use.
  • Syntax:
    • /posteffect add <player> <posteffect> – adds the post effect to the player, if it does not already exist.
    • /posteffect clear <player> – removes all post effects from the player, if any exist.
    • /posteffect list <target> – lists all post effects applied to the player, if any exist.
    • /posteffect remove <player> <posteffect> – removes the post effect from the player, if it exists.
General

Data component format

Environment attribute

  • Added minecraft:gameplay/straw_bed_rule
    • Same format as minecraft:gameplay/bed_rule, but used for the straw bed

Languages

  • Added support for the Gothic language.

Number providers

  • Added a minecraft:number_provider registry
  • Added vanilla number providers:
    • minecraft:compostable/low
      • Returns 1 if the minecraft:block_state context parameter is an empty composter, otherwise has a 30% chance of returning 1
    • minecraft:compostable/low_medium
      • Returns 1 if the minecraft:block_state context parameter is an empty composter, otherwise has a 50% chance of returning 1
    • minecraft:compostable/medium
      • Returns 1 if the minecraft:block_state context parameter is an empty composter, otherwise has a 65% chance of returning 1
    • minecraft:compostable/medium_high
      • Returns 1 if the minecraft:block_state context parameter is an empty composter, otherwise has a 85% chance of returning 1
    • minecraft:compostable/always_add_one
      • Always returns 1
  • Added minecraft:number_dispatcher type
    • Returns the first case which fulfills its condition or the default if none do.
    • Fields:
      • cases – a list of cases in the order that the dispatcher will try to execute them.
        • Fields:
          • condition – a minecraft:predicate
          • number_provider – a minecraft:number_provider which is executed if the condition is fulfilled.
      • default – an optional minecraft:number_provider
        • Defaults to a constant 0 if omitted.
  • Added minecraft:conditional type[9]
    • Returns the value from on_true if its condition or on_false if not.
    • Fields:
      • conditions – a minecraft:predicate
      • on_true – a minecraft:number_provider which is executed if its condition is fulfilled.
      • on_false – an optional minecraft:number_provider
        • Defaults to a constant 0 if omitted.
  • Added minecraft:weighted_list
    • Returns a value from a distribution of weighted number providers.
    • Fields:
      • distribution – a list of objects with the following fields.
        • Fields:
          • data – a minecraft:number_provider
          • weight – a positive integer

Statistics

  • Added Times Slept in a Straw Bed statistic.

Tags

Changes

Blocks

Poplar doors

  • The placed block texture has been updated, tweaking the hinges.

Red Shrub

  • Now has unique sounds.

Shelf Mushroom

  • Now has unique sounds.
World generation

Abandoned camp

Command format

/place

  • The feature sub-command now allows in-line definition of the feature.
General

Data component format

  • minecraft:block_transformer
    • Added optional boolean field update_from_neighbors.
      • Controls if the transformed block should update based on neighboring blocks.
      • Defaults to true

Data pack

Environment attribute

  • minecraft:gameplay/bed_rule
    • Field explodes has been renamed to destroy_on_use
    • Added destroy_on_leave – optional boolean; if set to true, the bed will be destroyed when leaving it.
      • If omitted, defaults to false

Item models

  • Added optional shade_direction_override to block model elements.
    • Accepted values are cardinal directions (down, up, north, south, west, east)
    • When set, this overrides directional shading for the element regardless of face orientation.
  • Removed shade from block model elements
    • shade_direction_override: "up" to get the previous shade: false behavior.

Loot tables

  • Multiple block loot tables now reference predicates for checking if a tool has Silk Touch and is shears instead of inlining a copy of those checks.

Predicate

  • Added vanilla predicates
    • New entries added to previously empty-in-vanilla predicate registry:
      • minecraft:tool/can_silk_touch
      • minecraft:tool/can_shear
  • Potion predicates
    • The minecraft:potion_contents data component predicate has been changed to allow matching on specific potion effects.
    • The previous predicate format used a list of potion types, the new format allows for more refined matching.
    • The following fields can be used in any combination, all are optional:
      • potions – A list of potion types or a potion tag to match.
      • effects – A collection predicate of mob_effects predicates to match.
        • The collection predicate format is as follows:
          • contains – A list of mob_effects predicates to match.
          • count – A list of options for matching a specific number of mob effect predicates, which follow the same format as minecraft:effects entity sub-predicate.
            • test – The mob_effects predicate to match.
            • count – The number of matches required, or with min and max will match a range of counts.
          • size – Require the mob effects list to have a specific size, or with min and max will match a range of sizes.
    • The mob_effects predicate format is a mapping of effect types to properties of that effect. All fields are optional, only provided fields will be used for matching:
    {
        "minecraft:<effect type>": {
          "duration": "<integer bounds representing a duration in ticks>",
          "amplifier": "<integer bounds>",
          "ambient": true/false,
          "visible": true/false
        }
    }
  • Example of matching on several different effects and criteria:
      "effects": {
        "minecraft:jump_boost": {
          "duration": 3600,
          "amplifier": 5,
          "ambient": true,
          "visible": true
        },
        "minecraft:speed": {
          "duration": {
            "min": 360,
            "max": 3600
          },
          "amplifier": {
            "min": 2
          }
        },
        "minecraft:resistance": {}
      }

Recipes

  • Potion brewing recipes
    • Potion brewing recipes are now data-driven. New recipes can be added via data packs, and vanilla recipes may be modified.
    • Brewing recipes use the minecraft:brewing type.
    • The main contents are:
      • input – A potion ingredient with a required item field and an optional potion_contents field using a minecraft:potion_contents data component predicate.
      • reagent – A potion ingredient with a required item field and an optional potion_contents field using a minecraft:potion_contents data component predicate.
      • output – item stack, the resulting item.
    • Example of a vanilla recipe:
{
  "type": "minecraft:brewing",
  "input": {
    "item": "minecraft:potion",
    "potion_contents": {
      "potion": "minecraft:water"
    }
  },
  "output": {
    "components": {
      "minecraft:potion_contents": {
        "potion": "minecraft:awkward"
      }
    },
    "id": "minecraft:potion"
  },
  "reagent": {
    "item": "minecraft:nether_wart"
  }
}
  • Any items may be used in any of the 3 slots, e.g.:
{
  "type": "minecraft:brewing",
  "input": { "item": "minecraft:bucket" },
  "output": { "id": "minecraft:sulfur_cube_bucket" },
  "reagent": { "item": "minecraft:potent_sulfur" }
}

Resource pack

  • The version is now 91.0.

Shaders

  • Always-on Post Effect Support
    • A resource pack can now define a minecraft:end_of_frame post effect.
    • It will be applied before other post effects, including the ones enabled by the new posteffect command.
    • This post effect is always on as long as the resource pack is loaded, and cannot be controlled by the posteffect command.
    • As usual with resource pack resources, in case of multiple packs defining this effect, the one from the last resource pack in the list will apply.

Sounds

  • Added new sound events:
    • block.straw_bed.break
    • block.straw_bed.break_leave
    • block.straw_bed.step
    • block.straw_bed.place
    • block.straw_bed.hit
    • block.straw_bed.fall
    • block.poplar_leaves.break
    • block.poplar_leaves.fall
    • block.poplar_leaves.place
    • block.poplar_leaves.step
    • block.poplar_leaves.hit
    • block.red_shrub.break
    • block.red_shrub.place
    • entity.cushion.break
    • entity.cushion.place
    • entity.cushion.get_up
    • entity.cushion.sit

Tags

  • Block tags
    • Renamed tag #convertable_to_mud to #convertible_to_mud.
    • Added straw_bed to #blocks_motion_no_leaves, and #washed_away_by_fluids tags.
    • Removed tuff from #deepslate_ore_replaceables, and #stone_ore_replaceables tags.
  • Item tags
    • Renamed tag #dowses_campfires to #douses_campfires.

Textures

  • Added new Block textures:
    • block/straw_bed.png
    • block/straw_bed_particle.png

World generation

  • Features
    • minecraft:coral_claw and minecraft:coral_tree
      • Added the field feature – a placed feature that is used to place at every desired block position.
    • Removed the following feature types:
      • minecraft:coral_mushroom
      • minecraft:kelp
      • minecraft:seagrass
      • minecraft:sea_pickle
  • Placement modifiers
    • Added minecraft:cuboid
      • Repeats a feature in a cuboid shape.
      • Added fields:
        • xz_size: int provider between 1 and 16 representing the size of the cuboid along x and z axes.
        • y_size: int provider between 1 and 16 representing the size of the cuboid along the y axis.
        • include_interior: optional boolean (default true) for whether to place interior blocks of the cuboid.
        • include_edges: optional boolean (default true) for whether to place edge blocks of the cuboid.
          • Setting this to false generates a somewhat "rounded" cuboid.
    • Added minecraft:random_chance
      • Gates the feature being placed behind a random chance.
      • Format:
        • chance: float value between 0 and 1 representing the chance that the feature gets placed.
  • Block state providers
    • Updated minecraft:copy_properties_provider
      • Renamed field source_block_state_provider to source
    • Added minecraft:random_block_provider
      • Returns the default block state for a randomly chosen block.
      • Format:
        • blocks: block ID, list of block IDs or hash-prefixed block tag, specifying the set of blocks to randomly pick from.
    • Changed minecraft:rotated_block_provider
      • Now works on any block with axis or facing properties.
      • Format:
        • Changed the field state: Now a block state provider.
        • Added the field direction: Optional field describing the direction to set.
          • If omitted, a random direction is chosen.
  • Rule tests
    • These are the predicates used by ore features (targets[].target), and rule structure processors (rules[].input_predicate and rules[].location_predicate).
    • Added minecraft:any_of
      • This checks a list of rule tests for whether any of them returns true for the same block.
      • Format: object with fields:
        • rules – list of rule tests, the rules to test the block against.
    • Added minecraft:not
      • This checks a rule test for whether it returns false for a given block.
      • Format: object with fields:
        • rule – rule test, the rule to test the block against.
Misc

This version contains the model for straw_bed_head twice, once in the correct spot of assets/minecraft/models/block/straw_bed_head.json and another misplaced inside of assets/minecraft/textures/block/straw_bed_head.json

Fixes

61 issues fixed

From released versions before Java Edition 26.3

  • MC-51859 – The line spacing of text within all hover tooltips is larger between the first and second lines.
  • MC-112580 – Structure blocks' GUI does not pause the game in singleplayer.
  • MC-112744 – The Team NBT tag only exists for living entities.
  • MC-174958 – /gamerule succeeds when the value is not changed.
  • MC-175180 – The Silent NBT tag still doesn't make some entities fully silent.
  • MC-224528 – Two splash texts use curly single quotes (’) instead of apostrophes (').
  • MC-229831 – Enchanting tables' GUI has three pixels in the top-right corner that shouldn't be there.
  • MC-239401 – items/light.png never appears in-game; is pointlessly referenced by other game assets.
  • MC-254353 – A packet to remove the score is always broadcast when a score is reset.
  • MC-254661 – /schedule clear requires a namespace in its function argument.
  • MC-256073 – Miscolored pixel in tab_inventory.png.
  • MC-256096 – Some entities on a team can harm teammates that walk into them when friendly fire is disabled.
  • MC-256097 – Some entities on a team can harm their teammates when they explode when friendly fire is disabled.
  • MC-259583 – Brewing with a single bottle of dragon's breath does not return a glass bottle afterward.
  • MC-267902 – The failure message of /random when the specified range is too large states an incorrect maximum for the range.
  • MC-271297 – /fillbiome doesn't fail when no changes are made.
  • MC-273327 – The #convertable_to_mud block tag misspells "convertible" as "convertable".
  • MC-275532 – The abbreviation "fps" is inconsistently capitalized across strings.
  • MC-279185 – The "selectWorld.load_folder_access" string is missing an article before the word "folder".
  • MC-279819 – The mining speed factor of Mining Fatigue is inconsistent at level 3.
  • MC-293615 – Tooltip formatting of "Items x number" is inconsistent across different types of items.
  • MC-301804 – Test blocks' GUI does not pause the game in singleplayer.
  • MC-305707 – /time reports success when no changes are made.
  • MC-307616 – Typo in a log message in ActiveProfiler: "aprox".
  • MC-307618 – Typo in a log message in SoundEngine: "disapeared".
  • MC-307648 – "non-heap" is misspelled as "non-head" in the system details section of crash reports.
  • MC-307660 – Typo in a log message in GameRenderer: "coudln't".
  • MC-307709 – The texture of upward facing sulfur spikes' merged tip has a single wrong pixel at the very top.
  • MC-308460 – Some of the stems in wildflowers and pink petals render brighter.
  • MC-308851 – The chat_restriction.disabled_by_profile.action string is improperly capitalized.

From the Java Edition 26.3 development versions

  • MC-309021 – Poplar leaves' closed captions display as raw translation keys.
  • MC-309024 – death.attack.sulfurCubeHot.item displays as a raw translation key.
  • MC-309033 – The campsite_flower_forest_1 abandoned camp structure has stripes of orange wool under it.
  • MC-309034 – The tent_windswept_forest_8 abandoned camp structure contains a dropped stack of bone meal.
  • MC-309054 – The item texture of poplar hanging signs is inconsistent with other hanging signs.
  • MC-309058 – The tent_flower_forest_4 abandoned camp structure contains a dropped birch log.
  • MC-309090 – Certain entities on shelf mushrooms make a sound every tick.
  • MC-309122 – Abandoned camps can generate in areas of wooded badlands with no trees nor grass.
  • MC-309155 – Shelf mushrooms and red shrubs do not have unique sounds, unlike in Bedrock Edition.
  • MC-309208 – The poplar wood set is inconsistently placed in the Creative mode inventory.
  • MC-309261 – Incorrect calculation in the poplar trunk placer.
  • MC-309308 – Several abandoned camp structures contain persistent leaves.
  • MC-309324 – Ores don't generate in blobs of andesite, diorite, or granite below Y=0.
  • MC-309350 – Shelf mushrooms generated with fallen trees replace water.

From the previous development version

  • MC-309392 – The lighting on entities and block entities is not rendered correctly and appears too dark or too bright on certain sides.
  • MC-309395 – The texture of the top halves of poplar doors is missing a pixel on the second hinge.
  • MC-309397 – The game renderer corrupts when toggling off fullscreen or resizing the window with the Vulkan rendering backend.
  • MC-309399 – The game output console logs "Ignoring chat session from <PLAYER> due to missing Services public key” when loading into a world.
  • MC-309400 – The glowing effect on entities stays in place when cleared.
  • MC-309403 – Having an item with the block_transformer component with a rule_based_state_provider locks the player out of that world.
  • MC-309408 – The item tag that controls which items can douse campfires is misspelled as #dowses_campfires.
  • MC-309412 – Block items ignore the block_transformer component.
  • MC-309420 – The random_neighbor_spread feature has a field misspelled as "xy_offset".
  • MC-309432 – Worlds render entirely magenta on macOS with the Vulkan rendering backend.
  • MC-309433 – Drowned can consume or use certain items.
  • MC-309435 – Drowned no longer chase after players correctly.
  • MC-309441 – Projectiles lose their can_break ability after reloading the world.
  • MC-309445 – The game renderer can corrupt when toggling fullscreen or opening an inventory with the OpenGL rendering backend.
  • MC-309467 – Player reporting is unavailable.
  • MC-309471 – Cannot see other players' skins.
  • MC-309518 – Can't scrape oxidation or wax off of copper doors.

26.3 Snapshot 4 (known as 26.3-snapshot-4 in the launcher) is the fourth snapshot for Java Edition 26.3, released on July 16, 2026,[10] which makes various technical changes and gameplay tweaks.

Additions

General

Data component format

  • minecraft:cooking_fuel
    • Describes an item that can be used as fuel for a furnace, smoker or blast furnace.
    • Format: object with fields
      • burn_time – namespaced ID pointing to an element of minecraft:number_provider registry representing the time, in ticks, for which this fuel will burn.
      • speed_multiplier – namespaced ID pointing to an element of minecraft:number_provider registry representing the speed of the cooking/smelting.
  • minecraft:brewing_fuel
    • Describes an item that can be used as fuel for a brewing stand.
    • Format: object with fields
      • uses – namespaced ID pointing to an element of minecraft:number_provider registry representing the number of times this fuel will brew before being consumed.
      • speed_multiplier – namespaced ID pointing to an element of minecraft:number_provider registry representing the speed of the brewing.
    • Note: the #brewing_fuel item tag has been removed and will no longer function to register new brewing fuels.
  • minecraft:sign_text_front and minecraft:sign_text_back
    • Two identical components that represent text in front and back of a sign.
    • Contents will be displayed in item tooltip.
    • The format is the same as front_text and back_text fields on minecraft:sign and minecraft:hanging_sign block entities, i.e.
      • messages – a list of text components
      • filtered_messages – an optional list of text components, if omitted, it will be set to the same value as messages.
        • messages and filtered_messages must have same entry count.
      • color – optional dye color, default: black
      • has_glowing_text – optional boolean, default: false
  • minecraft:waxed
    • A marker for blocks with contents that are waxed.
    • No fields
  • minecraft:cushion/color
    • Applied to cushion entities when they get placed using an item.
    • Format: one of 16 dye colors
  • minecraft:villager_food
    • Represents items that villagers can eat. Villagers will pick up items with this component in addition to items in the #villager_picks_up tag.
    • Format: object with fields
      • nutrition – positive integer, how much hunger the item satiates in the villager once eaten.
  • minecraft:mob_visibility
    • Represents the visibility percentage provided by an item with the appropriate minecraft:equippable component, modifying the range at which mobs are able to detect an entity.
    • Format: object with fields
      • targeting_entity – an entity ID, a list of namespaced entity IDs, or a hash-prefixed entity tag to match.
      • visibility – float (between 0.0 and 10.0), with 0.0 reducing the range at which mobs detects the entity to 2 blocks while 10.0 increases the detection range tenfold.
        • While multiple items with this component stack, the maximum vision will still never exceed 10.0.

Environment attribute

  • minecraft:gameplay/natural_mob_spawns
    • Defines mob spawns in an environment attribute source.
    • During worldgen placement, only dimensions and biomes will apply this environment attribute.
    • Format: object with fields:
      • spawns_by_category – map of spawn category to weighted list of spawn data
        • Spawn data format: object with fields:
          • type – entity type, the entity to spawn.
          • count – int provider, amount to spawn.
      • spawn_costs – map of entity type to object with fields:
        • energy_budget – float, energy change allowed per spawn.
        • charge – float, how much existing mobs will attract or repulse other charged mobs.
    • Available attribute modifiers:
      • overlay
        • For each mob category, overrides the lower layer's spawn settings with the higher layer's, unless the category is not included.
        • Merges each layer's spawn costs together, overriding the lower layer's spawn costs with the higher layer's if both define the same entity type.
    • Default: empty
  • minecraft:gameplay/creature_world_gen_spawn_probability
    • Sets the probability to run an iteration in which mobs defined to spawn in the creature mob category will spawn during world generation.
    • Only dimensions and biomes will apply this environment attribute.
    • Format: float with range [0,1]
    • Default: 0.1

Tags

  • Added the #cushion_uses_collision_shape block tag.
    • Contains blocks where cushion placement raycasts against collision shape instead of interaction shape.
      • Default entries: all blocks in #cauldrons, plus hopper and composter.

Changes

Blocks

Hay bale

  • Updated sides texture from so that the two red twines appear symmetrically distant from the top/bottom edges; the twines now line up with the straw bed texture too.

Poplar doors

  • The placed block texture has been updated, tweaking the hinges again for the third time.

Signs

  • Signs no longer automatically execute click events in custom text.
Mobs

Armadillos

  • No longer try to roll up when submerged in liquids.
Command format

/spreadplayers

  • Whether a block is safe to spread a player to is now controlled by the #entities_can_teleport_to block tag.
Gameplay

Creative inventory

  • Rearranged mineral items and blocks in the inventory.
  • They are now sorted to have non-tiered ingredients first, followed by tiered ingredients that craft into equipment last.
  • Affects the ingredients and building blocks tabs.
    • Ingredients
      • Non-tiered minerals
      • Unrefined tiered minerals
      • Refined tiered minerals
        • Nuggets
        • Ingots
    • Building Blocks
      • Non-tiered mineral blocks and variants
      • Refined tiered mineral blocks and variants
      • Copper block family
    • Copper Blocks continue to be pushed to the end of the order in Building Blocks since they have a large list of content.
  • Improved ordering of Natural Blocks tab so that all inner ordering of group content sequentially progresses from Overworld -> Nether -> End to stay consistent with other tabs.

Spectator

  • Players in Spectator mode can now interact with portals to teleport.
General

Advancement definition

  • Rewards
    • The loot sub-field in the rewards field now accepts an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:loot_table type.
  • Triggers
    • Multiple fields that accepted a list of loot conditions (AKA predicates) are now stricter:
      • A list of predicates is no longer accepted as a shorthand for a minecraft:all_of condition containing that list.
      • Additionally, the condition field of predicates has been renamed to type and is now mandatory (previously it defaulted to minecraft:entity_properties).
    • Some fields that previously accepted only inline loot conditions now also accept a namespaced ID of a minecraft:predicate
    • The player field, available on all triggers except minecraft:impossible, now accepts an inline value or a namespaced ID of a minecraft:predicate type.
      • To avoid duplication, this field is not mentioned in entries below.
  • Changed minecraft:any_block_use trigger
    • The location field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:bee_nest_destroyed
    • The block field has been renamed to blocks and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:block type. However, it still only actually triggers for block types using the BeehiveBlock class (i.e. a bee nest or beehive).
    • Added field state that matches block state properties (same format as minecraft:enter_block).
  • Changed minecraft:bred_animals trigger
    • child, parent, and partner fields now accept an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:brewed_potion trigger
    • The potion field now accepts minecraft:potion_contents data component predicate.
  • Changed minecraft:channeled_lightning trigger
    • Entries in the victims field can no longer be an entity predicate nor a list of predicates; the entries can now be either inline values or namespaced IDs of a minecraft:predicate type.
  • Changed minecraft:cured_zombie_villager trigger
    • villager and zombie fields now accept an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:default_block_use trigger
    • The location field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:effects_changed trigger
    • The source field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:enter_block
    • The block field has been renamed to blocks and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:block type.
  • Changed minecraft:fall_after_explosion trigger
    • The cause field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:fishing_rod_hooked trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:placed_block trigger
    • The location field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:item_used_on_block trigger
    • The location field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:allay_drop_item_on_block trigger
    • The location field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:player_killed_entity trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
    • The killing_blow.tags.id field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:damage_type type.
  • Changed minecraft:entity_killed_player trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
    • The killing_blow.tags.id field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:damage_type type.
  • Changed minecraft:kill_mob_near_sculk_catalyst trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
    • The killing_blow.tags.id field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:damage_type type.
  • Changed minecraft:lightning_strike trigger
    • bystander and lightning fields now accept an inline value or a namespaced ID of a minecraft:predicate type
  • Changed minecraft:player_generates_container_loot trigger
    • The loot_table field has been renamed to loot_tables and now accepts a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:loot_table type.
      • If a tag or a list is used, trigger will run when any listed loot table is generated.
  • Changed minecraft:thrown_item_picked_up_by_player trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:thrown_item_picked_up_by_entity trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:player_hurt_entity trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
    • The damage.type.tags.id field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:damage_type type.
  • Changed minecraft:entity_hurt_player trigger
    • The damage.type.tags.id field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:damage_type type.
  • Changed minecraft:player_interacted_with_entity trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:player_sheared_equipment trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:crafter_recipe_crafted trigger
    • The recipe_id field has been renamed to recipes and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:recipe type.
      • If a tag or a list is used, trigger will run when any listed recipe is used.
  • Changed minecraft:recipe_crafted trigger
    • The recipe_id field has been renamed to recipes and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:recipe type.
      • If a tag or a list is used, trigger will run when any listed recipe is used.
  • Changed minecraft:recipe_unlocked trigger
    • The recipe field has been renamed to recipes and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:recipe type.
      • If a tag or a list is used, trigger will run when any listed recipe is unlocked
  • Changed minecraft:slide_down_block
    • The block field has been renamed to blocks and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:block type.
  • Changed minecraft:summoned_entity trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:tame_animal trigger
    • The entity field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:target_hit trigger
    • The projectile field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:villager_trade trigger
    • The villager field now accepts an inline value or a namespaced ID of a minecraft:predicate type.

Block entity data

  • minecraft:sign and minecraft:hanging_sign
    • By default, commands and other click events contained in sign text are no longer executed when the block is clicked.
      • Additionally, text components on newly placed signs are no longer resolved by default.
      • New boolean field called allow_op_features (defaults to false) has been added to restore previous behavior.
      • Placed signs and items with the minecraft:block_entity_data component containing sign data stored in worlds saved before this version will have allow_op_features set to true
      • Any newly created sign will need to have that field set explicitly.
    • Changed the rules for opening the sign edit screen after a block is placed:
      • Previously, the screen would open unless minecraft:block_entity_data was applied successfully.
        • Now, the screen will open only if it could be opened normally by clicking the block (i.e. it's not waxed and only has editable text on the front side).
    • Signs will now accept and return the minecraft:sign_text_front, minecraft:sign_text_back and minecraft:waxed components.
  • minecraft:brewing_stand
    • The following fields are now stored as integers rather than shorts:
      • Changed the BrewTime field from a short to an integer, this is the amount of time that the current brewing process has taken so far.
      • Changed the Fuel field from a byte to an integer, this is the amount of fuel remaining.
    • The following new fields have been added:
      • Added the total_brew_time integer field, this is the total amount of time the current brewing process will take.
      • Added the total_fuel integer field, this represents the amount of fuel that was added in the last refuel.
      • Added the speed_multiplier float field, this will be used to speed up or slow down the next brewing process.
  • minecraft:furnace, minecraft:smoker and minecraft:blast_furnace
    • The following fields are now stored as integers rather than shorts:
      • Changed the cooking_time_spent field from a short to an integer, this is the amount of time that the current cooking process has taken so far.
      • Changed the cooking_total_time field from a short to an integer, this is the total amount of time the current cooking process will take.
      • Changed the lit_time_remaining field from a short to an integer, this is the amount of burn time remaining.
      • Changed the lit_total_time field from a short to an integer, this is the total amount of burn time that was added in the last refuel.
    • The following new fields have been added:
      • Added the speed_multiplier float field, this will be used to speed up or slow down the next cooking process.

Controls

  • The numeric keypad plus-or-minus key, opening bracket key and closing bracket key now display their associated glyph in the Key Binds menu.
    • Proper IDs for each of these have not yet been added, however.
  • Up to 40 more mouse buttons are available for binding game controls to on Linux (buttons 8 to 48), and up to 24 more on macOS (buttons 8 to 32).
    • The key codes for these existed previously, but could only be accessed by changing options.txt and would not result in button presses actually being recognised.
    • These buttons are still not accessible on Windows.
ID Displayed name Description
key.mouse.9 Button 9  Ninth Mouse Button
key.mouse.10 Button 10  Tenth Mouse Button
key.mouse.11 Button 11  Eleventh Mouse Button
key.mouse.12 Button 12  Twelfth Mouse Button
key.mouse.13 Button 13  Thirteenth Mouse Button
key.mouse.14 Button 14  Fourteenth Mouse Button
key.mouse.15 Button 15  Fifteenth Mouse Button
key.mouse.16 Button 16  Sixteenth Mouse Button
key.mouse.17 Button 17  Seventeenth Mouse Button
key.mouse.18 Button 18  Eighteenth Mouse Button
key.mouse.19 Button 19  Nineteenth Mouse Button
key.mouse.20 Button 20  Twentieth Mouse Button
key.mouse.21 Button 21  Twenty-First Mouse Button
key.mouse.22 Button 22  Twenty-Second Mouse Button
key.mouse.23 Button 23  Twenty-Third Mouse Button
key.mouse.24 Button 24  Twenty-Fourth Mouse Button
key.mouse.25 Button 25  Twenty-Fifth Mouse Button
key.mouse.26 Button 26  Twenty-Sixth Mouse Button
key.mouse.27 Button 27  Twenty-Seventh Mouse Button
key.mouse.28 Button 28  Twenty-Eighth Mouse Button
key.mouse.29 Button 29  Twenty-Ninth Mouse Button
key.mouse.30 Button 30  Thirtieth Mouse Button
key.mouse.31 Button 31  Thirty-First Mouse Button
key.mouse.32 Button 32  Thirty-Second Mouse Button
key.mouse.33 Button 33  Thirty-Third Mouse Button
key.mouse.34 Button 34  Thirty-Fourth Mouse Button
key.mouse.35 Button 35  Thirty-Fifth Mouse Button
key.mouse.36 Button 36  Thirty-Sixth Mouse Button
key.mouse.37 Button 37  Thirty-Seventh Mouse Button
key.mouse.38 Button 38  Thirty-Eighth Mouse Button
key.mouse.39 Button 39  Thirty-Ninth Mouse Button
key.mouse.40 Button 40  Fortieth Mouse Button
key.mouse.41 Button 41  Forty-First Mouse Button
key.mouse.42 Button 42  Forty-Second Mouse Button
key.mouse.43 Button 43  Forty-Third Mouse Button
key.mouse.44 Button 44  Forty-Fourth Mouse Button
key.mouse.45 Button 45  Forty-Fifth Mouse Button
key.mouse.46 Button 46  Forty-Sixth Mouse Button
key.mouse.47 Button 47  Forty-Seventh Mouse Button
key.mouse.48 Button 48  Forty-Eighth Mouse Button

Data pack

Debug screen

  • The debug overlay now supports a separate GUI scale than the rest of the game.
    • This is customizable through the Debug Options screen, F3 + F6.
    • The default scale is "Auto", which tries to stay at a higher resolution than normal.
    • Another option is "Unchanged", which matches the regular GUI scale.
    • The rest of the options work the same as in the normal "GUI Scale", controlling the scale directly.
  • Added a "player_speed" debug entry that displays the speed of the player in blocks per tick.
  • The debug overlay now shows the display refresh rate.

Environment attribute

  • minecraft:visual/ambient_particles
    • Now supports interpolation between Timeline keyframes (probabilities will be crossfaded).
    • Introduced support for new modifier: append
      • Unlike override which totally replaces the particle list, this modifier concatenates all elements with the layers below.

Game window and input backend

  • The minimum window size is now 320×240 pixels.
  • Minecraft now uses SDL3 instead of GLFW for window management, input and platform integration.
  • Keyboard input now uses SDL scancodes for physical key positions and SDL keycodes for layout-dependent text editing shortcuts.

Loot functions

  • The conditions field is now available in all loot functions and has been renamed to condition.
    • It now also accepts an inline value or a namespaced ID, but no longer an inline list of conditions.
      • Functionality of old condition list format can be achieved by explicitly using minecraft:all_of loot condition type.
    • The function field (describing function type) has been renamed to type.
  • Changed minecraft:sequence
    • The functions field now accepts an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:item_modifier type.
    • Added optional condition field which accepts an inline value or a namespaced ID of a minecraft:predicate type.
    • Inline format of minecraft:sequence (previously only a list of inline functions) can now also accept a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:item_modifier type.
      • This format is now consistenly available for all fields of loot function type, which means that every such field can accept an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:item_modifier type.
  • Changed minecraft:modify_contents
    • The modifier field now accepts an inline value or a namespaced ID of a minecraft:item_modifier type.
  • Changed minecraft:set_attributes
    • Number providers in amount sub-fields of modifiers list now accept an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:enchanted_count_increase
    • The count field now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:enchant_with_levels
    • The levels field now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:set_custom_model_data
    • Elements in floats and colors lists can now be an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:set_enchantments
    • Values in enchantments map can now be an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:set_count
    • The count field now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:limit_count
    • The min and max fields inside limit structure now accept an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:set_damage
    • The count field now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:set_ominous_bottle_amplifier
    • The amplifier field now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:set_random_dyes
    • The number_of_dyes field now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:set_stew_effect
    • The duration field in elements of effects list now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:set_loot_table
    • The name field has been renamed to tag
  • Changed minecraft:exploration_map
    • The destination field is no longer optional and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:structure type.
  • Removed minecraft:reference
    • This function has become obsolete, as any field that takes a function now accepts (among other things) a namespaced ID to other functions.

Loot tables

  • The rolls and bonus_rolls fields now accept an inline value or a namespaced ID of a minecraft:number_provider type.
  • Loot table types that have a dedicated registry now support registry element and tag references.
    • This means that the majority of fields of such types that previously accepted single elements will now accept either a namespaced ID or an inline value, while fields that previously accepted lists can now accept an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID
    • Affected types:
      • minecraft:advancement
      • minecraft:item_modifier
      • minecraft:loot_table
      • minecraft:number_provider
      • minecraft:predicate
      • minecraft:recipe
      • minecraft:slot_source
    • Existing reference types for predicates, item modifiers and slot sources are now obsolete and have been removed
  • Loot table types
    • Added the minecraft:container_process loot table type
      • Currently used to evaluate cooking and brewing fuel values.
      • It takes the following parameters:
        • container, the container or inventory being evaluated.
        • block_entity, the block entity being fueled.
        • block_state, the current state of the block being fueled.
        • origin, the location of the block being fueled.
    • Changed minecraft:advancement_location
      • Block entities are now available in context and can be matched by conditions like minecraft:match_block
  • Loot pool entries
    • The conditions field in loot pool entries has been renamed to condition and now accepts an inline value or a namespaced ID of a minecraft:predicate type.
    • The functions field in loot pool entries has been renamed to modifier and now accepts an inline value (including list as a short form of minecraft:sequence) or a namespaced ID of a minecraft:item_modifier type.
      • This field is now present on all loot entries, including previously omitted minecraft:alternatives, minecraft:sequence and minecraft:group.
    • Changed minecraft:tag loot pool entry
      • The name field has been renamed to items and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:item type.
    • Changed minecraft:loot_table loot pool entry
      • The value field now accepts a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:loot_table type.
      • Added expand field, working the same as in minecraft:tag pool entry:
        • If true, each entry inside tag will be added to outer pool, with weights equal to weight of this entry.
        • If false, this pool entry will operate as a single entry in outer pool. If this entry gets selected, it will return all items from all referenced loot tables.

Number providers

  • The type field always needs to be specified explicitly when using an inline number provider (it was previously defaulting to minecraft:uniform).
  • Added vanilla number providers
    • minecraft:cooking/time_bamboo
      • Returns the burn time in ticks for bamboo and scaffolding.
    • minecraft:cooking/time_blaze_rod
      • Returns the burn time in ticks for blaze rods.
    • minecraft:cooking/time_boats
      • Returns the burn time in ticks for boats.
    • minecraft:cooking/time_coal
      • Returns the burn time in ticks for coal.
    • minecraft:cooking/time_coal_block
      • Returns the burn time in ticks for coal blocks.
    • minecraft:cooking/time_dried_kelp_block
      • Returns the burn time in ticks for dried kelp blocks.
    • minecraft:cooking/time_dry_plants
      • Returns the burn time in ticks for various dry plants.
    • minecraft:cooking/time_hanging_signs
      • Returns the burn time in ticks for hanging signs.
    • minecraft:cooking/time_lava_bucket
      • Returns the burn time in ticks for lava buckets.
    • minecraft:cooking/time_roots
      • Returns the burn time in ticks for mangrove roots.
    • minecraft:cooking/time_wood_blocks
      • Returns the burn time in ticks for wood blocks.
    • minecraft:cooking/time_wood_items_extra_small
      • Returns the burn time in ticks for very small wood items such as buttons.
    • minecraft:cooking/time_wood_items_large
      • Returns the burn time in ticks for large wood items such as doors.
    • minecraft:cooking/time_wood_items_small
      • Returns the burn time in ticks for small wood items such as bows.
    • minecraft:cooking/time_wood_slabs
      • Returns the burn time in ticks for wood slabs.
    • minecraft:cooking/time_wool
      • Returns the burn time in ticks for most wool blocks.
    • minecraft:cooking/time_wool_carpets
      • Returns the burn time in ticks for wool carpets.
    • minecraft:cooking/time_wool_slabs
      • Returns the burn time in ticks for wool slabs and cushions.
    • minecraft:cooking/speed_default
      • Returns the default speed multiplier for cooking fuel.
    • minecraft:brewing/speed_default
      • Returns the default speed multiplier for brewing fuel.
    • minecraft:brewing/uses_default
      • Returns the default number of brews provided by brewing fuel.
  • Changed minecraft:number_dispatcher
    • Fields:
      • cases - a list of cases in the order that the dispatcher will try to execute them.
        • Fields:
          • condition - an inline value or a namespaced ID of a minecraft:predicate type.
          • number_provider - an inline value or a namespaced ID of a minecraft:number_provider type which is executed if the condition is fulfilled.
      • default - an optional inline value or a namespaced ID of a minecraft:number_provider type.
        • Defaults to a constant 0 if omitted.
  • Changed minecraft:conditional_value
    • Fields:
      • conditions - an inline value or a namespaced ID of a minecraft:predicate type.
      • on_true - an inline value or a namespaced ID of a minecraft:number_provider type which is executed if its condition is fulfilled.
      • on_false - an optional inline value or a namespaced ID of a minecraft:number_provider type.
        • Defaults to a constant 0 if omitted.
  • Changed minecraft:weighted_list
    • Fields:
      • distribution - a list of objects with the following fields.
        • Fields:
          • data - an inline value or a namespaced ID of a minecraft:number_provider type.
          • weight - a positive integer
  • Changed minecraft:uniform
    • The min and max fields now accept an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:binomial
    • The n and p fields now accept an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:sum
    • The summands field now accepts an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:number_provider type.

Predicates

  • The condition field (describing predicate type) has been renamed to type.
  • Changed minecraft:all_of
    • The terms field now accepts an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:predicate type.
    • Note: values of this type can no longer be shortened to a single list, a full object with type minecraft:all_of needs to be used explicitly.
  • Changed minecraft:any_of
    • The terms field now accepts an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:predicate type.
  • Changed minecraft:inverted
    • The term field now accepts an inline value or a namespaced ID of a minecraft:predicate type.
  • Changed minecraft:random_chance
    • The chance field now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:value_check
    • The value field now accepts an inline value or a namespaced ID of a minecraft:number_provider type.
    • The min and max fields inside range structure now accept an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:time_check
    • The min and max fields inside value structure now accept an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:entity_scores
    • The min and max fields inside values of scores map now accept an inline value or a namespaced ID of a minecraft:number_provider type.
  • Changed minecraft:damage_source_properties
    • The predicate.tags.id field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a minecraft:damage_type type.
  • Removed minecraft:reference
    • This condition has become obsolete, as any field that takes a loot condition now accepts (among other things) a namespaced ID to other conditions.
  • Added vanilla predicates
    • minecraft:block/fast_cooking
  • Added minecraft:match_block condition type
    • Matches block state and optionally block entity data and components (if present).
    • Fields (same as elements of minecraft:can_place_on components):
      • blocks – optional block id, list of namespaced block IDs, or hash-prefixed block tag to match.
      • state: optional map of block state property keys to values to match.
      • nbt: optional block entity NBT to match.
        • match will fail if this field is present, but block entity is not available in context.
      • components – optional map of exact components to match.
        • match will fail if this field is present, but block entity is not available in context.
      • predicates – optional map of component predicates to match.
        • match will fail if this field is present, but block entity is not available in context.
  • Removed minecraft:block_state_property condition type
    • This has been fully replaced by minecraft:match_block

Recipes

  • The recipes for smokers and blast furnaces now use the same cooking time in their data definition as their furnace counterparts.
    • The cooking time speedup is now done through the minecraft:cooking/speed_default number provider used by the furnace fuel components.

Resource pack

  • The version is now 92.0.

Shaders

  • Added new shaders to support order-independent transparency:
    • core/oit_depth_bounds_cull.fsh
  • Updated core shaders to support order-independent transparency.
    • Introduced new defines:
      • OIT_ALWAYS_WRITE_DEPTH - A boolean indicating that the OIT algorithm should always write depth for the executing pipeline during the depth bounds stag.
  • core/integrate_depth.fsh was added and is used to integrate the "3d hud" and always-on-top gizmo depth buffers into the main depth buffer.

Slot sources

  • Changed minecraft:group
    • The terms field now accepts an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:slot_source type.
    • Inline format of minecraft:group (previously only a list of inline slot source) can now also accept a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:slot_source type.
      • This format is now available consistently available for all fields of slot source.
  • Changed minecraft:filtered
    • The slot_source field now accepts an inline value or a namespaced ID of a minecraft:slot_source type.
  • Changed minecraft:contents
    • The slot_source field now accepts an inline value or a namespaced ID of a minecraft:slot_source type.
  • Changed minecraft:limit_slots
    • The slot_source field now accepts an inline value or a namespaced ID of a minecraft:slot_source type.
  • Removed minecraft:reference
    • This slot source has become obsolete, as any field that takes slot source now accepts (among other fields) a namespaced ID of a minecraft:slot_source type.

Tags

  • Removed the #brewing_fuel item tag.
    • The brewing_fuel item component is now used to identify brewing fuels.
  • Added value #all_signs to #blocks_fluid_flow block tag.
  • Removed value #all_signs from #blocks_motion_no_leaves block tag.
  • Twenty-one tags no longer have the function of adding an item like fuel item, due to cooking_fuel components.
  • The tag #non_flammable_wood no longer prevents an item from being classified as fuel item.

UI

  • Removed the Raw Input mouse setting.
    • Mouse input now always uses relative mouse mode while playing in-game.
  • Key bindings now use physical keys instead of keyboard-layout-specific key codes.
  • Borderless Fullscreen is now the default fullscreen mode.
  • Switching between Borderless and Exclusive Fullscreen no longer requires restarting the game.
  • Exclusive fullscreen mode on macOS is no longer supported.
  • The minimum window size is now 320 by 240 pixels.
  • On macOS, holding a key while entering text now displays the native accent and candidate popup.
  • On Linux systems, the game will now use and prefer Wayland natively if available.

Villager trade definition

  • The given_item_modifiers field has been renamed to given_item_modifier
    • Note: unlike other fields of type minecraft:item_modifier this field does not support namespaced element or tag IDs.

World generation

  • Biomes
    • Removed the spawners, spawn_costs, and creature_spawn_probability fields.
      • These values have been moved to the new environment attributes.
  • Features
    • Removed feature types:
      • minecraft:nether_forest_vegetation
      • minecraft:twisting_vines
      • minecraft:weeping_vines
  • Noise Settings
    • The final_density field no longer has the beardifier density function implicitly added to the final result.
    • The aquifers_enabled field has been replaced by an optional aquifers object:
      • If not present, no aquifers will be generated.
      • Fields:
        • barrier - Density Function, moved from noise_router.barrier
        • fluid_level_floodedness - Density Function, moved from noise_router.fluid_level_floodedness
        • fluid_level_spread - Density Function, moved from noise_router.fluid_level_spread
        • lava - Density Function, moved from noise_router.lava
        • surface_level - Density Function, duplicated from noise_router.preliminary_surface_level
        • exclusion - Density Function, any aquifer cell where this value is positive will have no fluid.
    • The ore_veins_enabled field has been replaced by an optional list of ore_veins objects:
      • If not present, no ore veins will be generated
      • Fields:
        • ore_block - Block State, the ore block to place
        • raw_ore_block - Block State, the raw ore block to place.
        • filler_block - Block State, the filler block to place.
        • raw_ore_chance - float between 0 and 1, the probability for a raw_ore_block to be placed instead of an ore_block.
        • density - Density Function, the probability between 0 and 1 for the ore vein to replace a block.
          • If 0 or lower, no block will be replaced
        • richness - Density Function, the probability between 0 and 1 for ore_block or raw_ore_block to be placed (as opposed to filler_block).
          • If 0 or lower, all blocks will be filler_block.
          • If 1 or greater, no blocks will be filler_block.
        • filler_gap - Density Function, acts as an override to richness: if positive, filler_block will always be placed.
    • The following fields from noise_router have been moved:
      • barrier, fluid_level_floodedness, fluid_level_spread, lava - moved into aquifers field.
      • vein_toggle, vein_ridged, vein_gap - moved into ore_veins field.
  • Density Functions
    • Updated constant
      • argument has been renamed to value
    • Updated add, mul, min, and max
      • argument1 has been renamed to left.
      • argument2 has been renamed to right.
    • Updated abs, square, cube, half_negative, quarter_negative, squeeze, interpolated, flat_cache, cache_2d, cache_once, cache_all_in_cell, and blend_density density functions
      • argument has been renamed to input.
    • Updated shift_a, shift_b, and shift
      • argument has been renamed to noise
    • Added sub
      • Performs subtraction between two arguments.
      • Format: object with fields:
        • left - Density Function, the left-hand side of the operation
        • right - Density Function, the right-hand side of the operation
    • Added div
      • Performs division between two arguments.
      • Format: object with fields:
        • left - Density Function, the left-hand side of the operation.
        • right - Density Function, the right-hand side of the operation.
    • Updated reciprocal
      • Renamed from invert
    • Added negate
      • Negates the input.
      • Format: object with fields:
        • input - Density Function, the function to negate.
    • Added lerp
      • Performs (unclamped) linear interpolation between two arguments based on an alpha.
      • Format: object with fields:
        • alpha - Density Function, the interpolation factor (0=first, 1=second)
          • Any value outside of [0; 1] will extrapolate
        • first - Density Function, the value at alpha=0
        • second - Density Function, the value at alpha=1
    • Added floor, round, ceil, and truncate
      • Rounds the input value to an integer multiple of a given function in a type-dependent direction:
        • floor: rounds towards negative infinity.
        • round: rounds towards the nearest integer (ties round up).
        • ceil: rounds towards positive infinity.
        • truncate: rounds towards 0.
      • Format: object with fields:
        • input - Density Function, the input to round.
        • multiple - Density Function, the output will be rounded to an integer multiple of this value.
          • If not specified, defaults to constant 1 (i.e. rounding to integer).
    • Added beardifier
      • Outputs the structure bearding density. Generally summed together with the base terrain density to produce ground below, carve air around, or bury structures.
      • Format: no fields

Fixes

78 issues fixed

From released versions before Java Edition 26.3

  • MC-2157 – Particles emitted from dragon eggs when teleporting do not point in the correct direction.
  • MC-40597 – The interaction of Minecraft's built-in fullscreen mode and macOS fullscreen can glitch the game window.
  • MC-46421 – You cannot use nether portals, end portals, and end gateways while in Spectator mode.
  • MC-58061 – Endermen can teleport onto signs.
  • MC-110989 – /spreadplayers considers signs to be a valid block to be spread onto.
  • MC-116286 – /spreadplayers can spread entities on structure void.
  • MC-121278 – Keybindings (e.g. ⎈ Control + A) are being mapped to the US keyboard layout even if you're using another layout.
  • MC-122477 – Opening the chat sometimes appends the character the used key types to the message on Linux.
  • MC-133407 – Keybinds switch when upgrading to 1.13 if not using a QWERTY keyboard.
  • MC-148541 – /spreadplayers can spread players to seagrass near the surface of the water.
  • MC-149058 – Using hotkeys to move items into the anvil UI appends the character the used key types to the new item name.
  • MC-212671 – Loot table tag entry with "expand": true does not apply functions.
  • MC-252934 – Placing structures with item frames, paintings, or cushions logs Block-attached entity at invalid position: [BlockPosition].
  • MC-263708 – Keybinds menu renders Keypad keys the same as regular keys.
  • MC-266429 – Holding shift on macOS causes hotbar scroll direction to reverse (mouse only).
  • MC-268521 – The game window doesn't have a minimal width and height.
  • MC-269968 – Can't scroll while holding shift on macOS (except in the hotbar) (mouse only).
  • MC-299019 – Using a Bed while riding a rideable mob causes the player to sleep either on the ground, or on top of the mob.
  • MC-303493 – The apply_impulse entity effect does not apply components of the impulse that would cause the affected entity to hit a solid block when used with a tick or location_changed advancement trigger.
  • MC-303789 – Looking directly up with an apply_impulse enchantment entity effect will limit the impulse's effect on the X and Z axes to only apply on one of the two horizontal axes.
  • MC-306619 – Cannot jump while sneaking while using a Chinese input method.
  • MC-308127 – The "Friends Screen" key bind overrides debug hotkeys using the same key.
  • MC-308222 – Worldgen heightmaps do not persist properly through chunk saving/loading.
  • MC-308469 – Hitting the ender dragon's head hitbox no longer causes the ender dragon to take more damage.
  • MC-308804 – The input method does not switch to the corresponding CJK mode in the Create New World screen.
  • MC-309891 – The chat_restriction.disabled_by_launcher string lacks a period, unlike similar strings.
  • MC-309893 – The gamerule.minecraft.fire_spread_radius_around_player.description string lacks a period, unlike similar strings.
  • MC-309897 – The gui.report_to_server string is improperly capitalized.
  • MC-309898 – The editGamerule.inGame.discardChanges.title string is improperly capitalized.
  • MC-309901 – The structure_block.position.x string is improperly capitalized.
  • MC-309902 – Some strings contain stray spaces adjacent to line breaks.
  • MC-309903 – The "Isn't It Iron Pick" advancement name is missing a question mark.
  • MC-309907 – The word "whoosh" is mispelled as "woosh" in the subtitles.block.bubble_column.upwards_inside string.
  • MC-309908 – The subtitles.entity.copper_golem.no_item_get string is missing an article before the word "item".
  • MC-309911 – The words "blocks" and "seconds" in the commands.worldborder.set.grow string are always pluralized.
  • MC-309914 – The commands.op.failed string has awkward and inconsistent adverb placement, unlike similar strings.
  • MC-309915 – The commands.kick.owner.failed string is missing articles before the words "server" and "LAN".
  • MC-309916 – Some /stopwatch strings incorrectly capitalize the word "Stopwatch" mid-sentence, which is inconsistent with other commands.
  • MC-309918 – The commands.perf.started string is missing a hyphen between the words "10" and "second" and an article before the word "10".
  • MC-309919 – The mco.errorMessage.6002 string is improperly capitalized.
  • MC-309920 – The mco.configure.world.close.question.line1 string is improperly capitalized.
  • MC-309921 – The mco.snapshot.subscription.info string uses the "to" preposition instead of "with".
  • MC-309922 – The advMode.trackOutput string is improperly capitalized.
  • MC-309923 – The gamerule.minecraft.entity_drops.description string is improperly capitalized.
  • MC-309924 – The argument.enum.invalid string surrounds the placeholder with double quotes instead of single quotes, unlike every other command.
  • MC-309925 – The mount.onboard string is improperly capitalized.
  • MC-309926 – The selectWorld.edit.backupSize string is improperly capitalized.
  • MC-309927 – The gui.friends.error.unauthorized string lacks a period, unlike similar strings.
  • MC-309928 – The multiplayer.confirm_command.signature_required string lacks a period.
  • MC-309937 – The argument.pos.outofbounds string ends with a period, unlike similar strings.
  • MC-309938 – The quickplay.error.invalid_identifier string is missing an article before the word "world".
  • MC-309940 – The datapackFailure.safeMode.failed.title string ends with a period, unlike similar title strings.

From the Java Edition 26.3 development versions

  • MC-309166 – Block breaking is delayed after hitting an entity in Survival/Adventure mode.
  • MC-309394 – The game crashes when trying to render the item texture of a filled map in the world with the "Improved Transparency" option enabled.
  • MC-309474 – Block displays do not display glass blocks when the "Improved Transparency" setting is enabled.
  • MC-309475 – Shelf mushrooms held in the off hand are rotated incorrectly.
  • MC-309506 – Blocks z-fight with the world border with the "Improved Transparency" option enabled.
  • MC-309513 – The top texture of stripped poplar logs uses a different color from the middle of the top texture of poplar logs.
  • MC-309521 – The texture of poplar hanging signs uses a recolored version of the texture of stripped pale oak instead of stripped poplar.
  • MC-309522 – Translucent objects can be seen through glass block elements when the "Improved Transparency" option is enabled.
  • MC-309524 – Drowned that are outside of water continue to aim their trident at players within 3 blocks of them.

From the previous development version

  • MC-309656 – Cushions can be placed on top of fire.
  • MC-309659 – Cushions cannot be placed on the highest edge of a lectern.
  • MC-309685 – Sleeping on the head part of a straw bed teleports the player to Y=-Infinity.
  • MC-309686 – The game crashes when shooting some projectiles outside the vertical limits of the world.
  • MC-309693 – The ender dragon appears to fly backwards until perching.
  • MC-309695 – You can place cushions at any height inside cauldrons, composters, and hoppers.
  • MC-309697 – The texture of the top half of poplar doors has a miscolored pixel on the hinge.
  • MC-309703 – Breaking a cushion causes it to lose its custom name.
  • MC-309707 – The texture of straw beds does not align with the texture of hay bales.
  • MC-309718 – Mob positions permanently desync after tick sprinting.
  • MC-309771 – The main target's depth buffer only contains the player's arm when fetched from post effects.
  • MC-309790 – You can sleep while on a cushion.
  • MC-309809 – Waxing a sign or a hanging sign doesn't play any sound.
  • MC-309832 – Placed cushions do not respect the color tag in the entity_data component of the item used to place them.
  • MC-309980 – Cushions last longer as fuel than in Bedrock Edition.
  • MC-310045 – Opaque particles turn translucent when seen through experience orbs with the "Improved Transparency" option enabled.
  • MC-310075 – The game crashes when placing a bee nest or beehive at the lowest height of the world.

26.3 Snapshot 5 (known as 26.3-snapshot-5 in the launcher) is the fifth snapshot for Java Edition 26.3, released on July 21, 2026,[11] which fixes bugs.

Changes

General

Data pack

  • The pack format version is now 112.0.
  • Codec for element lists/tags now allows mixing inline values and references.
    • For example, item modifiers like [{type:set_count, ...}, "minecraft:some_modifier"] are now allowed.

Resource pack

  • The version is now 93.0.

Shaders

  • Order-independent Transparency (OIT)-related shader changes
    • The B3D_IS_ZERO_TO_ONE define has been renamed to RENDERPEARL_IS_ZERO_TO_ONE
  • Shader compilation changes
    • Shaders are now compiled by ShaderC when using OpenGL as well, identically to when using Vulkan.
    • Shader includes are now handled by ShaderC using #include instead of #moj_import
    • Shader inputs and outputs must have a location specified in shader source.
      • Vertex input names must still match expected names.
      • Vertex outputs are matched to fragment inputs solely by location, name is now ignored.
    • Introduced new define RENDERPEARL_INSTANCE_INDEX_INCLUDES_BASE_INSTANCE – a boolean indicating if gl_InstanceIndex follows Vulkan or OpenGL (gl_InstanceID) semantics.

Removals

World generation

  • Features
    • Removed the extra_rare_growths and catalyst_chance fields from minecraft:sculk_patch.

Fixes

22 issues fixed

From released versions before Java Edition 26.3

  • MC-5269 – Updating a server's address in the multiplayer menu does not update its status.
  • MC-278771 – The incorrect command context is used when providing suggestions for redirected commands.
  • MC-293755 – The ender dragon's neck and tail disconnect from its body when it turns.
  • MC-306628 – TNT minecarts don't delete piercing arrows.
  • MC-307918 – Sculk patches can cause errors in the log during world generation.
  • MC-308344 – Validation error when compiling shaders containing in/out array or matrix variables with the Vulkan rendering backend.
  • MC-308406 – Item models are shown incorrectly in the smithing table menu's armor stand.
  • MC-308647 – The resource packs screen can cache font glyphs incorrectly after toggling the "Font Settings" option.
  • MC-309298 – Sending chat messages while having the "Chat Delay" option set to a nonzero value can sometimes kick you from the game.
  • MC-309565 – Block outlines are rendered behind translucent elements if the "High Contrast Block Outlines" option is enabled.
  • MC-310041 – Under specific conditions, chunk loading frequently fails.

From the Java Edition 26.3 development versions

  • MC-309250 – Naturally generated decorated pots don't drop bricks when broken with tools.
  • MC-309500 – Crafting decorated pots without sherds using the recipe book creates a pot that doesn't drop bricks when broken with a tool.
  • MC-309566 – Block outlines are rendered behind translucent elements if the "Improved Transparency" option is disabled.
  • MC-309743 – The attacking animation of drowned is incorrect.

From the previous development version

  • MC-310096 – Invalid item modifiers crash the game.
  • MC-310098 – Trying to mix item modifier references and inline values in a list prevents the pack from loading.
  • MC-310125 – Blaze powder in brewing stands uses the cooking/speed_default number provider instead of brewing/speed_default.
  • MC-310133 – Gurgles do not aim their tridents correctly.
  • MC-310135 – The server crashes when requesting command suggestions for /attribute referenced from /execute.
  • MC-310149 – Glass flickers when looking at it closely with the Vulkan rendering backend and the "Improved Transparency" option enabled.
  • MC-310163 – The game crashes when entering exclusive fullscreen on Wayland.

26.3 Snapshot 6 (known as 26.3-snapshot-6 in the launcher) is the sixth snapshot for Java Edition 26.3, released on July 28, 2026,[12] which tweaks the abandoned camps, makes technical changes, and fixes bugs.

Additions

General

Entity data

  • Added invulnerable_time tag which makes a mob temporarily invulnerable for a specific number of ticks.

Options

  • Added Quit Shortcuts option.
    • Can be accessed in the Controls section.
    • Allows keyboard shortcuts that close the game, such as ⌥ Alt + F4 on Windows and ⌘ Command + Q or ⌘ Command + W on macOS.
    • Disabled by default.

Changes

World generation

Abandoned camp

  • Added a new campsite variant for each biome.
  • Minor tweaks to abandoned camp structures.
Command format

/publish

  • The gamemode argument has been removed.
    • Instead, the default game mode of the world should be set using the /defaultgamemode command or the Game Mode button in the World Options screen, while player-specific game modes should be set using the /gamemode command.
General

Data component format

  • minecraft:cooking_fuel
    • burn_time and speed_multiplier can now additionally be defined by an inline number.
  • minecraft:brewing_fuel
    • uses and speed_multiplier can now additionally be defined by an inline number.
  • minecraft:compostable
    • layers can now additionally be defined by an inline number.

Data pack

Equipment assets

  • The trim_palette_replacements field has been replaced with trim_overrides. This can be used to swap out the texture or palette used with specific trim materials or patterns for a given equipment asset, not just swap specific palettes.
    • Format: list of override entries with fields:
      • when – object with fields, the material and/or pattern to match.
        • material – optional trim material ID, the material to match (if specified).
        • pattern – optional trim pattern ID, the pattern to match (if specified).
          • Note: this is not the palette ID, as trim_palette_replacements used to be.
        • At least one of material or pattern must be specified.
        • If both are specified, both must match for the entry to be used.
      • texture – optional trim pattern asset ID, a replacement texture to use if this entry matches.
        • Textures are specified in the same format as asset_id
        • If not specified, the default texture for the pattern will be used.
      • palette – optional palette ID, a replacement palette to use if this entry matches.
        • If not specified, no palette remapping will be applied to the texture.
      • The first matching entry will always be selected.
      • At least one of texture or palette must be defined.

Loot table types

  • minecraft:block_interact
    • origin is now available in context, as the center of the block being interacted with.

Rendering

  • Terrain blocks are now rendered with MultiDrawIndirect on supported devices.

Resource pack

  • The version is now 94.0.

Settings

New World Options UI
  • The World Options button has been moved to the Game Menu where the Open to LAN button used to be, replacing it.
    • The World Options screen is divided into two sections: "General" and "Multiplayer".
    • The "General" section contains the same options as the previous World Options screen.
      • The Lock World screen has been changed.
    • The "Multiplayer" section contains three options:
      • LAN: changes the multiplayer scope of the world.
      • Command Access: Controls whether players that join a world can use commands or not.
      • Port: the port number to use when opening the world to LAN.
  • The Online button used to access the Online Options screen will now always be shown in the Options menu.

Shaders

  • terrain.vsh and terrain.fsh shaders are refactored to support multi-draw.
  • Some of the members in Globals and DynamicTransforms are shuffled to use less memory for those uniform blocks.
  • Introduced new define: RENDERPEARL_EXPLICIT_DEPTH_INVARIANCE – if present, indicates that an OIT shader should explicitly output a depth value because a device it is running on can produce a slightly different implicit value.

World generation

  • Noises
    • The format of noises (defined in the worldgen/noise registry, or inline in noise-based block state providers) has been updated.
    • Noises define a fractal brownian motion configuration with the following properties:
      • Produces output values (approximately) fitting a normal distribution.
      • Unless otherwise specified, fits the output amplitude to [-1; 1]
        • Due to the normal distribution, in practice this means that 99.7% of all samples will fit in that range – but values may still be encountered outside of this range.
      • Parameterized by persistence=0.5, lacunarity=2.0
        • i.e. between each octave, the amplitude is halved and the frequency doubled.
      • Has stable seeding such that an octave can be boosted, muted, or added without affecting the rest of the octaves.
      • Renamed firstOctave to base_octave.
      • Added base_amplitude – non-negative float, a scale factor to apply to the noise output.
        • If not specified, defaults to 1.0.
      • Added octave_count – integer between 1 and 32, the number of octaves to sample.
      • Added normalize – boolean, or "legacy", controls how the output amplitude should be normalized.
        • If true, base_amplitude is the expected amplitude of the output (i.e. 99.7% of all samples in [-base_amplitude; base_amplitude])
        • If false, base_amplitude is the amplitude of the first octave.
        • If "legacy", inherits the same normalization behavior as expressed by the previous format.
          • This would generally fit to a range smaller than expected.
        • If not specified, defaults to true.
        • Note: normalization is not affected by the amplitude_modifiers field – as such, modifying the amplitude of a single octave will not affect the amplitude of others.
      • Renamed amplitudes to amplitude_modifiers – list of floats, a scaling factor to apply to each octave.
        • The number of elements in this list must match octave_count.
        • As described above, this scaling factor bypasses normalization and will affect the output amplitude.
        • This field is no longer required – if not specified, defaults to all 1.0.
  • Density functions
    • Added pow
      • Raises the given base value to an exponent.
      • Format: object with fields:
        • base – density function, the base value.
        • exponent – density function, the exponent.
    • Added sqrt
      • Computes the square root of the given input.
      • Format: object with fields:
        • input – density function, the value for which to compute the square root.
    • Added log
      • Computes the natural logarithm of the given input.
      • Format: object with fields:
        • input – density function, the value for which to compute the natural logarithm.
    • Added sign
      • Computes the sign of the input:
        • If the input is positive, returns 1
        • If the input is 0, returns 0
        • If input is negative, returns -1
      • Format: object with fields:
        • input – density function, the value of which to compute the sign.
    • Added distance_to_point
      • Computes the distance to a fixed point using the specified distance function.
      • Format: object with fields:
        • point – array of 3 integers in form [x, y, z], the point to compute distance to.
        • metric – one of:
          • euclidean – i.e. sqrt(dx2+dy2+dz2)
          • euclidean_squared – i.e. dx2+dy2+dz2
          • manhattan – i.e. abs(dx)+abs(dy)+abs(dz)
          • chebyshev – i.e. max(abs(dx),abs(dy),abs(dz))
    • Updated gradient (renamed from y_clamped_gradient)
      • Format: object with fields:
        • axis – x, y, or z, the axis over which to define this gradient.
        • tiling – one of:
          • clamp_to_edge – outside the gradient boundaries, the value at the nearest boundary will be used.
          • repeat – the gradient will be repeated outside its boundaries.
          • mirrored_repeat – the gradient will be repeated such that odd repetitions are mirrored, ensuring continuity between repetitions.
        • from_coordinate – int, the coordinate at which the gradient starts.
        • to_coordinate – int, the coordinate at which the gradient ends.
          • Must not be equal to from_coordinate
        • from_value – float, the value at which the gradient starts.
        • to_value – float, the value at which the gradient ends.
    • Added slice
      • Removes a dimension from the input domain by taking a "slice" along an axis with a specific coordinate. For example, with axis=y and coordinate=0, a slice will be taken along the XZ plane, with all values sampled at y=0.
      • Format: object with fields:
        • axis – x, y, or z, the axis to remove.
        • coordinate – int, the fixed coordinate to be passed to the input function.
        • input – density function, the input function.
    • Changed end_outer_islands
      • Renamed from end_islands. No longer computes the density of the main island.
  • Structure pool elements
    • Changed minecraft:feature_pool_element
      • Can now connect to jigsaw blocks with any target name, instead of just minecraft:bottom.

Fixes

40 issues fixed

From released versions before Java Edition 26.3

  • MC-159283 – The End terrain does not generate in multiple rings centered around the world center.
  • MC-299582 – Special crafting recipes behave differently than other recipe types with /recipe and the limited_crafting game rule.
  • MC-304195 – The arm overlay textures of parched have unused pixels not used by the model.
  • MC-307206 – Std140Builder incorrectly pads vec3s and ivec3s.
  • MC-307996 – The game cannot use hardware acceleration on devices lacking the fillModeNonSolid Vulkan feature.
  • MC-308694 – Using /defaultgamemode changes everyone's game mode to the one set in "Settings for Other Players" in LAN worlds.
  • MC-308699 – Switching the host's game mode causes new LAN players to ignore the forced game mode.
  • MC-308749 – Exiting and rejoining the same LAN session resets your game mode.

From the Java Edition 26.3 development versions

  • MC-309720 – The texture of straw beds has missing and extra pixels.
  • MC-309958 – Off-by-one error in SynchedEntityData.Builder#define.
  • MC-310088 – The taskbar icon displays the Java logo instead of the game's logo.
  • MC-310099 – The game freezes if the head part of straw beds has a different facing than the foot part.
  • MC-310101 – ⌘ Command + W now closes the game on macOS.
  • MC-310122 – Traversing the pie chart with keys does not work correctly.
  • MC-310132 – Armor trim textures can no longer be overridden.
  • MC-310134 – The "Exclusive Fullscreen" button and "Exclusive Fullscreen Mode" slider are still present and enabled on macOS.
  • MC-310136 – Player skin rendering is messed up when the "Improved Transparency" setting is enabled.
  • MC-310143 – IME candidates are invisible in fullscreen mode even when the "Exclusive Fullscreen" option is disabled.
  • MC-310155 – After entering macOS fullscreen by clicking the "Fullscreen" button in the Video Settings menu, you cannot reveal the menu bar or dock by navigating to the edge of the screen.
  • MC-310168 – When editing a glowing sign, the glow on the placed sign temporarily disappears.
  • MC-310195 – ⎈ Control + ← Left click no longer counts as a right click on macOS.
  • MC-310213 – On-screen keyboard handling is inconsistent.
  • MC-310228 – The game freezes when a player destroys a bed at the exact same moment a villager sleeps in it.
  • MC-310235 – The game crashes when a piston pushes a water cauldron with the "Improved Transparency" option enabled.
  • MC-310241 – Brewing recipes show up in the command suggestions for /recipe, but cannot be granted or revoked.
  • MC-310281 – Using keyboard shortcuts to navigate tabs within UIs doesn't work correctly.

From the previous development version

  • MC-310311 – Item modifiers that reference themselves crash the game when invoked.
  • MC-310313 – Predicates that reference themselves crash the game when invoked.
  • MC-310314 – Number providers that reference themselves crash the game when invoked.
  • MC-310315 – Slot sources that reference themselves crash the game when invoked.
  • MC-310319 – The game crashes when the spider post effect is applied.
  • MC-310321 – The creeper post effect is ineffective.
  • MC-310357 – The OpenGL rendering backend passes 3 to GL_UNPACK_ALIGNMENT, which is invalid.
  • MC-310359 – mipLevel is not respected when copyTextureToTexture is used.
  • MC-310360 – clearColorTexture and clearDepthTexture clear all mipmaps with the Vulkan rendering backend, unlike with the OpenGL one.
  • MC-310382 – The game crashes when applying a resource pack with a shader that uses #include with uppercase characters in the path.
  • MC-310383 – The per-target blend state diverges between the OpenGL and Vulkan rendering backends.
  • MC-310388 – The caves and floating_islands noise settings no longer generate as intended.
  • MC-310455 – copyTextureToBuffer produces padded rows with the OpenGL rendering backend but tightly-packed rows with the Vulkan one.

Other

  • Fixed an issue where Realm owners could not select automatic region preference as their Realm region.

26.3 Snapshot 7 (known as 26.3-snapshot-7 in the launcher) is the seventh snapshot for Java Edition 26.3, released on August 4, 2026,[13] which adds concrete stairs and slabs in 16 colors and new explorer maps for various structures; it also updates the texture of maps and the loot of abandoned camps, and turns explorer maps into unique items.

Additions

Blocks

Concrete stairs and slabs

Items

New Explorer Maps

General

Data component format

  • Added minecraft:attack_animation
    • The animation to play when the item is being used to attack something.
    • Format: object with fields:
      • type – swing animation type, one of whack or stab.
      • duration – positive integer, the length of the animation in ticks.
  • Added minecraft:interact_animation
    • The animation to play when the item is being used to interact with something.
    • Format: same as minecraft:attack_animation

Key codes

  • Added new key codes for the following keys:
ID Displayed name Physical key or button Translation key
key.keyboard.keypad.plus.minus Keypad ± Numpad ± key.keyboard.keypad.plus.minus
key.keyboard.keypad.left.parenthesis Keypad ( Numpad ( key.keyboard.keypad.left.parenthesis
key.keyboard.keypad.right.parenthesis Keypad ) Numpad ) key.keyboard.keypad.right.parenthesis
key.keyboard.keypad.period Keypad . Numpad .[14] key.keyboard.keypad.period
key.keyboard.keypad.comma Keypad , Cannot be assigned[15] key.keyboard.keypad.comma
key.keyboard.application Menu ≣ Menu[16] key.keyboard.application
key.keyboard.mute Mute 🔇︎ Mute key.keyboard.mute
key.keyboard.volume.down Volume Down 🔉︎ Volume Down key.keyboard.volume.down
key.keyboard.volume.up Volume Up 🔊︎ Volume Up key.keyboard.volume.up
key.keyboard.media.play.pause Play/Pause Play/Pause key.keyboard.media.play.pause
key.keyboard.stop Stop Stop key.keyboard.stop
key.keyboard.cut Cut Cut key.keyboard.cut
key.keyboard.copy Copy Copy key.keyboard.copy
key.keyboard.paste Paste Paste key.keyboard.paste
key.keyboard.undo Undo ⎌ Undo key.keyboard.undo
key.keyboard.again Again Redo[17] key.keyboard.again
key.keyboard.new New New key.keyboard.new
key.keyboard.save Save Save key.keyboard.save
key.keyboard.help Help Help key.keyboard.help
key.keyboard.find Find Find key.keyboard.find
  • key.keyboard.left.alt, key.keyboard.right.alt, key.keyboard.left.win, and key.keyboard.right.win now have different display names depending on the user's operating system.

Tags

  • Item tags
    • Added #concrete_stairs
      • Contains all concrete stair items.
    • Added #concrete_slabs
      • Contains all concrete slab items.
    • Added #clonable_maps
      • Contains filled maps plus all explorer maps items and buried treasure maps, used as the input to the map_cloning recipe.
    • Added #extendable_maps
      • Contains maps that can be zoomed out with paper, either in a crafting table or at a cartography table.

Changes

Items

Explorer Maps

  • Updated existing explorer maps' inventory icon textures:
All texture changes
Structure Before After
Buried Treasure
Desert Village
Plains Village
Savanna Village
Snowy Village
Taiga Village
Jungle Pyramid
Swamp Hut
Ocean Monument
Woodland Mansion
Trial Chambers
  • Several explorer maps have been renamed:
    • "Jungle Explorer Map" has been renamed to "Jungle Pyramid Explorer Map".
    • "Ocean Explorer Map" has been renamed to "Ocean Monument Explorer Map".
    • "Swamp Explorer Map" has been renamed to "Swamp Hut Explorer Map".
    • "Trial Explorer Map" has been renamed to "Trial Chambers Explorer Map".
    • "Woodland Explorer Map" has been renamed to "Woodland Mansion Explorer Map".
  • All explorer maps are now unique items; previously they used the same item ID as filled maps.
    • These items cannot be obtained from the Creative inventory.
    • Existing explorer maps in old worlds are converted to the matching new item on load.
    • Explorer maps can still be cloned in a crafting table, and the copies keep their own item type.
  • Explorer maps and buried treasure maps can no longer be zoomed out, neither in a crafting table nor in a cartography table.
    • Buried treasure maps could previously be zoomed out in both.
    • Explorer maps could previously be zoomed out in a cartography table.
    • Only maps in the #minecraft:extendable_maps tag can be zoomed out.

Map and Empty Map

  • Updated inventory icon textures from .

Map decorations

  • The map icons for players on maps and explorer maps has been updated to always show the direction the player is facing.
All texture changes
Name Before After
Player Locator
Player Off Map
Player Off Limits
Non-mob entities

Cushion

  • No longer prevent vibrations when placed, broken or interacted with.
World generation

Abandoned camp

  • Updated loot table for the abandoned camp barrel.
  • Replaced firework rocket with gunpowder in abandoned camp chest loot table.
  • Abandoned campsite maps showing the location of other abandoned camps can be found in the "common chest" loot of abandoned camps.
  • Explorer maps for several other structures can be found in the "secret chest" loot of abandoned camps.
Command format

/swing

  • When used on a player, the player's attack strength will no longer be reset.
  • Added a new optional argument to set the swing animation to play.
    • Allowed values: whack, stab
    • If omitted, defaults to whack
  • Added a new argument to set the duration of the swing animation, if provided.
    • Format: positive time value (by default in ticks).
    • If omitted, defaults to 6t.
General

Block states

  • The following block state fields have been renamed.
    • Name is now id
    • Properties is now properties
  • The default block state of a block can now be referred to in a compact form directly by the block ID.

Controls

  • Renamed some key code display names:
    • key.keyboard.left.win: "Left Win" → "Left Meta"
    • key.keyboard.right.win: "Right Win" → "Right Meta"

Data component format

  • Removed minecraft:swing_animation
    • This has been replaced by minecraft:attack_animation and minecraft:interact_animation.
      • The none swing animation type has been removed.
      • Existing items in the world will be migrated to using the default whack.
      • Setting both of these new components to the same value will be functionally identical to the old component, except for:
        • The /swing command – animation type now specified by the command.
        • Items being dropped by entities.
  • Removed minecraft:map_color
    • Maps are no longer drawn as a tinted overlay, so there is nothing left for the color to apply to.
    • Existing maps have the component stripped on load.

Data pack

Density functions

  • Density function and noises are no longer evaluated with double-precision floating point values, but instead with single-precision.
    • This affects all intermediate steps, not just the final result.

GUI

  • The sub-headings and categories in different tabs of options now use a boldface, underlined and centered format.

Item models

  • Tint source
    • Removed minecraft:map_color
      • The minecraft:map_color component it read no longer exists.

level.dat

  • level.dat now contains a version_history list with prior data versions of the file.

Loot functions

  • Changed minecraft:exploration_map
    • The map_color field has now been removed.
    • The function no longer changes the type of the item it is applied to – it now only adds map data to the existing item.
      • Previously it required a minecraft:map and produced a minecraft:filled_map
      • The item to produce is now chosen by the loot entry or villager trade itself, so a data pack that produced exploration maps has to change its item from minecraft:map to minecraft:filled_map (or one of the explorer map items)
      • If no matching structure is found, the item is left without a minecraft:map_id – use minecraft:filtered with minecraft:discard_item to drop those, as the vanilla loot tables and villager trades now do.

Order-independent Transparency (OIT)-related shader

  • Renamed defines:
    • OIT_WAVELET_RANK – was previously WAVELET_RANK
    • OIT_COEFF_COUNT – was previously COEFF_COUNT
    • OIT_COEFF_ATTACHMENT_COUNT – was previously COEFF_ATTACHMENT_COUNT

Realms

  • Added support for Realms to use additional server regions in Canada, Mexico, South Africa, and Arizona, USA if they become available in the future.

Resource pack

  • The version is now 95.0.

Tags

Textures

  • Item sprites
    • Removed item/filled_map_markings.png
  • Map sprites
    • Added new explorer map textures:
      • abandoned_campsite_map.png
      • ancient_city_map.png
      • desert_pyramid_map.png
      • mineshaft_map.png
      • warm_ocean_ruins_map.png
    • Updated the following map and explorer map textures:
      • buried_treasure_map.png
      • filled_map.png
      • map.png
      • desert_village_map.png
      • plains_village_map.png
      • snowy_village_map.png
      • snowy_village_map.png
      • taiga_village_map.png
      • savanna_village_map.png
      • trial_chamber_map.png
      • woodland_mansion_map.png
      • ocean_monument_map.png
    • Added new map decorations textures:
      • abandoned_camp.png
      • ancient_city.png
      • desert_pyramid.png
      • mineshaft.png
      • warm_ocean_ruins.png
    • The following map decoration icons have been updated in order to show player rotation on the map:
      • /player.png
      • /player_off_limits.png
      • /player_off_map.png

Fixes

38 issues fixed

From released versions before Java Edition 26.3

  • MC-121375 – The ⌘ Command key on macOS is displayed as "Win" in the key binds screen.
  • MC-189953 – The ❖ Super key on macOS is displayed as "Win" in the key binds screen.
  • MC-218156 – Shipwrecks and ocean ruins can generate with empty buried treasure maps.
  • MC-276079 – Sending a swing packet to the client causes it to send one back to the server.
  • MC-302271 – Sniffers stop sniffing after relog.
  • MC-302661 – Interacting with something while holding spears plays the spear jab animation.
  • MC-302687 – Throwing items out of your inventory while holding spears plays the spear jab animation.
  • MC-302705 – Having a spear in the main hand affects the hand animation speed for items held in the off hand.
  • MC-304213 – Zombies, husks and drowned hold out the incorrect arm when holding spears.
  • MC-304920 – Spears in third person look wrong when the left hand is the main hand.
  • MC-309875 – New translations for the tooltip of the "Improved Transparency" option are wrongly backported.
  • MC-310057 – Pressing the "Advancements" key bind while its menu was opened from the pause menu closes both menus.
  • MC-310062 – Armadillos do not follow players holding spider eyes.
  • MC-310337 – The game log outputs the incorrect minimum format version requiring the pack_format field in pack.mcmeta.
  • MC-310595 – The ⌥ Option key on macOS is displayed as ⌥ Alt in the key binds screen.

From the Java Edition 26.3 development versions

  • MC-309644 – Some textures of geyser plume particles still use inconsistent colors.
  • MC-309671 – Shelf mushrooms still use the wrong sounds.
  • MC-309679 – Cushions can be used to see through blocks.
  • MC-309732 – The straw_bed_head block model is stored in two directories.
  • MC-309776 – Straw beds are positioned incorrectly in item frames.
  • MC-309797 – Cushions can be placed inside full blocks when the player's head intersects them.
  • MC-309931 – Placed cushions face inconsistent directions.
  • MC-310094 – The decimal point keypad key is displayed as key.keyboard.99 in the key binds menu.
  • MC-310105 – The Menu key is displayed as key.keyboard.101 in the key binds menu.
  • MC-310109 – The keypad plus-or-minus key is still not prefixed with "Keypad".
  • MC-310110 – The keypad left and right parentheses keys are still not prefixed with "Keypad".
  • MC-310112 – Using a Nether portal in Spectator mode while spectating an entity teleports the player to the incorrect location.
  • MC-310118 – Pressing ⊞ Windows + D to minimize all windows makes the game no longer visually update with the Vulkan rendering backend.
  • MC-310358 – The conditions for depthBiasEnable differ between OpenGL and Vulkan.

From the previous development version

  • MC-310529 – The World Options menu UI breaks when resizing the game window.
  • MC-310532 – Trying to lock the difficulty of the world resets the difficulty.
  • MC-310536 – The category headers in the World Options screen are formatted inconsistently with other settings screens.
  • MC-310550 – ⌘ Command + W on Mac now closes the window.
  • MC-310553 – The campsite_wooded_badlands_4 and campsite_swamp_2 abandoned camp structures contain overlapping cushions.
  • MC-310556 – Pressing ⌥ Alt + F4 closes the game window on kwin_wayland even when the "Quit Shortcuts" option is disabled.
  • MC-310590 – Adding the entity_outline post effect to the player, restarting the game, and entering the same world causes the game to crash.
  • MC-310599 – Several abandoned camp structures contain waxed oxidized copper chests.
  • MC-310610 – Several abandoned camp structures contain underwater oxidized copper chests that are not waterlogged.

26.3 Snapshot 8 (known as 26.3-snapshot-8 in the launcher) is the eighth snapshot for Java Edition 26.3, released on August 12, 2026,[18] which adds invite codes for Realms, renames a few explorer maps, and fixes bugs.

Additions

General

Realms

  • Realms owners can now create invite codes to their Realm.
    • Up to 5 invite codes are allowed.
    • They can be configured to be either active or inactive.
    • Expiration of the invite code can be configured.
  • Players can now join Realms by entering an invite code in the new "Join Realm" screen.

Changes

Blocks

Concrete slabs and stairs

Straw beds

Items

Explorer maps

  • Renamed the following explorer maps:
    • Abandoned Campsite Map → Abandoned Camp Map
    • Ancient City Map → Buried Ancient City Map
    • Jungle Pyramid Explorer Map → Jungle Explorer Map
    • Mineshaft Map → Buried Mineshaft Map
    • Ocean Monument Explorer Map → Ocean Explorer Map
    • Swamp Hut Explorer Map → Swamp Explorer Map
    • Trial Chambers Explorer Map → Trial Explorer Map
    • Woodland Mansion Explorer Map → Woodland Explorer Map

Map decorations

  • The map icon of woodland mansion on filled maps is now consistent with the one on woodland explorer map item texture.
Non-mob entities

Cushions

  • Cushions are now destroyed only when they are fully covered by blocks that cause suffocation.
World generation

Abandoned Camps

  • Now generate slightly further apart, with a spacing of 37 chunks instead of 34.
Gameplay

Trading

  • New villager trades, unlocked from a villager leveling up their profession, will now update even if the player has the trading UI open.
General

Data pack

World Options

The updated world options
  • Some further improvements have been made to the World Options screen.
    • The "Game Mode" button has been renamed to "Default Game Mode"
    • The "General" section has a new addition:
      • Personal Game Mode: the player's active game mode in the current world (equivalent to the /gamemode command, or F3 + F4)
    • The "Multiplayer" section has a new addition:
      • Force Game Mode: controls whether other players game mode is forced to match the default game mode of the world or not.

Order-independent Transparency (OIT)

  • OIT_FORCE_ZERO_DEPTH shader define was removed since the see-through text it was used for is now rendered in a separate pass outside OIT.

Resource pack

  • The version is now 96.0.

Shaders

  • Removed core shaders
    • core/text_background.fsh and core/text_background.vsh were removed and text background in Text Display Entities is now rendered using the text shaders.

World generation

  • Features
    • Removed feature types:
      • minecraft:desert_well
        • The desert well feature now uses the type minecraft:template.[19]
    • Changed minecraft:template
      • Added the field processors – namespaced ID or inline definition of a structure processor list to apply to the template.
  • Placement modifiers
    • Added minecraft:randomly_selected
      • Randomly selects a placement modifier from a list and delegates placement to it.
      • Format:
        • placements – non-empty list of Placement Modifiers to pick from.
  • Block predicates
    • Added minecraft:volume_match
      • Checks that every block in a volume matches a given Block Predicate.
      • Format:
        • min – list of 3 integers in range -16 to 16 specifying the lower corner of the volume as an offset from the test position.
        • max – list of 3 integers in range -16 to 16 specifying the upper corner of the volume as an offset from the test position.
        • match – block predicate to test on each position.

Fixes

48 issues fixed

From released versions before Java Edition 26.3

  • MC-44654 – Some entities' positions are not updated on the client when teleported.
  • MC-122731 – Camera movement stutters when turning in a boat.
  • MC-206540 – Increased input delay when riding an entity.
  • MC-236497 – The head rotations of passengers in boats are not correctly displayed for other players.
  • MC-237679 – The head rotations of passengers in boats are constantly forced to turn in certain directions if the rider were to dismount the boat while moving left or right.
  • MC-249200 – Several entities constantly deviate visually from their actual positions on the client when teleported.
  • MC-253023 – Breaking paintings, item frames, glow item frames cannot trigger sculk shriekers.
  • MC-258579 – The player's head does not rotate smoothly (with delay) in third person view while riding a vehicle.
  • MC-259512 – Horizontal camera rotation lags when riding.
  • MC-260780 – Shulker Bullets always push Fireballs south.
  • MC-280250 – Projectiles sometimes desync when thrown/shot while moving.
  • MC-300000 – Players desync when teleporting all users riding a happy ghast.
  • MC-305214 – Arrows deflecting off of entities get offset.
  • MC-308961 – When changing the game mode using debug hotkeys while in the World Options screen, the "Game Mode" button does not update.
  • MC-310476 – Projectiles only collide outright with the world border when underwater.
  • MC-310787 – Villagers do not level up until the trading window is closed for several seconds.

From the Java Edition 26.3 development versions

  • MC-309284 – Poplar leaves don't use the dark_cutout mipmap strategy.
  • MC-309668 – Straw beds are not broken faster when using hoes.
  • MC-309670 – Cushions z-fight with the tops of dragon heads.
  • MC-309716 – Cushions can be broken in Adventure mode.
  • MC-310066 – Tridents thrown by drowned still visually bounce off entities.
  • MC-310097 – Experience orbs desync and appear to phase through blocks.
  • MC-310103 – The "Text Background Opacity" setting makes the text darker when the "Text Background" setting is set to Everywhere.
  • MC-310166 – The straw bed is not placed immediately after regular beds in the Creative mode inventory.
  • MC-310175 – Missing resource warning when loading up the game.
  • MC-310200 – The player's model flickers while falling into the void when viewed from certain angles.
  • MC-310393 – Certain projectiles thrown at the world border rubberband repeatedly.
  • MC-310530 – Changing the game mode in the World Options screen no longer changes the player's game mode.
  • MC-310540 – A noise definition with base_amplitude set to 0.0 crashes the game during world load.
  • MC-310543 – The JVM crashes with EXCEPTION_ACCESS_VIOLATION in atio6axx.dll on Boot Camp (AMD Radeon Pro 555X).
  • MC-310549 – invulnerable_time never decreases for some entities.
  • MC-310632 – Farmer villagers no longer throw excess wheat to other villagers.
  • MC-310642 – Landing on farmland deals no fall damage when the block is prevented from being trampled.
  • MC-310789 – Chunks sometimes don't fade in correctly.

From the previous development version

  • MC-310687 – Languages other than "English (US)" fail to load.
  • MC-310691 – Stonecutter recipes for concrete stairs and slabs are missing.
  • MC-310692 – The error message when the game is unable to load translations can extend outside the screen.
  • MC-310705 – The difficulty lock warning screen shows the wrong difficulty after changing the difficulty.
  • MC-310718 – Unused color attachments are unusable with the OpenGL rendering backend.
  • MC-310726 – The mansion icon in the texture of woodland explorer maps doesn't match the respective icon on the map.
  • MC-310728 – Cushions can still be used to see through blocks in third person mode.
  • MC-310729 – Explorer maps from previous versions prevent saved hotbars from loading.
  • MC-310743 – The category headers in the Debug Options screen are still different than the other options screens.
  • MC-310757 – In OIT shaders, coefficients[0] is accumulated using depth but subtracted using originalDepth.
  • MC-310771 – The common abandoned camp map is named "Abandoned Campsite Map" instead of "Abandoned Camp Map".
  • MC-310783 – Resource packs with custom namespaces cause the "English (US)" language to fail to load.
  • MC-310812 – Placing and breaking cushions does not trigger sculk shriekers.
  • MC-310917 – Chunk generation can corrupt on worlds upgraded from previous versions.

26.3 Snapshot 9 (known as 26.3-snapshot-9 in the launcher) is the ninth snapshot for Java Edition 26.3, released on August 17, 2026,[20] which tweaks the teleportation of entities, makes technical changes, and fixes bugs.

Additions

General
This section is missing information about: Many, MANY key codes were added in this version (many outright unused)
 
Please expand the section to include this information. Further details may exist on the talk page.

Tags

  • Block tags
    • Added #uncarvable
      • Contains blocks that carvers can never carve.
    • Added #dangerous_for_teleportation
      • Contains collection tag defining blocks that are dangerous to teleport on.
    • Added #cat_does_not_teleport_to
      • Contains blocks that cats do not teleport to.
    • Added #enderman_does_not_teleport_to
      • Contains blocks that endermen do not teleport to.
    • Added #shulker_does_not_teleport_to
      • Contains blocks that shulkers do not teleport to.
    • Added #consumable_does_not_teleport_to
      • Contains blocks that entities do not teleport to when they consume food that teleports randomly when eaten.
        • Empty by default.
  • Item tags
    • Added #brewing_potion_inputs
      • Contains items that can be placed in a brewing stand potion slot, regardless of whether they are brewing recipe inputs.
  • Potion tags
    • Added #douses_fire
      • Contains potions that douse fire blocks when they hit something.
    • Added #hurts_water_sensitive_entities
      • Contains potions that will hurt entities which are sensitive to water (e.g. Endermen).
    • Added #extinguishes_entities
      • Contains potions that can extinguish entities.
    • Added #rehydrates_axolotls
      • Contains potions that will cause axolotls to rehydrate.

UI

  • Added a "Right Click Emulation" option to the control settings on macOS, which treats ⎈ Control + left-click as a right-click.
    • Default is set to Off.

Changes

Mobs

Endermen

  • Endermen will now take damage from projectiles if they are riding something.
  • They no longer attempt to teleport because of environmental damage while riding something.
  • They can no longer teleport onto bedrock.

Shulkers

  • They can no longer teleport onto bedrock.
General

Data pack

GUI

  • The sub-headings and categories in different tabs of Options can now be focused.

Loot functions

  • Changed minecraft:sequence
    • Can now only use an inline definition in a top-level file.

Number providers

  • Changed minecraft:sum
    • The summands field was renamed to operands and now accepts an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:number_provider type.
    • Now requires at least one operand.
    • When used in integer mode, integer mode is used for intermediate steps as well.
  • Added minecraft:product
    • Fields:
      • operands – a list of numbers as an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:number_provider type.
    • Returns the product of the operands, multiplying them all together.
    • Requires at least one operand.
  • Added minecraft:minimum
    • Fields:
      • operands – a list of numbers as an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:number_provider type.
    • Returns the minimum value of the operands.
    • Requires at least one operand.
  • Added minecraft:maximum
    • Fields:
      • operands – a list of numbers as an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:number_provider type.
    • Returns the minimum value of the operands.
    • Requires at least one operand.
  • Added minecraft:average
    • Fields:
      • operands – a list of numbers as an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:number_provider type.
    • Returns the average value of the operands.
    • Requires at least one operand.

Slot sources

  • Changed minecraft:group
    • Can only use an inline definition in a top-level file.

Fixes

50 issues fixed

  • MC-59810 – Cannot break blocks while sprinting on macOS.
  • MC-102836 – Endermen and entities eating chorus fruit can teleport to some dangerous places.
  • MC-106416 – Endermen and entities eating chorus fruit can teleport outside the world border and into powder snow.
  • MC-183446 – Endermen still avoid projectiles when riding minecart or boat.
  • MC-214113 – Endermen and shulkers can teleport onto the Nether roof.
  • MC-227008 – Endermen constantly try to teleport when riding a vehicle under daylight.
  • MC-273708 – Endermen taking environmental damage attempt to teleport when riding an entity.
  • MC-274924 – Angry endermen suffocating while in a boat or minecart can attack their target from really far away.
  • MC-296773 – Taken screenshots are rendered as a black image on Intel graphics of Gen7 and Gen7.5 architecture.
  • MC-307384 – Screen tearing occurs with the Vulkan rendering backend in fullscreen mode with lower framerates, even if VSync is enabled.
  • MC-307596 – The OpenGL rendering backend seems to be very laggy.
  • MC-308593 – Animated blocks (notably water and lava) render incorrectly on some graphics.
  • MC-309344 – Shelf mushrooms held by foxes clip through their head and muzzle.
  • MC-309468 – Dropped shelf mushrooms rotate off-center.
  • MC-309479 – The game crashes during the loading screen with the message "Failed to wait for frame completion" on some systems.
  • MC-309501 – Dropped shelves rotate off-center.
  • MC-309911 – The words "blocks" and "seconds" in the commands.worldborder.set.grow string are always pluralized.
  • MC-309918 – The commands.perf.started string is missing a hyphen between the words "10" and "second" and an article before the word "10".
  • MC-310076 – Mobs sometimes stop just far enough away from the player to be unable to attack them.
  • MC-310087 – The block texture of poplar hanging signs is inconsistent with the GUI texture.
  • MC-310088 – The taskbar icon displays the Java logo instead of the game's logo.
  • MC-310116 – Several media keys are named "key.keyboard.[number]" in the key binds menu.
  • MC-310316 – Item modifier definition files can entirely be a string reference.
  • MC-310318 – Slot source definition files can entirely be a string reference.
  • MC-310328 – The dedicated server logs Ignoring host properties. minecraft.api.discovery.host or minecraft.api.env needs to be set on startup.
  • MC-310372 – Tripwires depowering breaks cross-chunk block tick processing order.
  • MC-310506 – The "Exclusive Fullscreen Mode" option has no effect when the "Exclusive Fullscreen" option is disabled.
  • MC-310633 – Brewing stand bottle slots no longer accept glass bottles or fully brewed lingering potions.
  • MC-310685 – The game crashes when some inline slot sources are parsed.
  • MC-310689 – Filled and empty maps are no longer distinguishable when using the "Programmer Art" resource pack.
  • MC-310715 – The translation strings for the Meta/Windows keys are not intuitive.
  • MC-310717 – The category headers in some options screens cannot be selected via the mouse cursor.
  • MC-310723 – There are two distinct, non-conflicting keys named "Menu".
  • MC-310735 – Placing or breaking blocks causes lag spikes in some cases.
  • MC-310924 – The game crashes when a rotated_block_provider block state provider is applied with a vertical direction to a block that can only face horizontally.
  • MC-310925 – Carvers can now carve through bedrock.
  • MC-310944 – Japanese and Korean keyboard keys are recognised wrongly.
  • MC-310962 – The trading UI opens and immediately closes when interacting with a villager whose trades were altered with commands.
  • MC-310965 – Buried treasure maps' textures are not reverted to the old ones with the "Programmer Art" resource pack enabled.
  • MC-310988 – Items are now positioned wrongly when the main hand is the left one.
  • MC-310991 – Power management keys are displayed as "key.keyboard.[number]" in the key binds screen.
  • MC-310993 – The player head's horizontal movement is jittery when riding a vehicle.
  • MC-311005 – The trading UI gets desynced if the villager is given trades using commands.
  • MC-311008 – All mobs stutter when they move their heads in the vertical direction.
  • MC-311010 – Most Application Control keys are still displayed as "key.keyboard.[number]" in the key binds menu.
  • MC-311012 – The animation of totems of undying pauses in the death screen.
  • MC-311045 – Arrows fired from dispensers can no longer destroy chorus flowers and decorated pots.
  • MC-311092 – The first person arm stutters heavily while turning the camera if the game is frozen.
  • MC-311100 – Using a custom font in a resource pack causes an error.
  • MC-311124 – The player's interaction animation stutters when the game is frozen.

Notes and references

  1. ↑ Named block_state_provider in the official changelog.
  2. ↑ Named xz_offset in the official changelog.
  3. ↑ they cannot be crafted using a stonecutter
  1. ↑ "Minecraft 26.3 Snapshot 1" – Minecraft.net, June 23, 2026.
  2. ↑ a b MC-309259 – Block Tags "#blocks_fluid_flow" and "#washed_away_by_fluids" do not work as expected
  3. ↑ MC-309043 – Carpets can no longer be crafted
  4. ↑ "Minecraft 26.3 Snapshot 2" – Minecraft.net, June 30, 2026.
  5. ↑ Iron axe default data component
  6. ↑ Iron hoe default data component
  7. ↑ Iron shovel default data component
  8. ↑ "Minecraft 26.3 Snapshot 3" – Minecraft.net, July 7, 2026.
  9. ↑ Number provider type registry
  10. ↑ "Minecraft 26.3 Snapshot 4" – Minecraft.net, July 16, 2026.
  11. ↑ "Minecraft 26.3 Snapshot 5" – Minecraft.net, July 21, 2026.
  12. ↑ "Minecraft 26.3 Snapshot 6" – Minecraft.net, July 28, 2026.
  13. ↑ "Minecraft 26.3 Snapshot 7" – Minecraft.net, August 4, 2026.
  14. ↑ MC-310826
  15. ↑ MC-310845
  16. ↑ MC-310723
  17. ↑ MC-310863
  18. ↑ "Minecraft 26.3 Snapshot 8" – Minecraft.net, August 12, 2026.
  19. ↑ worldgen/feature/desert_well.json – misode.mcmeta
  20. ↑ "Minecraft 26.3 Snapshot 9" – Minecraft.net, August 17, 2026.

Sources