Minecraft:Java Edition 1.21.5
More actions
Template:Infobox version Template:Relevant guide 1.21.5, the release of Minecraft:Spring to Life, is a Minecraft:game drop released on March 25, 2025.<ref>Template:Mcnet</ref> This drop introduces new Minecraft:chicken, Minecraft:cow, and Minecraft:pig variants, expands plant life, and updates all Minecraft:spawn egg textures. Additionally, several features previously exclusive to Minecraft:Bedrock Edition have been added to Template:JE, enhancing gameplay diversity and visual aesthetics, and also fixes bugs. This is the first version released in 2025.
Additions
Blocks
Template:Animate Minecraft:Leaf litter
- A new type of decorative block which can be found in the Minecraft:forests, Minecraft:dark forests, and Minecraft:wooded badlands.
- Works like Minecraft:pink petals.
- Can be smelted from any type of leaves block.
Template:Animate Minecraft:Wildflowers
- A new type of Minecraft:flower which grow in Minecraft:birch forests, Minecraft:old growth birch forests and Minecraft:meadows.
- Works like Minecraft:pink petals.
File:Bush JE1.png Minecraft:Bush
- Generates in the following biomes:
File:Firefly Bush.png Minecraft:Firefly bush
- Generates in Minecraft:swamps and near Minecraft:rivers.
- When it's light level 13 or lower, glowing firefly particles appear around the firefly bush, up to 5 blocks away.
File:Cactus Flower JE1.png Minecraft:Cactus flower
- A new type of flower which can grow on Minecraft:cacti in Minecraft:deserts and all types of Minecraft:badlands.
File:Short Dry Grass.png Minecraft:Short dry grass
- Generates in the Minecraft:desert and all types of Minecraft:badlands.
File:Tall Dry Grass.png Minecraft:Tall dry grass
- Generates in the Minecraft:desert and all types of Minecraft:badlands.
Template:Animate Minecraft:Test block
- A technical block used in game tests.
- Can be obtained by Template:Cmd, Template:Cmd, or Template:Cmd commands, or through the Minecraft:Operator Items Tab.
- The test block is a block used for implementing block-based tests. It has four modes:
- Template:Cd: Triggers a redstone pulse when the test starts
- Template:Cd: Logs a message to the server log file when powered by redstone (prints twice, due to a bugTemplate:Cn<ref name="youtube-6elLSg0y7X4">Template:Citation</ref>:9m10s)
- Template:Cd: Fails the test when powered by redstone
- Template:Cd: Completes the test when powered by redstone
- Block-based tests are required to have at least one start block and one accept block in the structure.
File:Test Instance Block JE2.png Minecraft:Test instance block
- A technical block used in game tests.
- Can be obtained by Template:Cmd, Template:Cmd, Template:Cmd, or Template:Cmd commands, or through the Minecraft:Operator Items Tab.
- To run a test in a world, a test instance block is used. This type of block represents the test as placed in the world and is used to interact with that test, to save the structure, reset, or run the test.
- Using the Template:Cmd command to run or create a test will also place a test instance block to control that test.
Items
File:Blue Egg.png Minecraft:Blue egg
- A variant of the Minecraft:egg laid by the cold chicken variant.
- Spawns the cold chicken variant when hatched.
File:Brown Egg.png Minecraft:Brown egg
- A variant of the Minecraft:egg laid by the warm chicken variant.
- Spawns the warm chicken variant when hatched.
Mobs
There are now cold<ref group="info" name="cold biomes"> The cold variant of each mob spawns in the following cold biomes:
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
</ref> and warm<ref group="info" name="warm biomes"> The warm variant of each mob spawns in the following warm biomes:
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
</ref> variants of pigs, cows, and chickens.
- The variant of naturally spawned mobs is determined by the biome they spawn in.
- When bred by a Minecraft:player, a baby of these mobs will not be a variant chosen by the current biome, but instead randomly be selected from one of its parent's variants.
- The temperate versions of the mobs spawn by default wherever the cold and warm variants do not.
Template:Animate Minecraft:Pig
- Template:EntityLink: The pre-existing pig variant.
- Template:EntityLink: A variant that spawns in cold biomes.<ref group="info" name="cold biomes"/>
- Template:EntityLink: A variant that spawns in warm biomes.<ref group="info" name="warm biomes"/>
Template:Animate Minecraft:Cow
- Template:EntityLink: The pre-existing cow variant.
- New texture and model.
- Template:EntityLink: A variant that spawns in certain cold biomes.<ref group="info" name="cold biomes"/>
- Template:EntityLink: A variant that spawns in certain warm biomes.<ref group="info" name="warm biomes"/>
Template:Animate Minecraft:Chicken
- Template:EntityLink: The pre-existing chicken variant.
- Template:EntityLink: A variant that spawns in certain cold biomes.<ref group="info" name="cold biomes"/>
- Template:EntityLink: A variant that spawns in certain warm biomes.<ref group="info" name="warm biomes"/>
- Added six new sound variants.
- The sound variants are Classic, Big, Cute, Puglin, Angry, Grumpy, and Sad. The existing wolf sounds are used for the Classic variant.
- Wolves receive a random sound variant when they spawn.
- Sound variants are not related to texture variants
World generation
- A new decorative variant of trees.
- Has four different wood variants:
- Is sometimes randomly decorated with Minecraft:mushroom or Minecraft:vines.
- Each fallen tree can be found in all biomes where its standing tree variant grows, except for these biomes
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Template:BiomeLink
- Has fallen birch trees but not fallen oak trees.
Gameplay
- Minecraft:Dead bush blocks have a chance of playing ambient sounds when placed on top of two blocks that are any color of terracotta, sand or red sand blocks in any biome.
- Minecraft:Sand, Minecraft:red sand and Minecraft:terracotta of any color have a chance of playing ambient sounds when surrounded by any one of them on at least 3 sides 8 blocks away.
- Template:Cd can be played in any biome.
- Template:Cd only plays when in Minecraft:desert or Minecraft:badlands biomes.
General
- Added support for Kyrgyz language.
Changes
Blocks
General
- Any block in the simulation distance of a player or loaded by another source of chunk loading (such as Minecraft:ender pearls) may now receive random ticks, instead of just 8 chunks around players.
- For example: if a chunk is loaded by an ender pearl or is in the spawn chunks, crops are able to grow, Minecraft:ice can melt, Minecraft:snow can fall, and a Minecraft:cauldron can be filled by rain.
- Mob spawning, lava spreading fire, and lightning strikes are not affected by this change. They will only occur in the previous radius of 8 chunks around players.
- Will no longer burn or spread if no player is within 8 chunks.
- The following blocks can now spawn falling leaf particles:
- Now generates slightly more sparsely in Minecraft:meadows.
- Added a new texture for when a creaking heart is in the dormant state.
- Before, it looked the same as an uprooted creaking heart.
- The transition between the awake and dormant states of creaking hearts is now based on the fixed day time.
- The transition between the states of eyeblossoms is now based on the fixed day time.
Minecraft:Pale oak leaves and Minecraft:pale oak sapling
- Now have an updated map color.
- Can now be placed on Minecraft:farmland.
- Beacons and their beams now render beyond 16 chunks up to the client render distance.
- To keep it easily visible at large distances, the beam is rendered thicker the further away it is from the player.
- The beam now renders up to 2048 blocks high, up from 1024.
- Bubble columns produce less particles and sounds when entities that are unaffected by them are inside them.
- Changed crafting recipe to require an Minecraft:iron ingot instead of a Minecraft:netherite ingot, making them renewable.
- Can now be found in Minecraft:ruined portal chests.
Minecraft:Iron bars, Minecraft:iron block, Minecraft:iron trapdoor, Minecraft:iron door, and Minecraft:heavy weighted pressure plate
- Added new break, place, step, fall and hit sounds.
- Landing on powder snow with Minecraft:leather boots equipped after falling further than 2.5 blocks (more precisely ~2.69456... blocks) will now make entities fall through the snow.
- Jumping or falling less than 2.5 blocks allows the entity to land on top of the snow like before.
Items
- Can now be found in some of the chests in Minecraft:villages.
Minecraft:Cake and Minecraft:pumpkin pie
- Can now be crafted using Minecraft:blue eggs or Minecraft:brown eggs.
- Flight is now cancelled when gliding into climbable blocks like Minecraft:ladders, Minecraft:scaffolding, Minecraft:vines, etc.
- Saddles equipped onto Minecraft:pigs or Minecraft:striders will now maintain properties such as custom name when dropped.
- Saddles equipped onto Minecraft:camels and equines (Minecraft:horses, Minecraft:donkeys, Minecraft:mules) now remain visible if the mob equipped with them is inflicted with Minecraft:Invisibility.
- Saddles equipped onto camels and equines no longer turn red when the mob wearing it takes damage.
- When enchanted now show the Minecraft:enchantment glint on mobs wearing it.
- Minecraft:Thorns and Minecraft:Curse of Binding enchantments now work on mobs that are wearing it.
Template:Animate Minecraft:Spawn eggs
- Changed the visuals of all spawn eggs to make them easier to distinguish: each type of spawn egg now has its own unique icon instead of all just being colored variants of the same spotted egg.
- Each egg visual varies in shape to reflect the in-world properties of the mob it spawns: for example, smaller mobs tend to have a smaller spawn egg icon.
- Added textures for Minecraft:Programmer Art resource pack.
Mobs
General
- Farm animals can now spawn in Minecraft:badlands.
- Is now attracted to, and can be bred using Minecraft:wildflowers and Minecraft:cactus flowers.
- Now spawns in Minecraft:deserts.
Minecraft:Cow and Minecraft:mooshroom
- Textures have been changed.
- Nose now extrudes from model.
- Position of legs and horns changed now matches Minecraft:Bedrock Edition.
- Can now be named using Minecraft:name tags.
- Named creakings will persist through the day.
- However, it will still be torn down if stuck with a player or if it is too far from its heart.
- Named creakings are still resistant to all damage, and can communicate with their hearts via particles.
- Named creakings will persist through the day.
- Changed the rules for sheep coloring to be based on which biome they spawn in:
- Temperate biomes:
- Common:
- Uncommon:
- Rare:
- Cold biomes:
- Common:
- Uncommon:
- Rare:
- Warm biomes:
- Common:
- Uncommon:
- Rare:
- Temperate biomes:
- Minecraft:Sheep colors for temperate biomes is unchanged from current behavior.
- Sheep's wool undercoat is now also colored when dyed, matching existing behavior in Template:El.
- Sheep can now eat Minecraft:ferns, matching Template:El.
- The changes to cartographer trades have been moved from experimental features and are now available during normal gameplay.
- Added seven new maps which cartographers can sell, each pointing to a different village or other structures in a different biome, depending on the biome they come from. These maps can help players who want to quickly find a specific location.
- Village maps points to a village in a specific biome. Jungle explorer map points to a jungle pyramid. Swamp explorer map points to a swamp hut.
- Cartographers from different village types will sell a different range of maps and colored banners.
- Some prices and quantities have also been adjusted.
- Added seven new maps which cartographers can sell, each pointing to a different village or other structures in a different biome, depending on the biome they come from. These maps can help players who want to quickly find a specific location.
Template:AnchorTemplate:AnchorTemplate:AnchorTemplate:Anchor
| Desert | Jungle | Plains | Savanna | Snow | Swamp | Taiga | |
|---|---|---|---|---|---|---|---|
| Group 1 | Savanna Village Map | Savanna Village Map | Savanna Village Map | Desert Village Map | Plains Village Map | Snowy Village Map | Plains Village Map |
| Group 2 | Plains Village Map | Desert Village Map | Taiga Village Map | Plains Village Map | Taiga Village Map | Taiga Village Map | Snowy Village Map |
| Group 3 | Jungle Explorer Map | Swamp Explorer Map | – | Jungle Explorer Map | Swamp Explorer Map | Jungle Explorer Map | Swamp Explorer Map |
- The changes to wandering trader trades have been moved from experimental features and are now available during normal gameplay.
- The Wandering Trader now has better prices, more trades and a larger amount of stock for many items.
- They will also now buy basic supplies from players.
- The Wandering Trader will offer to buy two items from this list:
- Wandering Traders now have a chance of selling these items (in addition to their previous trades):
- Minecraft:Logs (Acacia, Birch, Dark Oak, Jungle, Oak, Spruce, Pale Oak or Cherry)
- Enchanted Template:ItemLink
- Template:ItemLink
- Trade list now made up by following trades, in order:
- Buying Trade (new) × 2
- Special Selling Trade × 2
- Ordinary Selling Trade × 5
- Added new buying trades, some selling trades, and changed some existing selling trades:
| Category | Item wanted | Quantity | Item given | Quantity | Trades until disabled |
|---|---|---|---|---|---|
| Special Selling | Template:ItemLink | 1 | Template:ItemLink | 1 → 4 | 8 → 2 |
| Special Selling | Template:ItemLink | 3 → 1 | Template:BlockLink | 1 | 6 |
| Special Selling → Ordinary Selling | Template:ItemLink | 5 → 3 | Template:ItemLink | 1 | 4 |
| Special Selling → Ordinary Selling | Template:ItemLink | 5 → 3 | Template:ItemLink | 1 | 4 |
| Ordinary Selling | Template:ItemLink | 1 | Template:BlockLink | 2 → 5 | 5 → 2 |
| Ordinary Selling | Template:ItemLink | 1 | Template:BlockLink | 1 → 3 | 12 → 4 |
| Ordinary Selling | Template:ItemLink | 1 | Template:BlockLink | 1 → 3 | 12 → 4 |
| Ordinary Selling | Template:ItemLink | 1 | Template:BlockLink | 1 → 3 | 12 → 4 |
- Must now be killed by a Minecraft:player to drop its Player-specific loot.
World generation
- Pale Garden biome now occupies more space that was previously taken by Minecraft:dark forests.
- Minecraft:Woodland Mansions can now generate in Pale Garden biome.
- Pigs and cows spawned in desert villages are now of the warm variant.
Gameplay
- The "Country Lode, Take Me Home" advancement has been moved from the Nether category to the Adventure category.
Minecraft:Creative mode
- The tab icon for the Spawn Eggs inventory tab has changed from the Minecraft:pig spawn egg to the Minecraft:creeper spawn egg.
Minecraft:End portal and Minecraft:exit portal
- When changing state, any blocks that are in its radius will be dropped as items and also make breaking sounds, rather than outright overwritten.<ref>Template:Citation</ref>
- The volume of the narrator is now affected by the game's configured volume in the 'Voice' category.
- Ambient block sounds in Minecraft:deserts, Minecraft:badlands and Minecraft:pale gardens which are only used for ambience have been moved from
BlockstoAmbient/Environmentcategory. - The breaking sound for
grasssound type has been lowered, affecting all blocks using this sound. - Blocks that are broken by a Minecraft:piston now play their breaking sound.
General
General
- If the game detects that the last startup did not complete normally, the fullscreen option will now be reset.
- Chunks loaded by a portal will now be re-loaded again automatically when the world is reopened.
- Uploading a world to Realms will now enable command blocks by default.
- It's now possible to upload hardcore singleplayer worlds to Realms.
- The Minecraft:panorama was changed to showcase the Minecraft:Spring to Life drop.
- Minecraft:Crossbows will now show all charged projectiles in their tooltip instead of just the first.
- Tooltips for Minecraft:fireworks and Minecraft:crossbows now show a compact form of multiple repeated stars or projectiles that are identical.
Technical
Additions
Command format
- A new command used to create and run tests.
- Syntax:
- Parameters:
- Template:Cd:
- The radius to clear tests within.
- Template:Cd:
- The namespaced ID of a test.
- Template:Cd:
- A wildcard-enabled selector for test IDs
- Supports * and ? for matching namespaced IDs
- If namespace is not supplied, defaults to minecraft
- Examples:
- Template:Cd
- Matches all IDs
- Template:Cd
- Matches everything in the minecraft namespace
- Template:Cd
- Matches IDs in the folder folder of the custom namespace, with a prefix followed by
_test_followed by a single valid character
- Matches IDs in the folder folder of the custom namespace, with a prefix followed by
- Template:Cd
- Template:Cd:
- The width of the test structure.
- If omitted, Template:Cd is used.
- The width of the test structure.
- Template:Cd:
- The height of the test structure .
- If omitted, the Template:Cd is used.
- The height of the test structure .
- Template:Cd:
- The depth of the test structure.
- If omitted, the Template:Cd is used.
- The depth of the test structure.
- Template:Cd:
- The variable name to include in the copied code snippet.
- Template:Cd:
- The number of times to repeat each test.
- If omitted, Template:Cd is used.
- The number of times to repeat each test.
- Template:Cd:
- Boolean (default false) noting that the test should be stopped as soon as one iteration fails.
- Template:Cd:
- Number of extra 90 degree steps to apply to the test.
- If omitted, Template:Cd is used.
- Number of extra 90 degree steps to apply to the test.
- Template:Cd:
- Number of tests to place per row in a grid layout.
- If omitted, Template:Cd is used.
- Number of tests to place per row in a grid layout.
- Template:Cd:
- Template:Cmd
- These subcommands clear the structures and blocks associated with the selected tests.
- Template:Cmd
- This subcommand creates a test setup in the current location for the given test, preparing for a structure of the given size.
- This gives a starting point for creating the structure for the test.
- Template:Cmd
- Attempts to locate the given test.
- Note that only loaded chunks are searched.
- Attempts to locate the given test.
- Template:Cmd
- These subcommands reset the structures for the selected tests, removing any surrounding barriers and placing the structure in from scratch.
- Template:Cmd
- Shows the local coordinates to the block pointed at in the test.
- If the optional variable name is specified, this variable name is used in a code fragment obtained by clicking on the coordinates in the output message.
- Template:Cmd
- Runs one or more tests.
- If multiple tests are run at once, they are placed in a grid and run in parallel, although only up to a certain limit. Beyond that limit, tests are run in rounds where each round completes before any tests from the next round are started.
- For each test, loads the given structure and runs the associated test. Each test location will have a beacon beam showcasing the test status.
- Gray beacon = in progress
- Red = fail (required test)
- Orange = fail (optional test)
- Green = success
- If a test fails, the error is shown on a lectern book and an overlay.
- Runs one or more tests.
- Template:Cmd
- Stops all running tests.
- Note that gameplay events triggered by tests may still remain.
- Stops all running tests.
- Template:Cmd
- Verifies one or more tests by running multiple instances of the same test.
General
- Use Minecraft:test blocks in the test structure to run the test and indicate success or failure.
Template:Cd component
- When present, this item can be used like a Shield to block attacks to the holding player.
- Format: object with fields
- Template:Cd
- Non-negative float (default: Template:Cd).
- The number of seconds that right-click must be held before successfully blocking attacks.
- Template:Cd – hashtagged damage type tag (optional)
- If specified, blocking is bypassed by these damage types.
- Template:Cd
- List of object with fields (optional)
- Controls how much damage should be blocked in a given attack.
- If not specified, all damage is blocked.
- Each entry in the list contributes an amount of damage to be blocked, optionally filtered by damage type.
- Each entry adds to blocked damage, determined by
clamp(base + factor * dealt_damage, 0, dealt_damage). - The final damage applied in the attack to the entity is determined by
dealt_damage - clamp(blocked_damage, 0, dealt_damage) - Entry format:
- Template:Cd – damage type id, list of damage type ids, or hash-prefixed damage type tag (optional).
- This entry will only contribute to the blocked damage if the dealt damage type matches this field.
- If not specified, any damage type will be accepted.
- Template:Cd – float
- Constant amount of damage to be blocked.
- Template:Cd – float
- Fraction of the dealt damage that should be blocked.
- Template:Cd – angle in degrees as a positive float
- Default: Template:Cd
- The maximum angle between the user's facing and the incoming attack for the block to be effective.
- If the blocked damage has no position, the compared angle will be assumed to be the maximum 180.
- Template:Cd – damage type id, list of damage type ids, or hash-prefixed damage type tag (optional).
- Template:Cd
- Non-negative float (default: Template:Cd).
- Multiplier applied to the number of seconds that the item will be on cooldown for when attacked by a disabling attack (Template:Cd on the Template:Cd component).
- If Template:Cd, this item can never be disabled by attacks.
- Template:Cd
- Object with fields (optional)
- Controls how much damage should be applied to the item from a given attack.
- If not specified, a point of durability is removed for every point of damage dealt.
- The final damage applied to the item is determined by: <math>floor(base + factor * dealt_damage)</math>.
- The final value may be negative, causing the item to be repaired.
- Format:
- Template:Cd – non-negative float
- The minimum amount of damage dealt by the attack before item damage is applied to the item.
- Template:Cd – float
- Constant amount of damage applied to the item, if threshold is passed.
- Template:Cd – float
- Fraction of the dealt damage that should be applied to the item, if threshold is passed.
- Template:Cd – non-negative float
- Template:Cd
- Sound event (optional).
- If specified, this sound will be played when an attack is successfully blocked.
- Template:Cd
- Sound event (optional).
- If specified, this sound will be played when the item goes on its disabled cooldown due to an attack.
- Template:Cd
Template:Cd component
- When present, this sound will be played when the item runs out of durability and breaks.
- If not present, no sound will be played on break.
- This component is present by default on every item type.
- Format: sound event
- e.g.
break_sound='item.wolf_armor.break'
- e.g.
Template:Cd component
- When present, for items that have the Template:Cd component, the duration of the applied effects will be scaled by this factor.
- This also applies to Template:Cd in the Template:Cd component, unlike the previous hard-coded scaling factor.
- If not specified, defaults to Template:Cd.
- Format: non-negative float
- e.g. Template:Cd
Template:Cd component
- When present, this item can be placed in the pattern slot of a Loom.
- Format: hash-prefixed banner pattern tag.
- e.g.
provides_banner_patterns='#minecraft:pattern_item/globe'
- e.g.
Template:Cd component
- When present, this item will provide the specified trim material when used in a trimming recipe.
- Note that to be used in the built-in smithing recipes, the item must also be in the Template:Cd tag.
- As such, the trim material registry definition no longer specifies an item.
- Format: trim material id
- e.g.
provides_trim_material='minecraft:iron'
- e.g.
Template:Cd component
- This component allows the tooltips provided specifically by any given item component to be suppressed.
- This replaces the previous Template:Cd fields, Template:Cd and Template:Cd components.
- Format: object with fields:
- Template:Cd - boolean (default: Template:Cd).
- If true, the item will have no tooltip when hovered.
- Template:Cd - list of item component ids (default: Template:Cd).
- The tooltips provided by any component in this list will be hidden.
- If that component provides no tooltip, it will have no effect.
- Template:Cd - boolean (default: Template:Cd).
Template:Cd component
- When present, the 'Item Used' statistic will be incremented for each attack with the item.
- The specified amount of damage can be done to the item with each attack.
- Format: object with fields:
- Template:Cd – non-negative integer (default: Template:Cd)
- The amount to damage the weapon for each attack performed.
- Template:Cd
- Non-negative float (default: Template:Cd)
- If non-zero, will disable a blocking Shield on successful attack for the specified amount of seconds.
- Template:Cd – non-negative integer (default: Template:Cd)
- e.g. Template:Cd}
Entity components
wolf/sound_variant- Namespaced ID from
wolf_sound_variantregistry.
- Namespaced ID from
- Rely on built-in functions to run a test and indicate success or failure.
- They have one additional field:
- Template:Cd:
- The namespaced ID of the Test Function to run.
- Template:Cd:
- They have one additional field:
- Added the Template:Cd game rule.
- Default value: Template:Cd.
- When Template:Cd, Fire and Lava ticks can occur outside of an 8 chunk range of a player.
- Added the Template:Cd game rule.
- When Template:Cd, Minecraft:TNT will not explode and cannot be primed by any means.
- Trying to do so directly, like with a Minecraft:flint and steel, will show a message on the action bar.
- Powering a TNT block with redstone makes it simply vanish, as does blowing it up with a Minecraft:creeper.
- A TNT block on Minecraft:fire can burn up as if it was a Minecraft:plank.
- Default value: Template:Cd
- When Template:Cd, Minecraft:TNT will not explode and cannot be primed by any means.
- The Game Tests system is a new integrated system for testing aspects of the game.
- Each test is an asset defining some parameters for how the test gets executed, combined with a saved structure file containing a base setup.
- Generally, the test framework expects to run tests in a separate superflat world.
Minecraft:Items model definition
- Select Property
- Template:Cd
- New data source has been added to select item model: Template:Cd.
- Returns value of component on item, if any.
- Fields:
- Template:Cd – namespaced ID of component type.
- Possible values: depends on component type.
- Template:Cd
- Biome Tags
- Added Template:Cd – all biomes where cold variant of farm animals spawn.
- Added Template:Cd – all biomes where warm variants of farm animals spawn.
- Block Tags
- Added Template:Cd – contains blocks that Minecraft:camels can spawn on.
- Added Template:Cd – contains blocks that can be eaten by Minecraft:sheep to regrow their Minecraft:wool.
- Added Template:Cd – contains blocks that will play ambient desert block sounds.
- Added Template:Cd – exhaustive list of all blocks that can be replaced as a mushroom is placed or grows.
- Added Template:Cd – blocks that are instantly mined by Swords.
- Entity Tags
- Added Template:Cd – contains entities that can be equipped with a saddle. This does not mean that the Saddle will function, just that it can be equipped into the saddle slot.
- Added Template:Cd – contains entity that can hold horse armor in their body slot.
- Item Tags
- Added Template:Cd – item that can be crafted together with a Written Book to clone it.
- Added Template:Cd – contains all variants of the Minecraft:egg item.
- Added Template:Cd – corresponds to the Template:Cd block tag.
- Structure tags
- Added Template:Cd – contains structures that can appear on savanna village maps.
- Added Template:Cd – contains structures that can appear on desert village maps.
- Added Template:Cd – contains structures that can appear on plains village maps.
- Added Template:Cd – contains structures that can appear on taiga village maps.
- Added Template:Cd – contains structures that can appear on snowy village maps.
- Added Template:Cd – contains structures that can appear on swamp explorer maps.
- Added Template:Cd – contains structures that can appear on jungle explorer maps.
- Test Environments are a way to group up tests and give them the right preconditions to run.
- A test environment is an asset in the Template:Cd registry.
- Each test environment definition has a Template:Cd field that determines its setup:
- Template:Cd definitions
- Apply the setup from several sub-definitions in the Template:Cd field.
- Template:Cd definitions
- Use mcfunction files as setup and teardown.
- Template:Cd:
- Optional namespaced ID of the mcfunction to use for setup, if any.
- Template:Cd:
- Optional namespaced ID of the mcfunction to use for teardown, if any.
- Template:Cd: definitions
- Set any number of game rules.
- Template:Cd:
- A list of boolean game rules to set and the value to set.
- Template:Cd:
- A list of integer game rules to set and the value to set.
- Each rule is an object with two fields:
- Template:Cd:
- The exact name of the rule to set.
- Template:Cd:
- The value to set
- Template:Cd:
- Game rules are reset to their default values after the test environment has completed.
- Template:Cd definitions
- Sets the weather state
- Template:Cd:
- The weather to set.
- One of Template:Cd, Template:Cd and Template:Cd.
- Template:Cd definitions
- Set a given time of day.
- Template:Cd:
- The time of day to set in number of ticks, as a non-negative integer.
- Template:Cd definitions
- The game provides a single, empty test environment by default: Template:Cd.
- Test instances are defined in the registry Template:Cd.
- They're small assets defining a test to run.
- Fields:
- Template:Cd:
- Namespaced ID of the test environment to run this test as part of.
- Template:Cd:
- Namespaced ID of the structure to use for the test.
- Template:Cd:
- A positive integer representing the maximum number of ticks allowed to pass before the test is considered timed out.
- Template:Cd:
- Optional non-negative integer.
- Default: Template:Cd
- Represents a number of ticks to wait after placing the structure before starting the test.
- Template:Cd:
- Optional boolean.
- Default Template:Cd
- Whether the test is considered required to pass for the full test suite to pass.
- Template:Cd:
- Optional rotation to apply to the test structure.
- One of Template:Cd (default), Template:Cd, Template:Cd and Template:Cd.
- Template:Cd:
- Optional boolean.
- Default Template:Cd
- Set to Template:Cd for tests that are not included as part of automated test runs.
- Template:Cd:
- Whether the test needs clear access to the sky.
- Default: Template:Cd
- Tests are enclosed in barrier blocks.
- If set to Template:Cd, the top is left open.
- Template:Cd:
- Number of attempts to run the test.
- Default: Template:Cd
- Template:Cd:
- Number of attempts that must succeed for the test to be considered successful .
- Default: Template:Cd
- Template:Cd:
- The type of test.
- One of Template:Cd and Template:Cd.
- Template:Cd:
Changes
Command format
General
- Arguments in commands that accept inline values like loot tables, predicates, modifiers, data components, formatted text (Template:Cmd, Template:Cmd, Template:Cmd, Template:Cmd, data components in Template:Cmd, etc.) have been reverted to accept numbers in place of booleans.
- Text components in commands such as Template:Cmd or Template:Cmd are now specified with SNBT instead of JSON.
- Text style in the Template:Cmd command when specifying the styled number format is now specified with SNBT instead of JSON.
- The behavior of Template:Cmd and Template:Cmd commands have changed in how they handle block entity data:
- If the block entity data is not specified, and the existing block has data, the block entity data will be preserved.
- If the block entity data is specified, the block entity data will be set to the specified value.
- To clear the block entity data explicitly, the block entity data must be specified as
{}. - The operation is now successful if either the block state changed or the block entity data changed.
Template:Cmd, Template:Cmd, and Template:Cmd
- Text component arguments are now resolved before use in context of entity held in Template:Cd.
- Can now create and modify heterogeneous lists transparently.
- Can no longer traverse paths with an empty key (e.g. Template:Cmd)
- The replace option in the fill command is no longer terminal, and can be followed with additional options.
Template:Cmd, Template:Cmd, Template:Cmd, and Template:Cmd
- Accepts a new option:
strict.- If specified, the command will place blocks as-is without triggering block updates and shape updates.
- New syntax for commands to use the new strict option, and more flexible use of replace:
Item slots
- The Template:Cd item slot has been renamed to Template:Cd, and now supports any entity that can equip a Saddle.
- Driven by the Template:Cd component.
- Only mobs that normally support saddles will support riding and rendering of the saddle.
- Items in the Template:Cd slot can apply attribute modifiers as with other equipment.
- Any interface with NBT data within the game (SNBT representation, Template:Cmd) now supports heterogeneous lists, i.e. ones where elements are not of the same type
- Inserting or replacing into a list of a different type with Template:Cmd will no longer give an error.
- Inserting into an array type (e.g.
[I;1,2,3]) is still type-restricted. - This means that the 'wrapper' objects previously used to represent heterogeneous lists will no longer be observable by in-game means.
- The NBT file format is unchanged.
- Heterogeneous lists are transformed before storage to bypass NBT constraints.
- Example transform:
['a', {'b':3}]is stored as[{'':'a'},{'b':3}].
- Example transform:
- Existing external tools will still be able to read NBT files as before, but heterogeneous lists will be displayed in the transformed form.
- Heterogeneous lists are transformed before storage to bypass NBT constraints.
- No data produced by the game has changed: objects such as Text Components were already producing heterogeneous lists in this form.
- Note: these wrapper objects may never be observed in-game, they are only relevant to developers working with the NBT file or network format directly.
Minecraft:SNBT format
- SNBT (textual representation of NBT-like data) has been expanded to accept heterogeneous lists, i.e. ones where elements are not of the same type.
- NBT format is not changed
- If SNBT command argument transforms value to NBT (like arguments of Template:Cmd or Template:Cmd), lists might be transformed to bypass NBT constraints
- Example transform:
['a', {'b':3}]is stored as[{'':'a'},{'b':3}]
- Example transform:
- This transform is not reversed by Template:Cmd
- If SNBT command argument transforms value to NBT (like arguments of Template:Cmd or Template:Cmd), lists might be transformed to bypass NBT constraints
- The text format for describing object-like data in commands (like NBT, text components, predicates, etc.) has been extended.
- SNBT now also supports following operations:
- Template:Cd - converts argument to boolean.
- If argument is a boolean value, returns value directly.
- If argument is a number value, returns true if it is non-zero.
- Template:Cd - converts string representation of UUID to integer array.
- Template:Cd - converts argument to boolean.
- Implicit infinite float values (like Template:Cd) are now rejected.
- Number Format
- Either whole or fraction parts of a float number can be omitted
- Examples: Template:Cd and Template:Cd are valid now
- Float numbers now use E notation
- Example: both Template:Cd and Template:Cd, Template:Cd, Template:Cd are now a valid way to represent Template:Cd
- Integer numbers can now be prefixed with Template:Cd to represent hexadecimal numbers and Template:Cd to represent binary numbers
- Example: Template:Cd (equal to Template:Cd), Template:Cd (equal to Template:Cd), Template:Cd (equal to Template:Cd)
- Integer numbers now can't start with Template:Cd
- Normally (e.g. in Java) it would mean number is in base-8, but this usage is not implemented, to avoid accidental misuse
- Numbers can now contain Template:Cd character between sequences of digits (but not at the start or the end of sequence)
- Example: Template:Cd, Template:Cd, Template:Cd, Template:Cd
- Template:Cd, Template:Cd or hexadecimal float representation are NOT supported
- Type suffixes have been extended:
- Integer type suffixes (Template:Cd or Template:Cd - byte, Template:Cd or Template:Cd - short, Template:Cd or Template:Cd - integer, Template:Cd or Template:Cd) can now be prefixed with Template:Cd (signed) or Template:Cd unsigned
- New suffixes only affect valid range when parsing - values are still stored as signed
- Example: Template:Cd is equal to Template:Cd, while Template:Cd does not parse
- When a suffix is used without Template:Cd or Template:Cd, it defaults to signed for decimal numbers and unsigned for binary and hexadecimal numbers
- Note: since Template:Cd is also a valid hexadecimal digit, byte sized hexadecimal values can only be written with a signed suffix, like Template:Cd or Template:Cd
- Either whole or fraction parts of a float number can be omitted
- Strings
- Quoted strings can now use escape sequences beyond ', " and \:
- Unicode escapes:
- Template:Cd – two digit escape, like Template:Cd
- Template:Cd – four digit escape, like Template:Cd
- Template:Cd – eight digit escape, like Template:Cd
- Template:Cd – named Unicode character, like Template:Cd
- Built-in escape sequences:
- Template:Cd – backspace, Unicode Template:Cd
- Template:Cd – space, Unicode Template:Cd
- Template:Cd – horizontal tab, Unicode Template:Cd
- Template:Cd – linefeed, Unicode Template:Cd
- Template:Cd – form feed, Unicode Template:Cd
- Template:Cd – carriage return, Unicode Template:Cd
- Unicode escapes:
- Unquoted strings now can’t start with Template:Cd, Template:Cd, Template:Cd, Template:Cd to avoid accidental collision with numbers
- Quoted strings can now use escape sequences beyond ', " and \:
- Number Arrays
- Values in arrays (Template:Cd, Template:Cd, Template:Cd) without a suffix are now assumed to have suffix matching the type of the array
- Example: Template:Cd is equivalent to Template:Cd
- Arrays can now also accept types smaller than the array type
- Example: Template:Cd is valid and equivalent to Template:Cd
- Values in arrays (Template:Cd, Template:Cd, Template:Cd) without a suffix are now assumed to have suffix matching the type of the array
- Lists
- Lists now accept trailing commas
- Example: Template:Cd is valid and equivalent to Template:Cd
- Only one trailing comma is allowed, and it must come after a valid element - both Template:Cd and Template:Cd are invalid
- Lists now accept trailing commas
- Compounds
- Compounds (maps) now accept trailing commas
- Example: Template:Cd
- Only one trailing comma is allowed, and it must come after a valid key-value pair - both Template:Cd and Template:Cd are invalid
- Compounds (maps) now accept trailing commas
General
Minecraft:Advancement definition
- The field Template:Cd no longer contains Template:Cd prefix and Template:Cd suffix.
- Template:Cd sprite source
- New field:
- Template:Cd
- Optional string (default: Template:Cd).
- Value to be used when joining texture and permutation names to produce sprite name.
- Template:Cd
- New field:
Biome effects
- Template:Cd field
- Defines the color used for tinting blocks using dry foliage tinting.
- The Template:Cd field will no longer be preserved when removed.
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd
- The Template:Cd and Template:Cd fields will no longer be preserved when removed.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd, Template:Cd, Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd
- The Template:Cd field now default to Template:Cd if not specified.
- Template:Cd
- The Template:Cd, Template:Cd, and Template:Cd fields now default to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd
- The Template:Cd and Template:Cd fields now default to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd component
- Removed the Template:Cd field, replaced by Template:Cd component.
- This component now always uses its simplified form, with the modifiers field inlined to top-level.
- e.g.
attribute_modifiers={modifiers:[...]}]->attributes_modifiers=[...]
- e.g.
- Template:Cd and Template:Cd components
- Removed the Template:Cd field, replaced by Template:Cd component.
- The predicates field has been inlined to top-level, and supports either a single element or list.
- e.g.
can_place_on={predicates:[{blocks:'stone'},{blocks:'dirt'}]}]->can_place_on=[{blocks:'stone'},{blocks:'dirt'}]] - or:
can_place_on={predicates:[{blocks:'stone'}]}]->can_place_on={blocks:'stone'}]
- e.g.
- Template:Cd component
- Removed the Template:Cd field, replaced by Template:Cd component.
- This component now always uses its simplified form, with the RGB field inlined to top-level.
- e.g.
dyed_color={rgb:12345}]->dyed_color=12345]
- e.g.
- The specified color now supports the RGB array format.
- e.g.
dyed_color=[0.5, 1.0, 0.2]
- e.g.
- Template:Cd and Template:Cd components
- Removed the Template:Cd field, replaced by Template:Cd component.
- These components now always use their simplified form, with the levels field inlined to top-level.
- e.g.
enchantments={levels:{sharpness:2}}]->enchantments={sharpness:2}]
- e.g.
- Template:Cd component
- Can now apply to saddle slot.
- Any mob can now have equipment added in the Template:Cd slot as long as the component allows it (Template:Cd).
- Added new optional field: Template:Cd (boolean).
- If Template:Cd, players can equip this item onto a target mob by right-clicking it (as long as this item can be equipped on the target at all).
- The item will not be equipped if the target already has an item in the relevant slot.
- If not specified, defaults to Template:Cd.
- Template:Cd component
- Has been removed and replaced by use of the Template:Cd component and Template:Cd field.
- The following components previously covered by the Template:Cd component may need to be hidden:
- Template:Cd
- Template:Cd
- Template:Cd
- Specifically, Mob Spawner and Trial Spawner block entity data will display the configured mob.
- Template:Cd
- Specifically, the Template:Cd property will be displayed in the tooltip for any item with this specified.
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- Template:Cd
- This additionally means that tooltips from the above listed components are no longer restricted to specific item types.
- Note: for existing items in a world with the Template:Cd component, any of the above listed components also present on the same item will be added to the list to hide in Template:Cd.
- The following components previously covered by the Template:Cd component may need to be hidden:
- Has been removed and replaced by use of the Template:Cd component and Template:Cd field.
- Template:Cd component
- Has been removed and replaced by use of the Template:Cd component and Template:Cd field.
- Template:Cd component
- Removed the Template:Cd field, replaced by Template:Cd component.
- Template:Cd component
- Added new optional field: Template:Cd (boolean)
- If false, players cannot break blocks while holding this tool in Creative Mode.
- If not specified, defaults to Template:Cd.
- Added new optional field: Template:Cd (boolean)
- Template:Cd component
- Removed the Template:Cd field, replaced by Template:Cd component.
- Template:Cd component
- Removed the Template:Cd field, replaced by Template:Cd component.
- Some existing components are now also transferred from spawning item to spawned entity:
- Template:Cd - any entity.
- Template:Cd - Lingering Potion to Area Effect Cloud.
- Template:Cd - Lingering Potion to Area Effect Cloud.
- The Minecraft:pack format version is now Template:Cd.
- Trim pattern and trim material items are no longer specified in the trim registries, but instead in the recipes and items respectively.
- The Template:Cd entity type has been split into Template:Cd and Template:Cd
- Filled Maps without any Template:Cd component no longer show an 'Unknown Map' tooltip (invalid IDs will still produce this tooltip)
- New command line argument Template:Cd is available for the client.
- Adds debug labels to relevant OpenGL objects, making debugging rendering easier for developers.
- Custom data (previously present only on Minecraft:markers) is now available on all entities.
- It is exposed as a Template:Cd component, so it can be set by spawning items and matched by predicates.
- The component is currently stored in a field called Template:Cd.
- It is stored only if it's non-empty.
- The Template:Cd, Template:Cd, and Template:Cd fields have been merged into a Template:Cd field
- Format: map between equipment slot type and chance value
- Valid equipment slots: Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd.
- If not specified or removed, chances will be assumed as default (Template:Cd).
- e.g. Template:Cd.
- Format: map between equipment slot type and chance value
- Drop chances with a default value will no longer be stored, and the Template:Cd field is removed entirely if all defaults.
- Living entities have new fields for storing last-hurt-by information.
- Template:Nbt and Template:Nbt, only present if entity was recently hurt by a player.
- Template:Nbt and Template:Nbt, only present if entity was recently hurt by a non-player living entity.
- Area Effect Clouds have a new field: Template:Cd (float).
- If not specified, defaults to Template:Cd.
- The duration of the potion effect applied is scaled by this factor.
- Area Effect Clouds created by Lingering Potions will have a scale of Template:Cd.
- The Template:Cd, Template:Cd, and Template:Cd fields have been merged into an Template:Cd field.
- Format:
- Map between equipment slot type and item stack.
- Valid equipment slots: Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd.
- If not specified or removed, the entity will have no equipment.
- e.g. Template:Cd.
- This affects all mobs and armor stands, but players are unaffected.
- Map between equipment slot type and item stack.
- The data format of saddles has been unified between mobs such as horses and pigs, becoming a new kind of equipment slot (and stored in the Template:Cd field)
- This also replaces the boolean Template:Cd flag from pigs and striders.
- The Saddle dropping on death is now affected by the Template:Cd field, as with other equipment slots.
- The Template:Cd field has been changed from float to double and is now called Template:Cd.
- Format:
- The armor and off-hand equipment of players is now also stored in the Template:Cd field.
- Although items written into the Inventory using armor and off-hand slot numbers still work.
- Template:Cd, Template:Cd, and Template:Cd values without the correct number of components (3, 3, and 2 respectively) will now be fully discarded, instead of only selecting the specified components.
- The Template:Cd, Template:Cd, and Template:Cd fields have been collected into a single Template:Cd field.
- e.g. Template:Cd
- Block States in the entity data of arrows, Minecraft:minecarts, block displays, Minecraft:endermen, falling blocks, primed TNT, or piston moving blocks are no longer allowed to be specified as an empty object.
- The Template:Cd field will no longer be preserved if removed.
- The Template:Cd field will no longer be preserved if removed.
- The Template:Cd and Template:Cd fields now default to their respective maximum value if not specified.
- Template:Cd
- Removed the Template:Cd field (controlled by Template:Cd).
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- If the Template:Cd field is Template:Cd, the Area Effect Cloud will never run out.
- This means that an Area Effect Cloud summoned with no duration specified will no longer immediately disappear.
- Template:Cd, Template:Cd, Template:Cd
- The Template:Cd and Template:Cd fields will no longer be preserved when removed.
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd, Template:Cd, and Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- The Template:Cd, Template:Cd, and Template:Cd fields now default to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd and Template:Cd fields now default to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd (red) if not specified.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- Removed Template:Cd, Template:Cd, Template:Cd fields.
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, and Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd, Template:Cd, and all projectiles
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd
- The Template:Cd field can now be Template:Cd (will despawn immediately) - if otherwise not specified or invalid, defaults to Template:Cd.
- The Template:Cd field now defaults to Template:Cd if not specified (or Template:Cd if Template:Cd is Template:Cd).
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field will no longer be preserved if removed.
- Template:Cd
- The Template:Cd field now defaults to
falseif not specified.
- The Template:Cd field now defaults to
- Template:Cd
- The Template:Cd field now defaults to empty if not specified (and will no longer be merged with the previous state if modified by Template:Cmd).
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- The Template:Cd and Template:Cd fields now default to true if not specified.
- Template:Cd
- The Template:Cd and Template:Cd fields now default to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd and Template:Cd fields will no longer be preserved when removed.
- Template:Cd and Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified
- Template:Cd, Template:Cd, Template:Cd, and Template:Cd
- The Template:Cd, Template:Cd, and Template:Cd fields have been collected into a single Template:Cd field.
- Template:Cd, Template:Cd
- The Template:Cd field has been removed.
- Template:Cd will now always override the default displayed block state if specified.
- Template:Cd may now be specified to override the default offset even without a custom display block state set.
- Template:Cd
- The Template:Cd field has been renamed to Template:Cd.
- The Template:Cd, Template:Cd, and Template:Cd fields have been collected into a single Template:Cd field.
- Template:Cd
- The Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, and Template:Cd fields have been collected into a single Template:Cd field.
- Format: object with fields
- Template:Cd - block position to spawn at.
- Template:Cd - float, angle to spawn with (default: Template:Cd).
- Template:Cd - dimension id to spawn in (default Template:Cd).
- Template:Cd - boolean, true if this spawn was set through commands (default: Template:Cd).
- Format: object with fields
- The Template:Cd field has been renamed to Template:Cd, and is now formatted as a list of doubles.
- e.g. Template:Cd
- The Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, and Template:Cd fields have been collected into a single Template:Cd field.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd (no color) if not specified.
- Template:Cd
- The Template:Cd and Template:Cd fields will no longer be preserved when removed.
- Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd and Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- The Pumpkin field now defaults to Template:Cd if not specified.
- Template:Cd
- The Duration field now defaults to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd
- The Template:Cd field now defaults to Template:Cd.
- Template:Cd
- The Template:Cd, Template:Cd, and Template:Cd fields have been collected into a single Template:Cd field.
- Removed Template:Cd, Template:Cd, and Template:Cd fields.
- The Template:Cd field has been renamed to Template:Cd.
- Template:Cd
- The Template:Cd field has been renamed to Template:Cd.
- The Template:Cd, Template:Cd, and Template:Cd fields have been collected into a single Template:Cd field.
- Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- The Template:Cd and Template:Cd fields now default to Template:Cd if not specified.
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- The Template:Cd field now defaults to Template:Cd if not specified.
- Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, and Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd
- The Template:Cd field now defaults to
14(red) if not specified.
- The Template:Cd field now defaults to
- Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- Template:Cd
- The Template:Cd field will no longer be preserved when removed.
- The Template:Cd field now defaults to Template:Cd if not specified.
- The Template:Cd field will no longer be preserved when removed.
Entity variant components
- Entities now have a set of Minecraft:components for configuring variants and other aspects of appearance.
- If those components are present on spawning item (like spawn eggs, mob buckets, minecraft:painting, minecraft:item_frame), they will be applied to new entity
- Components are currently not restored when spawn egg is picked from existing entity
- Added components:
- Template:Cd – one of Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd
- Template:Cd – one of 16 dye colors
- Template:Cd – namespaced id from Template:Cd registry
- Template:Cd – namespaced id from Template:Cd registry
- Template:Cd – namespaced id from Template:Cd registry
- Template:Cd – one of Template:Cd, Template:Cd
- Template:Cd – namespaced id from Template:Cd registry
- Template:Cd – one of Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd
- Template:Cd – one of Template:Cd, Template:Cd, Template:Cd, Template:Cd
- Template:Cd – one of Template:Cd, Template:Cd
- Template:Cd – namespaced id from Template:Cd registry
- Template:Cd – one of Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd
- Template:Cd – namespaced id from Template:Cd registry
- Template:Cd – one of brown, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd
- Template:Cd – one of Template:Cd, Template:Cd, Template:Cd
- Template:Cd – one of 16 dye colors
- Template:Cd – one of 16 dye colors
- Template:Cd – one of 16 dye colors
- Template:Cd – one of Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd
- Template:Cd – one of 16 dye colors
- Template:Cd – one of Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd
- Template:Cd – one of 16 dye colors
- Template:Cd – namespaced id from Template:Cd registry
- Mob buckets and paintings available in creative menu will now use new variants instead of Template:Cd component.
- Custom tooltips for Minecraft:bucket of tropical fish and Minecraft:painting items are now based on new components instead of Template:Cd and Template:Cd.
- Cat and Frog variants are now data-driven.
- Added uniform way to define variant selection rules.
Equipment assets
- Equipment assets may now define new layer types:
- Template:Cd – equipment layer for Pig saddles
- Template:Cd – equipment layer for Strider saddles
- Template:Cd – equipment layer for Camel saddles
- Template:Cd – equipment layer for Horse saddles
- Template:Cd – equipment layer for Donkey saddles
- Template:Cd – equipment layer for Mule saddles
- Template:Cd – equipment layer for Skeleton Horse saddles
- Template:Cd – equipment layer for Zombie Horse saddles
- The following textures have been moved to support the use of equipment assets for saddles:
- The following textures have been split from their base entity texture to support the use of equipment assets for saddles:
- Equipment layers configured to be
dyeablewill now show if thedyed_colorcomponent is present on the item, even if the item is not in the#dyeabletag.
Minecraft:Items model definition
- Select Property
- Template:Cd
- If the selected value comes from a registry and the current datapacks does not provide it, the entry will be silently ignored.
- In previous snapshot, unrecognized elements caused the whole item model to be ignored.
- If the selected value comes from a registry and the current datapacks does not provide it, the entry will be silently ignored.
- Template:Cd
- Boolean Property
- Template:Cd
- New conditional model property has been added to condition item model: Template:Cd
- Uses component predicates (like ones used in item predicates) to match item components.
- However, instead of encoding them as a map of Template:Cd, a single predicate is encoded in two fields.
- Fields:
- Template:Cd – type of component predicate (member of Template:Cd registry)
- Template:Cd – predicate-specific value
- Template:Cd
Loot Functions
- Template:Cd
- Now supports any component id in the toggles map.
- Any component specified will be toggled in the Template:Cd component.
Network protocol
- The client-bound Template:Cd packet now contains an index increasing for every message sent to the client.
- The index starts at 0 when logging in (or is reset by configuration phase and the Template:Cd packet).
- For every message, the server should increment this value by 1.
- If this value updates in an unexpected way, the client will disconnect.
- As the protocol requires that every chat packet reaches the client in produced order, the goal is to enable faster detection of missed/reordered chat messages for custom server developers.
- The server-bound Template:Cd and Template:Cd packets now contain a checksum byte along with the 'last seen' update.
- This is a simple hash of the 'last seen' signatures which should be reconstructed by the server, allowing quicker detection of de-synchronized state.
- This can be passed as Template:Cd to disable the check, for compatibility with protocol translation.
- The particle type Template:Cd now has a parameter:
- Template:Cd
- Tint color, specified either as packed int or list of 4 floats.
- Template:Cd
- Block predicates
- New optional fields have been added to block predicates: Template:Cd and Template:Cd.
- Their functionality and format are identical to the fields Template:Cd and Template:Cd on item predicates, but they operate on block entity components (when present).
- When present, Template:Cd will match exact contents of block entity components.
- When present, Template:Cd will match partial contents of block entity components.
- Entity predicates
- A new optional field was added to entity predicate: Template:Cd.
- When present, predicate will match contents of entity components.
- Format:
- Map of component type key to matching component values.
- A new optional field has been added to entity predicates: Template:Cd.
- Its functionality and format is identical to the field Template:Cd on item predicates, but they operate on entity components.
- When present, Template:Cd will match partial contents of entity components.
- Its functionality and format is identical to the field Template:Cd on item predicates, but they operate on entity components.
- The following entity sub-predicates have been removed and replaced with combination of Template:Cd predicate and variant entity components:
- The field Template:Cd has been removed from Template:Cd sub-predicate.
- The Template:Cd entity predicate can only evaluate to Template:Cd if the entity is on ground.
- A new optional field was added to entity predicate: Template:Cd.
- Template:Cd
- The result field now supports specifying a count and a components patch to apply to the result.
- The components patch is applied to the final transmuted item.
- The new format is an object with fields:
- Template:Cd – item id
- Template:Cd – positive integer (default: Template:Cd)
- Template:Cd – a component patch object (default: empty)
- e.g.
"result": {"id": "minecraft:stick", "count": 3, "components": {"!minecraft:damage": {}, "minecraft:enchantment_glint_override": {}}}
- The field can still be defined as before as an inline item id (e.g. Template:Cd)
- Template:Cd recipe type
- The Template:Cd field is no longer optional
- Previously, if no base ingredient was given, the recipe would parse but never be usable.
- The Template:Cd field is no longer optional
- Template:Cd recipe type
- The Template:Cd, Template:Cd, and Template:Cd fields are no longer optional.
- Previously, if these ingredients were not given, the recipe would parse but never be usable.
- Added new Template:Cd field, controlling which trim pattern will be applied in the recipe.
- As such, the trim pattern registry definition no longer specifies the item.
- Format: trim pattern id
- e.g.
"pattern": "minecraft:bolt"
- e.g.
- The Template:Cd, Template:Cd, and Template:Cd fields are no longer optional.
- The Minecraft:pack format version is now Template:Cd.
- Added textures for new falling leaves particles.
- Added textures for new Wildflowers block.
- Added break, place, step, fall and hit sounds for Iron Blocks, Iron Bars, Iron Trapdoors, Iron Doors and Heavy Weighted Pressure Plates.
- Added the possibility to tint blocks based on a dry foliage color map.
- Added colormap texture for tinting dry foliage tinted blocks.
- Removed Template:Cd and Template:Cd.
- The texture
sheep_furhas been renamed tosheep_wool. - The texture
pighas been renamed totemperate_pig. - Added new textures for Pig variants:
- Changed the size of Template:Cd texture.
- Pig variants can be data-driven by adding entries to Template:Cd
- This feature is experimental.
- Fields in file:
- Template:Cd – one of: Template:Cd, Template:Cd .
- Template:Cd – texture id for this variant, resolves to Template:Cd.
- Template:Cd – single entry, list or a tag describing biomes in which this variant naturally spawns.
- If not specified, this variant will only be selected if no other variant matches the current biome.
- Added new equipment asset layer type for Pigs and Striders, and moved saddle textures.
- Changed the size of Template:Cd texture.
- The texture
cowhas been renamed totemperate_cow. - Added new textures for cow variants.
cold_cowwarm_cow
- Changed the size of
temperate_cowtexture. - Changed the size of
red_mooshroomandbrown_mooshroomtextures. - The temperate Cow has an updated model and texture.
- Cow models now have a snout.
- Cow models now have their legs mirrored.
- Cow variants can be data-driven adding entries to
data/<namespace>/cow_variant/<id>.json.- This feature is experimental.
- Fields in file:
model– one of:normal,cold,warm.asset_id– namespaced id for this variant asset, resolves toassets/<namespace>/textures/<path>.png.spawn_conditions– field described in uniform variant selection above.
- The texture
chickenhas been renamed totemperate_chicken. - The
temperate_chickentexture has been moved to a new folder:entity/chicken.png→entity/chicken/temperate_chicken.png
- Added new textures for chicken variants:
cold_chickenwarm_chicken
- Chicken variants can be data-driven adding entries to
data/<namespace>/chicken_variant/<id>.json.- This feature is experimental.
- Fields in file:
model– one of:normal,cold.asset_id– namespaced id for this variant asset, resolves toassets/<namespace>/textures/<path>.png.spawn_conditions– field described in uniform variant selection above.
- "Global" uniforms may now be defined in any shader, and the game will attempt to fill it.
- Currently, these are: Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd.
- The type of the uniform must match what it would normally be, or it'll be undefined behavior.
- Item rendering
- Minecraft:Item Display
- Template:Cd and Template:Cd transforms are now rendered the same as when held in hand.
- Item Entity
- When on ground, model size is now taken into account when determining hovering motion.
- That means that models should never clip into the block below, no matter what size they are.
- Positioning of items in an item stack on ground now depends on model size and model type.
- If model depth (Z coordinate) is below 1/16th of a block, item is rendered as flat stack of items.
- Otherwise model is rendered as a cluster of items offset in all directions around center.
- Previously, flat stack rendering happened only for models with Template:Cd parent.
- When on ground, model size is now taken into account when determining hovering motion.
- Minecraft:Item Display
- Added the entry point Template:Cd.
- Automatically starts a server, runs all available game tests and then exits.
- Options:
- Template:Cd – Shows usage information
- Template:Cd – Set a folder of Minecraft:datapacks to include in the world
- Any zip file or folder with a Template:Cd file is included
- Template:Cd – Exports results in a junit-like XML report at the given path
- Template:Cd – Specify which tests to run with a selection - a wildcard expression matching namespace test instance IDs
- If omitted, or used with an empty ID, runs all tests
- Template:Cd – The path to where the test server world will be created
- Any existing folder will be replaced
- Default: Template:Cd
- Template:Cd – Enables test verification
- Runs the tests specified with Template:Cd or Template:Cd 100 times for each 90 degree rotation step
- Default: Template:Cd
- Example usage: Template:Cd
- Shader program definitions for core shaders and post-processing effects as JSON files have been removed.
- The shader programs themselves are still available and can be overridden.
- The post-processing effects are still configurable as JSON.
- Post-process Effect Definitions
- The field program was replaced with Template:Cd and Template:Cd.
- Template:Cd will resolve to
assets/<namespace>/shaders/<path>.<vsh|fsh>.
- Template:Cd will resolve to
- Template:Cd is now a required field for each Template:Cd.
- Possible values are currently Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd, Template:Cd.
- Template:Cd in each Template:Cd is now optional.
- Leaving it unset is not recommended and is used for runtime configuration of the blur effect.
- Leaving a uniform unspecified results in undefined behavior, the player must specify each one that will be used by the shaders.
- The field program was replaced with Template:Cd and Template:Cd.
- Added Template:Cd and Template:Cd to the Template:Cd, and Template:Cd block tags, and the Template:Cd item tag.
- Added Template:Cd to the Template:Cd block tag.
- Added Template:Cd to the Template:Cd block tag.
- Added Template:Cd, and Template:Cd to the Template:Cd block tag.
- Added Template:Cd to the Template:Cd and Template:Cd block tags.
- Added Template:Cd, and Template:Cd to the Template:Cd, and Template:Cd block tags.
- Added Template:Cd to the Template:Cd biome tag.
- Added Template:Cd to the Template:Cd damage type tag.
- Changed the Template:Cd block tag, effectively removing Template:Cd from the contents.
- Renamed Template:Cd block tag to Template:Cd, and added Template:Cd.
- Fixed the Template:Cd, and Template:Cd biome tags to contain all required biomes.
- Removed blocks that mine instantly without a tool from the Template:Cd, and Template:Cd block tags.
- Removed Template:Cd and Template:Cd cat variant tags.
Minecraft:Text component format
- Text Components are no longer stored as JSON wrapped by a string.
- The format itself is the same as before, but inlined directly into the outer structure.
- For example, the item component
minecraft:custom_name="{"text":"Renamed item"}"will becomeminecraft:custom_name={text:'Renamed item'}. - This includes Text Components passed as arguments to commands such as Template:Cmd or Template:Cmd.
- For example, Template:Cmd may become
tellraw @s {text:'Hello world'}.
- For example, Template:Cmd may become
- Note: in the case where Text Components are embedded in NBT, no distinction exists between boolean and integer types.
- To pass boolean arguments to translations, the string form must be used.
- For Text Components with the NBT type and interpret set to true, Text Components will be parsed from the given NBT directly rather than converting to string and parsing as JSON.
- Hover Events
- The
hoverEventfield has been renamed tohover_event. - For the
show_textaction:contentsfield has been renamed tovalue.- e.g.
{action:'show_text',contents:'Hello world'}becomes{action:'show_text',value:'Hello world'}
- For the
show_itemaction:- The Template:Cd field has been renamed to Template:Cd.
- The
contentsfield has been inlined. - e.g.
{action:'show_item',contents:{id:'minecraft:stick',count:2}}becomes{action:'show_item',id:'minecraft:stick',count:2} - If contents was specified only as an item id, it is replaced with the full format and inlined.
- e.g.
{action:'show_item',contents:'minecraft:stick'}becomes{action:'show_item',id:'minecraft:stick'}
- For the
show_entityaction:- The
contentsfield has been inlined. - The
idfield has been renamed touuid. - The
typefield has been renamed toid. - e.g.
{action:'show_entity',contents:{id:[I;0,0,0,0],type:'minecraft:pig'}}becomes{action:'show_entity',uuid:[I;0,0,0,0],id:'minecraft:pig'}
- The
- The
- Click Events
- The
clickEventfield has been renamed toclick_event - For the
open_urlaction:- The
valuefield has been renamed tourl - The click event will no longer parse if not a valid URI with either
https://orhttp://schemes, instead of simply not working. - e.g.
{action:'open_url',value:'https://minecraft.net'}becomes{action:'open_url',url:'https://minecraft.net'}
- The
- For the
run_commandaction:- The
valuefield has been renamed tocommand. - The click event will no longer parse if the command contains disallowed characters, instead of simply not working.
- It is no longer required that the specified command field has a
/prefix. - e.g.
{action:'run_command',value:'/say Hi'}becomes{action:'run_command',command:'/say Hi'}.
- The
- For the
suggest_commandaction:- The
valuefield has been renamed tocommand. - The click event will no longer parse if the command contains disallowed characters, instead of simply not working.
- e.g.
{action:'suggest_command',value:'/help'}becomes{action:'suggest_command',command:'/help'}
- The
- For the
change_pageaction:- The
valuefield has been renamed topage. - The page value now requires a positive integer instead of a string.
- e.g.
{action:'change_page',value:'1'}becomes{action:'change_page',page:1}
- The
- The
copy_to_clipboardformat is unchanged.
- The
Uniform variant selection
- Variants that have spawn rules now use uniform approach for selecting.
- Selection process:
- Every variant field Template:Cd that contain a list of entries.
- Every entry has a condition and an integer priority.
- Conditions for all variants for given entity type are evaluated for position where entity is being spawned.
- Entries with priority lower than maximum priority of remaining entries are removed.
- The game randomly picks one entry out of remaining ones.
- If no conditions are remaining, variant remains unchanged from default.
- Entry format:
- Template:Cd – integer
- Template:Cd – optional structure
- Fields:
- Template:Cd
- Additional fields dependent on Template:Cd.
- If field is not present, condition is always true.
- Fields:
- Selection process:
- Spawn conditions
- Template:Cd
- Checks if entity is spawning in specific biomes.
- Fields:
- Template:Cd – single entry, list or a tag describing biomes.
- Template:Cd
- Checks if current moon brightness is within certain range.
- Fields:
- Template:Cd – floating point range (a single number or an object like
{"min": 1, "max": 2}).
- Template:Cd – floating point range (a single number or an object like
- Template:Cd
- Checks if entity is spawning in specific structures.
- Fields:
- Template:Cd – single entry, list or a tag describing structures.
- Template:Cd
- Wolf Variants
- The fields Template:Cd, Template:Cd, and Template:Cd have been grouped in field Template:Cd and renamed to Template:Cd, Template:Cd, and Template:Cd.
- Added the field Template:Cd.
- Pig Variants
- Template:Cd and Template:Cd fields are replaced with Template:Cd and Template:Cd respectively.
- Fields in file:
- Template:Cd – namespaced id for this variant asset, resolves to Template:Cd.
- Template:Cd – field described in uniform variant selection above
- Cat variants
- Cat variants can be data-driven by adding entries to Template:Cd.
- This feature is experimental.
- Fields in file:
- Template:Cd – namespaced id for this variant asset, resolves to Template:Cd.
- Template:Cd – field described in uniform variant selection above
- Frog variants
- Frog variants can be data-driven by adding entries to Template:Cd.
- This feature is experimental.
- Fields in file:
- Template:Cd – namespaced id for this variant asset, resolves to Template:Cd.
- Template:Cd – field described in uniform variant selection above
Fixes
Videos
Gallery
-
The cow, the chicken, and the pig are joined by their new variations high up on a mountain.
-
Warm pigs are amongst cactus flowers in a desert.
-
A cold chicken can be seen in the forefront, with a creeper peaking out from behind a tree.
-
A warm chicken in a desert village. A cat can be seen sitting on top of a villager's house.
-
A wolf walking on top of a fallen oak tree.
-
Sunny and Noor are inspecting a collection of spawn eggs. A cartographer villager can also been seen peaking in through the window.
-
A fallen birch tree with a brown mushroom growing on top of it.
-
In the moonlit swamp, firefly bushes can be seen emitting particles. Meanwhile, a frog seems to be leaping towards the moon.
-
Three differently colored beacon beams are seen in the sky of a sunset scenery.
-
Kai is seen testing curious behaviors with the new test blocks.
-
A game test is running, where a villager is seen running through a maze to get to their bed.
Notes
<references group="info"/>
References
Template:Navbox Java Edition versions
Minecraft:de:1.21.5 Minecraft:es:Java Edition 1.21.5 Minecraft:fr:Édition Java 1.21.5 Minecraft:it:Java Edition 1.21.5 Minecraft:ja:Java Edition 1.21.5 Minecraft:lzh:爪哇版一點二一點五 Minecraft:pl:Java Edition 1.21.5 Minecraft:pt:Edição Java 1.21.5 Minecraft:ru:1.21.5 (Java Edition) Minecraft:th:รุ่น Java 1.21.5 Minecraft:uk:1.21.5 (Java Edition) Minecraft:zh:Java版1.21.5