Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Minecraft:Java Edition 26.3: Difference between revisions

From SAS Gaming Wiki
SyncBot (talk | contribs)
Sync: updated from Minecraft
SyncBot (talk | contribs)
Sync: updated from Minecraft
 
(39 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox version
{{Infobox version
| title = Minecraft 26.3
| title = Minecraft 26.3
| image = 26.3 banner.jpg
| image2 = Java Edition 26.3.png
| edition = Java
| edition = Java
| planned = yes
| name = [[Minecraft:Wilderness Bound]]
| date = Q3 2026
| date = September 15, 2026
| clienthash = e877b6a07acd633fb3bb475002175cec036e7b87
| jsonhash = 96c00d95a31328714d3811cfade2804bb050e455
| serverhash = 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c
| prevparent = 26.2
| prevparent = 26.2
| prev =
| next =  
| next =  
| nextparent =  
| nextparent = 26.4
}}{{Relevant guide|Java Edition guides/Third Drop 2026}}
}}{{Relevant guide|Java Edition guides/Wilderness Bound}}


'''26.3''', the release of the [[Minecraft:Third Drop 2026|third game drop of 2026]], is an upcoming [[Minecraft:game drop]] for {{JE}} set to release in the third quarter of 2026, which adds the [[Minecraft:dappled forest]] biome, including [[Minecraft:red shrub]]s, [[Minecraft:shelf mushroom]]s, [[Minecraft:wool stairs]] and [[Minecraft:Wool Slab|slab]]s, [[Minecraft:concrete stairs]] and [[Minecraft:Concrete Slab|slab]]s, [[Minecraft:straw beds]], [[Minecraft:cushion]]s, and a new [[Minecraft:abandoned camp]] structure.
'''26.3''', the release of '''[[Minecraft:Wilderness Bound]]''', is a [[Minecraft:game drop]] for {{JE}} released on September 15, 2026,<ref>{{mcnet|minecraft-java-edition-26-3|Minecraft Java Edition 26.3|September 15, 2026|}}</ref> which adds the [[Minecraft:dappled forest]] biome with the new [[Minecraft:poplar]] wood type, [[Minecraft:red shrub]]s, and [[Minecraft:shelf mushroom]]s. It also adds [[Minecraft:wool stairs]] and [[Minecraft:Wool Slab|slab]]s, [[Minecraft:concrete stairs]] and [[Minecraft:Concrete Slab|slab]]s, [[Minecraft:straw bed]]s, [[Minecraft:cushion]]s, and a new [[Minecraft:structure]] called the [[Minecraft:abandoned camp]], and fixes bugs.


== Additions ==
== Additions ==
Line 119: Line 123:
|Pink Concrete Slab
|Pink Concrete Slab
|Straw Bed
|Straw Bed
|Ancient City Map
|Buried Ancient City Map
|Mineshaft Map
|Buried Mineshaft Map
|Desert Pyramid Map
|Desert Pyramid Map
|Warm Ocean Ruins Map
|Warm Ocean Ruins Map
|Bamboo Jungle Abandoned Camp Map
|Bamboo Camp Map
|Birch Forest Abandoned Camp Map
|Birch Forest Camp Map
|Cherry Grove Abandoned Camp Map
|Cherry Grove Camp Map
|Dappled Forest Abandoned Camp Map
|Dappled Forest Camp Map
|Flower Forest Abandoned Camp Map
|Flower Forest Camp Map
|Pale Garden Abandoned Camp Map
|Pale Garden Camp Map
|Swamp Abandoned Camp Map
|Swamp Camp Map
|Windswept Forest Abandoned Camp Map
|Windswept Forest Camp Map
}}
}}


=== Blocks ===
=== Blocks ===
'''{{Animate|White Concrete Stairs (N) JE1.png;Light Gray Concrete Stairs (N) JE1.png;Gray Concrete Stairs (N) JE1.png;Black Concrete Stairs (N) JE1.png;Brown Concrete Stairs (N) JE1.png;Red Concrete Stairs (N) JE1.png;Orange Concrete Stairs (N) JE1.png;Yellow Concrete Stairs (N) JE1.png;Lime Concrete Stairs (N) JE1.png;Green Concrete Stairs (N) JE1.png;Cyan Concrete Stairs (N) JE1.png;Light Blue Concrete Stairs (N) JE1.png;Blue Concrete Stairs (N) JE1.png;Purple Concrete Stairs (N) JE1.png;Magenta Concrete Stairs (N) JE1.png;Pink Concrete Stairs (N) JE1.png|32px}}{{Animate|White Concrete Slab JE1.png;Light Gray Concrete Slab JE1.png;Gray Concrete Slab JE1.png;Black Concrete Slab JE1.png;Brown Concrete Slab JE1.png;Red Concrete Slab JE1.png;Orange Concrete Slab JE1.png;Yellow Concrete Slab JE1.png;Lime Concrete Slab JE1.png;Green Concrete Slab JE1.png;Cyan Concrete Slab JE1.png;Light Blue Concrete Slab JE1.png;Blue Concrete Slab JE1.png;Purple Concrete Slab JE1.png;Magenta Concrete Slab JE1.png;Pink Concrete Slab JE1.png|32px}} [[Minecraft:Concrete stairs]]''' and '''[[Minecraft:Concrete Slab|slabs]]'''
* Can be crafted with [[Minecraft:concrete]], as well as converted from a [[Minecraft:stonecutter]].
'''Poplar wood set:'''
'''Poplar wood set:'''
* '''[[File:Poplar Sapling.png|32px]] [[Minecraft:Poplar sapling]]'''
* '''[[File:Poplar Sapling.png|32px]] [[Minecraft:Poplar sapling]]'''
Line 168: Line 175:
* Is bouncy when fallen on by entities, similar to a [[Minecraft:bed]].
* Is bouncy when fallen on by entities, similar to a [[Minecraft:bed]].
** Shelf mushroom makes a bouncing sound when a living entity bounces on it.
** Shelf mushroom makes a bouncing sound when a living entity bounces on it.
* Can be used to make [[Minecraft:mushroom stew]] and [[Minecraft:suspicious stew]].
* Can be used to make [[Minecraft:mushroom stew]], [[Minecraft:suspicious stew]], and [[Minecraft:rabbit stew]].
* Can be sold by a [[Minecraft:wandering trader]].
* Can be sold by a [[Minecraft:wandering trader]].
* Can be used in the [[Minecraft:composter]].
* Can be used in the [[Minecraft:composter]].
Line 174: Line 181:
[[File:Straw Bed.png|32px]] '''[[Minecraft:Straw bed]]'''
[[File:Straw Bed.png|32px]] '''[[Minecraft:Straw bed]]'''
* A new type of [[Minecraft:bed]] which can be used to sleep through the night without resetting the player's [[Minecraft:spawn point]].
* A new type of [[Minecraft:bed]] which can be used to sleep through the night without resetting the player's [[Minecraft:spawn point]].
* Can only be used once and is destroyed after use.
* Can only be used once and is destroyed after use. It is also destroyed if you click the "Get up" button while you're sleeping.  
* Cannot be used in the [[Minecraft:Nether]] or the [[Minecraft:End]] and will be destroyed upon attempt to use, without dropping as an item.
* Cannot be used in the [[Minecraft:Nether]] or the [[Minecraft:End]] and will be destroyed upon attempt to use, without dropping as an item.
* Won't be used by [[Minecraft:villager]]s, unlike other [[Minecraft:bed]]s.
* Won't be used by [[Minecraft:villager]]s, unlike other [[Minecraft:bed]]s.
* Generates naturally in [[Minecraft:abandoned camp]]s.
* Generates naturally in [[Minecraft:abandoned camp]]s.
* 4 straw beds are crafted with 3 [[Minecraft:hay bales]].
* 4 straw beds are crafted with 3 [[Minecraft:hay bale]]s.
* Can stack up to 16.
* Can stack up to 16.
{{Crafting
{{Crafting
Line 187: Line 194:
| ignoreusage = 1
| ignoreusage = 1
}}
}}
* Are broken faster when mined with a [[Minecraft:hoe]].


'''{{Animate|White Wool Stairs (N) JE1.png;Light Gray Wool Stairs (N) JE1.png;Gray Wool Stairs (N) JE1.png;Black Wool Stairs (N) JE1.png;Brown Wool Stairs (N) JE1.png;Red Wool Stairs (N) JE1.png;Orange Wool Stairs (N) JE1.png;Yellow Wool Stairs (N) JE1.png;Lime Wool Stairs (N) JE1.png;Green Wool Stairs (N) JE1.png;Cyan Wool Stairs (N) JE1.png;Light Blue Wool Stairs (N) JE1.png;Blue Wool Stairs (N) JE1.png;Purple Wool Stairs (N) JE1.png;Magenta Wool Stairs (N) JE1.png;Pink Wool Stairs (N) JE1.png|32px}}{{Animate|White Wool Slab JE1.png;Light Gray Wool Slab JE1.png;Gray Wool Slab JE1.png;Black Wool Slab JE1.png;Brown Wool Slab JE1.png;Red Wool Slab JE1.png;Orange Wool Slab JE1.png;Yellow Wool Slab JE1.png;Lime Wool Slab JE1.png;Green Wool Slab JE1.png;Cyan Wool Slab JE1.png;Light Blue Wool Slab JE1.png;Blue Wool Slab JE1.png;Purple Wool Slab JE1.png;Magenta Wool Slab JE1.png;Pink Wool Slab JE1.png|32px}} [[Minecraft:Wool stairs]] and [[Minecraft:Wool Slab|slabs]]'''
'''{{Animate|White Wool Stairs (N) JE1.png;Light Gray Wool Stairs (N) JE1.png;Gray Wool Stairs (N) JE1.png;Black Wool Stairs (N) JE1.png;Brown Wool Stairs (N) JE1.png;Red Wool Stairs (N) JE1.png;Orange Wool Stairs (N) JE1.png;Yellow Wool Stairs (N) JE1.png;Lime Wool Stairs (N) JE1.png;Green Wool Stairs (N) JE1.png;Cyan Wool Stairs (N) JE1.png;Light Blue Wool Stairs (N) JE1.png;Blue Wool Stairs (N) JE1.png;Purple Wool Stairs (N) JE1.png;Magenta Wool Stairs (N) JE1.png;Pink Wool Stairs (N) JE1.png|32px}}{{Animate|White Wool Slab JE1.png;Light Gray Wool Slab JE1.png;Gray Wool Slab JE1.png;Black Wool Slab JE1.png;Brown Wool Slab JE1.png;Red Wool Slab JE1.png;Orange Wool Slab JE1.png;Yellow Wool Slab JE1.png;Lime Wool Slab JE1.png;Green Wool Slab JE1.png;Cyan Wool Slab JE1.png;Light Blue Wool Slab JE1.png;Blue Wool Slab JE1.png;Purple Wool Slab JE1.png;Magenta Wool Slab JE1.png;Pink Wool Slab JE1.png|32px}} [[Minecraft:Wool stairs]]''' and '''[[Minecraft:Wool Slab|slabs]]'''
* Comes in sixteen colors.
* Comes in sixteen colors (red, orange, yellow, green, lime, cyan, blue, light blue, magenta, purple, pink, black, grey, light grey, brown and white).
* Crafted using [[Minecraft:wool]].
* Crafted using [[Minecraft:wool]].
* Can be used to dampen sounds, like wool and [[Minecraft:carpet]]s.
* Can be used to dampen sounds, like wool and [[Minecraft:carpet]]s.
* They are also not usable in other ways like wool. <!--someone please make it better (not remove)-->
* They are also not usable in other ways like wool. <!--someone please make it better (not remove)-->
'''{{Animate|White Concrete Stairs (N) JE1.png;Light Gray Concrete Stairs (N) JE1.png;Gray Concrete Stairs (N) JE1.png;Black Concrete Stairs (N) JE1.png;Brown Concrete Stairs (N) JE1.png;Red Concrete Stairs (N) JE1.png;Orange Concrete Stairs (N) JE1.png;Yellow Concrete Stairs (N) JE1.png;Lime Concrete Stairs (N) JE1.png;Green Concrete Stairs (N) JE1.png;Cyan Concrete Stairs (N) JE1.png;Light Blue Concrete Stairs (N) JE1.png;Blue Concrete Stairs (N) JE1.png;Purple Concrete Stairs (N) JE1.png;Magenta Concrete Stairs (N) JE1.png;Pink Concrete Stairs (N) JE1.png|32px}}{{Animate|White Concrete Slab JE1.png;Light Gray Concrete Slab JE1.png;Gray Concrete Slab JE1.png;Black Concrete Slab JE1.png;Brown Concrete Slab JE1.png;Red Concrete Slab JE1.png;Orange Concrete Slab JE1.png;Yellow Concrete Slab JE1.png;Lime Concrete Slab JE1.png;Green Concrete Slab JE1.png;Cyan Concrete Slab JE1.png;Light Blue Concrete Slab JE1.png;Blue Concrete Slab JE1.png;Purple Concrete Slab JE1.png;Magenta Concrete Slab JE1.png;Pink Concrete Slab JE1.png|32px}} [[Minecraft:Concrete stairs]] and [[Minecraft:Concrete Slab|slabs]]'''
 
* Comes in sixteen colors.
=== Items ===
* Crafted using [[Minecraft:concrete]].
New '''[[Minecraft:Explorer Map]]s'''
* [[File:Abandoned_Camp_Map_JE2.png|32px]] Added abandoned camp maps showing the location of other [[Minecraft:abandoned camp]]s in the following biomes:
** {{BiomeLink|Bamboo Jungle}}
** {{BiomeLink|Cherry Grove}}
** {{BiomeLink|Birch Forest}}
** {{BiomeLink|Dappled Forest}}
** {{BiomeLink|Flower Forest}}
** {{BiomeLink|Pale Garden}}
** {{BiomeLink|Swamp}}
** {{BiomeLink|Windswept Forest}}
* Can be found in the "common chest" loot of abandoned camps.
 
* Added explorer maps for the following structures:
** [[File:Buried_Ancient_City_Map_JE2.png|32px]] [[Minecraft:Ancient City]]
** [[File:Mineshaft_Map_JE1.png|32px]] [[Minecraft:Mineshaft]]
** [[File:Desert_Pyramid_Map_JE1.png|32px]] [[Minecraft:Desert Pyramid]]
** [[File:Warm_Ocean_Ruins_Map_JE2.png|32px]] [[Minecraft:Warm Ocean Ruins]]
* Can be found in the "secret chest" loot of abandoned camps in addition to [[Minecraft:jungle pyramid]], [[Minecraft:swamp hut]], and [[Minecraft:trial chambers]] explorer maps.
 
=== Non-mob entities ===
=== Non-mob entities ===
'''{{animate|White Cushion JE1.png;Light Gray Cushion JE1.png;Gray Cushion JE1.png;Black Cushion JE1.png;Brown Cushion JE1.png;Red Cushion JE1.png;Orange Cushion JE1.png;Yellow Cushion JE1.png;Lime Cushion JE1.png;Green Cushion JE1.png;Cyan Cushion JE1.png;Light Blue Cushion JE1.png;Blue Cushion JE1.png;Purple Cushion JE1.png;Magenta Cushion JE1.png;Pink Cushion JE1.png|32px}} [[Minecraft:Cushion]]'''
'''{{animate|White Cushion JE1.png;Light Gray Cushion JE1.png;Gray Cushion JE1.png;Black Cushion JE2.png;Brown Cushion JE1.png;Red Cushion JE1.png;Orange Cushion JE1.png;Yellow Cushion JE1.png;Lime Cushion JE1.png;Green Cushion JE1.png;Cyan Cushion JE1.png;Light Blue Cushion JE1.png;Blue Cushion JE1.png;Purple Cushion JE1.png;Magenta Cushion JE1.png;Pink Cushion JE1.png|32px}} [[Minecraft:Cushion]]'''
* A new [[Minecraft:entity]] that players can interact with to sit on.
* A new [[Minecraft:entity]] that players can interact with to sit on.
* Has 16 variants, crafted with its respective variant of [[Minecraft:wool slab]].
* Has 16 variants, crafted with its respective variant of [[Minecraft:wool slab]].
Line 211: Line 237:
** Always aligns horizontally to the grid, but vertically sit on top of the supporting surface.
** Always aligns horizontally to the grid, but vertically sit on top of the supporting surface.
** Breaks if the supporting block is removed.
** Breaks if the supporting block is removed.
* Cushions are destroyed only when they are fully covered by blocks that cause suffocation.
* Cannot be moved.
* Cannot be moved.
* Does not have collision and can overlap with other objects except for other cushions.
* Does not have collision and can overlap with other objects except for other cushions.


'''{{InvSprite|Poplar Boat}}[[File:Poplar_Boat.png|width=32x32]] [[Minecraft:Poplar boat]] and {{InvSprite|Poplar Boat with Chest}}[[File:Poplar_Boat_with_Chest.png|width=32x32]] [[Minecraft:Poplar boat with chest]]'''
'''{{InvSprite|Poplar Boat}}[[File:Poplar_Boat.png|width=32x32]] [[Minecraft:Poplar boat]]''' and '''{{InvSprite|Poplar Boat with Chest}}[[File:Poplar_Boat_with_Chest.png|width=32x32]] [[Minecraft:Poplar boat with chest]]'''
* Boat variants that are crafted using poplar planks.
* Boat variants that are crafted using poplar planks.


Line 266: Line 293:
* In these structures can be found [[Minecraft:chest]]s and [[Minecraft:barrel]]s with randomly generated loot.
* In these structures can be found [[Minecraft:chest]]s and [[Minecraft:barrel]]s with randomly generated loot.
** The barrels contain an assortment of common items, perhaps most notably a chance for [[Minecraft:cobweb]].
** The barrels contain an assortment of common items, perhaps most notably a chance for [[Minecraft:cobweb]].
** The common chests can contain loot such as [[Minecraft:copper]] weapons and armor, [[Minecraft:bucket]]s, [[Minecraft:compass]]es, [[Minecraft:map]]s and [[Minecraft:firework rocket]]s.
** The common chests can contain loot such as [[Minecraft:copper]] weapons and armor, [[Minecraft:bucket]]s, [[Minecraft:compass]]es, [[Minecraft:map]]s and [[Minecraft:gunpowder]].
** The secret chests can contain loot such as [[Minecraft:iron]] weapons and armor, [[Minecraft:diamond]]s, [[Minecraft:gold]] and [[Minecraft:potion]]s.
** The secret chests can contain loot such as [[Minecraft:iron]] weapons and armor, [[Minecraft:diamond]]s, [[Minecraft:gold]], and [[Minecraft:potion]]s.
** Abandoned camp 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 ===
=== Command format ===
'''{{cmd|compute}}'''
* Evaluates a number provider in various contexts.
* In all contexts, {{cd|origin}} is set to the current command context position, while {{cd|this}} entity is set to {{cd|@s}}.
* Syntax:
** {{cd|/compute <target> integer <int_provider>}}
*** {{cd|<target>}} — one of:
**** {{cd|default}} — runs the provider in {{cd|minecraft:command_compute_default}} context, where only common arguments (position and {{cd|this}} entity) are available.
**** {{cd|block <pos>}} — runs the provider in {{cd|minecraft:command_compute_position}} context, where block state and block position are set based on the block at position {{cd|<pos>}}.
**** {{cd|entity <entity selector>}} — runs the provider in {{cd|minecraft:command_compute_entity}} context, where {{cd|target_entity}} is set to the selector result.
*** {{cd|<int_provider>}} — either an element of the {{cd|minecraft:context_int_provider}} registry or an inline value.
** {{cd|/compute <target> float <float_provider> [<scale>]}}
*** {{cd|<target>}} — same as in integer mode.
*** {{cd|<float_provider>}} — either an element of the {{cd|minecraft:context_float_provider}} registry or an inline value.
*** {{cd|<scale>}} — optional scale value, defaults to {{cd|1.0}}. The final result is multiplied by {{cd|<scale>}} and rounded towards negative infinity.
* In integer mode, truncation is performed between intermediate steps, so it may produce a different result from float mode even when {{cd|<scale>}} is {{cd|1.0}}.
* If evaluation of a number provider fails (for example, due to division by zero), the command fails.
'''{{cmd|posteffect}}'''
'''{{cmd|posteffect}}'''
* Allows adding or removing [[Minecraft:post effect]]s to players.
* Allows adding or removing [[Minecraft:post effect]]s to players.
Line 290: Line 336:


'''[[Minecraft:Data component format]]'''
'''[[Minecraft:Data component format]]'''
 
* Added {{cd|minecraft:attack_animation}}
* Added <code>minecraft:attack_animation</code>
** The animation to play when the item is being used to attack something.
** The animation to play when the item is being used to attack something.
** Format: object with fields:
** Format: object with fields:
*** <code>type</code> – swing animation type, one of <code>whack</code> or <code>stab</code>.
*** {{cd|type}} – swing animation type, one of {{cd|whack}} or {{cd|stab}}.
*** <code>duration</code> – positive integer, the length of the animation in ticks.
*** {{cd|duration}} – non-negative integer, the length of the animation in ticks.
 
* Added <code>minecraft:interact_animation</code>
** The animation to play when the item is being used to interact with something.
** Format: same as <code>minecraft:attack_animation</code>


* Added {{cd|minecraft:block_transformer}}
* Added {{cd|minecraft:block_transformer}}
Line 351: Line 392:
** [[Minecraft:Armor stand]], [[Minecraft:Item#Items that directly correspond to blocks|block items]] (included [[Minecraft:powder snow bucket]]), [[Minecraft:bone meal]], [[Minecraft:brush]], debug stick, [[Minecraft:end crystal]], ender eye, [[Minecraft:fire charge]], [[Minecraft:firework rocket]], [[Minecraft:flint and steel]], all hanging entity items ([[Minecraft:painting]], ([[Minecraft:Glow Item Frame|glow]]) [[Minecraft:item frame]]), [[Minecraft:honeycomb]], [[Minecraft:lead]], all [[Minecraft:minecart]]s, all potions, and all [[Minecraft:spawn egg]]s has hardcoded effects when interacting with blocks, whereas this data component has no effect whatsoever.
** [[Minecraft:Armor stand]], [[Minecraft:Item#Items that directly correspond to blocks|block items]] (included [[Minecraft:powder snow bucket]]), [[Minecraft:bone meal]], [[Minecraft:brush]], debug stick, [[Minecraft:end crystal]], ender eye, [[Minecraft:fire charge]], [[Minecraft:firework rocket]], [[Minecraft:flint and steel]], all hanging entity items ([[Minecraft:painting]], ([[Minecraft:Glow Item Frame|glow]]) [[Minecraft:item frame]]), [[Minecraft:honeycomb]], [[Minecraft:lead]], all [[Minecraft:minecart]]s, all potions, and all [[Minecraft:spawn egg]]s has hardcoded effects when interacting with blocks, whereas this data component has no effect whatsoever.
*** [[Minecraft:Compass]], [[Minecraft:map]], and shears has hardcoded effects when interacting with an item, but attempts to transform the blocks according to this component if that fails.
*** [[Minecraft:Compass]], [[Minecraft:map]], and shears has hardcoded effects when interacting with an item, but attempts to transform the blocks according to this component if that fails.
** Contents are in a separate registry.
** Component must always refer to {{cd|minecraft:block_transformer}} registry - existing inline components are removed.
* Added {{cd|minecraft:brewing_fuel}}
** Describes an item that can be used as fuel for a [[Minecraft:brewing stand]].
** Format: object with fields
*** {{cd|uses}} – namespaced ID pointing to an element of {{cd|minecraft:context_int_provider}} registry representing the number of times this fuel will brew before being consumed.
*** {{cd|speed_multiplier}} – namespaced ID pointing to an element of {{cd|minecraft:context_float_provider}} registry representing the speed of the brewing.
*** {{cd|uses}} and {{cd|speed_multiplier}} can additionally be defined by an inline number.
** Note: the #{{cd|brewing_fuel}} item tag has been removed and will no longer function to register new brewing fuels.
** Brewing fuel items with remainders will be handled as follows:
*** If there is fuel remaining in the fuel slot, the remainder item will be dropped on the ground.
*** If the fuel has run out, the remainder item will remain in the fuel slot.
*** This behavior matches items placed in the input and reagent slots of the brewing stand.


* Added {{DCL|minecraft:compostable}}
* Added {{DCL|minecraft:compostable}}
** Represents the ability to compost an item and how it adds layers to the composter.
** Represents the ability to compost an item and how it adds layers to the composter.
** Format: object with fields
** Format: object with fields
*** {{cd|layers}} – namespaced ID pointing to an element of the {{cd|[[Minecraft:number_provider|minecraft:number_provider]]}} registry.
*** {{cd|layers}} – namespaced ID pointing to an element of the {{cd|minecraft:context_int_provider}} registry.
*** {{cd|layers}} can additionally be defined by an inline number.
*** {{cd|layers}} can additionally be defined by an inline number.
* Added {{DCL|minecraft:provides_pottery_pattern}} data component
** Describes the pottery pattern stored on a stack.
** Format:
*** namespaced ID pointing to an element of {{cd|[[Minecraft:Decorated pot pattern definition|minecraft:decorated_pot_pattern]]}} registry.


* Added {{cd|minecraft:cooking_fuel}}
* Added {{cd|minecraft:cooking_fuel}}
** Describes an item that can be used as fuel for a [[Minecraft:furnace]], [[Minecraft:smoker]] or [[Minecraft:blast furnace]].
** Describes an item that can be used as fuel for a [[Minecraft:furnace]], [[Minecraft:smoker]] or [[Minecraft:blast furnace]].
** Format: object with fields
** Format: object with fields
*** {{cd|burn_time}} – namespaced ID pointing to an element of {{cd|minecraft:number_provider}} registry representing the time, in ticks, for which this fuel will burn.
*** {{cd|burn_time}} – namespaced ID pointing to an element of {{cd|minecraft:context_int_provider}} registry representing the time, in ticks, for which this fuel will burn.
*** {{cd|speed_multiplier}} – namespaced ID pointing to an element of {{cd|minecraft:number_provider}} registry representing the speed of the cooking/smelting.
*** {{cd|speed_multiplier}} – namespaced ID pointing to an element of {{cd|minecraft:context_float_provider}} registry representing the speed of the cooking/smelting.
*** {{cd|burn_time}} and {{cd|speed_multiplier}} can additionally be defined by an inline number.
*** {{cd|burn_time}} and {{cd|speed_multiplier}} can additionally be defined by an inline number.
** Cooking fuel items with remainders will be handled as follows:
*** If there is fuel remaining in the fuel slot, the remainder item will be dropped on the ground.
*** If the fuel has run out, the remainder item will remain in the fuel slot.
* Added {{cd|minecraft:cushion/color}}
** Applied to [[Minecraft:cushion]] entities when they get placed using an item.
** Format: one of 16 dye colors


* Added {{cd|minecraft:brewing_fuel}}
* Added {{cd|minecraft:interact_animation}}
** Describes an item that can be used as fuel for a [[Minecraft:brewing stand]].
** The animation to play when the item is being used to interact with something.
** Format: object with fields
** Format: same as {{cd|minecraft:attack_animation}}
*** {{cd|uses}} – namespaced ID pointing to an element of {{cd|minecraft:number_provider}} registry representing the number of times this fuel will brew before being consumed.
 
*** {{cd|speed_multiplier}} – namespaced ID pointing to an element of {{cd|minecraft:number_provider}} registry representing the speed of the brewing.
* Added {{cd|minecraft:mob_visibility}}
*** {{cd|uses}} and {{cd|speed_multiplier}} can additionally be defined by an inline number.
** Represents the visibility percentage provided by an item with the appropriate {{cd|minecraft:equippable}} component, modifying the range at which mobs are able to detect an entity.
** Note: the #{{cd|brewing_fuel}} item tag has been removed and will no longer function to register new brewing fuels.
** Format: object with fields
*** {{cd|targeting_entity}} – an entity ID, a list of namespaced entity IDs, or a hash-prefixed entity tag to match.
*** {{cd|visibility}} – float (between {{cd|0.0}} and {{cd|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.
 
* Added {{DCL|minecraft:provides_pottery_pattern}} data component
** Describes the pottery pattern stored on a stack.
** Format:
*** namespaced ID pointing to an element of {{cd|[[Minecraft:Decorated pot pattern definition|minecraft:decorated_pot_pattern]]}} registry.


* Added {{cd|minecraft:sign_text_front}} and {{cd|minecraft:sign_text_back}}
* Added {{cd|minecraft:sign_text_front}} and {{cd|minecraft:sign_text_back}}
Line 387: Line 452:
*** {{cd|color}} – optional dye color, default: {{cd|black}}
*** {{cd|color}} – optional dye color, default: {{cd|black}}
*** {{cd|has_glowing_text}} – optional boolean, default: {{cd|false}}
*** {{cd|has_glowing_text}} – optional boolean, default: {{cd|false}}
* Added {{cd|minecraft:waxed}}
** A marker for blocks with contents that are waxed.
** No fields
* Added {{cd|minecraft:cushion/color}}
** Applied to [[Minecraft:cushion]] entities when they get placed using an item.
** Format: one of 16 dye colors


* Added {{cd|minecraft:villager_food}}
* Added {{cd|minecraft:villager_food}}
Line 401: Line 458:
*** {{cd|nutrition}} – positive integer, how much hunger the item satiates in the villager once eaten.
*** {{cd|nutrition}} – positive integer, how much hunger the item satiates in the villager once eaten.


* Added {{cd|minecraft:mob_visibility}}
* Added {{cd|minecraft:waxed}}
** Represents the visibility percentage provided by an item with the appropriate {{cd|minecraft:equippable}} component, modifying the range at which mobs are able to detect an entity.
** A marker for blocks with contents that are waxed.
** Format: object with fields
** No fields
*** {{cd|targeting_entity}} – an entity ID, a list of namespaced entity IDs, or a hash-prefixed entity tag to match.
 
*** {{cd|visibility}} – float (between {{cd|0.0}} and {{cd|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.
'''[[Minecraft:Debug properties]]'''
**** While multiple items with this component stack, the maximum vision will still never exceed 10.0.
* Added {{cd|ENABLE_FARLANDS}}.
** Disables the [[Minecraft:Far Lands (Java Edition)#"Modulo" patch|Beta 1.8 modulo patch]] which fixed the [[Minecraft:Far Lands (Java Edition)|Far Lands]] and other floating-point precision bugs.
** The traditional form of the Far Lands only appear in the Nether and the End as multiple other factors break down in the Overworld way before the Far Lands can appear there.
** The purpose of this debug flag is to compare the performance of the modulo fix as it had a non-zero performance cost.<ref>{{tweet|gegybeans|2095588232817725542|To ruin a little speculation fun, the DEBUG_FAR_LANDS option was added to compare performance with/without the patch that originally removed the Far Lands (as it has some non-zero cost).<br>There is no intention to *how* the Far Lands generate -|3 September 2026}}</ref>


'''[[Minecraft:Entity data]]'''
'''[[Minecraft:Entity data]]'''
Line 466: Line 526:
*** {{cd|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
*** {{cd|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


'''[[Minecraft:Language]]s'''
'''[[Minecraft:Key codes]]'''
* Added support for the {{w|Gothic language|Gothic}} language.
* Added new key codes for the following keys:
 
{| class="wikitable sortable collapsible" data-description="Keyboard key and multimedia button IDs" style="margin-left:0; margin-right:auto; text-align: center"
'''[[Minecraft:Loot function]]s'''
! ID
* Added {{cd|minecraft:command_slot_source}} loot table type.
! Displayed name
** Currently used to evaluate slot sources with the {{cmd|item}} and {{cmd|execute}} commands.
! colspan="2" | Physical key or button
** It takes the following parameters:
! Translation key
*** {{cd|container}}, the container or inventory being evaluated.
|-
*** {{cd|origin}}, the position at which the command was executed.
! {{code|key.keyboard.keypad.plus.minus}}
*** {{cd|this_entity}}, the @s entity of the command being executed (optional).
| {{btn|Keypad ±}}
 
| colspan="2" | {{key|Numpad ±}}
'''[[Minecraft:Loot table]]'''
| {{code|key.keyboard.keypad.plus.minus}}
* Added {{cd|till/rooted_dirt}} loot table for drops when [[Minecraft:rooted dirt]] is tilled with a hoe.
|-
 
! {{code|key.keyboard.keypad.left.parenthesis}}
'''[[Minecraft:Number provider]]s'''
| {{btn|Keypad (}}
* Added a {{cd|minecraft:number_provider}} registry
| colspan="2" | {{key|Numpad (}}
* Added vanilla number providers:
| {{code|key.keyboard.keypad.left.parenthesis}}
** {{cd|minecraft:compostable/low}}
|-
*** Returns {{cd|1}} if the {{cd|minecraft:block_state}} context parameter is an empty composter, otherwise has a 30% chance of returning {{cd|1}}
! {{code|key.keyboard.keypad.right.parenthesis}}
** {{cd|minecraft:compostable/low_medium}}
| {{btn|Keypad )}}
*** Returns {{cd|1}} if the {{cd|minecraft:block_state}} context parameter is an empty composter, otherwise has a 50% chance of returning {{cd|1}}
| colspan="2" | {{key|Numpad )}}
** {{cd|minecraft:compostable/medium}}
| {{code|key.keyboard.keypad.right.parenthesis}}
*** Returns {{cd|1}} if the {{cd|minecraft:block_state}} context parameter is an empty composter, otherwise has a 65% chance of returning {{cd|1}}
|-
** {{cd|minecraft:compostable/medium_high}}
! {{code|key.keyboard.keypad.period}}
*** Returns {{cd|1}} if the {{cd|minecraft:block_state}} context parameter is an empty composter, otherwise has a 85% chance of returning {{cd|1}}
| {{btn|Keypad .}}
** {{cd|minecraft:compostable/always_add_one}}
| colspan="2" | {{key|Numpad .}}<ref>{{bug|MC-310826}}</ref>
*** Always returns {{cd|1}}
| {{code|key.keyboard.keypad.period}}
 
|-
* Added {{cd|minecraft:number_dispatcher}} type
! {{code|key.keyboard.keypad.comma}}
** Returns the first case which fulfills its condition or the {{cd|default}} if none do.
| {{btn|Keypad ,}}
** Fields:
| colspan="2" | {{key|Numpad ,}}{{note|Appears to instead be interpreted as the keypad decimal point key on Linux: {{bug|MC-310845}}}}
*** {{cd|cases}} – a list of cases in the order that the dispatcher will try to execute them.
| {{code|key.keyboard.keypad.comma}}
**** Fields:
|-
***** {{cd|condition}} – a {{cd|minecraft:predicate}}
! {{code|key.keyboard.application}}
***** {{cd|number_provider}} – a {{cd|minecraft:number_provider}} which is executed if the condition is fulfilled.
| {{btn|Menu}}
*** {{cd|default}} – an optional {{cd|minecraft:number_provider}}
| colspan="2" | {{key|Menu}}
**** Defaults to a constant {{cd|0}} if omitted.
| {{code|key.keyboard.application}}
|-
! {{code|key.keyboard.mute}}
| {{btn|Mute}}
| colspan="2" | {{key|Mute}}
| {{code|key.keyboard.mute}}
|-
! {{code|key.keyboard.volume.down}}
| {{btn|Volume Down}}
| colspan="2" | {{key|Volume Down}}
| {{code|key.keyboard.volume.down}}
|-
! {{code|key.keyboard.volume.up}}
| {{btn|Volume Up}}
| colspan="2" | {{key|Volume Up}}
| {{code|key.keyboard.volume.up}}
|-
! {{code|key.keyboard.media.play.pause}}
| {{btn|Play/Pause}}
| colspan="2" | {{key|Media Play Pause}}
| {{code|key.keyboard.media.play.pause}}
|-
! {{code|key.keyboard.stop}}
| {{btn|Stop}}
| colspan="2" | {{key|Stop}}
| {{code|key.keyboard.stop}}
|-
! {{code|key.keyboard.cut}}
| {{btn|Cut}}
| colspan="2" | {{key|Cut}}
| {{code|key.keyboard.cut}}
|-
! {{code|key.keyboard.copy}}
| {{btn|Copy}}
| colspan="2" | {{key|Copy}}
| {{code|key.keyboard.copy}}
|-
! {{code|key.keyboard.paste}}
| {{btn|Paste}}
| colspan="2" | {{key|Paste}}
| {{code|key.keyboard.paste}}
|-
! {{code|key.keyboard.undo}}
| {{btn|Undo}}
| colspan="2" | {{key|Undo}}
| {{code|key.keyboard.undo}}
|-
! {{code|key.keyboard.again}}
| {{btn|Again}}
| colspan="2" | {{key|Redo}}<ref>{{bug|MC-310863}}</ref>
| {{code|key.keyboard.again}}
|-
! {{code|key.keyboard.ac.new}}
| {{btn|New}}
| colspan="2" | {{key|Application New}}
| {{code|key.keyboard.ac.new}}
|-
! {{code|key.keyboard.ac.save}}
| {{btn|Save}}
| colspan="2" | {{key|Application Save}}
| {{code|key.keyboard.ac.save}}
|-
! {{code|key.keyboard.help}}
| {{btn|Help}}
| colspan="2" | {{key|Help}}
| {{code|key.keyboard.help}}
|-
! {{code|key.keyboard.find}}
| {{btn|Find}}
| colspan="2" | {{key|Find}}
| {{code|key.keyboard.find}}
|-
! rowspan="2" | {{code|key.keyboard.lang1}}<ref name="genericintl">Mojang have chosen to assign generic, non-descriptive titles to these keys, matching their internal SDL3 IDs rather than the actual real-life key names: {{bug|MC-311175}}</ref>
| rowspan="2" | {{btn|Language 1}}<ref name="genericintl"/>
| Windows/Linux
| {{key|Hangeul}}
| rowspan="2" | {{code|key.keyboard.lang1}}<ref name="genericintl"/>
|-
| macOS
| {{key|Eisu}}
|-
! rowspan="2" | {{code|key.keyboard.lang2}}<ref name="genericintl"/>
| rowspan="2" | {{btn|Language 2}}<ref name="genericintl"/>
| Windows/Linux
| {{key|Hanja}}
| rowspan="2" | {{code|key.keyboard.lang2}}<ref name="genericintl"/>
|-
| macOS
| {{key|Kana}}
|-
! {{code|key.keyboard.lang3}}<ref name="genericintl"/>
| {{btn|Language 3}}<ref name="genericintl"/>
| colspan="2" | {{key|Katakana}}
| {{code|key.keyboard.lang3}}<ref name="genericintl"/>
|-
! {{code|key.keyboard.lang4}}<ref name="genericintl"/>
| {{btn|Language 4}}<ref name="genericintl"/>
| colspan="2" | {{key|Hiragana}}
| {{code|key.keyboard.lang4}}<ref name="genericintl"/>
|-
! {{code|key.keyboard.lang5}}<ref name="genericintl"/>
| {{btn|Language 5}}<ref name="genericintl"/>
| colspan="2" | {{key|Zenkaku/Hankaku}}{{note|May not work correctly on Linux: {{bug|MC-310984}}}}
| {{code|key.keyboard.lang5}}<ref name="genericintl"/>
|-
! {{code|key.keyboard.international1}}<ref name="genericintl"/>
| {{btn|International 1}}<ref name="genericintl"/>
| colspan="2" | {{key|ろ}} (JIS) / {{key|/}} (ABNT)
| {{code|key.keyboard.international1}}<ref name="genericintl"/>
|-
! {{code|key.keyboard.international2}}<ref name="genericintl"/>
| {{btn|International 2}}<ref name="genericintl"/>
| colspan="2" | {{key|Katakana/Hiragana}}
| {{code|key.keyboard.international2}}<ref name="genericintl"/>
|-
! {{code|key.keyboard.international3}}<ref name="genericintl"/>
| {{btn|International 3}}<ref name="genericintl"/>
| colspan="2" | {{key|¥}}
| {{code|key.keyboard.international3}}<ref name="genericintl"/>
|-
! {{code|key.keyboard.international4}}<ref name="genericintl"/>
| {{btn|International 4}}<ref name="genericintl"/>
| colspan="2" | {{key|Henkan}}
| {{code|key.keyboard.international4}}<ref name="genericintl"/>
|-
! {{code|key.keyboard.international5}}<ref name="genericintl"/>
| {{btn|International 5}}<ref name="genericintl"/>
| colspan="2" | {{key|Muhenkan}}
| {{code|key.keyboard.international5}}<ref name="genericintl"/>
|-
! {{code|key.keyboard.international6}}<ref name="generic9800">{{bug|MC-311184}}</ref>
| {{btn|International 6}}<ref name="generic9800"/>
| colspan="2" | {{key|Numpad ,}} (PC-9800){{note|Windows only; it is assumed that KEY_KPJPCOMMA is meant to represent this on Linux, but is incorrectly bound to International 5 - see https://github.com/libsdl-org/SDL/pull/16168}}
| {{code|key.keyboard.international6}}<ref name="generic9800"/>
|-
! {{code|key.keyboard.alternate.erase}}
| {{btn|Alternate Erase}}
| colspan="2" | {{note|Not recognised for some reason: {{bug|MC-311320}}}}
| {{code|key.keyboard.alternate.erase}}
|-
! {{code|key.keyboard.media.play}}
| {{btn|Media Play}}
| colspan="2" | {{key|Media Play}}
| {{code|key.keyboard.media.play}}
|-
! {{code|key.keyboard.media.pause}}
| {{btn|Media Pause}}
| colspan="2" | {{key|Media Pause}}
| {{code|key.keyboard.media.pause}}
|-
! {{code|key.keyboard.media.record}}
| {{btn|Record}}
| colspan="2" | {{key|Media Record}}
| {{code|key.keyboard.media.record}}
|-
! {{code|key.keyboard.media.fast.forward}}
| {{btn|Fast Forward}}
| colspan="2" | {{key|Media Fast Forward}}
| {{code|key.keyboard.media.fast.forward}}
|-
! {{code|key.keyboard.media.rewind}}
| {{btn|Rewind}}
| colspan="2" | {{key|Media Rewind}}
| {{code|key.keyboard.media.rewind}}
|-
! {{code|key.keyboard.media.next.track}}
| {{btn|Next Track}}
| colspan="2" | {{key|Media Next Track}}
| {{code|key.keyboard.media.next.track}}
|-
! {{code|key.keyboard.media.previous.track}}
| {{btn|Previous Track}}
| colspan="2" | {{key|Media Previous Track}}
| {{code|key.keyboard.media.previous.track}}
|-
! {{code|key.keyboard.media.stop}}
| {{btn|Media Stop}}
| colspan="2" | {{key|Media Stop}}
| {{code|key.keyboard.media.stop}}
|-
! {{code|key.keyboard.media.eject}}
| {{btn|Eject}}
| colspan="2" | {{key|Media Eject}}
| {{code|key.keyboard.media.eject}}
|-
! {{code|key.keyboard.media.select}}
| {{btn|Media Select}}
| colspan="2" | {{key|Media Select}}
| {{code|key.keyboard.media.select}}
|-
! {{code|key.keyboard.cancel}}
| {{btn|Cancel}}
| colspan="2" | {{key|Cancel}}
| {{code|key.keyboard.cancel}}
|-
! {{code|key.keyboard.ac.open}}
| {{btn|AC Open}}
| colspan="2" | {{key|Application Open}}
| {{code|key.keyboard.ac.open}}
|-
! {{code|key.keyboard.ac.close}}
| {{btn|AC Close}}
| colspan="2" | {{key|Application Close}}
| {{code|key.keyboard.ac.close}}
|-
! {{code|key.keyboard.ac.exit}}
| {{btn|AC Exit}}
| colspan="2" | {{key|Application Exit}}
| {{code|key.keyboard.ac.exit}}
|-
! {{code|key.keyboard.ac.stop}}
| {{btn|AC Stop}}
| colspan="2" | {{key|Application Stop}}
| {{code|key.keyboard.ac.stop}}
|-
! {{code|key.keyboard.ac.properties}}
| {{btn|AC Properties}}
| colspan="2" | {{key|Application Properties}}
| {{code|key.keyboard.ac.properties}}
|-
! {{code|key.keyboard.ac.search}}
| {{btn|AC Search}}
| colspan="2" | {{key|Application Search}}
| {{code|key.keyboard.ac.search}}
|-
! {{code|key.keyboard.ac.home}}
| {{btn|AC Home}}
| colspan="2" | {{key|Application Home}}
| {{code|key.keyboard.ac.home}}
|-
! {{code|key.keyboard.ac.back}}
| {{btn|AC Back}}
| colspan="2" | {{key|Application Back}}
| {{code|key.keyboard.ac.back}}
|-
! {{code|key.keyboard.ac.forward}}
| {{btn|AC Forward}}
| colspan="2" | {{key|Application Forward}}
| {{code|key.keyboard.ac.forward}}
|-
! {{code|key.keyboard.ac.refresh}}
| {{btn|AC Refresh}}
| colspan="2" | {{key|Application Refresh}}
| {{code|key.keyboard.ac.refresh}}
|-
! {{code|key.keyboard.ac.bookmarks}}
| {{btn|AC Favorites}}
| colspan="2" | {{key|Application Bookmarks}}
| {{code|key.keyboard.ac.bookmarks}}
|-
! {{code|key.keyboard.power}}
| {{btn|Power}}
| colspan="2" | {{key|Power}}
| {{code|key.keyboard.power}}
|-
! {{code|key.keyboard.sleep}}
| {{btn|Sleep}}
| colspan="2" | {{key|Sleep}}
| {{code|key.keyboard.sleep}}
|-
! {{code|key.keyboard.wake}}
| {{btn|Wake}}
| colspan="2" | {{key|Wake}}
| {{code|key.keyboard.wake}}
|}


* Added {{cd|minecraft:conditional}} type
* {{code|key.keyboard.left.alt}}, {{code|key.keyboard.right.alt}}, {{code|key.keyboard.left.win}}, and {{code|key.keyboard.right.win}} now have different display names depending on the user's operating system.
** Returns the value from {{cd|on_true}} if its condition or {{cd|on_false}} if not.
* The following keycodes, which existed before but could only be set by file editing and would still not result in physical buttons being recognised, are now accessible via macOS (9-32) and Linux (9-48) systems, and can have controls bound to them properly:
** Fields:
{| class="wikitable" data-description="Mouse button IDs" style="text-align:center"
*** {{cd|conditions}} – a {{cd|minecraft:predicate}}
! ID
*** {{cd|on_true}} – a {{cd|minecraft:number_provider}} which is executed if its condition is fulfilled.
! Displayed name
*** {{cd|on_false}} – an optional {{cd|minecraft:number_provider}}
! Description
**** Defaults to a constant {{cd|0}} if omitted.
|-
 
! {{code|key.mouse.9}}
* Added {{cd|minecraft:weighted_list}}
| {{btn|Button 9}}
** Returns a value from a distribution of weighted number providers.
| {{mouse|ninth}}
** Fields:
|-
*** {{cd|distribution}} – a list of objects with the following fields.
! {{code|key.mouse.10}}
**** Fields:
| {{btn|Button 10}}
***** {{cd|data}} – a {{cd|minecraft:number_provider}}
| {{mouse|tenth}}
***** {{cd|weight}} – a positive integer
|-
 
! {{code|key.mouse.11}}
'''[[Minecraft:Options]]'''
| {{btn|Button 11}}
* Added Quit Shortcuts option.
| {{mouse|eleventh}}
** Can be accessed in the [[Minecraft:Options#Controls|Controls]] section.
|-
** Allows keyboard shortcuts that close the game, such as {{key|Alt+F4}} on Windows and {{key|Command+Q}} or {{key|Command+W}} on macOS.
! {{code|key.mouse.12}}
** Disabled by default.
| {{btn|Button 12}}
| {{mouse|twelfth}}
|-
! {{code|key.mouse.13}}
| {{btn|Button 13}}
| {{mouse|thirteenth}}
|-
! {{code|key.mouse.14}}
| {{btn|Button 14}}
| {{mouse|fourteenth}}
|-
! {{code|key.mouse.15}}
| {{btn|Button 15}}
| {{mouse|fifteenth}}
|-
! {{code|key.mouse.16}}
| {{btn|Button 16}}
| {{mouse|sixteenth}}
|-
! {{code|key.mouse.17}}
| {{btn|Button 17}}
| {{mouse|seventeenth}}
|-
! {{code|key.mouse.18}}
| {{btn|Button 18}}
| {{mouse|eighteenth}}
|-
! {{code|key.mouse.19}}
| {{btn|Button 19}}
| {{mouse|nineteenth}}
|-
! {{code|key.mouse.20}}
| {{btn|Button 20}}
| {{mouse|twentieth}}
|-
! {{code|key.mouse.21}}
| {{btn|Button 21}}
| {{mouse|twenty-first}}
|-
! {{code|key.mouse.22}}
| {{btn|Button 22}}
| {{mouse|twenty-second}}
|-
! {{code|key.mouse.23}}
| {{btn|Button 23}}
| {{mouse|twenty-third}}
|-
! {{code|key.mouse.24}}
| {{btn|Button 24}}
| {{mouse|twenty-fourth}}
|-
! {{code|key.mouse.25}}
| {{btn|Button 25}}
| {{mouse|twenty-fifth}}
|-
! {{code|key.mouse.26}}
| {{btn|Button 26}}
| {{mouse|twenty-sixth}}
|-
! {{code|key.mouse.27}}
| {{btn|Button 27}}
| {{mouse|twenty-seventh}}
|-
! {{code|key.mouse.28}}
| {{btn|Button 28}}
| {{mouse|twenty-eighth}}
|-
! {{code|key.mouse.29}}
| {{btn|Button 29}}
| {{mouse|twenty-ninth}}
|-
! {{code|key.mouse.30}}
| {{btn|Button 30}}
| {{mouse|thirtieth}}
|-
! {{code|key.mouse.31}}
| {{btn|Button 31}}
| {{mouse|thirty-first}}
|-
! {{code|key.mouse.32}}
| {{btn|Button 32}}
| {{mouse|thirty-second}}
|-
! {{code|key.mouse.33}}
| {{btn|Button 33}}
| {{mouse|thirty-third}}
|-
! {{code|key.mouse.34}}
| {{btn|Button 34}}
| {{mouse|thirty-fourth}}
|-
! {{code|key.mouse.35}}
| {{btn|Button 35}}
| {{mouse|thirty-fifth}}
|-
! {{code|key.mouse.36}}
| {{btn|Button 36}}
| {{mouse|thirty-sixth}}
|-
! {{code|key.mouse.37}}
| {{btn|Button 37}}
| {{mouse|thirty-seventh}}
|-
! {{code|key.mouse.38}}
| {{btn|Button 38}}
| {{mouse|thirty-eighth}}
|-
! {{code|key.mouse.39}}
| {{btn|Button 39}}
| {{mouse|thirty-ninth}}
|-
! {{code|key.mouse.40}}
| {{btn|Button 40}}
| {{mouse|fortieth}}
|-
! {{code|key.mouse.41}}
| {{btn|Button 41}}
| {{mouse|forty-first}}
|-
! {{code|key.mouse.42}}
| {{btn|Button 42}}
| {{mouse|forty-second}}
|-
! {{code|key.mouse.43}}
| {{btn|Button 43}}
| {{mouse|forty-third}}
|-
! {{code|key.mouse.44}}
| {{btn|Button 44}}
| {{mouse|forty-fourth}}
|-
! {{code|key.mouse.45}}
| {{btn|Button 45}}
| {{mouse|forty-fifth}}
|-
! {{code|key.mouse.46}}
| {{btn|Button 46}}
| {{mouse|forty-sixth}}
|-
! {{code|key.mouse.47}}
| {{btn|Button 47}}
| {{mouse|forty-seventh}}
|-
! {{code|key.mouse.48}}
| {{btn|Button 48}}
| {{mouse|forty-eighth}}
|}


'''[[Minecraft:Particles]]'''
* Added the following key codes for keys that aren’t available on PC:{{note|All SDL3 key codes were added - these are simply not associated with any key code on Windows, macOS or Linux. Many represent mobile phone or calculator buttons, others represent reserved code points.}}
* Added {{cd|minecraft:red_poplar_leaves}}
{| class="wikitable sortable collapsible" data-description="IDs of unused keys" style="margin-left:0; margin-right:auto; text-align: center"
** Falls from red poplar leaves blocks.
! ID / translation key
** Has no fields.
! Displayed name
 
|-
* Added {{cd|minecraft:orange_poplar_leaves}}
! {{code|key.keyboard.ac.print}}
** Falls from orange poplar leaves blocks.
| {{btn|AC Print}}
** Has no fields.
|-
 
! {{code|key.keyboard.call}}
* Added {{cd|minecraft:yellow_poplar_leaves}}
| {{btn|Call}}
** Falls from yellow poplar leaves blocks.
|-
** Has no fields.
! {{code|key.keyboard.channel.down}}
 
| {{btn|Channel Down}}
'''[[Minecraft:Statistics]]'''
|-
* Added Times Slept in a Straw Bed statistic.
! {{code|key.keyboard.channel.up}}
 
| {{btn|Channel Up}}
'''[[Minecraft:Tag (Java Edition)|Tags]]'''
|-
* Biome Tags
! {{code|key.keyboard.clear}}
** Added tags for biomes which will generate the respective abandoned camp variant:
| {{btn|Clear}}
*** {{cd|#has_structure/abandoned_camp_bamboo_jungle}}
|-
*** {{cd|#has_structure/abandoned_camp_birch_forest}}
! {{code|key.keyboard.clear.again}}
*** {{cd|#has_structure/abandoned_camp_cherry_grove}}
| {{btn|Clear Again}}
*** {{cd|#has_structure/abandoned_camp_dappled_forest}}
|-
*** {{cd|#has_structure/abandoned_camp_flower_forest}}
! {{code|key.keyboard.crsel}}
*** {{cd|#has_structure/abandoned_camp_forest}}
| {{btn|CrSel}}
*** {{cd|#has_structure/abandoned_camp_meadow}}
|-
*** {{cd|#has_structure/abandoned_camp_old_growth_birch_forest}}
! {{code|key.keyboard.currency.subunit}}
*** {{cd|#has_structure/abandoned_camp_old_growth_pine_taiga}}
| {{btn|Currency Subunit}}
*** {{cd|#has_structure/abandoned_camp_old_growth_spruce_taiga}}
|-
*** {{cd|#has_structure/abandoned_camp_savanna}}
! {{code|key.keyboard.currency.unit}}
*** {{cd|#has_structure/abandoned_camp_pale_garden}}
| {{btn|Currency Unit}}
*** {{cd|#has_structure/abandoned_camp_snowy_taiga}}
|-
*** {{cd|#has_structure/abandoned_camp_sparse_jungle}}
! {{code|key.keyboard.decimal.separator}}
*** {{cd|#has_structure/abandoned_camp_swamp}}
| {{btn|Decimal Separator}}
*** {{cd|#has_structure/abandoned_camp_taiga}}
|-
*** {{cd|#has_structure/abandoned_camp_windswept_forest}}
! {{code|key.keyboard.end.call}}
*** {{cd|#has_structure/abandoned_camp_wooded_badlands}}
| {{btn|End Call}}
 
|-
* Block Tags
! {{code|key.keyboard.enter2}}
** Added {{cd|#blocks_dolphin_jump}}
| {{btn|Enter 2}}
*** Contains all blocks that [[Minecraft:dolphin]]s cannot move through when jumping out of water.
|-
** Added {{cd|#blocks_fluid_flow}}
! {{code|key.keyboard.execute}}
*** Contains all blocks that block fluid flow.
| {{btn|Execute}}
*** Currently, this tag does nothing.<ref name="fluid tag">{{bug|MC-309259||Block Tags "#blocks_fluid_flow" and "#washed_away_by_fluids" do not work as expected}}</ref>
|-
** Added {{cd|#blocks_lava_fire_spread}}
! {{code|key.keyboard.exsel}}
*** Contains all blocks that block the creation of fire by lava.
| {{btn|ExSel}}
** Added {{cd|#blocks_motion}}
|-
*** Collection tag containing all blocks that are considered to block motion in some way.
! {{code|key.keyboard.international7}}
** Added {{cd|#blocks_motion_in_heightmap}}
| {{btn|International 7}}
*** Contains all blocks that are taken into account for the {{cd|motion_blocking}} heightmap.
|-
** Added {{cd|#blocks_motion_in_heightmap_no_leaves}}
! {{code|key.keyboard.international8}}
*** Contains all blocks that are taken into account for the {{cd|motion_blocking_no_leaves}} heightmap.
| {{btn|International 8}}
** Added {{cd|#blocks_motion_no_leaves}}
|-
*** Collection tag containing all blocks that are considered to block motion in some way, but excluding leaf blocks.
! {{code|key.keyboard.international9}}
** Added {{cd|#cannot_place_basalt_pillar_on}}
| {{btn|International 9}}
** Added {{cd|#cats_can_lie_on}}
|-
*** Contains blocks which [[Minecraft:cat]]s can randomly lie on.
! {{code|key.keyboard.keypad.00}}
** Added {{cd|#cats_can_sit_on}}
| {{btn|Keypad 00}}
*** Contains blocks which cats can randomly sit on.
|-
** Added {{cd|#causes_suffocation}}
! {{code|key.keyboard.keypad.000}}
*** Contains all blocks where entities can suffocate.
| {{btn|Keypad 000}}
**Added <code>#concrete_stairs</code>
|-
*** Contains all concrete stair blocks.
! {{code|key.keyboard.keypad.a}}
**Added <code>#concrete_slabs</code>
| {{btn|Keypad A}}
***Contains all concrete slab blocks.
|-
** Added {{cd|#cushion_uses_collision_shape}}
! {{code|key.keyboard.keypad.ampersand}}
*** Contains blocks where cushion placement raycasts against collision shape instead of interaction shape.
| {{btn|Keypad &}}
** Added {{cd|#entities_can_teleport_to}}
|-
*** Contains all blocks that entities are allowed to teleport to.
! {{code|key.keyboard.keypad.at}}
** Added {{cd|#height_specific_ore_replaceables}}
| {{btn|Keypad @}}
*** Contains all blocks which ore features will turn into stone ores if found above Y=0 and into deepslate ores if found below Y=8.
|-
** Added {{cd|#ice_melts_when_destroyed_above}}
! {{code|key.keyboard.keypad.b}}
*** Contains all blocks that causes ice to melt into water if the ice is destroyed when placed above them.
| {{btn|Keypad B}}
** Added {{cd|#ores}}
|-
*** Collection tag containing all types of ores.
! {{code|key.keyboard.keypad.backspace}}
** Added {{cd|#poplar_logs}}
| {{btn|Keypad Backspace}}
*** Contains all poplar log blocks.
|-
** Added {{cd|#required_for_poplar_leaf_ambience}}
! {{code|key.keyboard.keypad.binary}}
*** Contains the blocks which can satisfy requirement for Poplar leaves to make ambient sound.
| {{btn|Keypad Binary}}
** Added {{cd|#sculk_growth_inhibitors}}  
|-
*** Contains blocks which keep [[Minecraft:sculk]] from spreading when more than 2 are in the 8×2×8 area around it.
! {{code|key.keyboard.keypad.c}}
** Added {{cd|#skulls}}
| {{btn|Keypad C}}
*** Collection tag containing all head and skull blocks.
|-
** Added {{cd|#speeds_up_zombie_villager_curing}}
! {{code|key.keyboard.keypad.clear}}
*** Contains blocks which can increase [[Minecraft:zombie villager]] curing time if placed nearby.
| {{btn|Keypad Clear}}
** Added {{cd|#turns_into_dirt_path}}
|-
*** Contains all blocks that turn into [[Minecraft:dirt path]] blocks when a shovel is used for pathmaking.
! {{code|key.keyboard.keypad.clear.entry}}
** Added {{cd|#turns_into_farmland}}
| {{btn|Keypad Clear Entry}}
*** Contains all blocks that turn into [[Minecraft:farmland]] blocks when a hoe is used for tilling.
|-
** Added {{cd|#villager_babies_can_jump_on_bed}}
! {{code|key.keyboard.keypad.colon}}
*** Contains Bed blocks which Villager kids can jump on.
| {{btn|Keypad :}}
** Added {{cd|#villagers_can_sleep_on_bed}}
|-
*** Contains bed blocks which villagers can sleep on.
! {{code|key.keyboard.keypad.d}}
** Added {{cd|#washed_away_by_fluids}}
| {{btn|Keypad D}}
*** 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.<ref name="fluid tag"></ref>
! {{code|key.keyboard.keypad.double.ampersand}}
** Added {{cd|#wool_slabs}}
| {{btn|Keypad &&}}
*** Contains all wool slabs blocks.
|-
** Added {{cd|#wool_stairs}}
! {{code|key.keyboard.keypad.double.vertical.bar}}
*** Contains all wool stairs blocks.
| {{btn|Keypad <nowiki>||</nowiki>}}
|-
! {{code|key.keyboard.keypad.e}}
| {{btn|Keypad E}}
|-
! {{code|key.keyboard.keypad.equals.as400}}
| {{btn|Keypad {{=}} (AS400)}}
|-
! {{code|key.keyboard.keypad.exclamation}}
| {{btn|Keypad !}}
|-
! {{code|key.keyboard.keypad.f}}
| {{btn|Keypad F}}
|-
! {{code|key.keyboard.keypad.greater}}
| {{btn|Keypad >}}
|-
! {{code|key.keyboard.keypad.hash}}
| {{btn|Keypad #}}
|-
! {{code|key.keyboard.keypad.hexadecimal}}
| {{btn|Keypad Hexadecimal}}
|-
! {{code|key.keyboard.keypad.left.brace}}
| {{btn|Keypad {}}
|-
! {{code|key.keyboard.keypad.less}}
| {{btn|Keypad <}}
|-
! {{code|key.keyboard.keypad.memory.add}}
| {{btn|Keypad M+}}
|-
! {{code|key.keyboard.keypad.memory.clear}}
| {{btn|Keypad MC}}
|-
! {{code|key.keyboard.keypad.memory.divide}}
| {{btn|Keypad M/}}
|-
! {{code|key.keyboard.keypad.memory.multiply}}
| {{btn|Keypad M*}}
|-
! {{code|key.keyboard.keypad.memory.recall}}
| {{btn|Keypad MR}}
|-
! {{code|key.keyboard.keypad.memory.store}}
| {{btn|Keypad MS}}
|-
! {{code|key.keyboard.keypad.memory.subtract}}
| {{btn|Keypad M-}}
|-
! {{code|key.keyboard.keypad.octal}}
| {{btn|Keypad Octal}}
|-
! {{code|key.keyboard.keypad.percent}}
| {{btn|Keypad %}}
|-
! {{code|key.keyboard.keypad.power}}
| {{btn|Keypad ^}}
|-
! {{code|key.keyboard.keypad.right.brace}}
| {{btn|Keypad <nowiki>}</nowiki>}}
|-
! {{code|key.keyboard.keypad.space}}
| {{btn|Keypad Space}}
|-
! {{code|key.keyboard.keypad.tab}}
| {{btn|Keypad Tab}}
|-
! {{code|key.keyboard.keypad.vertical.bar}}
| {{btn|Keypad <nowiki>|</nowiki>}}
|-
! {{code|key.keyboard.keypad.xor}}
| {{btn|Keypad XOR}}
|-
! {{code|key.keyboard.lang6}}
| {{btn|Language 6}}
|-
! {{code|key.keyboard.lang7}}
| {{btn|Language 7}}
|-
! {{code|key.keyboard.lang8}}
| {{btn|Language 8}}
|-
! {{code|key.keyboard.lang9}}
| {{btn|Language 9}}
|-
! {{code|key.keyboard.mode}}
| {{btn|Mode}}
|-
! {{code|key.keyboard.oper}}
| {{btn|Oper}}
|-
! {{code|key.keyboard.out}}
| {{btn|Out}}
|-
! {{code|key.keyboard.prior}}
| {{btn|Prior}}
|-
! {{code|key.keyboard.select}}
| {{btn|Select}}
|-
! {{code|key.keyboard.separator}}
| {{btn|Separator}}
|-
! {{code|key.keyboard.soft.left}}
| {{btn|Soft Left}}
|-
! {{code|key.keyboard.soft.right}}
| {{btn|Soft Right}}
|-
! {{code|key.keyboard.sys.req}}
| {{btn|SysRq}}
|-
! {{code|key.keyboard.thousands.separator}}
| {{btn|Thousands Separator}}
|}


* Damage Type Tags
'''[[Minecraft:Language]]s'''
** Added {{cd|#no_wolf_retaliation}} for all damage types that should not cause tamed wolves to attack their source in order to defend their owner.
* Added support for the {{w|Gothic language|Gothic}} language.


* Entity Tags
'''[[Minecraft:Loot function]]s'''
** Added {{cd|#cannot_be_dismounted_by_item_usage}}
* Added {{cd|minecraft:command_slot_source}} loot table type.
*** Contains all entities which cannot be dismounted by items.
** Currently used to evaluate slot sources with the {{cmd|item}} and {{cmd|execute}} commands.
 
** It takes the following parameters:
* Item Tags
*** {{cd|container}}, the container or inventory being evaluated.
** Added <code>#concrete_stairs</code>
*** {{cd|origin}}, the position at which the command was executed.
*** Contains all concrete stair items.
*** {{cd|this_entity}}, the @s entity of the command being executed (optional).
** Added <code>#concrete_slabs</code>
*** Contains all concrete slab items.
** Added <code>#cloneable_maps</code>
*** Contains filled maps plus all explorer maps items and buried treasure maps, used as the input to the <code>map_cloning</code> recipe.
** Added {{cd|#cushions}}
** Added {{cd|#douses_campfires}}
*** Contains items that can douse a lit [[Minecraft:campfire]] block.
** Added <code>#extendable_maps</code>
*** Contains maps that can be zoomed out with paper, either in a crafting table or at a cartography table.
** Added {{cd|#mushrooms}}
*** Contains all mushroom items.
** Added {{cd|#ores}}
*** Collection tag containing all types of ores.
** Added {{cd|#poplar_logs}}
*** Contains all poplar log items.
** Added {{cd|#wool_slabs}}
*** Contains all wool slabs items.
** Added {{cd|#wool_stairs}}
*** Contains all wool stairs items.


* Structure Tags
'''[[Minecraft:Loot table]]'''
** Added {{cd|#abandoned_camp}}  
* Added {{cd|till/rooted_dirt}} loot table for drops when [[Minecraft:rooted dirt]] is tilled with a hoe.
*** Contains all variants of [[Minecraft:abandoned camp]]s.


== Changes ==
'''[[Minecraft:Number provider]]s'''
=== Blocks ===
* Added a {{cd|minecraft:number_provider}} registry
'''[[Minecraft:Decorated pot]]'''
* Added vanilla number providers:
* Items (bricks and pottery sherds) dropped from breaking a decorated pot side will now preserve data.
** {{cd|minecraft:compostable/low}}
* Decorated pot now it can have empty sides and so it doesn't drop anything when broken.
*** Returns {{cd|1}} if the {{cd|minecraft:block_state}} context parameter is an empty composter, otherwise has a 30% chance of returning {{cd|1}}
** In survival mode, this is accessible via naturally generated undecorated pots and by crafting using the {{cd|decorated_pot_simple}} recipe from the [[Minecraft:recipe book]].
** {{cd|minecraft:compostable/low_medium}}
** It is also accessible via the Creative inventory or through commands where at least one side is not defined in {{cd|sherds}}.
*** Returns {{cd|1}} if the {{cd|minecraft:block_state}} context parameter is an empty composter, otherwise has a 50% chance of returning {{cd|1}}
** Previously, empty sides were treated as [[Minecraft:brick]].
** {{cd|minecraft:compostable/medium}}
 
*** Returns {{cd|1}} if the {{cd|minecraft:block_state}} context parameter is an empty composter, otherwise has a 65% chance of returning {{cd|1}}
'''[[File:Hay Bale (UD) JE3.png|32px]] [[Minecraft:Hay Bale|Hay bale]]'''
** {{cd|minecraft:compostable/medium_high}}
* Updated sides texture from [[File:Hay Bale (UD) JE2 BE2.png|32px]] so that the two red twines appear symmetrically distant from the top/bottom edges; the twines now line up with the [[Minecraft:straw bed]] texture too.
*** Returns {{cd|1}} if the {{cd|minecraft:block_state}} context parameter is an empty composter, otherwise has a 85% chance of returning {{cd|1}}
** {{cd|minecraft:compostable/always_add_one}}
*** Always returns {{cd|1}}


'''[[Minecraft:Sign]]s'''
* Added {{cd|minecraft:product}}
* Signs no longer automatically execute click events in custom text.
** Fields:
*** {{cd|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 {{cd|minecraft:number_provider}} type.
** Returns the product of the operands, multiplying them all together.
** Requires at least one operand.


=== Items ===
* Added {{cd|minecraft:minimum}}
'''[[Minecraft:Explorer map|Explorer maps]]'''
** Fields:
* [[File:Abandoned_Campsite_Map_JE1.png|width=32x32]] Added abandoned campsite maps showing the location of other [[Minecraft:Abandoned camp|abandoned camps]] in the following biomes:
*** {{cd|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 {{cd|minecraft:number_provider}} type.
** [[Minecraft:Bamboo Jungle]]
** Returns the minimum value of the operands.
** [[Minecraft:Cherry Grove]]
** Requires at least one operand.
** [[Minecraft:Birch Forest]]
** [[Minecraft:Dappled Forest]]
** [[Minecraft:Flower Forest]]
** [[Minecraft:Pale Garden]]
** [[Minecraft:Swamp]]
** [[Minecraft:Windswept Forest]]
* Added explorer maps for the following structures:
** [[File:Ancient_City_Map_JE1.png|width=32x32]] [[Minecraft:Ancient City]]
** [[File:Mineshaft_Map_JE1.png|width=32x32]] [[Minecraft:Mineshaft]]
** [[File:Desert_Pyramid_Map_JE1.png|width=32x32]] [[Minecraft:Desert Pyramid]]
** [[File:Warm_Ocean_Ruins_Map_JE1.png|width=32x32]] [[Minecraft:Warm Ocean Ruins]]
* Updated existing Explorer maps inventory icons textures:


{| class="wikitable collapsible" style="text-align: center;"
* Added {{cd|minecraft:maximum}}
|+All Texture Changes
** Fields:
!Structure
*** {{cd|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 {{cd|minecraft:number_provider}} type.
!Before
** Returns the maximum value of the operands.
!After
** Requires at least one operand.
|-
|[[Minecraft:Buried Treasure]]
|[[File:Map_(item)_JE2.png|width=32x32]]
|[[File:Buried_Treasure_Map_JE3.png|width=32x32]]
|-
|[[Minecraft:Desert Village]]
|[[File:Village_Map_JE1.png|width=32x32]]
|[[File:Desert_Village_Map_JE2.png|width=32x32]]
|-
|[[Minecraft:Plains Village]]
|[[File:Village_Map_JE1.png|width=32x32]]
|[[File:Plains_Village_Map_JE2.png|width=32x32]]
|-
|[[Minecraft:Savanna Village]]
|[[File:Village_Map_JE1.png|width=32x32]]
|[[File:Savanna_Village_Map_JE2.png|width=32x32]]
|-
|[[Minecraft:Snowy Village]]
|[[File:Village_Map_JE1.png|width=32x32]]
|[[File:Snowy_Village_Map_JE2.png|width=32x32]]
|-
|[[Minecraft:Taiga Village]]
|[[File:Village_Map_JE1.png|width=32x32]]
|[[File:Taiga_Village_Map_JE2.png|width=32x32]]
|-
|[[Minecraft:Jungle Pyramid]]
|[[File:Village_Map_JE1.png|width=32x32]]
|[[File:Jungle_Pyramid_Explorer_Map_JE2.png|width=32x32]]
|-
|[[Minecraft:Swamp Hut]]
|[[File:Village_Map_JE1.png|width=32x32]]
|[[File:Swamp_Hut_Explorer_Map_JE2.png|width=32x32]]
|-
|[[Minecraft:Ocean Monument]]
|[[File:Ocean_Explorer_Map_JE2.png|width=32x32]]
|[[File:Ocean_Monument_Explorer_Map_JE3.png|width=32x32]]
|-
|[[Minecraft:Woodland Mansion]]
|[[File:Woodland_Explorer_Map_JE2.png|width=32x32]]
|[[File:Woodland_Mansion_Explorer_Map_JE3.png|width=32x32]]
|-
|[[Minecraft:Trial Chambers]]
|[[File:Trial_Explorer_Map_JE1.png|width=32x32]]
|[[File:Trial_Chambers_Explorer_Map_JE2.png|width=32x32]]
|-
|}


* The player icon on maps has been updated to always show the direction the player is facing.
* Added {{cd|minecraft:average}}
* These items cannot be obtained from the Creative inventory.
** Fields:
* Existing explorer maps in old worlds are converted to the matching new item on load.
*** {{cd|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 {{cd|minecraft:number_provider}} type.
* Explorer maps can still be cloned in a [[Minecraft:crafting table]], and the copies keep their own item type.
** Returns the average value of the operands.
* Explorer maps and buried treasure maps can no longer be zoomed out, neither in a [[Minecraft:crafting table]] nor in a [[Minecraft:cartography table]].
** Requires at least one operand.
** 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 {{cd|#minecraft:extendable_maps}} tag can be zoomed out.
'''[[Minecraft:Map]]''' and '''Empty Map'''
* [[File:Empty_Map_JE4.png|width=32x32]] [[File:Map_(item)_JE3.png|width=32x32]] Updated inventory icons texture.


'''[[Minecraft:Pottery sherds]]'''
* Added {{cd|minecraft:number_dispatcher}} type
* Pottery sherds are now data-driven.
** Returns the first case which fulfills its condition or the {{cd|default}} if none do.
** Fields:
*** {{cd|cases}} – a list of cases in the order that the dispatcher will try to execute them.
**** Fields:
***** {{cd|condition}} – a {{cd|minecraft:predicate}}
***** {{cd|number_provider}} – a {{cd|minecraft:number_provider}} which is executed if the condition is fulfilled.
*** {{cd|default}} – an optional {{cd|minecraft:number_provider}}
**** Defaults to a constant {{cd|0}} if omitted.


'''[[Minecraft:Shield]]'''
* Added {{cd|minecraft:conditional}} type
* When using a shield together with a [[Minecraft:hoe]] or a [[Minecraft:shovel]], raising the shield will take precedence over tilling and pathmaking.
** Returns the value from {{cd|on_true}} if its condition or {{cd|on_false}} if not.
** Crouching will allow tilling and pathmaking.
** Fields:
*** {{cd|conditions}} – a {{cd|minecraft:predicate}}
*** {{cd|on_true}} – a {{cd|minecraft:number_provider}} which is executed if its condition is fulfilled.
*** {{cd|on_false}} – an optional {{cd|minecraft:number_provider}}
**** Defaults to a constant {{cd|0}} if omitted.


'''[[Minecraft:Suspicious stew]] and [[Minecraft:mushroom stew]]'''
* Added {{cd|minecraft:weighted_list}}
* Can now be crafted with 2 of any mushroom.
** Returns a value from a distribution of weighted number providers.
** Fields:
*** {{cd|distribution}} – a list of objects with the following fields.
**** Fields:
***** {{cd|data}} – a {{cd|minecraft:number_provider}}
***** {{cd|weight}} – a positive integer


=== Mobs ===
* Integer number providers:
'''General'''
** Added the {{cd|minecraft:context_int_provider}} registry.
* Persistent mobs' random walk/swim behaviors will now deactivate when players are not nearby, in the same way as non-persistent mobs.
** All calculations are performed using 32-bit integer limits.
** Result of calculations that provide invalid values (like division by zero) is undefined.
** Format:
*** {{cd|type}} – a namespaced ID from {{cd|minecraft:context_int_provider_type}} registry
*** {{cd|<''type-specific fields''>}}
** Added {{cd|minecraft:abs}}
*** Returns the absolute value of {{cd|input}}.
*** If the final result does not fit inside 32-bit integer limit, calculation will be canceled.
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** Added {{cd|minecraft:avg}}
*** Evaluates multiple integer providers and returns arithmetic mean of results.
*** Division rounds towards {{cd|0}}
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_int_provider}} type.
***** Requires at least one value.
** Added {{cd|minecraft:binomial}}
*** Makes {{cd|n}} random coin flips with probability of succeeding equal to {{cd|p}}, then returns number of successes.
*** Fields:
**** {{cd|n}} – number of coin flips, an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
**** {{cd|p}} – probability of a single coin flip succeeding ({{cd|[0.0, 1.0]}}), an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
** Added {{cd|minecraft:conditional}}
*** Returns the value from {{cd|on_true}} if its condition is fulfilled or {{cd|on_false}} if not.
*** Fields:
**** {{cd|conditions}} – an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
**** {{cd|on_true}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type which is executed if its condition is fulfilled.
**** {{cd|on_false}} – an optional inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
***** Defaults to a constant {{cd|0}} if omitted.
** Added {{cd|minecraft:constant}}
*** Returns a constant value.
*** Fields:
**** {{cd|value}} – an integer
*** Can be also written inline as a plain number ({{cd|foo: 1}} is equivalent to {{cd|foo: &lbrace;type:"minecraft:constant",value:1&rbrace;}})
** Added {{cd|minecraft:sub}}
*** Returns {{cd|left}} minus {{cd|right}}
*** If the final result does not fit inside 32-bit integer, calculation will be cancelled.
*** Fields:
**** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
**** {{cd|right}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** Added {{cd|minecraft:from_float}}
*** Evaluates a float provider and converts it to an integer value.
*** Non-integer values will be truncated (i.e. rounded towards zero).
*** Values that do not fit inside 32-bit integer (including {{cd|NaN}}) are treated as errors and will cancel calculation.
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
** Added {{cd|minecraft:max}}
*** Evaluates multiple integer providers and returns the largest of results.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_int_provider}} type.
***** Requires at least one value.
** Added {{cd|minecraft:min}}
*** Evaluates multiple integer providers and returns the smallest of results.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_int_provider}} type
***** Requires at least one value.
** Added {{cd|minecraft:mod}}
*** Returns the modulus of {{cd|left}} by {{cd|right}}
*** Uses truncated integer division (rounds towards zero).
*** Division by zero is treated as an error and will cancel calculation.
*** Fields:
**** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
**** {{cd|right}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
** Added {{cd|minecraft:floor_mod}}
*** Returns the modulus of {{cd|left}} by {{cd|right}}.
*** Uses floored integer division (rounds towards negative infinity).
*** Division by zero is treated as an error and will cancel calculation.
** Fields:
*** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
*** {{cd|right}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
** Added {{cd|minecraft:environment_attribute}}
*** Fetches and provides the value of an environment attribute ({{cd|minecraft:environment_attribute}})
*** Fields:
**** {{cd|attribute}} – Environment Attribute ID to fetch (must be representable as an int)
** Added {{cd|minecraft:negate}}
*** Returns the negation of {{cd|input}}
*** If the final result does not fit inside 32-bit integer, calculation will be cancelled.
*** Fields:
**** input – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
** Added {{cd|minecraft:number_dispatcher}}
*** Returns the first case which fulfils its condition or the default if none do.
*** Fields:
**** {{cd|cases}} – a list of cases in the order that the dispatcher will try to execute them.
***** Fields:
****** {{cd|condition}} – an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
****** {{cd|value}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type which is executed if the condition is fulfilled.
**** {{cd|default}} – an optional inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
***** Defaults to a constant {{cd|0}} if omitted
** Added {{cd|minecraft:pow}}
*** Returns {{cd|base}} to the power of {{cd|exponent}}
*** If the exponent is negative, calculation will be cancelled.
*** If both the base and the exponent are zero, calculation will be cancelled.
*** If the final result does not fit inside 32-bit integer, calculation will be cancelled.
*** Fields:
**** {{cd|base}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
**** {{cd|exponent}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
** Added {{cd|minecraft:mul}}
*** Evaluates multiple integer providers and returns product of results.
*** If the final result does not fit inside 32-bit integer, calculation will be cancelled.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_int_provider}} type
***** Requires at least one value.
** Added {{cd|minecraft:div}}
*** Returns {{cd|left}} divided by {{cd|right}}
*** Uses truncated integer division (rounds towards zero).
*** Division by zero is treated as an error and will cancel calculation.
*** Fields:
**** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
**** right – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
** Added {{cd|minecraft:floor_div}}
*** Returns {{cd|left}} divided by {{cd|right}}.
*** Uses floored integer division (rounds towards negative infinity).
*** Division by zero is treated as an error and will cancel calculation.
*** If the final result does not fit inside 32-bit integer, calculation will be cancelled.
*** Fields:
**** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
**** {{cd|right}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
** Added {{cd|minecraft:score}}
*** Returns a score of the selected target
*** If {{cd|score}} is not present, provider returns value of {{cd|fallback}}
*** Fields:
**** {{cd|score}} – objective name
**** {{cd|target}} – score holder (same format as in number provider version)
**** {{cd|fallback}} – an optional inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type, defaults to {{cd|0}}
** Added {{cd|minecraft:storage}}
*** Returns an integer value from a command storage
*** If value is not present, is not a number or path returned multiple values, provider returns value of {{cd|fallback}}
*** Conversion of numeric NBT values that are not an integer is undefined
** Fields:
*** {{cd|storage}} – a namespaced ID of a command storage
*** {{cd|path}} – an NBT path
*** {{cd|fallback}} – an optional inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type, defaults to {{cd|0}}
** Added {{cd|minecraft:add}}
*** Evaluates multiple integer providers and returns sum of results.
*** If the final result does not fit inside 32-bit integer, calculation will be cancelled.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_int_provider}} type
***** Requires at least one value.
** Added {{cd|minecraft:uniform}}
*** Picks a random integer from a closed range
*** Fields:
**** {{cd|min}} – minimum value (inclusive), an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
**** {{cd|max}} – maximum value (inclusive), an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
** Added {{cd|minecraft:weighted_list}}
** Returns a value from a distribution of weighted number providers.
** Fields:
*** {{cd|distribution}} – a list of objects with the following fields
**** Fields:
***** {{cd|data}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
***** {{cd|weight}} – a positive integer
* Float number providers
** Added a {{cd|minecraft:context_float_provider}} registry.
*** All calculations are peformed using single-precision floating-point numbers ("floats").
*** Result of calculations that produce NaN and Infinity is undefined.
*** Format:
**** {{cd|type}} – a namespaced ID from {{cd|minecraft:context_float_provider_type}} registry
**** {{cd|<type-specific fields>}}
** Added vanilla float number providers:
*** {{cd|minecraft:cooking/speed_default}}
**** Returns the default speed multiplier for cooking fuel.
*** {{cd|minecraft:cooking/normal_speed_multiplier}}
**** Returns the speed multiplier for cooking fuel when used in a normal furnace.
*** {{cd|minecraft:cooking/fast_speed_multiplier}}
**** Returns the speed multiplier for cooking fuel when used in a block matching the {{cd|block/fast_cooking}} predicate.
*** {{cd|minecraft:brewing/speed_default}}
**** Returns the default speed multiplier for brewing fuel.
** Added {{cd|minecraft:abs}}
*** Returns the absolute value of {{cd|input}}
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:avg}}
*** Evaluates multiple float providers and returns arithmetic mean of results.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_float_provider}} type
***** Requires at least one value
** Added {{cd|minecraft:ceil}}
*** Returns the ceiling (i.e. rounded towards positive infinity) value of {{cd|input}}
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
** Added {{cd|minecraft:conditional}}
*** Returns the value from {{cd|on_true}} if its condition is fulfilled or {{cd|on_false}} if not.
*** Fields:
**** {{cd|conditions}} – an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type
**** {{cd|on_true}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type which is executed if its condition is fulfilled.
**** {{cd|on_false}} – an optional inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
***** Defaults to a constant {{cd|0.0}} if omitted.
** Added {{cd|minecraft:constant}}
*** Returns a constant value.
*** Fields:
**** {{cd|value}} – a float
** Can be also written inline as a plain number ({{cd|foo: 1.0}} is equivalent to {{cd|foo: {type:"minecraft:constant",value:1.0}}})
** Added {{cd|minecraft:cos}}
*** Returns the cosine of input
*** Fields:
**** {{cd|input}} – argument in radians, an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:sub}}
*** Returns {{cd|left}} minus {{cd|right}}
*** Fields:
**** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
**** {{cd|right}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:enchantment_level}}
*** Evaluates enchantment level-based ({{cd|minecraft:enchantment_level_based_value_type}}) parameter.
*** Fields:
**** {{cd|amount}}: A Level-Based Value giving a value based on the level of the enchantment.
** Added {{cd|minecraft:environment_attribute}}
*** Fetches and provides the value of an environment attribute ({{cd|minecraft:environment_attribute}}).
*** Fields:
**** {{cd|attribute}} – Environment Attribute ID to fetch (must be representable as a float).
** Added {{cd|minecraft:floor}}
*** Returns the floored (i.e. rounded towards negative infinity) value of input.
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:from_int}}
*** Evaluates an integer provider and converts it to a float value.
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
** Added {{cd|minecraft:length}}
*** Evaluates multiple float providers and returns square root of the sum of squares.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_float_provider}} type
***** Requires at least one value
** Added {{cd|minecraft:max}}
*** Evaluates multiple float providers and returns the largest of result
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_float_provider}} type
***** Requires at least one value.
** Added {{cd|minecraft:min}}
*** Evaluates multiple float providers and returns the smallest of results.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_float_provider}} type
***** Requires at least one value.
** Added {{cd|minecraft:mod}}
*** Returns the modulus of left by right
*** Fields:
**** {{cd|left}} – an inline value or a namespaced ID of a minecraft:context_float_provider type
**** {{cd|right}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:negate}}
*** Returns the negation of input.
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:number_dispatcher}}
*** Returns the first case which fulfils its condition or the default if none do.
*** Fields:
**** {{cd|cases}} – a list of cases in the order that the dispatcher will try to execute them.
***** Fields:
****** {{cd|condition}} – an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type
****** {{cd|value}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type which is executed if the condition is fulfilled.
**** {{cd|default}} – an optional inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
***** Defaults to a constant {{cd|0.0}} if omitted.
** Added {{cd|minecraft:pow}}
*** Returns {{cd|base}} to the power of {{cd|exponent}}.
*** Fields:
**** {{cd|base}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
**** {{cd|exponent}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:mul}}
*** Evaluates multiple float providers and returns product of results.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_float_provider}} type
***** Requires at least one value.
** Added {{cd|minecraft:div}}
*** Returns {{cd|left}} divided by right.
*** Fields:
**** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
**** {{cd|right}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:round}}
*** Returns the rounded (towards nearest integer, with ties rounding towards positive infinity) value of input.
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:sin}}
*** Returns the sine of input.
*** Fields:
**** {{cd|input}} – argument in radians, an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:sqrt}}
*** Returns the square root of input.
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type
** Added {{cd|minecraft:storage}}
*** Returns a float value from a command storage.
*** If value is not present, is not a number or path returned multiple values, provider returns value of {{cd|fallback}}.
*** Conversion of numeric NBT values that are not a float is undefined.
*** Fields:
*** {{cd|storage}} – a namespaced ID of a command storage
*** {{cd|path}} – an NBT path
*** {{cd|fallback}} – an optional inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type, defaults to {{cd|0.0}}
** Added {{cd|minecraft:add}}
*** Evaluates multiple float providers and returns sum of results.
*** Fields:
**** {{cd|inputs}} – 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 {{cd|minecraft:context_float_provider}} type.
***** Requires at least one value.
** Added {{cd|minecraft:truncate}}
*** Returns the truncated (rounded towards zero) value of input.
*** Fields:
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
** Added {{cd|minecraft:uniform}}
*** Picks a random number from a range
*** Fields:
**** {{cd|min}} – minimum value, an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
**** {{cd|max}} – maximum value, an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
** Added {{cd|minecraft:weighted_list}}
*** Returns a value from a distribution of weighted number providers.
*** Fields:
**** {{cd|distribution}} – a list of objects with the following fields.
***** Fields:
****** {{cd|data}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
****** {{cd|weight}} – a positive integer.
 
'''[[Minecraft:Options]]'''
* Added Quit Shortcuts option.
** Can be accessed in the [[Minecraft:Options#Controls|Controls]] section.
** Allows keyboard shortcuts that close the game, such as {{key|Alt+F4}} on Windows and {{key|Command+Q}} on macOS.
*** Does not work on some Linux desktops.<ref>{{bug|MC-310556||Pressing Alt+F4 closes the game window on kwin_wayland even when the "Quit Shortcuts" option is disabled}}</ref>
** Enabled by default.


'''[[Minecraft:Armadillo]]s'''
'''[[Minecraft:Particles]]'''
* No longer try to roll up when submerged in liquids.
* Added {{cd|minecraft:red_poplar_leaves}}
** Falls from red poplar leaves blocks.
** Has no fields.


'''[[Minecraft:Drowned]]'''
* Added {{cd|minecraft:orange_poplar_leaves}}
* Drowned with [[Minecraft:trident]]s will now use a melee attack if the player is within 3 blocks of them to match {{BE}}.
** Falls from orange poplar leaves blocks.
** This attack deals a base attack damage of 11.
** Has no fields.


'''[[Minecraft:Sulfur cube]]s'''
* Added {{cd|minecraft:yellow_poplar_leaves}}
* Changed the sounds of the "regular" sulfur cube archetype.
** Falls from yellow poplar leaves blocks.
** Has no fields.


'''[[Minecraft:Wandering trader]]'''
'''[[Minecraft:Predicate]]s'''
* Can now sell [[Minecraft:poplar log]]s, [[Minecraft:poplar sapling]]s, and [[Minecraft:shelf mushroom]]s.
* Added {{cd|minecraft:int_value_check}}
** Checks value against some range.
** Fields:
*** {{cd|value}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
*** {{cd|test}} – one of:
**** An inline value (including a single integer) or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
***** Will test if result of value is equal to provided test value.
**** An object with fields:
***** {{cd|min}} – an optional inline value (including a single integer) or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
***** {{cd|max}} – an optional inline value (including a single integer) or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
***** Will test if result of value is between {{cd|min}} and {{cd|max}} (inclusive).


=== Non-mob entities ===
* Added {{cd|minecraft:float_value_check}}
'''[[Minecraft:Cushion]]'''
** Checks value against some range.
* No longer prevent vibrations when placed, broken or interacted with.
** Fields:
*** {{cd|value}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
*** {{cd|test}} – one of:
**** An inline value (including a single float) or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
***** Will test if result of value is equal to provided test value.
**** An object with fields:
***** {{cd|min}} – an optional inline value (including a single float) or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
***** {{cd|max}} – an optional inline value (including a single float) or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
***** Will test if result of value is between {{cd|min}} and {{cd|max}} (inclusive)


'''[[Minecraft:Painting]]s'''
'''[[Minecraft:Realms]]'''
* Paintings with custom names now also show those names when the player looks at them in the world.
* 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.
* Added render distance and simulation distance sliders to Realm configuration settings.
* Added a new Realms introduction screen showcasing Realms key features.
** Accessible from the "Add Realm" button.
** Automatically shown when entering Realms if a trial is available.
[[File:JE 26.3 snap10 new Realms introduction UI.png|thumb|New Realms introduction screen]]


=== Command format ===
'''[[Minecraft:Statistics]]'''
'''General'''
* Added Times Slept in a Straw Bed statistic.
* Commands like {{cmd|give}}, {{cmd|unpublish}}, and {{cmd|tick}} should now properly signal errors.


'''{{cmd|execute}}'''
'''[[Minecraft:Tag (Java Edition)|Tags]]'''
* Added new {{cd|slots}} condition sub-command.
* Biome Tags
** Counts the number of slots from the slot source that are present on the targeted block or entity.
** Added tags for biomes which will generate the respective abandoned camp variant:
** The slot source will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
*** {{Tag link|biome|has_structure/abandoned_camp_bamboo_jungle}}
** Syntax:
*** {{Tag link|biome|has_structure/abandoned_camp_birch_forest}}
*** {{cmd|execute if|unless slots block <pos> <slot source>}}
*** {{Tag link|biome|has_structure/abandoned_camp_cherry_grove}}
*** {{cmd|execute if|unless slots entity <targets> <slot source>}}
*** {{Tag link|biome|has_structure/abandoned_camp_dappled_forest}}
* The items condition sub-command now takes a slot source as argument instead of a slot.
*** {{Tag link|biome|has_structure/abandoned_camp_flower_forest}}
** The slot source will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
*** {{Tag link|biome|has_structure/abandoned_camp_forest}}
** Syntax:
*** {{Tag link|biome|has_structure/abandoned_camp_meadow}}
*** {{cmd|execute if|unless items block <pos> <slot source> <item predicate>}}
*** {{Tag link|biome|has_structure/abandoned_camp_old_growth_birch_forest}}
*** {{cmd|execute if|unless items entity <targets> <slot source> <item predicate>}}
*** {{Tag link|biome|has_structure/abandoned_camp_old_growth_pine_taiga}}
*** {{Tag link|biome|has_structure/abandoned_camp_old_growth_spruce_taiga}}
*** {{Tag link|biome|has_structure/abandoned_camp_savanna}}
*** {{Tag link|biome|has_structure/abandoned_camp_pale_garden}}
*** {{Tag link|biome|has_structure/abandoned_camp_snowy_taiga}}
*** {{Tag link|biome|has_structure/abandoned_camp_sparse_jungle}}
*** {{Tag link|biome|has_structure/abandoned_camp_swamp}}
*** {{Tag link|biome|has_structure/abandoned_camp_taiga}}
*** {{Tag link|biome|has_structure/abandoned_camp_windswept_forest}}
*** {{Tag link|biome|has_structure/abandoned_camp_wooded_badlands}}


'''{{cmd|give}}'''
* Block Tags
* 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 {{cd|0}}.
** Added {{Tag link|block|blocks_dolphin_jump}}
 
*** Contains all blocks that [[Minecraft:dolphin]]s cannot move through when jumping out of water.
'''{{cmd|item}}'''
** Added {{Tag link|block|blocks_fluid_flow}}
* Now takes a slot source as argument in place of anywhere a slot was previously used.
*** Contains all blocks that block fluid flow.
** It will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
*** Currently, this tag does nothing.<ref name="fluid tag">{{bug|MC-309259||Block Tags "#blocks_fluid_flow" and "#washed_away_by_fluids" do not work as expected}}</ref>
** Can be a slot source in either inline or reference form.
** Added {{Tag link|block|blocks_lava_fire_spread}}
** Can be a slot source targeting multiple slots.
*** Contains all blocks that block the creation of fire by lava.
** The {{cd|replace}} sub-command has new semantics:
** Added {{Tag link|block|blocks_motion}}
*** 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.
*** Collection tag containing all blocks that are considered to block motion in some way.
*** When there are more destination slots than there are source items, the remaining slots are ignored.
** Added {{Tag link|block|blocks_motion_in_heightmap}}
**** Example: {{cd|replace [12345] with (ABC) -> [ABC45]}}
*** Contains all blocks that are taken into account for the {{cd|motion_blocking}} heightmap.
*** When there are fewer destination slots than there are source items, the remaining items are ignored.
** Added {{Tag link|block|blocks_motion_in_heightmap_no_leaves}}
**** Example: {{cd|replace [123] with (ABCDE) -> [ABC]}}
*** Contains all blocks that are taken into account for the {{cd|motion_blocking_no_leaves}} heightmap.
** String notation slot ranges in the form {{cd|<slot_type>}} or {{cd|<slot_type>.<slot_number>}} are still permitted.
** Added {{Tag link|block|blocks_motion_no_leaves}}
*** Can be a single slot, such as {{cd|armor.chest}}
*** Collection tag containing all blocks that are considered to block motion in some way, but excluding leaf blocks.
*** Can be multiple slots, such as {{cd|container.*}}
** Added {{Tag link|block|cannot_place_basalt_pillar_on}}
*** Acts as shorthand for a <code>minecraft:slot_range slot</code> source using that slot range.
** Added {{Tag link|block|cats_can_lie_on}}
**** Example: {{cd|hotbar.4}} is the same as {{cd|{type:"minecraft:slot_range",slots:"hotbar.4"}}}
*** Contains blocks which [[Minecraft:cat]]s can randomly lie on.
* The entity argument in the {{cd|from entity}} item source can now be a selector targeting multiple entities.
** Added {{Tag link|block|cats_can_sit_on}}
** When more than a single entity is targeted, the slots sourced from each are concatenated.
*** Contains blocks which cats can randomly sit on.
* Added new {{cd|fill}} and {{cd|override}} sub-commands, each with syntax identical to {{cmd|item replace}}.
** Added {{Tag link|block|#cat_does_not_teleport_to}}
** {{cmd|item fill}}
*** Contains blocks that [[Minecraft:cat]]s do not teleport to.
*** Fills each destination slot with a source item.
** Added {{Tag link|block|causes_suffocation}}
*** When there are more destination slots than there are source items, the items repeat until every slot is filled.
*** Contains all blocks where entities can suffocate.
**** Example: {{cd|fill [12345] with (ABC) -> [ABCAB]}}
** Added {{Tag link|block|concrete_slabs}}
**{{cmd|item override}}
*** Contains all concrete slab blocks.
*** Overrides the contents of each destination slot with the corresponding source item.
** Added {{Tag link|block|concrete_stairs}}
*** When there are more destination slots than there are source items, the remaining slots are cleared.
*** Contains all concrete stair blocks.
**** Example: {{cd|override [12345] with (ABC) -> [ABC__]}} (where {{cd|_}} represents an empty slot).
** Added {{Tag link|block|conduit_effect_block}}
*** Blocks that can be used to build a Conduit.
** Added {{Tag link|block|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.
** Added {{Tag link|block|cushion_uses_collision_shape}}
*** Contains blocks where cushion placement raycasts against collision shape instead of interaction shape.
** Added {{Tag link|block|dangerous_for_teleportation}}
*** Contains collection tag defining blocks that are dangerous to teleport on.
** Added {{Tag link|block|enderman_does_not_teleport_to}}
*** Contains blocks that [[Minecraft:endermen]] do not teleport to.
** Added {{Tag link|block|entities_can_teleport_to}}
*** Contains all blocks that entities are allowed to teleport to.
** Added {{Tag link|block|height_specific_ore_replaceables}}
*** Contains all blocks which ore features will turn into stone ores if found above Y=0 and into deepslate ores if found below Y=8.
** Added {{Tag link|block|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 {{Tag link|block|nether_portal_frame}}
*** Blocks that can be used to create a Nether Portal.
** Added {{Tag link|block|ores}}
*** Collection tag containing all types of ores.
** Added {{Tag link|block|poplar_logs}}
*** Contains all poplar log blocks.
** Added {{Tag link|block|required_for_poplar_leaf_ambience}}
*** Contains the blocks which can satisfy requirement for Poplar leaves to make ambient sound.
** Added {{Tag link|block|sculk_growth_inhibitors}}  
*** Contains blocks which keep [[Minecraft:sculk]] from spreading when more than 2 are in the 8×2×8 area around it.
** Added {{Tag link|block|shulker_does_not_teleport_to}}  
*** Contains blocks that [[Minecraft:shulker]]s do not teleport to.
** Added {{Tag link|block|skulls}}
*** Collection tag containing all head and skull blocks.
** Added {{Tag link|block|speeds_up_zombie_villager_curing}}
*** Contains blocks which can increase [[Minecraft:zombie villager]] curing time if placed nearby.
** Added {{Tag link|block|turns_into_dirt_path}}
*** Contains all blocks that turn into [[Minecraft:dirt path]] blocks when a shovel is used for pathmaking.
** Added {{Tag link|block|turns_into_farmland}}
*** Contains all blocks that turn into [[Minecraft:farmland]] blocks when a hoe is used for tilling.
** Added {{Tag link|block|uncarvable}}
*** Contains blocks that [[Minecraft:Carver definition|carvers]] can never carve.
** Added {{Tag link|block|villager_babies_can_jump_on_bed}}
*** Contains Bed blocks which Villager kids can jump on.
** Added {{Tag link|block|villagers_can_sleep_on_bed}}
*** Contains bed blocks which villagers can sleep on.
** Added {{Tag link|block|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.<ref name="fluid tag"></ref>
** Added {{Tag link|block|wool_slabs}}
*** Contains all wool slabs blocks.
** Added {{Tag link|block|wool_stairs}}
*** Contains all wool stairs blocks.
 
* Damage Type Tags
** Added {{Tag link|damage_type|no_wolf_retaliation}} for all damage types that should not cause tamed wolves to attack their source in order to defend their owner.


'''{{cmd|place}}'''
* Entity Tags
* The {{cd|feature}} sub-command now allows in-line definition of the [[Minecraft:feature]].
** Added {{Tag link|entity_type|cannot_be_dismounted_by_item_usage}}
*** Contains all entities which cannot be dismounted by items.


'''{{cmd|publish}}'''
* Fluid Tags
* The {{cd|gamemode}} argument has been removed.
** Added {{Tag link|fluid|axolotl_try_find_liquid}}
** Instead, the default game mode of the world should be set using the {{cmd|defaultgamemode}} command or the Game Mode button in the World Options screen, while player-specific game modes should be set using the {{cmd|gamemode}} command.
*** For all liquids Axolotls are trying to find.
** Added {{Tag link|fluid|dolphin_try_find_liquid}}
*** For all liquids Dolphins are trying to find.
** Added {{Tag link|fluid|frog_try_find_land_near_liquid}}
*** For all liquids Frogs are trying to find land near to.
** Added {{Tag link|fluid|entity_floatable}}
*** For all fluids that make entities float.


'''{{cmd|spreadplayers}}'''
* Item Tags
* Whether a block is safe to spread a player to is now controlled by the {{cd|#entities_can_teleport_to}} block tag.
** Added {{Tag link|item|brewing_potion_inputs}}
'''{{cmd|swing}}'''
*** Contains items that can be placed in a [[Minecraft:brewing stand]] potion slot, regardless of whether they are brewing recipe inputs.
* When used on a player, the player's attack strength will no longer be reset.
** Added {{Tag link|item|clonable_maps}}
* Added a new optional argument to set the swing animation to play.
*** Contains filled maps plus all explorer maps items and buried treasure maps, used as the input to the {{cd|map_cloning}} recipe.
** Allowed values: {{cd|whack}}, {{cd|stab}}
** Added {{Tag link|item|concrete_slabs}}
** If omitted, defaults to {{cd|whack}}
*** Contains all concrete slab items.
* Added a new argument to set the duration of the swing animation, if provided.
** Added {{Tag link|item|concrete_stairs}}
** Format: positive time value (by default in ticks).
*** Contains all concrete stair items.
** If omitted, defaults to {{cd|6t}}.
** Added {{Tag link|item|cushions}}
** Added {{Tag link|item|douses_campfires}}
*** Contains items that can douse a lit [[Minecraft:campfire]] block.
** Added {{Tag link|item|extendable_maps}}
*** Contains maps that can be zoomed out with paper, either in a crafting table or at a cartography table.
** Added {{Tag link|item|furnace_fuel_bottom_takeable}}
*** Contains items that can be taken out of [[Minecraft:furnace]] by a [[Minecraft:hopper]] attached to the bottom face.
** Added {{Tag link|item|mushrooms}}
*** Contains all mushroom items.
** Added {{Tag link|item|ores}}
*** Collection tag containing all types of ores.
** Added {{Tag link|item|poplar_logs}}
*** Contains all poplar log items.
** Added {{Tag link|item|wool_slabs}}
*** Contains all wool slabs items.
** Added {{Tag link|item|wool_stairs}}
*** Contains all wool stairs items.


'''{{cmd|team}}'''
* Potion Tags
* The result of {{cmd|team join}} and {{cmd|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).
** Added {{Tag link|potion|douses_fire}}
*** Contains [[Minecraft:potion]]s that douse [[Minecraft:fire]] blocks when they hit something.
** Added {{Tag link|potion|extinguishes_entities}}
*** Contains potions that can extinguish entities.
** Added {{Tag link|potion|hurts_water_sensitive_entities}}
*** Contains potions that will hurt entities which are sensitive to water (e.g. Endermen).
** Added {{Tag link|potion|rehydrates_axolotls}}
*** Contains potions that will cause [[Minecraft:axolotl]]s to rehydrate.


'''{{cmd|tellraw}}'''
* Structure Tags
* The {{cd|nbt}} component in a raw chat message will only be resolved up to 64k times.
** Added {{Tag link|structure|abandoned_camp}}  
*** Contains all variants of [[Minecraft:abandoned camp]]s.
** Added 12 tags, regarding the structures used in each [[Minecraft:exploration map]]:
*** {{Tag link|Structure|on_abandoned_camp_bamboo_jungle|on_abandoned_camp_birch_forest|on_abandoned_camp_cherry_grove|on_abandoned_camp_dappled_forest|on_abandoned_camp_flower_forest|on_abandoned_camp_pale_garden|on_abandoned_camp_swamp|on_abandoned_camp_windswept_forest|on_ancient_city_maps|on_desert_pyramid_maps|on_mineshaft_maps|on_ocean_ruin_warm_maps}}


'''{{cmd|tick}}'''
'''[[Minecraft:UI]]'''
* The following subcommands will now signal an error instead of just printing an error message and returning {{cd|0}}:
* Added a "Right Click Emulation" option to the control settings on macOS, which treats {{keys|control}} + {{mouse|left}} as {{mouse|right}}.
** {{cmd|tick step}}
** Default is set to {{cd|Off}}.
** {{cmd|tick step stop}}
** {{cmd|tick sprint stop}}


=== Gameplay ===
== Changes ==
'''[[Minecraft:Advancements]]'''
=== Blocks ===
* Visiting the dappled forest is now required for the "Adventuring Time" advancement.
'''[[Minecraft: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 {{cd|decorated_pot_simple}} recipe from the [[Minecraft:recipe book]].
** It is also accessible via the Creative inventory or through commands where at least one side is not defined in {{cd|sherds}}.
** Previously, empty sides were treated as [[Minecraft:brick]].
 
'''[[File:Hay Bale (UD) JE3.png|32px]] [[Minecraft:Hay Bale|Hay bale]]'''
* Updated sides texture from [[File:Hay Bale (UD) JE2 BE2.png|32px]] so that the two red twines appear symmetrically distant from the top/bottom edges; the twines line up with the [[Minecraft:straw bed]]’s texture as well.


'''[[Minecraft:Creative inventory]]'''
'''[[Minecraft:Sculk sensor]]'''
* Rearranged mineral items and blocks in the inventory.
* Can now detect [[Minecraft:ice]] and [[Minecraft:snow]] melting.
* 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.


'''[[Minecraft:Spectator]]'''
'''[[Minecraft:Sign]]s'''
* Players in Spectator mode can now interact with portals to teleport.
* Signs no longer automatically execute click events in custom text.


=== General ===
=== Items ===
'''[[Minecraft:Advancement definition]]'''
'''[[Minecraft:Chorus fruit]]'''
* Rewards
* After it has teleported the player randomly, it now shows the particles in the direction of teleportation.
** The {{cd|loot}} sub-field in the {{cd|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 {{cd|minecraft:loot_table}} type.


* Triggers
'''[[Minecraft:Explorer Map]]s'''
** Multiple fields that accepted a list of loot conditions (AKA predicates) are now stricter:
* Renamed the following explorer maps:
*** A list of predicates is no longer accepted as a shorthand for a {{cd|minecraft:all_of}} condition containing that list.
** Jungle Explorer Map → Jungle Pyramid Map
*** Additionally, the {{cd|condition}} field of predicates has been renamed to {{cd|type}} and is now mandatory (previously it defaulted to {{cd|minecraft:entity_properties}}).
** Ocean Explorer Map → Ocean Monument Map
** Some fields that previously accepted only inline loot conditions now also accept a namespaced ID of a {{cd|minecraft:predicate}}
** Swamp Explorer Map → Swamp Hut Map
** The {{cd|player}} field, available on all triggers except {{cd|minecraft:impossible}}, now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Trial Explorer Map → Buried Trial Chambers Map
*** To avoid duplication, this field is not mentioned in entries below.
** Woodland Explorer Map → Woodland Mansion Map


* Changed {{cd|minecraft:any_block_use}} trigger
* Updated existing explorer maps' inventory icon textures:
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
{| class="wikitable collapsible" style="text-align: center;"
|+ All texture changes
|-
! Structure
! Before
! After
|-
| [[Minecraft:Buried Treasure]]
| [[File:Map_(item)_JE2.png|width=32]]
| [[File:Buried_Treasure_Map_JE3.png|width=32]]
|-
| [[Minecraft:Desert Village]]
| [[File:Village_Map_JE1.png|width=32]]
| [[File:Desert_Village_Map_JE2.png|width=32]]
|-
| [[Minecraft:Plains Village]]
| [[File:Village_Map_JE1.png|width=32]]
| [[File:Plains_Village_Map_JE2.png|width=32]]
|-
| [[Minecraft:Savanna Village]]
| [[File:Village_Map_JE1.png|width=32]]
| [[File:Savanna_Village_Map_JE2.png|width=32]]
|-
| [[Minecraft:Snowy Village]]
| [[File:Village_Map_JE1.png|width=32]]
| [[File:Snowy_Village_Map_JE2.png|width=32]]
|-
| [[Minecraft:Taiga Village]]
| [[File:Village_Map_JE1.png|width=32]]
| [[File:Taiga_Village_Map_JE2.png|width=32]]
|-
| [[Minecraft:Jungle Pyramid]]
| [[File:Village_Map_JE1.png|width=32]]
| [[File:Jungle_Pyramid_Explorer_Map_JE2.png|width=32]]
|-
| [[Minecraft:Swamp Hut]]
| [[File:Village_Map_JE1.png|width=32]]
| [[File:Swamp_Hut_Explorer_Map_JE2.png|width=32]]
|-
| [[Minecraft:Ocean Monument]]
| [[File:Ocean_Explorer_Map_JE2.png|width=32]]
| [[File:Ocean_Monument_Explorer_Map_JE3.png|width=32]]
|-
| [[Minecraft:Woodland Mansion]]
| [[File:Woodland_Explorer_Map_JE2.png|width=32]]
| [[File:Woodland_Mansion_Explorer_Map_JE3.png|width=32]]
|-
| [[Minecraft:Trial Chambers]]
| [[File:Trial_Explorer_Map_JE1.png|width=32]]
| [[File:Trial_Chambers_Explorer_Map_JE2.png|width=32]]
|-
|}
* All explorer maps are now unique items; previously they used the same item ID as [[Minecraft:filled map]]s.
** 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 [[Minecraft: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 [[Minecraft:crafting table]] nor in a [[Minecraft: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 {{cd|#minecraft:extendable_maps}} tag can be zoomed out.


* Changed {{cd|minecraft:bee_nest_destroyed}}
'''[[Minecraft:Map]]''' and '''Empty Map'''
** 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 {{cd|minecraft:block}} type. However, it still only actually triggers for block types using the {{cd|BeehiveBlock}} class (i.e. a [[Minecraft:bee nest]] or [[Minecraft:beehive]]).
* {{Animate|Empty_Map_JE4.png;Map_(item)_JE3.png|32px}} Updated inventory icon textures from {{Animate|Empty Map JE3 BE2.png;Map_(item)_JE2.png|32px}}.
** Added field {{cd|state}} that matches block state properties (same format as {{cd|minecraft:enter_block}}).


* Changed {{cd|minecraft:bred_animals}} trigger
'''Map decorations'''
** {{cd|child}}, {{cd|parent}}, and {{cd|partner}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Changed Woodland Mansion texture from [[File:Mansion (texture) JE2.png|24px|class=pixel-image]] to [[File:Mansion (texture) JE3.png|24px|class=pixel-image]] to match the Woodland Mansion Map texture.
* The map icons for players on maps and explorer maps has been updated to always show the direction the player is facing.
{| class="wikitable collapsible" style="text-align: center;"
|+ All texture changes
|-
! Name
! Before
! After
|-
| Player Locator
| [[File:Player (texture) JE1 BE1.png|width=32]]
| [[File:Player (texture) JE2 BE2.png|width=32]]
|-
| Player Off Map
| [[File:Player Off Map (texture) JE1 BE1.png|width=32]]
| [[File:Player off map (texture) JE2 BE2.png|width=32]]
|-
| Player Off Limits
| [[File:Player Off Limits (texture) JE1.png|width=32]]
| [[File:Player off limits (texture) JE2.png|width=32]]
|-
|}


* Changed {{cd|minecraft:brewed_potion}} trigger
* Added map icon for the following structures:
** The {{cd|potion}} field now accepts {{cd|minecraft:potion_contents}} data component predicate.
** [[File:Ancient city (texture) JE1.png|24px]] [[Minecraft:Ancient City]]
** [[File:Abandoned camp (texture) JE1.png|24px]] [[Minecraft:Abandoned Camp]]
** [[File:Desert pyramid (texture) JE1.png|24px]] [[Minecraft:Desert Pyramid]]
** [[File:Mineshaft (texture) JE1.png|24px]] [[Minecraft:Mineshaft]]
** [[File:Warm Ocean Ruins (texture) JE1.png|24px]] [[Minecraft:Warm Ocean Ruins]]


* Changed {{cd|minecraft:channeled_lightning}} trigger
'''[[Minecraft:Pottery sherds]]'''
** Entries in the {{cd|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 {{cd|minecraft:predicate}} type.
* Pottery sherds are now data-driven.


* Changed {{cd|minecraft:cured_zombie_villager}} trigger
'''[[Minecraft:Shield]]'''
** {{cd|villager}} and {{cd|zombie}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* When using a shield together with a [[Minecraft:hoe]] or a [[Minecraft:shovel]], raising the shield will take precedence over tilling and pathmaking.
** Crouching will allow tilling and pathmaking.


* Changed {{cd|minecraft:default_block_use}} trigger
'''[[Minecraft:Suspicious stew]]''' and '''[[Minecraft:mushroom stew]]'''
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Can now be crafted with 2 of any mushroom.


* Changed {{cd|minecraft:effects_changed}} trigger
=== Mobs ===
** The {{cd|source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
'''General'''
* Persistent mobs' random walk/swim behaviors will now deactivate when players are not nearby, in the same way as non-persistent mobs.


* Changed {{cd|minecraft:enter_block}}
'''[[Minecraft:Armadillo]]s'''
** The {{cd|block}} field has been renamed to {{cd|blocks}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:block}} type.
* No longer try to roll up when submerged in liquids.


* Changed {{cd|minecraft:fall_after_explosion}} trigger
'''[[Minecraft:Endermen]]'''
** The {{cd|cause}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Endermen will now take damage from [[Minecraft:projectile]]s if they are riding something.
* No longer attempt to [[Minecraft:teleport]] because of environmental [[Minecraft:damage]] while riding something.
* Can no longer teleport onto [[Minecraft:bedrock]].


* Changed {{cd|minecraft:fishing_rod_hooked}} trigger
'''[[Minecraft:Shulker]]s'''
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Can no longer teleport onto bedrock.


* Changed {{cd|minecraft:placed_block}} trigger
'''[[Minecraft:Sulfur cube]]s'''
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Changed the sounds of the "regular" sulfur cube archetype.


* Changed {{cd|minecraft:item_used_on_block}} trigger
'''[[Minecraft:Wandering trader]]s'''
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Can now sell [[Minecraft:poplar log]]s, [[Minecraft:poplar sapling]]s, and [[Minecraft:shelf mushroom]]s.


* Changed {{cd|minecraft:allay_drop_item_on_block}} trigger
=== Non-mob entities ===
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
'''[[Minecraft:Painting]]s'''
* Paintings with custom names now also show those names when the player looks at them in the world.


* Changed {{cd|minecraft:player_killed_entity}} trigger
=== World generation ===
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
'''[[Minecraft:Block state provider]]s'''
** The {{cd|killing_blow.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
* Block state providers can now be defined as standalone types in a registry – {{cd|worldgen/block_state_provider}} – and referenced by using a namespaced string for a field that expects a block state provider.
* An inline block state definition is now an accepted shorthand form for a {{cd|minecraft:simple}} block state provider providing that state. The Block State has to be in the form of an object with fields, a shorthand Block ID is not allowed.
* Renamed provider types.
** The following providers types have been renamed:
*** {{cd|minecraft:dual_noise_provider}} renamed to {{cd|minecraft:dual_noise}}
*** {{cd|minecraft:noise_provider}} renamed to {{cd|minecraft:noise}}
*** {{cd|minecraft:noise_threshold_provider}} renamed to {{cd|minecraft:noise_threshold}}
*** {{cd|minecraft:randomized_int_state_provider}} renamed to {{cd|minecraft:randomized_int}}
*** {{cd|minecraft:rule_based_state_provider}} renamed to {{cd|minecraft:rule_based}}
*** {{cd|minecraft:simple_state_provider}} renamed to {{cd|minecraft:simple}}
*** {{cd|minecraft:weighted_state_provider}} renamed to {{cd|minecraft:weighted}}
*** {{cd|minecraft:random_block_provider}} renamed to {{cd|minecraft:random_block}}
*** {{cd|minecraft:rotated_block_provider}} renamed to {{cd|minecraft:rotated}}
* Changed {{cd|minecraft:rule_based}}
** If a rule yields no result, the following rules will be evaluated.
** If no rule or {{cd|fallback}} yields a result, will now also yield no result.


* Changed {{cd|minecraft:entity_killed_player}} trigger
'''[[Minecraft:Density function]]s'''
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Density function and noises are no longer evaluated with double-precision floating point values, but instead with single-precision.
** The {{cd|killing_blow.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
** This affects all intermediate steps, not just the final result.


* Changed {{cd|minecraft:kill_mob_near_sculk_catalyst}} trigger
'''[[Minecraft:Features]]'''
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* The {{cd|worldgen/configured_feature}} registry has moved to {{cd|worldgen/feature}} and configuration is now done inline in the root object rather than separated into a config field.
** The {{cd|killing_blow.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
* Removed the following feature types:
 
** {{cd|minecraft:coral_mushroom}}
* Changed {{cd|minecraft:lightning_strike}} trigger
**** Replaced by using {{Code|minecraft:overlay}}
** {{cd|bystander}} and {{cd|lightning}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type
** {{cd|minecraft:kelp}}
**** Replaced by using {{Code|minecraft:block_column}}
** {{cd|minecraft:nether_forest_vegetation}}
**** Replaced by using {{Code|minecraft:simple_block}}
** {{cd|minecraft:seagrass}}
**** Replaced by using {{Code|minecraft:weighted_random_selector}}
** {{cd|minecraft:sea_pickle}}
**** Replaced by using {{Code|minecraft:simple_block}}
** {{cd|minecraft:twisting_vines}}
**** Replaced by using {{Code|minecraft:block_column}}
** {{cd|minecraft:weeping_vines}}
**** Replaced by using {{Code|minecraft:overlay}}
** {{cd|minecraft:desert_well}}
*** The [[Minecraft:desert well]] feature now uses the type {{cd|minecraft:template}}.<ref>[https://github.com/misode/mcmeta/blob/26.3-snapshot-8-diff/data/minecraft/worldgen/feature/desert_well.json worldgen/feature/desert_well.json] – misode.mcmeta</ref>
* Removed the {{cd|extra_rare_growths}} and {{cd|catalyst_chance}} fields from {{cd|minecraft:sculk_patch}}.


* Changed {{cd|minecraft:player_generates_container_loot}} trigger
** Changed {{cd|minecraft:template}}
** The {{cd|loot_table}} field has been renamed to {{cd|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 {{cd|minecraft:loot_table}} type.
*** Added the field {{cd|processors}} – namespaced ID or inline definition of a structure processor list to apply to the template.
*** If a tag or a list is used, trigger will run when any listed loot table is generated.


* Changed {{cd|minecraft:thrown_item_picked_up_by_player}} trigger
* {{cd|minecraft:tree}} feature type
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Added {{cd|shelf_mushroom}} tree decorator type.
*** Places [[Minecraft:shelf mushroom]]s on logs with the specified probability.
*** Format: object with fields:
**** {{cd|probability}} - float (between {{cd|0}} and {{cd|1}}), the probability that any shelf mushrooms will be placed for a given feature.
** Added {{cd|poplar_foliage_placer}} foliage placer type
*** Places leaves blocks for [[Minecraft:poplar]] trees in a rhombus shape in one of two possible directions
*** Format: object with fields:
**** {{cd|height}} - int provider (between {{cd|5}} and {{cd|16}}), the height of the foliage.
**** {{cd|side_hole_chance}} - float (between {{cd|0.0}} and {{cd|1.0}}), the chance for blocks to be randomly removed at the edge of the foliage.
** Added {{cd|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:
**** {{cd|trunk_height_above_branches}} - int provider (between {{cd|0}} and {{cd|8}}), the height of the trunk above the branches.
**** {{cd|branch_amount}} - int provider (between {{cd|1}} and {{cd|4}}), the amount of branches to create by the foliage.


* Changed {{cd|minecraft:thrown_item_picked_up_by_entity}} trigger
* Changed the {{cd|minecraft:random_neighbor_spread}} feature type
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Renamed from {{cd|minecraft:glowstone_blob}}.
 
*** Now exposes more control over the feature.
* Changed {{cd|minecraft:player_hurt_entity}} trigger
*** Places blocks randomly in an area starting at the origin, each block placing so it has exactly one accepted neighbor.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Format changes:
** The {{cd|damage.type.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
*** Added field {{cd|block}}: Block state provider for which block to place.
*** Added field {{cd|accepted_neighbors}}: Block ID, list of block IDs or hash-prefixed block tag for which blocks count as a valid neighbor.
*** Added field {{cd|can_replace}}: Block predicate for which blocks to replace.
*** Added field {{cd|attempts}}: Int provider between {{cd|1}} and {{cd|3000}} for how many placements attempts to make.
*** Added field {{cd|xy_offset}}{{note|Named {{cd|xz_offset}} in the official changelog.}}: Int provider between {{cd|-16}} and {{cd|16}} for what offsets to try along the x and z axes.
*** Added field {{cd|y_offset}}: Int provider between {{cd|-16}} and {{cd|16}} for what offsets to try along the y axis.


* Changed {{cd|minecraft:entity_hurt_player}} trigger
* Changed the {{cd|minecraft:single_block_pillar}} feature type
** The {{cd|damage.type.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
** Renamed from {{cd|minecraft:basalt_pillar}}.  
*** Now exposes more control over the feature functionality.
** Format changes:
*** Added field {{cd|block}}: Block state provider for which block to place.
*** Added field {{cd|can_replace}}: Block predicate for which blocks to replace.
*** Added field {{cd|direction}}: Vertical direction of the pillar - one of {{cd|up}} and {{cd|down}}.
*** Added field {{cd|chance_to_continue}}: Optional probability between {{cd|0}} and {{cd|1}} (default: {{cd|1}}) that the pillar continues another block (assuming {{cd|can_replace}} matches)
*** Added field {{cd|cap_feature}}: Optional placed feature placed at the end of the pillar.


* Changed {{cd|minecraft:player_interacted_with_entity}} trigger
* Changed the {{cd|minecraft:stepped_column_cluster}} feature type
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Renamed from {{cd|minecraft:basalt_columns}}.
 
*** Now exposes more control over the feature functionality.
* Changed {{cd|minecraft:player_sheared_equipment}} trigger
** Format changes:
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Added the field {{cd|block}}: Block state provider for which block to place.
*** Added the field {{cd|can_replace}}: Block predicate for which blocks can be replaced by the column.
*** Added the field {{cd|continue_through}}: Block predicate for which pre-existing blocks to accept as part of a column.
*** Added the field {{cd|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 {{cd|reach}} to {{cd|column_reach}}
*** Added the field {{cd|column_count}}: int provider (between {{cd|1}} and {{cd|150}}) - the number of columns to generate.
*** Added the field {{cd|cluster_reach}}: int provider (between {{cd|0}} and {{cd|13}}) - the size of the square to attempt to generate columns in.
**** The effective reach is also limited by {{cd|height}}.


* Changed {{cd|minecraft:crafter_recipe_crafted}} trigger
* {{cd|minecraft:coral_claw}} and {{cd|minecraft:coral_tree}}
** The {{cd|recipe_id}} field has been renamed to {{cd|recipes}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:recipe}} type.
** Added the field {{cd|feature}} – a placed feature that is used to place at every desired block position.
*** If a tag or a list is used, trigger will run when any listed recipe is used.


* Changed {{cd|minecraft:recipe_crafted}} trigger
'''[[Minecraft:Noise settings]]'''
** The {{cd|recipe_id}} field has been renamed to {{cd|recipes}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:recipe}} type.
* The {{cd|surface_rule}} field has been renamed to {{cd|material_rule}}
*** If a tag or a list is used, trigger will run when any listed recipe is used.
** Format: inline Material Rule or Material Rule ID reference.
 
* The {{cd|final_density}} field no longer has the {{cd|beardifier}} density function implicitly added to the final result.
* Changed {{cd|minecraft:recipe_unlocked}} trigger
* The {{cd|aquifers_enabled}} field has been replaced by an optional {{cd|aquifers}} object:
** The {{cd|recipe}} field has been renamed to {{cd|recipes}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:recipe}} type.
** If not present, no aquifers will be generated.
*** If a tag or a list is used, trigger will run when any listed recipe is unlocked
** Fields:
 
*** {{cd|barrier}} - Density Function, moved from {{cd|noise_router.barrier}}
* Changed {{cd|minecraft:slide_down_block}}
*** {{cd|fluid_level_floodedness}} - Density Function, moved from {{cd|noise_router.fluid_level_floodedness}}
** The {{cd|block}} field has been renamed to {{cd|blocks}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:block}} type.
*** {{cd|fluid_level_spread}} - Density Function, moved from {{cd|noise_router.fluid_level_spread}}
*** {{cd|lava}} - Density Function, moved from {{cd|noise_router.lava}}
*** {{cd|surface_level}} - Density Function, duplicated from {{cd|noise_router.preliminary_surface_level}}
*** {{cd|exclusion}} - Density Function, any aquifer cell where this value is positive will have no fluid.
* The {{cd|ore_veins_enabled}} field has been replaced by an optional list of {{cd|ore_veins}} objects:
** If not present, no ore veins will be generated
** Fields:
*** {{cd|ore_block}} - Block State, the ore block to place
*** {{cd|raw_ore_block}} - Block State, the raw ore block to place.
*** {{cd|filler_block}} - Block State, the filler block to place.
*** raw_ore_chance - float between {{cd|0}} and {{cd|1}}, the probability for a {{cd|raw_ore_block}} to be placed instead of an {{cd|ore_block}}.
*** density - Density Function, the probability between {{cd|0}} and {{cd|1}} for the ore vein to replace a block.
**** If {{cd|0}} or lower, no block will be replaced
*** richness - Density Function, the probability between 0 and 1 for {{cd|ore_block}} or {{cd|raw_ore_block}} to be placed (as opposed to {{cd|filler_block}}).
**** If {{cd|0}} or lower, all blocks will be {{cd|filler_block}}.
**** If {{cd|1}} or greater, no blocks will be {{cd|filler_block}}.
*** {{cd|filler_gap}} - Density Function, acts as an override to richness: if positive, {{cd|filler_block}} will always be placed.
* The following fields from {{cd|noise_router}} have been moved:
** barrier, fluid_level_floodedness, {{cd|fluid_level_spread}}, {{cd|lava}} - moved into {{cd|aquifers}} field.
** {{cd|vein_toggle}}, {{cd|vein_ridged}}, {{cd|vein_gap}} - moved into {{cd|ore_veins}} field.
* Renamed {{cd|preliminary_surface_level}} to {{cd|chunk_surface_level}}
** This Density Function is no longer implicitly interpolated across the entire chunk.
* The {{cd|ore_veins_enabled}} field has been removed, and replaced by the {{cd|minecraft:ore_vein}} Material Rule.
* Removed {{cd|noise.size_horizontal}} and {{cd|noise.size_vertical}} fields, these are now specified in the {{cd|interpolated}} density function.
* Added optional {{cd|debug_functions}} field - list of objects with fields, Density Function values to show in the {{cd|chunk_generation_stats}} debug entry.
** Fields:
*** {{cd|label}} - string, label to identify this Density Function.
*** {{cd|function}} - Density Function, the Density Function to compute and show at the player position.
** If not specified, no density function values will be shown.


* Changed {{cd|minecraft:summoned_entity}} trigger
* Spawn Target
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** The {{cd|spawn_target}} field has been updated to allow use of any density function, instead of just a subset of those defined within the {{cd|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.
* Changed {{cd|minecraft:tame_animal}} trigger
** For example, one axis might be temperature and the second erosion - and suitability determined by distance to the square between {{cd|temperature{{=}}0.1}}, {{cd|erosion{{=}}0.2}} and {{cd|temperature{{=}}0.3}}, {{cd|erosion{{=}}0.5}}. This would prefer any candidate spawn within those ranges equally, while penalizing candidate spawns very far out of that range.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Format: list of target hypercubes
 
*** Target format: map between Density Function ID and a range on that axis:
* Changed {{cd|minecraft:target_hit}} trigger
**** Range is specified as one of:
** The {{cd|projectile}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
***** Float, an exact target value.
***** Array of 2 floats, a range of target values in form {{cd|[min, max]}}.
***** An object with fields:
****** {{cd|min}} - float, the minimum value of the target range.
****** {{cd|max}} - float, the maximum value of the target range.
 
'''[[Minecraft:World generation|Terrain generator]]'''
* Improved the [[Minecraft:chunk]]s generation performance, as such terrain now generates faster.<ref>{{Tweet|gegybeans|2092251363593830896|Chunk generation should be a bit faster in the latest snapshot! Of course, your mileage may vary :)|August 25, 2026
}}</ref>


* Changed {{cd|minecraft:villager_trade}} trigger
'''Other'''
** The {{cd|villager}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* [[Minecraft:Cave air]] is no longer generated in Nether caves.


'''[[Minecraft:Block entity data]]'''
* Biomes
* {{cd|minecraft:sign}} and {{cd|minecraft:hanging_sign}}
** Removed the {{cd|spawners}}, {{cd|spawn_costs}}, and {{cd|creature_spawn_probability}} fields.
** By default, commands and other click events contained in sign text are no longer executed when the block is clicked.
*** These values have been moved to the new environment attributes.
*** Additionally, text components on newly placed signs are no longer resolved by default.
*** New boolean field called {{cd|allow_op_features}} (defaults to {{cd|false}}) has been added to restore previous behavior.
*** Placed signs and items with the {{cd|minecraft:block_entity_data}} component containing sign data stored in worlds saved before this version will have {{cd|allow_op_features}} set to {{cd|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 {{cd|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 {{cd|minecraft:sign_text_front}}, {{cd|minecraft:sign_text_back}} and {{cd|minecraft:waxed}} components.


* {{cd|minecraft:brewing_stand}}
* Block predicates
** The following fields are now stored as integers rather than shorts:
** Added {{cd|minecraft:volume_match}}
*** Changed the {{cd|BrewTime}} field from a short to an integer, this is the amount of time that the current brewing process has taken so far.
*** Checks that every block in a volume matches a given Block Predicate.
*** Changed the {{cd|Fuel}} field from a byte to an integer, this is the amount of fuel remaining.
*** Format:
** The following new fields have been added:
**** {{cd|min}} – list of 3 integers in range -16 to 16 specifying the lower corner of the volume as an offset from the test position.
*** Added the {{cd|total_brew_time}} integer field, this is the total amount of time the current brewing process will take.
**** {{cd|max}} – list of 3 integers in range -16 to 16 specifying the upper corner of the volume as an offset from the test position.
*** Added the {{cd|total_fuel}} integer field, this represents the amount of fuel that was added in the last refuel.
**** {{cd|match}} – block predicate to test on each position.
*** Added the {{cd|speed_multiplier}} float field, this will be used to speed up or slow down the next brewing process.


* {{cd|minecraft:furnace}}, {{cd|minecraft:smoker}} and {{cd|minecraft:blast_furnace}}
* Block state providers
** The following fields are now stored as integers rather than shorts:
** Updated {{cd|minecraft:copy_properties_provider}}
*** Changed the {{cd|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.
*** Renamed field {{cd|source_block_state_provider}} to {{cd|source}}
*** Changed the {{cd|cooking_total_time}} field from a short to an integer, this is the total amount of time the current cooking process will take.
** Added {{cd|minecraft:random_block_provider}}
*** Changed the {{cd|lit_time_remaining}} field from a short to an integer, this is the amount of burn time remaining.
*** Returns the default block state for a randomly chosen block.
*** Changed the {{cd|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.
*** Format:
** The following new fields have been added:
**** {{cd|blocks}}: block ID, list of block IDs or hash-prefixed block tag, specifying the set of blocks to randomly pick from.
*** Added the {{cd|speed_multiplier}} float field, this will be used to speed up or slow down the next cooking process.
** Changed {{cd|minecraft:rotated_block_provider}}
*** Now works on any block with axis or facing properties.
*** Format:
**** Changed the field {{cd|state}}: Now a block state provider.
**** Added the field {{cd|direction}}: Optional field describing the direction to set.
***** If omitted, a random direction is chosen.


'''[[Minecraft:Block entity format]]'''
* Carvers
* {{cd|minecraft:decorated_pot}}
** The {{cd|worldgen/configured_carver}} registry has been renamed to {{cd|worldgen/carver}}
** Field {{cd|sherds}} no longer stores a list of 4 item IDs. Instead, the new format is an object with 4 optional item stack fields named:
** Updated {{cd|minecraft:cave}} carver type
*** {{cd|back}}
*** All fields previously under the config field have been inlined to the top-level.
*** {{cd|left}}
*** Added the {{cd|count}} field - non-negative Int Provider, the number of cave tunnels to create from a seed chunk.
*** {{cd|right}}
*** Renamed {{cd|yScale}} to {{cd|room_vertical_radius_multiplier}}
*** {{cd|front}}
*** Added optional {{cd|start_vertical_radius_multiplier}} field - Float Provider, acts as a multiplier for the vertical radius of the first segment in each tunnel.
'''[[Minecraft:Block states]]'''
**** If not specified, defaults to {{cd|1.0}}
* The following block state fields have been renamed.
*** Added the {{cd|thickness}} field - non-negative Float Provider, acts as a multiplier for the radius of carved tunnels.
** {{cd|Name}} is now {{cd|id}}
*** Added optional {{cd|weird_thickness_bias}} field - Boolean
** {{cd|Properties}} is now {{cd|properties}}
**** If {{cd|true}}, thickness will be multiplied by, with a 10 % chance: <math>\text{randFloat}\left(0,1\right)\cdot\text{randFloat}\left(0,3\right)+1</math>
* The default block state of a block can now be referred to in a compact form directly by the block ID.
**** If not specified, defaults to {{cd|false}}
*** Removed the {{cd|replaceable}} field, carvers will replace any block (excluding features).
*** Removed the {{cd|lava_level}} field, fluids are now always selected by the {{cd|aquifer}} or {{cd|sea_level}} configuration in the dimension.
*** Removed the {{cd|debug_settings}} field.
** Updated {{cd|minecraft:canyon}} carver type
*** All fields previously under the config field have been inlined to the top-level.
*** Renamed and moved {{cd|yScale}} to {{cd|shape.y_scale}}
*** Removed the {{cd|replaceable}} field, carvers will replace any block (excluding features).
*** Removed the {{cd|lava_level}} field, fluids are now always selected by the {{cd|aquifer}} or {{cd|sea_level}} configuration in the dimension.
*** Removed the {{cd|debug_settings}} field.
** Removed {{cd|minecraft:nether_cave}} carver type
*** Replaced by the {{cd|minecraft:cave}} carver type


'''[[Minecraft:Controls]]'''
* [[Minecraft:Density function]]s
* Up to 48 mouse buttons are now supported for controls rebinding.
** Updated {{cd|constant}}
** Previously, only up to mouse button 8 could have controls bound to it.
*** {{cd|argument}} has been renamed to {{cd|value}}
** This change presumably only affects macOS and Linux systems.
** Updated {{cd|add}}, {{cd|mul}}, {{cd|min}}, and {{cd|max}}
* KEY_KPPLUSMINUS, KEY_KPLEFTPAREN and KEY_KPRIGHTPAREN now appear to be supported, at least on Linux.
*** {{cd|argument1}} has been renamed to {{cd|left}}.
** The names are a bit wrong though.<ref>{{bug|MC-310109}}</ref><ref>{{bug|MC-310110}}</ref>
*** {{cd|argument2}} has been renamed to {{cd|right}}.
 
** Updated {{cd|abs}}, {{cd|square}}, {{cd|cube}}, {{cd|half_negative}}, {{cd|quarter_negative}}, {{cd|squeeze}}, {{cd|interpolated}}, {{cd|flat_cache}}, {{cd|cache_2d}}, {{cd|cache_once}}, {{cd|cache_all_in_cell}}, and {{cd|blend_density}} density functions
'''[[Minecraft:Data component format]]'''
*** {{cd|argument}} has been renamed to {{cd|input}}.
* {{cd|minecraft:pot_decorations}}
** Updated {{cd|shift_a}}, {{cd|shift_b}}, and {{cd|shift}}
** Instead of taking a list of 4 item IDs, this component now takes an object with 4 optional item stack fields named:
*** {{cd|argument}} has been renamed to {{cd|noise}}
*** {{cd|back}}
** Added {{cd|sub}}
*** {{cd|left}}
*** Performs subtraction between two arguments.  
*** {{cd|right}}
*** Format: object with fields:
*** {{cd|front}}
**** {{cd|left}} - Density Function, the left-hand side of the operation
* {{cd|minecraft:trim_material}}
**** {{cd|right}} - Density Function, the right-hand side of the operation
** The format of inline material definitions has been updated
** Added {{cd|div}}
** Trim Materials
*** Performs division between two arguments.  
*** The format of elements in the {{cd|trim_material}} registry has been updated:
*** Format: object with fields:
**** {{cd|asset_name}} has been replaced with {{cd|palette_id}} - Palette Texture ID to be used for this material.
**** {{cd|left}} - Density Function, the left-hand side of the operation.
**** {{cd|override_armor_assets}} has been removed, overrides are now defined in the Resource Pack Equipment Asset.
**** {{cd|right}} - Density Function, the right-hand side of the operation.
 
** Updated {{cd|reciprocal}}
* Removed {{cd|minecraft:swing_animation}}
*** Renamed from {{cd|invert}}
** This has been replaced by {{cd|minecraft:attack_animation}} and {{cd|minecraft:interact_animation}}.
** Added {{cd|negate}}
*** The {{cd|none}} swing animation type has been removed.
*** Negates the input.  
*** Existing items in the world will be migrated to using the default {{cd|whack}}.
*** Format: object with fields:
*** Setting both of these new components to the same value will be functionally identical to the old component, except for:
**** {{cd|input}} - Density Function, the function to negate.
**** The {{cmd|swing}} command – animation type now specified by the command.
** Added {{cd|lerp}}
**** Items being dropped by entities.
*** Performs (unclamped) linear interpolation between two arguments based on an alpha.  
 
*** Format: object with fields:
* Removed {{cd|minecraft:map_color}}
**** {{cd|alpha}} - Density Function, the interpolation factor (0=first, 1=second)
** Maps are no longer drawn as a tinted overlay, so there is nothing left for the color to apply to.
***** Any value outside of {{cd|[0; 1]}} will extrapolate
** Existing maps have the component stripped on load.
**** {{cd|first}} - Density Function, the value at {{cd|alpha{{=}}0}}
 
**** {{cd|second}} - Density Function, the value at {{cd|alpha{{=}}1}}
'''[[Minecraft:Data pack]]'''
** Added {{cd|floor}}, {{cd|round}}, {{cd|ceil}}, and {{cd|truncate}}
* The [[Minecraft:pack format]] version is now {{cd|115.0}}.
*** Rounds the input value to an integer multiple of a given function in a type-dependent direction:
* The {{cd|definition}} field from the {{cd|blocks.json}} data generation report has been removed
**** {{cd|floor}}: rounds towards negative infinity.
* Codec for element lists/tags now allows mixing inline values and references.
**** {{cd|round}}: rounds towards the nearest integer (ties round up).
** For example, item modifiers like {{cd|[{type:set_count, ...}, "minecraft:some_modifier"]}} are now allowed.
**** {{cd|ceil}}: rounds towards positive infinity.
 
**** {{cd|truncate}}: rounds towards 0.
'''[[Minecraft:Debug screen]]'''
*** Format: object with fields:
* The debug overlay now supports a separate GUI scale than the rest of the game.
**** {{cd|input}} - Density Function, the input to round.
** This is customizable through the Debug Options screen, F3 + F6.
**** {{cd|multiple}} - Density Function, the output will be rounded to an integer multiple of this value.
** The default scale is "Auto", which tries to stay at a higher resolution than normal.
***** If not specified, defaults to constant {{cd|1}} (i.e. rounding to integer).
** Another option is "Unchanged", which matches the regular GUI scale.
** Added {{cd|beardifier}}
** The rest of the options work the same as in the normal "GUI Scale", controlling the scale directly.
*** Outputs the structure bearding density. Generally summed together with the base terrain density to produce ground below, carve air around, or bury structures.
* Added a "player_speed" debug entry that displays the speed of the player in blocks per tick.
*** Format: no fields
* The debug overlay now shows the display refresh rate.
** Added {{cd|pow}}
'''[[Minecraft:Density function|Density functions]]'''
*** Raises the given base value to an exponent.
* Density function and noises are no longer evaluated with double-precision floating point values, but instead with single-precision.
*** Format: object with fields:
** This affects all intermediate steps, not just the final result.
**** {{cd|base}} – density function, the base value.
 
**** {{cd|exponent}} – density function, the exponent.
'''[[Minecraft:Environment attribute]]'''
** Added {{cd|sqrt}}
* {{cd|minecraft:gameplay/bed_rule}}
*** Computes the square root of the given input.
** Field {{cd|explodes}} has been renamed to {{cd|destroy_on_use}}
*** Format: object with fields:
** Added {{cd|destroy_on_leave}} – optional boolean; if set to {{cd|true}}, the bed will be destroyed when leaving it.
**** {{cd|input}} – density function, the value for which to compute the square root.
*** If omitted, defaults to {{cd|false}}
** Added {{cd|log}}
 
*** Computes the natural logarithm of the given input.
* {{cd|minecraft:visual/ambient_particles}}
*** Format: object with fields:
** Now supports interpolation between Timeline keyframes (probabilities will be crossfaded).
**** {{cd|input}} – density function, the value for which to compute the natural logarithm.
** Introduced support for new modifier: {{cd|append}}
** Added {{cd|sign}}
*** Unlike {{cd|override}} which totally replaces the particle list, this modifier concatenates all elements with the layers below.
*** Computes the sign of the input:
 
**** If the input is positive, returns {{cd|1}}
'''Equipment assets'''
**** If the input is 0, returns {{cd|0}}
* The {{cd|trim_palette_replacements}} field has been replaced with {{cd|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.
**** If input is negative, returns {{cd|-1}}
** Format: list of override entries with fields:
*** Format: object with fields:
*** {{cd|when}} – object with fields, the material and/or pattern to match.
**** {{cd|input}} – density function, the value of which to compute the sign.
**** {{cd|material}} – optional trim material ID, the material to match (if specified).
** Added {{cd|distance_to_point}}
**** {{cd|pattern}} – optional trim pattern ID, the pattern to match (if specified).
*** Computes the distance to a fixed point using the specified distance function.
***** Note: this is not the palette ID, as {{cd|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.
*** {{cd|texture}} – optional trim pattern asset ID, a replacement texture to use if this entry matches.
**** Textures are specified in the same format as {{cd|asset_id}}
**** If not specified, the default texture for the pattern will be used.
*** {{cd|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.
 
'''[[Minecraft:Features]]'''
* The {{cd|worldgen/configured_feature}} registry has moved to {{cd|worldgen/feature}} and configuration is now done inline in the root object rather than separated into a config field.
* Removed the following feature types:
** {{cd|minecraft:coral_mushroom}}
** {{cd|minecraft:kelp}}
** {{cd|minecraft:nether_forest_vegetation}}
** {{cd|minecraft:seagrass}}
** {{cd|minecraft:sea_pickle}}
** {{cd|minecraft:twisting_vines}}
** {{cd|minecraft:weeping_vines}}
* Removed the {{cd|extra_rare_growths}} and {{cd|catalyst_chance}} fields from {{cd|minecraft:sculk_patch}}.
 
* {{cd|minecraft:tree}} feature type
** Added {{cd|shelf_mushroom}} tree decorator type.
*** Places [[Minecraft:shelf mushroom]]s on logs with the specified probability.
*** Format: object with fields:
*** Format: object with fields:
**** {{cd|probability}} - float (between {{cd|0}} and {{cd|1}}), the probability that any shelf mushrooms will be placed for a given feature.
**** {{cd|point}} – array of 3 integers in form {{cd|[x, y, z]}}, the point to compute distance to.
** Added {{cd|poplar_foliage_placer}} foliage placer type
**** {{cd|metric}} – one of:
*** Places leaves blocks for [[Minecraft:poplar]] trees in a rhombus shape in one of two possible directions
***** {{cd|euclidean}} – i.e. <math>\sqrt{\text{Δx}^2+\text{Δy}^2+\text{Δz}^2}</math>
***** {{cd|euclidean_squared}} – i.e. <math>\text{Δx}^2+\text{Δy}^2+\text{Δz}^2</math>
***** {{cd|manhattan}} – i.e. <math>\text{abs}\left(\text{Δx}\right)+\text{abs}\left(\text{Δy}\right)+\text{abs}\left(\text{Δz}\right)</math>
***** {{cd|chebyshev}} – i.e. <math>\max\left(\text{abs}\left(\text{Δx}\right),\text{abs}\left(\text{Δy}\right),\text{abs}\left(\text{Δz}\right)\right)</math>
** Updated {{cd|gradient}} (renamed from {{cd|y_clamped_gradient}})
*** Format: object with fields:
*** Format: object with fields:
**** {{cd|height}} - int provider (between {{cd|5}} and {{cd|16}}), the height of the foliage.
**** {{cd|axis}} – {{cd|x}}, {{cd|y}}, or {{cd|z}}, the axis over which to define this gradient.
**** {{cd|side_hole_chance}} - float (between {{cd|0.0}} and {{cd|1.0}}), the chance for blocks to be randomly removed at the edge of the foliage.
**** {{cd|tiling}} – one of:
** Added {{cd|poplar_trunk_placer}} trunk placer type
***** {{cd|clamp_to_edge}} – outside the gradient boundaries, the value at the nearest boundary will be used.
*** Places log blocks for poplar trees in a straight shape with branches by the start of the foliage.
***** {{cd|repeat}} – the gradient will be repeated outside its boundaries.
*** Format:
***** {{cd|mirrored_repeat}} – the gradient will be repeated such that odd repetitions are mirrored, ensuring continuity between repetitions.
**** {{cd|trunk_height_above_branches}} - int provider (between {{cd|0}} and {{cd|8}}), the height of the trunk above the branches.
**** {{cd|from_coordinate}} – int, the coordinate at which the gradient starts.
**** {{cd|branch_amount}} - int provider (between {{cd|1}} and {{cd|4}}), the amount of branches to create by the foliage.
**** {{cd|to_coordinate}} – int, the coordinate at which the gradient ends.
***** Must not be equal to {{cd|from_coordinate}}
**** {{cd|from_value}} – float, the value at which the gradient starts.
**** {{cd|to_value}} – float, the value at which the gradient ends.
** Added {{cd|slice}}
*** Removes a dimension from the input domain by taking a "slice" along an axis with a specific coordinate. For example, with {{cd|axis{{=}}y}} and {{cd|coordinate{{=}}0}}, a slice will be taken along the XZ plane, with all values sampled at {{cd|y{{=}}0}}.
*** Format: object with fields:
**** {{cd|axis}} – {{cd|x}}, {{cd|y}}, or {{cd|z}}, the axis to remove.
**** coordinate – int, the fixed coordinate to be passed to the input function.
**** input – density function, the input function.
** Changed {{cd|end_outer_islands}}
*** Renamed from {{cd|end_islands}}. No longer computes the density of the main island.
 
* Int Providers
** Added {{cd|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:
**** {{cd|min_inclusive}} - Integer, the minimum selected value (inclusive).
**** {{cd|max_inclusive}} - Integer, the maximum selected value (inclusive).


* Changed the {{cd|minecraft:random_neighbor_spread}} feature type
* Material Condition Registry
** Renamed from {{cd|minecraft:glowstone_blob}}.  
** A new data-driven registry has been introduced, loaded from <samp>data/<namespace>/worldgen/material_condition/<id>.json</samp>.
*** Now exposes more control over the feature.  
** Elements in this registry define a condition that can be referenced within a Material Rule pipeline (e.g. testing biome or surface depth).
*** Places blocks randomly in an area starting at the origin, each block placing so it has exactly one accepted neighbor.
** The format is identical to that which was formerly written within the condition Material Rule type, with the following extension:
** Format changes:
*** Material Conditions can also now be specified as an ID reference to an element in the {{cd|worldgen/material_condition}} registry.
*** Added field {{cd|block}}: Block state provider for which block to place.
 
*** Added field {{cd|accepted_neighbors}}: Block ID, list of block IDs or hash-prefixed block tag for which blocks count as a valid neighbor.
* Material Rule Registry
*** Added field {{cd|can_replace}}: Block predicate for which blocks to replace.
** A new data-driven registry has been introduced, loaded from <samp>data/<namespace>/worldgen/material_rule/<id>.json</samp>.
*** Added field {{cd|attempts}}: Int provider between {{cd|1}} and {{cd|3000}} for how many placements attempts to make.
** Elements in this registry define a pipeline for selecting what base block to place in the world at a given position.
*** Added field {{cd|xy_offset}}{{note|Named {{cd|xz_offset}} in the official changelog.}}: Int provider between {{cd|-16}} and {{cd|16}} for what offsets to try along the x and z axes.
** The format is identical to that which was formerly written in the {{cd|surface_rule}} field within noise settings files, with the following extensions:
*** Added field {{cd|y_offset}}: Int provider between {{cd|-16}} and {{cd|16}} for what offsets to try along the y axis.
*** Material rules can now be specified either inline (as previously), or as an ID reference to an element in the {{cd|worldgen/material_rule}} registry.
*** Material conditions can also now be specified as an ID reference to an element in the {{cd|worldgen/material_condition}} registry.


* Changed the {{cd|minecraft:single_block_pillar}} feature type
* Material rules:
** Renamed from {{cd|minecraft:basalt_pillar}}.  
** Added {{cd|minecraft:ore_vein}}
*** Now exposes more control over the feature functionality.
*** Format object with the following fields:
** Format changes:
**** {{cd|ore_block}} - Block State, the ore block to place.
*** Added field {{cd|block}}: Block state provider for which block to place.
**** {{cd|raw_ore_block}} - Block State, the raw ore block to place.
*** Added field {{cd|can_replace}}: Block predicate for which blocks to replace.
**** {{cd|filler_block}} - Block State, the filler block to place.
*** Added field {{cd|direction}}: Vertical direction of the pillar - one of {{cd|up}} and {{cd|down}}.
**** {{cd|raw_ore_chance}} - float between 0 and 1, the probability for a {{cd|raw_ore_block}} to be placed instead of an {{cd|ore_block}}.
*** Added field {{cd|chance_to_continue}}: Optional probability between {{cd|0}} and {{cd|1}} (default: {{cd|1}}) that the pillar continues another block (assuming {{cd|can_replace}} matches)
**** {{cd|density}} - Density Function, the probability between 0 and 1 for the ore vein to replace a block.
*** Added field {{cd|cap_feature}}: Optional placed feature placed at the end of the pillar.
***** If {{cd|0}} or lower, no block will be replaced.
**** {{cd|richness}} - Density Function, the probability between {{cd|0}} and {{cd|1}} for {{cd|ore_block}} or {{cd|raw_ore_block to be placed}} (as opposed to {{cd|filler_block}}).
***** If {{cd|0}} or lower, all blocks will be {{cd|filler_block}}.
***** If {{cd|1}} or greater, no blocks will be {{cd|filler_block}}.
***** {{cd|filler_gap}} - Density Function, acts as an override to {{cd|richness}}.
****** If positive, {{cd|filler_block}} will be always placed.
** Changed {{cd|minecraft:noise}}
*** The following fields have been introduced:
**** {{cd|shift_x}} - optional Density Function, a domain warp to apply on x
*****If not specified, no warping will be applied (equivalent to {{cd|0}})
**** {{cd|shift_y}} - optional Density Function, a domain warp to apply on y
*****If not specified, no warping will be applied (equivalent to {{cd|0}})
**** {{cd|shift_z}} - optional Density Function, a domain warp to apply on z
*****If not specified, no warping will be applied (equivalent to {{cd|0}})
** Removed {{cd|minecraft:shifted_noise}}.
*** Is replaced by {{cd|minecraft:noise}}.
** Updated {{cd|minecraft:interpolated}}
*** Added fields:
**** {{cd|cell_size_xz}} - positive int, size in blocks of the interpolation grid cells on the XZ axes.
**** {{cd|cell_size_y}} - positive int, size in blocks of the interpolation grid cells on the Y axis.
** Updated {{cd|minecraft:cache}}
*** Renamed from {{cd|minecraft:cache_once}}.
*** No format change at all.
** Removed {{cd|minecraft:cache_2d}}, {{cd|minecraft:cache_all_in_cell}}, and {{cd|minecraft:flat_cache}}.
*** May be replaced with {{cd|minecraft:cache}}.
*** {{cd|minecraft:slice}} may be used to always pick <span style="color: purple;">Y=0</span>, as formerly handled by {{cd|minecraft:flat_cache}}.


* Changed the {{cd|minecraft:stepped_column_cluster}} feature type
* [[Minecraft:Noise]]s
** Renamed from {{cd|minecraft:basalt_columns}}.
** The format of noises (defined in the <samp>worldgen/noise</samp> registry, or inline in noise-based block state providers) has been updated.
*** Now exposes more control over the feature functionality.
** Noises define a fractal brownian motion configuration with the following properties:
** Format changes:
*** Produces output values (approximately) fitting a normal distribution.
*** Added the field {{cd|block}}: Block state provider for which block to place.
*** Unless otherwise specified, fits the output amplitude to {{cd|[-1; 1]}}
*** Added the field {{cd|can_replace}}: Block predicate for which blocks can be replaced by the column.
**** 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.
*** Added the field {{cd|continue_through}}: Block predicate for which pre-existing blocks to accept as part of a column.
*** Parameterized by {{cd|persistence{{=}}0.5}}, {{cd|lacunarity{{=}}2.0}}
*** Added the field {{cd|cannot_place_on}}: Block ID, list of block IDs or hash-prefixed block tag ID representing which blocks are avoided when starting placement.
**** i.e. between each octave, the amplitude is halved and the frequency doubled.
*** Renamed the field {{cd|reach}} to {{cd|column_reach}}
*** Has stable seeding such that an octave can be boosted, muted, or added without affecting the rest of the octaves.
*** Added the field {{cd|column_count}}: int provider (between {{cd|1}} and {{cd|150}}) - the number of columns to generate.
*** Renamed {{cd|firstOctave}} to {{cd|base_octave}}.
*** Added the field {{cd|cluster_reach}}: int provider (between {{cd|0}} and {{cd|13}}) - the size of the square to attempt to generate columns in.
*** Added {{cd|base_amplitude}} – non-negative float, a scale factor to apply to the noise output.
**** The effective reach is also limited by {{cd|height}}.
**** If not specified, defaults to {{cd|1.0}}.
*** Added {{cd|octave_count}} – integer between {{cd|1}} and {{cd|32}}, the number of octaves to sample.
*** Added normalize – boolean, or {{cd|"legacy"}}, controls how the output amplitude should be normalized.
**** If {{cd|true}}, {{cd|base_amplitude}} is the expected amplitude of the output (i.e. 99.7% of all samples in {{cd|[-base_amplitude; base_amplitude]}})
**** If {{cd|false}}, {{cd|base_amplitude}} is the amplitude of the first octave.
**** If {{cd|"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 {{cd|true}}.
**** Note: normalization is not affected by the {{cd|amplitude_modifiers}} field – as such, modifying the amplitude of a single octave will not affect the amplitude of others.
*** Renamed {{cd|amplitudes}} to {{cd|amplitude_modifiers}} – list of floats, a scaling factor to apply to each octave.
**** The number of elements in this list must match {{cd|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 {{cd|1.0}}.


* {{cd|minecraft:coral_claw}} and {{cd|minecraft:coral_tree}}
* Placement Modifiers
** Added the field {{cd|feature}} – a placed feature that is used to place at every desired block position.
** Changed {{cd|minecraft:offset}} placement modifier
*** Renamed from {{cd|random_offset}}.
*** Format:
**** Removed the fields {{cd|xz_spread}} and {{cd|y_spread}}.
**** Added the fields {{cd|x}}, {{cd|y}}, {{cd|z}}: Integer providers between -16 and {{cd|16}} specifiying the axis-specific offset.
** Added {{cd|minecraft:cuboid}}
*** Repeats a feature in a cuboid shape.
*** Added fields:
**** {{cd|xz_size}}: int provider between {{cd|1}} and {{cd|16}} representing the size of the cuboid along {{cd|x}} and {{cd|z}} axes.
**** {{cd|y_size}}: int provider between {{cd|1}} and {{cd|16}} representing the size of the cuboid along the {{cd|y}} axis.
**** {{cd|include_interior}}: optional boolean (default {{cd|true}}) for whether to place interior blocks of the cuboid.
**** {{cd|include_edges}}: optional boolean (default {{cd|true}}) for whether to place edge blocks of the cuboid.
***** Setting this to {{cd|false}} generates a somewhat "rounded" cuboid.
** Added {{cd|minecraft:random_chance}}
*** Gates the feature being placed behind a random chance.
*** Format:
**** {{cd|chance}}: float value between {{cd|0}} and {{cd|1}} representing the chance that the feature gets placed.
** Added {{cd|minecraft:randomly_selected}}
*** Randomly selects a placement modifier from a list and delegates placement to it.
*** Format:
**** {{cd|placements}} – non-empty list of Placement Modifiers to pick from.


'''Game window and input backend'''
* Rule Tests
* The minimum window size is now 320&times;240 pixels.
** These are the predicates used by ore features ({{cd|targets[].target}}) and rule structure processors ({{cd|rules[].input_predicate}} and {{cd|rules[].location_predicate}}).
* Minecraft now uses {{WP|SDL3}} instead of {{WP|GLFW}} for window management, input and platform integration.
** Added rule test type {{cd|minecraft:height_match}}
* Keyboard input now uses SDL scancodes for physical key positions and SDL keycodes for layout-dependent text editing shortcuts.
*** Checks the y-level of a block, returning {{cd|true}} only if it is greater than or equal to {{cd|min_inclusive}} and less than or equal to {{cd|max_inclusive}}.
'''[[Minecraft:GUI]]'''
*** Format: object with fields:
* The sub-headings in different tabs of options now use a '''bold''' and <u>underlined</u> format, this format was first seen in the new “world options…” screen.
**** {{cd|min_inclusive}} – int, the minimum y value of allowed blocks (inclusive).
 
**** {{cd|max_inclusive}} – int, the maximum y value of allowed blocks (inclusive).
'''[[Minecraft:Instrument definition]]'''
** Added rule test type {{cd|minecraft:all_of}}
* The format of elements in the instrument registry have been updated:
*** This checks a list of Rule Tests for whether all of them return true for the same block.
** Added the {{cd|durability_damage}} field - optional non-negative integer, amount of durability to consume on each use.
*** Format: object with fields:
** Updated the {{cd|use_duration}} field - can now be {{cd|0}} for no cooldown.
**** {{cd|rules}} - list of Rule Tests, the rules to test the block against.
** Added {{cd|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:
**** {{cd|rules}} – list of rule tests, the rules to test the block against.
** Added {{cd|minecraft:not}}
*** This checks a rule test for whether it returns false for a given block.
*** Format: object with fields:
**** {{cd|rule}} – rule test, the rule to test the block against.


'''[[Minecraft:Item model]]s'''
* Structure Placements
* Added optional {{cd|shade_direction_override}} to block model elements.
** Added {{cd|minecraft:dimension_origin}}
** Accepted values are cardinal directions ({{cd|down}}, {{cd|up}}, {{cd|north}}, {{cd|south}}, {{cd|west}}, {{cd|east}})
** New structure placement that places a single instance of the structure at the dimension origin.
** When set, this overrides directional shading for the element regardless of face orientation.
*** The dimension origin is defined as the {{cd|spawn_target}} for noise settings based dimensions, otherwise Chunk (0, 0).
*Tint source
** No additional fields.
** Removed {{cd|minecraft:map_color}}
*** The {{cd|minecraft:map_color}} component it read no longer exists.
* Removed {{cd|shade}} from block model elements
** {{cd|shade_direction_override: "up"}} to get the previous {{cd|shade: false}} behavior.


'''[[Minecraft:Loot function]]s'''
* [[Minecraft:Template pool|Structure pool element]]s
* The {{cd|conditions}} field is now available in all loot functions and has been renamed to {{cd|condition}}.
** Changed {{cd|minecraft:feature_pool_element}}
** It now also accepts an inline value or a namespaced ID, but no longer an inline list of conditions.
*** Can now connect to jigsaw blocks with any target name, instead of just {{cd|minecraft:bottom}}.
*** Functionality of old condition list format can be achieved by explicitly using {{cd|minecraft:all_of}} loot condition type.
 
** The {{cd|function}} field (describing function type) has been renamed to {{cd|type}}.
* Vertical Anchors
** Added a new option for vertical Anchors: {{cd|relative_to_sea_level}}
*** Specifies an offset to the sea level of the dimension.


* Changed {{cd|minecraft:sequence}}
=== Command format ===
** The {{cd|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 {{cd|minecraft:item_modifier}} type.
'''General'''
** Added optional condition field which accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Commands like {{cmd|give}}, {{cmd|unpublish}}, and {{cmd|tick}} should now properly signal errors.
** Inline format of {{cd|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 {{cd|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 {{cd|minecraft:item_modifier}} type.
* Changed {{cd|minecraft:modify_contents}}
** The {{cd|modifier}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:item_modifier}} type.
* Changed {{cd|minecraft:set_attributes}}
** Number providers in {{cd|amount}} sub-fields of {{cd|modifiers}} list now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.


* Changed {{cd|minecraft:exploration_map}}
'''{{cmd|data}}'''
* The {{cd|map_color}} field has now been removed.
* Added new source to {{cmd|data modify … append{{!}}insert{{!}}merge{{!}}prepend{{!}}set}} called {{cmd|compute}}.
* The function no longer changes the type of the item it is applied to – it now only adds map data to the existing item.
* New source will evaluate a {{cd|minecraft:number_provider}} and then provide the result either as an integer or a float tag.
** Previously it required a {{cd|minecraft:map}} and produced a {{cd|minecraft:filled_map}}
* Syntax:
** 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 {{cd|minecraft:map}} to {{cd|minecraft:filled_map}} (or one of the explorer map items)
** {{cmd|compute <target> <provider> [integer]}}, where the syntax of {{cd|target}}, {{cd|provider}} and {{cd|integer}} is the same as in {{cmd|compute}} function.
** If no matching structure is found, the item is left without a {{cd|minecraft:map_id}} – use {{cd|minecraft:filtered}} with {{cd|minecraft:discard_item}} to drop those, as the vanilla loot tables and villager trades now do.
** Example:
*** {{cmd|data modify storage foo bar set compute entity @n[type{{=}}minecraft:armor_stand] {type:score,target:{type:context,target:target_entity},score:baz<nowiki>}</nowiki>}}.
* Command syntax has been modified to take into account number provider split:
** <code>compute <''target''> integer <''int_provider''></code>
** <code>compute <''target''> float <''float_provider''></code>


* Changed {{cd|minecraft:enchanted_count_increase}}
'''{{cmd|execute}}'''
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Added new {{cd|slots}} condition sub-command.
* Changed {{cd|minecraft:enchant_with_levels}}
** Counts the number of slots from the slot source that are present on the targeted block or entity.
** The {{cd|levels}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
** The slot source will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
* Changed {{cd|minecraft:set_custom_model_data}}
** Syntax:
** Elements in {{cd|floats}} and {{cd|colors}} lists can now be an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** {{cmd|execute if|unless slots block <pos> <slot source>}}
* Changed {{cd|minecraft:set_enchantments}}
*** {{cmd|execute if|unless slots entity <targets> <slot source>}}
** Values in {{cd|enchantments}} map can now be an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* The items condition sub-command now takes a slot source as argument instead of a slot.
* Changed {{cd|minecraft:set_count}}
** The slot source will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
** Syntax:
* Changed {{cd|minecraft:limit_count}}
*** {{cmd|execute if|unless items block <pos> <slot source> <item predicate>}}
** The {{cd|min}} and {{cd|max}} fields inside {{cd|limit}} structure now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** {{cmd|execute if|unless items entity <targets> <slot source> <item predicate>}}
* Changed {{cd|minecraft:set_damage}}
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Changed {{cd|minecraft:set_ominous_bottle_amplifier}}
** The {{cd|amplifier}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Changed {{cd|minecraft:set_random_dyes}}
** The {{cd|number_of_dyes}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Changed {{cd|minecraft:set_stew_effect}}
** The {{cd|duration}} field in elements of effects list now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Changed {{cd|minecraft:set_loot_table}}
** The {{cd|name}} field has been renamed to {{cd|tag}}
* Changed {{cd|minecraft:exploration_map}}
** The {{cd|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 {{cd|minecraft:structure}} type.
* Removed {{cd|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.


'''[[Minecraft:Loot table]]s'''
'''{{cmd|give}}'''
* Multiple block loot tables now reference predicates for checking if a tool has [[Minecraft:Silk Touch]] and is [[Minecraft:shears]] instead of inlining a copy of those checks.
* 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 {{cd|0}}.
* The {{cd|rolls}} and {{cd|bonus_rolls}} fields now accept an inline value or a namespaced ID of a {{cd|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:
*** {{cd|minecraft:advancement}}
*** {{cd|minecraft:item_modifier}}
*** {{cd|minecraft:loot_table}}
*** {{cd|minecraft:number_provider}}
*** {{cd|minecraft:predicate}}
*** {{cd|minecraft:recipe}}
*** {{cd|minecraft:slot_source}}
** Existing {{cd|reference}} types for predicates, item modifiers and slot sources are now obsolete and have been removed


* Loot table types
'''{{cmd|item}}'''
** Added the {{cd|minecraft:container_process}} loot table type
* Now takes a slot source as argument in place of anywhere a slot was previously used.
*** Currently used to evaluate cooking and brewing fuel values.
** It will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
*** It takes the following parameters:
** Can be a slot source in either inline or reference form.
**** {{cd|container}}, the container or inventory being evaluated.
** Can be a slot source targeting multiple slots.
**** {{cd|block_entity}}, the block entity being fueled.
** The {{cd|replace}} sub-command has new semantics:
**** {{cd|block_state}}, the current state of the block being fueled.
*** 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.
**** {{cd|origin}}, the location of the block being fueled.
*** When there are more destination slots than there are source items, the remaining slots are ignored.
** Changed {{cd|minecraft:advancement_location}}
**** Example: {{cd|replace [12345] with (ABC) -> [ABC45]}}
*** Block entities are now available in context and can be matched by conditions like {{cd|minecraft:match_block}}
*** When there are fewer destination slots than there are source items, the remaining items are ignored.
** Changed {{cd|minecraft:block_interact}}
**** Example: {{cd|replace [123] with (ABCDE) -> [ABC]}}
*** {{cd|origin}} is now available in context, as the center of the block being interacted with.
** String notation slot ranges in the form {{cd|<slot_type>}} or {{cd|<slot_type>.<slot_number>}} are still permitted.
 
*** Can be a single slot, such as {{cd|armor.chest}}
* Loot pool entries
*** Can be multiple slots, such as {{cd|container.*}}
** The {{cd|conditions}} field in loot pool entries has been renamed to condition and now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Acts as shorthand for a <code>minecraft:slot_range slot</code> source using that slot range.
** The {{cd|functions}} field in loot pool entries has been renamed to modifier and now accepts an inline value (including list as a short form of {{cd|minecraft:sequence}}) or a namespaced ID of a {{cd|minecraft:item_modifier}} type.
**** Example: {{cd|hotbar.4}} is the same as {{cd|{type:"minecraft:slot_range",slots:"hotbar.4"}}}
*** This field is now present on all loot entries, including previously omitted {{cd|minecraft:alternatives}}, {{cd|minecraft:sequence}} and {{cd|minecraft:group}}.
* The entity argument in the {{cd|from entity}} item source can now be a selector targeting multiple entities.
** Changed {{cd|minecraft:tag}} loot pool entry
** When more than a single entity is targeted, the slots sourced from each are concatenated.
*** The {{cd|name}} field has been renamed to {{cd|items}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:item}} type.
* Added new {{cd|fill}} and {{cd|override}} sub-commands, each with syntax identical to {{cmd|item replace}}.
** Changed {{cd|minecraft:loot_table}} loot pool entry
** {{cmd|item fill}}
*** The {{cd|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 {{cd|minecraft:loot_table}} type.
*** Fills each destination slot with a source item.
*** Added {{cd|expand}} field, working the same as in {{cd|minecraft:tag}} pool entry:
*** When there are more destination slots than there are source items, the items repeat until every slot is filled.
**** If {{cd|true}}, each entry inside tag will be added to outer pool, with weights equal to weight of this entry.
**** Example: {{cd|fill [12345] with (ABC) -> [ABCAB]}}
**** If {{cd|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.
**{{cmd|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: {{cd|override [12345] with (ABC) -> [ABC__]}} (where {{cd|_}} represents an empty slot).
 
'''{{cmd|locate}}'''
* Improved the performance when trying to locate [[Minecraft:structure]]s.


'''[[Minecraft:Minecraft Server Management Protocol]] 3.1.0'''
'''{{cmd|place}}'''
* Added notifications indicating when the server performs a full world upgrade on startup.
* The {{cd|feature}} sub-command now allows in-line definition of the [[Minecraft:feature]].
** {{cd|minecraft:notification/world/upgrade_started}}
** {{cd|minecraft:notification/world/upgrade_progress}}
** {{cd|minecraft:notification/world/upgrade_finished}}
** {{cd|minecraft:notification/world/upgrade_failed}}


'''[[Minecraft:Noise settings]]'''
'''{{cmd|publish}}'''
* The {{cd|surface_rule}} field has been renamed to {{cd|material_rule}}
* The {{cd|gamemode}} argument has been removed.
** Format: inline Material Rule or Material Rule ID reference.
** Instead, the default game mode of the world should be set using the {{cmd|defaultgamemode}} command or the Game Mode button in the World Options screen, while player-specific game modes should be set using the {{cmd|gamemode}} command.
* The {{cd|final_density}} field no longer has the {{cd|beardifier}} density function implicitly added to the final result.
 
* The {{cd|aquifers_enabled}} field has been replaced by an optional {{cd|aquifers}} object:
'''{{cmd|spreadplayers}}'''
** If not present, no aquifers will be generated.
* Whether a block is safe to spread a player to is now controlled by the {{cd|#entities_can_teleport_to}} block tag.
** Fields:
*** {{cd|barrier}} - Density Function, moved from {{cd|noise_router.barrier}}
*** {{cd|fluid_level_floodedness}} - Density Function, moved from {{cd|noise_router.fluid_level_floodedness}}
*** {{cd|fluid_level_spread}} - Density Function, moved from {{cd|noise_router.fluid_level_spread}}
*** {{cd|lava}} - Density Function, moved from {{cd|noise_router.lava}}
*** {{cd|surface_level}} - Density Function, duplicated from {{cd|noise_router.preliminary_surface_level}}
*** {{cd|exclusion}} - Density Function, any aquifer cell where this value is positive will have no fluid.
* The {{cd|ore_veins_enabled}} field has been replaced by an optional list of {{cd|ore_veins}} objects:
** If not present, no ore veins will be generated
** Fields:
*** {{cd|ore_block}} - Block State, the ore block to place
*** {{cd|raw_ore_block}} - Block State, the raw ore block to place.
*** {{cd|filler_block}} - Block State, the filler block to place.
*** raw_ore_chance - float between {{cd|0}} and {{cd|1}}, the probability for a {{cd|raw_ore_block}} to be placed instead of an {{cd|ore_block}}.
*** density - Density Function, the probability between {{cd|0}} and {{cd|1}} for the ore vein to replace a block.
**** If {{cd|0}} or lower, no block will be replaced
*** richness - Density Function, the probability between 0 and 1 for {{cd|ore_block}} or {{cd|raw_ore_block}} to be placed (as opposed to {{cd|filler_block}}).
**** If {{cd|0}} or lower, all blocks will be {{cd|filler_block}}.
**** If {{cd|1}} or greater, no blocks will be {{cd|filler_block}}.
*** {{cd|filler_gap}} - Density Function, acts as an override to richness: if positive, {{cd|filler_block}} will always be placed.
* The following fields from {{cd|noise_router}} have been moved:
** barrier, fluid_level_floodedness, {{cd|fluid_level_spread}}, {{cd|lava}} - moved into {{cd|aquifers}} field.
** {{cd|vein_toggle}}, {{cd|vein_ridged}}, {{cd|vein_gap}} - moved into {{cd|ore_veins}} field.


* Spawn Target
'''{{cmd|swing}}'''
** The {{cd|spawn_target}} field has been updated to allow use of any density function, instead of just a subset of those defined within the {{cd|noise_router}} field.
* When used on a player, the player's attack strength will no longer be reset.
** 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.
* Added a new optional argument to set the swing animation to play.
** For example, one axis might be temperature and the second erosion - and suitability determined by distance to the square between {{cd|temperature{{=}}0.1}}, {{cd|erosion{{=}}0.2}} and {{cd|temperature{{=}}0.3}}, {{cd|erosion{{=}}0.5}}. This would prefer any candidate spawn within those ranges equally, while penalizing candidate spawns very far out of that range.
** Allowed values: {{cd|whack}}, {{cd|stab}}
** Format: list of target hypercubes
** If omitted, defaults to {{cd|whack}}
*** Target format: map between Density Function ID and a range on that axis:
* Added a new argument to set the duration of the swing animation, if provided.
**** Range is specified as one of:
** Format: positive time value (by default in ticks).
***** Float, an exact target value.
** If omitted, defaults to {{cd|6t}}.
***** Array of 2 floats, a range of target values in form {{cd|[min, max]}}.
 
***** An object with fields:
'''{{cmd|team}}'''
****** {{cd|min}} - float, the minimum value of the target range.
* The result of {{cmd|team join}} and {{cmd|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).
****** {{cd|max}} - float, the maximum value of the target range.
 
'''{{cmd|tellraw}}'''
* The {{cd|nbt}} component in a raw chat message will only be resolved up to 64k times.


'''[[Minecraft:Number provider]]s'''
'''{{cmd|tick}}'''
* The {{cd|type}} field always needs to be specified explicitly when using an inline number provider (it was previously defaulting to {{cd|minecraft:uniform}}).
* The following subcommands will now signal an error instead of just printing an error message and returning {{cd|0}}:
* Added vanilla number providers
** {{cmd|tick step}}
** {{cd|minecraft:cooking/time_bamboo}}
** {{cmd|tick step stop}}
*** Returns the burn time in ticks for bamboo and scaffolding.
** {{cmd|tick sprint stop}}
** {{cd|minecraft:cooking/time_blaze_rod}}
 
*** Returns the burn time in ticks for blaze rods.
=== Gameplay ===
** {{cd|minecraft:cooking/time_boats}}
'''[[Minecraft:Advancements]]'''
*** Returns the burn time in ticks for boats.
* Visiting the dappled forest is now required for the "Adventuring Time" advancement.
** {{cd|minecraft:cooking/time_coal}}
* Visible root advancements (i.e. ones that have {{cd|display}} field, but no {{cd|parent}} field) must always declare {{cd|background}} field in {{cd|display}} structure.
*** Returns the burn time in ticks for coal.
* Only root advancements can have {{cd|background}} field in {{cd|display}} structure.
** {{cd|minecraft:cooking/time_coal_block}}
 
*** Returns the burn time in ticks for coal blocks.
'''[[Minecraft:Closed captions]]'''
** {{cd|minecraft:cooking/time_dried_kelp_block}}
* Now point to the most recent [[Minecraft:sound]] in range.
*** Returns the burn time in ticks for dried kelp blocks.
 
** {{cd|minecraft:cooking/time_dry_plants}}
'''[[Minecraft:Creative inventory]]'''
*** Returns the burn time in ticks for various dry plants.
* Rearranged mineral items and blocks in the inventory.
** {{cd|minecraft:cooking/time_hanging_signs}}
* They are now sorted to have non-tiered ingredients first, followed by tiered ingredients that craft into equipment last.
*** Returns the burn time in ticks for hanging signs.
* Affects the ingredients and building blocks tabs.
** {{cd|minecraft:cooking/time_lava_bucket}}
** Ingredients
*** Returns the burn time in ticks for lava buckets.
*** Non-tiered minerals
** {{cd|minecraft:cooking/time_roots}}
*** Unrefined tiered minerals
*** Returns the burn time in ticks for mangrove roots.
*** Refined tiered minerals
** {{cd|minecraft:cooking/time_wood_blocks}}
**** Nuggets
*** Returns the burn time in ticks for wood blocks.
**** Ingots
** {{cd|minecraft:cooking/time_wood_items_extra_small}}
** Building Blocks
*** Returns the burn time in ticks for very small wood items such as buttons.
*** Non-tiered mineral blocks and variants
** {{cd|minecraft:cooking/time_wood_items_large}}
*** Refined tiered mineral blocks and variants
*** Returns the burn time in ticks for large wood items such as doors.
*** Copper block family
** {{cd|minecraft:cooking/time_wood_items_small}}
** Copper Blocks continue to be pushed to the end of the order in Building Blocks since they have a large list of content.
*** Returns the burn time in ticks for small wood items such as bows.
* 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.
** {{cd|minecraft:cooking/time_wood_slabs}}
 
*** Returns the burn time in ticks for wood slabs.
'''[[Minecraft:Enchantment]]s'''
** {{cd|minecraft:cooking/time_wool}}
* Now apply to items being damaged while protecting an [[Minecraft:undead mob]] from the sun.
*** Returns the burn time in ticks for most wool blocks.
 
** {{cd|minecraft:cooking/time_wool_carpets}}
'''[[Minecraft:Game mode switcher]]'''
*** Returns the burn time in ticks for wool carpets.
* Changed the [[Minecraft:Adventure]] mode icon in the game mode switcher to show the [[Minecraft:buried treasure map]] item sprite, instead of [[Minecraft:empty map]].
** {{cd|minecraft:cooking/time_wool_slabs}}
*** Returns the burn time in ticks for wool slabs and cushions.
** {{cd|minecraft:cooking/speed_default}}
*** Returns the default speed multiplier for cooking fuel.
** {{cd|minecraft:brewing/speed_default}}
*** Returns the default speed multiplier for brewing fuel.
** {{cd|minecraft:brewing/uses_default}}
*** Returns the default number of brews provided by brewing fuel.


* Changed {{cd|minecraft:number_dispatcher}}
'''[[Minecraft:Spectator]]'''
** Fields:
* Players in Spectator mode can now interact with portals to teleport.
*** {{cd|cases}} - a list of cases in the order that the dispatcher will try to execute them.
**** Fields:
***** {{cd|condition}} - an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
***** {{cd|number_provider}} - an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type which is executed if the condition is fulfilled.
*** {{cd|default}} - an optional inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
**** Defaults to a constant 0 if omitted.


* Changed {{cd|minecraft:conditional_value}}
'''[[Minecraft:Trading]]'''
** Fields:
* New villager trades, unlocked from a villager leveling up their profession, will now update even if the player has the trading UI open.
*** {{cd|conditions}} - an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** {{cd|on_true}} - an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type which is executed if its condition is fulfilled.
*** {{cd|on_false}} - an optional inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
**** Defaults to a constant 0 if omitted.


* Changed {{cd|minecraft:weighted_list}}
=== General ===
** Fields:
'''[[Minecraft:Advancement definition]]'''
*** {{cd|distribution}} - a list of objects with the following fields.
* Rewards
**** Fields:
** The {{cd|loot}} sub-field in the {{cd|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 {{cd|minecraft:loot_table}} type.
***** {{cd|data}} - an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
***** {{cd|weight}} - a positive integer


* Changed {{cd|minecraft:uniform}}
* Triggers
** The {{cd|min}} and {{cd|max}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
** 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 {{cd|minecraft:all_of}} condition containing that list.
* Changed {{cd|minecraft:binomial}}
*** Additionally, the {{cd|condition}} field of predicates has been renamed to {{cd|type}} and is now mandatory (previously it defaulted to {{cd|minecraft:entity_properties}}).
** The {{cd|n}} and {{cd|p}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
** Some fields that previously accepted only inline loot conditions now also accept a namespaced ID of a {{cd|minecraft:predicate}}
** The {{cd|player}} field, available on all triggers except {{cd|minecraft:impossible}}, now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** To avoid duplication, this field is not mentioned in entries below.


* Changed {{cd|minecraft:sum}}
* Changed {{cd|minecraft:any_block_use}} trigger
** The {{cd|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 {{cd|minecraft:number_provider}} type.
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.


'''[[Minecraft:Options]]'''
* Changed {{cd|minecraft:bee_nest_destroyed}}
[[File:New World Options.png|thumb|right|New World Options UI]]
** 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 {{cd|minecraft:block}} type. However, it still only actually triggers for block types using the {{cd|BeehiveBlock}} class (i.e. a [[Minecraft:bee nest]] or [[Minecraft:beehive]]).
* The World Options button has been moved to the [[Minecraft:Game Menu]] where the Open to LAN button used to be, replacing it.
** Added field {{cd|state}} that matches block state properties (same format as {{cd|minecraft:enter_block}}).
** 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.
'''Order-independent Transparency (OIT)-related shader'''
* Renamed defines:
** {{cd|OIT_WAVELET_RANK}} – was previously {{cd|WAVELET_RANK}}
** {{cd|OIT_COEFF_COUNT}} – was previously {{cd|COEFF_COUNT}}
** {{cd|OIT_COEFF_ATTACHMENT_COUNT}} – was previously {{cd|COEFF_ATTACHMENT_COUNT}}


'''[[Minecraft:Particles]]'''
* Changed {{cd|minecraft:bred_animals}} trigger
* Falling leaves particles no longer appear for [[Minecraft:spruce leaves]].
** {{cd|child}}, {{cd|parent}}, and {{cd|partner}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.


'''[[Minecraft:Predicate]]'''
* Changed {{cd|minecraft:brewed_potion}} trigger
* The {{cd|condition}} field (describing predicate type) has been renamed to {{cd|type}}.
** The {{cd|potion}} field now accepts {{cd|minecraft:potion_contents}} data component predicate.


* Changed {{cd|minecraft:all_of}}
* Changed {{cd|minecraft:channeled_lightning}} trigger
** The {{cd|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 {{cd|minecraft:predicate}} type.
** Entries in the {{cd|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 {{cd|minecraft:predicate}} type.
** Note: values of this type can no longer be shortened to a single list, a full object with type {{cd|minecraft:all_of}} needs to be used explicitly.
 
* Changed {{cd|minecraft:cured_zombie_villager}} trigger
** {{cd|villager}} and {{cd|zombie}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
 
* Changed {{cd|minecraft:default_block_use}} trigger
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.


* Changed {{cd|minecraft:any_of}}
* Changed {{cd|minecraft:effects_changed}} trigger
** The {{cd|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 {{cd|minecraft:predicate}} type.
** The {{cd|source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Changed {{cd|minecraft:inverted}}
** The {{cd|term}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Changed {{cd|minecraft:random_chance}}
** The {{cd|chance}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Changed {{cd|minecraft:value_check}}
** The {{cd|value}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
** The {{cd|min}} and {{cd|max}} fields inside {{cd|range}} structure now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Changed {{cd|minecraft:time_check}}
** The {{cd|min}} and {{cd|max}} fields inside {{cd|value}} structure now accept an inline value or a namespaced ID of a minecraft:number_provider type.
* Changed {{cd|minecraft:entity_scores}}
** The {{cd|min}} and {{cd|max}} fields inside {{cd|values}} of scores map now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Changed {{cd|minecraft:damage_source_properties}}
** The {{cd|predicate.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
* Removed {{cd|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
* Changed {{cd|minecraft:enter_block}}
** New entries added to previously empty-in-vanilla {{cd|predicate}} registry:
** The {{cd|block}} field has been renamed to {{cd|blocks}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:block}} type.
*** {{cd|minecraft:tool/can_silk_touch}}
*** {{cd|minecraft:tool/can_shear}}
*** {{cd|minecraft:block/fast_cooking}}


* Potion predicates
* Changed {{cd|minecraft:fall_after_explosion}} trigger
** The {{cd|minecraft:potion_contents}} data component predicate has been changed to allow matching on specific potion effects.
** The {{cd|cause}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** 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:
* Changed {{cd|minecraft:fishing_rod_hooked}} trigger
*** {{cd|potions}} – A list of potion types or a potion tag to match.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** {{cd|effects}} – A collection predicate of {{cd|mob_effects}} predicates to match.
 
**** The collection predicate format is as follows:
* Changed {{cd|minecraft:placed_block}} trigger
***** {{cd|contains}} – A list of {{cd|mob_effects}} predicates to match.
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
***** {{cd|count}} – A list of options for matching a specific number of mob effect predicates, which follow the same format as {{cd|minecraft:effects}} entity sub-predicate.
 
****** {{cd|test}} – The {{cd|mob_effects}} predicate to match.
* Changed {{cd|minecraft:item_used_on_block}} trigger
****** {{cd|count}} – The number of matches required, or with {{cd|min}} and {{cd|max}} will match a range of counts.
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
***** {{cd|size}} – Require the mob effects list to have a specific size, or with {{cd|min}} and {{cd|max}} will match a range of sizes.
 
** The {{cd|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:
* Changed {{cd|minecraft:allay_drop_item_on_block}} trigger
<syntaxhighlight lang="json">
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
    {
 
        "minecraft:<effect type>": {
* Changed {{cd|minecraft:player_killed_entity}} trigger
          "duration": "<integer bounds representing a duration in ticks>",
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
          "amplifier": "<integer bounds>",
** The {{cd|killing_blow.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
          "ambient": true/false,
 
          "visible": true/false
* Changed {{cd|minecraft:entity_killed_player}} trigger
        }
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
    }
** The {{cd|killing_blow.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
</syntaxhighlight>
* Example of matching on several different effects and criteria:
<syntaxhighlight lang="json">
      "effects": {
        "minecraft:jump_boost": {
          "duration": 3600,
          "amplifier": 5,
          "ambient": true,
          "visible": true
        },
        "minecraft:speed": {
          "duration": {
            "min": 360,
            "max": 3600
          },
          "amplifier": {
            "min": 2
          }
        },
        "minecraft:resistance": {}
      }
</syntaxhighlight>


* Added {{cd|minecraft:match_block}} condition type
* Changed {{cd|minecraft:kill_mob_near_sculk_catalyst}} trigger
** Matches block state and optionally block entity data and components (if present).
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Fields (same as elements of {{cd|minecraft:can_place_on}} components):
** The {{cd|killing_blow.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
*** {{cd|blocks}} – optional block id, list of namespaced block IDs, or hash-prefixed block tag to match.
 
*** {{cd|state}}: optional map of block state property keys to values to match.
* Changed {{cd|minecraft:lightning_strike}} trigger
*** {{cd|nbt}}: optional block entity NBT to match.
** {{cd|bystander}} and {{cd|lightning}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type
**** match will fail if this field is present, but block entity is not available in context.
 
*** {{cd|components}} – optional map of exact components to match.
* Changed {{cd|minecraft:player_generates_container_loot}} trigger
**** match will fail if this field is present, but block entity is not available in context.
** The {{cd|loot_table}} field has been renamed to {{cd|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 {{cd|minecraft:loot_table}} type.
*** {{cd|predicates}} – optional map of component predicates to match.
*** If a tag or a list is used, trigger will run when any listed loot table is generated.
**** match will fail if this field is present, but block entity is not available in context.


* Removed {{cd|minecraft:block_state_property}} condition type
* Changed {{cd|minecraft:thrown_item_picked_up_by_player}} trigger
** This has been fully replaced by {{cd|minecraft:match_block}}
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.


'''[[Minecraft:Recipe (Java Edition)|Recipes]]'''
* Changed {{cd|minecraft:thrown_item_picked_up_by_entity}} trigger
* The recipes for smokers and blast furnaces now use the same cooking time in their data definition as their furnace counterparts.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** The cooking time speedup is now done through the {{cd|minecraft:cooking/speed_default}} number provider used by the furnace fuel components.


* Potion brewing recipes
* Changed {{cd|minecraft:player_hurt_entity}} trigger
** Potion brewing recipes are now data-driven. New recipes can be added via [[Minecraft:data pack]]s, and vanilla recipes may be modified.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Brewing recipes use the <code>minecraft:brewing</code> type.
** The {{cd|damage.type.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
** The main contents are:
 
*** <code>input</code> – A potion ingredient with a required <code>item</code> field and an optional <code>potion_contents</code> field using a <code>minecraft:potion_contents</code> data component predicate.
* Changed {{cd|minecraft:entity_hurt_player}} trigger
*** <code>reagent</code> – A potion ingredient with a required <code>item</code> field and an optional <code>potion_contents</code> field using a <code>minecraft:potion_contents</code> data component predicate.
** The {{cd|damage.type.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
*** <code>output</code> – item stack, the resulting item.
 
** Example of a vanilla recipe:
* Changed {{cd|minecraft:player_interacted_with_entity}} trigger
<syntaxhighlight lang="json">
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
{
 
  "type": "minecraft:brewing",
* Changed {{cd|minecraft:player_sheared_equipment}} trigger
  "input": {
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
    "item": "minecraft:potion",
 
    "potion_contents": {
* Changed {{cd|minecraft:crafter_recipe_crafted}} trigger
      "potion": "minecraft:water"
** The {{cd|recipe_id}} field has been renamed to {{cd|recipes}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:recipe}} type.
    }
*** If a tag or a list is used, trigger will run when any listed recipe is used.
  },
  "output": {
    "components": {
      "minecraft:potion_contents": {
        "potion": "minecraft:awkward"
      }
    },
    "id": "minecraft:potion"
  },
  "reagent": {
    "item": "minecraft:nether_wart"
  }
}
</syntaxhighlight>
* Any items may be used in any of the 3 slots, e.g.:
<syntaxhighlight lang="json">
{
  "type": "minecraft:brewing",
  "input": { "item": "minecraft:bucket" },
  "output": { "id": "minecraft:sulfur_cube_bucket" },
  "reagent": { "item": "minecraft:potent_sulfur" }
}
</syntaxhighlight>


'''Rendering'''
* Changed {{cd|minecraft:recipe_crafted}} trigger
* Terrain blocks are now rendered with MultiDrawIndirect on supported devices.
** The {{cd|recipe_id}} field has been renamed to {{cd|recipes}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:recipe}} type.
*** If a tag or a list is used, trigger will run when any listed recipe is used.


'''[[Minecraft:Resource pack]]'''
* Changed {{cd|minecraft:recipe_unlocked}} trigger
* The version is now {{cd|95.0}}.
** The {{cd|recipe}} field has been renamed to {{cd|recipes}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:recipe}} type.
*** If a tag or a list is used, trigger will run when any listed recipe is unlocked


'''[[Minecraft:Server]]s'''
* Changed {{cd|minecraft:slide_down_block}}
* Some log lines that server software might look out for have been removed.
** The {{cd|block}} field has been renamed to {{cd|blocks}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:block}} type.
** The Minecraft Server Management Protocol can be used instead.


'''[[Minecraft:Server properties]]'''
* Changed {{cd|minecraft:summoned_entity}} trigger
* The {{cd|white-list}} property is now {{cd|true}} by default.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
 
* Changed {{cd|minecraft:tame_animal}} trigger
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
 
* Changed {{cd|minecraft:target_hit}} trigger
** The {{cd|projectile}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
 
* Changed {{cd|minecraft:villager_trade}} trigger
** The {{cd|villager}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.


'''[[Minecraft:Shaders]]'''
'''[[Minecraft:Block entity data]]'''
* Replaced current "Improved Transparency" approach with a new Order-independent Transparency (OIT) algorithm which is expected to be much better at solving translucency issues.
* {{cd|minecraft:sign}} and {{cd|minecraft:hanging_sign}}
** Added new shaders to support order-independent transparency:
** By default, commands and other click events contained in sign text are no longer executed when the block is clicked.
*** <samp>core/oit_composite.fsh</samp>
*** Additionally, text components on newly placed signs are no longer resolved by default.
*** <samp>core/oit_depth_bounds_cull.fsh</samp>
*** New boolean field called {{cd|allow_op_features}} (defaults to {{cd|false}}) has been added to restore previous behavior.
*** <samp>include/oit.glsl</samp>
*** Placed signs and items with the {{cd|minecraft:block_entity_data}} component containing sign data stored in worlds saved before this version will have {{cd|allow_op_features}} set to {{cd|true}}
*** <samp>include/oit_add_transmittance.glsl</samp>
*** Any newly created sign will need to have that field set explicitly.
*** <samp>include/oit_common.glsl</samp>
** Changed the rules for opening the sign edit screen after a block is placed:
*** <samp>include/oit_depth_bounds.glsl</samp>
*** Previously, the screen would open unless {{cd|minecraft:block_entity_data}} was applied successfully.
*** <samp>include/oit_depth_sample.glsl</samp>
**** 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).
*** <samp>include/oit_sample.glsl</samp>
** Signs will now accept and return the {{cd|minecraft:sign_text_front}}, {{cd|minecraft:sign_text_back}} and {{cd|minecraft:waxed}} components.
** Extracted the texture sampling logic from <samp>core/terrain.fsh</samp> into <samp>include/texture_sampling.glsl</samp>
 
** Renamed the following core shaders:
* {{cd|minecraft:brewing_stand}}
*** <samp>core/rendertype_clouds.vsh</samp> -> <samp>core/clouds.vsh</samp>
** The following fields are now stored as integers rather than shorts:
*** <samp>core/rendertype_clouds.fsh</samp> -> <samp>core/clouds.fsh</samp>
*** Changed the {{cd|BrewTime}} field from a short to an integer, this is the amount of time that the current brewing process has taken so far.
*** <samp>core/rendertype_world_border.vsh</samp> -> <samp>core/world_border.vsh</samp>
*** Changed the {{cd|Fuel}} field from a byte to an integer, this is the amount of fuel remaining.
*** <samp>core/rendertype_world_border.fsh</samp> -> <samp>core/world_border.fsh</samp>
** The following new fields have been added:
** Updated core shaders to support order-independent transparency
*** Added the {{cd|total_brew_time}} integer field, this is the total amount of time the current brewing process will take.
*** Introduced new defines:
*** Added the {{cd|total_fuel}} integer field, this represents the amount of fuel that was added in the last refuel.
**** {{cd|OIT}} - A boolean indicating if OIT is enabled.
*** Added the {{cd|speed_multiplier}} float field, this will be used to speed up or slow down the next brewing process.
**** {{cd|OIT_ALWAYS_WRITE_DEPTH}} - A boolean indicating that the OIT algorithm should always write depth for the executing pipeline during the depth bounds stag.
 
**** {{cd|OIT_DEPTH_BOUNDS}} - A boolean indicating if the depth bounds pass is being executed.
* {{cd|minecraft:furnace}}, {{cd|minecraft:smoker}} and {{cd|minecraft:blast_furnace}}
**** {{cd|OIT_TRANSMITTANCE}} - A boolean indicating if the transmittance pass is being executed.
** The following fields are now stored as integers rather than shorts:
**** {{cd|OIT_ACCUMULATE}} - A boolean indicating if the accumulate pass is being executed.
*** Changed the {{cd|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.
**** {{cd|OIT_ALPHA_ONLY}} - A boolean indicating if either the depth bounds or transmittance pass is being executed.
*** Changed the {{cd|cooking_total_time}} field from a short to an integer, this is the total amount of time the current cooking process will take.
**** {{cd|OIT_ADDITIVE}} - A boolean indicating that the OIT algorithm should emulate additive blending for the executing pipeline.
*** Changed the {{cd|lit_time_remaining}} field from a short to an integer, this is the amount of burn time remaining.
**** {{cd|OIT_OPAQUE_PARTS_THRESHOLD}} - A float determining above which alpha threshold a fragment should be considered solid and not go through OIT.
*** Changed the {{cd|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.
**** {{cd|WAVELET_RANK}} - An integer internal to the OIT algorithm.
** The following new fields have been added:
**** {{cd|COEFF_COUNT}} - An integer internal to the OIT algorithm.
*** Added the {{cd|speed_multiplier}} float field, this will be used to speed up or slow down the next cooking process.
**** {{cd|COEFF_ATTACHMENT_COUNT}} - An integer internal to the OIT algorithm.
 
**** {{cd|RENDERPEARL_IS_ZERO_TO_ONE}} - A boolean indicating if the current rendering backend uses the depth range of {{cd|[0, 1]}}, it is available globally to all shaders independently of the OIT setting.
'''[[Minecraft:Block entity format]]'''
**** {{cd|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.
* {{cd|minecraft:decorated_pot}}
**** Affected shaders:
** Field {{cd|sherds}} no longer stores a list of 4 item IDs. Instead, the new format is an object with 4 optional item stack fields named:
***** <samp>core/block.fsh</samp>
*** {{cd|back}}
***** <samp>core/block.vsh</samp>
*** {{cd|left}}
***** <samp>core/clouds.fsh</samp>
*** {{cd|right}}
***** <samp>core/clouds.vsh</samp>
*** {{cd|front}}
***** <samp>core/entity.fsh</samp>
***** <samp>core/entity.vsh</samp>
***** <samp>core/item.fsh</samp>
***** <samp>core/item.vsh</samp>
***** <samp>core/particle.fsh</samp>
***** <samp>core/position_color.fsh</samp>
***** <samp>core/rendertype_beacon_beam.fsh</samp>
***** <samp>core/rendertype_clouds.fsh</samp>
***** <samp>core/rendertype_crumbling.fsh</samp>
***** <samp>core/rendertype_entity_shadow.fsh</samp>
***** <samp>core/rendertype_lightning.fsh</samp>
***** <samp>core/rendertype_lines.fsh</samp>
***** <samp>core/rendertype_world_border.fsh</samp>
***** <samp>core/terrain.fsh</samp>
***** <samp>core/terrain.vsh</samp>
***** <samp>core/text.fsh</samp>
***** <samp>core/text_background.fsh</samp>
***** <samp>core/world_border.fsh</samp>
***** <samp>core/world_border.vsh</samp>
** Removed the old transparency post chain:
*** <samp>post_effect/transparency.json</samp>
*** <samp>shaders/post/transparency.fsh</samp>
** <samp>core/integrate_depth.fsh</samp> was added and is used to integrate the "3d hud" and always-on-top gizmo depth buffers into the main depth buffer.
** There's a new debug keybind for toggling this functionality on and off, by default set to F3 + X.


* <samp>terrain.vsh</samp> and <samp>terrain.fsh</samp> shaders are refactored to support multi-draw.
'''[[Minecraft:Block states]]'''
* Some of the members in {{cd|Globals}} and {{cd|DynamicTransforms}} are shuffled to use less memory for those uniform blocks.
* The following block state fields have been renamed.
** {{cd|Name}} is now {{cd|id}}
** {{cd|Properties}} is now {{cd|properties}}
* The default block state of a block can now be referred to in a compact form directly by the block ID.


* Always-on Post Effect Support
'''[[Minecraft:Block transformer definition|Block transformers]]'''
** A resource pack can now define a {{cd|minecraft:end_of_frame}} post effect.
* Added {{cd|minecraft:block_transformer}} registry containing rules for transforming a block into another block.
** It will be applied before other post effects, including the ones enabled by the new {{cd|posteffect}} command.
* Format:
** This post effect is always on as long as the resource pack is loaded, and cannot be controlled by the {{cd|posteffect}} command.
** List of objects with fields:
** 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.
*** {{cd|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 {{cd|rule_based_state_provider}}, for example), the next rule in the list will be attempted.
* Shader compilation changes
**** The set of Block State Providers are the same as the Block State Providers used in World Generation.
** Shaders are now compiled by ShaderC when using OpenGL as well, identically to when using Vulkan.
*** {{cd|sound}} — optional field, Sound Event to play on interaction, e. g. {{cd|minecraft:item.axe.strip}}.
** Shader includes are now handled by ShaderC using {{cd|#include}} instead of {{cd|#moj_import}}
**** If not present, defaults to play no Sound Event.
** Shader inputs and outputs must have a location specified in shader source.
*** {{cd|particle}} — optional field, particles to play on interaction.
*** Vertex input names must still match expected names.
**** If not present, defaults to {{cd|none}}.
*** Vertex outputs are matched to fragment inputs solely by location, name is now ignored.
***** {{cd|none}}
** Introduced new define {{cd|RENDERPEARL_INSTANCE_INDEX_INCLUDES_BASE_INSTANCE}} – a boolean indicating if {{cd|gl_InstanceIndex}} follows Vulkan or OpenGL ({{cd|gl_InstanceID}}) semantics.
***** {{cd|scrape}}
***** {{cd|wax_on}}
***** {{cd|wax_off}}
*** {{cd|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:
***** {{cd|up}};
***** {{cd|down}};
***** {{cd|north}};
***** {{cd|south}};
***** {{cd|east}};
***** {{cd|west}}.
*** {{cd|loot}} — optional Loot Table, the Loot Table to use for dropping items on a successful transformation, e. g. {{cd|minecraft:till/rooted_dirt}}.
**** If not present, defaults to using no Loot Table.
*** {{cd|drop_strategy}} — optional field, configures from where in the Block any loot should drop.
**** If not present, defaults to {{cd|from_middle}}.
**** Values:
***** {{cd|from_middle}} — from the middle of the Block.
***** {{cd|clicked_face}} — from the face interacted with.
*** {{cd|update_from_neighbors}} — optional Boolean, if the transformed block should update based on neighboring blocks. This allows e.g. fences to connect.
**** If not present, defaults to <code>true</code>.
*** {{cd|transform_type}} — optional field, configures how nearby blocks should be affected by the transformation.
**** If not present, defaults to {{cd|single_block}}.
**** Values:
***** {{cd|single_block}} — only affects the Block interacted with.
***** {{cd|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.
*** {{cd|consume_on_use}} — optional Boolean, determines if the item should be consumed or not.
**** Only applies to stackable items.
**** If not present, defaults to {{cd|true}}.
*** {{cd|item_damage_per_use}} — optional int, determines how much damage the item takes with each use.
**** Only applies to non-stackable items.
**** If not present, defaults to {{cd|0}}.
** Default values in vanilla:
*** {{cd|minecraft:shovel}} — default value for shovels.
*** {{cd|minecraft:axe}} — default value for axes.
*** {{cd|minecraft:hoe}} — default value for hoes.


'''[[Minecraft:Slot sources]]'''
'''[[Minecraft:Controls]]'''
* Slot sources can now be defined as files inside a datapack, within the {{cd|slot_source}} folder.
* The numeric keypad plus-or-minus key, opening bracket key and closing bracket key now display their associated glyph in the Key Binds menu.
** Can be used in commands which take slot sources as arguments.
** Proper IDs for each of these have not yet been added, however.
** Can be used in inline slot sources using the {{cd|minecraft:reference}} type.
* 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).
* {{cd|minecraft:contents}} is no longer restricted to only selecting non-empty slots.
** The [[Minecraft:key codes]] for these existed previously, but could only be accessed by changing [[Minecraft:options.txt (Java Edition)|options.txt]] and would not result in button presses actually being recognised.
** These buttons are still not accessible on Windows.
* Renamed some key code display names:
** {{cd|key.keyboard.left.win}}: "Left Win" → "Left Meta"
** {{cd|key.keyboard.right.win}}: "Right Win" → "Right Meta"


* Added {{cd|minecraft:reference}}
'''[[Minecraft:Data component format]]'''
** Uses the referenced slot source.
* Changed {{cd|minecraft:consumable}}
** Fields:
** Added a new optional field to the {{cd|teleport_randomly}} consume effect:
*** {{cd|name}} - the namespaced id of the slot source.
*** {{cd|directional_particles}} - boolean, whether to show a particle trail into the direction of the teleportation
**** If not present, defaults to {{cd|true}}


* Changed {{cd|minecraft:slot_range}}
* Changed {{cd|minecraft:pot_decorations}}
** The {{cd|source}} field has a new valid type container, which sources slots from a container or inventory provided through loot context.
** Instead of taking a list of 4 item IDs, this component now takes an object with 4 optional item stack fields named:
** The {{cd|source}} field is now optional.
*** {{cd|back}}
*** Defaults to the container source type when absent.
*** {{cd|left}}
*** {{cd|right}}
*** {{cd|front}}


* Changed {{cd|minecraft:group}}
* Changed {{cd|minecraft:trim_material}}
** The {{cd|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 {{cd|minecraft:slot_source}} type.
** The format of inline material definitions has been updated
** Inline format of {{cd|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 {{cd|minecraft:slot_source}} type.
** Trim Materials
*** This format is now available consistently available for all fields of slot source.
*** The format of elements in the {{cd|trim_material}} registry has been updated:
**** {{cd|asset_name}} has been replaced with {{cd|palette_id}} - Palette Texture ID to be used for this material.
**** {{cd|override_armor_assets}} has been removed, overrides are now defined in the Resource Pack Equipment Asset.


* Changed {{cd|minecraft:filtered}}
* Removed {{cd|minecraft:swing_animation}}
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
** This has been replaced by {{cd|minecraft:attack_animation}} and {{cd|minecraft:interact_animation}}.
*** Existing items in the world will be migrated to using the default {{cd|whack}}.
*** Setting both of these new components to the same value will be functionally identical to the old component, except for:
**** The {{cmd|swing}} command – animation type now specified by the command.
**** Items being dropped by entities.


* Changed {{cd|minecraft:contents}}
* Removed {{cd|minecraft:map_color}}
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
** 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.


* Changed {{cd|minecraft:limit_slots}}
'''[[Minecraft:Data pack]]'''
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
* The [[Minecraft:pack format]] version is now {{cd|121.0}}.
* The {{cd|definition}} field from the {{cd|blocks.json}} data generation report has been removed
* Codec for element lists/tags now allows mixing inline values and references.
** For example, item modifiers like {{cd|[{type:set_count, ...}, "minecraft:some_modifier"]}} are now allowed.


* Removed {{cd|minecraft:reference}}
'''[[Minecraft:Debug screen]]'''
** This slot source has become obsolete, as any field that takes slot source now accepts (among other fields) a namespaced ID of a {{cd|minecraft:slot_source}} type.
* 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.
 
'''[[Minecraft:Environment attribute]]'''
* {{cd|minecraft:gameplay/bed_rule}}
** Field {{cd|explodes}} has been renamed to {{cd|destroy_on_use}}
** Added {{cd|destroy_on_leave}} – optional boolean; if set to {{cd|true}}, the bed will be destroyed when leaving it.
*** If omitted, defaults to {{cd|false}}
 
* {{cd|minecraft:visual/ambient_particles}}
** Now supports interpolation between Timeline keyframes (probabilities will be crossfaded).
** Introduced support for new modifier: {{cd|append}}
*** Unlike {{cd|override}} which totally replaces the particle list, this modifier concatenates all elements with the layers below.


'''[[Minecraft:Sounds]]'''
'''Equipment assets'''
* Added new sound events:
* The {{cd|trim_palette_replacements}} field has been replaced with {{cd|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.
** {{cd|block.poplar_leaves.ambient}}
** Format: list of override entries with fields:
** {{cd|block.poplar_leaves.break}}
*** {{cd|when}} – object with fields, the material and/or pattern to match.
** {{cd|block.poplar_leaves.fall}}
**** {{cd|material}} – optional trim material ID, the material to match (if specified).
** {{cd|block.poplar_leaves.place}}
**** {{cd|pattern}} – optional trim pattern ID, the pattern to match (if specified).
** {{cd|block.poplar_leaves.step}}
***** Note: this is not the palette ID, as {{cd|trim_palette_replacements}} used to be.
** {{cd|block.poplar_leaves.hit}}
**** At least one of material or pattern must be specified.
** {{cd|block.red_shrub.break}}
**** If both are specified, both must match for the entry to be used.
** {{cd|block.red_shrub.place}}
*** {{cd|texture}} – optional trim pattern asset ID, a replacement texture to use if this entry matches.
** {{cd|block.shelf_mushroom.break}}
**** Textures are specified in the same format as {{cd|asset_id}}
** {{cd|block.shelf_mushroom.fall}}
**** If not specified, the default texture for the pattern will be used.
** {{cd|block.shelf_mushroom.place}}
*** {{cd|palette}} – optional palette ID, a replacement palette to use if this entry matches.
** {{cd|block.shelf_mushroom.step}}
**** If not specified, no palette remapping will be applied to the texture.
** {{cd|block.shelf_mushroom.bounce}}
*** The first matching entry will always be selected.
** {{cd|block.straw_bed.break}}
*** At least one of texture or palette must be defined.
** {{cd|block.straw_bed.break_leave}}
** {{cd|block.straw_bed.step}}
** {{cd|block.straw_bed.place}}
** {{cd|block.straw_bed.hit}}
** {{cd|block.straw_bed.fall}}
** {{cd|entity.cushion.break}}
** {{cd|entity.cushion.place}}
** {{cd|entity.cushion.get_up}}
** {{cd|entity.cushion.sit}}


'''[[Minecraft:Tag (Java Edition)|Tags]]'''
'''Game window and input backend'''
* Biome Tags
* The minimum window size is now 320&times;240 pixels.
** Added {{cd|dappled_forest}} to {{cd|d=and|#is_forest|#is_overworld|#spawns_cold_variant_farm_animals|#has_structure/trial_chambers}} tags.
* Minecraft now uses {{WP|SDL3}} instead of {{WP|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.


* Block Tags
'''[[Minecraft:GUI]]'''
** Added {{cd|red_shrub}} to {{cd|d=and|#replaceable|#replaceable_by_mushrooms}} tags.
* The sub-headings and categories in different tabs of [[Minecraft:Options]] now use a boldface, underlined and centered format, and can now be focused.
** Added {{cd|d=and|red_poplar_leaves|orange_poplar_leaves|yellow_poplar_leaves}} to {{cd|#leaves}} tag.
** Added {{cd|potted_poplar_sapling}} to {{cd|#flower_pots}} tag.
** Added {{cd|#poplar_logs}} to {{cd|#logs_that_burn}} tag.
** Added {{cd|poplar_log}} to {{cd|#overworld_natural_logs}} tag.
** Added {{cd|poplar_planks}} to {{cd|#planks}} tag.
** Added {{cd|poplar_sign}} to {{cd|#standing_signs}} tag.
** Added {{cd|poplar_hanging_sign}} to {{cd|#ceiling_hanging_signs}} tag.
** Added {{cd|poplar_wall_sign}} to {{cd|#wall_signs}} tag.
** Added {{cd|poplar_wall_hanging_sign}} to {{cd|#wall_hanging_signs}} tag.
** Added {{cd|poplar_button}} to {{cd|#wooden_buttons}} tag.
** Added {{cd|poplar_door}} to {{cd|#wooden_doors}} tag.
** Added {{cd|poplar_fence}} to {{cd|#wooden_fences}} tag.
** Added {{cd|poplar_fence_gate}} to {{cd|#fence_gates}} tag.
** Added {{cd|poplar_pressure_plate}} to {{cd|#wooden_pressure_plates}} tag.
** Added {{cd|poplar_sapling}} to {{cd|#saplings}} tag.
** Added {{cd|poplar_shelf}} to {{cd|#wooden_shelves}} tag.
** Added {{cd|poplar_slab}} to {{cd|#wooden_slabs}} tag.
** Added {{cd|poplar_stairs}} to {{cd|#wooden_stair}} tag.
** Added {{cd|poplar_trapdoor}} to {{cd|#wooden_trapdoors}} tag.
** Added {{cd|#wool_slabs}} to {{cd|#slabs}} tag.
** Added {{cd|#wool_stairs}} to {{cd|#stairs}} tag.
** Added {{cd|d=and|#wool_slabs|#wool_stairs}} to {{cd|d=and|#dampens_vibrations|#shears_major_breaking_speed}} tags.
** Renamed tag {{cd|#convertable_to_mud}} to {{cd|#convertible_to_mud}}.
** Removed {{cd|d=and|#nether_carver_replaceables|#overworld_carver_replaceables}} tags.
** Removed {{cd|tuff}} from {{cd|#deepslate_ore_replaceables}} tags.


* Entity Tags
'''[[Minecraft:Game rule]]'''
** Added {{cd|poplar_boat}} to {{cd|#boat}} tag.
* Projectiles used by players in Adventure mode can no longer destroy decorated pots or chorus flowers, and tridents can no longer destroy pointed dripstone, even when the <code>projectiles_can_break_blocks</code> game rule is set to <code>true</code>, unless the projectile carries a <code>can_break</code> component that permits the target block.


* Item Tags
'''[[Minecraft:Instrument definition]]'''
** Added {{cd|d=and|red_poplar_leaves|orange_poplar_leaves|yellow_poplar_leaves}} to {{cd|#leaves}} tag.
* The format of elements in the instrument registry have been updated:
** Added {{cd|#poplar_logs}} to {{cd|#logs_that_burn}} tag.
** Added the {{cd|durability_damage}} field - optional non-negative integer, amount of durability to consume on each use.
** Added {{cd|poplar_planks}} to {{cd|#planks}} tag.
** Updated the {{cd|use_duration}} field - can now be {{cd|0}} for no cooldown.
** Added {{cd|poplar_sign}} to {{cd|#signs}} tag.
** Added {{cd|poplar_hanging_sign}} to {{cd|#hanging_signs}} tag.
** Added {{cd|poplar_button}} to {{cd|#wooden_buttons}} tag.
** Added {{cd|poplar_door}} to {{cd|#wooden_doors}} tag.
** Added {{cd|poplar_fence}} to {{cd|#wooden_fences}} tag.
** Added {{cd|poplar_fence_gate}} to {{cd|#fence_gates}} tag.
** Added {{cd|poplar_pressure_plate}} to {{cd|#wooden_pressure_plates}} tag.
** Added {{cd|poplar_sapling}} to {{cd|#saplings}} tag.
** Added {{cd|poplar_shelf}} to {{cd|#wooden_shelves}} tag.
** Added {{cd|poplar_slab}} to {{cd|#wooden_slabs}} tag.
** Added {{cd|poplar_stairs}} to {{cd|#wooden_stair}} tag.
** Added {{cd|poplar_trapdoor}} to {{cd|#wooden_trapdoors}} tag.
** Added {{cd|poplar_boat}} to {{cd|#boats}} tag.
** Added {{cd|poplar_chest_boat}} to {{cd|#chest_boats}} tag.
** Added {{cd|#wool_slabs}} to {{cd|#slabs}} tag.
** Added {{cd|#wool_stairs}} to {{cd|#stairs}} tag.
** Added {{cd|d=and|#wool_slabs|#wool_stairs}} to {{cd|#dampens_vibrations}} tag.
** Removed {{cd|#brewing_fuel}} tag.
*** The {{cd|brewing_fuel}} item component is now used to identify brewing fuels.
** {{Collapse
|title= Eighteen tags no longer have the function of adding an item like fuel item, due to {{DCL|cooking_fuel}} components
|content=
{{cd|#logs|#bamboo_blocks|#planks|#wooden_stairs|#wooden_slabs|#wooden_trapdoors|#wooden_pressure_plates|#wooden_shelves|#wooden_fences|#fence_gates|#banners|#signs|#hanging_signs|#boats|#wool|#wooden_buttons|#saplings|#wool_carpets|d=and }}
}}
** The tag {{cd|#non_flammable_wood}} no longer prevents an item from being classified as fuel item.


'''[[Minecraft:Textures]]'''
'''[[Minecraft:Item model]]s'''
* Palette Textures
* Added optional {{cd|shade_direction_override}} to block model elements.
** All armor trim palette textures have been moved from {{cd|textures/trim/color_palettes/}} to {{cd|textures/palettes/trim/}}
** Accepted values are cardinal directions ({{cd|down}}, {{cd|up}}, {{cd|north}}, {{cd|south}}, {{cd|west}}, {{cd|east}})
*** The base armor trim palette texture has instead been moved to {{cd|textures/palettes/trim_base.png}}
** When set, this overrides directional shading for the element regardless of face orientation.
** Entity armor trim material textures are no longer generated into the {{cd|minecraft:trims}} atlas with {{cd|paletted_permutations}}, but rather generated on-demand
* Removed {{cd|shade}} from block model elements
*** The base palette id is now specified in a new {{cd|palette}} mcmeta section field
** {{cd|shade_direction_override: "up"}} to get the previous {{cd|shade: false}} behavior.
*** This section has a single field: {{cd|base_palette}} - the base Palette Texture ID to remap from
* Tint source
** Item armor trim material textures are still generated with {{cd|paletted_permutations}} as before
** Removed {{cd|minecraft:map_color}}
** Palette Texture locations in the {{cd|palette_key}} and {{cd|permutations}} fields have been replaced by Palette Texture IDs - i.e. {{cd|<namespace>:<path>}} now resolves to {{cd|<namespace>:textures/palettes/<path>.png}}
*** The {{cd|minecraft:map_color}} component it read no longer exists.
 
'''[[Minecraft:Java_Edition_level_format#level.dat_format|level.dat]]'''
* {{cd|level.dat}} now contains a {{cd|version_history}} list with prior data versions of the file.
 
'''[[Minecraft:Loot function]]s'''
* The {{cd|conditions}} field is now available in all loot functions and has been renamed to {{cd|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 {{cd|minecraft:all_of}} loot condition type.
** The {{cd|function}} field (describing function type) has been renamed to {{cd|type}}.
 
* Changed {{cd|minecraft:enchant_with_levels}}
** The {{cd|levels}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.


* Equipment Assets
* Changed {{cd|minecraft:enchanted_count_increase}}
** A new optional {{cd|trim_palette_replacements}} field controls which trim material palettes should be replaced for this equipment asset (formerly controlled by {{cd|override_armor_assets}} in the trim material)
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
*** Format: map from original Palette ID to a replacement Palette ID


* Block Sprites
* Changed {{cd|minecraft:exploration_map}}
** Added new Block textures:
** The {{cd|map_color}} field has now been removed.
*** {{cd|block/orange_poplar_leaves.png}}
** The function no longer changes the type of the item it is applied to – it now only adds map data to the existing item.
*** {{cd|block/red_poplar_leaves.png}}
*** Previously it required a {{cd|minecraft:map}} and produced a {{cd|minecraft:filled_map}}
*** {{cd|block/yellow_poplar_leaves.png}}
*** 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 {{cd|minecraft:map}} to {{cd|minecraft:filled_map}} (or one of the explorer map items)
*** {{cd|block/poplar_door_bottom.png}}
*** If no matching structure is found, the item is left without a {{cd|minecraft:map_id}} – use {{cd|minecraft:filtered}} with {{cd|minecraft:discard_item}} to drop those, as the vanilla loot tables and villager trades now do.
*** {{cd|block/poplar_door_top.png}}
** The {{cd|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 {{cd|minecraft:structure}} type.
*** {{cd|block/poplar_log_top.png}}
*** {{cd|block/poplar_log.png}}
*** {{cd|block/poplar_planks.png}}
*** {{cd|block/poplar_trapdoor.png}}
*** {{cd|block/stripped_poplar_log.png}}
*** {{cd|block/stripped_poplar_log_top.png}}
*** {{cd|block/poplar_log.png}}
*** {{cd|block/shelf_mushroom_stage0.png}}
*** {{cd|block/shelf_mushroom_stage1.png}}
*** {{cd|block/poplar_hanging_sign.png}}
*** {{cd|block/poplar_sign.png}}
*** {{cd|block/poplar_sapling.png}}
*** {{cd|block/poplar_shelf.png}}
*** {{cd|block/red_shrub.png}}
*** {{cd|block/straw_bed.png}}
*** {{cd|block/straw_bed_particle.png}}


* Item Sprites
* Changed {{cd|minecraft:limit_count}}
** Added new Item textures:
** The {{cd|min}} and {{cd|max}} fields inside {{cd|limit}} structure now accept an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
*** {{cd|item/poplar_door.png}}
** {{cd|limit}} field no longer accepts a single number.
*** {{cd|item/poplar_hanging_sign.png}}
*** {{cd|item/poplar_sign.png}}
*** {{cd|item/poplar_boat.png}}
*** {{cd|item/poplar_chest_boat.png}}
*** Removed {{Code|item/filled_map_markings.png}}
*Map Sprites
**Added new map textures:
***{{Code|abandoned_camp.png}}
***{{Code|ancient_city.png}}
***{{Code|desert_pyramid.png}}
***{{Code|mineshaft.png}}
***{{Code|warm_ocean_ruins.png}}
**The following icons have been updated in order to show player rotation on the map.
***<samp>/player.png</samp>
***<samp>/player_off_limits.png</samp>
***<samp>/player_off_map.png</samp>


* UI Sprites
* Changed {{cd|minecraft:modify_contents}}
** Added new UI textures:
** The {{cd|modifier}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:item_modifier}} type.
*** {{cd|gui/hanging_signs/poplar.png}}
* Changed {{cd|minecraft:set_attributes}}
*** {{cd|gui/signs/poplar.png}}
** Number providers in {{cd|amount}} sub-fields of {{cd|modifiers}} list now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.


* Entity Textures
* Changed {{cd|minecraft:sequence}}
** Added new Entity textures:
** The {{cd|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 {{cd|minecraft:item_modifier}} type.
*** {{cd|entity/boat/poplar.png}}
** Added optional condition field which accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** {{cd|entity/chest_boat/poplar.png}}
** Inline format of {{cd|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 {{cd|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 {{cd|minecraft:item_modifier}} type.
** Can only use an inline definition in a top-level file.
 
* Changed {{cd|minecraft:set_attributes}}
** Number providers in {{cd|amount}} sub-fields of {{cd|modifiers}} list now accept an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
 
* Changed {{cd|minecraft:set_count}}
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.


* Particles
* Changed {{cd|minecraft:set_custom_model_data}}
** Added new Particle textures:
** Elements in the {{cd|floats}} list can now be an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
*** {{cd|orange_poplar_1.png}}
** Elements in the {{cd|colors}} lists can now be an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
*** {{cd|orange_poplar_2.png}}
*** {{cd|orange_poplar_3.png}}
*** {{cd|orange_poplar_4.png}}
*** {{cd|red_poplar_1.png}}
*** {{cd|red_poplar_2.png}}
*** {{cd|red_poplar_3.png}}
*** {{cd|red_poplar_4.png}}
*** {{cd|yellow_poplar_1.png}}
*** {{cd|yellow_poplar_2.png}}
*** {{cd|yellow_poplar_3.png}}
*** {{cd|yellow_poplar_4.png}}
*** {{cd|shelf_mushroom_particle.png}}


'''[[Minecraft:UI]]'''
* Changed {{cd|minecraft:set_damage}}
* Removed the Raw Input mouse setting.
** The {{cd|damage}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
** 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.


'''[[Minecraft:Villager trade definition]]'''
* Changed {{cd|minecraft:set_enchantments}}
* The {{cd|given_item_modifiers}} field has been renamed to {{cd|given_item_modifier}}
** Values in {{cd|enchantments}} map can now be an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** Note: unlike other fields of type {{cd|minecraft:item_modifier}} this field does not support namespaced element or tag IDs.


'''[[Minecraft:World generation]]'''
* Changed {{cd|minecraft:set_loot_table}}
* [[Minecraft:Cave air]] is no longer generated in Nether caves.
** The {{cd|name}} field has been renamed to {{cd|loot_table_id}}
** Removed unused field {{cd|type}}


* Biomes
* Changed {{cd|minecraft:set_ominous_bottle_amplifier}}
** Removed the {{cd|spawners}}, {{cd|spawn_costs}}, and {{cd|creature_spawn_probability}} fields.
** The {{cd|amplifier}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
*** These values have been moved to the new environment attributes.


* Block state providers
* Changed {{cd|minecraft:set_random_dyes}}
** Updated {{cd|minecraft:copy_properties_provider}}
** The {{cd|number_of_dyes}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
*** Renamed field {{cd|source_block_state_provider}} to {{cd|source}}
** Added {{cd|minecraft:random_block_provider}}
*** Returns the default block state for a randomly chosen block.
*** Format:
**** {{cd|blocks}}: block ID, list of block IDs or hash-prefixed block tag, specifying the set of blocks to randomly pick from.
** Changed {{cd|minecraft:rotated_block_provider}}
*** Now works on any block with axis or facing properties.
*** Format:
**** Changed the field {{cd|state}}: Now a block state provider.
**** Added the field {{cd|direction}}: Optional field describing the direction to set.
***** If omitted, a random direction is chosen.


* Carvers
* Changed {{cd|minecraft:set_stew_effect}}
** The {{cd|worldgen/configured_carver}} registry has been renamed to {{cd|worldgen/carver}}
** The {{cd|duration}} field in elements of effects list now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** Updated {{cd|minecraft:cave}} carver type
 
*** All fields previously under the config field have been inlined to the top-level.
* Removed {{cd|minecraft:reference}}
*** Added the {{cd|count}} field - non-negative Int Provider, the number of cave tunnels to create from a seed chunk.
** This function has become obsolete, as any field that takes a function now accepts (among other things) a namespaced ID to other functions.
*** Renamed {{cd|yScale}} to {{cd|room_vertical_radius_multiplier}}
*** Added optional {{cd|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 {{cd|1.0}}
*** Added the {{cd|thickness}} field - non-negative Float Provider, acts as a multiplier for the radius of carved tunnels.
*** Added optional {{cd|weird_thickness_bias}} field - Boolean
**** If {{cd|true}}, thickness will be multiplied by, with a 10% chance: <math>random(0, 1) * random(0, 3) + 1</math>
**** If not specified, defaults to {{cd|false}}
*** Removed the {{cd|replaceable}} field, carvers will replace any block (excluding features).
*** Removed the {{cd|lava_level}} field, fluids are now always selected by the {{cd|aquifer}} or {{cd|sea_level}} configuration in the dimension.
*** Removed the {{cd|debug_settings}} field.
** Updated {{cd|minecraft:canyon}} carver type
*** All fields previously under the config field have been inlined to the top-level.
*** Renamed and moved {{cd|yScale}} to {{cd|shape.y_scale}}
*** Removed the {{cd|replaceable}} field, carvers will replace any block (excluding features).
*** Removed the {{cd|lava_level}} field, fluids are now always selected by the {{cd|aquifer}} or {{cd|sea_level}} configuration in the dimension.
*** Removed the {{cd|debug_settings}} field.
** Removed {{cd|minecraft:nether_cave}} carver type
*** Replaced by the {{cd|minecraft:cave}} carver type


* [[Minecraft:Density function]]s
'''[[Minecraft:Loot table]]s'''
** Updated {{cd|constant}}
* Multiple block loot tables now reference predicates for checking if a tool has [[Minecraft:Silk Touch]] and is [[Minecraft:shears]] instead of inlining a copy of those checks.
*** {{cd|argument}} has been renamed to {{cd|value}}
* The {{cd|rolls}} and {{cd|bonus_rolls}} fields now accept an inline value or a namespaced ID.
** Updated {{cd|add}}, {{cd|mul}}, {{cd|min}}, and {{cd|max}}
** {{cd|rolls}} field is {{cd|minecraft:context_int_provider}}
*** {{cd|argument1}} has been renamed to {{cd|left}}.
** {{cd|bonus_rolls}} field is {{cd|minecraft:context_float_provider}}
*** {{cd|argument2}} has been renamed to {{cd|right}}.
* Loot table types that have a dedicated registry now support registry element and tag references.
** Updated {{cd|abs}}, {{cd|square}}, {{cd|cube}}, {{cd|half_negative}}, {{cd|quarter_negative}}, {{cd|squeeze}}, {{cd|interpolated}}, {{cd|flat_cache}}, {{cd|cache_2d}}, {{cd|cache_once}}, {{cd|cache_all_in_cell}}, and {{cd|blend_density}} density functions
** 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
*** {{cd|argument}} has been renamed to {{cd|input}}.
** Affected types:
** Updated {{cd|shift_a}}, {{cd|shift_b}}, and {{cd|shift}}
*** {{cd|minecraft:advancement}}
*** {{cd|argument}} has been renamed to {{cd|noise}}
*** {{cd|minecraft:item_modifier}}
** Added {{cd|sub}}
*** {{cd|minecraft:loot_table}}
*** Performs subtraction between two arguments.
*** {{cd|minecraft:number_provider}}
*** Format: object with fields:
*** {{cd|minecraft:predicate}}
**** {{cd|left}} - Density Function, the left-hand side of the operation
*** {{cd|minecraft:recipe}}
**** {{cd|right}} - Density Function, the right-hand side of the operation
*** {{cd|minecraft:slot_source}}
** Added {{cd|div}}
** Existing {{cd|reference}} types for predicates, item modifiers and slot sources are now obsolete and have been removed
*** Performs division between two arguments.
 
*** Format: object with fields:
* Loot table types
**** {{cd|left}} - Density Function, the left-hand side of the operation.
** Added {{cd|minecraft:command_compute_default}} loot table type
**** {{cd|right}} - Density Function, the right-hand side of the operation.
*** Currently used for {{cmd|compute default}} command.
** Updated {{cd|reciprocal}}
*** It takes the following parameters:
*** Renamed from {{cd|invert}}
**** {{cd|origin}}, the position at which the command was executed
** Added {{cd|negate}}
**** {{cd|this}} entity, the {{cd|@s}} entity of the command being executed (optional)
*** Negates the input.  
 
*** Format: object with fields:
** Added {{cd|minecraft:command_compute_entity}} loot table type
**** {{cd|input}} - Density Function, the function to negate.
*** Currently used for {{cmd|compute entity}} command.
** Added {{cd|lerp}}
*** It takes the following parameters:
*** Performs (unclamped) linear interpolation between two arguments based on an alpha.
**** Everything included in {{cd|minecraft:command_compute_default}}
*** Format: object with fields:
**** {{cd|target_entity}}, entity selected by the selector given in a command
**** {{cd|alpha}} - Density Function, the interpolation factor (0=first, 1=second)
 
***** Any value outside of {{cd|[0; 1]}} will extrapolate
** Added {{cd|minecraft:command_compute_position}} loot table type
**** {{cd|first}} - Density Function, the value at {{cd|alpha{{=}}0}}
*** Currently used for {{cmd|compute block}} command.
**** {{cd|second}} - Density Function, the value at {{cd|alpha{{=}}1}}
*** It takes the following parameters:
** Added {{cd|floor}}, {{cd|round}}, {{cd|ceil}}, and {{cd|truncate}}
**** Everything included in {{cd|minecraft:command_compute_default}}
*** Rounds the input value to an integer multiple of a given function in a type-dependent direction:
**** {{cd|block_entity}}, the block entity of the block at the position given in a command
**** {{cd|floor}}: rounds towards negative infinity.
**** {{cd|block_state}}, the current state of the block at the position given in a command
**** {{cd|round}}: rounds towards the nearest integer (ties round up).
 
**** {{cd|ceil}}: rounds towards positive infinity.
** Added {{cd|minecraft:container_process}} loot table type
**** {{cd|truncate}}: rounds towards 0.
*** Currently used to evaluate cooking and brewing fuel values.
*** Format: object with fields:
*** It takes the following parameters:
**** {{cd|input}} - Density Function, the input to round.
**** {{cd|container}}, the container or inventory being evaluated.
**** {{cd|multiple}} - Density Function, the output will be rounded to an integer multiple of this value.
**** {{cd|block_entity}}, the block entity being fueled.
***** If not specified, defaults to constant {{cd|1}} (i.e. rounding to integer).
**** {{cd|block_state}}, the current state of the block being fueled.
** Added {{cd|beardifier}}
**** {{cd|origin}}, the location of the block being fueled.
*** 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
** Changed {{cd|minecraft:advancement_location}} loot table type
** Added {{cd|pow}}
*** Block entities are now available in context and can be matched by conditions like {{cd|minecraft:match_block}}
*** Raises the given base value to an exponent.
 
*** Format: object with fields:
** Changed {{cd|minecraft:block_interact}} loot table type
**** {{cd|base}} – density function, the base value.
*** {{cd|origin}} is now available in context, as the center of the block being interacted with.
**** {{cd|exponent}} – density function, the exponent.
 
** Added {{cd|sqrt}}
* Loot pool entries
*** Computes the square root of the given input.
** The {{cd|conditions}} field in loot pool entries has been renamed to condition and now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Format: object with fields:
** The {{cd|functions}} field in loot pool entries has been renamed to modifier and now accepts an inline value (including list as a short form of {{cd|minecraft:sequence}}) or a namespaced ID of a {{cd|minecraft:item_modifier}} type.
**** {{cd|input}} – density function, the value for which to compute the square root.
*** This field is now present on all loot entries, including previously omitted {{cd|minecraft:alternatives}}, {{cd|minecraft:sequence}} and {{cd|minecraft:group}}.
** Added {{cd|log}}
** Changed {{cd|minecraft:tag}} loot pool entry
*** Computes the natural logarithm of the given input.
*** The {{cd|name}} field has been renamed to {{cd|items}} and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:item}} type.
*** Format: object with fields:
** Changed {{cd|minecraft:loot_table}} loot pool entry
**** {{cd|input}} – density function, the value for which to compute the natural logarithm.
*** The {{cd|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 {{cd|minecraft:loot_table}} type.
** Added {{cd|sign}}
*** Added {{cd|expand}} field, working the same as in {{cd|minecraft:tag}} pool entry:
*** Computes the sign of the input:
**** If {{cd|true}}, each entry inside tag will be added to outer pool, with weights equal to weight of this entry.
**** If the input is positive, returns {{cd|1}}
**** If {{cd|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.
**** If the input is 0, returns {{cd|0}}
 
**** If input is negative, returns {{cd|-1}}
'''[[Minecraft:Minecraft Server Management Protocol]] 3.1.0'''
*** Format: object with fields:
* Added notifications indicating when the server performs a full world upgrade on startup.
**** {{cd|input}} – density function, the value of which to compute the sign.
** {{cd|minecraft:notification/world/upgrade_started}}
** Added {{cd|distance_to_point}}
** {{cd|minecraft:notification/world/upgrade_progress}}
*** Computes the distance to a fixed point using the specified distance function.
** {{cd|minecraft:notification/world/upgrade_finished}}
*** Format: object with fields:
** {{cd|minecraft:notification/world/upgrade_failed}}
**** {{cd|point}} – array of 3 integers in form {{cd|[x, y, z]}}, the point to compute distance to.
 
**** {{cd|metric}} – one of:
'''[[Minecraft:Number provider]]s'''
***** {{cd|euclidean}} – i.e. <math>sqrt(dx^2 + dy^2 + dz^2)</math>
* The {{cd|type}} field always needs to be specified explicitly when using an inline number provider (it was previously defaulting to {{cd|minecraft:uniform}}).
***** {{cd|euclidean_squared}} – i.e. <math>dx^2 + dy^2 + dz^2</math>
* The {{cd|minecraft:number_provider}} and {{cd|minecraft:number_provider_type}} registries have been split into separate registries for integer calculations ({{cd|minecraft:context_int_provider}}, {{cd|minecraft:context_int_provider_type}}) and float calculations ({{cd|minecraft:context_float_provider}}, {{cd|minecraft:context_float_provider_type}}).
***** {{cd|manhattan}} – i.e. <math>abs(dx) + abs(dy) + abs(dz)</math>
* Number provider types and values have been split into two separate registries: {{cd|minecraft:context_int_provider}} and {{cd|minecraft:context_float_provider}} to avoid accidental loss of precision and range due to mixing of float and integer operations.{{note|Those new types should not be confused with already existing {{cd|minecraft:int_provider_type}} and {{cd|minecraft:float_provider_type}}, which are context-free providers, used mostly for world generation.}}
***** {{cd|chebyshev}} – i.e. <math>max(abs(dx), abs(dy), abs(dz))</math>
 
** Updated {{cd|gradient}} (renamed from {{cd|y_clamped_gradient}})
* Following number provider types have been split into integer and float variants:
*** Format: object with fields:
** {{cd|minecraft:constant}}
**** {{cd|axis}} – {{cd|x}}, {{cd|y}}, or {{cd|z}}, the axis over which to define this gradient.
** {{cd|minecraft:uniform}}
**** {{cd|tiling}} – one of:
** {{cd|minecraft:storage}}
***** {{cd|clamp_to_edge}} – outside the gradient boundaries, the value at the nearest boundary will be used.
** {{cd|minecraft:sum}}  
***** {{cd|repeat}} – the gradient will be repeated outside its boundaries.
*** renamed to {{cd|minecraft:add}}
***** {{cd|mirrored_repeat}} – the gradient will be repeated such that odd repetitions are mirrored, ensuring continuity between repetitions.
** {{cd|minecraft:product}}  
**** {{cd|from_coordinate}} – int, the coordinate at which the gradient starts.
*** renamed to {{cd|minecraft:mul}}
**** {{cd|to_coordinate}} – int, the coordinate at which the gradient ends.
** {{cd|minecraft:minimum}}  
***** Must not be equal to {{cd|from_coordinate}}
*** renamed to {{cd|minecraft:min}}
**** {{cd|from_value}} – float, the value at which the gradient starts.
** {{cd|minecraft:maximum}}  
**** {{cd|to_value}} – float, the value at which the gradient ends.
*** renamed to {{cd|minecraft:max}}
** Added {{cd|slice}}
** {{cd|minecraft:average}}  
*** Removes a dimension from the input domain by taking a "slice" along an axis with a specific coordinate. For example, with {{cd|axis{{=}}y}} and {{cd|coordinate{{=}}0}}, a slice will be taken along the XZ plane, with all values sampled at {{cd|y{{=}}0}}.
*** renamed to {{cd|minecraft:avg}}
*** Format: object with fields:
** {{cd|minecraft:weighted_list}}
**** {{cd|axis}} – {{cd|x}}, {{cd|y}}, or {{cd|z}}, the axis to remove.
** {{cd|minecraft:conditional}}
**** coordinate – int, the fixed coordinate to be passed to the input function.
** {{cd|minecraft:number_dispatcher}}
**** input – density function, the input function.
** {{cd|minecraft:environment_attribute}}
** Changed {{cd|end_outer_islands}}
* The following number providers types are now only available in integer variant:
*** Renamed from {{cd|end_islands}}. No longer computes the density of the main island.
** {{cd|minecraft:binomial}}
 
** {{cd|minecraft:score}}
* Int Providers
* The following number providers types are now only available in float variant:
** Added {{cd|minecraft:very_biased_to_bottom}} Int provider type
** {{cd|minecraft:enchantment_level}}
*** Picks a random value in the provided range, with a quadratic bias towards the minimum value.
* The following vanilla number providers have been migrated to {{cd|minecraft:context_int_provider}} registry:
*** Format: object with fields:
** {{cd|minecraft:compostable/low}}
**** {{cd|min_inclusive}} - Integer, the minimum selected value (inclusive).
** {{cd|minecraft:compostable/low_medium}}
**** {{cd|max_inclusive}} - Integer, the maximum selected value (inclusive).
** {{cd|minecraft:compostable/medium}}
 
** {{cd|minecraft:compostable/medium_high}}
* Material Condition Registry
** {{cd|minecraft:compostable/always_add_one}}
** A new data-driven registry has been introduced, loaded from <samp>data/<namespace>/worldgen/material_condition/<id>.json<samp>.
** {{cd|minecraft:cooking/time_bamboo}}
** Elements in this registry define a condition that can be referenced within a Material Rule pipeline (e.g. testing biome or surface depth).
** {{cd|minecraft:cooking/time_wool_slabs}}
** The format is identical to that which was formerly written within the condition Material Rule type, with the following extension:
** {{cd|minecraft:cooking/time_wool_carpets}}
*** Material Conditions can also now be specified as an ID reference to an element in the {{cd|worldgen/material_condition}} registry.
** {{cd|minecraft:cooking/time_dry_plants}}
** {{cd|minecraft:cooking/time_wood_items_extra_small}}
** {{cd|minecraft:cooking/time_wool}}
** {{cd|minecraft:cooking/time_wood_slabs}}
** {{cd|minecraft:cooking/time_wood_items_large}}
** {{cd|minecraft:cooking/time_wood_items_small}}
** {{cd|minecraft:cooking/time_roots}}
** {{cd|minecraft:cooking/time_wood_blocks}}
** {{cd|minecraft:cooking/time_hanging_signs}}
** {{cd|minecraft:cooking/time_boats}}
** {{cd|minecraft:cooking/time_coal}}
** {{cd|minecraft:cooking/time_blaze_rod}}
** {{cd|minecraft:cooking/time_dried_kelp_block}}
** {{cd|minecraft:cooking/time_coal_block}}
** {{cd|minecraft:cooking/time_lava_bucket}}
** {{cd|minecraft:brewing/uses_default}}
* The following vanilla number providers have been migrated to {{cd|minecraft:context_float_provider}} registry:
** {{cd|minecraft:cooking/speed_default}}
** {{cd|minecraft:cooking/normal_speed_multiplier}}
** {{cd|minecraft:cooking/fast_speed_multiplier}}
** {{cd|minecraft:brewing/speed_default}}
* The following vanilla number providers have been removed:
** {{cd|minecraft:cooking/normal_burn_time_multiplier}} (replaced by {{cd|minecraft:cooking/normal_burn_time_reduction_factor}})
** {{cd|minecraft:cooking/fast_burn_time_multiplier}} (replaced by {{cd|minecraft:cooking/fast_burn_time_reduction_factor}})
 
* Added vanilla number providers
** {{cd|minecraft:cooking/time_bamboo}}
*** Returns the burn time in ticks for bamboo and scaffolding.
** {{cd|minecraft:cooking/time_blaze_rod}}
*** Returns the burn time in ticks for blaze rods.
** {{cd|minecraft:cooking/time_boats}}
*** Returns the burn time in ticks for boats.
** {{cd|minecraft:cooking/time_coal}}
*** Returns the burn time in ticks for coal.
** {{cd|minecraft:cooking/time_coal_block}}
*** Returns the burn time in ticks for coal blocks.
** {{cd|minecraft:cooking/time_dried_kelp_block}}
*** Returns the burn time in ticks for dried kelp blocks.
** {{cd|minecraft:cooking/time_dry_plants}}
*** Returns the burn time in ticks for various dry plants.
** {{cd|minecraft:cooking/time_hanging_signs}}
*** Returns the burn time in ticks for hanging signs.
** {{cd|minecraft:cooking/time_lava_bucket}}
*** Returns the burn time in ticks for lava buckets.
** {{cd|minecraft:cooking/time_roots}}
*** Returns the burn time in ticks for mangrove roots.
** {{cd|minecraft:cooking/time_wood_blocks}}
*** Returns the burn time in ticks for wood blocks.
** {{cd|minecraft:cooking/time_wood_items_extra_small}}
*** Returns the burn time in ticks for very small wood items such as buttons.
** {{cd|minecraft:cooking/time_wood_items_large}}
*** Returns the burn time in ticks for large wood items such as doors.
** {{cd|minecraft:cooking/time_wood_items_small}}
*** Returns the burn time in ticks for small wood items such as bows.
** {{cd|minecraft:cooking/time_wood_slabs}}
*** Returns the burn time in ticks for wood slabs.
** {{cd|minecraft:cooking/time_wool}}
*** Returns the burn time in ticks for most wool blocks.
** {{cd|minecraft:cooking/time_wool_carpets}}
*** Returns the burn time in ticks for wool carpets.
** {{cd|minecraft:cooking/time_wool_slabs}}
*** Returns the burn time in ticks for wool slabs and cushions.
** {{cd|minecraft:cooking/speed_default}}
*** Returns the default speed multiplier for cooking fuel.
** {{cd|minecraft:brewing/speed_default}}
*** Returns the default speed multiplier for brewing fuel.
** {{cd|minecraft:brewing/uses_default}}
*** Returns the default number of brews provided by brewing fuel.


* Material Rule Registry
* Changed {{cd|minecraft:number_dispatcher}}
** A new data-driven registry has been introduced, loaded from <samp>data/<namespace>/worldgen/material_rule/<id>.json</samp>.
** Fields:
** Elements in this registry define a pipeline for selecting what base block to place in the world at a given position.
*** {{cd|cases}} - a list of cases in the order that the dispatcher will try to execute them.
** The format is identical to that which was formerly written in the {{cd|surface_rule}} field within noise settings files, with the following extensions:
**** Fields:
*** Material rules can now be specified either inline (as previously), or as an ID reference to an element in the {{cd|worldgen/material_rule}} registry.
***** {{cd|condition}} - an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Material conditions can also now be specified as an ID reference to an element in the {{cd|worldgen/material_condition}} registry.
***** {{cd|number_provider}} - an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type which is executed if the condition is fulfilled.
*** {{cd|default}} - an optional inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
**** Defaults to a constant 0 if omitted.
 
* Changed {{cd|minecraft:conditional_value}}
** Fields:
*** {{cd|conditions}} - an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** {{cd|on_true}} - an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type which is executed if its condition is fulfilled.
*** {{cd|on_false}} - an optional inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
**** Defaults to a constant 0 if omitted.


* [[Minecraft:Noise]]s
* Changed {{cd|minecraft:weighted_list}}
** The format of noises (defined in the <samp>worldgen/noise</samp> registry, or inline in noise-based block state providers) has been updated.
** Fields:
** Noises define a fractal brownian motion configuration with the following properties:
*** {{cd|distribution}} - a list of objects with the following fields.
*** Produces output values (approximately) fitting a normal distribution.
**** Fields:
*** Unless otherwise specified, fits the output amplitude to {{cd|[-1; 1]}}
***** {{cd|data}} - an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
**** 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.
***** {{cd|weight}} - a positive integer
*** Parameterized by {{cd|persistence{{=}}0.5}}, {{cd|lacunarity{{=}}2.0}}
 
**** i.e. between each octave, the amplitude is halved and the frequency doubled.
* Changed {{cd|minecraft:uniform}}
*** Has stable seeding such that an octave can be boosted, muted, or added without affecting the rest of the octaves.
** The {{cd|min}} and {{cd|max}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** Renamed {{cd|firstOctave}} to {{cd|base_octave}}.
 
*** Added {{cd|base_amplitude}} – non-negative float, a scale factor to apply to the noise output.
* Changed {{cd|minecraft:binomial}}
**** If not specified, defaults to {{cd|1.0}}.
** The {{cd|n}} and {{cd|p}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** Added {{cd|octave_count}} – integer between {{cd|1}} and {{cd|32}}, the number of octaves to sample.
 
*** Added normalize – boolean, or {{cd|"legacy"}}, controls how the output amplitude should be normalized.
* Changed {{cd|minecraft:sum}}
**** If {{cd|true}}, {{cd|base_amplitude}} is the expected amplitude of the output (i.e. 99.7% of all samples in {{cd|[-base_amplitude; base_amplitude]}})
** The {{cd|summands}} field was renamed to {{cd|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 {{cd|minecraft:number_provider}} type.
**** If {{cd|false}}, {{cd|base_amplitude}} is the amplitude of the first octave.
** Now requires at least one operand.
**** If {{cd|"legacy"}}, inherits the same normalization behavior as expressed by the previous format.
** When used in integer mode, integer mode is used for intermediate steps as well.
***** This would generally fit to a range smaller than expected.
 
**** If not specified, defaults to {{cd|true}}.
* Changed {{cd|minecraft:mod}} float provider type:
**** Note: normalization is not affected by the {{cd|amplitude_modifiers}} field – as such, modifying the amplitude of a single octave will not affect the amplitude of others.
** Now uses standard modulus instead of floor modulus, matching the int variant.
*** Renamed {{cd|amplitudes}} to {{cd|amplitude_modifiers}} – list of floats, a scaling factor to apply to each octave.
* Changed {{cd|minecraft:pow}} float provider type:
**** The number of elements in this list must match {{cd|octave_count}}.
** Raising 0 to the power of 0 will now cause an error and halt computation, matching the int variant.
**** 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 {{cd|1.0}}.


* Placement Modifiers
'''[[Minecraft:Options]]'''
** Changed {{cd|minecraft:offset}} placement modifier
* The Online button used to access the Online Options screen will now always be shown in the Options menu.
*** Renamed from {{cd|random_offset}}.
* On macOS, Exclusive Fullscreen is now available again.
*** Format:
* On macOS, added a "Menu/Dock Visibility" option in Video Settings, which controls whether the macOS Menu bar and Dock can be revealed by moving the mouse to the edge of the screen while in fullscreen.
**** Removed the fields {{cd|xz_spread}} and {{cd|y_spread}}.
* The cursor is now confined to the window while Exclusive Fullscreen is active.
**** Added the fields {{cd|x}}, {{cd|y}}, {{cd|z}}: Integer providers between -16 and {{cd|16}} specifiying the axis-specific offset.
* The sub-headings and categories in the [[Minecraft:Game rule]]s menu can now be focused for narration.
** Added {{cd|minecraft:cuboid}}
*** Repeats a feature in a cuboid shape.
*** Added fields:
**** {{cd|xz_size}}: int provider between {{cd|1}} and {{cd|16}} representing the size of the cuboid along {{cd|x}} and {{cd|z}} axes.
**** {{cd|y_size}}: int provider between {{cd|1}} and {{cd|16}} representing the size of the cuboid along the {{cd|y}} axis.
**** {{cd|include_interior}}: optional boolean (default {{cd|true}}) for whether to place interior blocks of the cuboid.
**** {{cd|include_edges}}: optional boolean (default {{cd|true}}) for whether to place edge blocks of the cuboid.
***** Setting this to {{cd|false}} generates a somewhat "rounded" cuboid.
** Added {{cd|minecraft:random_chance}}
*** Gates the feature being placed behind a random chance.
*** Format:
**** {{cd|chance}}: float value between {{cd|0}} and {{cd|1}} representing the chance that the feature gets placed.


* Rule Tests
'''[[Minecraft:Panorama]]'''
** These are the predicates used by ore features ({{cd|targets[].target}}) and rule structure processors ({{cd|rules[].input_predicate}} and {{cd|rules[].location_predicate}}).
* Updated the panorama to reflect [[Minecraft:Wilderness Bound]], showing the new Dappled Forest biome with an Abandoned Camp.
** Added rule test type {{cd|minecraft:height_match}}
*** Checks the y-level of a block, returning {{cd|true}} only if it is greater than or equal to {{cd|min_inclusive}} and less than or equal to {{cd|max_inclusive}}.
*** Format: object with fields:
**** {{cd|min_inclusive}} – int, the minimum y value of allowed blocks (inclusive).
**** {{cd|max_inclusive}} – int, the maximum y value of allowed blocks (inclusive).
** Added rule test type {{cd|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:
**** {{cd|rules}} - list of Rule Tests, the rules to test the block against.
** Added {{cd|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:
**** {{cd|rules}} – list of rule tests, the rules to test the block against.
** Added {{cd|minecraft:not}}
*** This checks a rule test for whether it returns false for a given block.
*** Format: object with fields:
**** {{cd|rule}} – rule test, the rule to test the block against.


* Structure Placements
'''[[Minecraft:Particles]]'''
** Added {{cd|minecraft:dimension_origin}}
* Falling leaves particles no longer appear for [[Minecraft:spruce leaves]].
** New structure placement that places a single instance of the structure at the dimension origin.
 
*** The dimension origin is defined as the {{cd|spawn_target}} for noise settings based dimensions, otherwise Chunk (0, 0).
'''[[Minecraft:Predicate]]'''
** No additional fields.
* The {{cd|condition}} field (describing predicate type) has been renamed to {{cd|type}}.
 
 
* [[Minecraft:Template pool|Structure pool element]]s
* Changed {{cd|minecraft:all_of}}
** Changed {{cd|minecraft:feature_pool_element}}
** The {{cd|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 {{cd|minecraft:predicate}} type.
*** Can now connect to jigsaw blocks with any target name, instead of just {{cd|minecraft:bottom}}.
** Note: values of this type can no longer be shortened to a single list, a full object with type {{cd|minecraft:all_of}} needs to be used explicitly.
 
 
* Vertical Anchors
* Changed {{cd|minecraft:any_of}}
** Added a new option for vertical Anchors: {{cd|relative_to_sea_level}}
** The {{cd|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 {{cd|minecraft:predicate}} type.
*** Specifies an offset to the sea level of the dimension.
 
 
* Changed {{cd|minecraft:damage_source_properties}}
=== Misc ===
** The {{cd|predicate.tags.id}} field now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{cd|minecraft:damage_type}} type.
This version contains the model for <code>straw_bed_head</code> twice, once in the correct spot of <code>assets/minecraft/models/block/straw_bed_head.json</code> and another misplaced inside of <code>assets/minecraft/textures/block/straw_bed_head.json</code>
 
 
* Changed {{cd|minecraft:entity_scores}}
== Fixes ==
** The {{cd|min}} and {{cd|max}} fields inside values of scores map now accept an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
{{fixes|project=MC|fixedin=26.3 Snapshot 1,26.3 Snapshot 2,26.3 Snapshot 3,26.3 Snapshot 4,26.3 Snapshot 5,26.3 Snapshot 6,26.3 Snapshot 7
** {{cd|scores}} field itself now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type (previously only integers were allowed).
|;old
 
|4|Item drops sometimes appear at the wrong location.
* Changed {{cd|minecraft:inverted}}
|2157|Particles emitted from dragon eggs when teleporting do not point in the correct direction.
** The {{cd|term}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
|5269|Updating a server's address in the multiplayer menu does not update its status.
 
|40597|The interaction of Minecraft's built-in fullscreen mode and macOS fullscreen can glitch the game window.
* Changed {{cd|minecraft:random_chance}}
|46421|You cannot use nether portals, end portals, and end gateways while in Spectator mode.
** The {{cd|chance}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
|51859|The line spacing of text within all hover tooltips is larger between the first and second lines.
 
|58061|Endermen can teleport onto signs.
* Changed {{cd|minecraft:time_check}}
|73162|Breaking an entity that instantly breaks sometimes destroys the block behind it in Creative mode.
** The {{cd|min}} and {{cd|max}} fields inside value structure now accept an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
|91006|Some entities lose their name when placed/broken.
** {{cd|value}} field itself now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type (previously only integers were allowed).
|102732|Arrows can visually bounce off of entities that don't wear a shield.
 
|110989|{{cmd|spreadplayers}} considers signs to be a valid block to be spread onto.
* Removed {{cd|minecraft:reference}}
|112580|Structure blocks' GUI does not pause the game in singleplayer.
** This condition has become obsolete, as any field that takes a loot condition now accepts (among other things) a namespaced ID to other conditions.
|112744|The {{cd|Team}} NBT tag only exists for living entities.
 
|113006|Items reeled in with fishing rods do not move smoothly but appear to teleport.
* Removed {{cd|minecraft:value_check}}
|116286|{{cmd|spreadplayers}} can spread entities on structure void.
** This condition has been split into integer and float variants.
|121278|Keybindings (e.g. {{keys|Ctrl+A}}) are being mapped to the US keyboard layout even if you're using another layout.
 
|121375|The {{keys|cmd}} key on macOS is displayed as "Win" in the key binds screen.
* Added vanilla predicates
|122717|Command success messages for some commands include unaffected entities, unlike the command result.
** New entries added to previously empty-in-vanilla {{cd|predicate}} registry:
|133407|Keybinds switch when upgrading to 1.13 if not using a QWERTY keyboard.
*** {{cd|minecraft:tool/can_silk_touch}}
*** {{cd|minecraft:tool/can_shear}}
*** {{cd|minecraft:block/fast_cooking}}
 
* Potion predicates
** The {{cd|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:
*** {{cd|potions}} – A list of potion types or a potion tag to match.
*** {{cd|effects}} – A collection predicate of {{cd|mob_effects}} predicates to match.
**** The collection predicate format is as follows:
***** {{cd|contains}} – A list of {{cd|mob_effects}} predicates to match.
***** {{cd|count}} – A list of options for matching a specific number of mob effect predicates, which follow the same format as {{cd|minecraft:effects}} entity sub-predicate.
****** {{cd|test}} – The {{cd|mob_effects}} predicate to match.
****** {{cd|count}} – The number of matches required, or with {{cd|min}} and {{cd|max}} will match a range of counts.
***** {{cd|size}} – Require the mob effects list to have a specific size, or with {{cd|min}} and {{cd|max}} will match a range of sizes.
** The {{cd|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:
<syntaxhighlight lang="json">
    {
        "minecraft:<effect type>": {
          "duration": "<integer bounds representing a duration in ticks>",
          "amplifier": "<integer bounds>",
          "ambient": true/false,
          "visible": true/false
        }
    }
</syntaxhighlight>
* Example of matching on several different effects and criteria:
<syntaxhighlight lang="json">
      "effects": {
        "minecraft:jump_boost": {
          "duration": 3600,
          "amplifier": 5,
          "ambient": true,
          "visible": true
        },
        "minecraft:speed": {
          "duration": {
            "min": 360,
            "max": 3600
          },
          "amplifier": {
            "min": 2
          }
        },
        "minecraft:resistance": {}
      }
</syntaxhighlight>
 
* Added {{cd|minecraft:match_block}} condition type
** Matches block state and optionally block entity data and components (if present).
** Fields (same as elements of {{cd|minecraft:can_place_on}} components):
*** {{cd|blocks}} – optional block id, list of namespaced block IDs, or hash-prefixed block tag to match.
*** {{cd|state}}: optional map of block state property keys to values to match.
*** {{cd|nbt}}: optional block entity NBT to match.
**** match will fail if this field is present, but block entity is not available in context.
*** {{cd|components}} – optional map of exact components to match.
**** match will fail if this field is present, but block entity is not available in context.
*** {{cd|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 {{cd|minecraft:block_state_property}} condition type
** This has been fully replaced by {{cd|minecraft:match_block}}
 
'''[[Minecraft: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.
 
'''[[Minecraft:Recipe (Java Edition)|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 {{cd|minecraft:cooking/speed_default}} number provider used by the furnace fuel components.
 
* Cooking Recipes
** The {{cd|cookingtime}} field of all cooking recipes is no longer optional.
** Custom [[Minecraft:smoker]] and [[Minecraft:blast furnace]] recipes should be updated accordingly, by setting {{cd|cookingtime}} to twice the previous value.
** If a custom cooking recipe was previously relying on the default {{cd|cookingtime}} value, {{cd|200}} can be used to maintain the same timing.
 
* Potion brewing recipes
** Potion brewing recipes are now data-driven. New recipes can be added via [[Minecraft:data pack]]s, and vanilla recipes may be modified.
** Brewing recipes use the <code>minecraft:brewing</code> type.
** The main contents are:
*** <code>input</code> – A potion ingredient with a required <code>item</code> field and an optional <code>potion_contents</code> field using a <code>minecraft:potion_contents</code> data component predicate.
*** <code>reagent</code> – A potion ingredient with a required <code>item</code> field and an optional <code>potion_contents</code> field using a <code>minecraft:potion_contents</code> data component predicate.
*** <code>output</code> – item stack, the resulting item.
** Example of a vanilla recipe:
<syntaxhighlight lang="json">
{
  "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"
  }
}
</syntaxhighlight>
* Any items may be used in any of the 3 slots, e.g.:
<syntaxhighlight lang="json">
{
  "type": "minecraft:brewing",
  "input": { "item": "minecraft:bucket" },
  "output": { "id": "minecraft:sulfur_cube_bucket" },
  "reagent": { "item": "minecraft:potent_sulfur" }
}
</syntaxhighlight>
 
'''Rendering'''
* Terrain blocks are now rendered with MultiDrawIndirect on supported devices.
 
'''[[Minecraft:Resource pack]]'''
* The version is now {{cd|97.1}}.
 
'''[[Minecraft:Server]]s'''
* Some log lines that server software might look out for have been removed.
** The Minecraft Server Management Protocol can be used instead.
 
'''[[Minecraft:Server properties]]'''
* The {{cd|white-list}} property is now {{cd|true}} by default.
 
'''[[Minecraft: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:
*** <samp>core/oit_composite.fsh</samp>
*** <samp>core/oit_depth_bounds_cull.fsh</samp>
*** <samp>include/oit.glsl</samp>
*** <samp>include/oit_add_transmittance.glsl</samp>
*** <samp>include/oit_common.glsl</samp>
*** <samp>include/oit_depth_bounds.glsl</samp>
*** <samp>include/oit_depth_sample.glsl</samp>
*** <samp>include/oit_sample.glsl</samp>
** Extracted the texture sampling logic from <samp>core/terrain.fsh</samp> into <samp>include/texture_sampling.glsl</samp>
** Renamed the following core shaders:
*** <samp>core/rendertype_clouds.vsh</samp> -> <samp>core/clouds.vsh</samp>
*** <samp>core/rendertype_clouds.fsh</samp> -> <samp>core/clouds.fsh</samp>
*** <samp>core/rendertype_world_border.vsh</samp> -> <samp>core/world_border.vsh</samp>
*** <samp>core/rendertype_world_border.fsh</samp> -> <samp>core/world_border.fsh</samp>
** Updated core shaders to support order-independent transparency
*** Introduced new defines:
**** {{cd|OIT}} - A boolean indicating if OIT is enabled.
**** {{cd|OIT_ALWAYS_WRITE_DEPTH}} - A boolean indicating that the OIT algorithm should always write depth for the executing pipeline during the depth bounds stag.
**** {{cd|OIT_DEPTH_BOUNDS}} - A boolean indicating if the depth bounds pass is being executed.
**** {{cd|OIT_TRANSMITTANCE}} - A boolean indicating if the transmittance pass is being executed.
**** {{cd|OIT_ACCUMULATE}} - A boolean indicating if the accumulate pass is being executed.
**** {{cd|OIT_ALPHA_ONLY}} - A boolean indicating if either the depth bounds or transmittance pass is being executed.
**** {{cd|OIT_ADDITIVE}} - A boolean indicating that the OIT algorithm should emulate additive blending for the executing pipeline.
**** {{cd|OIT_OPAQUE_PARTS_THRESHOLD}} - A float determining above which alpha threshold a fragment should be considered solid and not go through OIT.
**** {{cd|OIT_WAVELET_RANK}} - An integer internal to the OIT algorithm.
**** {{cd|OIT_COEFF_COUNT}} - An integer internal to the OIT algorithm.
**** {{cd|OIT_COEFF_ATTACHMENT_COUNT}} - An integer internal to the OIT algorithm.
**** {{cd|RENDERPEARL_IS_ZERO_TO_ONE}} - A boolean indicating if the current rendering backend uses the depth range of {{cd|[0, 1]}}, it is available globally to all shaders independently of the OIT setting.
**** {{cd|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.
**** Affected shaders:
***** <samp>core/block.fsh</samp>
***** <samp>core/block.vsh</samp>
***** <samp>core/clouds.fsh</samp>
***** <samp>core/clouds.vsh</samp>
***** <samp>core/entity.fsh</samp>
***** <samp>core/entity.vsh</samp>
***** <samp>core/item.fsh</samp>
***** <samp>core/item.vsh</samp>
***** <samp>core/particle.fsh</samp>
***** <samp>core/position_color.fsh</samp>
***** <samp>core/rendertype_beacon_beam.fsh</samp>
***** <samp>core/rendertype_clouds.fsh</samp>
***** <samp>core/rendertype_crumbling.fsh</samp>
***** <samp>core/rendertype_entity_shadow.fsh</samp>
***** <samp>core/rendertype_lightning.fsh</samp>
***** <samp>core/rendertype_lines.fsh</samp>
***** <samp>core/rendertype_world_border.fsh</samp>
***** <samp>core/terrain.fsh</samp>
***** <samp>core/terrain.vsh</samp>
***** <samp>core/text.fsh</samp>
***** <samp>core/text_background.fsh</samp>
***** <samp>core/world_border.fsh</samp>
***** <samp>core/world_border.vsh</samp>
** Removed the old transparency post chain:
*** <samp>post_effect/transparency.json</samp>
*** <samp>shaders/post/transparency.fsh</samp>
** <samp>core/integrate_depth.fsh</samp> was added and is used to integrate the "3d hud" and always-on-top gizmo depth buffers into the main depth buffer.
** There's a new debug keybind for toggling this functionality on and off, by default set to F3 + X.
* <samp>core/blit_depth.fsh</samp> added as a way to copy contents of depth textures as an alternative to the rendering backend-based copying methods that do not work on some devices.
 
* <samp>terrain.vsh</samp> and <samp>terrain.fsh</samp> shaders are refactored to support multi-draw.
* Some of the members in {{cd|Globals}} and {{cd|DynamicTransforms}} are shuffled to use less memory for those uniform blocks.
* Removed core shaders
** {{cd|core/text_background.fsh}} and {{cd|core/text_background.vsh}} were removed and text background in Text Display Entities is now rendered using the text shaders.
 
* Always-on Post Effect Support
** A resource pack can now define a {{cd|minecraft:end_of_frame}} post effect.
** It will be applied before other post effects, including the ones enabled by the new {{cd|posteffect}} command.
** This post effect is always on as long as the resource pack is loaded, and cannot be controlled by the {{cd|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.
 
* 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 {{cd|#include}} instead of {{cd|#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 {{cd|RENDERPEARL_INSTANCE_INDEX_INCLUDES_BASE_INSTANCE}} – a boolean indicating if {{cd|gl_InstanceIndex}} follows Vulkan or OpenGL ({{cd|gl_InstanceID}}) semantics.
 
'''[[Minecraft:Slot sources]]'''
* Slot sources can now be defined as files inside a datapack, within the {{cd|slot_source}} folder.
** Can be used in commands which take slot sources as arguments.
** Can be used in inline slot sources using the {{cd|minecraft:reference}} type.
* {{cd|minecraft:contents}} is no longer restricted to only selecting non-empty slots.
 
* Added {{cd|minecraft:reference}}
** Uses the referenced slot source.
** Fields:
*** {{cd|name}} - the namespaced id of the slot source.
 
* Changed {{cd|minecraft:slot_range}}
** The {{cd|source}} field has a new valid type container, which sources slots from a container or inventory provided through loot context.
** The {{cd|source}} field is now optional.
*** Defaults to the container source type when absent.
 
* Changed {{cd|minecraft:group}}
** The {{cd|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 {{cd|minecraft:slot_source}} type.
** Inline format of {{cd|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 {{cd|minecraft:slot_source}} type.
*** This format is now available consistently available for all fields of slot source.
** Can only use an inline definition in a top-level file.
 
* Changed {{cd|minecraft:filtered}}
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
 
* Changed {{cd|minecraft:contents}}
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
 
* Changed {{cd|minecraft:limit_slots}}
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
 
* Removed {{cd|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 {{cd|minecraft:slot_source}} type.
 
'''[[Minecraft:Sounds]]'''
* Added new sound events:
** {{cd|block.poplar_leaves.ambient}}
** {{cd|block.poplar_leaves.break}}
** {{cd|block.poplar_leaves.fall}}
** {{cd|block.poplar_leaves.place}}
** {{cd|block.poplar_leaves.step}}
** {{cd|block.poplar_leaves.hit}}
** {{cd|block.red_shrub.break}}
** {{cd|block.red_shrub.place}}
** {{cd|block.shelf_mushroom.break}}
** {{cd|block.shelf_mushroom.fall}}
** {{cd|block.shelf_mushroom.place}}
** {{cd|block.shelf_mushroom.step}}
** {{cd|block.shelf_mushroom.bounce}}
** {{cd|block.straw_bed.break}}
** {{cd|block.straw_bed.break_leave}}
** {{cd|block.straw_bed.step}}
** {{cd|block.straw_bed.place}}
** {{cd|block.straw_bed.hit}}
** {{cd|block.straw_bed.fall}}
** {{cd|entity.cushion.break}}
** {{cd|entity.cushion.place}}
** {{cd|entity.cushion.get_up}}
** {{cd|entity.cushion.sit}}
 
'''[[Minecraft:Tag (Java Edition)|Tags]]'''
* Biome Tags
** Added {{cd|dappled_forest}} to {{cd|d=and|#is_forest|#is_overworld|#spawns_cold_variant_farm_animals|#has_structure/trial_chambers}} tags.
 
* Block Tags
** Added {{cd|red_shrub}} to {{cd|d=and|#replaceable|#replaceable_by_mushrooms}} tags.
** Added {{cd|d=and|red_poplar_leaves|orange_poplar_leaves|yellow_poplar_leaves}} to {{cd|#leaves}} tag.
** Added {{cd|potted_poplar_sapling}} to {{cd|#flower_pots}} tag.
** Added {{cd|#poplar_logs}} to {{cd|#logs_that_burn}} tag.
** Added {{cd|poplar_log}} to {{cd|#overworld_natural_logs}} tag.
** Added {{cd|poplar_planks}} to {{cd|#planks}} tag.
** Added {{cd|poplar_sign}} to {{cd|#standing_signs}} tag.
** Added {{cd|poplar_hanging_sign}} to {{cd|#ceiling_hanging_signs}} tag.
** Added {{cd|poplar_wall_sign}} to {{cd|#wall_signs}} tag.
** Added {{cd|poplar_wall_hanging_sign}} to {{cd|#wall_hanging_signs}} tag.
** Added {{cd|poplar_button}} to {{cd|#wooden_buttons}} tag.
** Added {{cd|poplar_door}} to {{cd|#wooden_doors}} tag.
** Added {{cd|poplar_fence}} to {{cd|#wooden_fences}} tag.
** Added {{cd|poplar_fence_gate}} to {{cd|#fence_gates}} tag.
** Added {{cd|poplar_pressure_plate}} to {{cd|#wooden_pressure_plates}} tag.
** Added {{cd|poplar_sapling}} to {{cd|#saplings}} tag.
** Added {{cd|poplar_shelf}} to {{cd|#wooden_shelves}} tag.
** Added {{cd|poplar_slab}} to {{cd|#wooden_slabs}} tag.
** Added {{cd|poplar_stairs}} to {{cd|#wooden_stair}} tag.
** Added {{cd|poplar_trapdoor}} to {{cd|#wooden_trapdoors}} tag.
** Added {{cd|shelf_mushroom}} to {{cd|#replaceable_by_trees}} tag.
** Added {{cd|d=and|#wool_slabs|#concrete_slabs}} to {{cd|#slabs}} tag.
** Added {{cd|d=and|#wool_stairs|#concrete_stairs}} to {{cd|#stairs}} tag.
** Added {{cd|d=and|#wool_slabs|#wool_stairs}} to {{cd|d=and|#dampens_vibrations|#shears_major_breaking_speed}} tags.
** Added 32 values to {{Tag link|block|mineable/pickaxe}} tag:
{{Collapse
|content=
::{{cd|d=and|white_concrete_stairs|orange_concrete_stairs|magenta_concrete_stairs|light_blue_concrete_stairs|yellow_concrete_stairs|lime_concrete_stairs|pink_concrete_stairs|gray_concrete_stairs|light_gray_concrete_stairs|cyan_concrete_stairs|purple_concrete_stairs|blue_concrete_stairs|brown_concrete_stairs|green_concrete_stairs|red_concrete_stairs|black_concrete_stairs|white_concrete_slab|orange_concrete_slab|magenta_concrete_slab|light_blue_concrete_slab|yellow_concrete_slab|lime_concrete_slab|pink_concrete_slab|gray_concrete_slab|light_gray_concrete_slab|cyan_concrete_slab|purple_concrete_slab|blue_concrete_slab|brown_concrete_slab|green_concrete_slab|red_concrete_slab|black_concrete_slab}}}}
** Renamed tag {{cd|#convertable_to_mud}} to {{cd|#convertible_to_mud}}.
** Removed {{cd|d=and|#nether_carver_replaceables|#overworld_carver_replaceables}} tags.
** Removed {{cd|tuff}} from {{cd|#deepslate_ore_replaceables}} tags.
 
* Entity Tags
** Added {{cd|poplar_boat}} to {{cd|#boat}} tag.
 
* Item Tags
** Added {{cd|d=and|red_poplar_leaves|orange_poplar_leaves|yellow_poplar_leaves}} to {{cd|#leaves}} tag.
** Added {{cd|#poplar_logs}} to {{cd|#logs_that_burn}} tag.
** Added {{cd|poplar_planks}} to {{cd|#planks}} tag.
** Added {{cd|poplar_sign}} to {{cd|#signs}} tag.
** Added {{cd|poplar_hanging_sign}} to {{cd|#hanging_signs}} tag.
** Added {{cd|poplar_button}} to {{cd|#wooden_buttons}} tag.
** Added {{cd|poplar_door}} to {{cd|#wooden_doors}} tag.
** Added {{cd|poplar_fence}} to {{cd|#wooden_fences}} tag.
** Added {{cd|poplar_fence_gate}} to {{cd|#fence_gates}} tag.
** Added {{cd|poplar_pressure_plate}} to {{cd|#wooden_pressure_plates}} tag.
** Added {{cd|poplar_sapling}} to {{cd|#saplings}} tag.
** Added {{cd|poplar_shelf}} to {{cd|#wooden_shelves}} tag.
** Added {{cd|poplar_slab}} to {{cd|#wooden_slabs}} tag.
** Added {{cd|poplar_stairs}} to {{cd|#wooden_stair}} tag.
** Added {{cd|poplar_trapdoor}} to {{cd|#wooden_trapdoors}} tag.
** Added {{cd|poplar_boat}} to {{cd|#boats}} tag.
** Added {{cd|poplar_chest_boat}} to {{cd|#chest_boats}} tag.
** Added {{cd|d=and|#wool_slabs|#concrete_slabs}} to {{cd|#slabs}} tag.
** Added {{cd|d=and|#wool_stairs|#concrete_stairs}} to {{cd|#stairs}} tag.
** Added {{cd|d=and|#wool_slabs|#wool_stairs}} to {{cd|#dampens_vibrations}} tag.
** Removed {{cd|#brewing_fuel}} tag.
*** The {{cd|brewing_fuel}} item component is now used to identify brewing fuels.
** Eighteen tags no longer have the function of adding an item like fuel item, due to {{DCL|cooking_fuel}} components.
{{Collapse
|content=
::{{cd|d=and|#logs|#bamboo_blocks|#planks|#wooden_stairs|#wooden_slabs|#wooden_trapdoors|#wooden_pressure_plates|#wooden_shelves|#wooden_fences|#fence_gates|#banners|#signs|#hanging_signs|#boats|#wool|#wooden_buttons|#saplings|#wool_carpets}}}}
** The tag {{cd|#non_flammable_wood}} no longer prevents an item from being classified as fuel item.
 
* Structure tags
** Renamed {{cd|#on_woodland_explorer_maps}} to {{cd|#on_woodland_mansion_maps}}
** Renamed {{cd|#on_ocean_explorer_maps}} to {{cd|#on_ocean_monument_maps}}
** Renamed {{cd|#on_jungle_explorer_maps}} to {{cd|#on_jungle_pyramid_maps}}
** Renamed {{cd|#on_swamp_explorer_maps}} to {{cd|#on_swamp_hut_maps}}
** Renamed {{cd|#on_trial_explorer_map}} to {{cd|#on_buried_trial_chambers_map}}
 
'''[[Minecraft:Textures]]'''
* Block Sprites
** Added new Block textures:
*** {{cd|block/orange_poplar_leaves.png}}
*** {{cd|block/red_poplar_leaves.png}}
*** {{cd|block/yellow_poplar_leaves.png}}
*** {{cd|block/poplar_door_bottom.png}}
*** {{cd|block/poplar_door_top.png}}
*** {{cd|block/poplar_log_top.png}}
*** {{cd|block/poplar_log.png}}
*** {{cd|block/poplar_planks.png}}
*** {{cd|block/poplar_trapdoor.png}}
*** {{cd|block/stripped_poplar_log.png}}
*** {{cd|block/stripped_poplar_log_top.png}}
*** {{cd|block/shelf_mushroom_particle.png}}
*** {{cd|block/shelf_mushroom_stage0.png}}
*** {{cd|block/shelf_mushroom_stage1.png}}
*** {{cd|block/poplar_hanging_sign.png}}
*** {{cd|block/poplar_sign.png}}
*** {{cd|block/poplar_sapling.png}}
*** {{cd|block/poplar_shelf.png}}
*** {{cd|block/red_shrub.png}}
*** {{cd|block/straw_bed.png}}
*** {{cd|block/straw_bed_particle.png}}
 
* Entity Textures
** Added new Entity textures:
*** {{cd|entity/boat/poplar.png}}
*** {{cd|entity/chest_boat/poplar.png}}
 
* Equipment Assets
** A new optional {{cd|trim_palette_replacements}} field controls which trim material palettes should be replaced for this equipment asset (formerly controlled by {{cd|override_armor_assets}} in the trim material)
*** Format: map from original Palette ID to a replacement Palette ID
 
* GUI widgets sprites
** Added the following textures:
*** <samp>gui/sprites/widget/realms_button.png</samp>
*** <samp>gui/sprites/widget/realms_button_disabled.png</samp>
*** <samp>gui/sprites/widget/realms_button_highlighted.png</samp>
 
* Item Sprites
** Added new Item textures:
*** {{cd|item/poplar_door.png}}
*** {{cd|item/poplar_hanging_sign.png}}
*** {{cd|item/poplar_sign.png}}
*** {{cd|item/poplar_boat.png}}
*** {{cd|item/poplar_chest_boat.png}}
** Renamed <samp>item/trial_chamber_map.png</samp> to <samp>item/buried_trial_chambers_map.png</samp>
** Renamed <samp>item/jungle_temple_map.png</samp> to <samp>item/jungle_pyramid_map.png</samp>
** Removed <samp>item/filled_map_markings.png</samp>
 
* Map sprites
** Added new explorer map textures:
*** <samp>abandoned_campsite_map.png</samp>
*** <samp>ancient_city_map.png</samp>
*** <samp>desert_pyramid_map.png</samp>
*** <samp>mineshaft_map.png</samp>
*** <samp>warm_ocean_ruins_map.png</samp>
** Updated the following map and explorer map textures:
*** <samp>buried_treasure_map.png</samp>
*** <samp>filled_map.png</samp>
*** <samp>map.png</samp>
*** <samp>desert_village_map.png</samp>
*** <samp>plains_village_map.png</samp>
*** <samp>snowy_village_map.png</samp>
*** <samp>snowy_village_map.png</samp>
*** <samp>taiga_village_map.png</samp>
*** <samp>savanna_village_map.png</samp>
*** <samp>trial_chamber_map.png</samp>
*** <samp>woodland_mansion_map.png</samp>
*** <samp>ocean_monument_map.png</samp>
** Added new map decorations textures:
*** <samp>abandoned_camp.png</samp>
*** <samp>ancient_city.png</samp>
*** <samp>desert_pyramid.png</samp>
*** <samp>mineshaft.png</samp>
*** <samp>warm_ocean_ruins.png</samp>
** The following map decoration icons have been updated in order to show player rotation on the map:
*** <samp>/player.png</samp>
*** <samp>/player_off_limits.png</samp>
*** <samp>/player_off_map.png</samp>
 
* Palette Textures
** All armor trim palette textures have been moved from {{cd|textures/trim/color_palettes/}} to {{cd|textures/palettes/trim/}}
*** The base armor trim palette texture has instead been moved to {{cd|textures/palettes/trim_base.png}}
** Entity armor trim material textures are no longer generated into the {{cd|minecraft:trims}} atlas with {{cd|paletted_permutations}}, but rather generated on-demand
*** The base palette id is now specified in a new {{cd|palette}} mcmeta section field
*** This section has a single field: {{cd|base_palette}} - the base Palette Texture ID to remap from
** Item armor trim material textures are still generated with {{cd|paletted_permutations}} as before
** Palette Texture locations in the {{cd|palette_key}} and {{cd|permutations}} fields have been replaced by Palette Texture IDs - i.e. {{cd|<namespace>:<path>}} now resolves to {{cd|<namespace>:textures/palettes/<path>.png}}
 
* Particles
** Added new Particle textures:
*** {{cd|orange_poplar_1.png}}
*** {{cd|orange_poplar_2.png}}
*** {{cd|orange_poplar_3.png}}
*** {{cd|orange_poplar_4.png}}
*** {{cd|red_poplar_1.png}}
*** {{cd|red_poplar_2.png}}
*** {{cd|red_poplar_3.png}}
*** {{cd|red_poplar_4.png}}
*** {{cd|yellow_poplar_1.png}}
*** {{cd|yellow_poplar_2.png}}
*** {{cd|yellow_poplar_3.png}}
*** {{cd|yellow_poplar_4.png}}
*** {{cd|shelf_mushroom_particle.png}}
 
* UI Sprites
** Added new UI textures:
*** {{cd|gui/hanging_signs/poplar.png}}
*** {{cd|gui/signs/poplar.png}}
 
* UI illustrations sprites
** Added new textures:
*** <samp>gui/realms/friends.png</samp>
*** <samp>gui/realms/minigames.png</samp>
*** <samp>gui/realms/private_server.png</samp>
 
'''[[Minecraft: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.
 
'''[[Minecraft:Villager trade definition]]'''
* The {{cd|given_item_modifiers}} field has been renamed to {{cd|given_item_modifier}}
** Note: unlike other fields of type {{cd|minecraft:item_modifier}} this field does not support namespaced element or tag IDs.
* The {{cd|max_uses}} and {{cd|xp}} fields now require an inline value of a {{cd|minecraft:context_int_provider}} type.
* The {{cd|count}} field in {{cd|wants}} and {{cd|additional_wants}} structures now require an inline value of a {{cd|minecraft:context_int_provider}} type.
* The {{cd|reputation_discount}} field now requires an inline value of a {{cd|minecraft:context_float_provider}} type.
 
'''[[Minecraft:World Options]]'''
[[File:World Options JE3.png|thumb|right|New World Options UI]]
* The World Options button has been moved to the [[Minecraft:Game Menu]] where the Open to LAN button used to be, replacing it.
** The "Game Mode" button has been renamed to "Default Game Mode"
** 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 "General" section has a new addition, Personal Game Mode: the player's active game mode in the current world (equivalent to the {{cmd|gamemode}} command, or {{keys|F3+F4}})
** The "Multiplayer" section contains four 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.
*** Force Game Mode: controls whether other players game mode is forced to match the default game mode of the world or not.
 
== Fixes ==
{{fixes|project=MC|fixedin=26.3 Snapshot 1,26.3 Snapshot 2,26.3 Snapshot 3,26.3 Snapshot 4,26.3 Snapshot 5,26.3 Snapshot 6,26.3 Snapshot 7,26.3 Snapshot 8,26.3 Snapshot 9,26.3 Snapshot 10,26.3 Pre-Release 1,26.3 Pre-Release 2,26.3 Pre-Release 3,26.3 Release Candidate 1,26.3 Release Candidate 2,26.3 Release Candidate 3
|;old
|4|Item drops sometimes appear at the wrong location.
|2157|Particles emitted from dragon eggs when teleporting do not point in the correct direction.
|5269|Updating a server's address in the multiplayer menu does not update its status.
|40597|The interaction of Minecraft's built-in fullscreen mode and macOS fullscreen can glitch the game window.
|44654|Some entities' positions are not updated on the client when teleported.
|46421|You cannot use nether portals, end portals, and end gateways while in Spectator mode.
|51859|The line spacing of text within all hover tooltips is larger between the first and second lines.
|58061|Endermen can teleport onto signs.
|59810|Cannot break blocks while sprinting on macOS.
|73162|Breaking an entity that instantly breaks sometimes destroys the block behind it in Creative mode.
|91006|Some entities lose their name when placed/broken.
|102732|Arrows can visually bounce off of entities that don't wear a shield.
|102836|Endermen and entities eating chorus fruit can teleport to some dangerous places.
|102881|Shulkers do not emit any particles when teleporting.
|106416|Endermen and entities eating chorus fruit can teleport outside the world border and into powder snow.
|110989|{{cmd|spreadplayers}} considers signs to be a valid block to be spread onto.
|112580|Structure blocks' GUI does not pause the game in singleplayer.
|112744|The {{cd|Team}} NBT tag only exists for living entities.
|113006|Items reeled in with fishing rods do not move smoothly but appear to teleport.
|116286|{{cmd|spreadplayers}} can spread entities on structure void.
|121278|Keybindings (e.g. {{keys|Control+A}}) are being mapped to the US keyboard layout even if you're using another layout.
|121375|The {{keys|Command}} key on macOS is displayed as "Win" in the key binds screen.
|122477|Opening the chat sometimes appends the character the used key types to the message on Linux.
|122717|Command success messages for some commands include unaffected entities, unlike the command result.
|122731|Camera movement stutters when turning in a boat.
|133407|Keybinds switch when upgrading to 1.13 if not using a QWERTY keyboard.
|148541|{{cmd|spreadplayers}} can spread players to seagrass near the surface of the water.
|148541|{{cmd|spreadplayers}} can spread players to seagrass near the surface of the water.
|149058|Using hotkeys to move items into the anvil UI appends the character the used key types to the new item name.
|151857|The success message of /give when affecting multiple players uses the wrong string.
|151857|The success message of /give when affecting multiple players uses the wrong string.
|154881|Dropping an item from your hotbar at the same time as switching to another hotbar slot desyncs the second item.
|159283|The End terrain does not generate in multiple rings centered around the world center.
|159283|The End terrain does not generate in multiple rings centered around the world center.
|161885|Many transparent things do not render behind slimes.
|161885|Many transparent things do not render behind slimes.
Line 2,187: Line 3,756:
|174958|{{cmd|gamerule}} succeeds when the value is not changed.
|174958|{{cmd|gamerule}} succeeds when the value is not changed.
|175180|The {{cd|Silent}} NBT tag still doesn't make some entities fully silent.
|175180|The {{cd|Silent}} NBT tag still doesn't make some entities fully silent.
|189953|The {{keys|super}} key on macOS is displayed as "Win" in the key binds screen.
|183446|Endermen still avoid projectiles when riding minecart or boat.
|189953|The {{keys|Super}} key on macOS is displayed as "Win" in the key binds screen.
|190203|Transparent and specially rendered blocks, entities, clouds, water and particles don't render behind wind charges, and charged creeper, wither and breeze armor.
|190203|Transparent and specially rendered blocks, entities, clouds, water and particles don't render behind wind charges, and charged creeper, wither and breeze armor.
|202197|Entities' name tag background is rendered behind transparent things.
|202197|Entities' name tag background is rendered behind transparent things.
|206356|The motion of falling block entities is visually slow.
|206356|The motion of falling block entities is visually slow.
|206540|Increased input delay when riding an entity.
|210117|Sculk sensors don't detect ice/snow melting.
|210584|Semi-transparent textures on an item that doesn't have it by default doesn't render water behind it.
|210584|Semi-transparent textures on an item that doesn't have it by default doesn't render water behind it.
|212671|Loot table tag entry with "{{cd|expand}}": {{cd|true}} does not apply functions.
|212671|Loot table tag entry with "{{cd|expand}}": {{cd|true}} does not apply functions.
|214113|Endermen and shulkers can teleport onto the Nether roof.
|218156|Shipwrecks and ocean ruins can generate with empty buried treasure maps.
|218156|Shipwrecks and ocean ruins can generate with empty buried treasure maps.
|222818|You can ignite TNT in Adventure mode.
|222818|You can ignite TNT in Adventure mode.
Line 2,199: Line 3,772:
|223559|Transparent blocks, particles, and clouds are not rendered behind semi-transparent marker armor stands.
|223559|Transparent blocks, particles, and clouds are not rendered behind semi-transparent marker armor stands.
|224528|Two splash texts use curly single quotes (’) instead of apostrophes (').
|224528|Two splash texts use curly single quotes (’) instead of apostrophes (').
|227008|Endermen constantly try to teleport when riding a vehicle under daylight.
|228273|Goats do not move correctly after they are tempted during a long jump.
|229405|The inside of boats blocks the rendering of most translucent objects with the "Improved Transparency" option enabled.
|229405|The inside of boats blocks the rendering of most translucent objects with the "Improved Transparency" option enabled.
|229831|Enchanting tables' GUI has three pixels in the top-right corner that shouldn't be there.
|229831|Enchanting tables' GUI has three pixels in the top-right corner that shouldn't be there.
|236497|The head rotations of passengers in boats are not correctly displayed for other players.
|237053|Block breaking particles cannot be seen by other players.
|237165|Block breaking sounds cannot be heard by other players.
|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.
|239401|{{cd|items/light.png}} never appears in-game; is pointlessly referenced by other game assets.
|239401|{{cd|items/light.png}} never appears in-game; is pointlessly referenced by other game assets.
|245030|The "Bee buzzes" closed caption only appears when a bee buzzes for the first time.
|247034|Particles produced from entities growing cannot be seen by other players.
|248600|Particles produced from moving in powder snow cannot be seen by other players.
|249200|Several entities constantly deviate visually from their actual positions on the client when teleported.
|252369|Data packs can fail to load due to a feature cycle when one does not exist.
|252369|Data packs can fail to load due to a feature cycle when one does not exist.
|252934|Placing structures with item frames, paintings, or cushions logs {{cd|Block-attached entity at invalid position: [BlockPosition]}}.
|252934|Placing structures with item frames, paintings, or cushions logs {{cd|Block-attached entity at invalid position: [BlockPosition]}}.
|253023|Breaking paintings, item frames, glow item frames cannot trigger sculk shriekers.
|254353|A packet to remove the score is always broadcast when a score is reset.
|254353|A packet to remove the score is always broadcast when a score is reset.
|254370|The {{cd|entity_scores}} predicate type cannot check all possible scores.
|254547|Villagers do not level up when exiting the world immediately after filling their experience bar.
|254661|{{cmd|schedule clear}} requires a namespace in its function argument.
|254661|{{cmd|schedule clear}} requires a namespace in its function argument.
|256073|Miscolored pixel in {{cd|tab_inventory.png}}.
|256073|Miscolored pixel in {{cd|tab_inventory.png}}.
|256096|Some entities on a team can harm teammates that walk into them when friendly fire is disabled.
|256096|Some entities on a team can harm teammates that walk into them when friendly fire is disabled.
|256097|Some entities on a team can harm their teammates when they explode when friendly fire is disabled.
|256097|Some entities on a team can harm their teammates when they explode when friendly fire is disabled.
|258347|Endermen no longer create an extra trail of particles when teleporting.
|258579|The player's head does not rotate smoothly (with delay) in third person view while riding a vehicle.
|259512|Horizontal camera rotation lags when riding.
|259583|Brewing with a single bottle of dragon's breath does not return a glass bottle afterward.
|259583|Brewing with a single bottle of dragon's breath does not return a glass bottle afterward.
|259812|Block and item displays, beds, clouds, signs, shulker boxes, and semi-transparent blocks and entities don't render behind text displays.
|259812|Block and item displays, beds, clouds, signs, shulker boxes, and semi-transparent blocks and entities don't render behind text displays.
|260780|Shulker Bullets always push Fireballs south.
|263100|Cave biomes interfere with relief on exploration maps.
|263708|Keybinds menu renders Keypad keys the same as regular keys.
|263708|Keybinds menu renders Keypad keys the same as regular keys.
|264003|Boats carrying players sometimes stop abruptly when sliding along ice.
|264003|Boats carrying players sometimes stop abruptly when sliding along ice.
|265423|When villagers acquire enough experience to level up more than once, they only gain a single level.
|265584|TNT dispensed in bubble columns with soul sand right under visually moves through blocks above.
|265584|TNT dispensed in bubble columns with soul sand right under visually moves through blocks above.
|265743|Entities, block entities, clouds and semi-transparent blocks are always rendered in front of text displays with see_through enabled.
|265743|Entities, block entities, clouds and semi-transparent blocks are always rendered in front of text displays with see_through enabled.
|266429|Holding shift on macOS causes hotbar scroll direction to reverse (mouse only).
|266429|Holding shift on macOS causes hotbar scroll direction to reverse (mouse only).
|267902|The failure message of {{cmd|random}} when the specified range is too large states an incorrect maximum for the range.
|267902|The failure message of {{cmd|random}} when the specified range is too large states an incorrect maximum for the range.
|268145|{{cd|cache_once}} density functions don’t work.
|268521|The game window doesn't have a minimal width and height.
|268521|The game window doesn't have a minimal width and height.
|269968|Can't scroll while holding shift on macOS (except in the hotbar) (mouse only).
|269968|Can't scroll while holding shift on macOS (except in the hotbar) (mouse only).
|270970|The player's camera shakes when attempting to step up blocks with a boat above them.
|271069|Item entities appear to fly towards the player when picked up by a dolphin that isn't being rendered.
|271069|Item entities appear to fly towards the player when picked up by a dolphin that isn't being rendered.
|271297|{{cmd|fillbiome}} doesn't fail when no changes are made.
|271297|{{cmd|fillbiome}} doesn't fail when no changes are made.
|273327|The {{cd|#convertable_to_mud}} block tag misspells "convertible" as "convertable".
|273327|The {{cd|#convertable_to_mud}} block tag misspells "convertible" as "convertable".
|273708|Endermen taking environmental damage attempt to teleport when riding an entity.
|274924|Angry endermen suffocating while in a boat or minecart can attack their target from really far away.
|275111|Two animals in a boat look sideways instead of at the player when lured.
|275111|Two animals in a boat look sideways instead of at the player when lured.
|275532|The abbreviation "fps" is inconsistently capitalized across strings.
|275532|The abbreviation "fps" is inconsistently capitalized across strings.
|276079|Sending a swing packet to the client causes it to send one back to the server.
|276079|Sending a swing packet to the client causes it to send one back to the server.
|276692|Lingering potions which land on the target's head do not grant their effects to the target.
|276692|Lingering potions which land on the target's head do not grant their effects to the target.
|277906|Ender pearls land incorrectly at high speeds.
|278771|The incorrect command context is used when providing suggestions for redirected commands.
|278771|The incorrect command context is used when providing suggestions for redirected commands.
|279185|The "{{cd|selectWorld.load_folder_access}}" string is missing an article before the word "folder".
|279185|The "{{cd|selectWorld.load_folder_access}}" string is missing an article before the word "folder".
|279395|Trees can generate floating over ruined portals.
|279395|Trees can generate floating over ruined portals.
|279586|Closed captions continue to fade when their sound plays again from farther away, causing visual delays in the overlay.
|279819|The mining speed factor of Mining Fatigue is inconsistent at level 3.
|279819|The mining speed factor of Mining Fatigue is inconsistent at level 3.
|280250|Projectiles sometimes desync when thrown/shot while moving.
|293615|Tooltip formatting of "Items x number" is inconsistent across different types of items.
|293615|Tooltip formatting of "Items x number" is inconsistent across different types of items.
|293755|The ender dragon's neck and tail disconnect from its body when it turns.
|293755|The ender dragon's neck and tail disconnect from its body when it turns.
Line 2,235: Line 3,834:
|295756|Pistons desync on the client-side, causing players to be moved differently compared to other entities.
|295756|Pistons desync on the client-side, causing players to be moved differently compared to other entities.
|296006|Entities do not face the player correctly whilst in a boat.
|296006|Entities do not face the player correctly whilst in a boat.
|296368|The {{cd|entity.happy_ghast.riding}} sound event displays no closed caption.
|296773|Taken screenshots are rendered as a black image on Intel graphics of Gen7 and Gen7.5 architecture.
|297741|Gravity-affected blocks in upwards bubble columns can clip through solid blocks above them (on the client).
|297741|Gravity-affected blocks in upwards bubble columns can clip through solid blocks above them (on the client).
|298431|Boats are launched by slime blocks inconsistently.
|298431|Boats are launched by slime blocks inconsistently.
Line 2,240: Line 3,841:
|298762|Phantoms deflect arrows shot from bows/crossbows.
|298762|Phantoms deflect arrows shot from bows/crossbows.
|299019|Using a Bed while riding a rideable mob causes the player to sleep either on the ground, or on top of the mob.
|299019|Using a Bed while riding a rideable mob causes the player to sleep either on the ground, or on top of the mob.
|299460|Saddled pigs in boats carried by happy ghasts can cause a desync when unequipping a carrot on a stick.
|299582|Special crafting recipes behave differently than other recipe types with {{cmd|recipe}} and the {{cd|limited_crafting}} game rule.
|299582|Special crafting recipes behave differently than other recipe types with {{cmd|recipe}} and the {{cd|limited_crafting}} game rule.
|300000|Players desync when teleporting all users riding a happy ghast.
|301804|Test blocks' GUI does not pause the game in singleplayer.
|301804|Test blocks' GUI does not pause the game in singleplayer.
|302221|Moving entities deflect arrows.
|302221|Moving entities deflect arrows.
Line 2,247: Line 3,850:
|302687|Throwing items out of your inventory while holding spears plays the spear jab animation.
|302687|Throwing items out of your inventory while holding spears plays the spear jab animation.
|302705|Having a spear in the main hand affects the hand animation speed for items held in the off hand.
|302705|Having a spear in the main hand affects the hand animation speed for items held in the off hand.
|303360|Flat-cached shifted noise density functions are recalculated for every Y level.
|303493|The {{cd|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 {{cd|tick}} or {{cd|location_changed}} advancement trigger.
|303493|The {{cd|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 {{cd|tick}} or {{cd|location_changed}} advancement trigger.
|303626|Block hitboxes, particles, semi-transparent blocks and non-block items render behind entity hitboxes with the "Improved Transparency" option enabled.
|303626|Block hitboxes, particles, semi-transparent blocks and non-block items render behind entity hitboxes with the "Improved Transparency" option enabled.
Line 2,252: Line 3,856:
|304195|The arm overlay textures of parched have unused pixels not used by the model.
|304195|The arm overlay textures of parched have unused pixels not used by the model.
|304213|Zombies, husks and drowned hold out the incorrect arm when holding spears.
|304213|Zombies, husks and drowned hold out the incorrect arm when holding spears.
|304594|Spears can dismount interaction entities from their vehicles.
|304719|{{cd|InhabitedTime}} for some chunks can be set to impossibly high values when a world is opened.
|304920|Spears in third person look wrong when the left hand is the main hand.
|304920|Spears in third person look wrong when the left hand is the main hand.
|304594|Spears can dismount interaction entities from their vehicles.
|305214|Arrows deflecting off of entities get offset.
|305422|Players can sometimes get kicked due to a waypoint packet the client fails to handle.
|305422|Players can sometimes get kicked due to a waypoint packet the client fails to handle.
|305535|Elytra are activated after only single tapping the "Jump" key when the player is in lava.
|305535|Elytra are activated after only single tapping the "Jump" key when the player is in lava.
|305707|{{cmd|time}} reports success when no changes are made.
|305707|{{cmd|time}} reports success when no changes are made.
|306012|Armadillos can escape fenced areas when at the edge of the simulation distance.
|306127|Block outlines are no longer visible behind translucent items.
|306127|Block outlines are no longer visible behind translucent items.
|306156|Breezes, slimes and players between translucent blocks or fluids appear behind them if "Improved Transparency" is enabled.
|306156|Breezes, slimes and players between translucent blocks or fluids appear behind them if "Improved Transparency" is enabled.
Line 2,263: Line 3,870:
|306619|Cannot jump while sneaking while using a Chinese input method.
|306619|Cannot jump while sneaking while using a Chinese input method.
|306628|TNT minecarts don't delete piercing arrows.
|306628|TNT minecarts don't delete piercing arrows.
|306778|The fog color no longer transitions smoothly when the weather changes at night while under the Night Vision effect.
|307206|{{cd|Std140Builder}} incorrectly pads {{cd|vec3s}} and {{cd|ivec3s}}.
|307206|{{cd|Std140Builder}} incorrectly pads {{cd|vec3s}} and {{cd|ivec3s}}.
|307285|Translucent blocks don't render behind sulfur cubes.
|307285|Translucent blocks don't render behind sulfur cubes.
|307345|The smoke particles produced by potent sulfur do not render behind stained glass.
|307345|The smoke particles produced by potent sulfur do not render behind stained glass.
|307384|Screen tearing occurs with the Vulkan rendering backend in fullscreen mode with lower framerates, even if VSync is enabled.
|307449|Spawners with their light limits set no longer spawn mobs underground at night time.
|307596|The OpenGL rendering backend seems to be very laggy.
|307616|Typo in a log message in {{cd|ActiveProfiler}}: "aprox".
|307616|Typo in a log message in {{cd|ActiveProfiler}}: "aprox".
|307618|Typo in a log message in {{cd|SoundEngine}}: "disapeared".
|307618|Typo in a log message in {{cd|SoundEngine}}: "disapeared".
Line 2,292: Line 3,903:
|308469|Hitting the ender dragon's head hitbox no longer causes the ender dragon to take more damage.
|308469|Hitting the ender dragon's head hitbox no longer causes the ender dragon to take more damage.
|308490|The "regular" sulfur cube archetype produces stone sounds, despite no longer using stone blocks.
|308490|The "regular" sulfur cube archetype produces stone sounds, despite no longer using stone blocks.
|308593|Animated blocks (notably water and lava) render incorrectly on some graphics.
|308647|The resource packs screen can cache font glyphs incorrectly after toggling the "Font Settings" option.
|308647|The resource packs screen can cache font glyphs incorrectly after toggling the "Font Settings" option.
|308694|Using {{cmd|defaultgamemode}} changes everyone's game mode to the one set in "Settings for Other Players" in LAN worlds.
|308694|Using {{cmd|defaultgamemode}} changes everyone's game mode to the one set in "Settings for Other Players" in LAN worlds.
Line 2,304: Line 3,916:
|308849|Creakings can take knockback.
|308849|Creakings can take knockback.
|308851|The {{cd|chat_restriction.disabled_by_profile.action}} string is improperly capitalized.
|308851|The {{cd|chat_restriction.disabled_by_profile.action}} string is improperly capitalized.
|308961|When changing the game mode using debug hotkeys while in the World Options screen, the "Game Mode" button does not update.
|309081|Decorated pots and chorus flowers can be destroyed by projectiles in Adventure mode.
|309081|Decorated pots and chorus flowers can be destroyed by projectiles in Adventure mode.
|309262|Falling blocks disappear for a split second when landing.
|309298|Sending chat messages while having the "Chat Delay" option set to a nonzero value can sometimes kick you from the game.
|309298|Sending chat messages while having the "Chat Delay" option set to a nonzero value can sometimes kick you from the game.
|309479|The game crashes during the loading screen with the message "Failed to wait for frame completion" on some systems.
|309501|Dropped shelves rotate off-center.
|309565|Block outlines are rendered behind translucent elements if the "High Contrast Block Outlines" option is enabled.
|309565|Block outlines are rendered behind translucent elements if the "High Contrast Block Outlines" option is enabled.
|309644|Some textures of geyser plume particles still use inconsistent colors.
|309872|The system freezes when pressing the {{key|Windows}} key with the "Exclusive Fullscreen" option enabled.
|309671|Shelf mushrooms still use the wrong sounds.
|309679|Cushions can be used to see through blocks.
|309732|The {{code|straw_bed_head}} block model is stored in two directories.
|309797|Cushions can be placed inside full blocks when the player's head intersects them.
|309776|Straw beds are positioned incorrectly in item frames.
|309875|New translations for the tooltip of the "Improved Transparency" option are wrongly backported.
|309875|New translations for the tooltip of the "Improved Transparency" option are wrongly backported.
|309891|The {{cd|chat_restriction.disabled_by_launcher}} string lacks a period, unlike similar strings.
|309891|The {{cd|chat_restriction.disabled_by_launcher}} string lacks a period, unlike similar strings.
Line 2,338: Line 3,949:
|309927|The {{cd|gui.friends.error.unauthorized}} string lacks a period, unlike similar strings.
|309927|The {{cd|gui.friends.error.unauthorized}} string lacks a period, unlike similar strings.
|309928|The {{cd|multiplayer.confirm_command.signature_required}} string lacks a period.
|309928|The {{cd|multiplayer.confirm_command.signature_required}} string lacks a period.
|309931|Placed cushions face inconsistent directions.
|309937|The {{cd|argument.pos.outofbounds}} string ends with a period, unlike similar strings.
|309937|The {{cd|argument.pos.outofbounds}} string ends with a period, unlike similar strings.
|309938|The {{cd|quickplay.error.invalid_identifier}} string is missing an article before the word "world".
|309938|The {{cd|quickplay.error.invalid_identifier}} string is missing an article before the word "world".
Line 2,345: Line 3,955:
|310057|Pressing the "Advancements" key bind while its menu was opened from the pause menu closes both menus.
|310057|Pressing the "Advancements" key bind while its menu was opened from the pause menu closes both menus.
|310062|Armadillos do not follow players holding spider eyes.
|310062|Armadillos do not follow players holding spider eyes.
|310094|The decimal point keypad key is displayed as {{code|key.keyboard.99}} in the key binds menu.
|310076|Mobs sometimes stop just far enough away from the player to be unable to attack them.
|310105|The Menu key is displayed as {{code|key.keyboard.101}} in the key binds menu.
|310182|Some descriptive tooltip strings lack a period, unlike similar strings.
|310109|The keypad plus-or-minus key is still not prefixed with "Keypad".
|310184|The {{cd|commands.bossbar.set.max.unchanged}} string abbreviates <code>maximum</code> to <code>max</code>, unlike similar strings.
|310110|The keypad left and right parentheses keys are still not prefixed with "Keypad".
|310186|The {{cd|options.languageWarning}} string lacks a period, unlike similar strings.
|310112|Using a Nether portal in Spectator mode while spectating an entity teleports the player to the incorrect location.
|310187|The {{cd|commands.bossbar.get.visible.visible}} string uses "shown" instead of "visible", unlike similar strings.
|310118|Pressing {{key|Windows+D}} to minimize all windows makes the game no longer visually update with the Vulkan rendering backend.
|310188|Some {{cmd|tag list}} success strings always pluralize the word "tags".
|310233|Some strings that contain percentages have spaces before the percentage sign, unlike similar strings.
|310236|Some strings use an ampersand instead of the word "and", unlike similar strings.
|310289|Entity collisions fully above an entity's hitbox are ignored when stepping up blocks.
|310300|Other windows cannot be displayed on top of the game window even with the "Exclusive Fullscreen" option disabled.
|310337|The game log outputs the incorrect minimum format version requiring the {{code|pack_format}} field in {{code|pack.mcmeta}}.
|310337|The game log outputs the incorrect minimum format version requiring the {{code|pack_format}} field in {{code|pack.mcmeta}}.
|310358|The conditions for {{code|depthBiasEnable}} differ between OpenGL and Vulkan.
|310372|Tripwires depowering breaks cross-chunk block tick processing order.
|310529|The World Options menu UI breaks when resizing the game window.
|310476|Projectiles only collide outright with the world border when underwater.
|310532|Trying to lock the difficulty of the world resets the difficulty.
|310536|The category headers in the World Options screen are formatted inconsistently with other settings screens.
|310550|{{key|Cmd+W}} on Mac now closes the window.
|310553|The {{code|campsite_wooded_badlands_4}} and {{code|campsite_swamp_2}} abandoned camp structures contain overlapping cushions.
|310556|Pressing {{key|Alt+F4}} closes the game window on kwin_wayland even when the "Quit Shortcuts" option is disabled.
|310590|Adding the {{code|entity_outline}} post effect to the player, restarting the game, and entering the same world causes the game to crash.
|310595|The {{key|Option}} key on macOS is displayed as {{key|Alt}} in the key binds screen.
|310595|The {{key|Option}} key on macOS is displayed as {{key|Alt}} in the key binds screen.
|310599|Several abandoned camp structures contain waxed oxidized copper chests.
|310676|The {{cd|savanna_lamp_post_01}} village structure contains a trailing closing square bracket in the jigsaw block’s NBT.
|310610|Several abandoned camp structures contain underwater oxidized copper chests that are not waterlogged.
|310787|Villagers do not level up until the trading window is closed for several seconds.
|310939|Interacting with camels with two passengers is preferred over using items.
|310962|The trading UI opens and immediately closes when interacting with a villager whose trades were altered with commands.
|311064|Cows and Horses only Spawn in a unexplored chunk once.
|311094|Villager discounts do not apply until the trading window is closed and reopened.
|311113|The game does not hand off focus when clicking links on Wayland.
|311186|The water overlay and fog does not render when the player's head is inside a block underwater.
|311235|Upgrading a world from the <code>1.21.11</code> world format can cause data from other worlds to get saved inside it.
|311245|Ruined portals can generate replacing end portal frames.
|311271|Some loot context parameters are missing from "generic" loot context.
|311272|Some LootContextUser can crash when referenced parameter is not provided.
|311414|Players can teleport arbitrary distances by using a desynced carrot on a stick on a pig.
|311419|Breaking a falling block with another one on top causes the top block to briefly become invisible when landing, revealing unlit block particles.
|311453|Particles from feeding flowers to brown mooshrooms cannot be seen by other players.
|311454|Particles from water evaporating in the Nether are not properly displayed.
|311579|The player can see through blocks when the camera is inside snow layers.
|311722|Pressing {{keys|windows+down}} in fullscreen mode incorrectly restores the game window to a borderless windowed state.
|;private
|305443|Malicious NBT text components can be used to cause an OOM error when resolving.
}}
}}
== Videos ==
{{Slicedlime|0g-oZTTl5bM}}
== Gallery ==
=== Mojang screenshots ===
<gallery>
Wilderness Bound concrete.webp
Wilderness Bound explorer.webp
Wilderness Bound Order-independent Transparency.webp
Wilderness Bound post effects.webp
Wilderness Bound block transform.webp
Wilderness Bound furnace.jpeg
Wilderness Bound brewing.webp
Wilderness Bound World Generation.webp
Wilderness Bound dappled forest.webp
Wilderness Bound particles.webp
Wilderness Bound camp.webp
</gallery>


== Notes ==
== Notes ==
Line 2,377: Line 4,022:
[[Minecraft:es:Java Edition 26.3]]
[[Minecraft:es:Java Edition 26.3]]
[[Minecraft:fr:Édition Java 26.3]]
[[Minecraft:fr:Édition Java 26.3]]
[[Minecraft:he:Java Edition 26.3]]
[[Minecraft:it:Java Edition 26.3]]
[[Minecraft:it:Java Edition 26.3]]
[[Minecraft:ja:Java Edition 26.3]]
[[Minecraft:ja:Java Edition 26.3]]
Line 2,382: Line 4,028:
[[Minecraft:pt:Edição Java 26.3]]
[[Minecraft:pt:Edição Java 26.3]]
[[Minecraft:ru:26.3 (Java Edition)]]
[[Minecraft:ru:26.3 (Java Edition)]]
[[Minecraft:uk:26.3 (Java Edition)]]
[[Minecraft:zh:Java版26.3]]
[[Minecraft:zh:Java版26.3]]

Latest revision as of 11:20, 22 October 2026

Template:Infobox versionTemplate:Relevant guide

26.3, the release of Minecraft:Wilderness Bound, is a Minecraft:game drop for Template:JE released on September 15, 2026,<ref>Template:Mcnet</ref> which adds the Minecraft:dappled forest biome with the new Minecraft:poplar wood type, Minecraft:red shrubs, and Minecraft:shelf mushrooms. It also adds Minecraft:wool stairs and slabs, Minecraft:concrete stairs and slabs, Minecraft:straw beds, Minecraft:cushions, and a new Minecraft:structure called the Minecraft:abandoned camp, and fixes bugs.

Additions

Template:Additions table

Blocks

Template:AnimateTemplate:Animate Minecraft:Concrete stairs and slabs

Poplar wood set:

File:Red Shrub.png Minecraft:Red shrub

Template:Animate Minecraft:Shelf mushroom

File:Straw Bed.png Minecraft:Straw bed

Template:Crafting

Template:AnimateTemplate:Animate Minecraft:Wool stairs and slabs

  • Comes in sixteen colors (red, orange, yellow, green, lime, cyan, blue, light blue, magenta, purple, pink, black, grey, light grey, brown and white).
  • Crafted using Minecraft:wool.
  • Can be used to dampen sounds, like wool and Minecraft:carpets.
  • They are also not usable in other ways like wool.

Items

New Minecraft:Explorer Maps

Non-mob entities

Template:Animate Minecraft:Cushion

Template:Crafting

  • 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.
  • Cushions are destroyed only when they are fully covered by blocks that cause suffocation.
  • Cannot be moved.
  • Does not have collision and can overlap with other objects except for other cushions.

Template:InvSpritewidth=32x32 Minecraft:Poplar boat and Template:InvSpritewidth=32x32 Minecraft:Poplar boat with chest

  • Boat variants that are crafted using poplar planks.

World generation

Biomes

Template:BiomeLink

Features

Template:Animate Minecraft:Poplar tree

  • A Minecraft: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 Minecraft:leaf litter around or shelf mushrooms on them.
  • File:Poplar Fallen Log.png 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

File:Abandoned Camp.png Minecraft:Abandoned camp

Command format

Template:Cmd

Template:Cmd

  • Allows adding or removing Minecraft: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:
    • Template:Cmd – adds the post effect to the player, if it does not already exist.
    • Template:Cmd – removes all post effects from the player, if any exist.
    • Template:Cmd – lists all post effects applied to the player, if any exist.
    • Template:Cmd – removes the post effect from the player, if it exists.

General

Minecraft:Block predicates

  • Added Template:Cd
    • Checks the height of the position against a given range.
    • Format:
      • Template:Cd: Vertical Anchor describing the minimum height required.
      • Template:Cd: Vertical Anchor describing the maximum height required.

Minecraft:Data component format

  • Added Template:Cd
    • Describes an item that can be used as fuel for a Minecraft:brewing stand.
    • Format: object with fields
      • Template:Cd – namespaced ID pointing to an element of Template:Cd registry representing the number of times this fuel will brew before being consumed.
      • Template:Cd – namespaced ID pointing to an element of Template:Cd registry representing the speed of the brewing.
      • Template:Cd and Template:Cd can additionally be defined by an inline number.
    • Note: the #Template:Cd item tag has been removed and will no longer function to register new brewing fuels.
    • Brewing fuel items with remainders will be handled as follows:
      • If there is fuel remaining in the fuel slot, the remainder item will be dropped on the ground.
      • If the fuel has run out, the remainder item will remain in the fuel slot.
      • This behavior matches items placed in the input and reagent slots of the brewing stand.
  • Added Template:DCL
    • Represents the ability to compost an item and how it adds layers to the composter.
    • Format: object with fields
  • Added Template:Cd
    • Describes an item that can be used as fuel for a Minecraft:furnace, Minecraft:smoker or Minecraft:blast furnace.
    • Format: object with fields
      • Template:Cd – namespaced ID pointing to an element of Template:Cd registry representing the time, in ticks, for which this fuel will burn.
      • Template:Cd – namespaced ID pointing to an element of Template:Cd registry representing the speed of the cooking/smelting.
      • Template:Cd and Template:Cd can additionally be defined by an inline number.
    • Cooking fuel items with remainders will be handled as follows:
      • If there is fuel remaining in the fuel slot, the remainder item will be dropped on the ground.
      • If the fuel has run out, the remainder item will remain in the fuel slot.
  • Added Template:Cd
    • The animation to play when the item is being used to interact with something.
    • Format: same as Template:Cd
  • Added Template:Cd
    • Represents the visibility percentage provided by an item with the appropriate Template:Cd component, modifying the range at which mobs are able to detect an entity.
    • Format: object with fields
      • Template:Cd – an entity ID, a list of namespaced entity IDs, or a hash-prefixed entity tag to match.
      • Template:Cd – float (between Template:Cd and Template:Cd), 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.
  • Added Template:DCL data component
    • Describes the pottery pattern stored on a stack.
    • Format:
      • namespaced ID pointing to an element of Template:Cd registry.
  • Added Template:Cd
    • Represents items that Minecraft:villagers can eat. Villagers will pick up items with this component in addition to items in the Template:Cd tag.
    • Format: object with fields
      • Template:Cd – positive integer, how much hunger the item satiates in the villager once eaten.
  • Added Template:Cd
    • A marker for blocks with contents that are waxed.
    • No fields

Minecraft:Debug properties

  • Added Template:Cd.
    • Disables the Beta 1.8 modulo patch which fixed the Far Lands and other floating-point precision bugs.
    • The traditional form of the Far Lands only appear in the Nether and the End as multiple other factors break down in the Overworld way before the Far Lands can appear there.
    • The purpose of this debug flag is to compare the performance of the modulo fix as it had a non-zero performance cost.<ref>Template:Tweet</ref>

Minecraft:Entity data

  • Added Template:Cd tag which makes a mob temporarily invulnerable for a specific number of ticks.

Minecraft:Environment attribute

  • Added Template:Cd
    • Defines mob spawns in an environment attribute source.
    • During worldgen placement, only dimensions and biomes will apply this environment attribute.
    • Format: object with fields:
      • Template:Cd – map of spawn category to weighted list of spawn data
        • Spawn data format: object with fields:
      • Template:Cd – map of entity type to object with fields:
        • Template:Cd – float, energy change allowed per spawn.
        • Template:Cd – float, how much existing mobs will attract or repulse other charged mobs.
    • Available attribute modifiers:
      • Template:Cd
        • 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
  • Added Template:Cd
    • 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 Template:Cd
    • Default: Template:Cd

Minecraft:Features

  • Added the Template:Cd block state provider
    • Copies common Block State properties from the Block at the evaluated position to the resulting state. Format: object with fields:
      • Template:CdTemplate:Note: 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 Template:Cd feature type
    • Places a set of features in the same location.
      • Note that as opposed to the Template:Cd feature type, all features are placed regardless of individual placement success.
    • Format:
      • Template:Cd: Placed Feature ID, non-empty list of Placed Feature IDs or hash-prefixed Placed Feature Tag for the features to place
  • Added Template:Cd 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:
      • Template:Cd: Block state provider for which block to place
      • Template:Cd: Block Predicate for which blocks are considered "empty" and should be projected through
      • Template:Cd: Int provider between Template:Cd and Template:Cd that determines the size of the square as measured from the center to the edge
      • Template:Cd: Non-negative integer representing the maximum change in y level from the original height to the placement height for a block in the square

Minecraft:Key codes

  • Added new key codes for the following keys:
ID Displayed name Physical key or button Translation key
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key<ref>Template:Bug</ref> Template:Code
Template:Code Template:Btn Template:KeyTemplate:Note Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key<ref>Template:Bug</ref> Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code<ref name="genericintl">Mojang have chosen to assign generic, non-descriptive titles to these keys, matching their internal SDL3 IDs rather than the actual real-life key names: Template:Bug</ref> Template:Btn<ref name="genericintl"/> Windows/Linux Template:Key Template:Code<ref name="genericintl"/>
macOS Template:Key
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Windows/Linux Template:Key Template:Code<ref name="genericintl"/>
macOS Template:Key
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Template:Key Template:Code<ref name="genericintl"/>
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Template:Key Template:Code<ref name="genericintl"/>
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Template:KeyTemplate:Note Template:Code<ref name="genericintl"/>
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Template:Key (JIS) / Template:Key (ABNT) Template:Code<ref name="genericintl"/>
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Template:Key Template:Code<ref name="genericintl"/>
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Template:Key Template:Code<ref name="genericintl"/>
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Template:Key Template:Code<ref name="genericintl"/>
Template:Code<ref name="genericintl"/> Template:Btn<ref name="genericintl"/> Template:Key Template:Code<ref name="genericintl"/>
Template:Code<ref name="generic9800">Template:Bug</ref> Template:Btn<ref name="generic9800"/> Template:Key (PC-9800)Template:Note Template:Code<ref name="generic9800"/>
Template:Code Template:Btn Template:Note Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
Template:Code Template:Btn Template:Key Template:Code
  • Template:Code, Template:Code, Template:Code, and Template:Code now have different display names depending on the user's operating system.
  • The following keycodes, which existed before but could only be set by file editing and would still not result in physical buttons being recognised, are now accessible via macOS (9-32) and Linux (9-48) systems, and can have controls bound to them properly:
ID Displayed name Description
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
Template:Code Template:Btn Template:Mouse
  • Added the following key codes for keys that aren’t available on PC:Template:Note
ID / translation key Displayed name
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn
Template:Code Template:Btn

Minecraft:Languages

Minecraft:Loot functions

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

Minecraft:Loot table

Minecraft:Number providers

  • Added Template:Cd
    • Fields:
      • Template:Cd – 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 Template:Cd type.
    • Returns the product of the operands, multiplying them all together.
    • Requires at least one operand.
  • Added Template:Cd
    • Fields:
      • Template:Cd – 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 Template:Cd type.
    • Returns the minimum value of the operands.
    • Requires at least one operand.
  • Added Template:Cd
    • Fields:
      • Template:Cd – 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 Template:Cd type.
    • Returns the maximum value of the operands.
    • Requires at least one operand.
  • Added Template:Cd
    • Fields:
      • Template:Cd – 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 Template:Cd type.
    • Returns the average value of the operands.
    • Requires at least one operand.
  • Integer number providers:
    • Added the Template:Cd registry.
    • All calculations are performed using 32-bit integer limits.
    • Result of calculations that provide invalid values (like division by zero) is undefined.
    • Format:
    • Added Template:Cd
      • Returns the absolute value of Template:Cd.
      • If the final result does not fit inside 32-bit integer limit, calculation will be canceled.
      • Fields:
    • Added Template:Cd
      • Evaluates multiple integer providers and returns arithmetic mean of results.
      • Division rounds towards Template:Cd
      • Fields:
        • Template:Cd – 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 Template:Cd type.
          • Requires at least one value.
    • Added Template:Cd
    • Added Template:Cd
    • Added Template:Cd
    • Added Template:Cd
    • Added Template:Cd
      • Evaluates a float provider and converts it to an integer value.
      • Non-integer values will be truncated (i.e. rounded towards zero).
      • Values that do not fit inside 32-bit integer (including Template:Cd) are treated as errors and will cancel calculation.
      • Fields:
    • Added Template:Cd
      • Evaluates multiple integer providers and returns the largest of results.
      • Fields:
        • Template:Cd – 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 Template:Cd type.
          • Requires at least one value.
    • Added Template:Cd
      • Evaluates multiple integer providers and returns the smallest of results.
      • Fields:
        • Template:Cd – 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 Template:Cd type
          • Requires at least one value.
    • Added Template:Cd
    • Added Template:Cd
      • Returns the modulus of Template:Cd by Template:Cd.
      • Uses floored integer division (rounds towards negative infinity).
      • Division by zero is treated as an error and will cancel calculation.
    • Fields:
    • Added Template:Cd
      • Fetches and provides the value of an environment attribute (Template:Cd)
      • Fields:
        • Template:Cd – Environment Attribute ID to fetch (must be representable as an int)
    • Added Template:Cd
      • Returns the negation of Template:Cd
      • If the final result does not fit inside 32-bit integer, calculation will be cancelled.
      • Fields:
        • input – an inline value or a namespaced ID of a Template:Cd type
    • Added Template:Cd
      • Returns the first case which fulfils its condition or the default if none do.
      • Fields:
    • Added Template:Cd
      • Returns Template:Cd to the power of Template:Cd
      • If the exponent is negative, calculation will be cancelled.
      • If both the base and the exponent are zero, calculation will be cancelled.
      • If the final result does not fit inside 32-bit integer, calculation will be cancelled.
      • Fields:
    • Added Template:Cd
      • Evaluates multiple integer providers and returns product of results.
      • If the final result does not fit inside 32-bit integer, calculation will be cancelled.
      • Fields:
        • Template:Cd – 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 Template:Cd type
          • Requires at least one value.
    • Added Template:Cd
      • Returns Template:Cd divided by Template:Cd
      • Uses truncated integer division (rounds towards zero).
      • Division by zero is treated as an error and will cancel calculation.
      • Fields:
    • Added Template:Cd
      • Returns Template:Cd divided by Template:Cd.
      • Uses floored integer division (rounds towards negative infinity).
      • Division by zero is treated as an error and will cancel calculation.
      • If the final result does not fit inside 32-bit integer, calculation will be cancelled.
      • Fields:
    • Added Template:Cd
    • Added Template:Cd
      • Returns an integer value from a command storage
      • If value is not present, is not a number or path returned multiple values, provider returns value of Template:Cd
      • Conversion of numeric NBT values that are not an integer is undefined
    • Fields:
    • Added Template:Cd
      • Evaluates multiple integer providers and returns sum of results.
      • If the final result does not fit inside 32-bit integer, calculation will be cancelled.
      • Fields:
        • Template:Cd – 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 Template:Cd type
          • Requires at least one value.
    • Added Template:Cd
      • Picks a random integer from a closed range
      • Fields:
    • Added Template:Cd
    • Returns a value from a distribution of weighted number providers.
    • Fields:
  • Float number providers
    • Added a Template:Cd registry.
      • All calculations are peformed using single-precision floating-point numbers ("floats").
      • Result of calculations that produce NaN and Infinity is undefined.
      • Format:
    • Added vanilla float number providers:
      • Template:Cd
        • Returns the default speed multiplier for cooking fuel.
      • Template:Cd
        • Returns the speed multiplier for cooking fuel when used in a normal furnace.
      • Template:Cd
        • Returns the speed multiplier for cooking fuel when used in a block matching the Template:Cd predicate.
      • Template:Cd
        • Returns the default speed multiplier for brewing fuel.
    • Added Template:Cd
    • Added Template:Cd
      • Evaluates multiple float providers and returns arithmetic mean of results.
      • Fields:
        • Template:Cd – 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 Template:Cd type
          • Requires at least one value
    • Added Template:Cd
    • Added Template:Cd
    • Added Template:Cd
      • Returns a constant value.
      • Fields:
    • Can be also written inline as a plain number (Template:Cd is equivalent to Template:Cd})
    • Added Template:Cd
      • Returns the cosine of input
      • Fields:
    • Added Template:Cd
    • Added Template:Cd
      • Evaluates enchantment level-based (Template:Cd) parameter.
      • Fields:
        • Template:Cd: A Level-Based Value giving a value based on the level of the enchantment.
    • Added Template:Cd
      • Fetches and provides the value of an environment attribute (Template:Cd).
      • Fields:
        • Template:Cd – Environment Attribute ID to fetch (must be representable as a float).
    • Added Template:Cd
      • Returns the floored (i.e. rounded towards negative infinity) value of input.
      • Fields:
    • Added Template:Cd
      • Evaluates an integer provider and converts it to a float value.
      • Fields:
    • Added Template:Cd
      • Evaluates multiple float providers and returns square root of the sum of squares.
      • Fields:
        • Template:Cd – 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 Template:Cd type
          • Requires at least one value
    • Added Template:Cd
      • Evaluates multiple float providers and returns the largest of result
      • Fields:
        • Template:Cd – 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 Template:Cd type
          • Requires at least one value.
    • Added Template:Cd
      • Evaluates multiple float providers and returns the smallest of results.
      • Fields:
        • Template:Cd – 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 Template:Cd type
          • Requires at least one value.
    • Added Template:Cd
      • Returns the modulus of left by right
      • Fields:
        • Template:Cd – an inline value or a namespaced ID of a minecraft:context_float_provider type
        • Template:Cd – an inline value or a namespaced ID of a Template:Cd type
    • Added Template:Cd
      • Returns the negation of input.
      • Fields:
    • Added Template:Cd
      • Returns the first case which fulfils its condition or the default if none do.
      • Fields:
    • Added Template:Cd
    • Added Template:Cd
      • Evaluates multiple float providers and returns product of results.
      • Fields:
        • Template:Cd – 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 Template:Cd type
          • Requires at least one value.
    • Added Template:Cd
    • Added Template:Cd
      • Returns the rounded (towards nearest integer, with ties rounding towards positive infinity) value of input.
      • Fields:
    • Added Template:Cd
      • Returns the sine of input.
      • Fields:
    • Added Template:Cd
      • Returns the square root of input.
      • Fields:
    • Added Template:Cd
      • Returns a float value from a command storage.
      • If value is not present, is not a number or path returned multiple values, provider returns value of Template:Cd.
      • Conversion of numeric NBT values that are not a float is undefined.
      • Fields:
      • Template:Cd – a namespaced ID of a command storage
      • Template:Cd – an NBT path
      • Template:Cd – an optional inline value or a namespaced ID of a Template:Cd type, defaults to Template:Cd
    • Added Template:Cd
      • Evaluates multiple float providers and returns sum of results.
      • Fields:
        • Template:Cd – 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 Template:Cd type.
          • Requires at least one value.
    • Added Template:Cd
      • Returns the truncated (rounded towards zero) value of input.
      • Fields:
    • Added Template:Cd
      • Picks a random number from a range
      • Fields:
    • Added Template:Cd
      • Returns a value from a distribution of weighted number providers.
      • Fields:

Minecraft:Options

  • Added Quit Shortcuts option.
    • Can be accessed in the Controls section.
    • Allows keyboard shortcuts that close the game, such as Template:Key on Windows and Template:Key on macOS.
      • Does not work on some Linux desktops.<ref>Template:Bug</ref>
    • Enabled by default.

Minecraft:Particles

  • Added Template:Cd
    • Falls from red poplar leaves blocks.
    • Has no fields.
  • Added Template:Cd
    • Falls from orange poplar leaves blocks.
    • Has no fields.
  • Added Template:Cd
    • Falls from yellow poplar leaves blocks.
    • Has no fields.

Minecraft:Predicates

  • Added Template:Cd
    • Checks value against some range.
    • Fields:
      • Template:Cd – an inline value or a namespaced ID of a Template:Cd type.
      • Template:Cd – one of:
        • An inline value (including a single integer) or a namespaced ID of a Template:Cd type.
          • Will test if result of value is equal to provided test value.
        • An object with fields:
  • Added Template:Cd
    • Checks value against some range.
    • Fields:
      • Template:Cd – an inline value or a namespaced ID of a Template:Cd type.
      • Template:Cd – one of:
        • An inline value (including a single float) or a namespaced ID of a Template:Cd type.
          • Will test if result of value is equal to provided test value.
        • An object with fields:

Minecraft: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.
  • Added render distance and simulation distance sliders to Realm configuration settings.
  • Added a new Realms introduction screen showcasing Realms key features.
    • Accessible from the "Add Realm" button.
    • Automatically shown when entering Realms if a trial is available.
File:JE 26.3 snap10 new Realms introduction UI.png
New Realms introduction screen

Minecraft:Statistics

  • Added Times Slept in a Straw Bed statistic.

Tags

  • Damage Type Tags
    • Added Template:Tag link for all damage types that should not cause tamed wolves to attack their source in order to defend their owner.
  • Entity Tags

Minecraft:UI

Changes

Blocks

Minecraft: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 Template:Cd recipe from the Minecraft:recipe book.
    • It is also accessible via the Creative inventory or through commands where at least one side is not defined in Template:Cd.
    • Previously, empty sides were treated as Minecraft:brick.

File:Hay Bale (UD) JE3.png Hay bale

Minecraft:Sculk sensor

Minecraft:Signs

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

Items

Minecraft:Chorus fruit

  • After it has teleported the player randomly, it now shows the particles in the direction of teleportation.

Minecraft:Explorer Maps

  • Renamed the following explorer maps:
    • Jungle Explorer Map → Jungle Pyramid Map
    • Ocean Explorer Map → Ocean Monument Map
    • Swamp Explorer Map → Swamp Hut Map
    • Trial Explorer Map → Buried Trial Chambers Map
    • Woodland Explorer Map → Woodland Mansion Map
  • Updated existing explorer maps' inventory icon textures:
All texture changes
Structure Before After
Minecraft:Buried Treasure width=32 width=32
Minecraft:Desert Village width=32 width=32
Minecraft:Plains Village width=32 width=32
Minecraft:Savanna Village width=32 width=32
Minecraft:Snowy Village width=32 width=32
Minecraft:Taiga Village width=32 width=32
Minecraft:Jungle Pyramid width=32 width=32
Minecraft:Swamp Hut width=32 width=32
Minecraft:Ocean Monument width=32 width=32
Minecraft:Woodland Mansion width=32 width=32
Minecraft:Trial Chambers width=32 width=32
  • All explorer maps are now unique items; previously they used the same item ID as Minecraft: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 Minecraft: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 Minecraft:crafting table nor in a Minecraft: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 Template:Cd tag can be zoomed out.

Minecraft:Map and Empty Map

Map decorations

All texture changes
Name Before After
Player Locator width=32 width=32
Player Off Map width=32 width=32
Player Off Limits width=32 width=32

Minecraft:Pottery sherds

  • Pottery sherds are now data-driven.

Minecraft:Shield

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

Minecraft:Suspicious stew and Minecraft:mushroom stew

  • Can now be crafted with 2 of any mushroom.

Mobs

General

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

Minecraft:Armadillos

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

Minecraft:Endermen

Minecraft:Shulkers

  • Can no longer teleport onto bedrock.

Minecraft:Sulfur cubes

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

Minecraft:Wandering traders

Non-mob entities

Minecraft:Paintings

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

World generation

Minecraft:Block state providers

Minecraft: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.

Minecraft:Features

    • Changed Template:Cd
      • Added the field Template:Cd – namespaced ID or inline definition of a structure processor list to apply to the template.
  • Changed the Template:Cd feature type
    • Renamed from Template:Cd.
      • 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:
  • Changed the Template:Cd feature type
    • Renamed from Template:Cd.
      • Now exposes more control over the feature functionality.
    • Format changes:
      • Added the field Template:Cd: Block state provider for which block to place.
      • Added the field Template:Cd: Block predicate for which blocks can be replaced by the column.
      • Added the field Template:Cd: Block predicate for which pre-existing blocks to accept as part of a column.
      • Added the field Template:Cd: Block ID, list of block IDs or hash-prefixed block tag ID representing which blocks are avoided when starting placement.
      • Renamed the field Template:Cd to Template:Cd
      • Added the field Template:Cd: int provider (between Template:Cd and Template:Cd) - the number of columns to generate.
      • Added the field Template:Cd: int provider (between Template:Cd and Template:Cd) - the size of the square to attempt to generate columns in.

Minecraft:Noise settings

  • Spawn Target
    • The Template:Cd field has been updated to allow use of any density function, instead of just a subset of those defined within the Template:Cd 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 Template:Cd, Template:Cd and Template:Cd, Template:Cd. 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 Template:Cd.
          • An object with fields:
            • Template:Cd - float, the minimum value of the target range.
            • Template:Cd - float, the maximum value of the target range.

Terrain generator

Other

  • Block predicates
    • Added Template:Cd
      • Checks that every block in a volume matches a given Block Predicate.
      • Format:
        • Template:Cd – list of 3 integers in range -16 to 16 specifying the lower corner of the volume as an offset from the test position.
        • Template:Cd – list of 3 integers in range -16 to 16 specifying the upper corner of the volume as an offset from the test position.
        • Template:Cd – block predicate to test on each position.
  • Block state providers
    • Updated Template:Cd
    • Added Template:Cd
      • Returns the default block state for a randomly chosen block.
      • Format:
        • Template:Cd: block ID, list of block IDs or hash-prefixed block tag, specifying the set of blocks to randomly pick from.
    • Changed Template:Cd
      • Now works on any block with axis or facing properties.
      • Format:
        • Changed the field Template:Cd: Now a block state provider.
        • Added the field Template:Cd: Optional field describing the direction to set.
          • If omitted, a random direction is chosen.
  • Carvers
    • The Template:Cd registry has been renamed to Template:Cd
    • Updated Template:Cd carver type
      • All fields previously under the config field have been inlined to the top-level.
      • Added the Template:Cd field - non-negative Int Provider, the number of cave tunnels to create from a seed chunk.
      • Renamed Template:Cd to Template:Cd
      • Added optional Template:Cd field - Float Provider, acts as a multiplier for the vertical radius of the first segment in each tunnel.
      • Added the Template:Cd field - non-negative Float Provider, acts as a multiplier for the radius of carved tunnels.
      • Added optional Template:Cd field - Boolean
        • If Template:Cd, thickness will be multiplied by, with a 10 % chance: <math>\text{randFloat}\left(0,1\right)\cdot\text{randFloat}\left(0,3\right)+1</math>
        • If not specified, defaults to Template:Cd
      • Removed the Template:Cd field, carvers will replace any block (excluding features).
      • Removed the Template:Cd field, fluids are now always selected by the Template:Cd or Template:Cd configuration in the dimension.
      • Removed the Template:Cd field.
    • Updated Template:Cd carver type
    • Removed Template:Cd carver type
  • Int Providers
    • Added Template:Cd Int provider type
      • Picks a random value in the provided range, with a quadratic bias towards the minimum value.
      • Format: object with fields:
        • Template:Cd - Integer, the minimum selected value (inclusive).
        • Template:Cd - Integer, the maximum selected value (inclusive).
  • 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 Template:Cd registry.
  • 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 Template:Cd 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 Template:Cd registry.
      • Material conditions can also now be specified as an ID reference to an element in the Template:Cd registry.
  • Minecraft: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 Template:Cd
        • 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 Template:Cd, Template:Cd
        • 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 Template:Cd to Template:Cd.
      • Added Template:Cd – non-negative float, a scale factor to apply to the noise output.
      • Added Template:Cd – integer between Template:Cd and Template:Cd, the number of octaves to sample.
      • Added normalize – boolean, or Template:Cd, controls how the output amplitude should be normalized.
        • If Template:Cd, Template:Cd is the expected amplitude of the output (i.e. 99.7% of all samples in Template:Cd)
        • If Template:Cd, Template:Cd is the amplitude of the first octave.
        • If Template:Cd, 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 Template:Cd.
        • Note: normalization is not affected by the Template:Cd field – as such, modifying the amplitude of a single octave will not affect the amplitude of others.
      • Renamed Template:Cd to Template:Cd – list of floats, a scaling factor to apply to each octave.
        • The number of elements in this list must match Template:Cd.
        • 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 Template:Cd.
  • Rule Tests
    • These are the predicates used by ore features (Template:Cd) and rule structure processors (Template:Cd and Template:Cd).
    • Added rule test type Template:Cd
      • Checks the y-level of a block, returning Template:Cd only if it is greater than or equal to Template:Cd and less than or equal to Template:Cd.
      • Format: object with fields:
        • Template:Cd – int, the minimum y value of allowed blocks (inclusive).
        • Template:Cd – int, the maximum y value of allowed blocks (inclusive).
    • Added rule test type Template:Cd
      • This checks a list of Rule Tests for whether all of them return true for the same block.
      • Format: object with fields:
        • Template:Cd - list of Rule Tests, the rules to test the block against.
    • Added Template:Cd
      • This checks a list of rule tests for whether any of them returns true for the same block.
      • Format: object with fields:
        • Template:Cd – list of rule tests, the rules to test the block against.
    • Added Template:Cd
      • This checks a rule test for whether it returns false for a given block.
      • Format: object with fields:
        • Template:Cd – rule test, the rule to test the block against.
  • Structure Placements
    • Added Template:Cd
    • New structure placement that places a single instance of the structure at the dimension origin.
      • The dimension origin is defined as the Template:Cd for noise settings based dimensions, otherwise Chunk (0, 0).
    • No additional fields.
  • Vertical Anchors
    • Added a new option for vertical Anchors: Template:Cd
      • Specifies an offset to the sea level of the dimension.

Command format

General

Template:Cmd

Template:Cmd

  • Added new Template:Cd 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 Template:Cd loot type.
    • Syntax:
  • The items condition sub-command now takes a slot source as argument instead of a slot.

Template:Cmd

  • 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 Template:Cd.

Template:Cmd

  • Now takes a slot source as argument in place of anywhere a slot was previously used.
    • It will be evaluated with the Template:Cd loot type.
    • Can be a slot source in either inline or reference form.
    • Can be a slot source targeting multiple slots.
    • The Template:Cd 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.
      • When there are fewer destination slots than there are source items, the remaining items are ignored.
    • String notation slot ranges in the form Template:Cd or Template:Cd are still permitted.
  • The entity argument in the Template:Cd 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 Template:Cd and Template:Cd sub-commands, each with syntax identical to Template:Cmd.
    • Template:Cmd
      • 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.
    • Template:Cmd
      • 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.

Template:Cmd

Template:Cmd

Template:Cmd

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

Template:Cmd

  • Whether a block is safe to spread a player to is now controlled by the Template:Cd block tag.

Template:Cmd

  • 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.
  • 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 Template:Cd.

Template:Cmd

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

Template:Cmd

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

Template:Cmd

Gameplay

Minecraft:Advancements

Minecraft:Closed captions

Minecraft: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.

Minecraft:Enchantments

Minecraft:Game mode switcher

Minecraft:Spectator

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

Minecraft: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

Minecraft:Advancement definition

  • Rewards
    • The Template:Cd sub-field in the Template:Cd 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 Template:Cd 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 Template:Cd condition containing that list.
      • Additionally, the Template:Cd field of predicates has been renamed to Template:Cd and is now mandatory (previously it defaulted to Template:Cd).
    • Some fields that previously accepted only inline loot conditions now also accept a namespaced ID of a Template:Cd
    • The Template:Cd field, available on all triggers except Template:Cd, now accepts an inline value or a namespaced ID of a Template:Cd type.
      • To avoid duplication, this field is not mentioned in entries below.
  • Changed Template:Cd trigger
    • Entries in the Template:Cd 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 Template:Cd type.
  • Changed Template:Cd trigger
    • The Template:Cd field has been renamed to Template:Cd 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 Template:Cd type.
      • If a tag or a list is used, trigger will run when any listed loot table is generated.
  • Changed Template:Cd trigger
    • The Template:Cd field has been renamed to Template:Cd and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a Template:Cd type.
      • If a tag or a list is used, trigger will run when any listed recipe is used.
  • Changed Template:Cd trigger
    • The Template:Cd field has been renamed to Template:Cd and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a Template:Cd type.
      • If a tag or a list is used, trigger will run when any listed recipe is used.
  • Changed Template:Cd trigger
    • The Template:Cd field has been renamed to Template:Cd and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a Template:Cd type.
      • If a tag or a list is used, trigger will run when any listed recipe is unlocked

Minecraft:Block entity data

  • Template:Cd and Template:Cd
    • 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 Template:Cd (defaults to Template:Cd) has been added to restore previous behavior.
      • Placed signs and items with the Template:Cd component containing sign data stored in worlds saved before this version will have Template:Cd set to Template:Cd
      • 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 Template:Cd 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 Template:Cd, Template:Cd and Template:Cd components.
  • Template:Cd
    • The following fields are now stored as integers rather than shorts:
      • Changed the Template:Cd field from a short to an integer, this is the amount of time that the current brewing process has taken so far.
      • Changed the Template:Cd field from a byte to an integer, this is the amount of fuel remaining.
    • The following new fields have been added:
      • Added the Template:Cd integer field, this is the total amount of time the current brewing process will take.
      • Added the Template:Cd integer field, this represents the amount of fuel that was added in the last refuel.
      • Added the Template:Cd float field, this will be used to speed up or slow down the next brewing process.
  • Template:Cd, Template:Cd and Template:Cd
    • The following fields are now stored as integers rather than shorts:
      • Changed the Template:Cd field from a short to an integer, this is the amount of time that the current cooking process has taken so far.
      • Changed the Template:Cd field from a short to an integer, this is the total amount of time the current cooking process will take.
      • Changed the Template:Cd field from a short to an integer, this is the amount of burn time remaining.
      • Changed the Template:Cd 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 Template:Cd float field, this will be used to speed up or slow down the next cooking process.

Minecraft:Block entity format

Minecraft:Block states

Block transformers

  • Added Template:Cd registry containing rules for transforming a block into another block.
  • Format:
    • List of objects with fields:
      • Template:Cd — Block State Provider, used to provide the state for the transformed block.
        • If the Block State Provider returns no result (as by Template:Cd, 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.
      • Template:Cd — optional field, Sound Event to play on interaction, e. g. Template:Cd.
        • If not present, defaults to play no Sound Event.
      • Template:Cd — optional field, particles to play on interaction.
      • Template:Cd — optional field, list of Directions specifying which faces on the clicked Block that cannot be interacted with.
      • Template:Cd — optional Loot Table, the Loot Table to use for dropping items on a successful transformation, e. g. Template:Cd.
        • If not present, defaults to using no Loot Table.
      • Template:Cd — optional field, configures from where in the Block any loot should drop.
      • Template:Cd — optional Boolean, if the transformed block should update based on neighboring blocks. This allows e.g. fences to connect.
        • If not present, defaults to true.
      • Template:Cd — optional field, configures how nearby blocks should be affected by the transformation.
        • If not present, defaults to Template:Cd.
        • Values:
          • Template:Cd — only affects the Block interacted with.
          • Template:Cd — 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.
      • Template:Cd — optional Boolean, determines if the item should be consumed or not.
        • Only applies to stackable items.
        • If not present, defaults to Template:Cd.
      • Template:Cd — optional int, determines how much damage the item takes with each use.
        • Only applies to non-stackable items.
        • If not present, defaults to Template:Cd.
    • Default values in vanilla:

Minecraft: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 Minecraft: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.
  • Renamed some key code display names:

Minecraft:Data component format

  • Changed Template:Cd
    • The format of inline material definitions has been updated
    • Trim Materials
      • The format of elements in the Template:Cd registry has been updated:
        • Template:Cd has been replaced with Template:Cd - Palette Texture ID to be used for this material.
        • Template:Cd has been removed, overrides are now defined in the Resource Pack Equipment Asset.
  • Removed Template:Cd
    • This has been replaced by Template:Cd and Template:Cd.
      • Existing items in the world will be migrated to using the default Template:Cd.
      • Setting both of these new components to the same value will be functionally identical to the old component, except for:
        • The Template:Cmd command – animation type now specified by the command.
        • Items being dropped by entities.
  • Removed Template:Cd
    • 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.

Minecraft:Data pack

Minecraft: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.

Minecraft:Environment attribute

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

Equipment assets

  • The Template:Cd field has been replaced with Template:Cd. 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:
      • Template:Cd – object with fields, the material and/or pattern to match.
        • Template:Cd – optional trim material ID, the material to match (if specified).
        • Template:Cd – optional trim pattern ID, the pattern to match (if specified).
          • Note: this is not the palette ID, as Template:Cd 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.
      • Template:Cd – optional trim pattern asset ID, a replacement texture to use if this entry matches.
        • Textures are specified in the same format as Template:Cd
        • If not specified, the default texture for the pattern will be used.
      • Template:Cd – 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.

Game window and input backend

  • The minimum window size is now 320×240 pixels.
  • Minecraft now uses Template:WP instead of Template:WP 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.

Minecraft:GUI

  • The sub-headings and categories in different tabs of Minecraft:Options now use a boldface, underlined and centered format, and can now be focused.

Minecraft:Game rule

  • Projectiles used by players in Adventure mode can no longer destroy decorated pots or chorus flowers, and tridents can no longer destroy pointed dripstone, even when the projectiles_can_break_blocks game rule is set to true, unless the projectile carries a can_break component that permits the target block.

Minecraft:Instrument definition

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

Minecraft:Item models

level.dat

Minecraft:Loot functions

  • The Template:Cd field is now available in all loot functions and has been renamed to Template:Cd.
    • 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 Template:Cd loot condition type.
    • The Template:Cd field (describing function type) has been renamed to Template:Cd.
  • Changed Template:Cd
    • The Template:Cd 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 Template:Cd and produced a Template:Cd
      • 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 Template:Cd to Template:Cd (or one of the explorer map items)
      • If no matching structure is found, the item is left without a Template:Cd – use Template:Cd with Template:Cd to drop those, as the vanilla loot tables and villager trades now do.
    • The Template:Cd 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 Template:Cd type.
  • Changed Template:Cd
    • The Template:Cd 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 Template:Cd type.
    • Added optional condition field which accepts an inline value or a namespaced ID of a Template:Cd type.
    • Inline format of Template:Cd (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 Template:Cd 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 Template:Cd type.
    • Can only use an inline definition in a top-level file.
  • Removed Template:Cd
    • This function has become obsolete, as any field that takes a function now accepts (among other things) a namespaced ID to other functions.

Minecraft:Loot tables

  • Multiple block loot tables now reference predicates for checking if a tool has Minecraft:Silk Touch and is Minecraft:shears instead of inlining a copy of those checks.
  • The Template:Cd and Template:Cd fields now accept an inline value or a namespaced ID.
  • 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:
    • Existing Template:Cd types for predicates, item modifiers and slot sources are now obsolete and have been removed
    • Added Template:Cd loot table type
      • Currently used for Template:Cmd command.
      • It takes the following parameters:
        • Everything included in Template:Cd
        • Template:Cd, the block entity of the block at the position given in a command
        • Template:Cd, the current state of the block at the position given in a command
    • Added Template:Cd loot table type
      • Currently used to evaluate cooking and brewing fuel values.
      • It takes the following parameters:
    • Changed Template:Cd loot table type
      • Block entities are now available in context and can be matched by conditions like Template:Cd
    • Changed Template:Cd loot table type
      • Template:Cd is now available in context, as the center of the block being interacted with.
  • Loot pool entries
    • The Template:Cd field in loot pool entries has been renamed to condition and now accepts an inline value or a namespaced ID of a Template:Cd type.
    • The Template:Cd field in loot pool entries has been renamed to modifier and now accepts an inline value (including list as a short form of Template:Cd) or a namespaced ID of a Template:Cd type.
    • Changed Template:Cd loot pool entry
      • The Template:Cd field has been renamed to Template:Cd and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a Template:Cd type.
    • Changed Template:Cd loot pool entry
      • The Template:Cd 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 Template:Cd type.
      • Added Template:Cd field, working the same as in Template:Cd pool entry:
        • If Template:Cd, each entry inside tag will be added to outer pool, with weights equal to weight of this entry.
        • If Template:Cd, 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.

Minecraft:Minecraft Server Management Protocol 3.1.0

Minecraft:Number providers

  • Added vanilla number providers
    • Template:Cd
      • Returns the burn time in ticks for bamboo and scaffolding.
    • Template:Cd
      • Returns the burn time in ticks for blaze rods.
    • Template:Cd
      • Returns the burn time in ticks for boats.
    • Template:Cd
      • Returns the burn time in ticks for coal.
    • Template:Cd
      • Returns the burn time in ticks for coal blocks.
    • Template:Cd
      • Returns the burn time in ticks for dried kelp blocks.
    • Template:Cd
      • Returns the burn time in ticks for various dry plants.
    • Template:Cd
      • Returns the burn time in ticks for hanging signs.
    • Template:Cd
      • Returns the burn time in ticks for lava buckets.
    • Template:Cd
      • Returns the burn time in ticks for mangrove roots.
    • Template:Cd
      • Returns the burn time in ticks for wood blocks.
    • Template:Cd
      • Returns the burn time in ticks for very small wood items such as buttons.
    • Template:Cd
      • Returns the burn time in ticks for large wood items such as doors.
    • Template:Cd
      • Returns the burn time in ticks for small wood items such as bows.
    • Template:Cd
      • Returns the burn time in ticks for wood slabs.
    • Template:Cd
      • Returns the burn time in ticks for most wool blocks.
    • Template:Cd
      • Returns the burn time in ticks for wool carpets.
    • Template:Cd
      • Returns the burn time in ticks for wool slabs and cushions.
    • Template:Cd
      • Returns the default speed multiplier for cooking fuel.
    • Template:Cd
      • Returns the default speed multiplier for brewing fuel.
    • Template:Cd
      • Returns the default number of brews provided by brewing fuel.
  • Changed Template:Cd
    • The Template:Cd field was renamed to Template:Cd 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 Template:Cd type.
    • Now requires at least one operand.
    • When used in integer mode, integer mode is used for intermediate steps as well.
  • Changed Template:Cd float provider type:
    • Now uses standard modulus instead of floor modulus, matching the int variant.
  • Changed Template:Cd float provider type:
    • Raising 0 to the power of 0 will now cause an error and halt computation, matching the int variant.

Minecraft:Options

  • The Online button used to access the Online Options screen will now always be shown in the Options menu.
  • On macOS, Exclusive Fullscreen is now available again.
  • On macOS, added a "Menu/Dock Visibility" option in Video Settings, which controls whether the macOS Menu bar and Dock can be revealed by moving the mouse to the edge of the screen while in fullscreen.
  • The cursor is now confined to the window while Exclusive Fullscreen is active.
  • The sub-headings and categories in the Minecraft:Game rules menu can now be focused for narration.

Minecraft:Panorama

Minecraft:Particles

Minecraft:Predicate

  • Changed Template:Cd
    • The Template:Cd 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 Template:Cd type.
    • Note: values of this type can no longer be shortened to a single list, a full object with type Template:Cd needs to be used explicitly.
  • Changed Template:Cd
    • The Template:Cd 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 Template:Cd type.
  • Removed Template:Cd
    • This condition has become obsolete, as any field that takes a loot condition now accepts (among other things) a namespaced ID to other conditions.
  • Removed Template:Cd
    • This condition has been split into integer and float variants.
  • Potion predicates
    • The Template:Cd 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:
    • The Template:Cd 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:

<syntaxhighlight lang="json">

   {
       "minecraft:<effect type>": {
         "duration": "<integer bounds representing a duration in ticks>",
         "amplifier": "<integer bounds>",
         "ambient": true/false,
         "visible": true/false
       }
   }

</syntaxhighlight>

  • Example of matching on several different effects and criteria:

<syntaxhighlight lang="json">

     "effects": {
       "minecraft:jump_boost": {
         "duration": 3600,
         "amplifier": 5,
         "ambient": true,
         "visible": true
       },
       "minecraft:speed": {
         "duration": {
           "min": 360,
           "max": 3600
         },
         "amplifier": {
           "min": 2
         }
       },
       "minecraft:resistance": {}
     }

</syntaxhighlight>

  • Added Template:Cd condition type
    • Matches block state and optionally block entity data and components (if present).
    • Fields (same as elements of Template:Cd components):
      • Template:Cd – optional block id, list of namespaced block IDs, or hash-prefixed block tag to match.
      • Template:Cd: optional map of block state property keys to values to match.
      • Template:Cd: optional block entity NBT to match.
        • match will fail if this field is present, but block entity is not available in context.
      • Template:Cd – optional map of exact components to match.
        • match will fail if this field is present, but block entity is not available in context.
      • Template:Cd – optional map of component predicates to match.
        • match will fail if this field is present, but block entity is not available in context.

Minecraft: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.

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 Template:Cd number provider used by the furnace fuel components.
  • Potion brewing recipes
    • Potion brewing recipes are now data-driven. New recipes can be added via Minecraft: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:

<syntaxhighlight lang="json"> {

 "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"
 }

} </syntaxhighlight>

  • Any items may be used in any of the 3 slots, e.g.:

<syntaxhighlight lang="json"> {

 "type": "minecraft:brewing",
 "input": { "item": "minecraft:bucket" },
 "output": { "id": "minecraft:sulfur_cube_bucket" },
 "reagent": { "item": "minecraft:potent_sulfur" }

} </syntaxhighlight>

Rendering

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

Minecraft:Resource pack

Minecraft:Servers

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

Minecraft:Server properties

Minecraft: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
      • core/oit_depth_bounds_cull.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:
        • Template:Cd - A boolean indicating if OIT is enabled.
        • Template:Cd - A boolean indicating that the OIT algorithm should always write depth for the executing pipeline during the depth bounds stag.
        • Template:Cd - A boolean indicating if the depth bounds pass is being executed.
        • Template:Cd - A boolean indicating if the transmittance pass is being executed.
        • Template:Cd - A boolean indicating if the accumulate pass is being executed.
        • Template:Cd - A boolean indicating if either the depth bounds or transmittance pass is being executed.
        • Template:Cd - A boolean indicating that the OIT algorithm should emulate additive blending for the executing pipeline.
        • Template:Cd - A float determining above which alpha threshold a fragment should be considered solid and not go through OIT.
        • Template:Cd - An integer internal to the OIT algorithm.
        • Template:Cd - An integer internal to the OIT algorithm.
        • Template:Cd - An integer internal to the OIT algorithm.
        • Template:Cd - A boolean indicating if the current rendering backend uses the depth range of Template:Cd, it is available globally to all shaders independently of the OIT setting.
        • Template:Cd – 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.
        • 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
    • 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.
    • There's a new debug keybind for toggling this functionality on and off, by default set to F3 + X.
  • core/blit_depth.fsh added as a way to copy contents of depth textures as an alternative to the rendering backend-based copying methods that do not work on some devices.
  • terrain.vsh and terrain.fsh shaders are refactored to support multi-draw.
  • Some of the members in Template:Cd and Template:Cd are shuffled to use less memory for those uniform blocks.
  • Removed core shaders
    • Template:Cd and Template:Cd were removed and text background in Text Display Entities is now rendered using the text shaders.
  • Always-on Post Effect Support
    • A resource pack can now define a Template:Cd post effect.
    • It will be applied before other post effects, including the ones enabled by the new Template:Cd command.
    • This post effect is always on as long as the resource pack is loaded, and cannot be controlled by the Template:Cd 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.
  • 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 Template:Cd instead of Template:Cd
    • 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 Template:Cd – a boolean indicating if Template:Cd follows Vulkan or OpenGL (Template:Cd) semantics.

Minecraft:Slot sources

  • Slot sources can now be defined as files inside a datapack, within the Template:Cd folder.
    • Can be used in commands which take slot sources as arguments.
    • Can be used in inline slot sources using the Template:Cd type.
  • Template:Cd is no longer restricted to only selecting non-empty slots.
  • Added Template:Cd
    • Uses the referenced slot source.
    • Fields:
  • Changed Template:Cd
    • The Template:Cd field has a new valid type container, which sources slots from a container or inventory provided through loot context.
    • The Template:Cd field is now optional.
      • Defaults to the container source type when absent.
  • Changed Template:Cd
    • The Template:Cd 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 Template:Cd type.
    • Inline format of Template:Cd (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 Template:Cd type.
      • This format is now available consistently available for all fields of slot source.
    • Can only use an inline definition in a top-level file.
  • Removed Template:Cd
    • This slot source has become obsolete, as any field that takes slot source now accepts (among other fields) a namespaced ID of a Template:Cd type.

Minecraft:Sounds

Tags

Template:Collapse

Template:Collapse

    • The tag Template:Cd no longer prevents an item from being classified as fuel item.

Minecraft:Textures

  • Equipment Assets
    • A new optional Template:Cd field controls which trim material palettes should be replaced for this equipment asset (formerly controlled by Template:Cd in the trim material)
      • Format: map from original Palette ID to a replacement Palette ID
  • GUI widgets sprites
    • Added the following textures:
      • gui/sprites/widget/realms_button.png
      • gui/sprites/widget/realms_button_disabled.png
      • gui/sprites/widget/realms_button_highlighted.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
  • Palette Textures
    • All armor trim palette textures have been moved from Template:Cd to Template:Cd
      • The base armor trim palette texture has instead been moved to Template:Cd
    • Entity armor trim material textures are no longer generated into the Template:Cd atlas with Template:Cd, but rather generated on-demand
      • The base palette id is now specified in a new Template:Cd mcmeta section field
      • This section has a single field: Template:Cd - the base Palette Texture ID to remap from
    • Item armor trim material textures are still generated with Template:Cd as before
    • Palette Texture locations in the Template:Cd and Template:Cd fields have been replaced by Palette Texture IDs - i.e. Template:Cd now resolves to Template:Cd
  • UI illustrations sprites
    • Added new textures:
      • gui/realms/friends.png
      • gui/realms/minigames.png
      • gui/realms/private_server.png

Minecraft: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.

Minecraft:Villager trade definition

Minecraft:World Options

File:World Options JE3.png
New World Options UI
  • The World Options button has been moved to the Minecraft:Game Menu where the Open to LAN button used to be, replacing it.
    • The "Game Mode" button has been renamed to "Default Game Mode"
    • 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 "General" section has a new addition, Personal Game Mode: the player's active game mode in the current world (equivalent to the Template:Cmd command, or Template:Keys)
    • The "Multiplayer" section contains four 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.
      • Force Game Mode: controls whether other players game mode is forced to match the default game mode of the world or not.

Fixes

Template:Fixes

Videos

Template:Slicedlime

Gallery

Mojang screenshots

Notes

Template:Notelist

References

Template:Reflist

Navigation

Template:Navbox Java Edition versions

Minecraft:de:26.3 Minecraft:es:Java Edition 26.3 Minecraft:fr:Édition Java 26.3 Minecraft:he:Java Edition 26.3 Minecraft:it:Java Edition 26.3 Minecraft:ja:Java Edition 26.3 Minecraft:lzh:爪哇版二六點三 Minecraft:pt:Edição Java 26.3 Minecraft:ru:26.3 (Java Edition) Minecraft:uk:26.3 (Java Edition) Minecraft:zh:Java版26.3