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
 
(19 intermediate revisions by the same user not shown)
Line 2: Line 2:
| title = Minecraft 26.3
| title = Minecraft 26.3
| edition = Java
| edition = Java
| name = [[Minecraft:Wilderness Bound]]
| planned = yes
| planned = yes
| date = Q3 2026
| date = September 2026
| prevparent = 26.2
| prevparent = 26.2
| prev =
| prev =
| next =  
| next =  
| nextparent =  
| nextparent =  
}}{{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 the new [[Minecraft:Poplar|poplars]], [[Minecraft:red shrub]]s, [[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 beds]], [[Minecraft:cushion]]s, and a new [[Minecraft:Structure (disambiguation)|structure]] called [[Minecraft:abandoned camp]].
'''26.3''', the release of '''[[Minecraft:Wilderness Bound]]''', is an upcoming [[Minecraft:game drop]] for {{JE}} set to release in September 2026, which adds the [[Minecraft:dappled forest]] biome with the new [[Minecraft:poplar]]s, [[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]].


== Additions ==
== Additions ==
Line 119: Line 120:
|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 178: Line 182:
* 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 191:
| 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]]'''
Line 193: Line 198:
* 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 16 different color variations.
* Crafted using [[Minecraft:concrete]] in a [[Minecraft:crafting table]] (they cannot be crafted using a [[Minecraft:stonecutter]]).


=== Items ===
=== Items ===
'''New [[Minecraft:explorer map]]s'''
New '''[[Minecraft:Explorer Map]]s'''
* [[File:Abandoned_Campsite_Map_JE1.png|32px]] Added abandoned campsite maps showing the location of other [[Minecraft:abandoned camp]]s in the following biomes:
* [[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|Bamboo Jungle}}
** {{BiomeLink|Cherry Grove}}
** {{BiomeLink|Cherry Grove}}
Line 212: Line 213:


* Added explorer maps for the following structures:
* Added explorer maps for the following structures:
** [[File:Ancient_City_Map_JE1.png|32px]] [[Minecraft:Ancient City]]
** [[File:Buried_Ancient_City_Map_JE2.png|32px]] [[Minecraft:Ancient City]]
** [[File:Mineshaft_Map_JE1.png|32px]] [[Minecraft:Mineshaft]]
** [[File:Mineshaft_Map_JE1.png|32px]] [[Minecraft:Mineshaft]]
** [[File:Desert_Pyramid_Map_JE1.png|32px]] [[Minecraft:Desert Pyramid]]
** [[File:Desert_Pyramid_Map_JE1.png|32px]] [[Minecraft:Desert Pyramid]]
** [[File:Warm_Ocean_Ruins_Map_JE1.png|32px]] [[Minecraft:Warm Ocean Ruins]]
** [[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.
* 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.


Line 233: Line 234:
** 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.
Line 289: Line 291:
** 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:gunpowder]].
** 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 campsite maps showing the location of other abandoned camps can be found in the "common chest" loot of abandoned camps.
** 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.
** Explorer maps for several other structures can be found in the "secret chest" loot of abandoned camps.


=== Command format ===
=== Command format ===
'''{{cmd|compute}}'''
* Evaluates {{cd|minecraft:number_provider}} in various contexts.
* In all contexts {{cd|origin}} is set to current command context position, while {{cd|this}} entity is set to {{cd|@s}}.
* Syntax:
** {{cd|/compute <target> <provider> [<scale>{{!}}integer]}}, where:
*** {{cd|<target>}} — one of:
**** {{cd|default}} — runs provider in {{cd|minecraft:command_compute_default}} context, where only common arguments (position and {{cd|this}} entity) are available.
**** {{cd|block <pos>}} — runs provider in {{cd|minecraft:command_compute_position}} context, where block state and block position are set based on block at position {{cd|<pos>}}.
**** {{cd|entity <entity selector>}} — runs provider in {{cd|minecraft:command_compute_entity}} context, where {{cd|target_entity}} is set to selector result.
*** {{cd|<provider>}} — either an element of {{cd|minecraft:number_provider}} registry or inline value.
*** {{cd|<scale>}} — optional scale value, defaults to {{cd|1.0}}.
**** Final result will be multiplied by {{cd|<scale>}} and rounded towards negative infinity.
*** {{cd|integer}} — optional marker to use integer mode.
**** Due to truncation between intermediate steps this mode is not equivalent to float mode even if scale is {{cd|1.0}}.
* Command syntax has been modified to take into account number provider split:
** {{cmd|compute <''target''> integer <''int_provider''>}}
*** Where <code><''int_provider''></code> is either an element of <code>minecraft:context_int_provider</code> registry or an inline value.
** {{cmd|compute <''target''> float <''float_provider''> [<''scale''>]}}
*** Where <code><''float_provider''></code> is either an element of <code>minecraft:context_float_provider</code> registry or an inline value.
* If evaluation of a number provider fails (for example due to division by zero), command will fail.
'''{{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 318: Line 341:
** Format: object with fields:
** Format: object with fields:
*** {{cd|type}} – swing animation type, one of {{cd|whack}} or {{cd|stab}}.
*** {{cd|type}} – swing animation type, one of {{cd|whack}} or {{cd|stab}}.
*** {{cd|duration}} – positive integer, the length of the animation in ticks.
*** {{cd|duration}} – non-negative integer, the length of the animation in ticks.
 
* Added {{cd|minecraft:interact_animation}}
** The animation to play when the item is being used to interact with something.
** Format: same as {{cd|minecraft:attack_animation}}


* Added {{cd|minecraft:block_transformer}}
* Added {{cd|minecraft:block_transformer}}
Line 374: Line 393:
** [[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.
*** {{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.


* Added {{cd|minecraft:sign_text_front}} and {{cd|minecraft:sign_text_back}}
* Added {{cd|minecraft:mob_visibility}}
** 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.
** 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}}
** Two identical components that represent text in front and back of a sign.
** Two identical components that represent text in front and back of a sign.
** Contents will be displayed in item tooltip.
** Contents will be displayed in item tooltip.
Line 410: Line 453:
*** {{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 424: Line 459:
*** {{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 489: Line 527:
*** {{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 {{cd|#concrete_slabs}}
|-
*** Contains all concrete slab blocks.
! {{code|key.keyboard.keypad.a}}
** Added {{cd|#concrete_stairs}}
| {{btn|Keypad A}}
*** Contains all concrete stair 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>}}
 
|-
* Damage Type Tags
! {{code|key.keyboard.keypad.e}}
** 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.
| {{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}}
|}


* Entity Tags
'''[[Minecraft:Language]]s'''
** Added {{cd|#cannot_be_dismounted_by_item_usage}}
* Added support for the {{w|Gothic language|Gothic}} language.
*** Contains all entities which cannot be dismounted by items.


* Item Tags
'''[[Minecraft:Loot function]]s'''
** Added {{cd|#cloneable_maps}}
* Added {{cd|minecraft:command_slot_source}} loot table type.
*** Contains filled maps plus all explorer maps items and buried treasure maps, used as the input to the {{cd|map_cloning}} recipe.
** Currently used to evaluate slot sources with the {{cmd|item}} and {{cmd|execute}} commands.
** Added {{cd|#concrete_slabs}}
** It takes the following parameters:
*** Contains all concrete slab items.
*** {{cd|container}}, the container or inventory being evaluated.
** Added {{cd|#concrete_stairs}}
*** {{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 {{cd|#cushions}}
** Added {{cd|#douses_campfires}}
*** Contains items that can douse a lit [[Minecraft:campfire]] block.
** Added {{cd|#extendable_maps}}
*** 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.
**{{Collapse
|title=Added 12 tags.
|content=
* added {{cd|d=and|#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|#on_ancient_city_maps|#on_desert_pyramid_maps|#on_mineshaft_maps|#on_ocean_ruin_warm_maps}}}}


== 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}}
** {{cd|minecraft:compostable/medium_high}}
*** 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}}


'''[[File:Hay Bale (UD) JE3.png|32px]] [[Minecraft:Hay Bale|Hay bale]]'''
* Added {{cd|minecraft:product}}
* 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.
** 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.


'''[[Minecraft:Sign]]s'''
* Added {{cd|minecraft:minimum}}
* 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 minimum value of the operands.
** Requires at least one operand.
 
* Added {{cd|minecraft:maximum}}
** 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 maximum value of the operands.
** Requires at least one operand.
 
* Added {{cd|minecraft:average}}
** 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 average value of the operands.
** Requires at least one operand.
 
* Added {{cd|minecraft:number_dispatcher}} type
** 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.


=== Items ===
* Added {{cd|minecraft:conditional}} type
'''Explorer maps'''
** Returns the value from {{cd|on_true}} if its condition or {{cd|on_false}} if not.
* Updated existing explorer maps' inventory icon textures:
** Fields:
{| class="wikitable collapsible" style="text-align: center;"
*** {{cd|conditions}} – a {{cd|minecraft:predicate}}
|+ All texture changes
*** {{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}}
! Structure
**** Defaults to a constant {{cd|0}} if omitted.
! Before
 
! After
* Added {{cd|minecraft:weighted_list}}
|-
** Returns a value from a distribution of weighted number providers.
| [[Minecraft:Buried Treasure]]
** Fields:
| [[File:Map_(item)_JE2.png|width=32]]
*** {{cd|distribution}} – a list of objects with the following fields.
| [[File:Buried_Treasure_Map_JE3.png|width=32]]
**** Fields:
|-
***** {{cd|data}} – a {{cd|minecraft:number_provider}}
| [[Minecraft:Desert Village]]
***** {{cd|weight}} – a positive integer
| [[File:Village_Map_JE1.png|width=32]]
 
| [[File:Desert_Village_Map_JE2.png|width=32]]
* Integer number providers:
|-
** Added the {{cd|minecraft:context_int_provider}} registry.
| [[Minecraft:Plains Village]]
** All calculations are performed using 32-bit integer limits.
| [[File:Village_Map_JE1.png|width=32]]
** Result of calculations that provide invalid values (like division by zero) is undefined.
| [[File:Plains_Village_Map_JE2.png|width=32]]
** Format:
|-
*** {{cd|type}} – a namespaced ID from {{cd|minecraft:context_int_provider_type}} registry
| [[Minecraft:Savanna Village]]
*** {{cd|<''type-specific fields''>}}
| [[File:Village_Map_JE1.png|width=32]]
** Added {{cd|minecraft:abs}}
| [[File:Savanna_Village_Map_JE2.png|width=32]]
*** Returns the absolute value of {{cd|input}}.
|-
*** If the final result does not fit inside 32-bit integer limit, calculation will be canceled.
| [[Minecraft:Snowy Village]]
*** Fields:
| [[File:Village_Map_JE1.png|width=32]]
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
| [[File:Snowy_Village_Map_JE2.png|width=32]]
** Added {{cd|minecraft:avg}}
|-
*** Evaluates multiple integer providers and returns arithmetic mean of results.
| [[Minecraft:Taiga Village]]
*** Division rounds towards {{cd|0}}
| [[File:Village_Map_JE1.png|width=32]]
*** Fields:
| [[File:Taiga_Village_Map_JE2.png|width=32]]
**** {{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.
| [[Minecraft:Jungle Pyramid]]
** Added {{cd|minecraft:binomial}}
| [[File:Village_Map_JE1.png|width=32]]
*** Makes {{cd|n}} random coin flips with probability of succeeding equal to {{cd|p}}, then returns number of successes.
| [[File:Jungle_Pyramid_Explorer_Map_JE2.png|width=32]]
*** Fields:
|-
**** {{cd|n}} – number of coin flips, an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
| [[Minecraft:Swamp Hut]]
**** {{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.
| [[File:Village_Map_JE1.png|width=32]]
** Added {{cd|minecraft:conditional}}
| [[File:Swamp_Hut_Explorer_Map_JE2.png|width=32]]
*** Returns the value from {{cd|on_true}} if its condition is fulfilled or {{cd|on_false}} if not.
|-
*** Fields:
| [[Minecraft:Ocean Monument]]
**** {{cd|conditions}} – an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
| [[File:Ocean_Explorer_Map_JE2.png|width=32]]
**** {{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.
| [[File:Ocean_Monument_Explorer_Map_JE3.png|width=32]]
**** {{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.
| [[Minecraft:Woodland Mansion]]
** Added {{cd|minecraft:constant}}
| [[File:Woodland_Explorer_Map_JE2.png|width=32]]
*** Returns a constant value.
| [[File:Woodland_Mansion_Explorer_Map_JE3.png|width=32]]
*** Fields:
|-
**** {{cd|value}} – an integer
| [[Minecraft:Trial Chambers]]
*** Can be also written inline as a plain number ({{cd|foo: 1}} is equivalent to {{cd|foo: &lbrace;type:"minecraft:constant",value:1&rbrace;}})
| [[File:Trial_Explorer_Map_JE1.png|width=32]]
** Added {{cd|minecraft:sub}}
| [[File:Trial_Chambers_Explorer_Map_JE2.png|width=32]]
*** Returns {{cd|left}} minus {{cd|right}}
|-
*** If the final result does not fit inside 32-bit integer, calculation will be cancelled.
|}
*** Fields:
* Several explorer maps have been renamed:
**** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** "Jungle Explorer Map" has been renamed to "Jungle Pyramid Explorer Map".
**** {{cd|right}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** "Ocean Explorer Map" has been renamed to "Ocean Monument Explorer Map".
** Added {{cd|minecraft:from_float}}
** "Swamp Explorer Map" has been renamed to "Swamp Hut Explorer Map".
*** Evaluates a float provider and converts it to an integer value.
** "Trial Explorer Map" has been renamed to "Trial Chambers Explorer Map".
*** Non-integer values will be truncated (i.e. rounded towards zero).
** "Woodland Explorer Map" has been renamed to "Woodland Mansion Explorer Map".
*** Values that do not fit inside 32-bit integer (including {{cd|NaN}}) are treated as errors and will cancel calculation.
* The player icon on maps has been updated to always show the direction the player is facing.
*** Fields:
{| class="wikitable collapsible" style="text-align: center;"
**** {{cd|input}} – an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
|+ All texture changes
** Added {{cd|minecraft:max}}
|-
*** Evaluates multiple integer providers and returns the largest of results.
! Name
*** Fields:
! Before
**** {{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.
! After
***** Requires at least one value.
|-
** Added {{cd|minecraft:min}}
| Player Locator
*** Evaluates multiple integer providers and returns the smallest of results.
| [[File:Player (texture) JE1 BE1.png|width=32]]
*** Fields:
| [[File:Player (texture) JE2 BE2.png|width=32]]
**** {{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.
| Player Off Map
** Added {{cd|minecraft:mod}}
| [[File:Player Off Map (texture) JE1 BE1.png|width=32]]
*** Returns the modulus of {{cd|left}} by {{cd|right}}
| [[File:Player off map (texture) JE2 BE2.png|width=32]]
*** Uses truncated integer division (rounds towards zero).
|-
*** Division by zero is treated as an error and will cancel calculation.
| Player Off Limits
*** Fields:
| [[File:Player Off Limits (texture) JE1.png|width=32]]
**** {{cd|left}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type
| [[File:Player off limits (texture) JE2.png|width=32]]
**** {{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.
** Enabled by default.
 
'''[[Minecraft:Particles]]'''
* Added {{cd|minecraft:red_poplar_leaves}}
** Falls from red poplar leaves blocks.
** Has no fields.
 
* Added {{cd|minecraft:orange_poplar_leaves}}
** Falls from orange poplar leaves blocks.
** Has no fields.
 
* Added {{cd|minecraft:yellow_poplar_leaves}}
** Falls from yellow poplar leaves blocks.
** Has no fields.


|-
'''[[Minecraft:Predicate]]s'''
|}
* Added {{cd|minecraft:int_value_check}}
* All explorer maps are now unique items; previously they used the same item ID as [[Minecraft:filled map]]s.
** Checks value against some range.
** 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|value}} – an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** Explorer maps can still be cloned in a [[Minecraft:crafting table]], and the copies keep their own item type.
*** {{cd|test}} – one of:
* Explorer maps and buried treasure maps can no longer be zoomed out, neither in a [[Minecraft:crafting table]] nor in a [[Minecraft:cartography table]].
**** An inline value (including a single integer) or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** Buried treasure maps could previously be zoomed out in both.
***** Will test if result of value is equal to provided test value.
** Explorer maps could previously be zoomed out in a cartography table.
**** An object with fields:
** Only maps in the {{cd|#minecraft:extendable_maps}} tag can be zoomed out.
***** {{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).


'''[[Minecraft:Map]]''' and '''empty map'''
* Added {{cd|minecraft:float_value_check}}
* [[File:Empty_Map_JE4.png|32px]] [[File:Map_(item)_JE3.png|32px]] Updated inventory icon textures.
** Checks value against some range.
** 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:Pottery sherds]]'''
'''[[Minecraft:Realms]]'''
* Pottery sherds are now data-driven.
* 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]]


'''[[Minecraft:Shield]]'''
'''[[Minecraft:Statistics]]'''
* When using a shield together with a [[Minecraft:hoe]] or a [[Minecraft:shovel]], raising the shield will take precedence over tilling and pathmaking.
* Added Times Slept in a Straw Bed statistic.
** Crouching will allow tilling and pathmaking.


'''[[Minecraft:Suspicious stew]] and [[Minecraft:mushroom stew]]'''
'''[[Minecraft:Tag (Java Edition)|Tags]]'''
* Can now be crafted with 2 of any mushroom.
* Biome Tags
** Added tags for biomes which will generate the respective abandoned camp variant:
*** {{Tag link|biome|has_structure/abandoned_camp_bamboo_jungle}}
*** {{Tag link|biome|has_structure/abandoned_camp_birch_forest}}
*** {{Tag link|biome|has_structure/abandoned_camp_cherry_grove}}
*** {{Tag link|biome|has_structure/abandoned_camp_dappled_forest}}
*** {{Tag link|biome|has_structure/abandoned_camp_flower_forest}}
*** {{Tag link|biome|has_structure/abandoned_camp_forest}}
*** {{Tag link|biome|has_structure/abandoned_camp_meadow}}
*** {{Tag link|biome|has_structure/abandoned_camp_old_growth_birch_forest}}
*** {{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}}


=== Mobs ===
* Block Tags
'''General'''
** Added {{Tag link|block|blocks_dolphin_jump}}
* Persistent mobs' random walk/swim behaviors will now deactivate when players are not nearby, in the same way as non-persistent mobs.
*** Contains all blocks that [[Minecraft:dolphin]]s cannot move through when jumping out of water.
 
** Added {{Tag link|block|blocks_fluid_flow}}
'''[[Minecraft:Armadillo]]s'''
*** Contains all blocks that block fluid flow.
* No longer try to roll up when submerged in liquids.
*** 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 {{Tag link|block|blocks_lava_fire_spread}}
*** Contains all blocks that block the creation of fire by lava.
** Added {{Tag link|block|blocks_motion}}
*** Collection tag containing all blocks that are considered to block motion in some way.
** Added {{Tag link|block|blocks_motion_in_heightmap}}
*** Contains all blocks that are taken into account for the {{cd|motion_blocking}} heightmap.
** Added {{Tag link|block|blocks_motion_in_heightmap_no_leaves}}
*** Contains all blocks that are taken into account for the {{cd|motion_blocking_no_leaves}} heightmap.
** Added {{Tag link|block|blocks_motion_no_leaves}}
*** Collection tag containing all blocks that are considered to block motion in some way, but excluding leaf blocks.
** Added {{Tag link|block|cannot_place_basalt_pillar_on}}
** Added {{Tag link|block|cats_can_lie_on}}
*** Contains blocks which [[Minecraft:cat]]s can randomly lie on.
** Added {{Tag link|block|cats_can_sit_on}}
*** Contains blocks which cats can randomly sit on.
** Added {{Tag link|block|#cat_does_not_teleport_to}}
*** Contains blocks that [[Minecraft:cat]]s do not teleport to.
** Added {{Tag link|block|causes_suffocation}}
*** Contains all blocks where entities can suffocate.
** Added {{Tag link|block|concrete_slabs}}
*** Contains all concrete slab blocks.
** Added {{Tag link|block|concrete_stairs}}
*** Contains all concrete stair blocks.
** 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.


'''[[Minecraft:Drowned]]'''
* Damage Type Tags
* Drowned with [[Minecraft:trident]]s will now use a melee attack if the player is within 3 blocks of them to match {{BE}}.
** 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.
** This attack deals a base attack damage of 11.


'''[[Minecraft:Sulfur cube]]s'''
* Entity Tags
* Changed the sounds of the "regular" sulfur cube archetype.
** Added {{Tag link|entity_type|cannot_be_dismounted_by_item_usage}}
*** Contains all entities which cannot be dismounted by items.


'''[[Minecraft:Wandering trader]]'''
* Fluid Tags
* Can now sell [[Minecraft:poplar log]]s, [[Minecraft:poplar sapling]]s, and [[Minecraft:shelf mushroom]]s.
** Added {{Tag link|fluid|axolotl_try_find_liquid}}
*** 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.


=== Non-mob entities ===
* Item Tags
'''[[Minecraft:Painting]]s'''
** Added {{Tag link|item|brewing_potion_inputs}}
* Paintings with custom names now also show those names when the player looks at them in the world.
*** Contains items that can be placed in a [[Minecraft:brewing stand]] potion slot, regardless of whether they are brewing recipe inputs.
** Added {{Tag link|item|clonable_maps}}
*** Contains filled maps plus all explorer maps items and buried treasure maps, used as the input to the {{cd|map_cloning}} recipe.
** Added {{Tag link|item|concrete_slabs}}
*** Contains all concrete slab items.
** Added {{Tag link|item|concrete_stairs}}
*** Contains all concrete stair items.
** 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.


=== Command format ===
* Potion Tags
'''General'''
** Added {{Tag link|potion|douses_fire}}
* Commands like {{cmd|give}}, {{cmd|unpublish}}, and {{cmd|tick}} should now properly signal errors.
*** 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|execute}}'''
* Structure Tags
* Added new {{cd|slots}} condition sub-command.
** Added {{Tag link|structure|abandoned_camp}}  
** Counts the number of slots from the slot source that are present on the targeted block or entity.
*** Contains all variants of [[Minecraft:abandoned camp]]s.
** The slot source will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
** Added 12 tags, regarding the structures used in each [[Minecraft:exploration map]]:
** Syntax:
*** {{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|execute if|unless slots block <pos> <slot source>}}
*** {{cmd|execute if|unless slots entity <targets> <slot source>}}
* The items condition sub-command now takes a slot source as argument instead of a slot.
** The slot source will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
** Syntax:
*** {{cmd|execute if|unless items block <pos> <slot source> <item predicate>}}
*** {{cmd|execute if|unless items entity <targets> <slot source> <item predicate>}}


'''{{cmd|give}}'''
'''[[Minecraft:UI]]'''
* 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 a "Right Click Emulation" option to the control settings on macOS, which treats {{keys|control}} + {{mouse|left}} as {{mouse|right}}.
** Default is set to {{cd|Off}}.


'''{{cmd|item}}'''
== Changes ==
* Now takes a slot source as argument in place of anywhere a slot was previously used.
=== Blocks ===
** It will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
'''[[Minecraft:Decorated pot]]'''
** Can be a slot source in either inline or reference form.
* Items (bricks and pottery sherds) dropped from breaking a decorated pot side will now preserve data.
** Can be a slot source targeting multiple slots.
* Decorated pot can now have empty sides which causes it to not drop anything when broken unless it has an item in it.
** The {{cd|replace}} sub-command has new semantics:
** 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]].
*** 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.
** It is also accessible via the Creative inventory or through commands where at least one side is not defined in {{cd|sherds}}.
*** When there are more destination slots than there are source items, the remaining slots are ignored.
** Previously, empty sides were treated as [[Minecraft:brick]].
**** Example: {{cd|replace [12345] with (ABC) -> [ABC45]}}
 
*** When there are fewer destination slots than there are source items, the remaining items are ignored.
'''[[File:Hay Bale (UD) JE3.png|32px]] [[Minecraft:Hay Bale|Hay bale]]'''
**** Example: {{cd|replace [123] with (ABCDE) -> [ABC]}}
* 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.
** 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}}
'''[[Minecraft:Sculk sensor]]'''
*** Can be multiple slots, such as {{cd|container.*}}
* Can now detect [[Minecraft:ice]] and [[Minecraft:snow]] melting.
*** Acts as shorthand for a <code>minecraft:slot_range slot</code> source using that slot range.
 
**** Example: {{cd|hotbar.4}} is the same as {{cd|{type:"minecraft:slot_range",slots:"hotbar.4"}}}
'''[[Minecraft:Sign]]s'''
* The entity argument in the {{cd|from entity}} item source can now be a selector targeting multiple entities.
* Signs no longer automatically execute click events in custom text.
** When more than a single entity is targeted, the slots sourced from each are concatenated.
 
* Added new {{cd|fill}} and {{cd|override}} sub-commands, each with syntax identical to {{cmd|item replace}}.
=== Items ===
** {{cmd|item fill}}
'''[[Minecraft:Chorus fruit]]'''
*** Fills each destination slot with a source item.
* After it has teleported the player randomly, it now shows the particles in the direction of teleportation.
*** When there are more destination slots than there are source items, the items repeat until every slot is filled.
 
**** Example: {{cd|fill [12345] with (ABC) -> [ABCAB]}}
'''[[Minecraft:Explorer Map]]s'''
**{{cmd|item override}}
* Renamed the following explorer maps:
*** Overrides the contents of each destination slot with the corresponding source item.
** Jungle Explorer Map → Jungle Pyramid Map
*** When there are more destination slots than there are source items, the remaining slots are cleared.
** Ocean Explorer Map → Ocean Monument Map
**** Example: {{cd|override [12345] with (ABC) -> [ABC__]}} (where {{cd|_}} represents an empty slot).
** Swamp Explorer Map → Swamp Hut Map
 
** Trial Explorer Map → Buried Trial Chambers Map
'''{{cmd|place}}'''
** Woodland Explorer Map → Woodland Mansion Map
* The {{cd|feature}} sub-command now allows in-line definition of the [[Minecraft:feature]].
 
 
* Updated existing explorer maps' inventory icon textures:
'''{{cmd|publish}}'''
{| class="wikitable collapsible" style="text-align: center;"
*  The {{cd|gamemode}} argument has been removed.
|+ All texture changes
** 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.
|-
 
! Structure
'''{{cmd|spreadplayers}}'''
! Before
* Whether a block is safe to spread a player to is now controlled by the {{cd|#entities_can_teleport_to}} block tag.
! After
 
|-
'''{{cmd|swing}}'''
| [[Minecraft:Buried Treasure]]
* When used on a player, the player's attack strength will no longer be reset.
| [[File:Map_(item)_JE2.png|width=32]]
* Added a new optional argument to set the swing animation to play.
| [[File:Buried_Treasure_Map_JE3.png|width=32]]
** Allowed values: {{cd|whack}}, {{cd|stab}}
|-
** If omitted, defaults to {{cd|whack}}
| [[Minecraft:Desert Village]]
* Added a new argument to set the duration of the swing animation, if provided.
| [[File:Village_Map_JE1.png|width=32]]
** Format: positive time value (by default in ticks).
| [[File:Desert_Village_Map_JE2.png|width=32]]
** If omitted, defaults to {{cd|6t}}.
|-
 
| [[Minecraft:Plains Village]]
'''{{cmd|team}}'''
| [[File:Village_Map_JE1.png|width=32]]
* 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).
| [[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.


'''{{cmd|tellraw}}'''
'''[[Minecraft:Map]]''' and '''Empty Map'''
* The {{cd|nbt}} component in a raw chat message will only be resolved up to 64k times.
* {{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}}.


'''{{cmd|tick}}'''
'''Map decorations'''
* The following subcommands will now signal an error instead of just printing an error message and returning {{cd|0}}:
* The map icon of [[Minecraft:woodland mansion]] on filled maps is now consistent with the one on woodland explorer map item [[Minecraft:texture]].
** {{cmd|tick step}}
** Changed from [[File:Mansion (texture) JE2.png|24px|class=pixel-image]] to [[File:Mansion (texture) JE3.png|24px|class=pixel-image]].
** {{cmd|tick step stop}}
* The map icons for players on maps and explorer maps has been updated to always show the direction the player is facing.
** {{cmd|tick sprint stop}}
{| 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]]
|-
|}
 
* Added map icon for the following structures:
** [[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]]


=== Gameplay ===
'''[[Minecraft:Pottery sherds]]'''
'''[[Minecraft:Advancements]]'''
* Pottery sherds are now data-driven.
* Visiting the dappled forest is now required for the "Adventuring Time" advancement.


'''[[Minecraft:Creative inventory]]'''
'''[[Minecraft:Shield]]'''
* Rearranged mineral items and blocks in the inventory.
* When using a shield together with a [[Minecraft:hoe]] or a [[Minecraft:shovel]], raising the shield will take precedence over tilling and pathmaking.
* They are now sorted to have non-tiered ingredients first, followed by tiered ingredients that craft into equipment last.
** Crouching will allow tilling and pathmaking.
* Affects the ingredients and building blocks tabs.
 
** Ingredients
'''[[Minecraft:Suspicious stew]] and [[Minecraft:mushroom stew]]'''
*** Non-tiered minerals
* Can now be crafted with 2 of any mushroom.
*** Unrefined tiered minerals
 
*** Refined tiered minerals
=== Mobs ===
**** Nuggets
'''General'''
**** Ingots
* Persistent mobs' random walk/swim behaviors will now deactivate when players are not nearby, in the same way as non-persistent mobs.
** 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:Armadillo]]s'''
* Players in Spectator mode can now interact with portals to teleport.
* No longer try to roll up when submerged in liquids.


=== General ===
'''[[Minecraft:Endermen]]'''
'''[[Minecraft:Advancement definition]]'''
* Endermen will now take damage from [[Minecraft:projectile]]s if they are riding something.
* Rewards
* No longer attempt to [[Minecraft:teleport]] because of environmental [[Minecraft:damage]] while riding something.
** 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.
* Can no longer teleport onto [[Minecraft:bedrock]].


* Triggers
'''[[Minecraft:Shulker]]s'''
** Multiple fields that accepted a list of loot conditions (AKA predicates) are now stricter:
* Can no longer teleport onto bedrock.
*** A list of predicates is no longer accepted as a shorthand for a {{cd|minecraft:all_of}} condition containing that list.
*** 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}}).
** 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:any_block_use}} 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:bee_nest_destroyed}}
'''[[Minecraft:Wandering trader]]s'''
** 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]]).
* Can now sell [[Minecraft:poplar log]]s, [[Minecraft:poplar sapling]]s, and [[Minecraft:shelf mushroom]]s.
** Added field {{cd|state}} that matches block state properties (same format as {{cd|minecraft:enter_block}}).


* Changed {{cd|minecraft:bred_animals}} trigger
=== Non-mob entities ===
** {{cd|child}}, {{cd|parent}}, and {{cd|partner}} fields now accept 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:brewed_potion}} trigger
=== World generation ===
** The {{cd|potion}} field now accepts {{cd|minecraft:potion_contents}} data component predicate.
'''[[Minecraft:Block state provider]]s'''
* 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:channeled_lightning}} trigger
'''[[Minecraft:Density function]]s'''
** 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.
* 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.


* Changed {{cd|minecraft:cured_zombie_villager}} trigger
'''[[Minecraft:Features]]'''
** {{cd|villager}} and {{cd|zombie}} fields now accept 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.
 
* Removed the following feature types:
* Changed {{cd|minecraft:default_block_use}} trigger
** {{cd|minecraft:coral_mushroom}}
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** {{cd|minecraft:kelp}}
** {{cd|minecraft:nether_forest_vegetation}}
** {{cd|minecraft:seagrass}}
** {{cd|minecraft:sea_pickle}}
** {{cd|minecraft:twisting_vines}}
** {{cd|minecraft:weeping_vines}}
** {{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:effects_changed}} trigger
** Changed {{cd|minecraft:template}}
** The {{cd|source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Added the field {{cd|processors}} namespaced ID or inline definition of a structure processor list to apply to the template.


* Changed {{cd|minecraft:enter_block}}
* {{cd|minecraft:tree}} feature type
** 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.
** 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:fall_after_explosion}} trigger
* Changed the {{cd|minecraft:random_neighbor_spread}} feature type
** The {{cd|cause}} 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:fishing_rod_hooked}} 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:
*** 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:placed_block}} trigger
* Changed the {{cd|minecraft:single_block_pillar}} feature type
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} 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:item_used_on_block}} trigger
* Changed the {{cd|minecraft:stepped_column_cluster}} feature type
** The {{cd|location}} 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:allay_drop_item_on_block}} trigger
** Format changes:
** The {{cd|location}} 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.
* Changed {{cd|minecraft:player_killed_entity}} trigger
*** Added the field {{cd|continue_through}}: Block predicate for which pre-existing blocks to accept as part of a column.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** 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.
** 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.
*** 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:entity_killed_player}} trigger
* {{cd|minecraft:coral_claw}} and {{cd|minecraft:coral_tree}}
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** Added the field {{cd|feature}} a placed feature that is used to place at every desired block position.
** 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.


* Changed {{cd|minecraft:kill_mob_near_sculk_catalyst}} trigger
'''[[Minecraft:Noise settings]]'''
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* The {{cd|surface_rule}} field has been renamed to {{cd|material_rule}}
** 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.
** 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:lightning_strike}} trigger
* The {{cd|aquifers_enabled}} field has been replaced by an optional {{cd|aquifers}} object:
** {{cd|bystander}} and {{cd|lightning}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type
** If not present, no aquifers will be generated.
 
** Fields:
* Changed {{cd|minecraft:player_generates_container_loot}} trigger
*** {{cd|barrier}} - Density Function, moved from {{cd|noise_router.barrier}}
** 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|fluid_level_floodedness}} - Density Function, moved from {{cd|noise_router.fluid_level_floodedness}}
*** If a tag or a list is used, trigger will run when any listed loot table is generated.
*** {{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:thrown_item_picked_up_by_player}} 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:thrown_item_picked_up_by_entity}} 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:player_hurt_entity}} trigger
**** Range is specified as one of:
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
***** Float, an exact target value.
** 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.
***** 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.


* Changed {{cd|minecraft:entity_hurt_player}} trigger
'''[[Minecraft:World generation|Terrain generator]]'''
** 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.
* 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:player_interacted_with_entity}} trigger
'''Other'''
** The {{cd|entity}} 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.


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


* Changed {{cd|minecraft:crafter_recipe_crafted}} trigger
* Block predicates
** 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 {{cd|minecraft:volume_match}}
*** If a tag or a list is used, trigger will run when any listed recipe is used.
*** Checks that every block in a volume matches a given Block Predicate.
*** Format:
**** {{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.
**** {{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.
**** {{cd|match}} – block predicate to test on each position.


* Changed {{cd|minecraft:recipe_crafted}} trigger
* Block state providers
** 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.
** Updated {{cd|minecraft:copy_properties_provider}}
*** If a tag or a list is used, trigger will run when any listed recipe is used.
*** Renamed field {{cd|source_block_state_provider}} to {{cd|source}}
 
** Added {{cd|minecraft:random_block_provider}}
* Changed {{cd|minecraft:recipe_unlocked}} trigger
*** Returns the default block state for a randomly chosen block.
** 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.
*** Format:
*** If a tag or a list is used, trigger will run when any listed recipe is unlocked
**** {{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.


* Changed {{cd|minecraft:slide_down_block}}
* Carvers
** 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 {{cd|worldgen/configured_carver}} registry has been renamed to {{cd|worldgen/carver}}
 
** Updated {{cd|minecraft:cave}} carver type
* Changed {{cd|minecraft:summoned_entity}} trigger
*** All fields previously under the config field have been inlined to the top-level.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Added the {{cd|count}} field - non-negative Int Provider, the number of cave tunnels to create from a seed chunk.
 
*** Renamed {{cd|yScale}} to {{cd|room_vertical_radius_multiplier}}
* Changed {{cd|minecraft:tame_animal}} trigger
*** 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.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
**** 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.
* Changed {{cd|minecraft:target_hit}} trigger
*** Added optional {{cd|weird_thickness_bias}} field - Boolean
** The {{cd|projectile}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
**** 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}}
* Changed {{cd|minecraft:villager_trade}} trigger
*** Removed the {{cd|replaceable}} field, carvers will replace any block (excluding features).
** The {{cd|villager}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** 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:Block entity data]]'''
* [[Minecraft:Density function]]s
* {{cd|minecraft:sign}} and {{cd|minecraft:hanging_sign}}
** Updated {{cd|constant}}
** By default, commands and other click events contained in sign text are no longer executed when the block is clicked.
*** {{cd|argument}} has been renamed to {{cd|value}}
*** Additionally, text components on newly placed signs are no longer resolved by default.
** Updated {{cd|add}}, {{cd|mul}}, {{cd|min}}, and {{cd|max}}
*** New boolean field called {{cd|allow_op_features}} (defaults to {{cd|false}}) has been added to restore previous behavior.
*** {{cd|argument1}} has been renamed to {{cd|left}}.
*** 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}}
*** {{cd|argument2}} has been renamed to {{cd|right}}.
*** Any newly created sign will need to have that field set explicitly.
** 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
** Changed the rules for opening the sign edit screen after a block is placed:
*** {{cd|argument}} has been renamed to {{cd|input}}.
*** Previously, the screen would open unless {{cd|minecraft:block_entity_data}} was applied successfully.
** Updated {{cd|shift_a}}, {{cd|shift_b}}, and {{cd|shift}}
**** 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).
*** {{cd|argument}} has been renamed to {{cd|noise}}
** Signs will now accept and return the {{cd|minecraft:sign_text_front}}, {{cd|minecraft:sign_text_back}} and {{cd|minecraft:waxed}} components.
** Added {{cd|sub}}
 
*** Performs subtraction between two arguments.  
* {{cd|minecraft:brewing_stand}}
*** Format: object with fields:
** The following fields are now stored as integers rather than shorts:
**** {{cd|left}} - Density Function, the left-hand side of the operation
*** 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.
**** {{cd|right}} - Density Function, the right-hand side of the operation
*** Changed the {{cd|Fuel}} field from a byte to an integer, this is the amount of fuel remaining.
** Added {{cd|div}}
** The following new fields have been added:
*** Performs division between two arguments.  
*** Added the {{cd|total_brew_time}} integer field, this is the total amount of time the current brewing process will take.
*** Format: object with fields:
*** Added the {{cd|total_fuel}} integer field, this represents the amount of fuel that was added in the last refuel.
**** {{cd|left}} - Density Function, the left-hand side of the operation.
*** Added the {{cd|speed_multiplier}} float field, this will be used to speed up or slow down the next brewing process.
**** {{cd|right}} - Density Function, the right-hand side of the operation.
 
** Updated {{cd|reciprocal}}
* {{cd|minecraft:furnace}}, {{cd|minecraft:smoker}} and {{cd|minecraft:blast_furnace}}
*** Renamed from {{cd|invert}}
** The following fields are now stored as integers rather than shorts:
** Added {{cd|negate}}
*** 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.
*** Negates the input.
*** 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.
*** Format: object with fields:
*** Changed the {{cd|lit_time_remaining}} field from a short to an integer, this is the amount of burn time remaining.
**** {{cd|input}} - Density Function, the function to negate.
*** 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.
** Added {{cd|lerp}}
** The following new fields have been added:
*** Performs (unclamped) linear interpolation between two arguments based on an alpha.  
*** Added the {{cd|speed_multiplier}} float field, this will be used to speed up or slow down the next cooking process.
*** Format: object with fields:
 
**** {{cd|alpha}} - Density Function, the interpolation factor (0=first, 1=second)
'''[[Minecraft:Block entity format]]'''
***** Any value outside of {{cd|[0; 1]}} will extrapolate
* {{cd|minecraft:decorated_pot}}
**** {{cd|first}} - Density Function, the value at {{cd|alpha{{=}}0}}
** 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:
**** {{cd|second}} - Density Function, the value at {{cd|alpha{{=}}1}}
*** {{cd|back}}
** Added {{cd|floor}}, {{cd|round}}, {{cd|ceil}}, and {{cd|truncate}}
*** {{cd|left}}
*** Rounds the input value to an integer multiple of a given function in a type-dependent direction:
*** {{cd|right}}
**** {{cd|floor}}: rounds towards negative infinity.
*** {{cd|front}}
**** {{cd|round}}: rounds towards the nearest integer (ties round up).
 
**** {{cd|ceil}}: rounds towards positive infinity.
'''[[Minecraft:Block states]]'''
**** {{cd|truncate}}: rounds towards 0.
* The following block state fields have been renamed.
*** Format: object with fields:
** {{cd|Name}} is now {{cd|id}}
**** {{cd|input}} - Density Function, the input to round.
** {{cd|Properties}} is now {{cd|properties}}
**** {{cd|multiple}} - Density Function, the output will be rounded to an integer multiple of this value.
* 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 constant {{cd|1}} (i.e. rounding to integer).
 
** Added {{cd|beardifier}}
'''[[Minecraft:Controls]]'''
*** Outputs the structure bearding density. Generally summed together with the base terrain density to produce ground below, carve air around, or bury structures.
* Up to 48 mouse buttons are now supported for controls rebinding.
*** Format: no fields
** Previously, only up to mouse button 8 could have controls bound to it.
** Added {{cd|pow}}
** This change presumably only affects macOS and Linux systems.
*** Raises the given base value to an exponent.
* KEY_KPPLUSMINUS, KEY_KPLEFTPAREN and KEY_KPRIGHTPAREN now appear to be supported, at least on Linux.
*** Format: object with fields:
** The names are a bit wrong though.<ref>{{bug|MC-310109}}</ref><ref>{{bug|MC-310110}}</ref>
**** {{cd|base}} – density function, the base value.
 
**** {{cd|exponent}} – density function, the exponent.
'''[[Minecraft:Data component format]]'''
** Added {{cd|sqrt}}
* {{cd|minecraft:pot_decorations}}
*** Computes the square root of the given input.
** Instead of taking a list of 4 item IDs, this component now takes an object with 4 optional item stack fields named:
*** Format: object with fields:
*** {{cd|back}}
**** {{cd|input}} – density function, the value for which to compute the square root.
*** {{cd|left}}
** Added {{cd|log}}
*** {{cd|right}}
*** Computes the natural logarithm of the given input.
*** {{cd|front}}
*** Format: object with fields:
 
**** {{cd|input}} – density function, the value for which to compute the natural logarithm.
* {{cd|minecraft:trim_material}}
** Added {{cd|sign}}
** The format of inline material definitions has been updated
*** Computes the sign of the input:
** Trim Materials
**** If the input is positive, returns {{cd|1}}
*** The format of elements in the {{cd|trim_material}} registry has been updated:
**** If the input is 0, returns {{cd|0}}
**** {{cd|asset_name}} has been replaced with {{cd|palette_id}} - Palette Texture ID to be used for this material.
**** If input is negative, returns {{cd|-1}}
**** {{cd|override_armor_assets}} has been removed, overrides are now defined in the Resource Pack Equipment Asset.
*** Format: object with fields:
 
**** {{cd|input}} – density function, the value of which to compute the sign.
* Removed {{cd|minecraft:swing_animation}}
** Added {{cd|distance_to_point}}
** This has been replaced by {{cd|minecraft:attack_animation}} and {{cd|minecraft:interact_animation}}.
*** Computes the distance to a fixed point using the specified distance function.
*** The {{cd|none}} swing animation type has been removed.
*** Format: object with fields:
*** Existing items in the world will be migrated to using the default {{cd|whack}}.
**** {{cd|point}} – array of 3 integers in form {{cd|[x, y, z]}}, the point to compute distance to.
*** Setting both of these new components to the same value will be functionally identical to the old component, except for:
**** {{cd|metric}} – one of:
**** The {{cmd|swing}} command animation type now specified by the command.
***** {{cd|euclidean}} – i.e. <math>sqrt(dx^2 + dy^2 + dz^2)</math>
**** Items being dropped by entities.
***** {{cd|euclidean_squared}} – i.e. <math>dx^2 + dy^2 + dz^2</math>
 
***** {{cd|manhattan}} – i.e. <math>abs(dx) + abs(dy) + abs(dz)</math>
* Removed {{cd|minecraft:map_color}}
***** {{cd|chebyshev}} – i.e. <math>max(abs(dx), abs(dy), abs(dz))</math>
** Maps are no longer drawn as a tinted overlay, so there is nothing left for the color to apply to.
** Updated {{cd|gradient}} (renamed from {{cd|y_clamped_gradient}})
** Existing maps have the component stripped on load.
*** Format: object with fields:
 
**** {{cd|axis}} – {{cd|x}}, {{cd|y}}, or {{cd|z}}, the axis over which to define this gradient.
'''[[Minecraft:Data pack]]'''
**** {{cd|tiling}} – one of:
* The [[Minecraft:pack format]] version is now {{cd|115.0}}.
***** {{cd|clamp_to_edge}} – outside the gradient boundaries, the value at the nearest boundary will be used.
* The {{cd|definition}} field from the {{cd|blocks.json}} data generation report has been removed
***** {{cd|repeat}} – the gradient will be repeated outside its boundaries.
* Codec for element lists/tags now allows mixing inline values and references.
***** {{cd|mirrored_repeat}} – the gradient will be repeated such that odd repetitions are mirrored, ensuring continuity between repetitions.
** For example, item modifiers like {{cd|[{type:set_count, ...}, "minecraft:some_modifier"]}} are now allowed.
**** {{cd|from_coordinate}} – int, the coordinate at which the gradient starts.
**** {{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.


'''[[Minecraft:Debug screen]]'''
* Int Providers
* The debug overlay now supports a separate GUI scale than the rest of the game.
** Added {{cd|minecraft:very_biased_to_bottom}} Int provider type
** This is customizable through the Debug Options screen, F3 + F6.
*** Picks a random value in the provided range, with a quadratic bias towards the minimum value.
** The default scale is "Auto", which tries to stay at a higher resolution than normal.
*** Format: object with fields:
** Another option is "Unchanged", which matches the regular GUI scale.
**** {{cd|min_inclusive}} - Integer, the minimum selected value (inclusive).
** The rest of the options work the same as in the normal "GUI Scale", controlling the scale directly.
**** {{cd|max_inclusive}} - Integer, the maximum selected value (inclusive).
* 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:Density function]]s'''
* Material Condition Registry
* Density function and noises are no longer evaluated with double-precision floating point values, but instead with single-precision.
** A new data-driven registry has been introduced, loaded from <samp>data/<namespace>/worldgen/material_condition/<id>.json</samp>.
** This affects all intermediate steps, not just the final result.
** 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 {{cd|worldgen/material_condition}} registry.


'''[[Minecraft:Environment attribute]]'''
* Material Rule Registry
* {{cd|minecraft:gameplay/bed_rule}}
** A new data-driven registry has been introduced, loaded from <samp>data/<namespace>/worldgen/material_rule/<id>.json</samp>.
** Field {{cd|explodes}} has been renamed to {{cd|destroy_on_use}}
** Elements in this registry define a pipeline for selecting what base block to place in the world at a given position.
** Added {{cd|destroy_on_leave}} – optional boolean; if set to {{cd|true}}, the bed will be destroyed when leaving it.
** The format is identical to that which was formerly written in the {{cd|surface_rule}} field within noise settings files, with the following extensions:
*** If omitted, defaults to {{cd|false}}
*** 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.


* {{cd|minecraft:visual/ambient_particles}}
* Material rules:
** Now supports interpolation between Timeline keyframes (probabilities will be crossfaded).
** Added {{cd|minecraft:ore_vein}}
** Introduced support for new modifier: {{cd|append}}
*** Format object with the following fields:
*** Unlike {{cd|override}} which totally replaces the particle list, this modifier concatenates all elements with the layers below.
**** {{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.
**** {{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}}.
**** {{cd|density}} - Density Function, the probability between 0 and 1 for the ore vein to replace a block.
***** 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}}.


'''Equipment assets'''
* [[Minecraft:Noise]]s
* 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.
** The format of noises (defined in the <samp>worldgen/noise</samp> registry, or inline in noise-based block state providers) has been updated.
** Format: list of override entries with fields:
** Noises define a fractal brownian motion configuration with the following properties:
*** {{cd|when}} – object with fields, the material and/or pattern to match.
*** Produces output values (approximately) fitting a normal distribution.
**** {{cd|material}} – optional trim material ID, the material to match (if specified).
*** Unless otherwise specified, fits the output amplitude to {{cd|[-1; 1]}}
**** {{cd|pattern}} – optional trim pattern ID, the pattern to match (if specified).
**** 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.
***** Note: this is not the palette ID, as {{cd|trim_palette_replacements}} used to be.
*** Parameterized by {{cd|persistence{{=}}0.5}}, {{cd|lacunarity{{=}}2.0}}
**** At least one of material or pattern must be specified.
**** i.e. between each octave, the amplitude is halved and the frequency doubled.
**** If both are specified, both must match for the entry to be used.
*** Has stable seeding such that an octave can be boosted, muted, or added without affecting the rest of the octaves.
*** {{cd|texture}} – optional trim pattern asset ID, a replacement texture to use if this entry matches.
*** Renamed {{cd|firstOctave}} to {{cd|base_octave}}.
**** Textures are specified in the same format as {{cd|asset_id}}
*** Added {{cd|base_amplitude}} – non-negative float, a scale factor to apply to the noise output.
**** If not specified, the default texture for the pattern will be used.
**** If not specified, defaults to {{cd|1.0}}.
*** {{cd|palette}} – optional palette ID, a replacement palette to use if this entry matches.
*** Added {{cd|octave_count}} – integer between {{cd|1}} and {{cd|32}}, the number of octaves to sample.
**** If not specified, no palette remapping will be applied to the texture.
*** Added normalize – boolean, or {{cd|"legacy"}}, controls how the output amplitude should be normalized.
*** The first matching entry will always be selected.
**** 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]}})
*** At least one of texture or palette must be defined.
**** 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}}.


'''[[Minecraft:Features]]'''
* Placement Modifiers
* 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.
** Changed {{cd|minecraft:offset}} placement modifier
* Removed the following feature types:
*** Renamed from {{cd|random_offset}}.
** {{cd|minecraft:coral_mushroom}}
*** Format:
** {{cd|minecraft:kelp}}
**** Removed the fields {{cd|xz_spread}} and {{cd|y_spread}}.
** {{cd|minecraft:nether_forest_vegetation}}
**** Added the fields {{cd|x}}, {{cd|y}}, {{cd|z}}: Integer providers between -16 and {{cd|16}} specifiying the axis-specific offset.
** {{cd|minecraft:seagrass}}
** Added {{cd|minecraft:cuboid}}
** {{cd|minecraft:sea_pickle}}
*** Repeats a feature in a cuboid shape.
** {{cd|minecraft:twisting_vines}}
*** Added fields:
** {{cd|minecraft:weeping_vines}}
**** {{cd|xz_size}}: int provider between {{cd|1}} and {{cd|16}} representing the size of the cuboid along {{cd|x}} and {{cd|z}} axes.
* Removed the {{cd|extra_rare_growths}} and {{cd|catalyst_chance}} fields from {{cd|minecraft:sculk_patch}}.
**** {{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.


* {{cd|minecraft:tree}} feature type
* Rule Tests
** Added {{cd|shelf_mushroom}} tree decorator type.
** These are the predicates used by ore features ({{cd|targets[].target}}) and rule structure processors ({{cd|rules[].input_predicate}} and {{cd|rules[].location_predicate}}).
*** Places [[Minecraft:shelf mushroom]]s on logs with the specified probability.
** 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:
*** 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|min_inclusive}} – int, the minimum y value of allowed blocks (inclusive).
** Added {{cd|poplar_foliage_placer}} foliage placer type
**** {{cd|max_inclusive}} – int, the maximum y value of allowed blocks (inclusive).
*** Places leaves blocks for [[Minecraft:poplar]] trees in a rhombus shape in one of two possible directions
** 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:
*** Format: object with fields:
**** {{cd|height}} - int provider (between {{cd|5}} and {{cd|16}}), the height of the foliage.
**** {{cd|rule}} – rule test, the rule to test the block against.
**** {{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
* Structure Placements
*** Places log blocks for poplar trees in a straight shape with branches by the start of the foliage.
** Added {{cd|minecraft:dimension_origin}}
*** Format:
** New structure placement that places a single instance of the structure at the dimension origin.
**** {{cd|trunk_height_above_branches}} - int provider (between {{cd|0}} and {{cd|8}}), the height of the trunk above the branches.
*** The dimension origin is defined as the {{cd|spawn_target}} for noise settings based dimensions, otherwise Chunk (0, 0).
**** {{cd|branch_amount}} - int provider (between {{cd|1}} and {{cd|4}}), the amount of branches to create by the foliage.
** No additional fields.


* Changed the {{cd|minecraft:random_neighbor_spread}} feature type
* [[Minecraft:Template pool|Structure pool element]]s
** Renamed from {{cd|minecraft:glowstone_blob}}.
** Changed {{cd|minecraft:feature_pool_element}}
*** Now exposes more control over the feature.
*** Can now connect to jigsaw blocks with any target name, instead of just {{cd|minecraft:bottom}}.
*** Places blocks randomly in an area starting at the origin, each block placing so it has exactly one accepted neighbor.
 
** Format changes:
* Vertical Anchors
*** Added field {{cd|block}}: Block state provider for which block to place.
** Added a new option for vertical Anchors: {{cd|relative_to_sea_level}}
*** Added field {{cd|accepted_neighbors}}: Block ID, list of block IDs or hash-prefixed block tag for which blocks count as a valid neighbor.
*** Specifies an offset to the sea level of the dimension.
*** 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.
=== Command format ===
*** 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.
'''General'''
*** Added field {{cd|y_offset}}: Int provider between {{cd|-16}} and {{cd|16}} for what offsets to try along the y axis.
* Commands like {{cmd|give}}, {{cmd|unpublish}}, and {{cmd|tick}} should now properly signal errors.


* Changed the {{cd|minecraft:single_block_pillar}} feature type
'''{{cmd|data}}'''
** Renamed from {{cd|minecraft:basalt_pillar}}.
* Added new source to {{cmd|data modify … append{{!}}insert{{!}}merge{{!}}prepend{{!}}set}} called {{cmd|compute}}.
*** Now exposes more control over the feature functionality.
* New source will evaluate a {{cd|minecraft:number_provider}} and then provide the result either as an integer or a float tag.
** Format changes:
* Syntax:
*** Added field {{cd|block}}: Block state provider for which block to place.
** {{cmd|compute <target> <provider> [integer]}}, where the syntax of {{cd|target}}, {{cd|provider}} and {{cd|integer}} is the same as in {{cmd|compute}} function.
*** Added field {{cd|can_replace}}: Block predicate for which blocks to replace.
** Example:
*** Added field {{cd|direction}}: Vertical direction of the pillar - one of {{cd|up}} and {{cd|down}}.
*** {{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>}}.
*** 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)
* Command syntax has been modified to take into account number provider split:
*** Added field {{cd|cap_feature}}: Optional placed feature placed at the end of the pillar.
** <code>compute <''target''> integer <''int_provider''></code>
** <code>compute <''target''> float <''float_provider''></code>


* Changed the {{cd|minecraft:stepped_column_cluster}} feature type
'''{{cmd|execute}}'''
** Renamed from {{cd|minecraft:basalt_columns}}.
* Added new {{cd|slots}} condition sub-command.
*** Now exposes more control over the feature functionality.
** Counts the number of slots from the slot source that are present on the targeted block or entity.
** Format changes:
** The slot source will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
*** Added the field {{cd|block}}: Block state provider for which block to place.
** Syntax:
*** Added the field {{cd|can_replace}}: Block predicate for which blocks can be replaced by the column.
*** {{cmd|execute if|unless slots block <pos> <slot source>}}
*** Added the field {{cd|continue_through}}: Block predicate for which pre-existing blocks to accept as part of a column.
*** {{cmd|execute if|unless slots entity <targets> <slot source>}}
*** 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.
* The items condition sub-command now takes a slot source as argument instead of a slot.
*** Renamed the field {{cd|reach}} to {{cd|column_reach}}
** The slot source will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
*** Added the field {{cd|column_count}}: int provider (between {{cd|1}} and {{cd|150}}) - the number of columns to generate.
** Syntax:
*** 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.
*** {{cmd|execute if|unless items block <pos> <slot source> <item predicate>}}
**** The effective reach is also limited by {{cd|height}}.
*** {{cmd|execute if|unless items entity <targets> <slot source> <item predicate>}}


* {{cd|minecraft:coral_claw}} and {{cd|minecraft:coral_tree}}
'''{{cmd|give}}'''
** Added the field {{cd|feature}} – a placed feature that is used to place at every desired block position.
* 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}}.


'''Game window and input backend'''
'''{{cmd|item}}'''
* The minimum window size is now 320&times;240 pixels.
* Now takes a slot source as argument in place of anywhere a slot was previously used.
* Minecraft now uses {{WP|SDL3}} instead of {{WP|GLFW}} for window management, input and platform integration.
** It will be evaluated with the {{cd|minecraft:command_slot_source}} loot type.
* Keyboard input now uses SDL scancodes for physical key positions and SDL keycodes for layout-dependent text editing shortcuts.
** Can be a slot source in either inline or reference form.
 
** Can be a slot source targeting multiple slots.
'''[[Minecraft:GUI]]'''
** The {{cd|replace}} sub-command has new semantics:
* The sub-headings and categories in different tabs of options now use a boldface, underlined and centered format.
*** One by one in the order they are provided by the slot source, the contents of each destination slot are replaced with the corresponding source item.
*** When there are more destination slots than there are source items, the remaining slots are ignored.
**** Example: {{cd|replace [12345] with (ABC) -> [ABC45]}}
*** When there are fewer destination slots than there are source items, the remaining items are ignored.
**** Example: {{cd|replace [123] with (ABCDE) -> [ABC]}}
** 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}}
*** Can be multiple slots, such as {{cd|container.*}}
*** Acts as shorthand for a <code>minecraft:slot_range slot</code> source using that slot range.
**** Example: {{cd|hotbar.4}} is the same as {{cd|{type:"minecraft:slot_range",slots:"hotbar.4"}}}
* The entity argument in the {{cd|from entity}} item source can now be a selector targeting multiple entities.
** When more than a single entity is targeted, the slots sourced from each are concatenated.
* Added new {{cd|fill}} and {{cd|override}} sub-commands, each with syntax identical to {{cmd|item replace}}.
** {{cmd|item fill}}
*** Fills each destination slot with a source item.
*** When there are more destination slots than there are source items, the items repeat until every slot is filled.
**** Example: {{cd|fill [12345] with (ABC) -> [ABCAB]}}
**{{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:Instrument definition]]'''
'''{{cmd|place}}'''
* The format of elements in the instrument registry have been updated:
* The {{cd|feature}} sub-command now allows in-line definition of the [[Minecraft:feature]].
** Added the {{cd|durability_damage}} field - optional non-negative integer, amount of durability to consume on each use.
** Updated the {{cd|use_duration}} field - can now be {{cd|0}} for no cooldown.


'''[[Minecraft:Item model]]s'''
'''{{cmd|publish}}'''
* Added optional {{cd|shade_direction_override}} to block model elements.
* The {{cd|gamemode}} argument has been removed.
** Accepted values are cardinal directions ({{cd|down}}, {{cd|up}}, {{cd|north}}, {{cd|south}}, {{cd|west}}, {{cd|east}})
** 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.
** When set, this overrides directional shading for the element regardless of face orientation.
 
* Removed {{cd|shade}} from block model elements
'''{{cmd|spreadplayers}}'''
** {{cd|shade_direction_override: "up"}} to get the previous {{cd|shade: false}} behavior.
* Whether a block is safe to spread a player to is now controlled by the {{cd|#entities_can_teleport_to}} block tag.
* Tint source
** Removed {{cd|minecraft:map_color}}
*** The {{cd|minecraft:map_color}} component it read no longer exists.


'''[[Minecraft:Java_Edition_level_format#level.dat_format|level.dat]]'''
'''{{cmd|swing}}'''
* {{cd|level.dat}} now contains a {{cd|version_history}} list with prior data versions of the file.
* When used on a player, the player's attack strength will no longer be reset.
* Added a new optional argument to set the swing animation to play.
** Allowed values: {{cd|whack}}, {{cd|stab}}
** If omitted, defaults to {{cd|whack}}
* Added a new argument to set the duration of the swing animation, if provided.
** Format: positive time value (by default in ticks).
** If omitted, defaults to {{cd|6t}}.


'''[[Minecraft:Loot function]]s'''
'''{{cmd|team}}'''
* The {{cd|conditions}} field is now available in all loot functions and has been renamed to {{cd|condition}}.
* 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).
** 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:sequence}}
'''{{cmd|tellraw}}'''
** 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.
* The {{cd|nbt}} component in a raw chat message will only be resolved up to 64k times.
** Added optional condition field which accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
 
** 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.
'''{{cmd|tick}}'''
*** 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.
* The following subcommands will now signal an error instead of just printing an error message and returning {{cd|0}}:
* Changed {{cd|minecraft:modify_contents}}
** {{cmd|tick step}}
** The {{cd|modifier}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:item_modifier}} type.
** {{cmd|tick step stop}}
* Changed {{cd|minecraft:set_attributes}}
** {{cmd|tick sprint stop}}
** 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.
 
=== Gameplay ===
'''[[Minecraft:Advancements]]'''
* Visiting the dappled forest is now required for the "Adventuring Time" advancement.
* 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.
* Only root advancements can have {{cd|background}} field in {{cd|display}} structure.


* Changed {{cd|minecraft:exploration_map}}
'''[[Minecraft:Closed captions]]'''
** The {{cd|map_color}} field has now been removed.
* Now point to the most recent [[Minecraft:sound]] in range.
** 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 {{cd|minecraft:map}} and produced a {{cd|minecraft:filled_map}}
*** The item to produce is now chosen by the loot entry or villager trade itself, so a data pack that produced exploration maps has to change its item from {{cd|minecraft:map}} to {{cd|minecraft:filled_map}} (or one of the explorer map items)
*** 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.


* Changed {{cd|minecraft:enchanted_count_increase}}
'''[[Minecraft:Creative inventory]]'''
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Rearranged mineral items and blocks in the inventory.
* Changed {{cd|minecraft:enchant_with_levels}}
* They are now sorted to have non-tiered ingredients first, followed by tiered ingredients that craft into equipment last.
** The {{cd|levels}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* Affects the ingredients and building blocks tabs.
* Changed {{cd|minecraft:set_custom_model_data}}
** Ingredients
** 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.
*** Non-tiered minerals
* Changed {{cd|minecraft:set_enchantments}}
*** Unrefined tiered minerals
** Values in {{cd|enchantments}} map can now be an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** Refined tiered minerals
* Changed {{cd|minecraft:set_count}}
**** Nuggets
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
**** Ingots
* Changed {{cd|minecraft:limit_count}}
** Building Blocks
** 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.
*** Non-tiered mineral blocks and variants
* Changed {{cd|minecraft:set_damage}}
*** Refined tiered mineral blocks and variants
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** Copper block family
* Changed {{cd|minecraft:set_ominous_bottle_amplifier}}
** Copper Blocks continue to be pushed to the end of the order in Building Blocks since they have a large list of content.
** The {{cd|amplifier}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
* 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.
* 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'''
'''[[Minecraft:Enchantment]]s'''
* 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.
* Now apply to items being damaged while protecting an [[Minecraft:undead mob]] from the sun.
* 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
'''[[Minecraft:Game mode switcher]]'''
** Added the {{cd|minecraft:container_process}} loot table type
* 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]].
*** Currently used to evaluate cooking and brewing fuel values.
*** It takes the following parameters:
**** {{cd|container}}, the container or inventory being evaluated.
**** {{cd|block_entity}}, the block entity being fueled.
**** {{cd|block_state}}, the current state of the block being fueled.
**** {{cd|origin}}, the location of the block being fueled.
** Changed {{cd|minecraft:advancement_location}}
*** Block entities are now available in context and can be matched by conditions like {{cd|minecraft:match_block}}
** Changed {{cd|minecraft:block_interact}}
*** {{cd|origin}} is now available in context, as the center of the block being interacted with.


* Loot pool entries
'''[[Minecraft:Spectator]]'''
** 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.
* Players in Spectator mode can now interact with portals to teleport.
** 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.
*** This field is now present on all loot entries, including previously omitted {{cd|minecraft:alternatives}}, {{cd|minecraft:sequence}} and {{cd|minecraft:group}}.
** Changed {{cd|minecraft:tag}} loot pool entry
*** 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.
** Changed {{cd|minecraft:loot_table}} loot pool entry
*** 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|expand}} field, working the same as in {{cd|minecraft:tag}} pool entry:
**** If {{cd|true}}, each entry inside tag will be added to outer pool, with weights equal to weight of this entry.
**** 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.


'''[[Minecraft:Minecraft Server Management Protocol]] 3.1.0'''
'''[[Minecraft:Trading]]'''
* Added notifications indicating when the server performs a full world upgrade on startup.
* New villager trades, unlocked from a villager leveling up their profession, will now update even if the player has the trading UI open.
** {{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]]'''
=== General ===
* The {{cd|surface_rule}} field has been renamed to {{cd|material_rule}}
'''[[Minecraft:Advancement definition]]'''
** Format: inline Material Rule or Material Rule ID reference.
* Rewards
* The {{cd|final_density}} field no longer has the {{cd|beardifier}} density function implicitly added to the final result.
** 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.
* The {{cd|aquifers_enabled}} field has been replaced by an optional {{cd|aquifers}} object:
** If not present, no aquifers will be generated.
** 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
* Triggers
** 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.
** Multiple fields that accepted a list of loot conditions (AKA predicates) are now stricter:
** 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.
*** A list of predicates is no longer accepted as a shorthand for a {{cd|minecraft:all_of}} condition containing that list.
** 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.
*** 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}}).
** Format: list of target hypercubes
** Some fields that previously accepted only inline loot conditions now also accept a namespaced ID of a {{cd|minecraft:predicate}}
*** Target format: map between Density Function ID and a range on that axis:
** 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.
**** Range is specified as one of:
*** To avoid duplication, this field is not mentioned in entries below.
***** Float, an exact target value.
 
***** Array of 2 floats, a range of target values in form {{cd|[min, max]}}.
* Changed {{cd|minecraft:any_block_use}} trigger
***** An object with fields:
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
****** {{cd|min}} - float, the minimum value of the target range.
 
****** {{cd|max}} - float, the maximum value of the target range.
* Changed {{cd|minecraft:bee_nest_destroyed}}
** The block field has been renamed to blocks and now accepts a single namespaced ID, a list of namespaced IDs, or a hash-prefixed tag ID of a {{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]]).
** Added field {{cd|state}} that matches block state properties (same format as {{cd|minecraft:enter_block}}).
 
* Changed {{cd|minecraft:bred_animals}} trigger
** {{cd|child}}, {{cd|parent}}, and {{cd|partner}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.


'''[[Minecraft:Number provider]]s'''
* Changed {{cd|minecraft:brewed_potion}} trigger
* 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 {{cd|potion}} field now accepts {{cd|minecraft:potion_contents}} data component predicate.
* Added vanilla number providers
 
** {{cd|minecraft:cooking/time_bamboo}}
* Changed {{cd|minecraft:channeled_lightning}} trigger
*** Returns the burn time in ticks for bamboo and scaffolding.
** 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.
** {{cd|minecraft:cooking/time_blaze_rod}}
 
*** Returns the burn time in ticks for blaze rods.
* Changed {{cd|minecraft:cured_zombie_villager}} trigger
** {{cd|minecraft:cooking/time_boats}}
** {{cd|villager}} and {{cd|zombie}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Returns the burn time in ticks for boats.
 
** {{cd|minecraft:cooking/time_coal}}
* Changed {{cd|minecraft:default_block_use}} trigger
*** Returns the burn time in ticks for coal.
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** {{cd|minecraft:cooking/time_coal_block}}
 
*** Returns the burn time in ticks for coal blocks.
* Changed {{cd|minecraft:effects_changed}} trigger
** {{cd|minecraft:cooking/time_dried_kelp_block}}
** The {{cd|source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Returns the burn time in ticks for dried kelp blocks.
 
** {{cd|minecraft:cooking/time_dry_plants}}
* Changed {{cd|minecraft:enter_block}}
*** Returns the burn time in ticks for various dry plants.
** 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: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.


* Changed {{cd|minecraft:number_dispatcher}}
* Changed {{cd|minecraft:fall_after_explosion}} trigger
** Fields:
** The {{cd|cause}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** {{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}}
* Changed {{cd|minecraft:fishing_rod_hooked}} trigger
** Fields:
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** {{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.
* Changed {{cd|minecraft:placed_block}} trigger
*** {{cd|on_false}} - an optional inline value or a namespaced 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.
**** Defaults to a constant 0 if omitted.


* Changed {{cd|minecraft:weighted_list}}
* Changed {{cd|minecraft:item_used_on_block}} trigger
** Fields:
** The {{cd|location}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** {{cd|distribution}} - a list of objects with the following fields.
**** Fields:
***** {{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}}
* Changed {{cd|minecraft:allay_drop_item_on_block}} trigger
** The {{cd|min}} and {{cd|max}} fields now accept an inline value or a namespaced 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.


* Changed {{cd|minecraft:binomial}}
* Changed {{cd|minecraft:player_killed_entity}} trigger
** The {{cd|n}} and {{cd|p}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
** 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.


* Changed {{cd|minecraft:sum}}
* Changed {{cd|minecraft:entity_killed_player}} 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|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.


'''[[Minecraft:Options]]'''
* Changed {{cd|minecraft:kill_mob_near_sculk_catalyst}} trigger
[[File:New World Options.png|thumb|right|New World Options UI]]
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* The World Options button has been moved to the [[Minecraft:Game Menu]] where the Open to LAN button used to be, replacing it.
** 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.
** 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.
* Changed {{cd|minecraft:lightning_strike}} trigger
*** The Lock World screen has been changed.
** {{cd|bystander}} and {{cd|lightning}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type
** 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.


'''[[Minecraft:Particles]]'''
* Changed {{cd|minecraft:player_generates_container_loot}} trigger
* Falling leaves particles no longer appear for [[Minecraft:spruce leaves]].
** 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.
*** If a tag or a list is used, trigger will run when any listed loot table is generated.


'''[[Minecraft:Predicate]]'''
* Changed {{cd|minecraft:thrown_item_picked_up_by_player}} trigger
* The {{cd|condition}} field (describing predicate type) has been renamed to {{cd|type}}.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.


* Changed {{cd|minecraft:all_of}}
* Changed {{cd|minecraft:thrown_item_picked_up_by_entity}} 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|entity}} field now accepts an inline value or a namespaced ID 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:any_of}}
* Changed {{cd|minecraft:player_hurt_entity}} 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|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
* Changed {{cd|minecraft:inverted}}
** 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 {{cd|term}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
 
* Changed {{cd|minecraft:random_chance}}
* Changed {{cd|minecraft:entity_hurt_player}} trigger
** The {{cd|chance}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} 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.
* 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.
* Changed {{cd|minecraft:player_interacted_with_entity}} trigger
** 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.
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} 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:player_sheared_equipment}} trigger
* Changed {{cd|minecraft:entity_scores}}
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** 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:crafter_recipe_crafted}} trigger
** New entries added to previously empty-in-vanilla {{cd|predicate}} registry:
** 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.
*** {{cd|minecraft:tool/can_silk_touch}}
*** If a tag or a list is used, trigger will run when any listed recipe is used.
*** {{cd|minecraft:tool/can_shear}}
*** {{cd|minecraft:block/fast_cooking}}


* Potion predicates
* Changed {{cd|minecraft:recipe_crafted}} trigger
** The {{cd|minecraft:potion_contents}} data component predicate has been changed to allow matching on specific potion effects.
** 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 previous predicate format used a list of potion types, the new format allows for more refined matching.
*** If a tag or a list is used, trigger will run when any listed recipe is used.
** 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.
* Changed {{cd|minecraft:recipe_unlocked}} trigger
*** {{cd|effects}} – A collection predicate of {{cd|mob_effects}} predicates to match.
** 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.
**** The collection predicate format is as follows:
*** If a tag or a list is used, trigger will run when any listed recipe is unlocked
***** {{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.
* Changed {{cd|minecraft:slide_down_block}}
****** {{cd|test}} The {{cd|mob_effects}} predicate to match.
** 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|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.
* Changed {{cd|minecraft:summoned_entity}} trigger
** 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:
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
<syntaxhighlight lang="json">
 
    {
* Changed {{cd|minecraft:tame_animal}} trigger
        "minecraft:<effect type>": {
** The {{cd|entity}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
          "duration": "<integer bounds representing a duration in ticks>",
 
          "amplifier": "<integer bounds>",
* Changed {{cd|minecraft:target_hit}} trigger
          "ambient": true/false,
** The {{cd|projectile}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
          "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
* Changed {{cd|minecraft:villager_trade}} trigger
** Matches block state and optionally block entity data and components (if present).
** The {{cd|villager}} 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):
*** {{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
'''[[Minecraft:Block entity data]]'''
** This has been fully replaced by {{cd|minecraft:match_block}}
* {{cd|minecraft:sign}} and {{cd|minecraft:hanging_sign}}
** By default, commands and other click events contained in sign text are no longer executed when the block is clicked.
*** Additionally, text components on newly placed signs are no longer resolved by default.
*** New boolean field called {{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.


'''[[Minecraft:Realms]]'''
* {{cd|minecraft:brewing_stand}}
* Added support for Realms to use additional server regions in Canada, Mexico, South Africa, and Arizona, USA if they become available in the future.
** The following fields are now stored as integers rather than shorts:
*** 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.
*** Changed the {{cd|Fuel}} field from a byte to an integer, this is the amount of fuel remaining.
** The following new fields have been added:
*** Added the {{cd|total_brew_time}} integer field, this is the total amount of time the current brewing process will take.
*** Added the {{cd|total_fuel}} integer field, this represents the amount of fuel that was added in the last refuel.
*** Added the {{cd|speed_multiplier}} float field, this will be used to speed up or slow down the next brewing process.


'''[[Minecraft:Recipe (Java Edition)|Recipes]]'''
* {{cd|minecraft:furnace}}, {{cd|minecraft:smoker}} and {{cd|minecraft:blast_furnace}}
* The recipes for smokers and blast furnaces now use the same cooking time in their data definition as their furnace counterparts.
** The following fields are now stored as integers rather than shorts:
** The cooking time speedup is now done through the {{cd|minecraft:cooking/speed_default}} number provider used by the furnace fuel components.
*** 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.
 
*** 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.
* Potion brewing recipes
*** Changed the {{cd|lit_time_remaining}} field from a short to an integer, this is the amount of burn time remaining.
** Potion brewing recipes are now data-driven. New recipes can be added via [[Minecraft:data pack]]s, and vanilla recipes may be modified.
*** 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.
** Brewing recipes use the <code>minecraft:brewing</code> type.
** The following new fields have been added:
** The main contents are:
*** Added the {{cd|speed_multiplier}} float field, this will be used to speed up or slow down the next cooking process.
*** <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.
'''[[Minecraft:Block entity format]]'''
*** <code>output</code> – item stack, the resulting item.
* {{cd|minecraft:decorated_pot}}
** Example of a vanilla recipe:
** 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:
<syntaxhighlight lang="json">
*** {{cd|back}}
{
*** {{cd|left}}
  "type": "minecraft:brewing",
*** {{cd|right}}
  "input": {
*** {{cd|front}}
    "item": "minecraft:potion",
 
    "potion_contents": {
'''[[Minecraft:Block states]]'''
      "potion": "minecraft:water"
* The following block state fields have been renamed.
    }
** {{cd|Name}} is now {{cd|id}}
  },
** {{cd|Properties}} is now {{cd|properties}}
  "output": {
* The default block state of a block can now be referred to in a compact form directly by the block ID.
    "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'''
'''[[Minecraft:Block transformer definition|Block transformers]]'''
* Terrain blocks are now rendered with MultiDrawIndirect on supported devices.
* Added {{cd|minecraft:block_transformer}} registry containing rules for transforming a block into another block.
 
* Format:
'''[[Minecraft:Resource pack]]'''
** List of objects with fields:
* The version is now {{cd|95.0}}.
*** {{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.
'''[[Minecraft:Server]]s'''
**** The set of Block State Providers are the same as the Block State Providers used in World Generation.
* Some log lines that server software might look out for have been removed.
*** {{cd|sound}} — optional field, Sound Event to play on interaction, e. g. {{cd|minecraft:item.axe.strip}}.
** The Minecraft Server Management Protocol can be used instead.
**** If not present, defaults to play no Sound Event.
*** {{cd|particle}} — optional field, particles to play on interaction.
**** If not present, defaults to {{cd|none}}.
***** {{cd|none}}
***** {{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: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 [[Minecraft: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"
 
'''[[Minecraft:Data component format]]'''
* Changed {{cd|minecraft:consumable}}
** Added a new optional field to the {{cd|teleport_randomly}} consume effect:
*** {{cd|directional_particles}} - boolean, whether to show a particle trail into the direction of the teleportation
**** If not present, defaults to {{cd|true}}


'''[[Minecraft:Server properties]]'''
* Changed {{cd|minecraft:pot_decorations}}
* The {{cd|white-list}} property is now {{cd|true}} by default.
** Instead of taking a list of 4 item IDs, this component now takes an object with 4 optional item stack fields named:
*** {{cd|back}}
*** {{cd|left}}
*** {{cd|right}}
*** {{cd|front}}


'''[[Minecraft:Shaders]]'''
* Changed {{cd|minecraft:trim_material}}
* Replaced current "Improved Transparency" approach with a new Order-independent Transparency (OIT) algorithm which is expected to be much better at solving translucency issues.
** The format of inline material definitions has been updated
** Added new shaders to support order-independent transparency:
** Trim Materials
*** <samp>core/oit_composite.fsh</samp>
*** The format of elements in the {{cd|trim_material}} registry has been updated:
*** <samp>core/oit_depth_bounds_cull.fsh</samp>
**** {{cd|asset_name}} has been replaced with {{cd|palette_id}} - Palette Texture ID to be used for this material.
*** <samp>include/oit.glsl</samp>
**** {{cd|override_armor_assets}} has been removed, overrides are now defined in the Resource Pack Equipment Asset.
*** <samp>include/oit_add_transmittance.glsl</samp>
 
*** <samp>include/oit_common.glsl</samp>
* Removed {{cd|minecraft:swing_animation}}
*** <samp>include/oit_depth_bounds.glsl</samp>
** This has been replaced by {{cd|minecraft:attack_animation}} and {{cd|minecraft:interact_animation}}.
*** <samp>include/oit_depth_sample.glsl</samp>
*** Existing items in the world will be migrated to using the default {{cd|whack}}.
*** <samp>include/oit_sample.glsl</samp>
*** Setting both of these new components to the same value will be functionally identical to the old component, except for:
** Extracted the texture sampling logic from <samp>core/terrain.fsh</samp> into <samp>include/texture_sampling.glsl</samp>
**** The {{cmd|swing}} command – animation type now specified by the command.
** Renamed the following core shaders:
**** Items being dropped by entities.
*** <samp>core/rendertype_clouds.vsh</samp> -> <samp>core/clouds.vsh</samp>
 
*** <samp>core/rendertype_clouds.fsh</samp> -> <samp>core/clouds.fsh</samp>
* Removed {{cd|minecraft:map_color}}
*** <samp>core/rendertype_world_border.vsh</samp> -> <samp>core/world_border.vsh</samp>
** Maps are no longer drawn as a tinted overlay, so there is nothing left for the color to apply to.
*** <samp>core/rendertype_world_border.fsh</samp> -> <samp>core/world_border.fsh</samp>
** Existing maps have the component stripped on load.
** Updated core shaders to support order-independent transparency
 
*** Introduced new defines:
'''[[Minecraft:Data pack]]'''
**** {{cd|OIT}} - A boolean indicating if OIT is enabled.
* The [[Minecraft:pack format]] version is now {{cd|120.0}}.
**** {{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.
* The {{cd|definition}} field from the {{cd|blocks.json}} data generation report has been removed
**** {{cd|OIT_DEPTH_BOUNDS}} - A boolean indicating if the depth bounds pass is being executed.
* Codec for element lists/tags now allows mixing inline values and references.
**** {{cd|OIT_TRANSMITTANCE}} - A boolean indicating if the transmittance pass is being executed.
** For example, item modifiers like {{cd|[{type:set_count, ...}, "minecraft:some_modifier"]}} are now allowed.
**** {{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.
'''[[Minecraft:Debug screen]]'''
**** {{cd|OIT_ADDITIVE}} - A boolean indicating that the OIT algorithm should emulate additive blending for the executing pipeline.
* The debug overlay now supports a separate GUI scale than the rest of the game.
**** {{cd|OIT_OPAQUE_PARTS_THRESHOLD}} - A float determining above which alpha threshold a fragment should be considered solid and not go through OIT.
** This is customizable through the Debug Options screen, F3 + F6.
**** {{cd|OIT_WAVELET_RANK}} - An integer internal to the OIT algorithm.
** The default scale is "Auto", which tries to stay at a higher resolution than normal.
**** {{cd|OIT_COEFF_COUNT}} - An integer internal to the OIT algorithm.
** Another option is "Unchanged", which matches the regular GUI scale.
**** {{cd|OIT_COEFF_ATTACHMENT_COUNT}} - An integer internal to the OIT algorithm.
** The rest of the options work the same as in the normal "GUI Scale", controlling the scale directly.
**** {{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.
* Added a "player_speed" debug entry that displays the speed of the player in blocks per tick.
**** {{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.
* The debug overlay now shows the display refresh rate.
**** Affected shaders:
 
***** <samp>core/block.fsh</samp>
'''[[Minecraft:Environment attribute]]'''
***** <samp>core/block.vsh</samp>
* {{cd|minecraft:gameplay/bed_rule}}
***** <samp>core/clouds.fsh</samp>
** Field {{cd|explodes}} has been renamed to {{cd|destroy_on_use}}
***** <samp>core/clouds.vsh</samp>
** Added {{cd|destroy_on_leave}} – optional boolean; if set to {{cd|true}}, the bed will be destroyed when leaving it.
***** <samp>core/entity.fsh</samp>
*** If omitted, defaults to {{cd|false}}
***** <samp>core/entity.vsh</samp>
 
***** <samp>core/item.fsh</samp>
* {{cd|minecraft:visual/ambient_particles}}
***** <samp>core/item.vsh</samp>
** Now supports interpolation between Timeline keyframes (probabilities will be crossfaded).
***** <samp>core/particle.fsh</samp>
** Introduced support for new modifier: {{cd|append}}
***** <samp>core/position_color.fsh</samp>
*** Unlike {{cd|override}} which totally replaces the particle list, this modifier concatenates all elements with the layers below.
***** <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.
'''Equipment assets'''
* Some of the members in {{cd|Globals}} and {{cd|DynamicTransforms}} are shuffled to use less memory for those uniform blocks.
* 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.
 
** Format: list of override entries with fields:
* Always-on Post Effect Support
*** {{cd|when}} – object with fields, the material and/or pattern to match.
** A resource pack can now define a {{cd|minecraft:end_of_frame}} post effect.
**** {{cd|material}} – optional trim material ID, the material to match (if specified).
** It will be applied before other post effects, including the ones enabled by the new {{cd|posteffect}} command.
**** {{cd|pattern}} – optional trim pattern ID, the pattern to match (if specified).
** This post effect is always on as long as the resource pack is loaded, and cannot be controlled by the {{cd|posteffect}} command.
***** Note: this is not the palette ID, as {{cd|trim_palette_replacements}} used to be.
** 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.
**** 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.


* Shader compilation changes
'''Game window and input backend'''
** Shaders are now compiled by ShaderC when using OpenGL as well, identically to when using Vulkan.
* The minimum window size is now 320&times;240 pixels.
** Shader includes are now handled by ShaderC using {{cd|#include}} instead of {{cd|#moj_import}}
* Minecraft now uses {{WP|SDL3}} instead of {{WP|GLFW}} for window management, input and platform integration.
** Shader inputs and outputs must have a location specified in shader source.
* Keyboard input now uses SDL scancodes for physical key positions and SDL keycodes for layout-dependent text editing shortcuts.
*** 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]]'''
'''[[Minecraft:GUI]]'''
* Slot sources can now be defined as files inside a datapack, within the {{cd|slot_source}} folder.
* The sub-headings and categories in different tabs of [[Minecraft:Options]] now use a boldface, underlined and centered format, and can now be focused.
** 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}}
'''[[Minecraft:Instrument definition]]'''
** Uses the referenced slot source.
* The format of elements in the instrument registry have been updated:
** Fields:
** Added the {{cd|durability_damage}} field - optional non-negative integer, amount of durability to consume on each use.
*** {{cd|name}} - the namespaced id of the slot source.
** Updated the {{cd|use_duration}} field - can now be {{cd|0}} for no cooldown.


* Changed {{cd|minecraft:slot_range}}
'''[[Minecraft:Item model]]s'''
** The {{cd|source}} field has a new valid type container, which sources slots from a container or inventory provided through loot context.
* Added optional {{cd|shade_direction_override}} to block model elements.
** The {{cd|source}} field is now optional.
** Accepted values are cardinal directions ({{cd|down}}, {{cd|up}}, {{cd|north}}, {{cd|south}}, {{cd|west}}, {{cd|east}})
*** Defaults to the container source type when absent.
** When set, this overrides directional shading for the element regardless of face orientation.
* Removed {{cd|shade}} from block model elements
** {{cd|shade_direction_override: "up"}} to get the previous {{cd|shade: false}} behavior.
* Tint source
** Removed {{cd|minecraft:map_color}}
*** The {{cd|minecraft:map_color}} component it read no longer exists.


* Changed {{cd|minecraft:group}}
'''[[Minecraft:Java_Edition_level_format#level.dat_format|level.dat]]'''
** 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.
* {{cd|level.dat}} now contains a {{cd|version_history}} list with prior data versions of the file.
** 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.


* Changed {{cd|minecraft:filtered}}
'''[[Minecraft:Loot function]]s'''
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
* 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:contents}}
* Changed {{cd|minecraft:enchant_with_levels}}
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
** The {{cd|levels}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
 
* Changed {{cd|minecraft:enchanted_count_increase}}
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
 
* Changed {{cd|minecraft:exploration_map}}
** The {{cd|map_color}} field has now been removed.
** The function no longer changes the type of the item it is applied to – it now only adds map data to the existing item.
*** Previously it required a {{cd|minecraft:map}} and produced a {{cd|minecraft:filled_map}}
*** The item to produce is now chosen by the loot entry or villager trade itself, so a data pack that produced exploration maps has to change its item from {{cd|minecraft:map}} to {{cd|minecraft:filled_map}} (or one of the explorer map items)
*** 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.
** 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.


* Changed {{cd|minecraft:limit_slots}}
* Changed {{cd|minecraft:limit_count}}
** The {{cd|slot_source}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:slot_source}} type.
** 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|limit}} field no longer accepts a single number.


* Removed {{cd|minecraft:reference}}
* Changed {{cd|minecraft:modify_contents}}
** 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 {{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.


'''[[Minecraft:Sounds]]'''
* Changed {{cd|minecraft:sequence}}
* Added new sound events:
** 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|block.poplar_leaves.ambient}}
** Added optional condition field which accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
** {{cd|block.poplar_leaves.break}}
** 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.
** {{cd|block.poplar_leaves.fall}}
*** 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.
** {{cd|block.poplar_leaves.place}}
** Can only use an inline definition in a top-level file.
** {{cd|block.poplar_leaves.step}}
 
** {{cd|block.poplar_leaves.hit}}
* Changed {{cd|minecraft:set_attributes}}
** {{cd|block.red_shrub.break}}
** 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.
** {{cd|block.red_shrub.place}}
 
** {{cd|block.shelf_mushroom.break}}
* Changed {{cd|minecraft:set_count}}
** {{cd|block.shelf_mushroom.fall}}
** The {{cd|count}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** {{cd|block.shelf_mushroom.place}}
 
** {{cd|block.shelf_mushroom.step}}
* Changed {{cd|minecraft:set_custom_model_data}}
** {{cd|block.shelf_mushroom.bounce}}
** 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|block.straw_bed.break}}
** 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|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]]'''
* Changed {{cd|minecraft:set_damage}}
* Biome Tags
** The {{cd|damage}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
** Added {{cd|dappled_forest}} to {{cd|d=and|#is_forest|#is_overworld|#spawns_cold_variant_farm_animals|#has_structure/trial_chambers}} tags.


* Block Tags
* Changed {{cd|minecraft:set_enchantments}}
** Added {{cd|red_shrub}} to {{cd|d=and|#replaceable|#replaceable_by_mushrooms}} tags.
** Values in {{cd|enchantments}} map can now be an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** 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.
* Changed {{cd|minecraft:set_loot_table}}
** Added {{cd|#poplar_logs}} to {{cd|#logs_that_burn}} tag.
** The {{cd|name}} field has been renamed to {{cd|loot_table_id}}
** Added {{cd|poplar_log}} to {{cd|#overworld_natural_logs}} tag.
** Removed unused field {{cd|type}}
** Added {{cd|poplar_planks}} to {{cd|#planks}} tag.
 
** Added {{cd|poplar_sign}} to {{cd|#standing_signs}} tag.
* Changed {{cd|minecraft:set_ominous_bottle_amplifier}}
** Added {{cd|poplar_hanging_sign}} to {{cd|#ceiling_hanging_signs}} tag.
** The {{cd|amplifier}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.
** 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|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.
** {{Collapse
|title=Added 32 values to {{cd|#mineable/pickaxe}} tag.
|content=
** added {{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
* Changed {{cd|minecraft:set_random_dyes}}
** Added {{cd|poplar_boat}} to {{cd|#boat}} tag.
** The {{cd|number_of_dyes}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_int_provider}} type.


* Item Tags
* Changed {{cd|minecraft:set_stew_effect}}
** Added {{cd|d=and|red_poplar_leaves|orange_poplar_leaves|yellow_poplar_leaves}} to {{cd|#leaves}} tag.
** 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.
** Added {{cd|#poplar_logs}} to {{cd|#logs_that_burn}} tag.
 
** Added {{cd|poplar_planks}} to {{cd|#planks}} tag.
* Removed {{cd|minecraft:reference}}
** Added {{cd|poplar_sign}} to {{cd|#signs}} tag.
** This function has become obsolete, as any field that takes a function now accepts (among other things) a namespaced ID to other functions.
** 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.
** {{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:Loot table]]s'''
* Palette Textures
* 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.
** All armor trim palette textures have been moved from {{cd|textures/trim/color_palettes/}} to {{cd|textures/palettes/trim/}}
* The {{cd|rolls}} and {{cd|bonus_rolls}} fields now accept an inline value or a namespaced ID.
*** The base armor trim palette texture has instead been moved to {{cd|textures/palettes/trim_base.png}}
** {{cd|rolls}} field is {{cd|minecraft:context_int_provider}}
** Entity armor trim material textures are no longer generated into the {{cd|minecraft:trims}} atlas with {{cd|paletted_permutations}}, but rather generated on-demand
** {{cd|bonus_rolls}} field is {{cd|minecraft:context_float_provider}}
*** The base palette id is now specified in a new {{cd|palette}} mcmeta section field
* Loot table types that have a dedicated registry now support registry element and tag references.
*** This section has a single field: {{cd|base_palette}} - the base Palette Texture ID to remap from
** 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
** Item armor trim material textures are still generated with {{cd|paletted_permutations}} as before
** Affected types:
** 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}}
*** {{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
** Added {{cd|minecraft:command_compute_default}} loot table type
*** Currently used for {{cmd|compute default}} command.
*** It takes the following parameters:
**** {{cd|origin}}, the position at which the command was executed
**** {{cd|this}} entity, the {{cd|@s}} entity of the command being executed (optional)
 
** Added {{cd|minecraft:command_compute_entity}} loot table type
*** Currently used for {{cmd|compute entity}} command.
*** It takes the following parameters:
**** Everything included in {{cd|minecraft:command_compute_default}}
**** {{cd|target_entity}}, entity selected by the selector given in a command


* Equipment Assets
** Added {{cd|minecraft:command_compute_position}} loot table type
** 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)
*** Currently used for {{cmd|compute block}} command.
*** Format: map from original Palette ID to a replacement Palette ID
*** It takes the following parameters:
**** Everything included in {{cd|minecraft:command_compute_default}}
**** {{cd|block_entity}}, the block entity of the block at the position given in a command
**** {{cd|block_state}}, the current state of the block at the position given in a command


* Block Sprites
** Added {{cd|minecraft:container_process}} loot table type
** Added new Block textures:
*** Currently used to evaluate cooking and brewing fuel values.
*** {{cd|block/orange_poplar_leaves.png}}
*** It takes the following parameters:
*** {{cd|block/red_poplar_leaves.png}}
**** {{cd|container}}, the container or inventory being evaluated.
*** {{cd|block/yellow_poplar_leaves.png}}
**** {{cd|block_entity}}, the block entity being fueled.
*** {{cd|block/poplar_door_bottom.png}}
**** {{cd|block_state}}, the current state of the block being fueled.
*** {{cd|block/poplar_door_top.png}}
**** {{cd|origin}}, the location of the block being fueled.
*** {{cd|block/poplar_log_top.png}}
 
*** {{cd|block/poplar_log.png}}
** Changed {{cd|minecraft:advancement_location}} loot table type
*** {{cd|block/poplar_planks.png}}
*** Block entities are now available in context and can be matched by conditions like {{cd|minecraft:match_block}}
*** {{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:block_interact}} loot table type
** Added new Item textures:
*** {{cd|origin}} is now available in context, as the center of the block being interacted with.
*** {{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}}
** Removed <samp>item/filled_map_markings.png</samp>


* Map sprites
* Loot pool entries
** Added new map textures:
** 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.
*** <samp>abandoned_camp.png</samp>
** 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.
*** <samp>ancient_city.png</samp>
*** This field is now present on all loot entries, including previously omitted {{cd|minecraft:alternatives}}, {{cd|minecraft:sequence}} and {{cd|minecraft:group}}.
*** <samp>desert_pyramid.png</samp>
** Changed {{cd|minecraft:tag}} loot pool entry
*** <samp>mineshaft.png</samp>
*** 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.
*** <samp>warm_ocean_ruins.png</samp>
** Changed {{cd|minecraft:loot_table}} loot pool entry
** The following icons have been updated in order to show player rotation on the map:
*** 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.
*** <samp>/player.png</samp>
*** Added {{cd|expand}} field, working the same as in {{cd|minecraft:tag}} pool entry:
*** <samp>/player_off_limits.png</samp>
**** If {{cd|true}}, each entry inside tag will be added to outer pool, with weights equal to weight of this entry.
*** <samp>/player_off_map.png</samp>
**** 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.


* UI Sprites
'''[[Minecraft:Minecraft Server Management Protocol]] 3.1.0'''
** Added new UI textures:
* Added notifications indicating when the server performs a full world upgrade on startup.
*** {{cd|gui/hanging_signs/poplar.png}}
** {{cd|minecraft:notification/world/upgrade_started}}
*** {{cd|gui/signs/poplar.png}}
** {{cd|minecraft:notification/world/upgrade_progress}}
** {{cd|minecraft:notification/world/upgrade_finished}}
** {{cd|minecraft:notification/world/upgrade_failed}}


* Entity Textures
'''[[Minecraft:Number provider]]s'''
** Added new Entity textures:
* 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|entity/boat/poplar.png}}
* 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|entity/chest_boat/poplar.png}}
* 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.}}


* Particles
* Following number provider types have been split into integer and float variants:
** Added new Particle textures:
** {{cd|minecraft:constant}}
*** {{cd|orange_poplar_1.png}}
** {{cd|minecraft:uniform}}
*** {{cd|orange_poplar_2.png}}
** {{cd|minecraft:storage}}
*** {{cd|orange_poplar_3.png}}
** {{cd|minecraft:sum}}
*** {{cd|orange_poplar_4.png}}
*** renamed to {{cd|minecraft:add}}
*** {{cd|red_poplar_1.png}}
** {{cd|minecraft:product}}
*** {{cd|red_poplar_2.png}}
*** renamed to {{cd|minecraft:mul}}
*** {{cd|red_poplar_3.png}}
** {{cd|minecraft:minimum}}
*** {{cd|red_poplar_4.png}}
*** renamed to {{cd|minecraft:min}}
*** {{cd|yellow_poplar_1.png}}
** {{cd|minecraft:maximum}}
*** {{cd|yellow_poplar_2.png}}
*** renamed to {{cd|minecraft:max}}
*** {{cd|yellow_poplar_3.png}}
** {{cd|minecraft:average}}  
*** {{cd|yellow_poplar_4.png}}
*** renamed to {{cd|minecraft:avg}}
*** {{cd|shelf_mushroom_particle.png}}
** {{cd|minecraft:weighted_list}}
** {{cd|minecraft:conditional}}
** {{cd|minecraft:number_dispatcher}}
** {{cd|minecraft:environment_attribute}}
* The following number providers types are now only available in integer variant:
** {{cd|minecraft:binomial}}
** {{cd|minecraft:score}}
* The following number providers types are now only available in float variant:
** {{cd|minecraft:enchantment_level}}
* The following vanilla number providers have been migrated to {{cd|minecraft:context_int_provider}} registry:
** {{cd|minecraft:compostable/low}}
** {{cd|minecraft:compostable/low_medium}}
** {{cd|minecraft:compostable/medium}}
** {{cd|minecraft:compostable/medium_high}}
** {{cd|minecraft:compostable/always_add_one}}
** {{cd|minecraft:cooking/time_bamboo}}
** {{cd|minecraft:cooking/time_wool_slabs}}
** {{cd|minecraft:cooking/time_wool_carpets}}
** {{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}})


'''[[Minecraft:UI]]'''
* Added vanilla number providers
* Removed the Raw Input mouse setting.
** {{cd|minecraft:cooking/time_bamboo}}
** Mouse input now always uses relative mouse mode while playing in-game.
*** Returns the burn time in ticks for bamboo and scaffolding.
* Key bindings now use physical keys instead of keyboard-layout-specific key codes.
** {{cd|minecraft:cooking/time_blaze_rod}}
* Borderless Fullscreen is now the default fullscreen mode.
*** Returns the burn time in ticks for blaze rods.
* Switching between Borderless and Exclusive Fullscreen no longer requires restarting the game.
** {{cd|minecraft:cooking/time_boats}}
* Exclusive fullscreen mode on macOS is no longer supported.
*** Returns the burn time in ticks for boats.
* The minimum window size is now 320 by 240 pixels.
** {{cd|minecraft:cooking/time_coal}}
* On macOS, holding a key while entering text now displays the native accent and candidate popup.
*** Returns the burn time in ticks for coal.
* On Linux systems, the game will now use and prefer Wayland natively if available.
** {{cd|minecraft:cooking/time_coal_block}}
 
*** Returns the burn time in ticks for coal blocks.
'''[[Minecraft:Villager trade definition]]'''
** {{cd|minecraft:cooking/time_dried_kelp_block}}
* The {{cd|given_item_modifiers}} field has been renamed to {{cd|given_item_modifier}}
*** Returns the burn time in ticks for dried kelp blocks.
** Note: unlike other fields of type {{cd|minecraft:item_modifier}} this field does not support namespaced element or tag IDs.
** {{cd|minecraft:cooking/time_dry_plants}}
 
*** Returns the burn time in ticks for various dry plants.
'''[[Minecraft:World generation]]'''
** {{cd|minecraft:cooking/time_hanging_signs}}
* [[Minecraft:Cave air]] is no longer generated in Nether caves.
*** Returns the burn time in ticks for hanging signs.
 
** {{cd|minecraft:cooking/time_lava_bucket}}
* Biomes
*** Returns the burn time in ticks for lava buckets.
** Removed the {{cd|spawners}}, {{cd|spawn_costs}}, and {{cd|creature_spawn_probability}} fields.
** {{cd|minecraft:cooking/time_roots}}
*** These values have been moved to the new environment attributes.
*** Returns the burn time in ticks for mangrove roots.
 
** {{cd|minecraft:cooking/time_wood_blocks}}
* Block state providers
*** Returns the burn time in ticks for wood blocks.
** Updated {{cd|minecraft:copy_properties_provider}}
** {{cd|minecraft:cooking/time_wood_items_extra_small}}
*** Renamed field {{cd|source_block_state_provider}} to {{cd|source}}
*** Returns the burn time in ticks for very small wood items such as buttons.
** Added {{cd|minecraft:random_block_provider}}
** {{cd|minecraft:cooking/time_wood_items_large}}
*** Returns the default block state for a randomly chosen block.
*** Returns the burn time in ticks for large wood items such as doors.
*** Format:
** {{cd|minecraft:cooking/time_wood_items_small}}
**** {{cd|blocks}}: block ID, list of block IDs or hash-prefixed block tag, specifying the set of blocks to randomly pick from.
*** Returns the burn time in ticks for small wood items such as bows.
** Changed {{cd|minecraft:rotated_block_provider}}
** {{cd|minecraft:cooking/time_wood_slabs}}
*** Now works on any block with axis or facing properties.
*** Returns the burn time in ticks for wood slabs.
*** Format:
** {{cd|minecraft:cooking/time_wool}}
**** Changed the field {{cd|state}}: Now a block state provider.
*** Returns the burn time in ticks for most wool blocks.
**** Added the field {{cd|direction}}: Optional field describing the direction to set.
** {{cd|minecraft:cooking/time_wool_carpets}}
***** If omitted, a random direction is chosen.
*** 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.


* Carvers
* Changed {{cd|minecraft:number_dispatcher}}
** The {{cd|worldgen/configured_carver}} registry has been renamed to {{cd|worldgen/carver}}
** Fields:
** Updated {{cd|minecraft:cave}} carver type
*** {{cd|cases}} - a list of cases in the order that the dispatcher will try to execute them.
*** All fields previously under the config field have been inlined to the top-level.
**** Fields:
*** Added the {{cd|count}} field - non-negative Int Provider, the number of cave tunnels to create from a seed chunk.
***** {{cd|condition}} - an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Renamed {{cd|yScale}} to {{cd|room_vertical_radius_multiplier}}
***** {{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.
*** 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.
*** {{cd|default}} - an optional inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
**** If not specified, defaults to {{cd|1.0}}
**** Defaults to a constant 0 if omitted.
*** 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
* Changed {{cd|minecraft:conditional_value}}
**** If {{cd|true}}, thickness will be multiplied by, with a 10% chance: <math>random(0, 1) * random(0, 3) + 1</math>
** Fields:
**** If not specified, defaults to {{cd|false}}
*** {{cd|conditions}} - an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
*** Removed the {{cd|replaceable}} field, carvers will replace any block (excluding features).
*** {{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.
*** Removed the {{cd|lava_level}} field, fluids are now always selected by the {{cd|aquifer}} or {{cd|sea_level}} configuration in the dimension.
*** {{cd|on_false}} - an optional inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** Removed the {{cd|debug_settings}} field.
**** Defaults to a constant 0 if omitted.
** 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
* Changed {{cd|minecraft:weighted_list}}
** Updated {{cd|constant}}
** Fields:
*** {{cd|argument}} has been renamed to {{cd|value}}
*** {{cd|distribution}} - a list of objects with the following fields.
** Updated {{cd|add}}, {{cd|mul}}, {{cd|min}}, and {{cd|max}}
**** Fields:
*** {{cd|argument1}} has been renamed to {{cd|left}}.
***** {{cd|data}} - an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** {{cd|argument2}} has been renamed to {{cd|right}}.
***** {{cd|weight}} - a positive integer
** 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
 
*** {{cd|argument}} has been renamed to {{cd|input}}.
* Changed {{cd|minecraft:uniform}}
** Updated {{cd|shift_a}}, {{cd|shift_b}}, and {{cd|shift}}
** The {{cd|min}} and {{cd|max}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** {{cd|argument}} has been renamed to {{cd|noise}}
 
** Added {{cd|sub}}
* Changed {{cd|minecraft:binomial}}
*** Performs subtraction between two arguments.
** The {{cd|n}} and {{cd|p}} fields now accept an inline value or a namespaced ID of a {{cd|minecraft:number_provider}} type.
*** Format: object with fields:
 
**** {{cd|left}} - Density Function, the left-hand side of the operation
* Changed {{cd|minecraft:sum}}
**** {{cd|right}} - Density Function, the right-hand side of the operation
** 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.
** Added {{cd|div}}
** Now requires at least one operand.
*** Performs division between two arguments.  
** When used in integer mode, integer mode is used for intermediate steps as well.
*** Format: object with fields:
 
**** {{cd|left}} - Density Function, the left-hand side of the operation.
'''[[Minecraft:Options]]'''
**** {{cd|right}} - Density Function, the right-hand side of the operation.
* The Online button used to access the Online Options screen will now always be shown in the Options menu.
** Updated {{cd|reciprocal}}
* On macOS, Exclusive Fullscreen is now available again.
*** Renamed from {{cd|invert}}
* 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.
** Added {{cd|negate}}
* The cursor is now confined to the window while Exclusive Fullscreen is active.
*** Negates the input.
* The sub-headings and categories in the [[Minecraft:Game rule]]s menu can now be focused for narration.
*** Format: object with fields:
 
**** {{cd|input}} - Density Function, the function to negate.
'''[[Minecraft:Panorama]]'''
** Added {{cd|lerp}}
* Updated the panorama to reflect [[Minecraft:Wilderness Bound]], showing the new Dappled Forest biome with an Abandoned Camp.
*** Performs (unclamped) linear interpolation between two arguments based on an alpha.
 
*** Format: object with fields:
'''[[Minecraft:Particles]]'''
**** {{cd|alpha}} - Density Function, the interpolation factor (0=first, 1=second)
* Falling leaves particles no longer appear for [[Minecraft:spruce leaves]].
***** Any value outside of {{cd|[0; 1]}} will extrapolate
 
**** {{cd|first}} - Density Function, the value at {{cd|alpha{{=}}0}}
'''[[Minecraft:Predicate]]'''
**** {{cd|second}} - Density Function, the value at {{cd|alpha{{=}}1}}
* The {{cd|condition}} field (describing predicate type) has been renamed to {{cd|type}}.
** Added {{cd|floor}}, {{cd|round}}, {{cd|ceil}}, and {{cd|truncate}}
 
*** Rounds the input value to an integer multiple of a given function in a type-dependent direction:
* Changed {{cd|minecraft:all_of}}
**** {{cd|floor}}: rounds towards negative infinity.
** 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.
**** {{cd|round}}: rounds towards the nearest integer (ties round up).
** 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.
**** {{cd|ceil}}: rounds towards positive infinity.
 
**** {{cd|truncate}}: rounds towards 0.
* Changed {{cd|minecraft:any_of}}
*** Format: object with fields:
** 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.
**** {{cd|input}} - Density Function, the input to round.
 
**** {{cd|multiple}} - Density Function, the output will be rounded to an integer multiple of this value.
* Changed {{cd|minecraft:damage_source_properties}}
***** If not specified, defaults to constant {{cd|1}} (i.e. rounding to integer).
** 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.
** Added {{cd|beardifier}}
 
*** Outputs the structure bearding density. Generally summed together with the base terrain density to produce ground below, carve air around, or bury structures.
* Changed {{cd|minecraft:entity_scores}}
*** Format: no fields
** 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.
** Added {{cd|pow}}
** {{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).
*** Raises the given base value to an exponent.
 
*** Format: object with fields:
* Changed {{cd|minecraft:inverted}}
**** {{cd|base}} – density function, the base value.
** The {{cd|term}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:predicate}} type.
**** {{cd|exponent}} – density function, the exponent.
 
** Added {{cd|sqrt}}
* Changed {{cd|minecraft:random_chance}}
*** Computes the square root of the given input.
** The {{cd|chance}} field now accepts an inline value or a namespaced ID of a {{cd|minecraft:context_float_provider}} type.
*** Format: object with fields:
 
**** {{cd|input}} – density function, the value for which to compute the square root.
* Changed {{cd|minecraft:time_check}}
** Added {{cd|log}}
** 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.
*** Computes the natural logarithm of the given input.
** {{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).
*** Format: object with fields:
 
**** {{cd|input}} – density function, the value for which to compute the natural logarithm.
* Removed {{cd|minecraft:reference}}
** Added {{cd|sign}}
** This condition has become obsolete, as any field that takes a loot condition now accepts (among other things) a namespaced ID to other conditions.
*** Computes the sign of the input:
 
**** If the input is positive, returns {{cd|1}}
* Removed {{cd|minecraft:value_check}}
**** If the input is 0, returns {{cd|0}}
** This condition has been split into integer and float variants.
**** If input is negative, returns {{cd|-1}}
 
*** Format: object with fields:
* Added vanilla predicates
**** {{cd|input}} – density function, the value of which to compute the sign.
** New entries added to previously empty-in-vanilla {{cd|predicate}} registry:
** Added {{cd|distance_to_point}}
*** {{cd|minecraft:tool/can_silk_touch}}
*** Computes the distance to a fixed point using the specified distance function.
*** {{cd|minecraft:tool/can_shear}}
*** Format: object with fields:
*** {{cd|minecraft:block/fast_cooking}}
**** {{cd|point}} – array of 3 integers in form {{cd|[x, y, z]}}, the point to compute distance to.
 
**** {{cd|metric}} – one of:
* Potion predicates
***** {{cd|euclidean}} – i.e. <math>sqrt(dx^2 + dy^2 + dz^2)</math>
** The {{cd|minecraft:potion_contents}} data component predicate has been changed to allow matching on specific potion effects.
***** {{cd|euclidean_squared}} – i.e. <math>dx^2 + dy^2 + dz^2</math>
** The previous predicate format used a list of potion types, the new format allows for more refined matching.
***** {{cd|manhattan}} – i.e. <math>abs(dx) + abs(dy) + abs(dz)</math>
** The following fields can be used in any combination, all are optional:
***** {{cd|chebyshev}} – i.e. <math>max(abs(dx), abs(dy), abs(dz))</math>
*** {{cd|potions}} – A list of potion types or a potion tag to match.
** Updated {{cd|gradient}} (renamed from {{cd|y_clamped_gradient}})
*** {{cd|effects}} – A collection predicate of {{cd|mob_effects}} predicates to match.
*** Format: object with fields:
**** The collection predicate format is as follows:
**** {{cd|axis}} – {{cd|x}}, {{cd|y}}, or {{cd|z}}, the axis over which to define this gradient.
***** {{cd|contains}} – A list of {{cd|mob_effects}} predicates to match.
**** {{cd|tiling}} – one of:
***** {{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|clamp_to_edge}} – outside the gradient boundaries, the value at the nearest boundary will be used.
****** {{cd|test}} – The {{cd|mob_effects}} predicate to match.
***** {{cd|repeat}} – the gradient will be repeated outside its boundaries.
****** {{cd|count}} – The number of matches required, or with {{cd|min}} and {{cd|max}} will match a range of counts.
***** {{cd|mirrored_repeat}} – the gradient will be repeated such that odd repetitions are mirrored, ensuring continuity between repetitions.
***** {{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.
**** {{cd|from_coordinate}} – int, the coordinate at which the gradient starts.
** 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:
**** {{cd|to_coordinate}} – int, the coordinate at which the gradient ends.
<syntaxhighlight lang="json">
***** Must not be equal to {{cd|from_coordinate}}
    {
**** {{cd|from_value}} – float, the value at which the gradient starts.
        "minecraft:<effect type>": {
**** {{cd|to_value}} – float, the value at which the gradient ends.
          "duration": "<integer bounds representing a duration in ticks>",
** Added {{cd|slice}}
          "amplifier": "<integer bounds>",
*** 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}}.
          "ambient": true/false,
*** Format: object with fields:
          "visible": true/false
**** {{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.
</syntaxhighlight>
** Changed {{cd|end_outer_islands}}
* Example of matching on several different effects and criteria:
*** Renamed from {{cd|end_islands}}. No longer computes the density of the main island.
<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>


* Int Providers
* Added {{cd|minecraft:match_block}} condition type
** Added {{cd|minecraft:very_biased_to_bottom}} Int provider type
** Matches block state and optionally block entity data and components (if present).
*** Picks a random value in the provided range, with a quadratic bias towards the minimum value.
** Fields (same as elements of {{cd|minecraft:can_place_on}} components):
*** Format: object with fields:
*** {{cd|blocks}} – optional block id, list of namespaced block IDs, or hash-prefixed block tag to match.
**** {{cd|min_inclusive}} - Integer, the minimum selected value (inclusive).
*** {{cd|state}}: optional map of block state property keys to values to match.
**** {{cd|max_inclusive}} - Integer, the maximum selected value (inclusive).
*** {{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.


* Material Condition Registry
* Removed {{cd|minecraft:block_state_property}} condition type
** A new data-driven registry has been introduced, loaded from <samp>data/<namespace>/worldgen/material_condition/<id>.json<samp>.
** This has been fully replaced by {{cd|minecraft:match_block}}
** 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:
'''[[Minecraft:Realms]]'''
*** Material Conditions can also now be specified as an ID reference to an element in the {{cd|worldgen/material_condition}} registry.
* 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.


* Material Rule Registry
* Cooking Recipes
** A new data-driven registry has been introduced, loaded from <samp>data/<namespace>/worldgen/material_rule/<id>.json</samp>.
** The {{cd|cookingtime}} field of all cooking recipes is no longer optional.
** Elements in this registry define a pipeline for selecting what base block to place in the world at a given position.
** Custom [[Minecraft:smoker]] and [[Minecraft:blast furnace]] recipes should be updated accordingly, by setting {{cd|cookingtime}} to twice the previous value.
** The format is identical to that which was formerly written in the {{cd|surface_rule}} field within noise settings files, with the following extensions:
** If a custom cooking recipe was previously relying on the default {{cd|cookingtime}} value, {{cd|200}} can be used to maintain the same timing.
*** 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.


* [[Minecraft:Noise]]s
* Potion brewing recipes
** The format of noises (defined in the <samp>worldgen/noise</samp> registry, or inline in noise-based block state providers) has been updated.
** Potion brewing recipes are now data-driven. New recipes can be added via [[Minecraft:data pack]]s, and vanilla recipes may be modified.
** Noises define a fractal brownian motion configuration with the following properties:
** Brewing recipes use the <code>minecraft:brewing</code> type.
*** Produces output values (approximately) fitting a normal distribution.
** The main contents are:
*** Unless otherwise specified, fits the output amplitude to {{cd|[-1; 1]}}
*** <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.
**** 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.
*** <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.
*** Parameterized by {{cd|persistence{{=}}0.5}}, {{cd|lacunarity{{=}}2.0}}
*** <code>output</code> – item stack, the resulting item.
**** i.e. between each octave, the amplitude is halved and the frequency doubled.
** Example of a vanilla recipe:
*** Has stable seeding such that an octave can be boosted, muted, or added without affecting the rest of the octaves.
<syntaxhighlight lang="json">
*** Renamed {{cd|firstOctave}} to {{cd|base_octave}}.
{
*** Added {{cd|base_amplitude}} – non-negative float, a scale factor to apply to the noise output.
  "type": "minecraft:brewing",
**** If not specified, defaults to {{cd|1.0}}.
  "input": {
*** Added {{cd|octave_count}} – integer between {{cd|1}} and {{cd|32}}, the number of octaves to sample.
    "item": "minecraft:potion",
*** Added normalize – boolean, or {{cd|"legacy"}}, controls how the output amplitude should be normalized.
    "potion_contents": {
**** 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]}})
      "potion": "minecraft:water"
**** 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.
  "output": {
**** If not specified, defaults to {{cd|true}}.
    "components": {
**** 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.
      "minecraft:potion_contents": {
*** Renamed {{cd|amplitudes}} to {{cd|amplitude_modifiers}} – list of floats, a scaling factor to apply to each octave.
        "potion": "minecraft:awkward"
**** 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}}.
    "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}}.


* Placement Modifiers
'''[[Minecraft:Server]]s'''
** Changed {{cd|minecraft:offset}} placement modifier
* Some log lines that server software might look out for have been removed.
*** Renamed from {{cd|random_offset}}.
** The Minecraft Server Management Protocol can be used instead.
*** Format:
 
**** Removed the fields {{cd|xz_spread}} and {{cd|y_spread}}.
'''[[Minecraft:Server properties]]'''
**** Added the fields {{cd|x}}, {{cd|y}}, {{cd|z}}: Integer providers between -16 and {{cd|16}} specifiying the axis-specific offset.
* The {{cd|white-list}} property is now {{cd|true}} by default.
** 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:Shaders]]'''
** These are the predicates used by ore features ({{cd|targets[].target}}) and rule structure processors ({{cd|rules[].input_predicate}} and {{cd|rules[].location_predicate}}).
* 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 rule test type {{cd|minecraft:height_match}}
** Added new shaders to support order-independent transparency:
*** 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}}.
*** <samp>core/oit_composite.fsh</samp>
*** Format: object with fields:
*** <samp>core/oit_depth_bounds_cull.fsh</samp>
**** {{cd|min_inclusive}} – int, the minimum y value of allowed blocks (inclusive).
*** <samp>include/oit.glsl</samp>
**** {{cd|max_inclusive}} – int, the maximum y value of allowed blocks (inclusive).
*** <samp>include/oit_add_transmittance.glsl</samp>
** Added rule test type {{cd|minecraft:all_of}}
*** <samp>include/oit_common.glsl</samp>
*** This checks a list of Rule Tests for whether all of them return true for the same block.
*** <samp>include/oit_depth_bounds.glsl</samp>
*** Format: object with fields:
*** <samp>include/oit_depth_sample.glsl</samp>
**** {{cd|rules}} - list of Rule Tests, the rules to test the block against.
*** <samp>include/oit_sample.glsl</samp>
** Added {{cd|minecraft:any_of}}
** Extracted the texture sampling logic from <samp>core/terrain.fsh</samp> into <samp>include/texture_sampling.glsl</samp>
*** This checks a list of rule tests for whether any of them returns true for the same block.
** Renamed the following core shaders:
*** Format: object with fields:
*** <samp>core/rendertype_clouds.vsh</samp> -> <samp>core/clouds.vsh</samp>
**** {{cd|rules}} – list of rule tests, the rules to test the block against.
*** <samp>core/rendertype_clouds.fsh</samp> -> <samp>core/clouds.fsh</samp>
** Added {{cd|minecraft:not}}
*** <samp>core/rendertype_world_border.vsh</samp> -> <samp>core/world_border.vsh</samp>
*** This checks a rule test for whether it returns false for a given block.
*** <samp>core/rendertype_world_border.fsh</samp> -> <samp>core/world_border.fsh</samp>
*** Format: object with fields:
** Updated core shaders to support order-independent transparency
**** {{cd|rule}} – rule test, the rule to test the block against.
*** Introduced new defines:
 
**** {{cd|OIT}} - A boolean indicating if OIT is enabled.
* Structure Placements
**** {{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.
** Added {{cd|minecraft:dimension_origin}}
**** {{cd|OIT_DEPTH_BOUNDS}} - A boolean indicating if the depth bounds pass is being executed.
** New structure placement that places a single instance of the structure at the dimension origin.
**** {{cd|OIT_TRANSMITTANCE}} - A boolean indicating if the transmittance pass is being executed.
*** The dimension origin is defined as the {{cd|spawn_target}} for noise settings based dimensions, otherwise Chunk (0, 0).
**** {{cd|OIT_ACCUMULATE}} - A boolean indicating if the accumulate pass is being executed.
** No additional fields.
**** {{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.
* [[Minecraft:Template pool|Structure pool element]]s
**** {{cd|OIT_OPAQUE_PARTS_THRESHOLD}} - A float determining above which alpha threshold a fragment should be considered solid and not go through OIT.
** Changed {{cd|minecraft:feature_pool_element}}
**** {{cd|OIT_WAVELET_RANK}} - An integer internal to the OIT algorithm.
*** Can now connect to jigsaw blocks with any target name, instead of just {{cd|minecraft:bottom}}.
**** {{cd|OIT_COEFF_COUNT}} - An integer internal to the OIT algorithm.
 
**** {{cd|OIT_COEFF_ATTACHMENT_COUNT}} - An integer internal to the OIT algorithm.
* Vertical Anchors
**** {{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.
** Added a new option for vertical Anchors: {{cd|relative_to_sea_level}}
**** {{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.
*** Specifies an offset to the sea level of the dimension.
**** Affected shaders:
 
***** <samp>core/block.fsh</samp>
=== Misc ===
***** <samp>core/block.vsh</samp>
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>
***** <samp>core/clouds.fsh</samp>
 
***** <samp>core/clouds.vsh</samp>
== Fixes ==
***** <samp>core/entity.fsh</samp>
{{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
***** <samp>core/entity.vsh</samp>
|;old
***** <samp>core/item.fsh</samp>
|4|Item drops sometimes appear at the wrong location.
***** <samp>core/item.vsh</samp>
|2157|Particles emitted from dragon eggs when teleporting do not point in the correct direction.
***** <samp>core/particle.fsh</samp>
|5269|Updating a server's address in the multiplayer menu does not update its status.
***** <samp>core/position_color.fsh</samp>
|40597|The interaction of Minecraft's built-in fullscreen mode and macOS fullscreen can glitch the game window.
***** <samp>core/rendertype_beacon_beam.fsh</samp>
|46421|You cannot use nether portals, end portals, and end gateways while in Spectator mode.
***** <samp>core/rendertype_clouds.fsh</samp>
|51859|The line spacing of text within all hover tooltips is larger between the first and second lines.
***** <samp>core/rendertype_crumbling.fsh</samp>
|58061|Endermen can teleport onto signs.
***** <samp>core/rendertype_entity_shadow.fsh</samp>
|73162|Breaking an entity that instantly breaks sometimes destroys the block behind it in Creative mode.
***** <samp>core/rendertype_lightning.fsh</samp>
|91006|Some entities lose their name when placed/broken.
***** <samp>core/rendertype_lines.fsh</samp>
|102732|Arrows can visually bounce off of entities that don't wear a shield.
***** <samp>core/rendertype_world_border.fsh</samp>
|110989|{{cmd|spreadplayers}} considers signs to be a valid block to be spread onto.
***** <samp>core/terrain.fsh</samp>
|112580|Structure blocks' GUI does not pause the game in singleplayer.
***** <samp>core/terrain.vsh</samp>
|112744|The {{cd|Team}} NBT tag only exists for living entities.
***** <samp>core/text.fsh</samp>
|113006|Items reeled in with fishing rods do not move smoothly but appear to teleport.
***** <samp>core/text_background.fsh</samp>
|116286|{{cmd|spreadplayers}} can spread entities on structure void.
***** <samp>core/world_border.fsh</samp>
|121278|Keybindings (e.g. {{keys|Control+A}}) are being mapped to the US keyboard layout even if you're using another layout.
***** <samp>core/world_border.vsh</samp>
|121375|The {{key|Command}} key on macOS is displayed as "Win" in the key binds screen.
** Removed the old transparency post chain:
|122477|Opening the chat sometimes appends the character the used key types to the message on Linux.
*** <samp>post_effect/transparency.json</samp>
|122717|Command success messages for some commands include unaffected entities, unlike the command result.
*** <samp>shaders/post/transparency.fsh</samp>
|133407|Keybinds switch when upgrading to 1.13 if not using a QWERTY keyboard.
** <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.
|148541|{{cmd|spreadplayers}} can spread players to seagrass near the surface of the water.
** There's a new debug keybind for toggling this functionality on and off, by default set to F3 + X.
|149058|Using hotkeys to move items into the anvil UI appends the character the used key types to the new item name.
* <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.
|151857|The success message of /give when affecting multiple players uses the wrong string.
 
|159283|The End terrain does not generate in multiple rings centered around the world center.
* <samp>terrain.vsh</samp> and <samp>terrain.fsh</samp> shaders are refactored to support multi-draw.
|161885|Many transparent things do not render behind slimes.
* Some of the members in {{cd|Globals}} and {{cd|DynamicTransforms}} are shuffled to use less memory for those uniform blocks.
|161898|Transparent particles make other particles invisible.
* Removed core shaders
|161926|The block breaking animation is more transparent when mining ice or stained glass.
** {{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.
|162159|Riding boats above bubble columns causes players to teleport up 2 blocks.
 
|168446|Single dark oak and pale oak saplings accept bone meal despite not being able to grow.
* Always-on Post Effect Support
|168653|Mobs, particles, clouds, water and transparent blocks don't render behind the transparent parts of shulker bullets.
** A resource pack can now define a {{cd|minecraft:end_of_frame}} post effect.
|174958|{{cmd|gamerule}} succeeds when the value is not changed.
** It will be applied before other post effects, including the ones enabled by the new {{cd|posteffect}} command.
|175180|The {{cd|Silent}} NBT tag still doesn't make some entities fully silent.
** This post effect is always on as long as the resource pack is loaded, and cannot be controlled by the {{cd|posteffect}} command.
|189953|The {{keys|super}} key on macOS is displayed as "Win" in the key binds screen.
** 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.
|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.
* Shader compilation changes
|206356|The motion of falling block entities is visually slow.
** Shaders are now compiled by ShaderC when using OpenGL as well, identically to when using Vulkan.
|210584|Semi-transparent textures on an item that doesn't have it by default doesn't render water behind it.
** Shader includes are now handled by ShaderC using {{cd|#include}} instead of {{cd|#moj_import}}
|212671|Loot table tag entry with "{{cd|expand}}": {{cd|true}} does not apply functions.
** Shader inputs and outputs must have a location specified in shader source.
|218156|Shipwrecks and ocean ruins can generate with empty buried treasure maps.
*** Vertex input names must still match expected names.
|222818|You can ignite TNT in Adventure mode.
*** Vertex outputs are matched to fragment inputs solely by location, name is now ignored.
|223321|You can destroy turtle eggs by standing or jumping on them in spawn protection.
** 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.
|223323|You can trample farmland in spawn protection.
 
|223559|Transparent blocks, particles, and clouds are not rendered behind semi-transparent marker armor stands.
'''[[Minecraft:Slot sources]]'''
|224528|Two splash texts use curly single quotes (’) instead of apostrophes (').
* Slot sources can now be defined as files inside a datapack, within the {{cd|slot_source}} folder.
|229405|The inside of boats blocks the rendering of most translucent objects with the "Improved Transparency" option enabled.
** Can be used in commands which take slot sources as arguments.
|229831|Enchanting tables' GUI has three pixels in the top-right corner that shouldn't be there.
** Can be used in inline slot sources using the {{cd|minecraft:reference}} type.
|239401|{{cd|items/light.png}} never appears in-game; is pointlessly referenced by other game assets.
* {{cd|minecraft:contents}} is no longer restricted to only selecting non-empty slots.
|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]}}.
* Added {{cd|minecraft:reference}}
|254353|A packet to remove the score is always broadcast when a score is reset.
** Uses the referenced slot source.
|254661|{{cmd|schedule clear}} requires a namespace in its function argument.
** Fields:
|256073|Miscolored pixel in {{cd|tab_inventory.png}}.
*** {{cd|name}} - the namespaced id of the slot source.
|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.
* Changed {{cd|minecraft:slot_range}}
|259583|Brewing with a single bottle of dragon's breath does not return a glass bottle afterward.
** The {{cd|source}} field has a new valid type container, which sources slots from a container or inventory provided through loot context.
|259812|Block and item displays, beds, clouds, signs, shulker boxes, and semi-transparent blocks and entities don't render behind text displays.
** The {{cd|source}} field is now optional.
|263708|Keybinds menu renders Keypad keys the same as regular keys.
*** Defaults to the container source type when absent.
|264003|Boats carrying players sometimes stop abruptly when sliding along ice.
 
|265584|TNT dispensed in bubble columns with soul sand right under visually moves through blocks above.
* Changed {{cd|minecraft:group}}
|265743|Entities, block entities, clouds and semi-transparent blocks are always rendered in front of text displays with see_through enabled.
** 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.
|266429|Holding shift on macOS causes hotbar scroll direction to reverse (mouse only).
** 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.
|267902|The failure message of {{cmd|random}} when the specified range is too large states an incorrect maximum for the range.
*** This format is now available consistently available for all fields of slot source.
|268521|The game window doesn't have a minimal width and height.
** Can only use an inline definition in a top-level file.
|269968|Can't scroll while holding shift on macOS (except in the hotbar) (mouse only).
 
* 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/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}}
 
* 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.
 
=== Misc ===
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>
 
== 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
|;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.
|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.
|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.
|161885|Many transparent things do not render behind slimes.
|161898|Transparent particles make other particles invisible.
|161926|The block breaking animation is more transparent when mining ice or stained glass.
|162159|Riding boats above bubble columns causes players to teleport up 2 blocks.
|168446|Single dark oak and pale oak saplings accept bone meal despite not being able to grow.
|168653|Mobs, particles, clouds, water and transparent blocks don't render behind the transparent parts of shulker bullets.
|174958|{{cmd|gamerule}} succeeds when the value is not changed.
|175180|The {{cd|Silent}} NBT tag still doesn't make some entities fully silent.
|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.
|202197|Entities' name tag background is rendered behind transparent things.
|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.
|211708|Client spawns crit particles when attacking another player that cannot be harmed.
|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.
|222818|You can ignite TNT in Adventure mode.
|223321|You can destroy turtle eggs by standing or jumping on them in spawn protection.
|223323|You can trample farmland in spawn protection.
|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 (').
|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.
|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.
|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.
|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.
|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.
|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.
|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.
|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.
|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.
|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).
|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.
|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".
|275111|Two animals in a boat look sideways instead of at the player when lured.
|273708|Endermen taking environmental damage attempt to teleport when riding an entity.
|275532|The abbreviation "fps" is inconsistently capitalized across strings.
|274924|Angry endermen suffocating while in a boat or minecart can attack their target from really far away.
|276079|Sending a swing packet to the client causes it to send one back to the server.
|275111|Two animals in a boat look sideways instead of at the player when lured.
|276692|Lingering potions which land on the target's head do not grant their effects to the target.
|275532|The abbreviation "fps" is inconsistently capitalized across strings.
|278771|The incorrect command context is used when providing suggestions for redirected commands.
|276079|Sending a swing packet to the client causes it to send one back to the server.
|279185|The "{{cd|selectWorld.load_folder_access}}" string is missing an article before the word "folder".
|276692|Lingering potions which land on the target's head do not grant their effects to the target.
|279395|Trees can generate floating over ruined portals.
|277906|Ender pearls land incorrectly at high speeds.
|279819|The mining speed factor of Mining Fatigue is inconsistent at level 3.
|278771|The incorrect command context is used when providing suggestions for redirected commands.
|293615|Tooltip formatting of "Items x number" is inconsistent across different types of items.
|279185|The "{{cd|selectWorld.load_folder_access}}" string is missing an article before the word "folder".
|293755|The ender dragon's neck and tail disconnect from its body when it turns.
|279395|Trees can generate floating over ruined portals.
|295678|Translucent blocks above water flicker when crossing chunk borders.
|279586|Closed captions continue to fade when their sound plays again from farther away, causing visual delays in the overlay.
|295756|Pistons desync on the client-side, causing players to be moved differently compared to other entities.
|279819|The mining speed factor of Mining Fatigue is inconsistent at level 3.
|296006|Entities do not face the player correctly whilst in a boat.
|280250|Projectiles sometimes desync when thrown/shot while moving.
|297741|Gravity-affected blocks in upwards bubble columns can clip through solid blocks above them (on the client).
|293615|Tooltip formatting of "Items x number" is inconsistent across different types of items.
|298431|Boats are launched by slime blocks inconsistently.
|293755|The ender dragon's neck and tail disconnect from its body when it turns.
|298659|Translucent blocks and some entities render above text displays with see_through enabled.
|295678|Translucent blocks above water flicker when crossing chunk borders.
|298762|Phantoms deflect arrows shot from bows/crossbows.
|295756|Pistons desync on the client-side, causing players to be moved differently compared to other entities.
|299019|Using a Bed while riding a rideable mob causes the player to sleep either on the ground, or on top of the mob.
|296006|Entities do not face the player correctly whilst in a boat.
|299582|Special crafting recipes behave differently than other recipe types with {{cmd|recipe}} and the {{cd|limited_crafting}} game rule.
|296368|The {{cd|entity.happy_ghast.riding}} sound event displays no closed caption.
|301804|Test blocks' GUI does not pause the game in singleplayer.
|296773|Taken screenshots are rendered as a black image on Intel graphics of Gen7 and Gen7.5 architecture.
|302221|Moving entities deflect arrows.
|297741|Gravity-affected blocks in upwards bubble columns can clip through solid blocks above them (on the client).
|302271|Sniffers stop sniffing after relog.
|298431|Boats are launched by slime blocks inconsistently.
|302661|Interacting with something while holding spears plays the spear jab animation.
|298659|Translucent blocks and some entities render above text displays with see_through enabled.
|302687|Throwing items out of your inventory while holding spears plays the spear jab animation.
|298762|Phantoms deflect arrows shot from bows/crossbows.
|302705|Having a spear in the main hand affects the hand animation speed for items held in the off hand.
|299019|Using a Bed while riding a rideable mob causes the player to sleep either on the ground, or on top of the mob.
|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.
|299460|Saddled pigs in boats carried by happy ghasts can cause a desync when unequipping a carrot on a stick.
|303626|Block hitboxes, particles, semi-transparent blocks and non-block items render behind entity hitboxes with the "Improved Transparency" option enabled.
|299582|Special crafting recipes behave differently than other recipe types with {{cmd|recipe}} and the {{cd|limited_crafting}} game rule.
|303789|Looking directly up with an {{cd|apply_impulse}} enchantment entity effect will limit the impulse's effect on the X and Z axes to only apply on one of the two horizontal axes.
|300000|Players desync when teleporting all users riding a happy ghast.
|304195|The arm overlay textures of parched have unused pixels not used by the model.
|301804|Test blocks' GUI does not pause the game in singleplayer.
|304213|Zombies, husks and drowned hold out the incorrect arm when holding spears.
|302221|Moving entities deflect arrows.
|302271|Sniffers stop sniffing after relog.
|302661|Interacting with something 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.
|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.
|303626|Block hitboxes, particles, semi-transparent blocks and non-block items render behind entity hitboxes with the "Improved Transparency" option enabled.
|303789|Looking directly up with an {{cd|apply_impulse}} enchantment entity effect will limit the impulse's effect on the X and Z axes to only apply on one of the two horizontal axes.
|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.
|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,314: Line 3,860:
|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,343: Line 3,893:
|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,355: Line 3,906:
|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.
|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.
|309872|The system freezes when pressing the {{key|Windows}} key with the "Exclusive Fullscreen" option enabled.
|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,389: Line 3,944:
|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.
|310076|Mobs sometimes stop just far enough away from the player to be unable to attack them.
|310182|Some descriptive tooltip strings lack a period, unlike similar strings.
|310184|The {{cd|commands.bossbar.set.max.unchanged}} string abbreviates <code>maximum</code> to <code>max</code>, unlike similar strings.
|310186|The {{cd|options.languageWarning}} string lacks a period, unlike similar strings.
|310187|The {{cd|commands.bossbar.get.visible.visible}} string uses "shown" instead of "visible", unlike similar strings.
|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}}.
|310372|Tripwires depowering breaks cross-chunk block tick processing order.
|310476|Projectiles only collide outright with the world border when underwater.
|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.
|310676|The {{cd|savanna_lamp_post_01}} village structure contains a trailing closing square bracket in the jigsaw block’s NBT.
|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.
|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.
|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.
}}
}}



Latest revision as of 11:08, 7 September 2026

Template:Infobox versionTemplate:Relevant guide

26.3, the release of Minecraft:Wilderness Bound, is an upcoming Minecraft:game drop for Template:JE set to release in September 2026, which adds the Minecraft:dappled forest biome with the new Minecraft:poplars, 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.

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

  • A mushroom variant found on poplar trees and fallen poplar trees.
  • Comes in two sizes.
    • A small shelf mushroom can be grown into a large shelf mushroom with bone meal.
    • A large shelf mushroom drops two shelf mushroom items when broken.
  • Is bouncy when fallen on by entities, similar to a Minecraft:bed.
    • 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 sold by a Minecraft:wandering trader.
  • Can be used in the Minecraft:composter.

File:Straw Bed.png Minecraft:Straw bed

Template:Crafting

Template:AnimateTemplate:Animate Minecraft:Wool stairs and slabs

  • Comes in sixteen colors.
  • 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

  • Evaluates Template:Cd in various contexts.
  • In all contexts Template:Cd is set to current command context position, while Template:Cd entity is set to Template:Cd.
  • Syntax:
  • Command syntax has been modified to take into account number provider split:
    • Template:Cmd
      • Where <int_provider> is either an element of minecraft:context_int_provider registry or an inline value.
    • Template:Cmd
      • Where <float_provider> is either an element of minecraft:context_float_provider registry or an inline value.
  • If evaluation of a number provider fails (for example due to division by zero), command will fail.

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.
    • 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>random(0, 1) * random(0, 3) + 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 Minecraft: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: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.

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.

Misc

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

Fixes

Template:Fixes

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: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:zh:Java版26.3