{"id":135327,"date":"2025-03-25T17:28:31","date_gmt":"2025-03-25T17:28:31","guid":{"rendered":"https:\/\/sickgaming.net\/blog\/2025\/03\/25\/java-edition-1-21-5\/"},"modified":"2025-03-25T17:28:31","modified_gmt":"2025-03-25T17:28:31","slug":"java-edition-1-21-5","status":"publish","type":"post","link":"https:\/\/sickgaming.net\/blog\/2025\/03\/25\/java-edition-1-21-5\/","title":{"rendered":"JAVA Edition: 1.21.5"},"content":{"rendered":"<h2>New Features<\/h2>\n<ul>\n<li>Added cold and warm variants for the Pig, Cow and Chicken<\/li>\n<li>Sheep now spawn with wool color dependent on the biome in which they spawn<\/li>\n<li>Added new sound variants for Wolves<\/li>\n<li>Overhauled the visuals of each Spawn Egg to improve readability and accessibility<\/li>\n<li>Added fallen tree generation<\/li>\n<li>Added Firefly Bush block<\/li>\n<li>Added Leaf Litter block<\/li>\n<li>Added Wildflowers block<\/li>\n<li>Added Bush block<\/li>\n<li>Added Short Dry Grass and Tall Dry Grass blocks<\/li>\n<li>Added Cactus Flower block which can grow on Cactus blocks<\/li>\n<li>Added new falling leaf particles to all Leaves blocks that did not already have them<\/li>\n<li>Added new ambient block sounds in the Desert and Badlands biomes<\/li>\n<li>Added language support for Kyrgyz<\/li>\n<\/ul>\n<h3>Farm Animal Variants<\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5.png\" alt width=\"500\" height=\"282\"><\/p>\n<ul>\n<li>Warm and cold variants have been added for the following animals:\n<ul>\n<li>Pig<\/li>\n<li>Cow<\/li>\n<li>Chicken<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-1.png\" alt width=\"500\" height=\"281\"><\/p>\n<ul>\n<li>The variant is determined by the biome they spawn in<\/li>\n<li>Temperate variant &#8211; The variants we are all familiar with, spawns by default where the other variants do not<\/li>\n<li>Cold variant &#8211; A variant that will be selected if spawned (naturally or by player) in these biomes:\n<ul>\n<li>Cold Ocean<\/li>\n<li>Deep Cold Ocean<\/li>\n<li>Deep Dark<\/li>\n<li>Deep Frozen Ocean<\/li>\n<li>End Barrens<\/li>\n<li>End Highlands<\/li>\n<li>End Midlands<\/li>\n<li>Frozen Ocean<\/li>\n<li>Frozen Peaks<\/li>\n<li>Frozen River<\/li>\n<li>Grove<\/li>\n<li>Ice Spikes<\/li>\n<li>Jagged Peaks<\/li>\n<li>Old Growth Pine Taiga<\/li>\n<li>Old Growth Spruce Taiga<\/li>\n<li>Small End Islands<\/li>\n<li>Snowy Beach<\/li>\n<li>Snowy Plains<\/li>\n<li>Snowy Slopes<\/li>\n<li>Snowy Taiga<\/li>\n<li>Stony Peaks<\/li>\n<li>Taiga<\/li>\n<li>The End<\/li>\n<li>Windswept Forest<\/li>\n<li>Windswept Gravelly Hills<\/li>\n<li>Windswept Hills<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-2.png\" alt width=\"500\" height=\"280\"><\/p>\n<ul>\n<li>Warm variant &#8211; A variant that will be selected if spawned (naturally or by player) in these biomes:\n<ul>\n<li>Badlands<\/li>\n<li>Bamboo Jungle<\/li>\n<li>Basalt Deltas<\/li>\n<li>Crimson Forest<\/li>\n<li>Deep Lukewarm Ocean<\/li>\n<li>Desert<\/li>\n<li>Eroded Badlands<\/li>\n<li>Jungle<\/li>\n<li>Lukewarm Ocean<\/li>\n<li>Mangrove Swamp<\/li>\n<li>Nether Wastes<\/li>\n<li>Savanna<\/li>\n<li>Savanna Plateau<\/li>\n<li>Soul Sand Valley<\/li>\n<li>Sparse Jungle<\/li>\n<li>Warm Ocean<\/li>\n<li>Warped Forest<\/li>\n<li>Windswept Savanna<\/li>\n<li>Wooded Badlands<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-3.png\" alt width=\"500\" height=\"280\"><\/p>\n<ul>\n<li>When bred by a player, a baby variant will not be chosen by the current biome, but instead randomly selected from one of the parents&#8217; variants<\/li>\n<li>Two new Egg items have been added for the warm and cold Chicken variants\n<ul>\n<li>Blue Egg &#8211; The Egg that is laid by and can hatch cold Chicken variants<\/li>\n<li>Brown Egg &#8211; The Egg that is laid by and can hatch warm Chicken variants<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Sheep Wool Color in Warm and Cold Biomes<\/h4>\n<ul>\n<li>Sheep now spawn with wool color dependent on the biome in which they spawn:\n<ul>\n<li>Temperate biomes: (these colors are unchanged from previous behavior)\n<ul>\n<li>Common Sheep color is white<\/li>\n<li>Uncommon Sheep colors are black, gray, light gray and brown<\/li>\n<li>There is a rare chance for a pink Sheep to spawn<\/li>\n<\/ul>\n<\/li>\n<li>Cold biomes:\n<ul>\n<li>Common Sheep color is black<\/li>\n<li>Uncommon Sheep colors are gray, light gray, white and brown<\/li>\n<li>There is a rare chance for a pink Sheep to spawn<\/li>\n<\/ul>\n<\/li>\n<li>Warm biomes:\n<ul>\n<li>Common Sheep color is brown<\/li>\n<li>Uncommon Sheep colors are gray, light gray, white and black<\/li>\n<li>There is a rare chance for a pink Sheep to spawn<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Wolf Sounds Variants<\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-4.png\" alt width=\"500\" height=\"282\"><\/p>\n<ul>\n<li>Added 6 new Wolf sound variants with unique ambient, hurt, death, growl, whine, and pant sounds\n<ul>\n<li>The new sounds are part of variants that are called &#8220;Big&#8221;, &#8220;Cute&#8221;, &#8220;Puglin&#8221;, &#8220;Angry&#8221;, &#8220;Grumpy&#8221;, and &#8220;Sad&#8221;<\/li>\n<li>The original Wolf sounds now are used for the variant called &#8220;Classic&#8221;<\/li>\n<li>Every Wolf will have a sound variant randomly assigned to it from these 7 variants<\/li>\n<li>The sound variant is not related to the texture variant<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Spawn Egg Visuals Overhaul<\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-5.png\" alt width=\"500\" height=\"282\"><\/p>\n<ul>\n<li>Each Spawn Egg now has their own unique visual which captures the personality and character of the mob it spawns<\/li>\n<li>Each egg visual varies in shape to reflect the in-world size of the mob it spawns\n<ul>\n<li>For example, smaller mobs tend to have a smaller Spawn Egg<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-6.png\" alt width=\"500\" height=\"284\"><\/p>\n<ul>\n<li>Fallen trees are a new decorative variant of trees<\/li>\n<li>Fallen trees come in four different wood type variants:\n<ul>\n<li>Oak<\/li>\n<li>Birch<\/li>\n<li>Jungle<\/li>\n<li>Spruce<\/li>\n<\/ul>\n<\/li>\n<li>Birch fallen trees come in a shorter and a longer version<\/li>\n<li>Some fallen trees can be decorated with Mushrooms or Vines<\/li>\n<li>Fallen trees can be found in all biomes where their standing tree variant grows, except the following:\n<ul>\n<li>Bamboo Jungle<\/li>\n<li>Flower Forest (has fallen Birch trees but not fallen Oak trees)<\/li>\n<li>Grove<\/li>\n<li>Meadow<\/li>\n<li>River<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Firefly Bush<\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-7.png\" alt width=\"500\" height=\"281\"><\/p>\n<ul>\n<li>The Firefly Bush is found adjacent to water in Swamps, Mangrove Swamps, Badlands, and near Rivers<\/li>\n<li>When it is dark, glowing firefly particles appear around the Firefly Bush<\/li>\n<li>Using Bone Meal on a Firefly Bush grows a Firefly Bush in a random adjacent space if possible<\/li>\n<li>The Firefly Bush emits a light level of 2<\/li>\n<li>The Firefly Bush has a chance of playing ambient sounds when these conditions are met:\n<ul>\n<li>it is night<\/li>\n<li>it is not blocked from above by any collidable block except leaves<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Leaf Litter<\/h3>\n<ul>\n<li>Leaf Litter is a new type of decorative block which can be found in the Forests, Dark Forests and Wooded Badlands\n<ul>\n<li>Note: Leaf Litter is only spawned as part of world generation, and does not regenerate during gameplay<\/li>\n<\/ul>\n<\/li>\n<li>Leaf Litter can have different amounts of leaves in one block space\n<ul>\n<li>Up to four Leaf Litter pieces can be placed in the same block space<\/li>\n<li>Placing a Leaf Litter into an existing Leaf Litter block increases the amount of leaves<\/li>\n<\/ul>\n<\/li>\n<li>Leaf Litter can be placed in four orientations<\/li>\n<li>Leaf Litter can be placed on any block with a full top face<\/li>\n<li>Leaf Litter can be created by smelting any type of Leaves block<\/li>\n<li>Leaf Litter can be used as fuel for smelting<\/li>\n<li>Leaf Litter can be used in the Composter<\/li>\n<li>Leaf Litter has unique block sounds<\/li>\n<li>Leaf Litter is tinted based on which biome it is in<\/li>\n<li>Leaf Litter is replaceable when building<\/li>\n<\/ul>\n<h3>Wildflowers<\/h3>\n<ul>\n<li>Wildflowers are a new type of flower which grow in Birch Forests, Old Growth Birch Forests and Meadows<\/li>\n<li>Wildflowers can have different amounts of flowers in one block space\n<ul>\n<li>Up to four Wildflowers can be placed in the same block space<\/li>\n<li>Placing a Wildflower into an existing Wildflowers block increases the amount of flowers<\/li>\n<li>Using Bone Meal on Wildflowers will produce more Wildflowers<\/li>\n<\/ul>\n<\/li>\n<li>Wildflowers can be placed in four orientations<\/li>\n<li>Wildflowers can be crafted into Yellow Dye<\/li>\n<\/ul>\n<h3>Bush<\/h3>\n<ul>\n<li>The Bush is a new type of decorative block that can be found in small patches in the following biomes:\n<ul>\n<li>Birch Forest<\/li>\n<li>Forest<\/li>\n<li>Frozen River<\/li>\n<li>Old Growth Birch Forest<\/li>\n<li>Plains<\/li>\n<li>River<\/li>\n<li>Windswept Forest<\/li>\n<li>Windswept Gravelly Hills<\/li>\n<li>Windswept Hills<\/li>\n<\/ul>\n<\/li>\n<li>The Bush can be used in the Composter<\/li>\n<li>Using Bone Meal on a Bush grows a Bush in a random adjacent space if possible<\/li>\n<li>A Bush only drops when broken with Shears or a Silk Touch tool<\/li>\n<li>The Bush is replaceable when building<\/li>\n<\/ul>\n<h3>Short and Tall Dry Grass<\/h3>\n<ul>\n<li>Added two new types of grass: Short Dry Grass and Tall Dry Grass<\/li>\n<li>Both are 1 block high, which means Tall Dry Grass differs from regular Tall Grass which is 2 blocks high<\/li>\n<li>Both generate in the Desert and Badlands biomes<\/li>\n<li>Both can be placed on types of Sand, Terracotta, Dirt blocks, and Farmland like the Dead Bush<\/li>\n<li>Both can be bonemealed\n<ul>\n<li>Using Bone Meal on Short Dry Grass grows it into a Tall Dry Grass<\/li>\n<li>Using Bone Meal on Tall Dry Grass grows a Short Dry Grass in a random adjacent space if possible<\/li>\n<\/ul>\n<\/li>\n<li>Both can be used in the Composter<\/li>\n<li>Sheep can eat both to regrow their wool<\/li>\n<li>Both can be used as fuel for smelting<\/li>\n<li>Both are replaceable when building<\/li>\n<\/ul>\n<h3>Cactus Flower<\/h3>\n<ul>\n<li>Cactus Flower is a new type of flower that has a chance of generating on Cactuses in Deserts and Badlands<\/li>\n<li>Cactus Flower can be placed on Cactus blocks, Farmland, or any block which has center support at the top of the block<\/li>\n<li>Cactus Flowers have a chance of growing on Cactus blocks instead of the Cactus growing taller\n<ul>\n<li>If a Cactus is 1-2 blocks tall, the Cactus Flower has a 10% chance to grow<\/li>\n<li>If a Cactus is 3 blocks or taller the Cactus Flower has a 25% chance to grow<\/li>\n<li>Cactus Flowers will only grow if they have space on all four sides<\/li>\n<\/ul>\n<\/li>\n<li>Cactus Flowers can be used in the Composter<\/li>\n<li>A Cactus Flower can be used to craft 1 Pink Dye<\/li>\n<\/ul>\n<h3>Falling Leaf Particles<\/h3>\n<ul>\n<li>All Leaves blocks now have chance of spawning falling leaf particles<\/li>\n<li>The following blocks are affected by this change:\n<ul>\n<li>Acacia Leaves<\/li>\n<li>Azalea Leaves<\/li>\n<li>Birch Leaves<\/li>\n<li>Dark Oak Leaves<\/li>\n<li>Flowering Azalea Leaves<\/li>\n<li>Jungle Leaves<\/li>\n<li>Mangrove Leaves<\/li>\n<li>Oak Leaves<\/li>\n<li>Spruce Leaves<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>New Ambient Sounds for Desert and Badlands<\/h3>\n<ul>\n<li>Sand, Red Sand and Terracotta of any color have a chance of playing ambient sounds when surrounded by another block in the same group on at least 3 sides, at a distance of 8 blocks\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">block.sand.idle<\/span>&nbsp;can be played in any biome<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.sand.wind<\/span>&nbsp;only plays when in Desert or Badlands biomes<\/li>\n<\/ul>\n<\/li>\n<li>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<\/li>\n<\/ul>\n<h2>Changes<\/h2>\n<ul>\n<li>The main menu panorama has been updated for the &#8220;Spring to Life&#8221; drop<\/li>\n<li>Beacons and their beams now render beyond 16 chunks, up to the client render distance\n<ul>\n<li>To keep it easily visible at large distances, the beam is rendered thicker the further away you are<\/li>\n<li>The beam now renders up to 2048 blocks high, up from 1024<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-8.png\" alt width=\"500\" height=\"281\"><\/p>\n<ul>\n<li>Lodestones have a new crafting recipe and can now be found in Ruined Portals<\/li>\n<li>The trades of the Cartographer and Wandering Trader have been updated<\/li>\n<li>Bundles can now be found in some of the Chests in Villages<\/li>\n<li>Updates to Camel, Chicken, Cow, Pig, and Sheep spawning<\/li>\n<li>Zombified Piglins now need to be killed by a Player to drop the Player-specific loot such as experience\n<ul>\n<li>This makes them consistent with all other mobs in the game<\/li>\n<\/ul>\n<\/li>\n<li>Changes to world generation of the Pale Garden and Meadow biomes<\/li>\n<li>Chunks loaded by a portal will now be re-loaded again automatically when the world is reopened<\/li>\n<li>Improved how simulation distance affects block ticks<\/li>\n<li>Tweaks to the Creaking and Creaking Heart<\/li>\n<li>Textures and models for temperate Cow, Mooshrooms and Sheep have been updated<\/li>\n<li>Minor tweaks to existing Blocks, Items and Entities<\/li>\n<li>Various changes and tweaks to sounds<\/li>\n<li>Minor improvements to world uploads in Realms<\/li>\n<li>Reverted fix&nbsp;<a href=\"https:\/\/bugs.mojang.com\/browse\/MC-152728\">MC-152728<\/a>&nbsp;&#8211; &#8220;<i>The player continues sprinting when performing actions that slow them down<\/i>&#8221;<br \/>\n<blockquote>\n<p><b>Developer&#8217;s Note<\/b>:&nbsp;<i>After consideration, we have decided to revert this fix. While we do want to revisit these mechanics in the future, it&#8217;s clear that these recent fixes alone didn&#8217;t quite hit the mark and caused too many negative side effects for parkour, speedbridging, and movement in general<\/i><\/p>\n<\/blockquote>\n<\/li>\n<li>If the game detects that the last startup did not complete normally, the fullscreen option will now be reset<\/li>\n<li>Removed Herobrine<\/li>\n<\/ul>\n<h3>Lodestone Changes<\/h3>\n<ul>\n<li>The Lodestone is now crafted from 1 Iron Ingot surrounded by 8 Chiseled Stone Bricks<\/li>\n<li>Lodestones can now be found as loot at Ruined Portals in the Overworld or Nether<\/li>\n<li>Advancement &#8220;Country Lode, Take me Home&#8221; has been moved from the &#8220;Nether&#8221; category to the &#8220;Adventure&#8221; category<\/li>\n<\/ul>\n<h3>Cartographer and Wandering Trader Trade Rebalance<\/h3>\n<h4>Cartographer Trades<\/h4>\n<ul>\n<li>Cartographers now sell 7 new maps each pointing to a different village or other structures in a different biome<\/li>\n<li>Cartographers from different village types will sell a different range of maps and colored banners<\/li>\n<li>Some prices and quantities have also been adjusted<\/li>\n<\/ul>\n<h4>Wandering Trader Trades<\/h4>\n<ul>\n<li>The Wandering Trader now has better prices, more trades and a larger amount of stock for many items<\/li>\n<li>They will also now buy basic supplies from players, so it is possible to get some Emeralds by helping them prepare for their next journey &#8211; even if you don&#8217;t feel like buying anything<\/li>\n<li>The Wandering Trader will offer to buy two items from this list:\n<ul>\n<li>Water Bottle<\/li>\n<li>Water Bucket<\/li>\n<li>Milk Bucket<\/li>\n<li>Fermented Spider Eye<\/li>\n<li>Baked Potato<\/li>\n<li>Hay Bale<\/li>\n<\/ul>\n<\/li>\n<li>Wandering Traders now have a chance of selling these items (in addition to their previous trades):\n<ul>\n<li>Logs (Acacia, Birch, Dark Oak, Jungle, Oak, Spruce, Pale Oak or Cherry)<\/li>\n<li>Enchanted Iron Pickaxe<\/li>\n<li>Potion of Invisibility<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Mob Spawning Changes<\/h3>\n<ul>\n<li>Camels now spawn in Deserts<\/li>\n<li>Chickens, Cows, Pigs, and Sheep can now spawn in Badlands<\/li>\n<\/ul>\n<h3>World Generation Changes<\/h3>\n<ul>\n<li>The Pale Garden biome now occupies more space that was previously taken by Dark Forest<\/li>\n<li>Woodland Mansions can now generate in the Pale Garden biome<\/li>\n<li>Short Grass now generates slightly sparser in Meadows<\/li>\n<\/ul>\n<h3>Simulation Distance<\/h3>\n<ul>\n<li>Any block in simulation distance of a player, or loaded by another source of chunk loading such as Ender Pearls, may now receive random ticks instead of 8 chunks just around players\n<ul>\n<li>For example: if a chunk is loaded by an Ender Pearl or is in the spawn chunks, crops are able to grow, Ice can melt, Snow can fall, and a Cauldron can be filled by rain<\/li>\n<li>Mob spawning, Lava spreading fire, and Lightning strikes still occur in the previous radius of 8 chunks around players<\/li>\n<\/ul>\n<\/li>\n<li>Fire will no longer burn or spread if no player is within 8 chunks<\/li>\n<\/ul>\n<h3>Creaking and Creaking Heart<\/h3>\n<ul>\n<li>Creakings can now be named using Name Tags\n<ul>\n<li>Named Creakings will persist through the day\n<ul>\n<li>However, they will still be torn down if stuck with a player or if too far from their Heart<\/li>\n<\/ul>\n<\/li>\n<li>Named Creakings are still resistant to all damage, and can communicate with their Hearts via particles<\/li>\n<\/ul>\n<\/li>\n<li>Creaking Hearts correctly placed between Logs have a new dormant texture during the day\n<ul>\n<li>Dormant Creaking Hearts cannot spawn new Creakings or Resin<\/li>\n<\/ul>\n<\/li>\n<li>The transition between the awake and dormant states for Creaking Hearts, as well as the transition of Eye Blossoms is now based on the fixed day time\n<ul>\n<li>All these behaviors are no longer affected by weather or dimension brightness<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Mob Texture and Model Changes<\/h3>\n<ul>\n<li>The look of the temperate Cow has been slightly updated to have an extruded snout<\/li>\n<li>The look of both Mooshroom variants have been slightly updated to have an extruded snout<\/li>\n<li>Sheep&#8217;s wool undercoat is now also colored when dyed<\/li>\n<li>The Sheep wool texture has been tweaked to remove the stark line at the back<\/li>\n<\/ul>\n<h3>Minor Tweaks to Blocks, Items and Entities<\/h3>\n<ul>\n<li>Sheep can now eat Fern blocks<\/li>\n<li>Landing on Powdered Snow with Leather Boots equipped after falling further than 2.5 blocks will now make entities fall through the snow\n<ul>\n<li>Jumping or falling less than 2.5 blocks allows the entity to land on top of the snow like before<\/li>\n<\/ul>\n<\/li>\n<li>Saddles equipped onto Pigs or Striders will now maintain properties such as custom name when dropped<\/li>\n<li>Bubble columns produce less particles and sounds when entities are unaffected by them are inside them<\/li>\n<li>Pale Oak Leaves and Pale Oak Saplings have an updated map color<\/li>\n<li>Improved tooltips for the Crossbow and all container items<\/li>\n<\/ul>\n<h4>Item Tooltips<\/h4>\n<ul>\n<li>Crossbows will now show all charged projectiles in their tooltip instead of just the first\n<ul>\n<li>All charged projectiles will also add their entire tooltip as a subsection, instead of only Fireworks<\/li>\n<\/ul>\n<\/li>\n<li>All container items with stored contents, such as a Chest picked with Ctrl+Pick Block, will now list the first 4 items in their tooltip just like Shulker Boxes<\/li>\n<\/ul>\n<h3>Sound Changes<\/h3>\n<ul>\n<li>The volume of the narrator is now affected by the game&#8217;s configured volume in the &#8220;Voice&#8221; category<\/li>\n<li>Added new break, place, step, fall and hit sounds for Iron Blocks, Iron Bars, Iron Trapdoors, Iron Doors and Heavy Weighted Pressure Plates<\/li>\n<li>The breaking sound for the &#8220;grass&#8221; sound type has been lowered<\/li>\n<li>Blocks that are broken by a Piston now play their breaking sound<\/li>\n<li>Ambient block sounds in Desert, Badlands and Pale Garden which are only used for ambience have been moved from the &#8220;Blocks&#8221; to the &#8216;Ambient\/Environment&#8217; category<\/li>\n<\/ul>\n<h3>Realms World Uploads<\/h3>\n<ul>\n<li>Uploading a world to Realms will now enable Command Blocks by default<\/li>\n<li>It is now possible to upload Hardcore singleplayer worlds to Realms<\/li>\n<\/ul>\n<h2>Technical Changes<\/h2>\n<ul>\n<li>The Data Pack version is now 71<\/li>\n<li>The Resource Pack version is now 55<\/li>\n<li>A new entry point is present in the server jar:&nbsp;<span class=\"MC_Effect_TextHighlightA\">net.minecraft.gametest.Main<\/span>\n<ul>\n<li>Automatically starts a server and runs all available game tests<\/li>\n<\/ul>\n<\/li>\n<li>A new command line argument is available for the client:&nbsp;<span class=\"MC_Effect_TextHighlightA\">&#8211;renderDebugLabels<\/span>\n<ul>\n<li>Adds debug labels to relevant OpenGL objects, making debugging rendering easier for developers<\/li>\n<\/ul>\n<\/li>\n<li>Minor changes to chat network protocol<\/li>\n<\/ul>\n<h3>Game Test Entry Point<\/h3>\n<p>This new entry point automatically starts a server, runs all available game test, and then exits.<\/p>\n<p>Options:<\/p>\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">&#8211;help<\/span>&nbsp;&#8211; Shows usage information<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">&#8211;packs &lt;path&gt;<\/span>&nbsp;&#8211; Set a folder of data packs to include in the world\n<ul>\n<li>Any zip file or folder containing a&nbsp;<span class=\"MC_Effect_TextHighlightA\">pack.mcmeta<\/span>&nbsp;file is included<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">&#8211;report &lt;path&gt;<\/span>&nbsp;&#8211; Exports results in a JUnit-like XML report at the given path<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">&#8211;tests &lt;selection&gt;<\/span>&nbsp;&#8211; Specify which tests to run with a selection &#8211; a wildcard expression matching namespace test instance IDs\n<ul>\n<li>If omitted, or used with an empty ID, all tests will be run<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">&#8211;universe &lt;path&gt;<\/span>&nbsp;&#8211; The path in which the test server world will be created\n<ul>\n<li>Any existing folder will be replaced<\/li>\n<li>Default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">gametestserver<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">&#8211;verify &lt;boolean&gt;<\/span>&nbsp;&#8211; Enables test verification\n<ul>\n<li>Runs the tests specified with&nbsp;<span class=\"MC_Effect_TextHighlightA\">test<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">testNamespace<\/span>&nbsp;100 times for each 90-degree rotation step<\/li>\n<li>Default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Example usage:&nbsp;<span class=\"MC_Effect_TextHighlightA\">java -DbundlerMainClass=&#8221;net.minecraft.gametest.Main&#8221; -jar server.jar &#8211;packs mytestpacks<\/span><\/p>\n<h3>Network Protocol<\/h3>\n<ul>\n<li>The clientbound&nbsp;<span class=\"MC_Effect_TextHighlightA\">player_chat<\/span>&nbsp;packet now contains an index increasing for every message sent to the client\n<ul>\n<li>The index starts at 0 when logging in (or is reset by configuration phase and the&nbsp;<span class=\"MC_Effect_TextHighlightA\">login<\/span>&nbsp;packet)<\/li>\n<li>For every message, the server should increment this value by 1<\/li>\n<li>If this value updates in an unexpected way, the client will disconnect<\/li>\n<li>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<\/li>\n<\/ul>\n<\/li>\n<li>The serverbound&nbsp;<span class=\"MC_Effect_TextHighlightA\">chat<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">chat_command_signed<\/span>&nbsp;packets now contain a checksum byte along with the &#8220;last seen&#8221; update\n<ul>\n<li>This is a simple hash of the &#8220;last seen&#8221; signatures which should be reconstructed by the server, allowing quicker detection of desynchronized state<\/li>\n<li>This can be passed as&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;to disable the check, for compatibility with protocol translation<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Data Pack Versions 62 through 71<\/h2>\n<ul>\n<li>The Game Tests system is now accessible through data packs and for mods<\/li>\n<li>Added new&nbsp;<span class=\"MC_Effect_TextHighlightA\">allowFireTicksAwayFromPlayer<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">tntExplodes<\/span>&nbsp;Game Rules<\/li>\n<li>All entities can now store custom data<\/li>\n<li>Added a uniform way to define variant selection rules<\/li>\n<li>Wolf Sound, Pig, Cat, Chicken, Cow, and Frog variants are now data-driven<\/li>\n<li>Changes to commands<\/li>\n<li>Structure Blocks in the &#8220;Load&#8221; mode have a new option: &#8220;Strict Placement&#8221;\n<ul>\n<li>If set to&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>, the blocks in the placed structure will not trigger block updates, block entity side effects, or shape updates<\/li>\n<\/ul>\n<\/li>\n<li>The game&#8217;s handling of NBT has been updated to allow &#8220;heterogeneous&#8221; lists with elements of different types<\/li>\n<li>The object notation used in commands for NBT, text components and inline predicates (a.k.a. SNBT) has been extended<\/li>\n<li>Updated data format of Text Components<\/li>\n<li>Updated many data formats within entities and block entities<\/li>\n<li>Added new item components, and updates to existing components\n<ul>\n<li>The control of tooltip behavior has been reworked into a&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<\/ul>\n<\/li>\n<li>Entity variants are now set and queried with components<\/li>\n<li>Updated Entity Predicates to support entity components<\/li>\n<li>Updated Block Predicates to support block entity components<\/li>\n<li>Updated&nbsp;<span class=\"MC_Effect_TextHighlightA\">toggle_tooltips<\/span>&nbsp;loot function to support new&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">potion<\/span>&nbsp;entity type has been split into&nbsp;<span class=\"MC_Effect_TextHighlightA\">splash_potion<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">lingering_potion<\/span><\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">saddle<\/span>&nbsp;equipment slot for entities, driven by the&nbsp;<span class=\"MC_Effect_TextHighlightA\">equippable<\/span>&nbsp;component\n<ul>\n<li>Only mobs that normally support saddles will support riding and rendering of the saddle<\/li>\n<li>Items in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">saddle<\/span>&nbsp;slot can apply attribute modifiers as with other equipment<\/li>\n<\/ul>\n<\/li>\n<li>Changes to&nbsp;<span class=\"MC_Effect_TextHighlightA\">crafting_transmute<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">smithing_transform<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">smithing_trim<\/span>&nbsp;recipe types<\/li>\n<li>Trim pattern and trim material items are no longer specified in the trim registries, but instead in the recipes and items respectively<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">fallen_tree<\/span>&nbsp;feature type and&nbsp;<span class=\"MC_Effect_TextHighlightA\">attached_to_logs<\/span>&nbsp;tree decorator type<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">background<\/span>&nbsp;field in Advancement definitions no longer contains a&nbsp;<span class=\"MC_Effect_TextHighlightA\">textures\/<\/span>&nbsp;prefix and&nbsp;<span class=\"MC_Effect_TextHighlightA\">.png<\/span>&nbsp;suffix<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">effects<\/span>&nbsp;field in Biome definitions has a new subfield,&nbsp;<span class=\"MC_Effect_TextHighlightA\">dry_foliage_color<\/span>, that defines the color used for tinting blocks using dry foliage tinting (Leaf Litter)<\/li>\n<li>Changes to tags<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">firefly<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">tinted_leaves<\/span>&nbsp;particles<\/li>\n<\/ul>\n<h3>Game Tests<\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-9.png\" alt width=\"500\" height=\"282\"><\/p>\n<p>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.<\/p>\n<p>Generally, the test framework expects to run tests in a separate superflat world.<\/p>\n<h4>Test Instances<\/h4>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sickgaming.net\/blog\/wp-content\/uploads\/2025\/12\/java-edition-1-21-5-10.png\" alt width=\"500\" height=\"281\"><\/p>\n<p>Test instances are defined in the registry&nbsp;<span class=\"MC_Effect_TextHighlightA\">test_instance<\/span>. They&#8217;re small assets defining a test to run.<\/p>\n<p>Fields:<\/p>\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">environment<\/span>: Namespaced ID of the test environment to run this test as part of<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">structure<\/span>: The namespaced ID of the structure to use for the test<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">max_ticks<\/span>: A positive integer representing the maximum number of ticks allowed to pass before the test is considered timed out<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">setup_ticks<\/span>: Optional non-negative integer (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>) representing a number of ticks to wait after placing the structure before starting the test<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">required<\/span>: Optional boolean (default&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>) &#8211; whether the test is considered required to pass for the full test suite to pass<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">rotation<\/span>: Optional rotation to apply to the test structure\n<ul>\n<li>One of&nbsp;<span class=\"MC_Effect_TextHighlightA\">none<\/span>&nbsp;(default),&nbsp;<span class=\"MC_Effect_TextHighlightA\">clockwise_90<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">180<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">counterclockwise_90<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">manual_only<\/span>: Optional boolean (default&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>), set to&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>&nbsp;for tests that are not included as part of automated test runs<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">sky_access<\/span>: Whether the test needs clear access to the sky\n<ul>\n<li>By default (<span class=\"MC_Effect_TextHighlightA\">false<\/span>), tests are enclosed in barrier blocks &#8211; if set to&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>, the top is left open<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">max_attempts<\/span>: Number of attempts to run the test (default&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>)<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">required_successes<\/span>: Number of attempts that must succeed for the test to be considered successful (default&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>)<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">type<\/span>: The type of test &#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">block_based<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">function<\/span><\/li>\n<\/ul>\n<h5>Function Tests<\/h5>\n<p>Function tests rely on built-in functions to run a test and indicate success or failure. They have one additional field:<\/p>\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">function<\/span>: The namespaced ID of the Test Function to run<\/li>\n<\/ul>\n<p>See the &#8220;Using the Game Test Framework from Code&#8221; changelog section for more information.<\/p>\n<h5>Block Based Tests<\/h5>\n<p>Block based tests use Test Blocks in the test structure to run the test and indicate success or failure.<\/p>\n<h4>Test Environments<\/h4>\n<p>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&nbsp;<span class=\"MC_Effect_TextHighlightA\">test_environment<\/span>&nbsp;registry. Each Test Environment definition has a&nbsp;<span class=\"MC_Effect_TextHighlightA\">type<\/span>&nbsp;field that determines its setup:<\/p>\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">all_of<\/span>&nbsp;definitions apply the setup from several sub-definitions in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">definitions<\/span>&nbsp;field<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">function<\/span>&nbsp;definitions use mcfunction files as setup and teardown\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">setup<\/span>: Optional namespaced ID of the mcfunction to use for setup, if any<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">teardown<\/span>: Optional namespaced ID of the mcfunction to use for teardown, if any<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">game_rules<\/span>: definitions set any number of game rules\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">bool_rules<\/span>: A list of boolean game rules to set and the value to set<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">int_rules<\/span>: A list of integer game rules to set and the value to set<\/li>\n<li>Each rule is an object with two fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">rule<\/span>: The exact name of the rule to set<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">value<\/span>: The value to set<\/li>\n<\/ul>\n<\/li>\n<li>Game rules are reset to their default values after the test environment has completed<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">weather<\/span>&nbsp;definitions sets the weather state\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">weather<\/span>: The weather to set &#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">clear<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">rain<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">thunder<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">time_of_day<\/span>&nbsp;definitions set a given time of day\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">time<\/span>: The time of day to set in number of ticks, as a non-negative integer<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>The game provides a single, empty Test Environment by default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:default<\/span>.<\/p>\n<h4>Test Blocks<\/h4>\n<p>The Test Block is a block used for implementing a block-based tests. It has four modes:<\/p>\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">start<\/span>: Triggers a redstone pulse when the test starts<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">log<\/span>: Logs a message to the log file when powered by redstone<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">fail<\/span>: Fails the test when powered by redstone<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">accept<\/span>: Completes the test when powered by redstone<\/li>\n<\/ul>\n<p>Block-based tests are required to have at least one&nbsp;<span class=\"MC_Effect_TextHighlightA\">start<\/span>&nbsp;block and one&nbsp;<span class=\"MC_Effect_TextHighlightA\">accept<\/span>&nbsp;block in the structure.<\/p>\n<h4>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">test<\/span>&nbsp;Command<\/h4>\n<p>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">test<\/span>&nbsp;command is a new command used to create and run tests.<\/p>\n<p>Syntax:<\/p>\n<pre><code>test clearall [&lt;radius&gt;]\ntest clearthat\ntest clearthese test create &lt;test&gt; [&lt;width&gt;] [&lt;height&gt; &lt;depth&gt;] test locate &lt;selector&gt; test resetclosest\ntest reseetthese\ntest resetthat test pos [&lt;variable&gt;] test run &lt;selector&gt; [&lt;numberOfTimes&gt;] [&lt;untilFailed&gt;] [&lt;rotationSteps&gt;] [&lt;testsPerRow&gt;]\ntest runclosest [&lt;numberOfTimes&gt;] [&lt;untilFailed&gt;]\ntest runfailed [&lt;numberOfTimes&gt;] [&lt;untilFailed&gt;] [&lt;rotationSteps&gt;] [&lt;testsPerRow&gt;]\ntest runmultiple &lt;selector&gt; [&lt;amount&gt;]\ntest runthat [&lt;numberOfTimes&gt;] [&lt;untilFailed&gt;]\ntest runthese [&lt;numberOfTimes&gt;] [&lt;untilFailed&gt;] test stop test verify &lt;tests&gt;\n<\/code><\/pre>\n<p>Parameters:<\/p>\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">radius<\/span>: The radius to clear tests within<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">test<\/span>: The namespaced ID of a test<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">selector<\/span>: A wildcard-enabled selector for test IDs\n<ul>\n<li>Supports&nbsp;<span class=\"MC_Effect_TextHighlightA\">*<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">?<\/span>&nbsp;for matching namespaced IDs<\/li>\n<li>If namespace is not supplied, defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft<\/span><\/li>\n<li>Examples:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">*:*<\/span>&nbsp;&#8211; matches all IDs<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">*<\/span>&nbsp;&#8211; matches everything in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft<\/span>&nbsp;namespace<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">custom:folder\/*_test_?<\/span>&nbsp;&#8211; matches IDs in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">folder<\/span>&nbsp;folder of the&nbsp;<span class=\"MC_Effect_TextHighlightA\">custom<\/span>&nbsp;namespace, with a prefix followed by&nbsp;<span class=\"MC_Effect_TextHighlightA\">_test_<\/span>&nbsp;followed by a single valid character<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">width<\/span>: The width of the test structure &#8211; if omitted,&nbsp;<span class=\"MC_Effect_TextHighlightA\">5<\/span>&nbsp;is used<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">height<\/span>: The height of the test structure &#8211; if omitted, the width is used<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">depth<\/span>: The depth of the test structure &#8211; if omitted, the width is used<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">variable<\/span>: The variable name to include in the copied code snippet<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">numberOfTimes<\/span>: The number of times to repeat each test &#8211; if omitted,&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>&nbsp;is ued<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">untilFailed<\/span>: Boolean (default&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>) noting that the test should be stopped as soon as one iteration fails<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">rotationSteps<\/span>: Number of extra 90 degree steps to apply to the test &#8211; if omitted,&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;is used<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">testsPerRow<\/span>: Number of tests to place per row in a grid layout &#8211; if omitted,&nbsp;<span class=\"MC_Effect_TextHighlightA\">8<\/span>&nbsp;is used<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">test clear*<\/span><\/h5>\n<p>These subcommands clear the structures and blocks associated with the selected tests.<\/p>\n<h5><span class=\"MC_Effect_TextHighlightA\">test create<\/span><\/h5>\n<p>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.<\/p>\n<h5><span class=\"MC_Effect_TextHighlightA\">test locate<\/span><\/h5>\n<p>Attempts to locate the given test. Note that only loaded chunks are searched.<\/p>\n<h5><span class=\"MC_Effect_TextHighlightA\">test reset*<\/span><\/h5>\n<p>These subcommands reset the structures for the selected tests, removing any surrounding barriers and placing the structure in from scratch.<\/p>\n<h5><span class=\"MC_Effect_TextHighlightA\">test pos<\/span><\/h5>\n<p>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.<\/p>\n<h5><span class=\"MC_Effect_TextHighlightA\">test run*<\/span><\/h5>\n<p>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.<\/p>\n<p>For each test, loads the given structure and runs the associated test. Each test location will have a beacon beam showcasing the test status.<\/p>\n<ul>\n<li>Gray beacon = in progress<\/li>\n<li>Red = fail (required test)<\/li>\n<li>Orange = fail (optional test)<\/li>\n<li>Green = success<\/li>\n<\/ul>\n<p>If a test fails, the error is shown on a lectern book and an overlay.<\/p>\n<p>Note that Game Tests are designed to run on standard superflat worlds. The area around each test is replaced with stone when it runs, and the running test is encased in barrier blocks.<\/p>\n<h5><span class=\"MC_Effect_TextHighlightA\">test stop<\/span><\/h5>\n<p>This stops all running tests. Note that gameplay events triggered by tests may still remain.<\/p>\n<h5><span class=\"MC_Effect_TextHighlightA\">test verify*<\/span><\/h5>\n<p>Verifies one or more tests by running multiple instances of the same test.<\/p>\n<h4>Test Instance Blocks<\/h4>\n<p>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.<\/p>\n<p>Using the&nbsp;<span class=\"MC_Effect_TextHighlightA\">test<\/span>&nbsp;command to run or create a test will also place a Test Instance Block to control that test.<\/p>\n<h4>Using the Game Test Framework from Code<\/h4>\n<p>The Game Test Framework can also be used from code in a more versatile manner than block-based tests. For this to work, you need to mod the game to add your test functions to the&nbsp;<span class=\"MC_Effect_TextHighlightA\">test_function<\/span>&nbsp;registry (<span class=\"MC_Effect_TextHighlightA\">Registries.TEST_FUNCTION<\/span>).<\/p>\n<p>Hook into some startup method (pre-registry bootstrap) to add your loader &#8211; call&nbsp;<span class=\"MC_Effect_TextHighlightA\">TestFunctionLoader.registerLoader()<\/span>&nbsp;with an implementation of&nbsp;<span class=\"MC_Effect_TextHighlightA\">TestFunctionLoader<\/span>. Your implementation can then use the provided&nbsp;<span class=\"MC_Effect_TextHighlightA\">register<\/span>&nbsp;consumer to register test functions with their namespaced IDs. This namespaced ID can then be referenced in a&nbsp;<span class=\"MC_Effect_TextHighlightA\">function<\/span>&nbsp;type Test Instance.<\/p>\n<p>A test function is a&nbsp;<span class=\"MC_Effect_TextHighlightA\">Consumer&lt;GameTestHelper&gt;<\/span>, using that&nbsp;<span class=\"MC_Effect_TextHighlightA\">GameTestHelper<\/span>&nbsp;instance to manipulate the world and make assertions about the state of the resulting world.<\/p>\n<p>The helper can be used to summon mobs, set blocks, query for blocks and entities and assert the state of the test. Most&nbsp;<span class=\"MC_Effect_TextHighlightA\">GameTestHelper<\/span>&nbsp;methods take test-local coordinates, which you can also find using&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/test pos<\/span>.<\/p>\n<p>Example code that might go along with a test structure with a locked hopper containing a Cod, pointed into a Furnace:<\/p>\n<pre><code>public void furnaceSmeltsItem(final GameTestHelper helper) { helper.setBlock(0, 4, 0, Blocks.AIR); helper.succeedWhen(() -&gt; helper.assertContainerContainsSingle(new BlockPos(0, 0, 0), Items.COOKED_COD));\n}\n<\/code><\/pre>\n<p>More complicated setups will often use&nbsp;<span class=\"MC_Effect_TextHighlightA\">helper.startSequence()<\/span>&nbsp;to model sequences of events that must happen.<\/p>\n<p>As opposed to block-based tests, function tests failing will often produce more helpful error messages including the location of whatever failed and what was expected at that location.<\/p>\n<h3>Game Rules<\/h3>\n<h4><span class=\"MC_Effect_TextHighlightA\">allowFireTicksAwayFromPlayer<\/span><\/h4>\n<ul>\n<li>When&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>, fire and lava can spread fire outside the 8 chunk range of a player<\/li>\n<li>Note: the fire and lava blocks must still be in simulation distance to spread<\/li>\n<li>Default value:&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span><\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">tntExplodes<\/span><\/h4>\n<ul>\n<li>When&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>, TNT will not explode and cannot be ignited<\/li>\n<li>Default value:&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span><\/li>\n<\/ul>\n<h3>Uniform Variant Selection<\/h3>\n<ul>\n<li>Variants that have spawn rules now use a uniform approach for selection<\/li>\n<li>Selection process:\n<ul>\n<li>Every variant has a field&nbsp;<span class=\"MC_Effect_TextHighlightA\">spawn_conditions<\/span>&nbsp;that contains a list of entries<\/li>\n<li>Every entry has a condition and an integer priority<\/li>\n<li>Conditions for all variants for given entity type are evaluated for the position that entity is being spawned<\/li>\n<li>Entries with a priority lower than the maximum priority of remaining entries are removed<\/li>\n<li>The game randomly picks one entry out of the remaining ones<\/li>\n<li>If no conditions are remaining, the variant remains unchanged from default for that entity<\/li>\n<\/ul>\n<\/li>\n<li>Entry format:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">priority<\/span>&nbsp;&#8211; integer<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">condition<\/span>&nbsp;&#8211; optional structure\n<ul>\n<li>Fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">type<\/span>&nbsp;&#8211; see below for values<\/li>\n<li>Additional fields are dependent on&nbsp;<span class=\"MC_Effect_TextHighlightA\">type<\/span><\/li>\n<\/ul>\n<\/li>\n<li>If this field is not present, the condition is always true<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Spawn Conditions<\/h4>\n<h5><span class=\"MC_Effect_TextHighlightA\">minecraft:biome<\/span><\/h5>\n<ul>\n<li>Checks if entity is spawning in specific biomes<\/li>\n<li>Fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">biomes<\/span>&nbsp;&#8211; single entry, list or a tag describing biomes<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">minecraft:moon_brightness<\/span><\/h5>\n<ul>\n<li>Checks if the current moon brightness is within a certain range<\/li>\n<li>Fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">range<\/span>&nbsp;&#8211; floating point range (a single number or an object like&nbsp;<span class=\"MC_Effect_TextHighlightA\">{&#8220;min&#8221;: 1, &#8220;max&#8221;: 2}<\/span>)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">minecraft:structures<\/span><\/h5>\n<ul>\n<li>Checks if the entity is spawning in specific structures<\/li>\n<li>Fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">structures<\/span>&nbsp;&#8211; single entry, list or a tag describing structures<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Data-driven Mob Variants<\/h3>\n<h4>Wolf Variants<\/h4>\n<ul>\n<li>The fields&nbsp;<span class=\"MC_Effect_TextHighlightA\">angry_texture<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">tame_texture<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">wild_texture<\/span>&nbsp;have been grouped in an&nbsp;<span class=\"MC_Effect_TextHighlightA\">assets<\/span>&nbsp;field, and renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">angry<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">tame<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">wild<\/span><\/li>\n<li>Added field&nbsp;<span class=\"MC_Effect_TextHighlightA\">spawn_conditions<\/span>&nbsp;described in uniform variant selection above<\/li>\n<\/ul>\n<h4>Pig Variants<\/h4>\n<ul>\n<li>Pig variants can be data-driven by adding entries to&nbsp;<span class=\"MC_Effect_TextHighlightA\">data\/&lt;namespace&gt;\/pig_variant\/&lt;id&gt;.json<\/span><\/li>\n<li>This feature is experimental<\/li>\n<li>Fields in file:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">model<\/span>&nbsp;&#8211; one of:&nbsp;<span class=\"MC_Effect_TextHighlightA\">normal<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">cold<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">asset_id<\/span>&nbsp;&#8211; namespaced id for this variant asset, resolves to&nbsp;<span class=\"MC_Effect_TextHighlightA\">assets\/&lt;namespace&gt;\/textures\/&lt;path&gt;.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">spawn_conditions<\/span>&nbsp;&#8211; field described in uniform variant selection above<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Cat Variants<\/h4>\n<ul>\n<li>Cat variants can be data-driven by adding entries to&nbsp;<span class=\"MC_Effect_TextHighlightA\">data\/&lt;namespace&gt;\/cat_variant\/&lt;id&gt;.json<\/span><\/li>\n<li>This feature is experimental<\/li>\n<li>Fields in file:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">asset_id<\/span>&nbsp;&#8211; namespaced id for this variant asset, resolves to&nbsp;<span class=\"MC_Effect_TextHighlightA\">assets\/&lt;namespace&gt;\/textures\/&lt;path&gt;.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">spawn_conditions<\/span>&nbsp;&#8211; field described in uniform variant selection above<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Frog Variants<\/h4>\n<ul>\n<li>Frog variants can be data-driven by adding entries to&nbsp;<span class=\"MC_Effect_TextHighlightA\">data\/&lt;namespace&gt;\/frog_variant\/&lt;id&gt;.json<\/span><\/li>\n<li>This feature is experimental<\/li>\n<li>Fields in file:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">asset_id<\/span>&nbsp;&#8211; namespaced id for this variant asset, resolves to&nbsp;<span class=\"MC_Effect_TextHighlightA\">assets\/&lt;namespace&gt;\/textures\/&lt;path&gt;.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">spawn_conditions<\/span>&nbsp;&#8211; field described in uniform variant selection above<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Cow Variants<\/h4>\n<ul>\n<li>Cow variants can be data-driven by adding entries to&nbsp;<span class=\"MC_Effect_TextHighlightA\">data\/&lt;namespace&gt;\/cow_variant\/&lt;id&gt;.json<\/span><\/li>\n<li>This feature is experimental<\/li>\n<li>Fields in file:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">model<\/span>&nbsp;&#8211; one of:&nbsp;<span class=\"MC_Effect_TextHighlightA\">normal<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">cold<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">warm<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">asset_id<\/span>&nbsp;&#8211; namespaced id for this variant asset, resolves to&nbsp;<span class=\"MC_Effect_TextHighlightA\">assets\/&lt;namespace&gt;\/textures\/&lt;path&gt;.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">spawn_conditions<\/span>&nbsp;&#8211; field described in uniform variant selection above<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Chicken Variants<\/h4>\n<ul>\n<li>Chicken variants can be data-driven by adding entries to&nbsp;<span class=\"MC_Effect_TextHighlightA\">data\/&lt;namespace&gt;\/chicken_variant\/&lt;id&gt;.json<\/span><\/li>\n<li>This feature is experimental<\/li>\n<li>Fields in file:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">model<\/span>&nbsp;&#8211; one of:&nbsp;<span class=\"MC_Effect_TextHighlightA\">normal<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">cold<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">asset_id<\/span>&nbsp;&#8211; namespaced id for this variant asset, resolves to&nbsp;<span class=\"MC_Effect_TextHighlightA\">assets\/&lt;namespace&gt;\/textures\/&lt;path&gt;.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">spawn_conditions<\/span>&nbsp;&#8211; field described in uniform variant selection above<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Wolf Sound Variants<\/h4>\n<ul>\n<li>Wolf sound variants can be data-driven by adding entries to&nbsp;<span class=\"MC_Effect_TextHighlightA\">data\/&lt;namespace&gt;\/wolf_sound_variant\/&lt;id&gt;.json<\/span><\/li>\n<li>The file contains the following fields which correspond to sound events to use for the specific behaviour:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">ambient_sound<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">death_sound<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">growl_sound<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">hurt_sound<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">pant_sound<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">whine_sound<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Commands<\/h3>\n<ul>\n<li>SNBT literals now accept heterogeneous lists<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\/data<\/span>&nbsp;can now create and modify heterogeneous lists transparently<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/setblock<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/fill<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/clone<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/place<\/span>&nbsp;commands now support a &#8220;strict&#8221; placement mode<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\/setblock<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/fill<\/span>&nbsp;have updated handling of block entities<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">horse.saddle<\/span>&nbsp;item slot has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">saddle<\/span>, and now supports any entity that can equip a Saddle<\/li>\n<li>Text Components in commands such as&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/tellraw<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/title<\/span>&nbsp;are now specified with SNBT instead of JSON<\/li>\n<li>Text Style in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/scoreboard<\/span>&nbsp;command when specifying the&nbsp;<span class=\"MC_Effect_TextHighlightA\">styled<\/span>&nbsp;number format is also now specified with SNBT instead of JSON<\/li>\n<li>Text Component arguments in&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/bossbar<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/scoreboard<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/team<\/span>&nbsp;commands are now resolved before use (in the context of entity the held in&nbsp;<span class=\"MC_Effect_TextHighlightA\">@s<\/span>)<\/li>\n<\/ul>\n<h4>Changes to&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/setblock<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/fill<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/clone<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/place<\/span><\/h4>\n<ul>\n<li>The behavior of&nbsp;<span class=\"MC_Effect_TextHighlightA\">setblock<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">fill<\/span>&nbsp;commands have changed in how they handle block entity data:\n<ul>\n<li>If the block entity data is not specified, and the existing block has data, the block entity data will be preserved<\/li>\n<li>If the block entity data is specified, the block entity data will be set to that specified value<\/li>\n<li>To clear block entity data explicitly, you must now specify the block entity data as&nbsp;<span class=\"MC_Effect_TextHighlightA\">{}<\/span><\/li>\n<li>The operation is now successful if either the block state changed or the block entity data changed<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">fill<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">clone<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">setblock<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">place template<\/span>&nbsp;accept a new option:&nbsp;<span class=\"MC_Effect_TextHighlightA\">strict<\/span>\n<ul>\n<li>If specified, the command will place blocks as-is without triggering block updates or shape updates<\/li>\n<\/ul>\n<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">replace<\/span>&nbsp;option in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">fill<\/span>&nbsp;command is no longer terminal, and can be followed with additional options<\/li>\n<li>New syntax for commands to use the new&nbsp;<span class=\"MC_Effect_TextHighlightA\">strict<\/span>&nbsp;option, and more flexible use of&nbsp;<span class=\"MC_Effect_TextHighlightA\">replace<\/span>:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">fill &lt;from&gt; &lt;to&gt; &lt;block&gt; keep<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">fill &lt;from&gt; &lt;to&gt; &lt;block&gt; [replace &lt;filter&gt;]? [strict|destroy|hollow|outline]?<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">clone [from &lt;sourceDimension&gt;]? &lt;begin&gt; &lt;end&gt; [to &lt;targetDimension&gt;]? &lt;destination&gt; [strict]? [[replace|masked|filtered &lt;filter&gt;] [force|move|normal]?]?<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">setblock &lt;pos&gt; &lt;block&gt; [destroy|keep|replace|strict]?<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">place template &lt;template&gt; [&lt;pos&gt; [&lt;rotation&gt; [&lt;mirror&gt; [&lt;integrity&gt; [&lt;seed&gt; [strict]?]?]?]?]?]?<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>NBT Changes<\/h3>\n<ul>\n<li>Any interface with NBT data within the game (SNBT representation,&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/data<\/span>) now supports heterogeneous lists, i.e. ones where elements are not of the same type\n<ul>\n<li>Inserting or replacing into a list of a different type with&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/data<\/span>&nbsp;will no longer give an error<\/li>\n<li>Inserting into an array type (e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">[I;1,2,3]<\/span>) is still type-restricted<\/li>\n<li>This means that the &#8220;wrapper&#8221; objects previously used to represent heterogeneous lists will no longer be observable by in-game means<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\/data<\/span>&nbsp;can no longer traverse paths with an empty key (e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/data get &#8230; foo.&#8221;.bar<\/span>)<\/li>\n<li>The NBT file format is unchanged:\n<ul>\n<li>Heterogeneous lists are transformed before storage to bypass NBT constraints<\/li>\n<li>Example transform:&nbsp;<span class=\"MC_Effect_TextHighlightA\">[&#8216;a&#8217;, {&#8216;b&#8217;:3}]<\/span>&nbsp;is stored as&nbsp;<span class=\"MC_Effect_TextHighlightA\">[{&#8221;:&#8217;a&#8217;},{&#8216;b&#8217;:3}]<\/span><\/li>\n<li>Existing external tools will still be able to read NBT files as before, but heterogeneous lists will be displayed in the transformed form<\/li>\n<\/ul>\n<\/li>\n<li>No data produced by the game has changed: objects such as Text Components were already producing heterogeneous lists in this form<\/li>\n<li>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<\/li>\n<\/ul>\n<h3>SNBT Changes<\/h3>\n<ul>\n<li>The text format for describing object-like data in commands (like NBT, text components, predicates, etc.) has been extended<\/li>\n<li>To simplify input of data and macro use, SNBT now also supports following operations:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">bool(arg)<\/span>&nbsp;&#8211; converts argument to boolean\n<ul>\n<li>if argument is a boolean value, returns value directly<\/li>\n<li>if argument is a number value, returns&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>&nbsp;if it is non-zero<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">uuid(str)<\/span>&nbsp;&#8211; converts string representation of UUID to integer array<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Number Format<\/h4>\n<ul>\n<li>Either whole or fraction parts of a float number can be omitted\n<ul>\n<li>Examples:&nbsp;<span class=\"MC_Effect_TextHighlightA\">.1<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">1.<\/span>&nbsp;are valid now<\/li>\n<\/ul>\n<\/li>\n<li>Float numbers now use E notation\n<ul>\n<li>Example: both&nbsp;<span class=\"MC_Effect_TextHighlightA\">1.2e3<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">1.2E3<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">1.2E+3<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">12000e-1<\/span>&nbsp;are now a valid way to represent&nbsp;<span class=\"MC_Effect_TextHighlightA\">1200.0<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Integer numbers can now be prefixed with&nbsp;<span class=\"MC_Effect_TextHighlightA\">0x<\/span>&nbsp;to represent hexadecimal numbers and&nbsp;<span class=\"MC_Effect_TextHighlightA\">0b<\/span>&nbsp;to represent binary numbers\n<ul>\n<li>Example:&nbsp;<span class=\"MC_Effect_TextHighlightA\">0xbad<\/span>&nbsp;(equal to&nbsp;<span class=\"MC_Effect_TextHighlightA\">2989<\/span>),&nbsp;<span class=\"MC_Effect_TextHighlightA\">0xCAFE<\/span>&nbsp;(equal to&nbsp;<span class=\"MC_Effect_TextHighlightA\">51966<\/span>),&nbsp;<span class=\"MC_Effect_TextHighlightA\">0b101<\/span>&nbsp;(equal to&nbsp;<span class=\"MC_Effect_TextHighlightA\">5<\/span>)<\/li>\n<\/ul>\n<\/li>\n<li>Non-zero integer numbers now can&#8217;t start with&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>\n<ul>\n<li>Normally it would mean number is in base-8, but we are restricting it to avoid accidental use<\/li>\n<\/ul>\n<\/li>\n<li>Numbers can now contain&nbsp;<span class=\"MC_Effect_TextHighlightA\">_<\/span>&nbsp;character between sequences of digits (but not at the start or the end of sequence)\n<ul>\n<li>Example:&nbsp;<span class=\"MC_Effect_TextHighlightA\">0b10_01<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">0xAB_CD<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">1_2.3_4__5f<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">1_2e3_4<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">NaN<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">Inf<\/span>&nbsp;or hexadecimal float representation are NOT supported<\/li>\n<li>Implicit infinite float values (like&nbsp;<span class=\"MC_Effect_TextHighlightA\">1e1000<\/span>) are rejected<\/li>\n<li>Type suffixes have been extended:\n<ul>\n<li>Integer type suffixes (<span class=\"MC_Effect_TextHighlightA\">b<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">B<\/span>&nbsp;&#8211; byte,&nbsp;<span class=\"MC_Effect_TextHighlightA\">s<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">S<\/span>&nbsp;&#8211; short,&nbsp;<span class=\"MC_Effect_TextHighlightA\">i<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">I<\/span>&nbsp;&#8211; integer,&nbsp;<span class=\"MC_Effect_TextHighlightA\">l<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">L<\/span>&nbsp;&#8211; long) can now be prefixed with&nbsp;<span class=\"MC_Effect_TextHighlightA\">s<\/span>&nbsp;(signed) or&nbsp;<span class=\"MC_Effect_TextHighlightA\">u<\/span>&nbsp;unsigned<\/li>\n<li>New suffixes only affect the valid range when parsing &#8211; values are still stored as signed\n<ul>\n<li>Example:&nbsp;<span class=\"MC_Effect_TextHighlightA\">240ub<\/span>&nbsp;is equal to&nbsp;<span class=\"MC_Effect_TextHighlightA\">-16sb<\/span>, while&nbsp;<span class=\"MC_Effect_TextHighlightA\">240sb<\/span>&nbsp;does not parse<\/li>\n<\/ul>\n<\/li>\n<li>When a suffix is used without&nbsp;<span class=\"MC_Effect_TextHighlightA\">u<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">s<\/span>, it defaults to signed for decimal numbers and unsigned for binary and hexadecimal numbers<\/li>\n<li>Note: since&nbsp;<span class=\"MC_Effect_TextHighlightA\">b<\/span>&nbsp;is also a valid hexadecimal digit, byte sized hexadecimal values can only be written with a signed suffix, like&nbsp;<span class=\"MC_Effect_TextHighlightA\">0x11ub<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">0x11sb<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Strings<\/h4>\n<ul>\n<li>Quoted strings can now use escape sequences beyond&nbsp;<span class=\"MC_Effect_TextHighlightA\">&#8216;<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">&#8220;<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\<\/span>:\n<ul>\n<li>Unicode escapes:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">\\x<\/span>&nbsp;&#8211; two digit escape, like&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\x42<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\\u<\/span>&nbsp;&#8211; four digit escape, like&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\u2603<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\\U<\/span>&nbsp;&#8211; eight digit escape, like&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\U00002603<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\\N{&lt;name&gt;}<\/span>&nbsp;&#8211; named Unicode character, like&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\N{Snowman}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Built-in escape sequences:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">\\b<\/span>&nbsp;&#8211; backspace, Unicode&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\x08<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\\s<\/span>&nbsp;&#8211; space, Unicode&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\x20<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\\t<\/span>&nbsp;&#8211; horizontal tab, Unicode&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\x09<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\\n<\/span>&nbsp;&#8211; linefeed, Unicode&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\u0a<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\\f<\/span>&nbsp;&#8211; form feed, Unicode&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\u0c<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">\\r<\/span>&nbsp;&#8211; carriage return, Unicode&nbsp;<span class=\"MC_Effect_TextHighlightA\">\\u0d<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>Unquoted strings now can&#8217;t start with&nbsp;<span class=\"MC_Effect_TextHighlightA\">0-9<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">.<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">+<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">&#8211;<\/span>&nbsp;to avoid accidental collision with numbers<\/li>\n<\/ul>\n<h4>Number Arrays<\/h4>\n<ul>\n<li>\n<p>Values in arrays (<span class=\"MC_Effect_TextHighlightA\">[B;]<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">[I;]<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">[L;]<\/span>) without a suffix are now assumed to have suffix matching the type of the array<\/p>\n<ul>\n<li>Example:&nbsp;<span class=\"MC_Effect_TextHighlightA\">[B;1,2]<\/span>&nbsp;is equivalent to&nbsp;<span class=\"MC_Effect_TextHighlightA\">[B; 1b, 2b]<\/span><\/li>\n<\/ul>\n<\/li>\n<li>\n<p>Arrays can now also accept types smaller than the array type<\/p>\n<ul>\n<li>Example:&nbsp;<span class=\"MC_Effect_TextHighlightA\">[I;1b,2s,3]<\/span>&nbsp;is valid and equivalent to&nbsp;<span class=\"MC_Effect_TextHighlightA\">[I;1i,2i,3i]<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Lists<\/h4>\n<ul>\n<li>Lists now accept trailing commas\n<ul>\n<li>Example:&nbsp;<span class=\"MC_Effect_TextHighlightA\">[1,2,]<\/span>&nbsp;is valid and equivalent to&nbsp;<span class=\"MC_Effect_TextHighlightA\">[1,2]<\/span><\/li>\n<li>Only one trailing comma is allowed, and it must come after a valid element &#8211; both&nbsp;<span class=\"MC_Effect_TextHighlightA\">[,]<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">[1,,]<\/span>&nbsp;are invalid<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Compounds<\/h4>\n<ul>\n<li>Compounds (maps) now accept trailing commas\n<ul>\n<li>Example:&nbsp;<span class=\"MC_Effect_TextHighlightA\">{a:b,}<\/span><\/li>\n<li>Only one trailing comma is allowed, and it must come after a valid key-value pair &#8211; both&nbsp;<span class=\"MC_Effect_TextHighlightA\">{,}<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">{a:b,,}<\/span>&nbsp;are invalid<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Text Component Data Format<\/h3>\n<ul>\n<li>Text Components are no longer stored as JSON wrapped by a string<\/li>\n<li>The format itself is the same as before, but inlined directly into the outer structure\n<ul>\n<li>For example, the item component&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:custom_name=&#8221;{&#8220;text&#8221;:&#8221;Renamed item&#8221;}&#8221;<\/span>&nbsp;will become&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:custom_name={text:&#8217;Renamed item&#8217;}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>This includes Text Components passed as arguments to commands such as&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/tellraw<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/title<\/span>\n<ul>\n<li>For example,&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/tellraw @s {&#8220;text&#8221;:&#8221;Hello world&#8221;}<\/span>&nbsp;may become&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/tellraw @s {text:&#8217;Hello world&#8217;}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Note: in the case where Text Components are embedded in NBT, no distinction exists between boolean and integer types\n<ul>\n<li>To pass boolean arguments to translations, you must use the string form<\/li>\n<\/ul>\n<\/li>\n<li>For Text Components with the&nbsp;<span class=\"MC_Effect_TextHighlightA\">nbt<\/span>&nbsp;type and&nbsp;<span class=\"MC_Effect_TextHighlightA\">interpret<\/span>&nbsp;set to&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>, Text Components will be parsed from the given NBT directly rather than converting to a string and parsing as JSON<\/li>\n<li>The format of hover and click events has been updated<\/li>\n<\/ul>\n<h4>Hover Events<\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">hoverEvent<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">hover_event<\/span><\/li>\n<li>The legacy&nbsp;<span class=\"MC_Effect_TextHighlightA\">value<\/span>&nbsp;field (which was parsed from a rendered text component) is no longer supported<\/li>\n<li>For the&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_text<\/span>&nbsp;action:\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">contents<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">value<\/span><\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;show_text&#8217;,contents:&#8217;Hello world&#8217;}<\/span>&nbsp;becomes&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;show_text&#8217;,value:&#8217;Hello world&#8217;}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>For the&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_item<\/span>&nbsp;action:\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">contents<\/span>&nbsp;field has been inlined<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;show_item&#8217;,contents:{id:&#8217;minecraft:stick&#8217;,count:2}}<\/span>&nbsp;becomes&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;show_item&#8217;,id:&#8217;minecraft:stick&#8217;,count:2}<\/span><\/li>\n<li>If contents was specified only as an item id, it is replaced with the full format and inlined<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;show_item&#8217;,contents:&#8217;minecraft:stick&#8217;}<\/span>&nbsp;becomes&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;show_item&#8217;,id:&#8217;minecraft:stick&#8217;}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>For the&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_entity<\/span>&nbsp;action:\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">contents<\/span>&nbsp;field has been inlined<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">id<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">uuid<\/span><\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">type<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">id<\/span><\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;show_entity&#8217;,contents:{id:[I;0,0,0,0],type:&#8217;minecraft:pig&#8217;}}<\/span>&nbsp;becomes&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;show_entity&#8217;,uuid:[I;0,0,0,0],id:&#8217;minecraft:pig&#8217;}<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Click Events<\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">clickEvent<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">click_event<\/span><\/li>\n<li>For the&nbsp;<span class=\"MC_Effect_TextHighlightA\">open_url<\/span>&nbsp;action:\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">value<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">url<\/span><\/li>\n<li>The click event will no longer parse if not a valid URI with either&nbsp;<span class=\"MC_Effect_TextHighlightA\">https:\/\/<\/span>&nbsp;or&nbsp;<span class=\"MC_Effect_TextHighlightA\">http:\/\/<\/span>&nbsp;schemes, instead of simply not working<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;open_url&#8217;,value:&#8217;<a href=\"https:\/\/minecraft.net'\" rel=\"noopener nofollow\" target=\"_blank\">https:\/\/minecraft.net&#8217;<\/a>}<\/span>&nbsp;becomes&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;open_url&#8217;,url:&#8217;<a href=\"https:\/\/minecraft.net'\" rel=\"noopener nofollow\" target=\"_blank\">https:\/\/minecraft.net&#8217;<\/a>}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>For the&nbsp;<span class=\"MC_Effect_TextHighlightA\">run_command<\/span>&nbsp;action:\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">value<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">command<\/span><\/li>\n<li>The click event will no longer parse if the command contains disallowed characters, instead of simply not working<\/li>\n<li>It is no longer required that the specified&nbsp;<span class=\"MC_Effect_TextHighlightA\">command<\/span>&nbsp;field has a&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/<\/span>&nbsp;prefix<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;run_command&#8217;,value:&#8217;\/tp @e @s&#8217;}<\/span>&nbsp;becomes&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;run_command&#8217;,command:&#8217;\/tp @e @s&#8217;}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>For the&nbsp;<span class=\"MC_Effect_TextHighlightA\">suggest_command<\/span>&nbsp;action:\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">value<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">command<\/span><\/li>\n<li>The click event will no longer parse if the command contains disallowed characters, instead of simply not working<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;suggest_command&#8217;,value:&#8217;\/help&#8217;}<\/span>&nbsp;becomes&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;suggest_command&#8217;,command:&#8217;\/help&#8217;}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>For the&nbsp;<span class=\"MC_Effect_TextHighlightA\">change_page<\/span>&nbsp;action:\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">value<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">page<\/span><\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">page<\/span>&nbsp;value now requires a positive integer instead of a string<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;change_page&#8217;,value:&#8217;1&#8242;}<\/span>&nbsp;becomes&nbsp;<span class=\"MC_Effect_TextHighlightA\">{action:&#8217;change_page&#8217;,page:1}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">copy_to_clipboard<\/span>&nbsp;format is unchanged<\/li>\n<\/ul>\n<h3>Entity Data<\/h3>\n<ul>\n<li>Custom data (previously present only on Marker) is now available on all entities\n<ul>\n<li>It&#8217;s exposed as a&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:custom_data<\/span>&nbsp;component, so it can be set by spawning items and matched by predicates<\/li>\n<li>The component is currently stored in a field called&nbsp;<span class=\"MC_Effect_TextHighlightA\">data<\/span>, which will be changed in the future when more proper storage for entity components is introduced<\/li>\n<li>It&#8217;s stored only if it&#8217;s non-empty<\/li>\n<\/ul>\n<\/li>\n<li>Updated and unified formats for storing equipment-related data on entities<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Owner<\/span>&nbsp;field of tamed animals is no longer restricted to referencing Players<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Health<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">Air<\/span>&nbsp;fields now default to their respective maximum value if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Tags<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">FallFlying<\/span>&nbsp;fields will no longer be preserved if removed<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">FallDistance<\/span>&nbsp;field has been changed from float to double and is now called&nbsp;<span class=\"MC_Effect_TextHighlightA\">fall_distance<\/span><\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">SleepingX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">SleepingY<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">SleepingZ<\/span>&nbsp;fields have been collected into a single&nbsp;<span class=\"MC_Effect_TextHighlightA\">sleeping_pos<\/span>&nbsp;field<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">Pos<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">Motion<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">Rotation<\/span>&nbsp;values without the correct number of components (3, 3, and 2 respectively) will now be fully discarded, instead of only selecting the specified components\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">sleeping_pos: [I;1,2,3]<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Block States in the entity data of Arrows, Minecarts, Block Displays, Endermen, Falling Blocks, Primed TNT, or Piston Moving Blocks are no longer allowed to be specified as an empty object<\/li>\n<li>Many tweaks to entity data formats of specific entities<\/li>\n<\/ul>\n<h4>Equipment Data<\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">ArmorItems<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">HandItems<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">body_armor_item<\/span>&nbsp;fields have been merged into an&nbsp;<span class=\"MC_Effect_TextHighlightA\">equipment<\/span>&nbsp;field\n<ul>\n<li>Format: map between equipment slot type and item stack\n<ul>\n<li>Valid equipment slots:&nbsp;<span class=\"MC_Effect_TextHighlightA\">head<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">chest<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">legs<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">feet<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">mainhand<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">offhand<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">body<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">saddle<\/span><\/li>\n<\/ul>\n<\/li>\n<li>If not specified or removed, the entity will have no equipment<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">equipment:{chest:{id:&#8217;minecraft:diamond_chestplate&#8217;}}<\/span><\/li>\n<li>This affects all mobs and Armor Stands<\/li>\n<li>The armor and off-hand equipment of Players is now also stored in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">equipment<\/span>&nbsp;field (although items written into the Inventory using armor and off-hand slot numbers still work)<\/li>\n<\/ul>\n<\/li>\n<li>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&nbsp;<span class=\"MC_Effect_TextHighlightA\">equipment.saddle<\/span>&nbsp;field)\n<ul>\n<li>This is a pure rename from the previous&nbsp;<span class=\"MC_Effect_TextHighlightA\">SaddleItem<\/span>&nbsp;in Horse-like mobs<\/li>\n<li>This also replaces the boolean&nbsp;<span class=\"MC_Effect_TextHighlightA\">Saddle<\/span>&nbsp;flag from Pigs and Striders<\/li>\n<li>The Saddle dropping on death is now affected by the&nbsp;<span class=\"MC_Effect_TextHighlightA\">drop_chances<\/span>&nbsp;field, as with other equipment slots<\/li>\n<\/ul>\n<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">ArmorDropChances<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">HandDropChances<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">body_armor_drop_chance<\/span>&nbsp;fields have been merged into a&nbsp;<span class=\"MC_Effect_TextHighlightA\">drop_chances<\/span>&nbsp;field\n<ul>\n<li>Format: map between equipment slot type and chance value<\/li>\n<li>If not specified or removed, chances will be assumed as default (<span class=\"MC_Effect_TextHighlightA\">0.085f<\/span>)<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">drop_chances:{chest:0.1,feet:1.0}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Drop chances with a default value will no longer be stored, and the&nbsp;<span class=\"MC_Effect_TextHighlightA\">drop_chances<\/span>&nbsp;field is removed entirely if all defaults<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">allay<\/span><\/h4>\n<ul>\n<li>Removed redundant&nbsp;<span class=\"MC_Effect_TextHighlightA\">CanDuplicate<\/span>&nbsp;field (controlled by&nbsp;<span class=\"MC_Effect_TextHighlightA\">DuplicationCooldown<\/span>)<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">area_effect_cloud<\/span><\/h4>\n<ul>\n<li>Area Effect Clouds have a new field:&nbsp;<span class=\"MC_Effect_TextHighlightA\">potion_duration_scale<\/span>&nbsp;(float)\n<ul>\n<li>If not specified, defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1.0<\/span><\/li>\n<li>The duration of the potion effect applied is scaled by this factor<\/li>\n<li>Area Effect Clouds created by Lingering Potions will have a scale of&nbsp;<span class=\"MC_Effect_TextHighlightA\">0.25<\/span><\/li>\n<\/ul>\n<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Duration<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">-1<\/span>&nbsp;if not specified<\/li>\n<li>If the&nbsp;<span class=\"MC_Effect_TextHighlightA\">Duration<\/span>&nbsp;field is&nbsp;<span class=\"MC_Effect_TextHighlightA\">-1<\/span>, the Area Effect Cloud will never run out<\/li>\n<li>This means that an Area Effect Cloud summoned with no duration specified will no longer immediately disappear<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">cat<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">CollarColor<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">14<\/span>&nbsp;(red) if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">creeper<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Fuse<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">30<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">ExplosionRadius<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">3<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">dolphin<\/span><\/h4>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">TreasurePosX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">TreasurePosY<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">TreasurePosZ<\/span>&nbsp;fields<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Moistness<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">2400<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">ender_dragon<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">DragonDeathTime<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">falling_block<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">BlockState<\/span>&nbsp;field can now be&nbsp;<span class=\"MC_Effect_TextHighlightA\">air<\/span>&nbsp;(will despawn immediately) &#8211; if otherwise not specified or invalid, defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">sand<\/span><\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">HurtEntities<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>&nbsp;if not specified (or&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>&nbsp;if&nbsp;<span class=\"MC_Effect_TextHighlightA\">BlockState<\/span>&nbsp;is&nbsp;<span class=\"MC_Effect_TextHighlightA\">anvil<\/span>)<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">FallHurtAmount<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">FallHurtMax<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">40<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">DropItem<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">TileEntityData<\/span>&nbsp;field will no longer be preserved if removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">firework_rocket<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">ShotAtAngle<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">fox<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Trusted<\/span>&nbsp;field now defaults to empty if not specified (and will no longer be merged with the previous state if modified by&nbsp;<span class=\"MC_Effect_TextHighlightA\">\/data<\/span>)<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">ghast<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">ExplosionPower<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">goat<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">HasLeftHorn<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">HasRightHorn<\/span>&nbsp;fields now default to&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">interaction<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">width<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">height<\/span>&nbsp;fields now default to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">item<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Health<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">5<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">PickupDelay<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Age<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Owner<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">Thrower<\/span>&nbsp;fields will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">item_frame<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">glow_item_frame<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">TileX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">TileY<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">TileZ<\/span>&nbsp;fields have been collected into a single&nbsp;<span class=\"MC_Effect_TextHighlightA\">block_pos<\/span>&nbsp;field<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">ItemDropChance<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1.0<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">item<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Owner<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">Thrower<\/span>&nbsp;fields will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">phantom<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Size<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">size<\/span><\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">AX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">AY<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">AZ<\/span>&nbsp;fields have been collected into a single&nbsp;<span class=\"MC_Effect_TextHighlightA\">anchor_pos<\/span>&nbsp;field<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">player<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">SpawnX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">SpawnY<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">SpawnZ<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">SpawnAngle<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">SpawnDimension<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">SpawnForced<\/span>&nbsp;fields have been collected into a single&nbsp;<span class=\"MC_Effect_TextHighlightA\">respawn<\/span>&nbsp;field\n<ul>\n<li>Format: object with fields\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">pos<\/span>&nbsp;&#8211; block position to spawn at<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">angle<\/span>&nbsp;&#8211; float, angle to spawn with (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">0.0<\/span>)<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">dimension<\/span>&nbsp;&#8211; dimension id to spawn in (default&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:overworld<\/span>)<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">forced<\/span>&nbsp;&#8211; boolean, true if this spawn was set through commands (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">enteredNetherPosition<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">entered_nether_pos<\/span>, and is now formatted as a list of doubles\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">entered_nether_pos: [1.0, 2.0, 3.0]<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">primed_tnt<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">fuse<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">80<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">block_state<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">tnt<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">explosion_power<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">4<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">shulker<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Color<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">16<\/span>&nbsp;(no color) if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">shulker_bullet<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Dir<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">Target<\/span>&nbsp;fields will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">skeleton<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">StrayConversionTime<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">spectral_arrow<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Duration<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">200<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">snow_golem<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Pumpkin<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">tnt_minecart<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">fuse<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">80<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">explosion_power<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">4<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">explosion_speed_factor<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">turtle<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">HomePosX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">HomePosY<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">HomePosZ<\/span>&nbsp;fields have been collected into a single&nbsp;<span class=\"MC_Effect_TextHighlightA\">home_pos<\/span>&nbsp;field<\/li>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">TravelPosX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">TravelPosY<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">TravelPosZ<\/span>&nbsp;fields<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">HasEgg<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">has_egg<\/span><\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">trader_llama<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">DespawnDelay<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">47999<\/span><\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">vex<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">LifeTicks<\/span>&nbsp;field has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">life_ticks<\/span><\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">BoundX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">BoundY<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">BoundZ<\/span>&nbsp;fields have been collected into a single&nbsp;<span class=\"MC_Effect_TextHighlightA\">bound_pos<\/span>&nbsp;field<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">villager<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">FoodLevel<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">Xp<\/span>&nbsp;fields now default to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Gossips<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">ConversionTime<\/span>&nbsp;fields will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">wandering_trader<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">DespawnDelay<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">wander_target<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">wolf<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">CollarColor<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">14<\/span>&nbsp;(red) if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">zombie<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">DrownedConversionTime<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">zombie_villager<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Xp<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Gossips<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">ConversionTime<\/span>&nbsp;fields will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">evoker_fangs<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">area_effect_cloud<\/span>, and all projectiles<\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">Owner<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">painting<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">leash_knot<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">TileX<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">TileY<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">TileZ<\/span>&nbsp;fields have been collected into a single&nbsp;<span class=\"MC_Effect_TextHighlightA\">block_pos<\/span>&nbsp;field<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">arrow<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">spectral_arrow<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">trident<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">inBlockState<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">SoundEvent<\/span>&nbsp;fields will no longer be preserved when removed<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">damage<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">2<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">dragon_fireball<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">wind_charge<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">breeze_wind_charge<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">wither_skull<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">small_fireball<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">large_fireball<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">acceleration_power<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0.1<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">small_fireball<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">large_fireball<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">ExplosionPower<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">minecart<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">*_minecart<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">CustomDisplayTile<\/span>&nbsp;field has been removed<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">DisplayState<\/span>&nbsp;will now always override the default displayed block state if specified<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">DisplayOffset<\/span>&nbsp;may now be specified to override the default offset even without a custom display block state set<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">block_display<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">item_display<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">text_display<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">interpolation_duration<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">teleport_duration<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">start_interpolation<\/span>&nbsp;fields now default to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">view_range<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">shadow_radius<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">shadow_strength<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">width<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">height<\/span>&nbsp;fields now default to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">glow_color_override<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">witch<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">ravager<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">pillager<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">illusioner<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">evoker<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">vindicator<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">patrol_target<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h3>Block Entity Data<\/h3>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">CustomName<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">LootTable<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">campfire<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">CookingTimes<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">CookingTotalTimes<\/span>&nbsp;fields will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">chiseled_bookshelf<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">last_interacted_slot<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">-1<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">end_gateway<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">exit_portal<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">furnace<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">smoker<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">blast_furnace<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">RecipesUsed<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">hopper<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">TransferCooldown<\/span>&nbsp;field now default to&nbsp;<span class=\"MC_Effect_TextHighlightA\">-1<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">jigsaw<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">name<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">target<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">pool<\/span>&nbsp;fields now default to&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:empty<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">final_state<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:air<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">sculk_shrieker<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">warning_level<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">skull<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">note_block_sound<\/span>&nbsp;field will no longer be preserved when removed<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">structure_block<\/span><\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">ignoreEntities<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">showboundingbox<\/span>&nbsp;fields now default to&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>&nbsp;if not specified<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">posY<\/span>&nbsp;field now defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>&nbsp;if not specified<\/li>\n<\/ul>\n<h3>Data Components<\/h3>\n<h4>New&nbsp;<span class=\"MC_Effect_TextHighlightA\">weapon<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>When present, the &#8220;Item Used&#8221; statistic will be incremented for each attack with the item<\/li>\n<li>The specified amount of damage will be subtracted from the item&#8217;s durability with each attack<\/li>\n<li>Format: object with fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">item_damage_per_attack<\/span>&nbsp;&#8211; non-negative integer (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>)\n<ul>\n<li>The amount of damage to subtract from the weapon item&#8217;s durability for each attack performed<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">disable_blocking_for_seconds<\/span>&nbsp;&#8211; non-negative float (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>)\n<ul>\n<li>If non-zero, will disable a blocking Shield on successful attack for the specified amount of seconds<\/li>\n<\/ul>\n<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">weapon={item_damage_per_attack:2}<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>New&nbsp;<span class=\"MC_Effect_TextHighlightA\">blocks_attacks<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>When present, this item can be used like a Shield to block attacks to the holding player<\/li>\n<li>Format: object with fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">block_delay_seconds<\/span>&nbsp;&#8211; non-negative float (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">0<\/span>)\n<ul>\n<li>The number of seconds that right-click must be held before successfully blocking attacks<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">disable_cooldown_scale<\/span>&nbsp;&#8211; non-negative float (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>)\n<ul>\n<li>Multiplier applied to the number of seconds that the item will be on cooldown when attacked by a disabling attack (<span class=\"MC_Effect_TextHighlightA\">disable_blocking_for_seconds<\/span>&nbsp;on the&nbsp;<span class=\"MC_Effect_TextHighlightA\">weapon<\/span>&nbsp;component)<\/li>\n<li>If 0, this item can never be disabled by attacks<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">damage_reductions<\/span>&nbsp;&#8211; list of objects with fields (optional)\n<ul>\n<li>Controls how much damage should be blocked in a given attack<\/li>\n<li>If not specified, all damage is blocked<\/li>\n<li>Each entry in the list contributes an amount of damage to be blocked, optionally filtered by damage type<\/li>\n<li>Each entry adds to blocked damage, determined by&nbsp;<span class=\"MC_Effect_TextHighlightA\">clamp(base + factor * dealt_damage, 0, dealt_damage)<\/span><\/li>\n<li>The final damage applied in the attack to the entity is determined by&nbsp;<span class=\"MC_Effect_TextHighlightA\">dealt_damage &#8211; clamp(blocked_damage, 0, dealt_damage)<\/span><\/li>\n<li>Entry format:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">horizontal_blocking_angle<\/span>&nbsp;&#8211; angle in degrees as a positive float (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">90<\/span>)\n<ul>\n<li>The maximum angle between the user&#8217;s facing and the incoming attack for the block to be effective<\/li>\n<li>If the damage has no position, the compared angle will be assumed to be the maximum&nbsp;<span class=\"MC_Effect_TextHighlightA\">180<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">type<\/span>&nbsp;&#8211; damage type id, list of damage type ids, or hash-prefixed damage type tag (optional)\n<ul>\n<li>This entry will only contribute to the blocked damage if the dealt damage type matches this field<\/li>\n<li>If not specified, any damage type will be accepted<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">base<\/span>&nbsp;&#8211; float\n<ul>\n<li>Constant amount of damage to be blocked<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">factor<\/span>&nbsp;&#8211; float\n<ul>\n<li>Fraction of the dealt damage that should be blocked<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">item_damage<\/span>&nbsp;&#8211; object with fields (optional)\n<ul>\n<li>Controls how much damage should be applied to the item from a given attack<\/li>\n<li>If not specified, a point of durability is removed for every point of damage blocked<\/li>\n<li>The final damage applied to the item is determined by:&nbsp;<span class=\"MC_Effect_TextHighlightA\">floor(base + factor * damage_blocked)<\/span><\/li>\n<li>The final value may be negative, causing the item to be repaired<\/li>\n<li>Format:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">threshold<\/span>&nbsp;&#8211; non-negative float\n<ul>\n<li>The minimum amount of damage blocked in the attack before item damage is applied to the item<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">base<\/span>&nbsp;&#8211; float\n<ul>\n<li>Constant amount of damage applied to the item, if&nbsp;<span class=\"MC_Effect_TextHighlightA\">threshold<\/span>&nbsp;is passed<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">factor<\/span>&nbsp;&#8211; float\n<ul>\n<li>Fraction of the blocked damage that should be applied to the item, if&nbsp;<span class=\"MC_Effect_TextHighlightA\">threshold<\/span>&nbsp;is passed<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">bypassed_by<\/span>&nbsp;&#8211; hash-prefixed damage type tag (optional)\n<ul>\n<li>If specified, blocking is bypassed by these damage types<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block_sound<\/span>&nbsp;&#8211; sound event (optional)\n<ul>\n<li>If specified, this sound will be played when an attack is successfully blocked<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">disabled_sound<\/span>&nbsp;&#8211; sound event (optional)\n<ul>\n<li>If specified, this sound will be played when the item goes on its disabled cooldown due to an attack<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>New&nbsp;<span class=\"MC_Effect_TextHighlightA\">potion_duration_scale<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>When present, for items that have the&nbsp;<span class=\"MC_Effect_TextHighlightA\">potion_contents<\/span>&nbsp;component, the duration of the applied effects will be scaled by this factor<\/li>\n<li>This also applies to&nbsp;<span class=\"MC_Effect_TextHighlightA\">custom_effects<\/span>&nbsp;in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">potion_contents<\/span>&nbsp;component, unlike the previous hardcoded scaling factor<\/li>\n<li>If not specified, defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">1.0<\/span><\/li>\n<li>Format: non-negative float\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">potion_duration_scale=0.25<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>New&nbsp;<span class=\"MC_Effect_TextHighlightA\">break_sound<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>When present, this sound will be played when the item runs out of durability and breaks<\/li>\n<li>If not present, no sound will be played on break<\/li>\n<li>This component is present by default on every item type<\/li>\n<li>Format: sound event\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">break_sound=&#8217;item.wolf_armor.break&#8217;<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>New&nbsp;<span class=\"MC_Effect_TextHighlightA\">provides_banner_patterns<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>When present, this item can be placed in the pattern slot of a Loom<\/li>\n<li>Format: hash-prefixed banner pattern tag\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">provides_banner_patterns=&#8217;#minecraft:pattern_item\/globe&#8217;<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>New&nbsp;<span class=\"MC_Effect_TextHighlightA\">provides_trim_material<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>When present, this item will provide the specified trim material when used in a trimming recipe<\/li>\n<li>Note that to be used in the built-in smithing recipes, the item must also be in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">#trim_materials<\/span>&nbsp;tag<\/li>\n<li>As such, the trim material registry definition no longer specifies an item<\/li>\n<li>Format: trim material id\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">provides_trim_material=&#8217;minecraft:iron&#8217;<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">tool<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>Added new optional field:&nbsp;<span class=\"MC_Effect_TextHighlightA\">can_destroy_blocks_in_creative<\/span>&nbsp;(boolean)\n<ul>\n<li>If&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>, players cannot break blocks while holding this tool in Creative Mode<\/li>\n<li>If not specified, defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">equippable<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>Can now apply to&nbsp;<span class=\"MC_Effect_TextHighlightA\">saddle<\/span>&nbsp;slot<\/li>\n<li>Any mob can now have equipment added in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">body<\/span>&nbsp;slot as long as the component allows it (<span class=\"MC_Effect_TextHighlightA\">allowed_entities<\/span>)<\/li>\n<li>Added new optional field:&nbsp;<span class=\"MC_Effect_TextHighlightA\">equip_on_interact<\/span>&nbsp;(boolean)\n<ul>\n<li>If&nbsp;<span class=\"MC_Effect_TextHighlightA\">true<\/span>, 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)<\/li>\n<li>The item will not be equipped if the target already has an item in the relevant slot<\/li>\n<li>If not specified, defaults to&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Updated Tooltip Components<\/h4>\n<ul>\n<li>The way in which tooltips are controlled by components has been reworked<\/li>\n<li>Individual&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;fields, as well as the&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_additional_tooltip<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_tooltip<\/span>&nbsp;components have been replaced by a general&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<li>Filled Maps without any&nbsp;<span class=\"MC_Effect_TextHighlightA\">map_id<\/span>&nbsp;component no longer show an &#8220;Unknown Map&#8221; tooltip (invalid IDs will still produce this tooltip)<\/li>\n<\/ul>\n<h4>New&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;Item Component<\/h4>\n<ul>\n<li>This component allows the tooltips provided specifically by any given item component to be suppressed<\/li>\n<li>This replaces the previous&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;fields,&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_additional_tooltip<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_tooltip<\/span>&nbsp;components<\/li>\n<li>Format: object with fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">hide_tooltip<\/span>&nbsp;&#8211; boolean (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">false<\/span>)\n<ul>\n<li>If true, the item will have no tooltip when hovered<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">hidden_components<\/span>&nbsp;&#8211; list of item component ids (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">[]<\/span>)\n<ul>\n<li>The tooltips provided by any component in this list will be hidden<\/li>\n<li>If that component provides no tooltip, it will have no effect<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h5>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_additional_tooltip<\/span>&nbsp;Item Component<\/h5>\n<ul>\n<li>Replaced by use of the&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component and&nbsp;<span class=\"MC_Effect_TextHighlightA\">hidden_components<\/span>&nbsp;field<\/li>\n<li>The following components previously covered by the&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_additional_tooltip<\/span>&nbsp;component may need to be hidden:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:banner_patterns<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:bees<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:block_entity_data<\/span>\n<ul>\n<li>Specifically, Mob Spawner and Trial Spawner block entity data will display the configured mob<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:block_state<\/span>\n<ul>\n<li>Specifically, the&nbsp;<span class=\"MC_Effect_TextHighlightA\">honey_level<\/span>&nbsp;property will be displayed in the tooltip for any item with this specified<\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:bundle_contents<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:charged_projectiles<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:container<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:container_loot<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:firework_explosion<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:fireworks<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:instrument<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:map_id<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:painting\/variant<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:pot_decorations<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:potion_contents<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:tropical_fish\/pattern<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:written_book_content<\/span><\/li>\n<\/ul>\n<\/li>\n<li>This additionally means that tooltips from the above listed components are no longer restricted to specific item types<\/li>\n<li>Note: for existing items in a world with the&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_additional_tooltip<\/span>&nbsp;component, any of the above listed components also present on the same item will be added to the list to hide in&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span><\/li>\n<\/ul>\n<h5>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_tooltip<\/span>&nbsp;Item Component<\/h5>\n<ul>\n<li>Replaced by use of the&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component and&nbsp;<span class=\"MC_Effect_TextHighlightA\">hide_tooltip<\/span>&nbsp;field<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">attribute_modifiers<\/span>&nbsp;Item Component<\/h5>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;field, replaced by&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<li>This component now always uses its simplified form, with the&nbsp;<span class=\"MC_Effect_TextHighlightA\">modifiers<\/span>&nbsp;field inlined to top-level\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">attribute_modifiers={modifiers:[&#8230;]}<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">attributes_modifiers=[&#8230;]<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">dyed_color<\/span>&nbsp;Item Component<\/h5>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;field, replaced by&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<li>This component now always uses its simplified form, with the&nbsp;<span class=\"MC_Effect_TextHighlightA\">rgb<\/span>&nbsp;field inlined to top-level\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">dyed_color={rgb:12345}<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">dyed_color=12345<\/span><\/li>\n<\/ul>\n<\/li>\n<li>The specified color now supports the RGB array format\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">dyed_color=[0.5, 1.0, 0.2]<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">can_place_on<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">can_break<\/span>&nbsp;Item Components<\/h5>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;field, replaced by&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">predicates<\/span>&nbsp;field has been inlined to top-level, and supports either a single element or list\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">can_place_on={predicates:[{blocks:&#8217;stone&#8217;},{blocks:&#8217;dirt&#8217;}]}<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">can_place_on=[{blocks:&#8217;stone&#8217;},{blocks:&#8217;dirt&#8217;}]<\/span><\/li>\n<li>or:&nbsp;<span class=\"MC_Effect_TextHighlightA\">can_place_on={predicates:[{blocks:&#8217;stone&#8217;}]}<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">can_place_on={blocks:&#8217;stone&#8217;}<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">enchantments<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">stored_enchantments<\/span>&nbsp;Item Components<\/h5>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;field, replaced by&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<li>These components now always use their simplified form, with the&nbsp;<span class=\"MC_Effect_TextHighlightA\">levels<\/span>&nbsp;field inlined to top-level\n<ul>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">enchantments={levels:{sharpness:2}}<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">enchantments={sharpness:2}<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">jukebox_playable<\/span>&nbsp;Item Component<\/h5>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;field, replaced by&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">trim<\/span>&nbsp;Item Component<\/h5>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;field, replaced by&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<\/ul>\n<h5><span class=\"MC_Effect_TextHighlightA\">unbreakable<\/span>&nbsp;Item Component<\/h5>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">show_in_tooltip<\/span>&nbsp;field, replaced by&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<\/ul>\n<h4>Entity Components<\/h4>\n<ul>\n<li>Entities now have a set of components for configuring variants and other aspects of appearance<\/li>\n<li>If those components are present on spawning item, they will be applied to the new entity\n<ul>\n<li>Spawning items include Spawn Eggs, Mob Buckets, Arrows, Lingering Potions, Armor Stands, Paintings, Item Frames, Minecarts, and Boats<\/li>\n<\/ul>\n<\/li>\n<li>Components are currently not restored when a Spawn Egg is picked from an existing entity<\/li>\n<li>New components:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">villager\/variant<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">desert<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">jungle<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">plains<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">savanna<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">snow<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">swamp<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">taiga<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">wolf\/variant<\/span>&nbsp;&#8211; namespaced id from&nbsp;<span class=\"MC_Effect_TextHighlightA\">wolf_variant<\/span>&nbsp;registry<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">wolf\/sound_variant<\/span>&nbsp;&#8211; namespaced id from&nbsp;<span class=\"MC_Effect_TextHighlightA\">wolf_sound_variant<\/span>&nbsp;registry<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">wolf\/collar<\/span>&nbsp;&#8211; one of 16 dye colors<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">fox\/variant<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">red<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">snow<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">salmon\/size<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">small<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">medium<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">large<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">parrot\/variant<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">red_blue<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">blue<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">green<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">yellow_blue<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">gray<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">tropical_fish\/pattern<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">kob<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">sunstreak<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">snooper<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">dasher<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">brinely<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">spotty<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">flopper<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">stripey<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">glitter<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">blockfish<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">betty<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">clayfish<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">tropical_fish\/base_color<\/span>&nbsp;&#8211; one of 16 dye colors<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">tropical_fish\/pattern_color<\/span>&nbsp;&#8211; one of 16 dye colors<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">mooshroom\/variant<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">red<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">brown<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">rabbit\/variant<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">brown<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">white<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">black<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">white_splotched<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">gold<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">salt<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">evil<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">pig\/variant<\/span>&nbsp;&#8211; namespaced id from&nbsp;<span class=\"MC_Effect_TextHighlightA\">wolf_variant<\/span>&nbsp;registry<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">frog\/variant<\/span>&nbsp;&#8211; namespaced id from&nbsp;<span class=\"MC_Effect_TextHighlightA\">frog_variant<\/span>&nbsp;registry<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">horse\/variant<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">white<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">creamy<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">chestnut<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">brown<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">black<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">gray<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">dark_brown<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">painting\/variant<\/span>&nbsp;&#8211; namespaced id from&nbsp;<span class=\"MC_Effect_TextHighlightA\">painting_variant<\/span>&nbsp;registry<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">llama\/variant<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">creamy<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">white<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">brown<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">gray<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">axolotl\/variant<\/span>&nbsp;&#8211; one of&nbsp;<span class=\"MC_Effect_TextHighlightA\">lucy<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">wild<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">gold<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">cyan<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">blue<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">cat\/variant<\/span>&nbsp;&#8211; namespaced id from&nbsp;<span class=\"MC_Effect_TextHighlightA\">cat_variant<\/span>&nbsp;registry<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">cat\/collar<\/span>&nbsp;&#8211; one of 16 dye colors<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">sheep\/color<\/span>&nbsp;&#8211; one of 16 dye colors<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">shulker\/color<\/span>&nbsp;&#8211; one of 16 dye colors<\/li>\n<\/ul>\n<\/li>\n<li>Mob buckets and paintings available in the creative menu will now use the new variants instead of&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:entity_data<\/span>&nbsp;component<\/li>\n<li>Custom tooltips for Bucket of Tropical Fish and Painting items are now based on new components instead of&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:bucket_entity_data<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:entity_data<\/span><\/li>\n<li>Some existing components are now also transferred from the spawning item to the spawned entity:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:custom_name<\/span>&nbsp;&#8211; any entity<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:potion_contents<\/span>&nbsp;&#8211; Lingering Potion to Area Effect Cloud<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:potion_duration_scale<\/span>&nbsp;&#8211; Lingering Potion to Area Effect Cloud<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Predicates<\/h3>\n<h4>Entity Predicates<\/h4>\n<ul>\n<li>New optional fields have been added to entity predicates:&nbsp;<span class=\"MC_Effect_TextHighlightA\">components<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">predicates<\/span>\n<ul>\n<li>Their functionality and format are identical to the fields&nbsp;<span class=\"MC_Effect_TextHighlightA\">components<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">predicates<\/span>&nbsp;on item predicates, but they operate on entity components\n<ul>\n<li>When present,&nbsp;<span class=\"MC_Effect_TextHighlightA\">components<\/span>&nbsp;will match exact contents of entity components<\/li>\n<li>When present,&nbsp;<span class=\"MC_Effect_TextHighlightA\">predicates<\/span>&nbsp;will match partial contents of entity components<\/li>\n<\/ul>\n<\/li>\n<li>In general, any component that is transferred from a spawning item to an entity should be available to this predicate<\/li>\n<\/ul>\n<\/li>\n<li>The following entity sub-predicates have been removed and replaced with a combination of the&nbsp;<span class=\"MC_Effect_TextHighlightA\">components<\/span>&nbsp;predicate and entity variant components:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:axolotl<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:cat<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:fox<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:frog<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:horse<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:llama<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:mooshroom<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:painting<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:parrot<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:pig<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:rabbit<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:salmon<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:tropical_fish<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:villager<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">minecraft:wolf<\/span><\/li>\n<\/ul>\n<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">color<\/span>&nbsp;field has been removed from the&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:sheep<\/span>&nbsp;sub-predicate<\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">stepping_on<\/span>&nbsp;field will now only match the specified location if the entity is on the ground<\/li>\n<\/ul>\n<h4>Block Predicates<\/h4>\n<ul>\n<li>New optional fields have been added to block predicates:&nbsp;<span class=\"MC_Effect_TextHighlightA\">components<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">predicates<\/span><\/li>\n<li>Their functionality and format are identical to the fields&nbsp;<span class=\"MC_Effect_TextHighlightA\">components<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">predicates<\/span>&nbsp;on item predicates, but they operate on block entity components (when present)\n<ul>\n<li>When present,&nbsp;<span class=\"MC_Effect_TextHighlightA\">components<\/span>&nbsp;will match exact contents of block entity components<\/li>\n<li>When present,&nbsp;<span class=\"MC_Effect_TextHighlightA\">predicates<\/span>&nbsp;will match partial contents of block entity components<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Loot Functions<\/h3>\n<h4><span class=\"MC_Effect_TextHighlightA\">toggle_tooltips<\/span><\/h4>\n<ul>\n<li>Now supports any component id in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">toggles<\/span>&nbsp;map<\/li>\n<li>Any component specified will be toggled in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">tooltip_display<\/span>&nbsp;component<\/li>\n<\/ul>\n<h3>Recipes<\/h3>\n<h4><span class=\"MC_Effect_TextHighlightA\">crafting_transmute<\/span>&nbsp;Recipe Type<\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">result<\/span>&nbsp;field now supports specifying a count and a components patch to apply to the result<\/li>\n<li>The components patch is applied to the final transmuted item<\/li>\n<li>The new format is an object with fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">id<\/span>&nbsp;&#8211; item id<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">count<\/span>&nbsp;&#8211; positive integer (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">1<\/span>)<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">components<\/span>&nbsp;&#8211; a component patch object (default: empty)<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">&#8220;result&#8221;: {&#8220;id&#8221;: &#8220;minecraft:stick&#8221;, &#8220;count&#8221;: 3, &#8220;components&#8221;: {&#8220;!minecraft:damage&#8221;: {}, &#8220;minecraft:enchantment_glint_override&#8221;: {}}}<\/span><\/li>\n<\/ul>\n<\/li>\n<li>The field can still be defined as before as an inline item id (e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">&#8220;result&#8221;: &#8220;minecraft:stick&#8221;<\/span>)<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">smithing_transform<\/span>&nbsp;Recipe Type<\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">base<\/span>&nbsp;ingredient field is no longer optional\n<ul>\n<li>Previously, if no base ingredient was given, the recipe would parse but never be usable<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">smithing_trim<\/span>&nbsp;Recipe Type<\/h4>\n<ul>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">base<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">template<\/span>, and&nbsp;<span class=\"MC_Effect_TextHighlightA\">addition<\/span>&nbsp;ingredient fields are no longer optional\n<ul>\n<li>Previously, if these ingredients were not given, the recipe would parse but never be usable<\/li>\n<\/ul>\n<\/li>\n<li>Added new&nbsp;<span class=\"MC_Effect_TextHighlightA\">pattern<\/span>&nbsp;field, controlling which trim pattern will be applied in the recipe\n<ul>\n<li>As such, the trim pattern registry definition no longer specifies the item<\/li>\n<li>Format: trim pattern id<\/li>\n<li>e.g.&nbsp;<span class=\"MC_Effect_TextHighlightA\">&#8220;pattern&#8221;: &#8220;minecraft:bolt&#8221;<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Trim Patterns and Trim Materials<\/h3>\n<ul>\n<li>The registry definitions for trim patterns and trim materials no longer include an&nbsp;<span class=\"MC_Effect_TextHighlightA\">item<\/span>&nbsp;field<\/li>\n<li>Instead, this mapping in patterns and materials is defined by the recipe and item components respectively<\/li>\n<\/ul>\n<h3>World Generation<\/h3>\n<h4>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">fallen_tree<\/span>&nbsp;Feature Type<\/h4>\n<ul>\n<li>Places a stump block (given by&nbsp;<span class=\"MC_Effect_TextHighlightA\">trunk_provider<\/span>), and a number of logs to the side placed in a random direction (given by&nbsp;<span class=\"MC_Effect_TextHighlightA\">trunk_provider<\/span>, rotated by direction)<\/li>\n<li>Format:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">trunk_provider<\/span>&nbsp;&#8211; Block State Provider, the log block to be placed<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">log_length<\/span>&nbsp;&#8211; Int Provider (between 0 and 16), the number of blocks from the origin to generate (including the stump and free space)<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">stump_decorators<\/span>&nbsp;&#8211; List of Tree Decorators to apply to the stump block<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">log_decorators<\/span>&nbsp;&#8211; List of Tree Decorators to apply to the log blocks<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">attached_to_logs<\/span>&nbsp;Tree Decorator Type<\/h4>\n<ul>\n<li>Places blocks adjacent to logs in random directions, with a specified probability<\/li>\n<li>Format:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">probability<\/span>&nbsp;&#8211; float (between 0 and 1), the probability for a block to be attached in a given direction<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block_provider<\/span>&nbsp;&#8211; Block State Provider, selects the adjacent block to place<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">directions<\/span>&nbsp;&#8211; list of directions, the cardinal directions in which blocks can be placed<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Tags<\/h3>\n<h4>Block Tags<\/h4>\n<ul>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#replaceable_by_mushrooms<\/span>&nbsp;&#8211; exhaustive list of all bocks that can be replaced as a mushroom is placed or grows<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#sword_instantly_mines<\/span>&nbsp;&#8211; blocks that are instantly mined by Swords<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#plays_ambient_desert_block_sounds<\/span>&nbsp;&#8211; blocks that will play ambient desert block sounds<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#edible_for_sheep<\/span>&nbsp;&#8211; blocks that can be eaten by Sheep to regrow their Wool<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#camels_spawnable_on<\/span>&nbsp;&#8211; blocks that Camels can spawn on<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">#dead_bush_may_place_on<\/span>&nbsp;has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">#dry_vegetation_may_place_on<\/span><\/li>\n<\/ul>\n<h4>Item Tags<\/h4>\n<ul>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#book_cloning_target<\/span>&nbsp;&#8211; item that can be crafted together with a Written Book to clone it<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#eggs<\/span>&nbsp;&#8211; all variants of the Egg item<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#flowers<\/span>&nbsp;&#8211; corresponding item tag for the already existing&nbsp;<span class=\"MC_Effect_TextHighlightA\">#flowers<\/span>&nbsp;block tag<\/li>\n<\/ul>\n<h4>Biome Tags<\/h4>\n<ul>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#spawns_cold_variant_farm_animals<\/span>&nbsp;&#8211; all biomes where cold variant of farm animals spawn<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#spawns_warm_variant_farm_animals<\/span>&nbsp;&#8211; all biomes where warm variants of farm animals spawn<\/li>\n<\/ul>\n<h4>Entity Tags<\/h4>\n<ul>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#can_equip_saddle<\/span>&nbsp;&#8211; entities that can be equipped with a Saddle\n<ul>\n<li>Note: this does not mean that the Saddle will function, just that it can be equipped into the saddle slot<\/li>\n<\/ul>\n<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#can_wear_horse_armor<\/span>&nbsp;&#8211; entity that can hold horse armor in their body slot<\/li>\n<\/ul>\n<h4>Structure Tags<\/h4>\n<ul>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#on_savanna_village_maps<\/span>&nbsp;&#8211; structures that can appear on Savanna Village Maps<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#on_desert_village_maps<\/span>&nbsp;&#8211; structures that can appear on Desert Village Maps<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#on_plains_village_maps<\/span>&nbsp;&#8211; structures that can appear on Plains Village Maps<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#on_taiga_village_maps<\/span>&nbsp;&#8211; structures that can appear on Taiga Village Maps<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#on_snowy_village_maps<\/span>&nbsp;&#8211; structures that can appear on Snowy Village Maps<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#on_swamp_explorer_maps<\/span>&nbsp;&#8211; structures that can appear on Swamp Explorer Maps<\/li>\n<li>Added&nbsp;<span class=\"MC_Effect_TextHighlightA\">#on_jungle_explorer_maps<\/span>&nbsp;&#8211; structures that can appear on Jungle Explorer Maps<\/li>\n<\/ul>\n<h4>Cat Variant Tags<\/h4>\n<ul>\n<li>Removed&nbsp;<span class=\"MC_Effect_TextHighlightA\">#default_spawns<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">#full_moon_spawns<\/span><\/li>\n<\/ul>\n<h3>Particles<\/h3>\n<h4><span class=\"MC_Effect_TextHighlightA\">tinted_leaves<\/span><\/h4>\n<ul>\n<li>This particle is spawned below most Leaves blocks<\/li>\n<li>Fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">color<\/span>: Tint color, specified either as packed int or list of 4 floats<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">firefly<\/span><\/h4>\n<ul>\n<li>This particle spawns around Firefly Bushes<\/li>\n<li>Has no fields<\/li>\n<\/ul>\n<h2>Resource Pack Version 47 through 55<\/h2>\n<ul>\n<li>Added new block sprites for new content<\/li>\n<li>The Creaking Heart &#8220;active&#8221; state has been renamed to &#8220;awake&#8221;<\/li>\n<li>Added new item sprites for new content<\/li>\n<li>Added new item sprites for each Spawn Egg<\/li>\n<li>Added new sound events for new content<\/li>\n<li>Added new particle definitions and sprites for Falling Leaves and Fireflies<\/li>\n<li>New and updated textures for the Pig, Cow, Chicken and Sheep<\/li>\n<li>Added new equipment asset layer type for Pigs and Striders, and moved saddle textures<\/li>\n<li>Renamed&nbsp;<span class=\"MC_Effect_TextHighlightA\">textures\/misc\/enchanted_glint_entity.png<\/span>&nbsp;to&nbsp;<span class=\"MC_Effect_TextHighlightA\">textures\/misc\/enchanted_glint_armor.png<\/span><\/li>\n<li>Added colormap texture for tinting dry foliage tinted blocks (<span class=\"MC_Effect_TextHighlightA\">textures\/colormap\/dry_foliage.png<\/span>)<\/li>\n<li>Item model definitions can now dispatch on item component contents<\/li>\n<li>Changes to shaders and post-processing effect definitions<\/li>\n<li>Expanded&nbsp;<span class=\"MC_Effect_TextHighlightA\">paletted_permutations<\/span>&nbsp;atlas sprite source to support custom separators<\/li>\n<li>Small changes in rendering of items in world<\/li>\n<\/ul>\n<h3>Block Sprites<\/h3>\n<ul>\n<li>Added new block sprites:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">bush<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">cactus_flower<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">creaking_heart_dormant<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">creaking_heart_top_dormant<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">firefly_bush_emissive<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">firefly_bush<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">leaf_litter<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">short_dry_grass<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">tall_dry_grass<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">test_block_accept<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">test_block_fail<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">test_block_log<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">test_block_start<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">test_instance_block<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">wildflowers_stem<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">wildflowers<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Renamed block sprites:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">creaking_heart_active<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">creaking_heart_awake<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">creaking_heart_top_active<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">creaking_heart_top_awake<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Item Sprites<\/h3>\n<ul>\n<li>Added new item sprites:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">blue_egg<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">brown_egg<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">firefly_bush<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">leaf_litter<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">wildflowers<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">&lt;mob&gt;_spawn_egg<\/span>&nbsp;for every mob, replacing the previous&nbsp;<span class=\"MC_Effect_TextHighlightA\">spawn_egg<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">spawn_egg_overlay<\/span>&nbsp;sprites<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Sound Events<\/h3>\n<ul>\n<li>Added new sound events:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">block.cactus_flower.break<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.cactus_flower.place<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.deadbush.idle<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.firefly_bush.idle<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.iron.break<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.iron.step<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.iron.place<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.iron.hit<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.iron.fall<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.leaf_litter.break<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.leaf_litter.step<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.leaf_litter.place<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.leaf_litter.hit<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.leaf_litter.fall<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.sand.idle<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">block.sand.wind<\/span><\/li>\n<li>For each of:&nbsp;<span class=\"MC_Effect_TextHighlightA\">puglin<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">sad<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">angry<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">grumpy<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">big<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">cute<\/span>:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">entity.wolf_&lt;variant&gt;.ambient<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity.wolf_&lt;variant&gt;.death<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity.wolf_&lt;variant&gt;.growl<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity.wolf_&lt;variant&gt;.hurt<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity.wolf_&lt;variant&gt;.pant<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity.wolf_&lt;variant&gt;.whine<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>Removed sound event:&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity.wolf.howl<\/span><\/li>\n<\/ul>\n<h3>Particles<\/h3>\n<ul>\n<li>Added new particle sprites:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">firefly<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">leaf_&lt;frame&gt;<\/span>&nbsp;with frame ranging between 0 and 11<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>New and Updated Pig Textures<\/h3>\n<ul>\n<li>Added new textures for Pig variants:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">cold_pig<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">warm_pig<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Texture&nbsp;<span class=\"MC_Effect_TextHighlightA\">pig<\/span>&nbsp;has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">temperate_pig<\/span><\/li>\n<li>Changed the size of&nbsp;<span class=\"MC_Effect_TextHighlightA\">temperate_pig<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">pig_saddle<\/span>&nbsp;texture<\/li>\n<\/ul>\n<h3>New and Updated Cow Textures and Model<\/h3>\n<ul>\n<li>Added new textures for Cow variants:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">cold_cow<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">warm_cow<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Texture&nbsp;<span class=\"MC_Effect_TextHighlightA\">cow<\/span>&nbsp;has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">temperate_cow<\/span><\/li>\n<li>Changed the size of&nbsp;<span class=\"MC_Effect_TextHighlightA\">temperate_cow<\/span>&nbsp;texture<\/li>\n<li>Changed the size of&nbsp;<span class=\"MC_Effect_TextHighlightA\">red_mooshroom<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">brown_mooshroom<\/span>&nbsp;textures<\/li>\n<li>The temperate Cow and Mooshroom have updated models and textures\n<ul>\n<li>Models now have a snout<\/li>\n<li>Models now have their legs mirrored<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>New and Updated Chicken Textures<\/h3>\n<ul>\n<li>Added new textures for Chicken variants:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">cold_chicken<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">warm_chicken<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Texture&nbsp;<span class=\"MC_Effect_TextHighlightA\">chicken<\/span>&nbsp;has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">temperate_chicken<\/span><\/li>\n<li>The&nbsp;<span class=\"MC_Effect_TextHighlightA\">temperate_chicken<\/span>&nbsp;texture has been moved to a new folder:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/chicken.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/chicken\/temperate_chicken.png<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Updated Sheep Textures<\/h3>\n<ul>\n<li>Name of&nbsp;<span class=\"MC_Effect_TextHighlightA\">sheep_fur<\/span>&nbsp;texture has been renamed to&nbsp;<span class=\"MC_Effect_TextHighlightA\">sheep_wool<\/span><\/li>\n<li>Sheep now has a separate texture for its wool undercoat, which is dynamically recolored in-game\n<ul>\n<li>The name of this undercoat texture is&nbsp;<span class=\"MC_Effect_TextHighlightA\">sheep_wool_undercoat<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Equipment Assets<\/h3>\n<ul>\n<li>Equipment assets may now define new layer types:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">pig_saddle<\/span>&nbsp;&#8211; equipment layer for Pig saddles<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">strider_saddle<\/span>&nbsp;&#8211; equipment layer for Strider saddles<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">camel_saddle<\/span>&nbsp;&#8211; equipment layer for Camel saddles<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">horse_saddle<\/span>&nbsp;&#8211; equipment layer for Horse saddles<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">donkey_saddle<\/span>&nbsp;&#8211; equipment layer for Donkey saddles<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">mule_saddle<\/span>&nbsp;&#8211; equipment layer for Mule saddles<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">skeleton_horse_saddle<\/span>&nbsp;&#8211; equipment layer for Skeleton Horse saddles<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">zombie_horse_saddle<\/span>&nbsp;&#8211; equipment layer for Zombie Horse saddles<\/li>\n<\/ul>\n<\/li>\n<li>The following textures have been moved to support the use of equipment assets for saddles:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/pig\/pig_saddle.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/equipment\/pig_saddle\/saddle.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/strider\/strider_saddle.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/equipment\/strider_saddle\/saddle.png<\/span><\/li>\n<\/ul>\n<\/li>\n<li>The following textures have been split from their base entity texture to support the use of equipment assets for saddles:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/camel\/camel.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/equipment\/camel_saddle\/saddle.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/horse\/horse_&lt;variant&gt;.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/equipment\/horse_saddle\/saddle.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/horse\/donkey.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/equipment\/donkey_saddle\/saddle.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/horse\/mule.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/equipment\/mule_saddle\/saddle.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/horse\/horse_skeleton.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/equipment\/skeleton_horse_saddle\/saddle.png<\/span><\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">entity\/horse\/horse_zombie.png<\/span>&nbsp;-&gt;&nbsp;<span class=\"MC_Effect_TextHighlightA\">entity\/equipment\/zombie_horse_saddle\/saddle.png<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Equipment layers configured to be dyeable will now show if the&nbsp;<span class=\"MC_Effect_TextHighlightA\">dyed_color<\/span>&nbsp;component is present on the item, even if the item is not in the&nbsp;<span class=\"MC_Effect_TextHighlightA\">#dyeable<\/span>&nbsp;tag<\/li>\n<\/ul>\n<h3>Item Models<\/h3>\n<h4><span class=\"MC_Effect_TextHighlightA\">minecraft:component<\/span>&nbsp;Select Property<\/h4>\n<ul>\n<li>New data source has been added to&nbsp;<span class=\"MC_Effect_TextHighlightA\">select<\/span>&nbsp;item model:&nbsp;<span class=\"MC_Effect_TextHighlightA\">component<\/span><\/li>\n<li>Returns value of component on item, if any<\/li>\n<li>Fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">component<\/span>&nbsp;&#8211; namespaced ID of component type<\/li>\n<\/ul>\n<\/li>\n<li>Possible values: depends on component type\n<ul>\n<li>Example: if&nbsp;<span class=\"MC_Effect_TextHighlightA\">component<\/span>&nbsp;is set to&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:wolf\/collar<\/span>, list of cases will accept dye colors, like&nbsp;<span class=\"MC_Effect_TextHighlightA\">lime<\/span><\/li>\n<li>If value comes from registry and current datapack does not provide it, entry will be silently ignored<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4><span class=\"MC_Effect_TextHighlightA\">minecraft:component<\/span>&nbsp;Boolean Property<\/h4>\n<ul>\n<li>New conditional model property has been added to&nbsp;<span class=\"MC_Effect_TextHighlightA\">condition<\/span>&nbsp;item model:&nbsp;<span class=\"MC_Effect_TextHighlightA\">component<\/span><\/li>\n<li>Uses component predicates (like ones used in item predicates) to match item components\n<ul>\n<li>However, instead of encoding them as a map of&nbsp;<span class=\"MC_Effect_TextHighlightA\">&lt;predicate type&gt;:&lt;predicate value&gt;<\/span>, a single predicate is encoded in two fields<\/li>\n<\/ul>\n<\/li>\n<li>Fields:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">predicate<\/span>&nbsp;&#8211; type of component predicate (member of&nbsp;<span class=\"MC_Effect_TextHighlightA\">minecraft:data_component_predicate_type<\/span>&nbsp;registry)<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">value<\/span>&nbsp;&#8211; predicate-specific value<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Atlas<\/h3>\n<h4><span class=\"MC_Effect_TextHighlightA\">minecraft:paletted_permutations<\/span>&nbsp;Sprite Source<\/h4>\n<ul>\n<li>New field:\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">separator<\/span>&nbsp;&#8211; optional string (default:&nbsp;<span class=\"MC_Effect_TextHighlightA\">_<\/span>) &#8211; value to be used when joining texture and permutation names to produce sprite name<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Shaders &amp; Post-process Effects<\/h3>\n<blockquote>\n<p><strong>Developer&#8217;s Note<\/strong>:&nbsp;<em>Although it is possible in Resource Packs, overriding Core Shaders is considered as unsupported and not an intended Resource Pack feature. These shaders exist as part of the internal implementation of the game, and as such, may change at any time as the game&#8217;s internals evolve. We understand that overriding Core Shaders is used for very cool Resource Pack features, many of which lack supported alternatives. We would like to provide better, supported alternatives in the future.<\/em><\/p>\n<\/blockquote>\n<ul>\n<li>Shader program definitions for core shaders and post-processing effects as JSON files have been removed<\/li>\n<li>The shader programs themselves are still available and can be overridden<\/li>\n<li>The post-processing effects are still configurable as JSON<\/li>\n<li>&#8220;Global&#8221; uniforms may be defined in any shader, and the game will attempt to fill it\n<ul>\n<li>Currently, these are:&nbsp;<span class=\"MC_Effect_TextHighlightA\">ModelViewMat<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">ProjMat<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">TextureMat<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">ScreenSize<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">ColorModulator<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">Light0_Direction<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">Light1_Direction<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">GlintAlpha<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">FogStart<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">FogEnd<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">FogColor<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">FogShape<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">LineWidth<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">GameTime<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">ModelOffset<\/span><\/li>\n<li>The type of the uniform must match what it would normally be, or it&#8217;ll be undefined behavior<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Post-process Effect Definitions<\/h4>\n<ul>\n<li>The field&nbsp;<span class=\"MC_Effect_TextHighlightA\">program<\/span>&nbsp;was replaced with&nbsp;<span class=\"MC_Effect_TextHighlightA\">vertex_shader<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">fragment_shader<\/span>\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">&lt;namespace&gt;:&lt;path&gt;<\/span>&nbsp;will resolve to&nbsp;<span class=\"MC_Effect_TextHighlightA\">assets\/&lt;namespace&gt;\/shaders\/&lt;path&gt;.&lt;vsh|fsh&gt;<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">type<\/span>&nbsp;is now a required field for each&nbsp;<span class=\"MC_Effect_TextHighlightA\">uniform<\/span>\n<ul>\n<li>Possible values are currently&nbsp;<span class=\"MC_Effect_TextHighlightA\">int<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">ivec3<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">float<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">vec2<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">vec3<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">vec4<\/span>,&nbsp;<span class=\"MC_Effect_TextHighlightA\">matrix4<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span class=\"MC_Effect_TextHighlightA\">values<\/span>&nbsp;in each&nbsp;<span class=\"MC_Effect_TextHighlightA\">uniform<\/span>&nbsp;is now optional\n<ul>\n<li>Leaving it unset is not recommended and is used for runtime configuration of the blur effect<\/li>\n<\/ul>\n<\/li>\n<li>Leaving a uniform unspecified results in undefined behavior, you must specify each one that will be used by the shaders<\/li>\n<\/ul>\n<h3>Item Rendering<\/h3>\n<h4>Item Display<\/h4>\n<ul>\n<li><span class=\"MC_Effect_TextHighlightA\">firstperson_lefthand<\/span>&nbsp;and&nbsp;<span class=\"MC_Effect_TextHighlightA\">thirdperson_lefthand<\/span>&nbsp;transforms are now rendered the same as when held in hand<\/li>\n<\/ul>\n<h4>Item Entity<\/h4>\n<ul>\n<li>When on ground, model size is now taken into account when determining hovering motion\n<ul>\n<li>That means that models should never clip into the block below, no matter what size they are<\/li>\n<\/ul>\n<\/li>\n<li>Positioning of items in an item stack on ground now depends on model size and model type\n<ul>\n<li>If model depth (Z coordinate) is below 1\/16th of a block, item is rendered as flat stack of items<\/li>\n<li>Otherwise, the model is rendered as a cluster of items offset in all directions around center<\/li>\n<li>Previously, flat stack rendering happened only for models with&nbsp;<span class=\"MC_Effect_TextHighlightA\">builtin\/generated<\/span>&nbsp;parent<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Fixed bugs in 1.21.5<\/h2>\n<ul>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-7697\">MC-7697<\/a>&nbsp;&#8211; Tridents or arrows shot through lava sometimes don&#8217;t catch fire<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-13738\">MC-13738<\/a>&nbsp;&#8211; Invisible saddle when using invisibility potion on a horse, donkey or mule<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-55800\">MC-55800<\/a>&nbsp;&#8211; Successful &#8220;\/fill air destroy&#8221; commands give error message and return 0 for result\/success<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-56653\">MC-56653<\/a>&nbsp;&#8211; Zombified Piglins drop XP and rare drops if killed by anything while in angered state<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-80243\">MC-80243<\/a>&nbsp;&#8211; Saddles don&#8217;t apply attribute modifiers when worn by entities<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-90212\">MC-90212<\/a>&nbsp;&#8211; You cannot hang on to climbable blocks while gliding with elytra<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-93185\">MC-93185<\/a>&nbsp;&#8211; The exit portal in the end generates at highest block at 0 0 which can make it generate incomplete<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-97244\">MC-97244<\/a>&nbsp;&#8211; The &#8220;minecraft:enchant.thorns.hit&#8221; sound event doesn&#8217;t play when non-player entities are damaged by the thorns enchantment<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-98271\">MC-98271<\/a>&nbsp;&#8211; The sound of blocking with a shield is only hearable by other players (not the person blocking)<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-101556\">MC-101556<\/a>&nbsp;&#8211; Nether Portal teleport range is too large (equivalent to a full block)<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-108495\">MC-108495<\/a>&nbsp;&#8211; Non-LivingBase entities can be on a team (and show color) but can&#8217;t be targeted using team=<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-113878\">MC-113878<\/a>&nbsp;&#8211; Attribute modifiers description for chest is misleading \/ &#8220;When on body&#8221; instead of &#8220;When on chest&#8221;<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-117574\">MC-117574<\/a>&nbsp;&#8211; Using \/setblock or \/fill to re-place a block entity keeps old NBT (if no NBT specified) but clears inventories, even when the command fails<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-118092\">MC-118092<\/a>&nbsp;&#8211; Crafting recipe unlock toast says &#8220;New Recipes Unlocked!&#8221; even when only one recipe was unlocked<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-118470\">MC-118470<\/a>&nbsp;&#8211; Narrator plays at full volume when volume is off<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-122840\">MC-122840<\/a>&nbsp;&#8211; &#8220;\/data remove&#8221; cannot delete beam_target tag in End Crystals<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-128079\">MC-128079<\/a>&nbsp;&#8211; Statistic for using shears doesn&#8217;t increase when mining certain blocks<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-135192\">MC-135192<\/a>&nbsp;&#8211; Boats are immediately sunken if there is a string on the surface of the water<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-141297\">MC-141297<\/a>&nbsp;&#8211; You cannot set lit state of redstone torches using setblock, debug stick and BlockStateTag, to be to opposite of the situation it would be in<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-152382\">MC-152382<\/a>&nbsp;&#8211; End gateways and end portals don&#8217;t fade away with render distance fog<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-153392\">MC-153392<\/a>&nbsp;&#8211; Unable to remove villager gossips using \/data remove<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-157196\">MC-157196<\/a>&nbsp;&#8211; Tamed animals cannot be added to a team<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-160304\">MC-160304<\/a>&nbsp;&#8211; Sneaking on ice can change direction of movement to lines along axis<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-165421\">MC-165421<\/a>&nbsp;&#8211; Bubble columns have the opposite effect on wind charges<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-165461\">MC-165461<\/a>&nbsp;&#8211; Crossbow loading animation stops after loading, even when still holding down right click<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-165711\">MC-165711<\/a>&nbsp;&#8211; Eye of ender hitbox always lags behind the animation<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-167125\">MC-167125<\/a>&nbsp;&#8211; Rounding error on fall damage<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-168262\">MC-168262<\/a>&nbsp;&#8211; Dead bushes cannot be placed on farmland<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-170134\">MC-170134<\/a>&nbsp;&#8211; Minecraft uses several times more VRAM than needed after exploring terrain for a while<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-176233\">MC-176233<\/a>&nbsp;&#8211; Crossbows no longer have a transition after loading<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-177522\">MC-177522<\/a>&nbsp;&#8211; Wolf barking and whining sounds are subtitled as &#8220;Wolf pants&#8221;<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-183329\">MC-183329<\/a>&nbsp;&#8211; Nether portal teleport overlay does not show up if the player has the nausea effect<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-183623\">MC-183623<\/a>&nbsp;&#8211; Hardcore worlds in the world menu have a comma after the red exclamation mark<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-184530\">MC-184530<\/a>&nbsp;&#8211; Player movement at low speeds is biased towards cardinal directions<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-184681\">MC-184681<\/a>&nbsp;&#8211; Customized worlds still say &#8220;Buffet world customization&#8221; since 20w21a<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-186241\">MC-186241<\/a>&nbsp;&#8211; World border faces are rendered incorrectly with &#8220;Fabulous!&#8221; graphics<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-189525\">MC-189525<\/a>&nbsp;&#8211; Armored entities from pre-1.9 worlds upgrade to dual wielding armor<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-190000\">MC-190000<\/a>&nbsp;&#8211; Saddles equipped on horses cannot be replaced without removing them first<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-193404\">MC-193404<\/a>&nbsp;&#8211; Changing a powered or activator rail to powered using a debug stick or \/setblock does not work<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-200311\">MC-200311<\/a>&nbsp;&#8211; Advancement background texture referencing is inconsistent with models<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-202226\">MC-202226<\/a>&nbsp;&#8211; \/recipe give or take for one recipe says &#8220;recipes&#8221;<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-203550\">MC-203550<\/a>&nbsp;&#8211; Blocks broken by pistons do not play breaking sounds<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-220091\">MC-220091<\/a>&nbsp;&#8211; Summoning falling_block entities with BlockState NBT set to any air block (air, cave_air, void_air) default to sand<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-220672\">MC-220672<\/a>&nbsp;&#8211; Inconsistent pluralization in customize world preset heading source string<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-222876\">MC-222876<\/a>&nbsp;&#8211; &#8220;Buffet world customization&#8221; is incorrectly capitalized<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-226772\">MC-226772<\/a>&nbsp;&#8211; Shulker box opening \/ closing subtitle shows &#8220;Shulker&#8221;<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-227097\">MC-227097<\/a>&nbsp;&#8211; End portals delete blocks that are inside of the portal<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-230445\">MC-230445<\/a>&nbsp;&#8211; End portals and end gateways are not rendered properly with the Blindness or Darkness effects<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-231331\">MC-231331<\/a>&nbsp;&#8211; Advancement toasts continue to appear despite the said advancements being revoked shortly after<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-236100\">MC-236100<\/a>&nbsp;&#8211; End crystal beam appears to be black<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-239705\">MC-239705<\/a>&nbsp;&#8211; Sprinting forward while facing a certain angle pushes the player either to the left or to the right<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-241951\">MC-241951<\/a>&nbsp;&#8211; Player momentum on X and Z axis are cancelled separately at low values<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-248099\">MC-248099<\/a>&nbsp;&#8211; Mob pathfinding breaks after falling into water accidentally while walking<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-253721\">MC-253721<\/a>&nbsp;&#8211; Wrong logs when running \/op @a<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-255756\">MC-255756<\/a>&nbsp;&#8211; When the shield is broken between players, the attacking side has no shield breaking sound<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-256469\">MC-256469<\/a>&nbsp;&#8211; Invisible camels don&#8217;t show their saddles<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-257133\">MC-257133<\/a>&nbsp;&#8211; Desync when placing large paintings with NBT on a small space<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-258253\">MC-258253<\/a>&nbsp;&#8211; Spawn egg particles use an uncolored spawn egg overlay<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-260440\">MC-260440<\/a>&nbsp;&#8211; Players can no longer activate swimming mode in water while flying with elytra<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-261385\">MC-261385<\/a>&nbsp;&#8211; Bubble columns act differently at the surface depending on non-air blocks<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-262928\">MC-262928<\/a>&nbsp;&#8211; The &#8220;minecraft:entity.player.hurt&#8221; sound is no longer played when players receive thorns damage from guardians or elder guardians<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-262939\">MC-262939<\/a>&nbsp;&#8211; Changing dimensions or respawning with nausea effect active displays nether portal overlay<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-265514\">MC-265514<\/a>&nbsp;&#8211; HRTF stuck on even when directional audio is set to off in update 1.20.2<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-266912\">MC-266912<\/a>&nbsp;&#8211; Saddle equipping sounds aren&#8217;t played when saddles are equipped on horses, donkeys, mules, or camels shortly after the said entity is summoned<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-267221\">MC-267221<\/a>&nbsp;&#8211; &#8220;value&#8221; within &#8220;change_page&#8221; clickEvent json looks for a string instead of an integer<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-267323\">MC-267323<\/a>&nbsp;&#8211; Items fields with old boolean JSON formatting are cleared upon world update<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-268942\">MC-268942<\/a>&nbsp;&#8211; The swimming animation no longer displays when gliding with an elytra and swimming at the same time<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-269386\">MC-269386<\/a>&nbsp;&#8211; Flow Pottery Sherd is not in the correct spot in the creative inventory<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-269637\">MC-269637<\/a>&nbsp;&#8211; Horses can wear multiple saddles but not multiple horse armor<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-270043\">MC-270043<\/a>&nbsp;&#8211; Reduced armor glint applies to tridents<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-270192\">MC-270192<\/a>&nbsp;&#8211; The saddles of some entities stay visible through their death animation<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-270197\">MC-270197<\/a>&nbsp;&#8211; The saddle on pigs and striders stays visible through their death animation<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-270220\">MC-270220<\/a>&nbsp;&#8211; Granting all advancements results in prolonged, disruptive and loud audio spam<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-271065\">MC-271065<\/a>&nbsp;&#8211; Diagonal player movement is not normalized when holding two movement keys<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-272100\">MC-272100<\/a>&nbsp;&#8211; Unused palette pixels in horse textures (horse_[brown\/chestnut\/creamy\/white].png)<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-272790\">MC-272790<\/a>&nbsp;&#8211; Shulker boxes and other blocks in the end exit portal when it changes state are not dropped as items<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-273338\">MC-273338<\/a>&nbsp;&#8211; Flying boat glitch using string and rising bubble columns<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-274187\">MC-274187<\/a>&nbsp;&#8211; The sweeping attack from a sword enchanted with Fire Aspect can ignite other players with PVP disabled<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-274258\">MC-274258<\/a>&nbsp;&#8211; All horse textures contain an unused chest bag texture<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-275994\">MC-275994<\/a>&nbsp;&#8211; Having the pie chart open while the window is unfocused spams the logs<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-276061\">MC-276061<\/a>&nbsp;&#8211; Decorated pot sherds don&#8217;t visually update until relog when replacing with blank pot<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-276861\">MC-276861<\/a>&nbsp;&#8211; The player can sometimes teleport through blocked end portals when moving very fast<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-277403\">MC-277403<\/a>&nbsp;&#8211; Flaming arrows and tridents still don&#8217;t extinguish when water is placed in their location<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-277537\">MC-277537<\/a>&nbsp;&#8211; Pale moss carpets sometimes generate disjointed<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-277780\">MC-277780<\/a>&nbsp;&#8211; Minecraft resaves all maps with every autosave even after the 1st patch<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-277807\">MC-277807<\/a>&nbsp;&#8211; Teleporting the player&#8217;s mount causes rotation de-sync, previously did not<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-277865\">MC-277865<\/a>&nbsp;&#8211; The animation of boats in bubble columns breaks when over a certain &#8220;Time&#8221; in level.dat<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-277922\">MC-277922<\/a>&nbsp;&#8211; Boats in 1 block high downward bubble column will continue to rock back and forth<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278040\">MC-278040<\/a>&nbsp;&#8211; Creaking swim pathfinding breaks after being submerged<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278096\">MC-278096<\/a>&nbsp;&#8211; &#8220;Fabulous!&#8221; graphics and clouds disabled causes all particles to linger in frame buffer for one frame<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278140\">MC-278140<\/a>&nbsp;&#8211; The &#8220;\/fill&#8221; command doesn&#8217;t work properly with the directional states of several blocks placed adjacent to one another<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278164\">MC-278164<\/a>&nbsp;&#8211; Click sound is played twice when you click a setting button and there&#8217;s a slider under the mouse in the next screen<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278204\">MC-278204<\/a>&nbsp;&#8211; Blaze fireballs now cause TNT minecarts to explode instantly<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278249\">MC-278249<\/a>&nbsp;&#8211; Experience orb positions desync severely and abruptly correct themselves<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278375\">MC-278375<\/a>&nbsp;&#8211; Feeding wheat or hay bale to llama or trader llama with maximum Temper causes item stack to be desynced<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278376\">MC-278376<\/a>&nbsp;&#8211; Arrows and tridents act weirdly in one block deep bubble columns<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278400\">MC-278400<\/a>&nbsp;&#8211; Arrows and tridents move after hitting a block in flowing lava<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278417\">MC-278417<\/a>&nbsp;&#8211; Arrows and tridents on fire and stuck in the ground cannot be extinguished by rain<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278422\">MC-278422<\/a>&nbsp;&#8211; Reloading the world after removing Owner tag from a sitting tamed wolf with \/data remove makes the wolf moving and sitting at the same time<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278455\">MC-278455<\/a>&nbsp;&#8211; Slow sideways movement in spectator mode is wrong at angles which aren&#8217;t (close to) a multiple of 45\u00b0<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278493\">MC-278493<\/a>&nbsp;&#8211; Tamed wolves which are angry at creakings remain angry when said creakings despawn<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278502\">MC-278502<\/a>&nbsp;&#8211; Weeping and twisting vines disconnect<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278552\">MC-278552<\/a>&nbsp;&#8211; minecraft:entity.player.big_fall no longer plays the sound when falling from great height<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278585\">MC-278585<\/a>&nbsp;&#8211; Players can get stuck when landing on the edge of powder snow<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278591\">MC-278591<\/a>&nbsp;&#8211; Ender dragon spawn egg is no longer given when using pick block on the ender dragon entity<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278615\">MC-278615<\/a>&nbsp;&#8211; Reinforcement zombified piglins are angry at you even if you killed the &#8220;caller&#8221; in one hit<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278621\">MC-278621<\/a>&nbsp;&#8211; Client\/server desync when placing powder snow while landing in it<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278627\">MC-278627<\/a>&nbsp;&#8211; Players wearing leather boots will take fall damage when landing on the edge of powder snow<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278634\">MC-278634<\/a>&nbsp;&#8211; Trying to \/setblock a &#8216;waterlogged=true&#8217; state on (glow_lichen, resin_clump, sculk_vein, etc.) produces an error<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278639\">MC-278639<\/a>&nbsp;&#8211; Tripwire hooks are not activated by shulker bullets<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278659\">MC-278659<\/a>&nbsp;&#8211; Attacking a natural stationary creaking does not trigger sculk sensors<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278673\">MC-278673<\/a>&nbsp;&#8211; The x-rotation of \/teleport is limited to \u00b190 degrees relative to the entity&#8217;s original angle<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278683\">MC-278683<\/a>&nbsp;&#8211; Mobs spawned from spawners or \/summon never drop their equipment<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278708\">MC-278708<\/a>&nbsp;&#8211; Throwing ender pearls while mounted only dismounts you, without teleporting<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278728\">MC-278728<\/a>&nbsp;&#8211; smithing_transform recipes can&#8217;t set an item&#8217;s components back to default<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278733\">MC-278733<\/a>&nbsp;&#8211; Breaking a double resin brick slab block only returns a single slab<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278734\">MC-278734<\/a>&nbsp;&#8211; Sheep&#8217;s heads stutter when they look up or down<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278755\">MC-278755<\/a>&nbsp;&#8211; Teleporting far away while riding an entity softlocks the game<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278801\">MC-278801<\/a>&nbsp;&#8211; The closed eyeblossom to gray dye recipe is not grouped with the other gray dye recipe<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-278841\">MC-278841<\/a>&nbsp;&#8211; Powder snow no longer slows down the player falling from a high place<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279145\">MC-279145<\/a>&nbsp;&#8211; Shulker bullets are no longer affected by bubble columns<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279152\">MC-279152<\/a>&nbsp;&#8211; Shulker bullets can&#8217;t teleport through nether or end portals, end gateways<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279196\">MC-279196<\/a>&nbsp;&#8211; Block loot tables cannot be removed with \/data remove<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279340\">MC-279340<\/a>&nbsp;&#8211; Baby polar bears are too small<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279364\">MC-279364<\/a>&nbsp;&#8211; CustomName cannot be removed from block entities<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279390\">MC-279390<\/a>&nbsp;&#8211; Baby zombified piglin helmet clipping<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279472\">MC-279472<\/a>&nbsp;&#8211; Void appears lower &amp; more faded than before<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279572\">MC-279572<\/a>&nbsp;&#8211; End portals and end gateways aren&#8217;t affected by water, lava or powder snow fog<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279646\">MC-279646<\/a>&nbsp;&#8211; Toggling fullscreen with F11 does not visually update the fullscreen option in the video settings menu<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279653\">MC-279653<\/a>&nbsp;&#8211; Block Entity Data desynchronizes after subsequent setblock commands<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-279857\">MC-279857<\/a>&nbsp;&#8211; Piglins summoned by the \/summon command do not pick up gold items<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-280170\">MC-280170<\/a>&nbsp;&#8211; Goats can no longer ram armor stands unless the game rule mobGriefing is set to false<\/li>\n<li><a href=\"https:\/\/bugs.mojang.com\/browse\/MC-280211\">MC-280211<\/a>&nbsp;&#8211; End crystal beams cause OpenGL errors with glDebugVerbosity set to 3<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>New Features Added cold and warm variants for the Pig, Cow and Chicken Sheep now spawn with wool color dependent on the biome in which they spawn Added new sound variants for Wolves Overhauled the visuals of each Spawn Egg to improve readability and accessibility Added fallen tree generation Added Firefly Bush block Added Leaf [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":135328,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29],"tags":[],"class_list":["post-135327","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-minecraft-news"],"_links":{"self":[{"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/posts\/135327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/comments?post=135327"}],"version-history":[{"count":0,"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/posts\/135327\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/media\/135328"}],"wp:attachment":[{"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/media?parent=135327"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/categories?post=135327"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sickgaming.net\/blog\/wp-json\/wp\/v2\/tags?post=135327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}