{"id":973,"date":"2024-04-25T14:30:08","date_gmt":"2024-04-25T13:30:08","guid":{"rendered":"https:\/\/www.meloncube.net\/blog\/?p=973"},"modified":"2024-04-25T14:30:08","modified_gmt":"2024-04-25T13:30:08","slug":"minecraft-1-20-5-patch-notes-features-to-try","status":"publish","type":"post","link":"https:\/\/www.meloncube.net\/blog\/minecraft-1-20-5-patch-notes-features-to-try\/","title":{"rendered":"Minecraft 1.20.5: Patch Notes &amp; Features to Try"},"content":{"rendered":"\n<p>Minecraft 1.20.5 has officially been released for players across the world! So, today, we explore the <a href=\"https:\/\/www.meloncube.net\/blog\/minecraft-1-20-5-release-candidate-1-patch-notes-release-date-more\/\">Minecraft 1.20.5<\/a> patch notes, and which features we recommend giving a try.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Patch Overview<\/h3>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/twitter.com\/slicedlime\/status\/1782786170067275900\n<\/div><\/figure>\n\n\n\n<p>The highlights of Minecraft 1.20.5 are, without a doubt, the <a href=\"https:\/\/www.meloncube.net\/blog\/how-to-find-armadillos-in-minecraft-1-21\/\">armadillo mob<\/a> and wolf variants! Armadillos are easily frightened, but with care and time, they will continuously produce armadillo scute, the item needed to craft wolf armor. As for the wolves themselves, nine wolf variants can now be found! Each type and their biomes are under the \u201cWolf Variants\u201d section of the patch notes down below.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Patch Notes<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>New Features<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added Armadillo and Armadillo Scutes<\/li>\n\n\n\n<li>Added Wolf Armor<\/li>\n\n\n\n<li>Added Wolf variants<\/li>\n<\/ul>\n\n\n\n<p><strong>Armadillo<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The Armadillo is a new passive mob<\/li>\n\n\n\n<li>Armadillos drop Armadillo Scutes periodically, and when brushed<\/li>\n\n\n\n<li>Armadillos spawn in Savannas and Badlands<\/li>\n\n\n\n<li>The Armadillo&#8217;s favorite food is the Spider Eye\n<ul class=\"wp-block-list\">\n<li>Armadillos are tempted by Spider Eyes<\/li>\n\n\n\n<li>Feeding two adult Armadillos Spider Eyes makes them breed<\/li>\n\n\n\n<li>Feeding a baby Armadillo a Spider Eye makes it grow up quicker<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The Armadillo rolls up when it detects a threat such as:\n<ul class=\"wp-block-list\">\n<li>A player sprinting, riding a mount, or riding a vehicle<\/li>\n\n\n\n<li>Undead mobs<\/li>\n\n\n\n<li>A mob or a player it has recently been attacked by<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The Armadillo does not roll up when:\n<ul class=\"wp-block-list\">\n<li>Fleeing, in water, in the air, or when on a Lead<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>When an Armadillo is rolled up:\n<ul class=\"wp-block-list\">\n<li>It does not walk, cannot eat, and will not be tempted by food<\/li>\n\n\n\n<li>Its shell will protect it, reducing damage taken, even allowing it to fully resist weak attacks<\/li>\n\n\n\n<li>It will continue to scan for threats, occasionally peeking to check the surroundings\n<ul class=\"wp-block-list\">\n<li>If no threats are detected for 4 seconds, it will unroll<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Spiders and Cave Spiders will run away from Armadillos that are not in a rolled up state<\/li>\n<\/ul>\n\n\n\n<p><strong>Armadillo Scutes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Armadillo Scutes are dropped by Armadillos periodically or when an Armadillo is brushed<\/li>\n\n\n\n<li>Armadillo Scutes can be used to craft Wolf Armor<\/li>\n\n\n\n<li>Dispensers can be used to brush Armadillo Scutes off Armadillos<\/li>\n<\/ul>\n\n\n\n<p><strong>Wolf Armor<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Wolf Armor can be crafted with Armadillo Scutes and can be dyed in a similar fashion to Leather Armor<\/li>\n\n\n\n<li>The Wolf Armor will protect the Wolf from most damage sources until the armor loses all durability and breaks<\/li>\n\n\n\n<li>Wolf Armor shows signs of breakage as durability goes down<\/li>\n\n\n\n<li>Using Armadillo Scutes on the Wolf Armor while it is equipped on the Wolf will repair it<\/li>\n\n\n\n<li>Using Shears on a Wolf that is wearing armor will drop the armor<\/li>\n\n\n\n<li>Wolf Armor can only be equipped on a tame adult Wolf<\/li>\n\n\n\n<li>Only the Wolf&#8217;s owner can equip, repair, and shear Wolf Armor<\/li>\n\n\n\n<li>Dispensers cannot equip nor remove Wolf Armor<\/li>\n<\/ul>\n\n\n\n<p><strong>Wolf Variants<\/strong><\/p>\n\n\n\n<p>New Wolf variants have been added. The variant is determined by the biome they spawn in. Wolves spawn in packs, with a default pack size of 4.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Pale Wolf &#8211; The Wolf we&#8217;re all familiar with. This variant spawns in the Taiga biome<\/li>\n\n\n\n<li>Woods Wolf &#8211; A variant that spawns in the Forest biome. This will be the dominant Wolf variant that you will be able to find in the Overworld, since the Forest biome is very common<\/li>\n\n\n\n<li>Ashen Wolf &#8211; A variant that spawns in the Snowy Taiga biome<\/li>\n\n\n\n<li>Black Wolf &#8211; A variant that spawns in the Old Growth Pine Taiga biome, in smaller packs of 2-4<\/li>\n\n\n\n<li>Chestnut Wolf &#8211; A variant that spawns in the Old Growth Spruce Taiga biome, in smaller packs of 2-4<\/li>\n\n\n\n<li>Rusty Wolf &#8211; A variant that spawns in a new location for Wolves &#8211; the Sparse Jungle biome, in smaller packs of 2-4<\/li>\n\n\n\n<li>Spotted Wolf &#8211; A variant that spawns in a new location for Wolves &#8211; the Savanna Plateau biome, in larger packs of 4-8<\/li>\n\n\n\n<li>Striped Wolf &#8211; A variant that spawns in a new location for Wolves &#8211; the Wooded Badlands biome, in larger packs of 4-8<\/li>\n\n\n\n<li>Snowy Wolf &#8211; A variant that spawns in the Grove biome. This lone Wolf is a rare type, as it always walks alone<\/li>\n<\/ul>\n\n\n\n<p>When summoned in other ways (e.g. using the Spawn Egg or using the&nbsp;summon&nbsp;command), the variant selection follows the natural spawning biome rules with the following extensions:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Rusty Wolf: will be selected in all Jungle-like biomes, including Jungle and Bamboo Jungle Biomes<\/li>\n\n\n\n<li>Spotted Wolf: will be selected in all Savanna-like biomes, including Savanna and Windswept Savanna Biomes<\/li>\n\n\n\n<li>Striped Wolf: will be selected in all Badlands-like biomes, including Badlands and Eroded Badlands Biomes<\/li>\n<\/ul>\n\n\n\n<p><strong>Advancements<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added the following advancements:\n<ul class=\"wp-block-list\">\n<li>Isn&#8217;t It Scute?&nbsp;&#8211; Get Armadillo Scutes from an Armadillo using a Brush<\/li>\n\n\n\n<li>Shear Brilliance&nbsp;&#8211; Remove Wolf Armor from a Wolf using Shears<\/li>\n\n\n\n<li>Good as New&nbsp;&#8211; Repair a damaged Wolf Armor using Armadillo Scutes<\/li>\n\n\n\n<li>The Whole Pack&nbsp;&#8211; Tame one of each Wolf variant<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Changes<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The UI has been updated with a fresher look<\/li>\n\n\n\n<li>Decreased the default size of the spawn chunks and made the value configurable<\/li>\n\n\n\n<li>Updated the health and damage dealt by Tamed Wolves<\/li>\n\n\n\n<li>Adjusted spawning conditions for Wolves, allowing them to spawn on Coarse Dirt and Podzol blocks<\/li>\n\n\n\n<li>Adjusted the texture of the Wolf Collar layer to be more consistent with the new Wolf Armor<\/li>\n\n\n\n<li>Adjusted passive mobs spawning in Grove biome to only include Rabbits, Foxes and Wolves<\/li>\n\n\n\n<li>Minor tweaks to existing Blocks, Items and Entities<\/li>\n\n\n\n<li>Added option to use Japanese variants of CJK characters<\/li>\n\n\n\n<li>Added support for Viossa language<\/li>\n\n\n\n<li>When entities leave or enter The End, the area they arrive in will now stay loaded for 15 seconds, matching the behavior of Nether Portals<\/li>\n\n\n\n<li>Improvements to the Game&#8217;s Performance<\/li>\n\n\n\n<li>Improved handling of errors during saving and loading<\/li>\n<\/ul>\n\n\n\n<p><strong>UI Updates<\/strong><\/p>\n\n\n\n<p>The UI has been updated to sport a fresher look and to be more consistent when it comes to the layout of different UI elements, all while retaining the essence and feel of the old screens.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The menu background dirt texture has been replaced by a darkened background\n<ul class=\"wp-block-list\">\n<li>The dirt background can be restored by using the built-in Programmer Art Resource Pack<\/li>\n\n\n\n<li>Outside the game, the main menu panorama is displayed behind all screens<\/li>\n\n\n\n<li>In the game, the world will be visible behind all screens<\/li>\n\n\n\n<li>Paired with the darkened background is a blur\n<ul class=\"wp-block-list\">\n<li>The strength of the blur can be configured in Video Settings and Accessibility Settings<\/li>\n\n\n\n<li>In-game screens such as containers and books are not affected by these changes<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Screen elements such as titles and buttons are positioned more consistently across different screens<\/li>\n\n\n\n<li>The World Backups screen and the Players screen in the Realms menu have been updated<\/li>\n\n\n\n<li>Lists now have clearer borders at the top and bottom<\/li>\n\n\n\n<li>Button tooltips will no longer appear when hovering outside the containing element<\/li>\n\n\n\n<li>After defeating the Ender Dragon and entering the End Portal, the End Poem and credits are now displayed with a background based on the animated End Portal effect<\/li>\n\n\n\n<li>The animated Nether Portal texture is displayed when changing dimension to or from The Nether<\/li>\n\n\n\n<li>The animated End Portal effect is displayed when changing dimension to or from The End<\/li>\n<\/ul>\n\n\n\n<p><strong>Spawn Chunk Changes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The size of the spawn chunks changed from a radius of 10 (19&#215;19 entity-ticking chunks) to a radius of 2 (3&#215;3 entity-ticking chunks)\n<ul class=\"wp-block-list\">\n<li>This was done to reduce loading times, as well as memory and CPU usage<\/li>\n\n\n\n<li>We opted to not fully remove spawn chunks to allow players who currently utilize this functionality to continue to do so<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added a new gamerule\u00a0spawnChunkRadius\u00a0to set the size of the spawn chunks\n<ul class=\"wp-block-list\">\n<li>Possible values are 0 to 32, where 0 completely disables the spawn chunks and 10 is equivalent to the functionality before this change<\/li>\n\n\n\n<li>Default value is 2, equivalent to 3&#215;3 entity ticking chunks<\/li>\n\n\n\n<li>Note that setting this to a high value might require allocating more memory for the game in the Launcher<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Tamed Wolves Health And Damage<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tamed Wolves now have 40 health points (20 hearts) instead of 20 health points (10 hearts)<\/li>\n\n\n\n<li>They no longer take half of the damage from most environmental sources like they used to do\n<ul class=\"wp-block-list\">\n<li>In most cases, this change will make no difference given the health boost, but they can now withstand more damage from players and arrows<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Feeding a Wolf now heals twice as many health points<\/li>\n<\/ul>\n\n\n\n<p><strong>Minor Tweaks To Blocks, Items And Entities<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Renamed scutes that drop from Turtles to Turtle Scutes<\/li>\n\n\n\n<li>Added unique sounds for Cobwebs<\/li>\n\n\n\n<li>Enchantments on Items are now always listed in the same order in tooltips, regardless of how they were added to those items<\/li>\n\n\n\n<li>Adjusted flying behaviour for Bees and Parrot to keep them from overshooting their position when flying up and down<\/li>\n\n\n\n<li>Llamas and Shulkers are no longer able to destroy Armor Stands<\/li>\n\n\n\n<li>Status effect particle colors are no longer blended into one particle color\n<ul class=\"wp-block-list\">\n<li>All active visible status effect particles are now rendered separately<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Ctrl+Picking a renamed block (such as a Chest) in Creative Mode will now give a renamed item<\/li>\n\n\n\n<li>Ctrl+Picking a block no longer lists &#8220;(+NBT)&#8221; in the item tooltip<\/li>\n<\/ul>\n\n\n\n<p><strong>Accessibility<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The default focus is now always set when entering or exiting any menu while navigating using tab or arrow keys<\/li>\n\n\n\n<li>Added a new accessibility option to control the strength of the background blur when a menu is open<\/li>\n<\/ul>\n\n\n\n<p><strong>Japanese Font Variants<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A new option has been added to select Japanese variants for some CJK characters<\/li>\n\n\n\n<li>Replacement glyphs come from the Japanese version of the Unifont font<\/li>\n\n\n\n<li>The new option is included in a new &#8220;Font Settings&#8221; menu, accessible from the &#8220;Language&#8221; menu<\/li>\n\n\n\n<li>The default value of this option is based on the system locale language setting<\/li>\n\n\n\n<li>The &#8220;Force Unicode&#8221; button has been moved to &#8220;Font Settings&#8221;<\/li>\n<\/ul>\n\n\n\n<p><strong>Performance Improvements<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Improved Hopper performance<\/li>\n\n\n\n<li>Hoppers will no longer try to pick up item entities if there is a full block placed above it\n<ul class=\"wp-block-list\">\n<li>Beehives and Bee Nests are exempt from this<\/li>\n\n\n\n<li>This does not affect Minecarts with Hoppers<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Reduced time needed to generate Explorer Maps to Buried Treasures<\/li>\n<\/ul>\n\n\n\n<p><strong>Saving And Loading Improvements<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>In Singleplayer, when errors occur during loading or saving of chunks, a warning will be shown in a toast<\/li>\n\n\n\n<li>Trying to join a Singleplayer world with less than 64 MB free disk space will show a warning screen\n<ul class=\"wp-block-list\">\n<li>Additionally, a warning toast will be shown periodically while in game<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Technical Changes<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The Data Pack version is now 41<\/li>\n\n\n\n<li>The Resource Pack version is now 32<\/li>\n\n\n\n<li>The game now requires Java 21<\/li>\n\n\n\n<li>The game now requires a 64-bit Operating System<\/li>\n\n\n\n<li>The included Java distribution is now the Microsoft build of OpenJDK 21.0.3<\/li>\n\n\n\n<li>Added transfer and cookie packets for custom servers<\/li>\n\n\n\n<li>Added an option to use a faster region file compression algorithm on dedicated servers<\/li>\n\n\n\n<li>Added a reserved region file compression id for third-party servers to use for custom compression implementations<\/li>\n\n\n\n<li>Changes to optimizing worlds<\/li>\n\n\n\n<li>Improved server TPS debug chart<\/li>\n\n\n\n<li>Allowed server operators to view dedicated server TPS debug chart<\/li>\n\n\n\n<li>Added JFR (Java Flight Recorder) events for individual chunk reads (minecraft.ChunkRegionRead) and writes (minecraft.ChunkRegionWrite)<\/li>\n<\/ul>\n\n\n\n<p><strong>Network Protocol<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Reduced amount of data sent by the server during login by reusing parts of the vanilla data pack<\/li>\n\n\n\n<li>Client chat state is now preserved by default when entering configuration phase<\/li>\n\n\n\n<li>Invalid data in packets sent from a server will now cause the game client to disconnect\n<ul class=\"wp-block-list\">\n<li>To ease the transition period, modded servers can opt out by setting the appropriate field in the&nbsp;handshake\/game_profile&nbsp;packet<\/li>\n\n\n\n<li>This option will be removed in the next release<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The\u00a0chat_command_signed\u00a0packet has been split from\u00a0chat_command\n<ul class=\"wp-block-list\">\n<li>Commands that do not accept any signed arguments will use the unsigned packet, and will not pass any &#8216;last seen&#8217; chat updates<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Transfer Packets<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Custom servers can now request that clients connect to another server with a new packet<\/li>\n\n\n\n<li>When a client is transferred, it will connect to the target server with a new transfer intent (id 3)<\/li>\n\n\n\n<li>By default, servers will not accept incoming transfers and will disconnect the client<\/li>\n\n\n\n<li>This can be changed by setting the&nbsp;accepts-transfers&nbsp;property to&nbsp;true&nbsp;in the&nbsp;server.properties&nbsp;file<\/li>\n\n\n\n<li>Resource packs are maintained across transfers<\/li>\n\n\n\n<li>In the case of a transfer, custom servers can skip authenticating again with a new flag in the clientbound&nbsp;hello&nbsp;packet<\/li>\n<\/ul>\n\n\n\n<p><strong>Cookie Packets<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cookie packets allow custom servers to request and store data on a client\n<ul class=\"wp-block-list\">\n<li>Each cookie may be up to 5 KiB in size<\/li>\n\n\n\n<li>Cookies may be requested during login, configuration and play phases \u2014 but only stored during the configuration and play phases<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Cookies persist across server transfers but are not persisted when the player disconnects\n<ul class=\"wp-block-list\">\n<li>This allows servers to pass along information such as authentication or custom game data to the new server<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Region File Compression Algorithm<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added a dedicated server configuration property\u00a0region-file-compression\u00a0with 3 possible values:\n<ul class=\"wp-block-list\">\n<li>deflate, the default option. Uses the old algorithm<\/li>\n\n\n\n<li>lz4&nbsp;uses LZ4 algorithm, which requires less CPU time to compress and decompress but uses more disk space<\/li>\n\n\n\n<li>none\u00a0does not compress the data\n<ul class=\"wp-block-list\">\n<li>This consumes significantly more space and requires significant time to read and write, even though CPU is used less<\/li>\n\n\n\n<li>Might make sense together with filesystem level compression<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Changing the compression algorithm will not automatically recompress the world\n<ul class=\"wp-block-list\">\n<li>New or updated chunks will use the newly configured algorithm, but the old ones will stay in the previous format<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Reserved Compression Id For Third-Party Servers<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Compression id&nbsp;127&nbsp;can now be used for custom implementations of region file compression<\/li>\n\n\n\n<li>When used, the version id must be followed by a namespaced string representing the custom algorithm used<\/li>\n<\/ul>\n\n\n\n<p><strong>World Optimizing Changes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Optimizing singleplayer worlds and running a dedicated server with the&nbsp;forceUpgrade&nbsp;option now also upgrades contentsof&nbsp;entities&nbsp;and&nbsp;poi&nbsp;directories of the world<\/li>\n\n\n\n<li>Added a new\u00a0recreateRegionFiles\u00a0dedicated server startup parameter\n<ul class=\"wp-block-list\">\n<li>It will trigger world optimization similar to&nbsp;forceUpgrade, but will also rewrite all the chunks independentlyof whether they have been upgraded<\/li>\n\n\n\n<li>This will create fresh and defragmented region files<\/li>\n\n\n\n<li>Using this parameter after changing the&nbsp;region-file-compression&nbsp;server property will recompress all region filesin the new format<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Improved The Server Tps Debug Chart<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>As before, it is accessible by pressing&nbsp;F3 + 2<\/li>\n\n\n\n<li>The bottom dark red section of the chart displays the time spent during the main logic of the server tick\n<ul class=\"wp-block-list\">\n<li>This is equivalent to the value displayed in the old chart<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The light brown section displays time spent running scheduled tasks<\/li>\n\n\n\n<li>The purple section displays time spent executing all other code during the tick<\/li>\n\n\n\n<li>The top light green (or yellow or red depending on lag) section displays time spent idling, waiting for next tick<\/li>\n\n\n\n<li>The&nbsp;min,&nbsp;avg,&nbsp;max&nbsp;aggregate values are based on the sum of the first 3 sections<\/li>\n\n\n\n<li>Server operators can now view the TPS debug chart while connected to their dedicated server<\/li>\n<\/ul>\n\n\n\n<p><strong>Chat<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Client chat state (on-screen messages and chat input history) is now preserved by client when entering and exiting configuration phase<\/li>\n\n\n\n<li>Message signature chain handling remains unchanged &#8211; going into configuration phase starts a new session<\/li>\n\n\n\n<li>If the client has a message delay configured, any pending messages will be delivered immediately before leaving the world<\/li>\n\n\n\n<li>The server can clear chat state by sending a&nbsp;reset_chat&nbsp;packet in configuration phase<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Data Pack Versions 27 Through 41<\/strong><\/h4>\n\n\n\n<p>The Data Pack version used by the game is now 41. These are the changes compared to version 26, used in 1.20.4.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Renamed&nbsp;scute&nbsp;item to&nbsp;turtle_scute<\/li>\n\n\n\n<li>Changed Item Stack data format, introducing Item Stack Components<\/li>\n\n\n\n<li>Added many new Attributes<\/li>\n\n\n\n<li>Added new loot functions<\/li>\n\n\n\n<li>Added new advancement predicates<\/li>\n\n\n\n<li>Added new tags<\/li>\n\n\n\n<li>Recipe results can now specify component data<\/li>\n\n\n\n<li>Added data-driven registries for Banner Patterns and Wolf Variants<\/li>\n\n\n\n<li>Particle representation in commands and area effect clouds has been changed<\/li>\n<\/ul>\n\n\n\n<p><strong>Item Data Format<\/strong><\/p>\n\n\n\n<p>We have made some large changes to how Item Stack-specific properties are stored and represented in this release, replacing the current NBT &#8216;tag&#8217; with structured &#8216;components&#8217;.<\/p>\n\n\n\n<p>This change has been made in order to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Validate item properties at load time, enabling easier identification of invalid data in commands and data packs\n<ul class=\"wp-block-list\">\n<li>This should avoid any &#8216;silent&#8217; breakages in commands specifying custom item data for any potential future format changes<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Continue to evolve the game to enable the creation of dynamic content<\/li>\n\n\n\n<li>Improve performance in cases where the game needs to frequently look up some property of an item (e.g. Armor Trims rendering every frame)<\/li>\n\n\n\n<li>We understand that this is a significant breaking change for many datapacks and custom maps which will require significant effort to upgrade<\/li>\n<\/ul>\n\n\n\n<p>We do however believe that this builds critical foundations for future extensibility. We have taken care to ship these changes all at once, with the hope that this avoids future incremental changes requiring many small updates to packs.<\/p>\n\n\n\n<p>The current NBT &#8216;tag&#8217; has existed for quite some time, and we are aware that a lot of clever techniques have been developed with this for commands and data packs. Over the course of the snapshot series, we have hugely appreciated your feedback on these changes, allowing us to avoid (often undocumented) functionality being lost without suitable alternatives.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Unstructured NBT data attached to stacks of items (tag\u00a0field) has been replaced with structured &#8216;components&#8217;\n<ul class=\"wp-block-list\">\n<li>This data is parsed and validated when the item is loaded<\/li>\n\n\n\n<li>This should improve performance in certain scenarios (e.g. Armor Trim rendering) when item data was frequently compared or requested and parsed<\/li>\n\n\n\n<li>Custom data can still be stored in the&nbsp;minecraft:custom_data&nbsp;component<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Item types (e.g.&nbsp;minecraft:stick) hold a set of default components on an item that individual item stacks can override<\/li>\n\n\n\n<li>The format of serialized items and items in data packs has been updated for consistency and to support components<\/li>\n\n\n\n<li>Item syntax in commands has been updated to support components<\/li>\n\n\n\n<li>When advanced tooltips are enabled (F3+H), the number of components will be displayed instead of number of tags<\/li>\n\n\n\n<li>Default component values for items are now listed in&nbsp;items.json&nbsp;generated in&nbsp;reports&nbsp;directory<\/li>\n\n\n\n<li>Block definitions are now added to&nbsp;blocks.json&nbsp;report (note: those definitions are not used yet and present only for informational purposes)<\/li>\n<\/ul>\n\n\n\n<p><strong>Migrated Item Stack Components<\/strong><\/p>\n\n\n\n<p>These are item stack components that replace existing functionality that was formerly specified in item NBT.All commands and data definitions will need to be upgraded to use these formats. Items in-world will however be automatically upgraded.<\/p>\n\n\n\n<p><strong>minecraft:custom_data<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can be used for custom data storage on an item<\/li>\n\n\n\n<li>When upgrading a world, any non-game data in the item&nbsp;tag&nbsp;will be moved into here<\/li>\n\n\n\n<li>Format: object with any fields\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;custom_data={some:&#8217;data&#8217;}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_custom_data&nbsp;and&nbsp;copy_custom_data&nbsp;loot functions<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:damage<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The amount of durability removed from an item<\/li>\n\n\n\n<li>If removed, the item will not be damageable<\/li>\n\n\n\n<li>Replaces&nbsp;Damage&nbsp;tag<\/li>\n\n\n\n<li>Format: non-negative integer\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;damage=12<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>For damageable items (with the&nbsp;max_damage&nbsp;component), has an implicit default value of:&nbsp;0<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_damage&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:repair_cost<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The additional experience cost required to modify an item in an Anvil<\/li>\n\n\n\n<li>Replaces&nbsp;RepairCost&nbsp;tag<\/li>\n\n\n\n<li>Format: non-negative integer\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;repair_cost=12<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>If not set, has an implicit default value of:&nbsp;0<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:unbreakable<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If set, the item will not lose any durability when used<\/li>\n\n\n\n<li>Replaces&nbsp;Unbreakable&nbsp;boolean tag<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>show_in_tooltip: boolean (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>If&nbsp;true, an &#8216;Unbreakable&#8217; line will be included in the tooltip<\/li>\n\n\n\n<li>Replaces 3rd bit of&nbsp;HideFlags&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;unbreakable={},&nbsp;unbreakable={show_in_tooltip:false}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:enchantments<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores a list of enchantments and their levels on an item<\/li>\n\n\n\n<li>Replaces&nbsp;Enchantments&nbsp;tag<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>levels: object of enchantment (id string) to level (integer [0; 255])<\/li>\n\n\n\n<li>show_in_tooltip: boolean (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>If&nbsp;false, no enchantments will be shown in the item tooltip<\/li>\n\n\n\n<li>Replaces 1st bit of&nbsp;HideFlags&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;enchantments={levels:{&#8216;minecraft:protection&#8217;:2},show_in_tooltip:false}<\/li>\n\n\n\n<li>Alternatively, can be defined as an inline map of enchantment id to level\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;enchantments={sharpness:1}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>If not set, has an implicit default value of:&nbsp;{levels:{}}<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_enchantments,&nbsp;enchant_randomly, and&nbsp;enchant_with_levels&nbsp;loot functions<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:stored_enchantments<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores list of enchantments and their levels for an Enchanted Book<\/li>\n\n\n\n<li>Unlike&nbsp;minecraft:enchantments, the effects provided by enchantments do not apply from this component<\/li>\n\n\n\n<li>Replaces&nbsp;StoredEnchantments&nbsp;tag on Enchanted Books<\/li>\n\n\n\n<li>Format: same as\u00a0minecraft:enchantments\n<ul class=\"wp-block-list\">\n<li>show_in_tooltip&nbsp;value replaces 6th bit of&nbsp;HideFlags&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Enchanted Books, has an implicit default value of:&nbsp;{levels:{}}<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:custom_name<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Custom name override for an item (as set by renaming with an Anvil)<\/li>\n\n\n\n<li>Replaces&nbsp;display.Name&nbsp;tag<\/li>\n\n\n\n<li>Format: JSON chat component string\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;custom_name='{&#8220;text&#8221;: &#8220;This item is renamed!&#8221;, &#8220;color&#8221;: &#8220;red&#8221;}&#8217;<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_name&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:lore<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Additional lines to include in an item&#8217;s tooltip<\/li>\n\n\n\n<li>Replaces&nbsp;display.Lore&nbsp;tag<\/li>\n\n\n\n<li>Format: list of JSON chat component strings (max: 256 entries)\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;lore=[&#8216;{&#8220;text&#8221;: &#8220;The cake is a lie!&#8221;}&#8217;]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>If not set, has an implicit default value of:&nbsp;[]<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_lore&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:can_break<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls which blocks a player in Adventure mode can break with this item<\/li>\n\n\n\n<li>Replaces\u00a0CanDestroy\u00a0tag\n<ul class=\"wp-block-list\">\n<li>These were previously stored as flat strings, but now use the more flexible block predicate format already used in loot tables and advancements<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>predicates: list of block predicates\n<ul class=\"wp-block-list\">\n<li>blocks: block, list of blocks, or hash-prefixed block tag<\/li>\n\n\n\n<li>nbt: block entity NBT to match<\/li>\n\n\n\n<li>state: map of state property key to values to match<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>show_in_tooltip: boolean (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>Replaces 4th bit of&nbsp;HideFlags&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;can_break={predicates:[{blocks:&#8217;minecraft:furnace&#8217;,state:{facing:&#8217;north&#8217;}]}<\/li>\n\n\n\n<li>Alternatively, can be defined as a single block predicate\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;can_break={blocks:&#8217;minecraft:stone&#8217;}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:can_place_on<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls which blocks a player in Adventure mode can place on with this item<\/li>\n\n\n\n<li>Replaces&nbsp;CanPlaceOn&nbsp;tag<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>predicates: list of block predicates\n<ul class=\"wp-block-list\">\n<li>Same as&nbsp;can_break.predicates<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>show_in_tooltip: boolean (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>Replaces 5th bit of&nbsp;HideFlags&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;can_place_on={predicates:[{blocks:&#8217;minecraft:furnace&#8217;,state:{facing:&#8217;north&#8217;}]}<\/li>\n\n\n\n<li>Alternatively, can be defined as a single block predicate\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;can_place_on={blocks:&#8217;minecraft:stone&#8217;}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:dyed_color<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Represents a color applied to a dyeable item (in the&nbsp;#minecraft:dyeable&nbsp;item tag)<\/li>\n\n\n\n<li>Replaces&nbsp;display.color&nbsp;tag<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>rgb: integer, RGB value<\/li>\n\n\n\n<li>show_in_tooltip: boolean (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>Replaces 7th bit of&nbsp;HideFlags&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;dyed_color={rgb:16711680}<\/li>\n\n\n\n<li>Alternatively, can be defined as an inline integer RGB value\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;dyed_color=16711680<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:attribute_modifiers<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds attribute modifiers applied to any item<\/li>\n\n\n\n<li>Replaces&nbsp;AttributeModifiers&nbsp;tag<\/li>\n\n\n\n<li>Format: object with fields (default:\u00a0{modifiers:[]})\n<ul class=\"wp-block-list\">\n<li>modifiers: list of attribute modifiers\n<ul class=\"wp-block-list\">\n<li>type: attribute id\n<ul class=\"wp-block-list\">\n<li>Replaces&nbsp;AttributeName<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>slot: one of:\n<ul class=\"wp-block-list\">\n<li>any&nbsp;(default)<\/li>\n\n\n\n<li>hand: either in main or offhand (new)<\/li>\n\n\n\n<li>armor: any armor slot (new)<\/li>\n\n\n\n<li>mainhand<\/li>\n\n\n\n<li>offhand<\/li>\n\n\n\n<li>head<\/li>\n\n\n\n<li>chest<\/li>\n\n\n\n<li>legs<\/li>\n\n\n\n<li>feet<\/li>\n\n\n\n<li>body&nbsp;(new)<\/li>\n\n\n\n<li>Modifiers will only apply when the item is equipped in the specified slot<\/li>\n\n\n\n<li>Replaces&nbsp;Slot<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>uuid: uuid, uniquely represents this modifier\n<ul class=\"wp-block-list\">\n<li>Only one modifier can exist with the same id<\/li>\n\n\n\n<li>Replaces&nbsp;UUID<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>name: string, human-readable name\n<ul class=\"wp-block-list\">\n<li>Replaces&nbsp;Name<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>amount: double, number of units to modify this attribute (controlled by\u00a0operation)\n<ul class=\"wp-block-list\">\n<li>Replaces&nbsp;Amount<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>operation: one of:\n<ul class=\"wp-block-list\">\n<li>add_value&nbsp;(was&nbsp;0): Adds&nbsp;amount&nbsp;to the attribute<\/li>\n\n\n\n<li>add_multiplied_base&nbsp;(was&nbsp;1): Adds&nbsp;amount&nbsp;* base value to the attribute<\/li>\n\n\n\n<li>add_multiplied_total&nbsp;(was&nbsp;2): Adds&nbsp;amount&nbsp;* total value (from all previous modifiers) to the attribute<\/li>\n\n\n\n<li>Replaces&nbsp;Operation&nbsp;with integer ids<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>show_in_tooltip: boolean (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>Replaces 2nd bit of&nbsp;HideFlags&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;attribute_modifiers={modifiers:[{type:&#8217;minecraft:generic.scale&#8217;,uuid:[1,2,3,4],name:&#8217;Big!&#8217;,amount:1.0,operation:&#8217;add_multiplied_base&#8217;}]}<\/li>\n\n\n\n<li>Alternatively, can be defined as a direct list of modifiers\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;attribute_modifiers=[{type:&#8217;generic.scale&#8217;,uuid:[1,2,3,4],name:&#8217;Big!&#8217;,amount:1.0,operation:&#8217;add_multiplied_base&#8217;}]<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>If not set, has an implicit default value based on the item type&#8217;s default attributes (e.g. attack damage for weapons)<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_attributes&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:charged_projectiles<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds all projectiles that have been loaded into a Crossbow<\/li>\n\n\n\n<li>If not present, the Crossbow is not charged<\/li>\n\n\n\n<li>Replaces&nbsp;Charged&nbsp;and&nbsp;ChargedProjectiles&nbsp;tags<\/li>\n\n\n\n<li>Format: list of item stacks\n<ul class=\"wp-block-list\">\n<li>Cannot store empty\/air items<\/li>\n\n\n\n<li>e.g.&nbsp;charged_projectiles=[{id:&#8217;minecraft:arrow&#8217;}]<\/li>\n\n\n\n<li>No longer restricted to 3 entries<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;modify_contents&nbsp;and&nbsp;set_contents&nbsp;loot functions<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:intangible_projectile<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Marks that a projectile item would be intangible when fired (i.e. can only be picked up by a creative mode player)<\/li>\n\n\n\n<li>Only set when items are inside a Crossbow&#8217;s&nbsp;charged_projectiles&nbsp;component<\/li>\n\n\n\n<li>Format: empty object\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;intangible_projectile={}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:bundle_contents<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds all items stored inside of a Bundle<\/li>\n\n\n\n<li>If removed, items cannot be added to the Bundle<\/li>\n\n\n\n<li>Replaces&nbsp;Items&nbsp;tag<\/li>\n\n\n\n<li>Format: list of item stacks\n<ul class=\"wp-block-list\">\n<li>Cannot store empty\/air items<\/li>\n\n\n\n<li>e.g.&nbsp;bundle_contents=[{id:&#8217;minecraft:poisonous_potato&#8217;}]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Bundles, has an implicit default value of:&nbsp;[]<\/li>\n\n\n\n<li>Can be modified with the&nbsp;modify_contents&nbsp;and&nbsp;set_contents&nbsp;loot functions<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:map_color<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Represents the tint of the decorations on the Filled Map item<\/li>\n\n\n\n<li>Replaces&nbsp;display.MapColor&nbsp;tag<\/li>\n\n\n\n<li>Format: integer, RGB value\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;map_color=16711680<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Filled Maps, has an implicit default value of:&nbsp;4603950<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:map_decorations<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds a list of markers to be placed on a Filled Map (used for Explorer Maps)<\/li>\n\n\n\n<li>Replaces&nbsp;Decorations&nbsp;tag<\/li>\n\n\n\n<li>Format: map of unique decoration id to decorations\n<ul class=\"wp-block-list\">\n<li>type: one of:\n<ul class=\"wp-block-list\">\n<li>player&nbsp;(was&nbsp;0)<\/li>\n\n\n\n<li>frame&nbsp;(was&nbsp;1)<\/li>\n\n\n\n<li>red_marker&nbsp;(was&nbsp;2)<\/li>\n\n\n\n<li>blue_marker&nbsp;(was&nbsp;3)<\/li>\n\n\n\n<li>target_x&nbsp;(was&nbsp;4)<\/li>\n\n\n\n<li>target_point&nbsp;(was&nbsp;5)<\/li>\n\n\n\n<li>player_off_map&nbsp;(was&nbsp;6)<\/li>\n\n\n\n<li>player_off_limits&nbsp;(was&nbsp;7)<\/li>\n\n\n\n<li>mansion&nbsp;(was&nbsp;8)<\/li>\n\n\n\n<li>monument&nbsp;(was&nbsp;9)<\/li>\n\n\n\n<li>banner_white&nbsp;(was&nbsp;10)<\/li>\n\n\n\n<li>banner_orange&nbsp;(was&nbsp;11)<\/li>\n\n\n\n<li>banner_magenta&nbsp;(was&nbsp;12)<\/li>\n\n\n\n<li>banner_light_blue&nbsp;(was&nbsp;13)<\/li>\n\n\n\n<li>banner_yellow&nbsp;(was&nbsp;14)<\/li>\n\n\n\n<li>banner_lime&nbsp;(was&nbsp;15)<\/li>\n\n\n\n<li>banner_pink&nbsp;(was&nbsp;16)<\/li>\n\n\n\n<li>banner_gray&nbsp;(was&nbsp;17)<\/li>\n\n\n\n<li>banner_light_gray&nbsp;(was&nbsp;18)<\/li>\n\n\n\n<li>banner_cyan&nbsp;(was&nbsp;19)<\/li>\n\n\n\n<li>banner_purple&nbsp;(was&nbsp;20)<\/li>\n\n\n\n<li>banner_blue&nbsp;(was&nbsp;21)<\/li>\n\n\n\n<li>banner_brown&nbsp;(was&nbsp;22)<\/li>\n\n\n\n<li>banner_green&nbsp;(was&nbsp;23)<\/li>\n\n\n\n<li>banner_red&nbsp;(was&nbsp;24)<\/li>\n\n\n\n<li>banner_black&nbsp;(was&nbsp;25)<\/li>\n\n\n\n<li>red_x&nbsp;(was&nbsp;26)<\/li>\n\n\n\n<li>village_desert&nbsp;(was&nbsp;27)<\/li>\n\n\n\n<li>village_plains&nbsp;(was&nbsp;28)<\/li>\n\n\n\n<li>village_savanna&nbsp;(was&nbsp;29)<\/li>\n\n\n\n<li>village_snowy&nbsp;(was&nbsp;30)<\/li>\n\n\n\n<li>village_taiga&nbsp;(was&nbsp;31)<\/li>\n\n\n\n<li>jungle_temple&nbsp;(was&nbsp;32)<\/li>\n\n\n\n<li>swamp_hut&nbsp;(was&nbsp;33)<\/li>\n\n\n\n<li>trial_chambers&nbsp;(new)<\/li>\n\n\n\n<li>Replaces&nbsp;type&nbsp;byte with numeric ids<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>x: double, world coordinate<\/li>\n\n\n\n<li>z: double, world coordinate<\/li>\n\n\n\n<li>rotation: float, clockwise rotation from north in degrees\n<ul class=\"wp-block-list\">\n<li>Replaces&nbsp;rot&nbsp;double<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;map_decorations={&#8216;Some marker&#8217;:{type:&#8217;target_x&#8217;,x:123.0,z:-45.0,rotation:0.0f}}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Filled Maps, has an implicit default value of:&nbsp;{}<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:map_id<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>References the shared map state holding map contents and markers for a Filled Map<\/li>\n\n\n\n<li>Replaces&nbsp;map&nbsp;tag<\/li>\n\n\n\n<li>Format: integer id\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;map_id=1<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:custom_model_data<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can be used to replace the models of items by selecting for the&nbsp;minecraft:custom_model_data&nbsp;property in the item model<\/li>\n\n\n\n<li>Replaces&nbsp;CustomModelData&nbsp;tag<\/li>\n\n\n\n<li>Format: integer value\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;custom_model_data=43<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_custom_model_data&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:potion_contents<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the contents of a potion (Potion, Splash Potion, Lingering Potion), or potion applied to an item (Tipped Arrow)<\/li>\n\n\n\n<li>Replaces&nbsp;Potion,&nbsp;CustomPotionColor, and&nbsp;custom_potion_effects&nbsp;tags<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>potion: potion id (optional)\n<ul class=\"wp-block-list\">\n<li>The potion type in this item: the item will inherit all effects from this<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>custom_color: integer, RGB value (optional)\n<ul class=\"wp-block-list\">\n<li>Overrides the visual color of the potion<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>custom_effects: list of effect instances (default:\u00a0[])\n<ul class=\"wp-block-list\">\n<li>Additional list of custom effects that this item should apply, that may not be representable by an existing potion<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;potion_contents={potion:&#8217;minecraft:invisibility&#8217;,custom_color:16711680}<\/li>\n\n\n\n<li>Alternatively, can be defined as a single potion ID\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;potion_contents=&#8221;invisibility&#8221;<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Potion or Tipped Arrow items, has an implicit default value of:&nbsp;{}<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_potion&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:writable_book_content<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the contents in a Book and Quill<\/li>\n\n\n\n<li>Replaces\u00a0pages\u00a0and\u00a0filtered_pages\u00a0tags\n<ul class=\"wp-block-list\">\n<li>The pages list objects directly, with&nbsp;{raw:&#8217;&#8230;&#8217;}&nbsp;wrapping<\/li>\n\n\n\n<li>filtered_pages&nbsp;are pulled by index keys into the relevant page entry under the&nbsp;filtered&nbsp;field<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>pages: list (max: 100 entries) of either:\n<ul class=\"wp-block-list\">\n<li>object with fields\n<ul class=\"wp-block-list\">\n<li>raw: string, page plain text contents<\/li>\n\n\n\n<li>filtered: string, filtered page contents (optional)\n<ul class=\"wp-block-list\">\n<li>If specified, players with chat filter enabled will see this page instead of&nbsp;raw<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>or: string, page plain text contents<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;writable_book_content={pages:[&#8216;Hello world!&#8217;]}&nbsp;or&nbsp;writable_book_content={pages:[{raw:&#8217;Hello world!&#8217;}]}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Book and Quill, has an implicit default value of:&nbsp;{pages:[]}<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_writable_book_pages&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:written_book_content<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the contents and metadata of a Written Book<\/li>\n\n\n\n<li>Replaces&nbsp;pages,&nbsp;filtered_pages,&nbsp;title,&nbsp;filtered_title,&nbsp;author,&nbsp;generation, and&nbsp;resolved&nbsp;tags<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>pages: list of filtered chat components\n<ul class=\"wp-block-list\">\n<li>Same format as&nbsp;writable_book_contents&nbsp;pages, except uses JSON chat component strings which can be formatted<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>title: filtered string (same format as pages)<\/li>\n\n\n\n<li>author: string, player name<\/li>\n\n\n\n<li>generation: integer [0; 3]\n<ul class=\"wp-block-list\">\n<li>The number of times this book has been copied (0&nbsp;= original)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>resolved: boolean\n<ul class=\"wp-block-list\">\n<li>true&nbsp;if the chat components in this book have already been resolved (entity selectors, scores substituted)<\/li>\n\n\n\n<li>If&nbsp;false, it will be resolved when opened by a player<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;written_book_content={pages:[&#8216;&#8221;Hello world!&#8221;&#8216;],title:{raw:'&#8221;A delightful read&#8221;&#8216;},author:&#8217;Herobrine&#8217;,generation:1,resolved:true}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_written_book_pages&nbsp;and&nbsp;set_book_cover&nbsp;loot functions<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:trim<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the trims applied to an item\n<ul class=\"wp-block-list\">\n<li>Presence of the component is no longer restricted by the&nbsp;#minecraft:trimmable_armor&nbsp;item tag (although, this tag is still used for recipes)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Replaces&nbsp;Trim&nbsp;tag of the same format<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>pattern: pattern id (or inline pattern)<\/li>\n\n\n\n<li>material: material id (or inline material)<\/li>\n\n\n\n<li>show_in_tooltip: boolean (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>Replaces 8th bit of&nbsp;HideFlags&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;trim={pattern:&#8217;minecraft:silence&#8217;,material:&#8217;minecraft:redstone&#8217;}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:suspicious_stew<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the effects that will be applied when consuming Suspicious Stew<\/li>\n\n\n\n<li>Replaces&nbsp;effects&nbsp;tag of the same format<\/li>\n\n\n\n<li>Format: list of effect objects with fields\n<ul class=\"wp-block-list\">\n<li>id: effect id<\/li>\n\n\n\n<li>duration: integer, tick count (default:&nbsp;160)<\/li>\n\n\n\n<li>e.g.&nbsp;suspicious_stew=[{id:&#8217;minecraft:poison&#8217;}]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Suspicious Stew, has an implicit default value of:&nbsp;[]<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_stew_effect&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:hide_additional_tooltip<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If present, disables &#8216;additional&#8217; tooltip part which comes from the item type<\/li>\n\n\n\n<li>Replaces 6th bit of&nbsp;HideFlags&nbsp;tag<\/li>\n\n\n\n<li>Format: empty object\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;hide_additional_tooltip={}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:debug_stick_state<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores the selected block state properties used by a Debug Stick<\/li>\n\n\n\n<li>Replaces&nbsp;DebugProperty&nbsp;tag<\/li>\n\n\n\n<li>Format: map of block id to block property name\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;debug_stick_state={&#8216;minecraft:turtle_egg&#8217;:&#8217;eggs&#8217;,&#8217;minecraft:furnace&#8217;:&#8217;facing&#8217;}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Debug Stick, has an implicit default value of:&nbsp;{}<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:entity_data<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores unstructured NBT data to apply to an entity when using an item that spawns an entity, such as a Spawn Egg or Armor Stand<\/li>\n\n\n\n<li>Replaces previous&nbsp;EntityTag&nbsp;tag, with same behavior<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>Must contain an&nbsp;id&nbsp;field with the entity type<\/li>\n\n\n\n<li>Any additional fields will be merged into the entity when spawned<\/li>\n\n\n\n<li>e.g.&nbsp;entity_data={id:&#8217;minecraft:pig&#8217;,Health:1.0f}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:bucket_entity_data<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores unstructured NBT data to apply to an entity when placed from a bucket<\/li>\n\n\n\n<li>Replaces&nbsp;NoAI,&nbsp;Silent,&nbsp;NoGravity,&nbsp;Glowing,&nbsp;Invulnerable,&nbsp;Health,&nbsp;Age,&nbsp;Variant,&nbsp;HuntingCooldown, and&nbsp;BucketVariantTag&nbsp;tags<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>Can contain any of the above listed fields, which will be applied to the entity when placed<\/li>\n\n\n\n<li>e.g.&nbsp;bucket_entity_data={NoAI:1,Age:43}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On bucketed mob items, has an implicit default value of:&nbsp;{}<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:instrument<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the instrument type used by a Goat Horn<\/li>\n\n\n\n<li>Replaces&nbsp;instrument&nbsp;tag of same format<\/li>\n\n\n\n<li>Format: instrument id\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;instrument=&#8217;minecraft:ponder_goat_horn&#8217;<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_instrument&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:recipes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>List of recipes that should be unlocked when using the Knowledge Book item<\/li>\n\n\n\n<li>Replaces&nbsp;Recipes&nbsp;tag of same format<\/li>\n\n\n\n<li>Format: list of recipe ids\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;recipes=[&#8216;minecraft:acacia_boat&#8217;,&#8217;minecraft:anvil&#8217;]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Knowledge Book, has an implicit default value of:&nbsp;[]<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:lodestone_tracker<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If present, specifies that the Compass is a Lodestone Compass<\/li>\n\n\n\n<li>Replaces&nbsp;LodestonePos,&nbsp;LodestoneDimension, and&nbsp;LodestoneTracked&nbsp;tags<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>target: object with fields (optional)\n<ul class=\"wp-block-list\">\n<li>pos: integer array of x, y, and z<\/li>\n\n\n\n<li>dimension: dimension id<\/li>\n\n\n\n<li>If not present, the compass will spin<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>tracked: boolean (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>If&nbsp;true, when the Lodestone at the target position is removed, the&nbsp;target&nbsp;field will be removed<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;lodestone_tracker={target:{pos:[13,64,-43],dimension:&#8217;minecraft:the_nether&#8217;}}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:firework_explosion<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores the explosion crafted in a Firework Star<\/li>\n\n\n\n<li>Replaces&nbsp;Explosion.Type,&nbsp;Explosion.Colors,&nbsp;Explosion.FadeColors,&nbsp;Explosion.Trail, and&nbsp;Explosion.Flicker&nbsp;tags<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>shape: one of\n<ul class=\"wp-block-list\">\n<li>small_ball&nbsp;(was&nbsp;0)<\/li>\n\n\n\n<li>large_ball&nbsp;(was&nbsp;1)<\/li>\n\n\n\n<li>star&nbsp;(was&nbsp;2)<\/li>\n\n\n\n<li>creeper&nbsp;(was&nbsp;3)<\/li>\n\n\n\n<li>burst&nbsp;(was&nbsp;4)<\/li>\n\n\n\n<li>Replaces&nbsp;Type&nbsp;numeric ids<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>colors: integer array, RGB values (default:\u00a0[])\n<ul class=\"wp-block-list\">\n<li>List of initial particle colors, randomly selected from<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>fade_colors: integer array, RGB values (default:\u00a0[])\n<ul class=\"wp-block-list\">\n<li>List of particle colors to fade to, randomly selected from<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>has_trail: boolean (default:&nbsp;false)<\/li>\n\n\n\n<li>has_twinkle: boolean (default:\u00a0false)\n<ul class=\"wp-block-list\">\n<li>Renamed from&nbsp;Flicker&nbsp;tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;firework_explosion={shape:&#8217;large_ball&#8217;,colors:[16711680],has_trail:true}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_firework_explosion&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:fireworks<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores all explosions crafted into a Firework Rocket, as well as flight duration<\/li>\n\n\n\n<li>Replaces&nbsp;Fireworks.Explosions&nbsp;and&nbsp;Fireworks.Flight&nbsp;tags<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>explosions: list of explosions (max: 256 entries)\n<ul class=\"wp-block-list\">\n<li>Same format as&nbsp;minecraft:firework_explosion&nbsp;component<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>flight_duration: unsigned byte, number of gunpowder in this rocket<\/li>\n\n\n\n<li>e.g.&nbsp;fireworks={explosions:[{shape:&#8217;large_ball&#8217;,colors:[16711680],has_trail:true}],flight_duration:2}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Firework Rocket, has an implicit default value of:&nbsp;{explosions:[],flight_duration:1}<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_fireworks&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:profile<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls the skin displayed on a Player Head<\/li>\n\n\n\n<li>Copied to Player Head block when placed<\/li>\n\n\n\n<li>Replaces&nbsp;SkullOwner&nbsp;tag<\/li>\n\n\n\n<li>If only a&nbsp;name&nbsp;is specified, it will be resolved into the corresponding player ID and skin data<\/li>\n\n\n\n<li>Unlike&nbsp;SkullOwner&nbsp;which only supported resolution by name, if only&nbsp;id&nbsp;is specified, the profile and skin will be resolved from this UUID<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>name: string, player profile name (optional)\n<ul class=\"wp-block-list\">\n<li>Must be a valid player name (max 16 characters, no spaces, or special characters)<\/li>\n\n\n\n<li>As this could exist in previous data formats, but would not resolve to a skin, this is replaced by the&nbsp;item_name&nbsp;component which is persisted when placed and broken<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>id: uuid, player profile id (optional)<\/li>\n\n\n\n<li>properties: list of properties (optional)\n<ul class=\"wp-block-list\">\n<li>name: string, property name (e.g.&nbsp;textures)<\/li>\n\n\n\n<li>value: string (base64 encoded texture data)<\/li>\n\n\n\n<li>signature: string (optional)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;profile={name:&#8217;MHF_Sheep&#8217;}<\/li>\n\n\n\n<li>Alternatively, can be defined as a simple player profile name string\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;profile=&#8217;MHF_Sheep&#8217;<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;fill_player_head&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:note_block_sound<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls the sound played by a Player Head when placed on a Note Block<\/li>\n\n\n\n<li>Copied to Player Head block when placed<\/li>\n\n\n\n<li>Replaces&nbsp;BlockEntityTag.note_block_sound&nbsp;tag<\/li>\n\n\n\n<li>Format: sound event id\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;note_block_sound=&#8217;minecraft:ambient.cave&#8217;<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:base_color<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores the base color for a Shield<\/li>\n\n\n\n<li>Replaces&nbsp;BlockEntityTag.Base&nbsp;tag<\/li>\n\n\n\n<li>Format: one of\n<ul class=\"wp-block-list\">\n<li>white&nbsp;(was&nbsp;0)<\/li>\n\n\n\n<li>orange&nbsp;(was&nbsp;1)<\/li>\n\n\n\n<li>magenta&nbsp;(was&nbsp;2)<\/li>\n\n\n\n<li>light_blue&nbsp;(was&nbsp;3)<\/li>\n\n\n\n<li>yellow&nbsp;(was&nbsp;4)<\/li>\n\n\n\n<li>lime&nbsp;(was&nbsp;5)<\/li>\n\n\n\n<li>pink&nbsp;(was&nbsp;6)<\/li>\n\n\n\n<li>gray&nbsp;(was&nbsp;7)<\/li>\n\n\n\n<li>light_gray&nbsp;(was&nbsp;8)<\/li>\n\n\n\n<li>cyan&nbsp;(was&nbsp;9)<\/li>\n\n\n\n<li>purple&nbsp;(was&nbsp;10)<\/li>\n\n\n\n<li>blue&nbsp;(was&nbsp;11)<\/li>\n\n\n\n<li>brown&nbsp;(was&nbsp;12)<\/li>\n\n\n\n<li>green&nbsp;(was&nbsp;13)<\/li>\n\n\n\n<li>red&nbsp;(was&nbsp;14)<\/li>\n\n\n\n<li>black&nbsp;(was&nbsp;15)<\/li>\n\n\n\n<li>e.g.&nbsp;base_color=&#8217;magenta&#8217;<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:banner_patterns<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores the additional patterns applied to a Banner or Shield<\/li>\n\n\n\n<li>Copied to Banner block when placed<\/li>\n\n\n\n<li>Replaces&nbsp;BlockEntityTag.Patterns&nbsp;tag<\/li>\n\n\n\n<li>Format: list of banner patterns\n<ul class=\"wp-block-list\">\n<li>pattern: banner pattern registry id\n<ul class=\"wp-block-list\">\n<li>Replaces short banner pattern code in&nbsp;Patterns[].Pattern<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>color: dye color name\n<ul class=\"wp-block-list\">\n<li>Replaces integer dye color id in&nbsp;Patterns[].Color<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;banner_patterns=[{pattern:&#8217;minecraft:stripe_top&#8217;,color:&#8217;red&#8217;}]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Banners and Shields, has an implicit default value of:&nbsp;[]<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_banner_pattern&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:pot_decorations<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores the Sherds applied to each side of a Decorated Pot<\/li>\n\n\n\n<li>Copied to Decorated Pot block when placed<\/li>\n\n\n\n<li>Replaces&nbsp;BlockEntityTag.sherds&nbsp;tag of same format<\/li>\n\n\n\n<li>Format: list of sherd item ids\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;[&#8216;arms_up_pottery_sherd&#8217;,&#8217;angler_pottery_sherd&#8217;,&#8217;danger_pottery_sherd&#8217;,&#8217;shelter_pottery_sherd&#8217;]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Decorated Pots, has an implicit default value of:&nbsp;[&#8216;minecraft:brick&#8217;,&#8217;minecraft:brick&#8217;,&#8217;minecraft:brick&#8217;,&#8217;minecraft:brick&#8217;]<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:container<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the contents of container blocks (Chests, Shulker Boxes) in item form<\/li>\n\n\n\n<li>Copied into container block when placed<\/li>\n\n\n\n<li>Replaces&nbsp;BlockEntityTag.Items&nbsp;tag<\/li>\n\n\n\n<li>Format: list of slots\n<ul class=\"wp-block-list\">\n<li>slot: integer [0; 255], representing a slot in the container<\/li>\n\n\n\n<li>item: item stack<\/li>\n\n\n\n<li>e.g.&nbsp;container=[{slot:7,item:{id:&#8217;diamond_pickaxe&#8217;,components:{&#8216;minecraft:unbreakable&#8217;:{}}}}]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On container blocks, has an implicit default value of:&nbsp;[]<\/li>\n\n\n\n<li>Can be modified with the&nbsp;modify_contents&nbsp;and&nbsp;set_contents&nbsp;loot functions<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:bees<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the bees inside a Beehive or Bee Nest<\/li>\n\n\n\n<li>Copied to Beehive or Bee Nest block when placed<\/li>\n\n\n\n<li>Replaces&nbsp;BlockEntityTag.Bees&nbsp;tag<\/li>\n\n\n\n<li>Format: list of bees\n<ul class=\"wp-block-list\">\n<li>entity_data: map of string to string\n<ul class=\"wp-block-list\">\n<li>id: entity id<\/li>\n\n\n\n<li>The remainder tags merged into the Bee when spawned<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>ticks_in_hive: integer<\/li>\n\n\n\n<li>min_ticks_in_hive: integer<\/li>\n\n\n\n<li>e.g:&nbsp;bees=[{entity_data:{id=&#8217;minecraft:bee&#8217;},ticks_in_hive:3,min_ticks_in_hive:10}]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Beehive and Bee Nest, has an implicit default value of:&nbsp;[]<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:lock<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the lock state of a container-like block\n<ul class=\"wp-block-list\">\n<li>An item with a custom name of the same value must be used to open this container<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Copied to container block when placed<\/li>\n\n\n\n<li>Replaces&nbsp;BlockEntityTag.Lock&nbsp;tag<\/li>\n\n\n\n<li>Format: string value, representing the key\n<ul class=\"wp-block-list\">\n<li>e.g:&nbsp;lock=&#8217;hunter2&#8242;<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:container_loot<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds the unresolved loot table and seed of a container-like block<\/li>\n\n\n\n<li>Copied to container block when placed<\/li>\n\n\n\n<li>Replaces&nbsp;BlockEntityTag.LootTable&nbsp;and&nbsp;BlockEntityTag.LootTableSeed&nbsp;tags<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>loot_table: loot table id<\/li>\n\n\n\n<li>seed: long, pseudorandom seed to resolve the loot table with (optional)\n<ul class=\"wp-block-list\">\n<li>If not specified, or&nbsp;0, the seed will be picked randomly when the loot table is evaluated<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;container_loot={loot_table:&#8217;minecraft:chests\/buried_treasure&#8217;,seed:123}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_loot_table&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:block_entity_data<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stores unstructured NBT data to apply to a block entity when placing a block such as a Chest or Furnace<\/li>\n\n\n\n<li>Replaces previous&nbsp;BlockEntityTag&nbsp;tag, with same behavior<\/li>\n\n\n\n<li>Any block entity data moved into a dedicated item component is removed from this tag<\/li>\n\n\n\n<li>For Command Blocks, Lecterns, Signs, and Spawners: this tag will not be copied unless the player is an operator<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>Must contain an&nbsp;id&nbsp;field with the block entity type<\/li>\n\n\n\n<li>Any additional fields will be merged into the block entity when placed<\/li>\n\n\n\n<li>e.g.&nbsp;block_entity_data={id:&#8217;minecraft:chest&#8217;,Items:[{Slot:1,item:&#8217;minecraft:diamond&#8217;}]}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:block_state<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Holds block state properties to apply when placing a block<\/li>\n\n\n\n<li>Replaces&nbsp;BlockStateTag&nbsp;tag<\/li>\n\n\n\n<li>Format: map of property key to property value\n<ul class=\"wp-block-list\">\n<li>All property values, including integer and boolean types, must be represented as strings<\/li>\n\n\n\n<li>e.g:&nbsp;block_state={eggs:&#8217;10&#8217;}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>New Item Stack Components<\/strong><\/p>\n\n\n\n<p>These are new components that did not exist in the previous item tag, and support new features and use-cases.<\/p>\n\n\n\n<p><strong>minecraft:enchantment_glint_override<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Overrides the enchantment glint effect on an item<\/li>\n\n\n\n<li>Can be used in the same way that an invalid&nbsp;Enchantments&nbsp;tag would previously behave to add a glint<\/li>\n\n\n\n<li>Format: boolean\n<ul class=\"wp-block-list\">\n<li>If&nbsp;true, an item without an enchantment glint will display a glint<\/li>\n\n\n\n<li>If&nbsp;false, an item with a glint will not display this glint (either from enchantments or intrinsic properties of the item)<\/li>\n\n\n\n<li>e.g:&nbsp;enchantment_glint_override=true<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:food<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When present, this item will behave as if a food (can be eaten)<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>nutrition: non-negative integer, number of food points to restore when eaten<\/li>\n\n\n\n<li>saturation: float, amount of saturation to restore when eaten<\/li>\n\n\n\n<li>can_always_eat: boolean (default:\u00a0false)\n<ul class=\"wp-block-list\">\n<li>If&nbsp;true, this food can be eaten even if not hungry<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>eat_seconds: float (default:\u00a01.6)\n<ul class=\"wp-block-list\">\n<li>The number of seconds that it takes to eat this food item<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>effects: list of effects to apply when eaten (default:\u00a0[])\n<ul class=\"wp-block-list\">\n<li>effect: effect instance (same format as&nbsp;custom_effects&nbsp;in&nbsp;minecraft:potion_contents&nbsp;component)<\/li>\n\n\n\n<li>probability: float between 0 and 1, chance for the effect to be applied (default:&nbsp;1)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g:&nbsp;food={nutrition:4,saturation:0.1}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On food items, has an implicit default value for that food type<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:max_stack_size<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls the maximum stacking size of this item<\/li>\n\n\n\n<li>Values greater than 1 are mutually exclusive with the&nbsp;max_damage&nbsp;component<\/li>\n\n\n\n<li>Format: integer between 1 and 99\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;max_stack_size=4<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Has an implicit default value according to the item type (usually&nbsp;64)<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:max_damage<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls the maximum amount of damage than an item can take<\/li>\n\n\n\n<li>Mutually exclusive with the&nbsp;max_stack_size&nbsp;component greater than 1<\/li>\n\n\n\n<li>Requires that the&nbsp;damage&nbsp;component is also present on the item<\/li>\n\n\n\n<li>If not present, the item cannot be damaged<\/li>\n\n\n\n<li>Format: positive integer\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;max_damage=123<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Has an implicit default value for damageable items<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:tool<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls the behavior of the item as a tool<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>rules: list of rule entries to apply in order\n<ul class=\"wp-block-list\">\n<li>blocks: single block, list of blocks, or&nbsp;#-prefixed block tag to match<\/li>\n\n\n\n<li>speed&nbsp;(optional): float, overrides the mining speed if present and matched<\/li>\n\n\n\n<li>correct_for_drops\u00a0(optional): boolean, overrides whether this tool is considered &#8216;correct&#8217; if present and matched\n<ul class=\"wp-block-list\">\n<li>true&nbsp;will cause the block to mine at its most efficient speed, and drop items if the targeted block requires that<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>default_mining_speed: float, mining speed to use if no rules match and override mining speed (default:&nbsp;1.0)<\/li>\n\n\n\n<li>damage_per_block: non-negative int, amount of durability to remove each time a block is mined with this tool<\/li>\n\n\n\n<li>e.g.&nbsp;tool={rules:[{blocks:&#8221;#mineable\/pickaxe&#8221;,speed:4.0,correct_for_drops:true}]}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Vanilla tool items will have an implicit default value based on their tier and tool type<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:hide_tooltip<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If present, it will completely hide whole item tooltip (that includes item name)<\/li>\n\n\n\n<li>Tooltip will still be visible and searchable in creative mode<\/li>\n\n\n\n<li>Format: empty object<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:item_name<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When present, replaces default item name with contained chat component<\/li>\n\n\n\n<li>Differences from\u00a0custom_name:\n<ul class=\"wp-block-list\">\n<li>item_name&nbsp;can&#8217;t be changed or removed in Anvil<\/li>\n\n\n\n<li>item_name&nbsp;is not styled with italics when displayed to player<\/li>\n\n\n\n<li>item_name&nbsp;does not show labels where applicable (for example: banner markers, names in item frames)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_name&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:fire_resistant<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If present, this item will not burn in fire<\/li>\n\n\n\n<li>Format: empty object\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;fire_resistant={}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Has an implicit default value for fire-resistant items such as Netherite<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:rarity<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls the color of the item name<\/li>\n\n\n\n<li>Format: enumerated value, one of:\n<ul class=\"wp-block-list\">\n<li>common&nbsp;(default): white name, or aqua when enchanted<\/li>\n\n\n\n<li>uncommon: yellow name, or aqua when enchanted<\/li>\n\n\n\n<li>rare: aqua name, or light purple when enchanted<\/li>\n\n\n\n<li>epic: light purple name<\/li>\n\n\n\n<li>e.g.&nbsp;rarity=rare<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Special items such as Golden Apples have an implicit default value<\/li>\n<\/ul>\n\n\n\n<p><strong>minecraft:ominous_bottle_amplifier<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controls the amplifier amount for an Ominous Bottle&#8217;s Bad Omen effect<\/li>\n\n\n\n<li>Format: integer between 0 and 4\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;ominous_bottle_amplifier=3<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be modified with the&nbsp;set_ominous_bottle_amplifier&nbsp;loot function<\/li>\n<\/ul>\n\n\n\n<p><strong>Saved Item Stack Format<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Along with format changes due to components, the structures of item stacks on disk and in data packs have been updated for consistency<\/li>\n\n\n\n<li>Previous\u00a0id\u00a0(string) and\u00a0Count\u00a0(byte) fields have been replaced with\u00a0id\u00a0(namespaced string) and\u00a0count\u00a0(integer) fields\n<ul class=\"wp-block-list\">\n<li>This format is additionally applied to the&nbsp;icon&nbsp;field in advancements, items in chat component hover events, and the&nbsp;result&nbsp;field in smelting recipes (result&nbsp;and&nbsp;count&nbsp;are no longer inlined)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The\u00a0count\u00a0field is optional (defaults to\u00a01\u00a0if not specified)\n<ul class=\"wp-block-list\">\n<li>The field will however always be stored by the game<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The&nbsp;tag&nbsp;field has been removed, and any remaining contents will end up in the&nbsp;minecraft:custom_data&nbsp;component when upgrading<\/li>\n\n\n\n<li>A new\u00a0components\u00a0field stores all components attached to an item\n<ul class=\"wp-block-list\">\n<li>Format: map of component id to component value (varies by component id)\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;{&#8230;, components: {&#8216;minecraft:damage&#8217;: 12}}<\/li>\n\n\n\n<li>Components with a&nbsp;!&nbsp;prefix (e.g.&nbsp;&#8220;!minecraft:damage&#8221;: {}) will cause this component to be removed<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Components equal to their default value on the target item will not be stored<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The item stack format no longer represents empty stacks (air\u00a0item, or\u00a0count\u00a00)\n<ul class=\"wp-block-list\">\n<li>Instead, in places that support it, the field should be omitted<\/li>\n\n\n\n<li>In some cases, such as lists of stacks (e.g.&nbsp;HandItems&nbsp;in living entities), an empty map ({}) is used to represent empty stacks<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Entity &amp; Block Entity Data Formats<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Non-default components on item stacks are now stored when a block entity is placed from that item stack<\/li>\n\n\n\n<li>The storage format of block positions in entities and block entities has been updated<\/li>\n\n\n\n<li>Added&nbsp;body_armor_item&nbsp;and&nbsp;body_armor_drop_chance&nbsp;to all entities that currently have&nbsp;HandItems&nbsp;and&nbsp;ArmorItems, and handle the same way as&nbsp;HandItems&nbsp;and&nbsp;ArmorItems<\/li>\n\n\n\n<li>Handling of Horses&nbsp;ArmorItem, Llamas&nbsp;DecorItem, and Wolf&#8217;s&nbsp;armor&nbsp;has been changed to use&nbsp;body_armor_item&nbsp;and&nbsp;body_armor_drop_chance&nbsp;instead<\/li>\n\n\n\n<li>Villager Trades can be configured to accept only undamaged items by selecting for\u00a0&#8216;minecraft:damage&#8217;: 0\n<ul class=\"wp-block-list\">\n<li>By default, if no components are specified, any item will be accepted (similar to&nbsp;components&nbsp;field in item predicates)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Potion effects stored in items or entities will no longer encode their default values\n<ul class=\"wp-block-list\">\n<li>amplifier:&nbsp;0<\/li>\n\n\n\n<li>duration:&nbsp;0<\/li>\n\n\n\n<li>ambient:&nbsp;false<\/li>\n\n\n\n<li>show_particles:&nbsp;true<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>FactorCalculationData&nbsp;has been removed from mob effect instance tags<\/li>\n\n\n\n<li>Tipped Arrows no longer store their applied potion effects\n<ul class=\"wp-block-list\">\n<li>This is instead fetched from their held&nbsp;item<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Area Effect Clouds now store potions in the same format as the\u00a0minecraft:potion_contents\u00a0component in a\u00a0potion_contents\u00a0field:\n<ul class=\"wp-block-list\">\n<li>Potion&nbsp;-&gt;&nbsp;potion_contents.potion<\/li>\n\n\n\n<li>Color&nbsp;-&gt;&nbsp;potion_contents.custom_color<\/li>\n\n\n\n<li>effects&nbsp;-&gt;&nbsp;potion_contents.custom_effects<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Banners now store applied patterns in the same format as the\u00a0minecraft:banner_patterns\u00a0component in a\u00a0patterns\u00a0field:\n<ul class=\"wp-block-list\">\n<li>Patterns[].Pattern&nbsp;(string short id) -&gt;&nbsp;patterns[].pattern&nbsp;(string pattern registry id)<\/li>\n\n\n\n<li>Patterns[].Color&nbsp;(integer dye id) -&gt;&nbsp;patterns[].color&nbsp;(string dye name)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Beehive format has also been updated:\n<ul class=\"wp-block-list\">\n<li>Bees[].EntityData&nbsp;-&gt;&nbsp;bees[].entity_data<\/li>\n\n\n\n<li>Bees[].TicksInHive&nbsp;-&gt;&nbsp;bees[].ticks_in_hive<\/li>\n\n\n\n<li>Bees[].MinOccupationTicks&nbsp;-&gt;&nbsp;bees[].min_ticks_in_hive<\/li>\n\n\n\n<li>FlowerPos&nbsp;-&gt;&nbsp;flower_pos<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The&nbsp;SkullOwner&nbsp;and&nbsp;ExtraType&nbsp;fields in Player Head blocks have been replaced with a&nbsp;profile&nbsp;field, with the same format as the item component<\/li>\n\n\n\n<li>Player Head blocks now store a&nbsp;custom_name&nbsp;tag, which will be copied to and from the item form when broken or placed<\/li>\n\n\n\n<li>Added optional\u00a0equipment\u00a0field to the spawn data present in the\u00a0SpawnPotentials\u00a0of Monster Spawners and\u00a0spawn_potentials\u00a0of Trial Spawner configs\n<ul class=\"wp-block-list\">\n<li>If present, rolled items from the specified loot table will be equipped to the mob that spawns<\/li>\n\n\n\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>loot_table&nbsp;&#8211; A loot table used to generate the equipment<\/li>\n\n\n\n<li>slot_drop_chances\u00a0&#8211; An optional map of equipment slot to specified drop chance\n<ul class=\"wp-block-list\">\n<li>Can also be a single value instead of a list to apply to all slots: e.g.&nbsp;slot_drop_chances: 0.0f&nbsp;will apply a chance of 0% to all slots<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>e.g.&nbsp;equipment: {loot_table: &#8220;minecraft:equipment\/trial_chamber&#8221;, slot_drop_chances: {&#8220;head&#8221;: 0.0f, &#8220;chest&#8221;: 0.25f, &#8220;legs&#8221;: 1.0f, &#8220;feet&#8221;: 0.25f}}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Components On Block Entities<\/strong><\/p>\n\n\n\n<p>Non-default components on item stacks containing block items are now stored on block entities when placed.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Component removals from defaults are currently not preserved<\/li>\n\n\n\n<li>Placing and breaking non-block entity blocks remains unchanged &#8211; nothing is preserved<\/li>\n\n\n\n<li>Does not automatically cause preserved components to be restored on drops &#8211; this requires addition of&nbsp;copy_components&nbsp;function to loot table<\/li>\n\n\n\n<li>Components are stored in field called\u00a0components\n<ul class=\"wp-block-list\">\n<li>Some components (like&nbsp;custom_name) are still handled by legacy serialization, which means they might not be present in there<\/li>\n\n\n\n<li>Contains map of component id to component value<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Block Positions<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>All block positions are now stored as an array of 3 integers instead of a map of&nbsp;X,&nbsp;Y, and&nbsp;Z&nbsp;for consistency<\/li>\n\n\n\n<li>FlowerPos&nbsp;and&nbsp;HivePos&nbsp;in Bees have been renamed to&nbsp;flower_pos&nbsp;and&nbsp;hive_pos<\/li>\n\n\n\n<li>FlowerPos&nbsp;in Beehives has been renamed to&nbsp;flower_pos<\/li>\n\n\n\n<li>BeamTarget&nbsp;in End Crystals has been renamed to&nbsp;beam_target<\/li>\n\n\n\n<li>Leash&nbsp;in all leashable entities has been renamed to&nbsp;leash<\/li>\n\n\n\n<li>PatrolTarget&nbsp;in patrolling mobs has been renamed to&nbsp;patrol_target<\/li>\n\n\n\n<li>ExitPortal&nbsp;in End Gateways has been renamed to&nbsp;exit_portal<\/li>\n\n\n\n<li>WanderTarget&nbsp;in Wandering Traders has been renamed to&nbsp;wander_target<\/li>\n<\/ul>\n\n\n\n<p><strong>Vault Block Entity<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added Vault block (experimental) with a variety of NBT elements which can be configured for custom content:<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>config\n<ul class=\"wp-block-list\">\n<li>loot_table\u00a0&#8211; The loot table that will be ejected upon being unlocked\n<ul class=\"wp-block-list\">\n<li>Default value:&nbsp;&#8220;minecraft:chests\/trial_chambers\/reward&#8221;<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>activation_range\u00a0&#8211; The range any player who hasn&#8217;t unlocked the Vault must be within for it to open its keyhole\n<ul class=\"wp-block-list\">\n<li>Default value:&nbsp;4<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>deactivation_range\u00a0&#8211; The range all viable players must be outside of for the Vault to close its keyhole\n<ul class=\"wp-block-list\">\n<li>Default value:&nbsp;4.5<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>key_item\u00a0&#8211; An Item Stack that is required to unlock the Vault\n<ul class=\"wp-block-list\">\n<li>The player must be holding an item with the exact components and count<\/li>\n\n\n\n<li>If the field is not present, the Vault cannot be unlocked<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>override_loot_table_to_display\u00a0&#8211; An optional loot table which will be used for displaying items inside the cage instead of results from the config&#8217;s\u00a0loot_table\n<ul class=\"wp-block-list\">\n<li>Default value: No value<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>shared_data\n<ul class=\"wp-block-list\">\n<li>connected_particles_range\u00a0&#8211; The range players who have not unlocked the Vault must be within before particles will flow from them\n<ul class=\"wp-block-list\">\n<li>Default value:&nbsp;4.5<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Commands<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Updated syntax of items and item predicates in commands<\/li>\n\n\n\n<li>Added slot names for ranges, like&nbsp;container.*<\/li>\n\n\n\n<li>playsound&nbsp;command can now be used without specifying the player (assuming&nbsp;@s) and without specifying the mixer (assuming&nbsp;master)<\/li>\n\n\n\n<li>Command arguments that previously accepted namespaced ids of loot tables, modifiers and predicates can now also accept inline definitions<\/li>\n\n\n\n<li>Added&nbsp;execute if|unless items&nbsp;to check and count items<\/li>\n\n\n\n<li>Potion effect amplifiers are now restricted between 0 and 255\n<ul class=\"wp-block-list\">\n<li>The former behavior of effects such as Jump Boost, Levitation, and Mining Fatigue over 127 has been replaced with new attributes<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added the&nbsp;transfer&nbsp;command<\/li>\n\n\n\n<li>The maximum length of a command in a function (including macro expansions) can no longer exceed 2,000,000 characters<\/li>\n<\/ul>\n\n\n\n<p><strong>Item Syntax<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Commands such as&nbsp;\/give,&nbsp;\/item,&nbsp;\/loot&nbsp;use an updated item syntax<\/li>\n\n\n\n<li>Components can now be specified after the item name in square brackets\n<ul class=\"wp-block-list\">\n<li>Components are assigned with an&nbsp;=&nbsp;(e.g.&nbsp;wooden_pickaxe[damage=23])<\/li>\n\n\n\n<li>Components are comma-separated (e.g.&nbsp;netherite_hoe[damage=5,repair_cost=2])<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Component types will be autocompleted, but possible values of them will not<\/li>\n\n\n\n<li>Values will however be validated, and the command will fail to parse if the component is improperly specified\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;\/give @s wooden_pickaxe[damage=-34]&nbsp;is not valid<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The previous NBT syntax ({&#8230;}) has been removed, and replaced with\u00a0custom_data\u00a0assignment\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;\/give @s stick{foo:&#8217;bar&#8217;}&nbsp;becomes&nbsp;\/give @s stick[custom_data={foo:&#8217;bar&#8217;}]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Modifier operations in the\u00a0\/attribute\u00a0command have been renamed:\n<ul class=\"wp-block-list\">\n<li>add&nbsp;-&gt;&nbsp;add_value<\/li>\n\n\n\n<li>multiply_base&nbsp;-&gt;&nbsp;add_multiplied_base<\/li>\n\n\n\n<li>multiply&nbsp;-&gt;&nbsp;add_multiplied_total<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Added&nbsp;Execute If|Unless Items<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>execute if|unless items <source> <slots> <item_predicate>\u00a0command can be used to count items\n<ul class=\"wp-block-list\">\n<li><source>\u00a0is the same as one used in\u00a0item\u00a0command, i.e.\n<ul class=\"wp-block-list\">\n<li>block &lt;x&gt; &lt;y&gt; &lt;z&gt;<\/li>\n\n\n\n<li>entity &lt;target&gt;&nbsp;(selector can return multiple entities)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>&lt;slots&gt;&nbsp;can accept single slot (like&nbsp;container.0) or a range (like&nbsp;container.*)<\/li>\n\n\n\n<li>&lt;item_predicate&gt;&nbsp;is the same as item predicate in&nbsp;clear&nbsp;command<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>If used alone, it will return the total number of items in stacks that match predicates<\/li>\n<\/ul>\n\n\n\n<p><strong>Item Predicate Argument<\/strong><\/p>\n\n\n\n<p>The item predicate syntax (used in&nbsp;execute if|unless items&nbsp;and&nbsp;clear&nbsp;commands) has been significantly expanded.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The general syntax is:&nbsp;&lt;type&gt; [comma-separated list of &lt;test&gt;]<\/li>\n\n\n\n<li><type>\u00a0can be one of:\n<ul class=\"wp-block-list\">\n<li>item id<\/li>\n\n\n\n<li>item tag id prefixed with&nbsp;#<\/li>\n\n\n\n<li>*&nbsp;to match any item<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><test>\u00a0can have one of 3 forms:\n<ul class=\"wp-block-list\">\n<li><component_id>=<value>\u00a0&#8211; match exact value of component\n<ul class=\"wp-block-list\">\n<li>&lt;value&gt;&nbsp;is a representation of component value in SNBT format (same as in&nbsp;item give&nbsp;argument)<\/li>\n\n\n\n<li>Every specified component must be present on the target item, and have an exactly equal parsed value<\/li>\n\n\n\n<li>Components with defaults (e.g.\u00a0damage=0\u00a0by default) will be assumed to exist on the target item if not specified\n<ul class=\"wp-block-list\">\n<li>As such,&nbsp;\/clear @s diamond_pickaxe[damage=0]&nbsp;will match only undamaged Diamond Pickaxes<\/li>\n\n\n\n<li>On the other hand,&nbsp;\/clear @s diamond_pickaxe&nbsp;will match any Diamond Pickaxe, irrespective of damage<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Exact matching of component values applies even for the&nbsp;minecraft:custom_data&nbsp;component<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>&lt;component_id&gt;&nbsp;&#8211; check if component exists<\/li>\n\n\n\n<li><predicate_id>~<value>\u00a0&#8211; check item sub-predicate\n<ul class=\"wp-block-list\">\n<li>&lt;value&gt;&nbsp;is a representation of item sub-predicate in SNBT format (but otherwise the same as those used for advancement and loot table JSON files)<\/li>\n\n\n\n<li>Example:&nbsp;*[damage~{durability:{min:3}}]&nbsp;will match any stack with at least 3 uses left<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The special name\u00a0minecraft:count\u00a0can be used for matching the stack size\n<ul class=\"wp-block-list\">\n<li>count=&lt;positive int&gt;&nbsp;will pass only when the stack size equals the given value<\/li>\n\n\n\n<li>count~<int range>\u00a0will pass when the stack size is in the specified range\n<ul class=\"wp-block-list\">\n<li>Example:&nbsp;*[count~{max:2}]&nbsp;will match any stack with count &lt;= 2<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>count&nbsp;will always pass<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Any\u00a0<test>\u00a0entry can be negated by prefixing with\u00a0!\n<ul class=\"wp-block-list\">\n<li>Example:&nbsp;*[!count=1]&nbsp;will match any stack that has count other than 1<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><test>\u00a0elements can be also joined with\u00a0|\u00a0to check multiple alternatives\n<ul class=\"wp-block-list\">\n<li>Example:&nbsp;*[!damage|damage=0]&nbsp;will look for items without damage component or with&nbsp;0&nbsp;damage<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The syntax for NBT partial matching with custom data ({}) has been replaced by the\u00a0custom_data\u00a0predicate\n<ul class=\"wp-block-list\">\n<li>So&nbsp;stick{a:2}&nbsp;becomes&nbsp;stick[custom_data~{a:2}]<\/li>\n\n\n\n<li>This predicate uses the pre-existing NBT partial match behavior\n<ul class=\"wp-block-list\">\n<li>This requires that all tags specified in the predicate are present on the target item, but additional ones may be ignored<\/li>\n\n\n\n<li>Lists in the target must contain all items specified in the predicate, but additional may be present and order is ignored<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Slot Names<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Slot names (used in&nbsp;item&nbsp;commands and&nbsp;slots&nbsp;entity predicates) now include slot ranges<\/li>\n\n\n\n<li>Unless specified, existing commands can still only work on single slots<\/li>\n\n\n\n<li>Added new slot ranges:\n<ul class=\"wp-block-list\">\n<li>container.*&nbsp;&#8211; contains&nbsp;container.0&nbsp;to&nbsp;container.53<\/li>\n\n\n\n<li>hotbar.*&nbsp;&#8211; contains&nbsp;hotbar.0&nbsp;to&nbsp;hotbar.8<\/li>\n\n\n\n<li>inventory.*&nbsp;&#8211; contains&nbsp;inventory.0&nbsp;to&nbsp;inventory.26<\/li>\n\n\n\n<li>enderchest.*&nbsp;&#8211; contains&nbsp;enderchest.0&nbsp;to&nbsp;enderchest.26<\/li>\n\n\n\n<li>villager.*&nbsp;&#8211; contains&nbsp;villager.0&nbsp;to&nbsp;villager.7<\/li>\n\n\n\n<li>horse.*&nbsp;&#8211; contains&nbsp;horse.0&nbsp;to&nbsp;horse.14<\/li>\n\n\n\n<li>weapon.*&nbsp;&#8211; contains&nbsp;weapon.mainhand&nbsp;and&nbsp;weapon.offhand<\/li>\n\n\n\n<li>armor.*&nbsp;&#8211; contains&nbsp;armor.head,&nbsp;armor.chest,&nbsp;armor.legs,&nbsp;armor.feet,&nbsp;armor.body<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added new slot names:\n<ul class=\"wp-block-list\">\n<li>player.cursor\u00a0&#8211; item held by player on screen\n<ul class=\"wp-block-list\">\n<li>Note: this information cannot be read in creative mode<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>player.crafting.0\u00a0&#8211;\u00a0player.crafting.3,\u00a0player.crafting.*\u00a0&#8211; player&#8217;s crafting slots\n<ul class=\"wp-block-list\">\n<li>Note: this includes only player&#8217;s inventory crafting slots. Crafting table (or any other slots on other screens) are not included<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>contents&nbsp;&#8211; for single-slot entities like item frames, item displays, or dropped item entities<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Replaced&nbsp;horse.armor&nbsp;slot name with&nbsp;armor.body, which is applicable to all mobs<\/li>\n<\/ul>\n\n\n\n<p><strong>Inline Loot Values<\/strong><\/p>\n\n\n\n<p>Arguments in the following commands that previously accepted namespaced ids of loot tables, modifiers and predicates can now also accept inline definitions:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>loot<\/li>\n\n\n\n<li>item<\/li>\n\n\n\n<li>execute if predicate<\/li>\n<\/ul>\n\n\n\n<p>Values have the same structure as matching JSON files, though they are encoded as SNBT.Example:<\/p>\n\n\n\n<p>execute if predicate {condition:weather_check, raining:true}<\/p>\n\n\n\n<p><strong>Transfer&nbsp;Command<\/strong><\/p>\n\n\n\n<p>New command that triggers a transfer of a player to another server. Only exists on dedicated servers.<\/p>\n\n\n\n<p>Syntax:<\/p>\n\n\n\n<p>transfer &lt;hostname&gt; [&lt;port&gt;] [&lt;players&gt;]<\/p>\n\n\n\n<p>Parameters:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>hostname: String describing the hostname of the server to connect to<\/li>\n\n\n\n<li>port: Integer denoting the port number of the server to connect to &#8211; if omitted, 25565 is used<\/li>\n\n\n\n<li>players: The players to transfer &#8211; if omitted,&nbsp;@s&nbsp;is used<\/li>\n<\/ul>\n\n\n\n<p><strong>Predicate Formats In Loot Tables &amp; Advancements<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Block predicate format has been updated:\n<ul class=\"wp-block-list\">\n<li>tag&nbsp;field has been removed<\/li>\n\n\n\n<li>blocks&nbsp;field now supports a single entry, hash-prefixed block tag, or list of blocks<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Fluid predicate format has been updated:\n<ul class=\"wp-block-list\">\n<li>tag&nbsp;field has been removed<\/li>\n\n\n\n<li>fluid&nbsp;-&gt;&nbsp;fluids, and supports a single entry, hash-prefixed fluid tag, or list of fluids<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Location predicate format has been updated:\n<ul class=\"wp-block-list\">\n<li>biome&nbsp;-&gt;&nbsp;biomes, and supports a single entry, hash-prefixed biome tag, or list of biomes<\/li>\n\n\n\n<li>structure&nbsp;-&gt;&nbsp;structures, and supports a single entry, hash-prefixed structure tag, or list of structures<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Major changes to Entity and Item predicates<\/li>\n<\/ul>\n\n\n\n<p><strong>Entity Predicates<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Entity predicate format has been updated:\n<ul class=\"wp-block-list\">\n<li>type&nbsp;field now supports a single entry, hash-prefixed entity type tag, or list of entity types<\/li>\n\n\n\n<li>Added new entity predicate field&nbsp;slots, for matching item slots<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The\u00a0equipment\u00a0field format has been updated\n<ul class=\"wp-block-list\">\n<li>Added a new&nbsp;body&nbsp;field to match the item in the body armor slot of an entity<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Removed&nbsp;any&nbsp;entity type-specific predicate (which had no effect)<\/li>\n<\/ul>\n\n\n\n<p><strong>slots&nbsp;entity predicate field<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The new entity field&nbsp;slots&nbsp;allows checking a single or multiple slots on any entity<\/li>\n\n\n\n<li>The field contains a map of slot names (same as those used in&nbsp;item&nbsp;commands) to item predicates<\/li>\n\n\n\n<li>For slot ranges, only one slot needs to match for the whole entry to pass<\/li>\n<\/ul>\n\n\n\n<p>Example:<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp; &#8220;condition&#8221;: &#8220;minecraft:entity_properties&#8221;,<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp; &#8220;entity&#8221;: &#8220;this&#8221;,<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp; &#8220;predicate&#8221;: {<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;slots&#8221;: {<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;container.*&#8221;: {<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;items&#8221;: &#8220;dirt&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp; }<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p><strong>wolf&nbsp;type-specific entity predicate<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>New&nbsp;wolf&nbsp;sub-predicate has been added to match Wolf variants<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>variant&nbsp;&#8211; Wolf variant to match (single entry, list of entries or tag)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>raider&nbsp;type-specific entity predicate<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>New&nbsp;raider&nbsp;sub-predicate has been added to match raiders<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>has_raid&nbsp;&#8211; Match whether the raider is in an active raid<\/li>\n\n\n\n<li>is_captain&nbsp;&#8211; Match whether the raider is a captain<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>cat,&nbsp;frog,&nbsp;painting&nbsp;type-specific entity predicate<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The&nbsp;variant&nbsp;field now accepts single entries, list of entries or tags<\/li>\n<\/ul>\n\n\n\n<p><strong>Item Predicates<\/strong><\/p>\n\n\n\n<p>Item predicate format has been updated:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>tag&nbsp;field has been removed<\/li>\n\n\n\n<li>items&nbsp;field now supports a single entry, hash-prefixed item tag, or list of items<\/li>\n\n\n\n<li>A new optional\u00a0components\u00a0field matches exact components\n<ul class=\"wp-block-list\">\n<li>All specified components must be present and exactly equal on the target item, but additional components may be ignored<\/li>\n\n\n\n<li>Components with defaults will be assumed to exist on the target item if not specified<\/li>\n\n\n\n<li>Format: map of component id to component value (varies by component id)\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;&#8220;components&#8221;: { &#8220;minecraft:damage&#8221;: 0 }&nbsp;will match only undamaged items<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Component-specific item predicate properties have been moved to a separate field called&nbsp;predicates<\/li>\n<\/ul>\n\n\n\n<p><strong>Item Sub-Predicates<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Some fields from item predicate have been moved to a map in an optional field&nbsp;predicates<\/li>\n\n\n\n<li>The new field is similar to the&nbsp;components&nbsp;field on item stacks<\/li>\n\n\n\n<li>This was done to simplify addition for future predicates and to allow sub-predicates to more closely resemble names of components they match<\/li>\n\n\n\n<li>The following fields have been moved:\n<ul class=\"wp-block-list\">\n<li>enchantments&nbsp;&#8211; field moved to sub-predicate&nbsp;minecraft:enchantments<\/li>\n\n\n\n<li>stored_enchantments&nbsp;&#8211; field moved to sub-predicate&nbsp;minecraft:stored_enchantments<\/li>\n\n\n\n<li>potion\u00a0&#8211; field moved to sub-predicate\u00a0minecraft:potion_contents\n<ul class=\"wp-block-list\">\n<li>Now supports a single potion entry, list of potions, or hash-prefixed potion tag<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>custom_data&nbsp;&#8211; field moved to sub-predicate&nbsp;minecraft:custom_data<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>durability\u00a0field has been expanded to\u00a0minecraft:damage\u00a0predicate:\n<ul class=\"wp-block-list\">\n<li>This check now works for any item that has&nbsp;minecraft:damage&nbsp;component<\/li>\n\n\n\n<li>An item that does not have a&nbsp;minecraft:damage&nbsp;component can never match<\/li>\n\n\n\n<li>To check for unbreakable items, query value of&nbsp;minecraft:unbreakable&nbsp;component<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>damage&nbsp;&#8211; optional bounds for value of&nbsp;minecraft:damage&nbsp;component<\/li>\n\n\n\n<li>durability&nbsp;&#8211; optional bounds for durability (max damage minus value of&nbsp;minecraft:damage)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Predicates\u00a0minecraft:enchantments,\u00a0minecraft:stored_enchantments,\u00a0minecraft:potion_contents\u00a0and\u00a0minecraft:damage\u00a0require matching component to exist on item\n<ul class=\"wp-block-list\">\n<li>That means that, for example, matching for empty enchantment list will not pass on items without&nbsp;minecraft:damage&nbsp;component<\/li>\n\n\n\n<li>Note: some components, like&nbsp;minecraft:enchantments&nbsp;have default values, so they will always match<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>These sub-predicates can also be referenced in commands such as&nbsp;\/clear&nbsp;and&nbsp;\/execute if|unless items<\/li>\n\n\n\n<li>The\u00a0minecraft:custom_data\u00a0predicate now accepts both SNBT data written as a string (existing format) and unflattened tags\n<ul class=\"wp-block-list\">\n<li>That means that&nbsp;*[custom_data~{a:1}]&nbsp;and&nbsp;*[custom_data~&#8221;{a:1}&#8221;]&nbsp;are equivalent<\/li>\n\n\n\n<li>Flattened string format has been kept since NBT type information can&#8217;t be expressed in JSON<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Many new sub-predicates have been introduced<\/li>\n<\/ul>\n\n\n\n<p><strong>Example:<\/strong><\/p>\n\n\n\n<p>Before:<\/p>\n\n\n\n<p>&#8220;item&#8221;: {<\/p>\n\n\n\n<p>&nbsp; &#8220;enchantments&#8221;: [<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp; {<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;enchantment&#8221;: &#8220;minecraft:silk_touch&#8221;,<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;levels&#8221;: {<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;min&#8221;: 1<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp; }<\/p>\n\n\n\n<p>&nbsp; ]<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>After:<\/p>\n\n\n\n<p>&#8220;item&#8221;: {<\/p>\n\n\n\n<p>&nbsp; &#8220;predicates&#8221;: {<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp; &#8220;minecraft:enchantments&#8221;: [<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;enchantment&#8221;: &#8220;minecraft:silk_touch&#8221;,<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;levels&#8221;: {<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;min&#8221;: 1<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ]<\/p>\n\n\n\n<p>&nbsp; }<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p><strong>General Rules of Component Predicates<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Unless otherwise specified, a field in predicate with the same name as a field in component that matches (i.e. has the same name as predicate) will match that field value<\/li>\n\n\n\n<li>Those fields will usually have the same type as in the components, but will be optional<\/li>\n\n\n\n<li>Exceptions:\n<ul class=\"wp-block-list\">\n<li>List fields will be replaced with collection matchers (see below)<\/li>\n\n\n\n<li>Integer and float fields will be replaced with ranges<\/li>\n\n\n\n<li>Registry ids will be replaced with a type that accepts id, list of ids or a tag<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Collection Matcher<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A collection matcher is a shared part of predicates that is used for matching collections<\/li>\n\n\n\n<li>Every instance of this matcher will have the same fields with the same functionality, with the only difference being the type of matched element<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>size&nbsp;&#8211; integer range to match against collection size<\/li>\n\n\n\n<li>contains\u00a0&#8211; a list of element predicates\n<ul class=\"wp-block-list\">\n<li>All conditions must match for the predicate to pass<\/li>\n\n\n\n<li>Not all elements in the tested container have to be matched<\/li>\n\n\n\n<li>Elements can be in any order<\/li>\n\n\n\n<li>A single element can be matched by multiple predicates<\/li>\n\n\n\n<li>Examples (when matching item stacks):\n<ul class=\"wp-block-list\">\n<li>{contents:[{item:diamond}]}&nbsp;&#8211; will match when there is at least one diamond item<\/li>\n\n\n\n<li>{contents:[{item:diamond}, {item:dirt}]}&nbsp;&#8211; will match when there is at least one diamond item and at least one dirt item<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>count\u00a0&#8211; a list of matchers on element counts\n<ul class=\"wp-block-list\">\n<li>Entry fields:\n<ul class=\"wp-block-list\">\n<li>test&nbsp;&#8211; element matcher<\/li>\n\n\n\n<li>count&nbsp;&#8211; optional integer range to check against number of elements passing&nbsp;test<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Examples (when matching item stacks):\n<ul class=\"wp-block-list\">\n<li>{count:[{count:3,test:{items:diamond}}]}}&nbsp;will match only when there are exactly 3 stacks of diamonds (no matter the stack size)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>container<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matcher for&nbsp;container&nbsp;component (like Shulker Box)<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>items\u00a0&#8211; optional collection matcher\n<ul class=\"wp-block-list\">\n<li>Note: empty items are ignored. That means&nbsp;container~{items:{size:3}}&nbsp;will only pass if there are exactly 3 non-empty stacks in container<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>bundle_contents<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matcher for&nbsp;bundle_contents&nbsp;component<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>items&nbsp;&#8211; optional collection matcher<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>firework_explosion<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matcher for&nbsp;firework_explosion&nbsp;component<\/li>\n\n\n\n<li>Fields\n<ul class=\"wp-block-list\">\n<li>shape&nbsp;&#8211; optional matcher for shape, same values as&nbsp;shape&nbsp;field in&nbsp;minecraft:firework_explosion&nbsp;component<\/li>\n\n\n\n<li>has_trail&nbsp;&#8211; optional boolean<\/li>\n\n\n\n<li>has_twinkle&nbsp;&#8211; optional boolean<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>fireworks<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matcher for&nbsp;fireworks&nbsp;component<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>explosions&nbsp;&#8211; optional collection matcher for&nbsp;firework_explosion&nbsp;predicates<\/li>\n\n\n\n<li>flight_duration&nbsp;&#8211; optional integer range check for flight duration<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Example:&nbsp;minecraft:fireworks~{explosions:{contains:[{shape:small_ball}]}}]&nbsp;&#8211; matches if firework has at least one explosion with&nbsp;small_ball&nbsp;shape<\/li>\n<\/ul>\n\n\n\n<p><strong>writable_book_content<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matcher for&nbsp;writable_book_content&nbsp;component<\/li>\n\n\n\n<li>Fields\n<ul class=\"wp-block-list\">\n<li>pages&nbsp;&#8211; optional collection matcher for strings (matching only the unfiltered\/raw contents of each page)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>written_book_content<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matcher for&nbsp;written_book_content&nbsp;component<\/li>\n\n\n\n<li>Fields\n<ul class=\"wp-block-list\">\n<li>pages&nbsp;&#8211; optional collection matcher for chat components (matching only the unfiltered\/raw contents of each page)<\/li>\n\n\n\n<li>author&nbsp;&#8211; optional string value<\/li>\n\n\n\n<li>title&nbsp;&#8211; optional string value (matching only value)<\/li>\n\n\n\n<li>generation&nbsp;&#8211; optional integer range check for generation<\/li>\n\n\n\n<li>resolved&nbsp;&#8211; optional boolean<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>attribute_modifiers<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matcher for&nbsp;attribute_modifiers&nbsp;component<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>modifiers\u00a0&#8211; optional collection matcher for following entries with following fields:\n<ul class=\"wp-block-list\">\n<li>attribute&nbsp;&#8211; optional id, list of ids or tag for attribute to be matched<\/li>\n\n\n\n<li>id&nbsp;&#8211; optional UUID<\/li>\n\n\n\n<li>name&nbsp;&#8211; optional string<\/li>\n\n\n\n<li>amount&nbsp;&#8211; optional double range check<\/li>\n\n\n\n<li>operation&nbsp;&#8211; optional operation type (same values as&nbsp;operation&nbsp;field from&nbsp;attribute_modifiers&nbsp;component)<\/li>\n\n\n\n<li>slot&nbsp;&#8211; optional applicable slot type (same values as&nbsp;slot&nbsp;field from&nbsp;attribute_modifiers&nbsp;component)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>trim<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matcher for&nbsp;trim&nbsp;component<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>material&nbsp;&#8211; optional id, list of ids or tag for material to be matched<\/li>\n\n\n\n<li>pattern&nbsp;&#8211; optional id, list of ids or tag for pattern to be matched<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Advancements<\/strong><\/p>\n\n\n\n<p><strong>Changes to&nbsp;item_used_on_block<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>This criteria trigger is now only triggered when a specific item is used successfully on a block (as opposed to any interaction with a block)\n<ul class=\"wp-block-list\">\n<li>For example, when using an Axe to scrape Oxidized Copper blocks would trigger, while using an Axe on a Crafting Table would not<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Added&nbsp;Default_Block_Use<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Triggers due to the default interaction of a block by a player, such as opening a door<\/li>\n<\/ul>\n\n\n\n<p><strong>Added&nbsp;Any_Block_Use<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Triggers due to any type of interaction with a block by a player, such as using an item on the block or its default usage<\/li>\n<\/ul>\n\n\n\n<p><strong>Added&nbsp;Crafter_Recipe_Crafted<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Triggered when a Crafter ejects a successfully crafted item into the world<\/li>\n\n\n\n<li>Fields (same format as\u00a0recipe_crafted):\n<ul class=\"wp-block-list\">\n<li>player&nbsp;&#8211; an entity predicate matching nearby players in an 8 block radius<\/li>\n\n\n\n<li>recipe_id&nbsp;&#8211; the ID of the recipe being crafted<\/li>\n\n\n\n<li>ingredients&nbsp;&#8211; a list of item predicates matching the ingredients that form the recipe being crafted<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Added&nbsp;Fall_After_Explosion<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Triggered when a player begins falling after being knocked upwards by an explosion or wind burst<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>player&nbsp;&#8211; entity predicate matching the player who is falling<\/li>\n\n\n\n<li>start_position&nbsp;&#8211; location predicate matching the position the player was at when they were hit by the explosion or burst<\/li>\n\n\n\n<li>distance&nbsp;&#8211; distance predicate matching how far the player must be from&nbsp;start_position&nbsp;to cause the trigger to activate<\/li>\n\n\n\n<li>cause&nbsp;&#8211; entity predicate matching the entity that caused the explosion or burst to happen<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Loot Tables<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added&nbsp;gameplay\/panda_sneeze&nbsp;loot table for drops when Pandas sneeze<\/li>\n\n\n\n<li>Loot table entry\u00a0loot_table\u00a0(which returns all items from provided nested loot table) now has the following syntax:\n<ul class=\"wp-block-list\">\n<li>value\u00a0&#8211; can be either:\n<ul class=\"wp-block-list\">\n<li>namespaced id &#8211; reference to another named loot table<\/li>\n\n\n\n<li>full loot table (same format as in standalone file)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added new loot table type&nbsp;minecraft:equipment&nbsp;used for equipping items onto mobs<\/li>\n<\/ul>\n\n\n\n<p><strong>Storage&nbsp;Number Provider<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>This number provider can access numeric values from command storage directly<\/li>\n\n\n\n<li>If selected storage does not exist or tag selected by path is not numeric or does not exist, the provider returns 0<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>storage&nbsp;&#8211; namespaced id of command storage<\/li>\n\n\n\n<li>path&nbsp;&#8211; NBT path to field<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Modified Loot Functions<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Nested lists are no longer supported in function lists<\/li>\n<\/ul>\n\n\n\n<p><strong>set_contents<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The&nbsp;type&nbsp;field has been removed<\/li>\n\n\n\n<li>Added a new mandatory field\u00a0component:\n<ul class=\"wp-block-list\">\n<li>Describes the target item stack component to be filled with items<\/li>\n\n\n\n<li>Any existing contents will be replaced<\/li>\n\n\n\n<li>Allowed values:&nbsp;container,&nbsp;bundle_contents,&nbsp;charged_projectiles<\/li>\n\n\n\n<li>bundle_contents&nbsp;and&nbsp;charged_projectiles&nbsp;will ignore empty stacks<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_custom_data&nbsp;(renamed from&nbsp;set_nbt)<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Now applies to the&nbsp;custom_data&nbsp;component of the target item<\/li>\n\n\n\n<li>The&nbsp;tag&nbsp;field now accepts both SNBT data written as a string (existing format) and unflattened tags<\/li>\n<\/ul>\n\n\n\n<p><strong>copy_custom_data&nbsp;(renamed from&nbsp;copy_nbt)<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Now applies to the&nbsp;custom_data&nbsp;component of the target item<\/li>\n<\/ul>\n\n\n\n<p><strong>set_name<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added optional field&nbsp;target&nbsp;to specify which name should be set<\/li>\n\n\n\n<li>Values:\n<ul class=\"wp-block-list\">\n<li>custom_name&nbsp;&#8211; sets&nbsp;custom_name&nbsp;component (default)<\/li>\n\n\n\n<li>item_name&nbsp;&#8211; sets&nbsp;item_name&nbsp;component<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_attributes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The modifier&nbsp;slot&nbsp;field now supports&nbsp;any,&nbsp;armor,&nbsp;hand, and&nbsp;body&nbsp;values<\/li>\n\n\n\n<li>The modifier\u00a0operation\u00a0values have been renamed:\n<ul class=\"wp-block-list\">\n<li>addition&nbsp;-&gt;&nbsp;add_value<\/li>\n\n\n\n<li>multiply_base&nbsp;-&gt;&nbsp;add_multiplied_base<\/li>\n\n\n\n<li>multiply_total&nbsp;-&gt;&nbsp;add_multiplied_total<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added\u00a0replace\u00a0field to the\u00a0set_attributes\u00a0loot function (default:\u00a0true)\n<ul class=\"wp-block-list\">\n<li>When&nbsp;false, attributes will be appended<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_lore<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The&nbsp;replace&nbsp;field has been removed<\/li>\n\n\n\n<li>Now has&nbsp;mode&nbsp;like&nbsp;set_fireworks&nbsp;and&nbsp;set_written_book_pages<\/li>\n<\/ul>\n\n\n\n<p><strong>New Loot Functions<\/strong><\/p>\n\n\n\n<p><strong>set_components<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Adds or replaces provided components on the target item<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions&nbsp;&#8211; optional list of conditions to filter this function<\/li>\n\n\n\n<li>components\u00a0&#8211; map of component id to component value (format varied by id)\n<ul class=\"wp-block-list\">\n<li>Components with a&nbsp;!&nbsp;prefix (e.g.&nbsp;&#8220;!minecraft:damage&#8221;: {}) will cause this component to be removed<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>copy_components<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Copies components from a specified source onto an item<\/li>\n\n\n\n<li>This is now used in the Vanilla pack in place of the&nbsp;copy_name&nbsp;and&nbsp;copy_nbt&nbsp;functions<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions&nbsp;&#8211; optional list of conditions to filter this function<\/li>\n\n\n\n<li>source\u00a0&#8211; source type to pull from\n<ul class=\"wp-block-list\">\n<li>Currently, can only and must be&nbsp;&#8220;block_entity&#8221;<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>include\u00a0&#8211; optional list of data components to be copied from source\n<ul class=\"wp-block-list\">\n<li>if omitted, all components present are included<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>exclude\u00a0&#8211; optional list of data components to be excluded from copying\n<ul class=\"wp-block-list\">\n<li>if omitted, defaults to empty<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Only components that are included (explicitly or implicitly) but not excluded will be copied<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>modify_contents<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Applies a modifier function to every item inside of a component<\/li>\n\n\n\n<li>If the component does not exist, it will not be added<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions&nbsp;&#8211; optional list of conditions to filter this function<\/li>\n\n\n\n<li>component\u00a0&#8211; target component\n<ul class=\"wp-block-list\">\n<li>Allowed values:&nbsp;container,&nbsp;bundle_contents,&nbsp;charged_projectiles<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>modifier&nbsp;&#8211; function or list of functions to be applied to every item inside container<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_item<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Replaces item type of item stack without changing its count and components<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions&nbsp;&#8211; optional list of conditions to filter this function<\/li>\n\n\n\n<li>item&nbsp;&#8211; new item type<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>filtered<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Applies a sub-function only to items that match item predicate<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions&nbsp;&#8211; optional list of conditions to filter this function<\/li>\n\n\n\n<li>item_filter&nbsp;&#8211; item predicate used to match items<\/li>\n\n\n\n<li>modifier&nbsp;&#8211; functions to apply to matching items<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_custom_model_data<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sets the&nbsp;custom_model_data&nbsp;component on the target item according to a number provider<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions&nbsp;&#8211; optional list of conditions to filter this function<\/li>\n\n\n\n<li>value&nbsp;&#8211; integer number provider<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_ominous_bottle_amplifier<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sets the&nbsp;ominous_bottle_amplifier&nbsp;component on the target item according to a number provider<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions&nbsp;&#8211; optional list of conditions to filter this function<\/li>\n\n\n\n<li>amplifier&nbsp;&#8211; a number provider used to generate the&nbsp;ominous_bottle_amplifier&nbsp;component<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_fireworks<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sets the details of the&nbsp;minecraft:fireworks&nbsp;component<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions: optional list of conditions:\n<ul class=\"wp-block-list\">\n<li>Conditions to check before applying the function<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>flight_duration: optional integer, 0-255:\n<ul class=\"wp-block-list\">\n<li>The flight duration measured in number of gunpowder<\/li>\n\n\n\n<li>If omitted, the flight duration of the item is left untouched &#8211; or set to 0 if the component did not exist before<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>explosions: optional object with fields:\n<ul class=\"wp-block-list\">\n<li>values: List of\u00a0firework_explosion\u00a0data &#8211; same format as the\u00a0explosion\u00a0field in the\u00a0minecraft:fireworks\u00a0component:\n<ul class=\"wp-block-list\">\n<li>The explosion data to set<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>mode: enumerated value deciding function for explosions:\n<ul class=\"wp-block-list\">\n<li>replace_all: fully replace the explosions list<\/li>\n\n\n\n<li>replace_section: replace a section of the explosions. Arguments:\n<ul class=\"wp-block-list\">\n<li>offset: optional non-negative integer:\n<ul class=\"wp-block-list\">\n<li>Start of replaced range<\/li>\n\n\n\n<li>If omitted,&nbsp;0&nbsp;is used<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>size: optional non-negative integer:\n<ul class=\"wp-block-list\">\n<li>Size of range to be replaced in explosions<\/li>\n\n\n\n<li>If omitted, the size of&nbsp;explosions&nbsp;field is used<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>insert: insert explosions, moving existing explosions to after the inserted section. Arguments:\n<ul class=\"wp-block-list\">\n<li>offset: optional non-negative integer:\n<ul class=\"wp-block-list\">\n<li>Index before which explosions will be inserted<\/li>\n\n\n\n<li>If omitted,&nbsp;0&nbsp;(before first explosion) is used<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>append: append explosions at the end of the list<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_firework_explosion<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sets the details of the&nbsp;minecraft:firework_explosion&nbsp;component<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions: optional list of conditions:\n<ul class=\"wp-block-list\">\n<li>Conditions to check before applying the function<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>shape: optional Explosion Shape:\n<ul class=\"wp-block-list\">\n<li>The explosion shape to set<\/li>\n\n\n\n<li>If omitted, the original shape is kept (or&nbsp;small_ball&nbsp;is used if there was no component)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>colors: optional integer array, RGB values:\n<ul class=\"wp-block-list\">\n<li>List of initial particle colors to replace the ones on the existing explosion with<\/li>\n\n\n\n<li>If omitted, the original colors are kept (or&nbsp;[]&nbsp;is used if there was no component)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>fade_colors: optional integer array, RGB values:\n<ul class=\"wp-block-list\">\n<li>List of fade-to particle colors to replace the ones on the existing explosion with<\/li>\n\n\n\n<li>If omitted, the original colors are kept (or&nbsp;[]&nbsp;is used if there was no component)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>trail: optional boolean:\n<ul class=\"wp-block-list\">\n<li>Set whether the explosion should have a trail or not<\/li>\n\n\n\n<li>If omitted, the original&nbsp;has_trail&nbsp;value is kept (or&nbsp;false&nbsp;is used if there was no component)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>twinkle: optional boolean:\n<ul class=\"wp-block-list\">\n<li>Set whether the explosion should have a twinkle or not<\/li>\n\n\n\n<li>If omitted, the original&nbsp;has_twinkle&nbsp;value is kept (or&nbsp;false&nbsp;is used if there was no component)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_book_cover<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sets the cover details of the&nbsp;minecraft:written_book_content&nbsp;component<\/li>\n\n\n\n<li>If present, any pages in the book are left untouched<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions: optional list of conditions:\n<ul class=\"wp-block-list\">\n<li>Conditions to check before applying the function<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>title: optional Filterable text (same format as\u00a0title\u00a0on the\u00a0minecraft:written_book_content\u00a0component):\n<ul class=\"wp-block-list\">\n<li>The title to set<\/li>\n\n\n\n<li>If omitted, the original title is kept (or an empty string is used if there was no component)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>author: optional string:\n<ul class=\"wp-block-list\">\n<li>The author to set<\/li>\n\n\n\n<li>If omitted, the original author is kept (or an empty string is used if there was no component)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>generation: optional integer [0; 3]:\n<ul class=\"wp-block-list\">\n<li>The generation value to set<\/li>\n\n\n\n<li>If omitted, the original generation is kept (or&nbsp;0&nbsp;is used if there was no component)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_writable_book_pages<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Manipulates the pages of the&nbsp;minecraft:writable_book_content&nbsp;component<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>conditions: list of conditions (default:\u00a0[]):\n<ul class=\"wp-block-list\">\n<li>Conditions to check before applying the function<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>pages: list of Filterable strings (same format as\u00a0pages\u00a0on the\u00a0minecraft:writable_book_content\u00a0component):\n<ul class=\"wp-block-list\">\n<li>The pages to apply<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>mode: enumerated value deciding function:\n<ul class=\"wp-block-list\">\n<li>replace_all: fully replace the book contents<\/li>\n\n\n\n<li>replace_section: replace a section of the book. Arguments:\n<ul class=\"wp-block-list\">\n<li>offset: optional non-negative integer:\n<ul class=\"wp-block-list\">\n<li>Start of replaced range<\/li>\n\n\n\n<li>If omitted,&nbsp;0&nbsp;is used<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>size: optional non-negative integer:\n<ul class=\"wp-block-list\">\n<li>Size of range to be replaced in book<\/li>\n\n\n\n<li>If omitted, the size of&nbsp;pages&nbsp;field is used<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>insert: insert pages, moving existing pages to after the inserted section. Arguments:\n<ul class=\"wp-block-list\">\n<li>offset: optional non-negative integer:\n<ul class=\"wp-block-list\">\n<li>Index before which pages will be inserted<\/li>\n\n\n\n<li>If omitted,&nbsp;0&nbsp;(before first page) is used<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>append: append pages at the end of the book<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>set_written_book_pages<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Manipulates the pages of the&nbsp;minecraft:written_book_content&nbsp;component<\/li>\n\n\n\n<li>Same format as\u00a0set_writable_book_content\u00a0but the\u00a0pages\u00a0field contains filterable Chat Components instead of Strings\n<ul class=\"wp-block-list\">\n<li>Unlike the&nbsp;written_book_content&nbsp;component,&nbsp;pages&nbsp;stores a list of JSON objects instead of JSON in string form<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Any cover data is left untouched, and the page content components are set to resolve next time a player opens the book<\/li>\n<\/ul>\n\n\n\n<p><strong>toggle_tooltips<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>This function can be used to modify item component tooltip visibility<\/li>\n\n\n\n<li>It works by setting fields like&nbsp;show_in_tooltip&nbsp;without changing other values<\/li>\n\n\n\n<li>Format:\n<ul class=\"wp-block-list\">\n<li>toggles&nbsp;&#8211; a map of supported item component type to boolean value<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Supported components:&nbsp;trim,&nbsp;dyed_color,&nbsp;enchantments,&nbsp;stored_enchantments,&nbsp;unbreakable,&nbsp;can_break,&nbsp;can_place_on,&nbsp;attribute_modifiers<\/li>\n\n\n\n<li>Example:\n<ul class=\"wp-block-list\">\n<li>{function:&#8221;toggle_tooltips&#8221;,&#8221;toggles&#8221;:{&#8220;enchantments&#8221;:false}}&nbsp;will hide enchantments tooltip<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Recipes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Recipe types&nbsp;crafting_shaped,&nbsp;crafting_shapeless,&nbsp;stonecutting&nbsp;and&nbsp;smithing_transform&nbsp;now accept&nbsp;components&nbsp;for the&nbsp;result&nbsp;item stack<\/li>\n\n\n\n<li>The\u00a0result\u00a0field for recipe types\u00a0smelting,\u00a0blasting,\u00a0smoking\u00a0and\u00a0campfire_cooking\u00a0is now an item stack format without a count, which means you&#8217;ll need to specify an object with an\u00a0id\u00a0field\n<ul class=\"wp-block-list\">\n<li>This&nbsp;result&nbsp;now also accepts&nbsp;components&nbsp;data<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Attributes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added\u00a0generic.scale\u00a0attribute that can be used to rescale any living entity (default:\u00a01.0)\n<ul class=\"wp-block-list\">\n<li>Certain entities have special restrictions due to technical limitations:\n<ul class=\"wp-block-list\">\n<li>Shulkers can only be scaled up to 3x their normal size<\/li>\n\n\n\n<li>The Ender Dragon cannot be scaled<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added&nbsp;player.block_interaction_range&nbsp;(default:&nbsp;4.5) and&nbsp;player.entity_interaction_range&nbsp;(default:&nbsp;3.0) attributes that control player reach distance<\/li>\n\n\n\n<li>Added&nbsp;generic.step_height&nbsp;attribute that defines the maximum number of blocks that an entity can step up without jumping (default:&nbsp;0.6)<\/li>\n\n\n\n<li>Added&nbsp;generic.gravity&nbsp;attribute that controls blocks\/tick^2 acceleration downward (default:&nbsp;-0.08)<\/li>\n\n\n\n<li>Added&nbsp;generic.safe_fall_distance&nbsp;attribute to control the fall distance after which the entity will take fall damage (default:&nbsp;3.0)<\/li>\n\n\n\n<li>Added&nbsp;generic.fall_damage_multiplier&nbsp;attribute to multiply overall applied fall damage (default:&nbsp;1.0)<\/li>\n\n\n\n<li>Renamed\u00a0horse.jump_strength\u00a0to\u00a0generic.jump_strength, and now applies to all entities\n<ul class=\"wp-block-list\">\n<li>This controls the base impulse from a jump (before jump boost or modifier on block)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added&nbsp;player.block_break_speed&nbsp;attribute that acts as a multiplier over block breaking speed for players (default: `1.0)<\/li>\n<\/ul>\n\n\n\n<p><strong>Particles<\/strong><\/p>\n\n\n\n<p>Added the following particle types:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>vault_connection<\/li>\n\n\n\n<li>infested<\/li>\n\n\n\n<li>item_cobweb<\/li>\n\n\n\n<li>small_gust<\/li>\n\n\n\n<li>raid_omen<\/li>\n\n\n\n<li>trial_omen<\/li>\n\n\n\n<li>trial_spawner_detection_ominous<\/li>\n\n\n\n<li>ominous_spawning<\/li>\n<\/ul>\n\n\n\n<p><strong>Particle Representation<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Particle options in commands and in fields like&nbsp;Particles&nbsp;in Area Effect clouds now use the same representation as worldgen files (like existing biomes&#8217; ambient particle settings)<\/li>\n\n\n\n<li>For example, command&nbsp;\/particle minecraft:dust 1.0 0.0 0.0 2.0 &#8230;&nbsp;becomes&nbsp;\/particle minecraft:dust{color:[1.0, 0.0, 0.0], scale:2.0} &#8230;<\/li>\n\n\n\n<li>The syntax for particles without extra options (like&nbsp;minecraft:villager) remains unchanged<\/li>\n\n\n\n<li>Changes to block particles (minecraft:block,\u00a0minecraft:block_marker,\u00a0minecraft:falling_dust,\u00a0minecraft:dust_pillar) options:\n<ul class=\"wp-block-list\">\n<li>Field&nbsp;value&nbsp;has been renamed to&nbsp;block_state<\/li>\n\n\n\n<li>Field&nbsp;block_state&nbsp;now also accepts plain block name to represent default block state<\/li>\n\n\n\n<li>Example transformations:\n<ul class=\"wp-block-list\">\n<li>minecraft:block minecraft:redstone_lamp[lit=true]&nbsp;-&gt;&nbsp;minecraft:block{block_state: {Name: &#8220;minecraft:redstone_lamp&#8221;, Properties: {lit: &#8220;true&#8221;}}}<\/li>\n\n\n\n<li>minecraft:block minecraft:diamond_block&nbsp;-&gt;&nbsp;minecraft:block{block_state: &#8220;minecraft:diamond_block&#8221;}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Changes to\u00a0minecraft:item\u00a0options:\n<ul class=\"wp-block-list\">\n<li>Field&nbsp;value&nbsp;has been renamed to&nbsp;item<\/li>\n\n\n\n<li>Field&nbsp;item&nbsp;now also accepts plain item name to represent item stack with default components<\/li>\n\n\n\n<li>count&nbsp;field is now ignored<\/li>\n\n\n\n<li>Example transformations:\n<ul class=\"wp-block-list\">\n<li>minecraft:item minecraft:dirt&nbsp;-&gt;&nbsp;minecraft:item{item: {id: &#8220;minecraft:dirt&#8221;}}<\/li>\n\n\n\n<li>minecraft:item minecraft:dirt&nbsp;-&gt;&nbsp;minecraft:item{item: &#8220;minecraft:dirt&#8221;}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Changes to\u00a0dust_color_transition\u00a0options:\n<ul class=\"wp-block-list\">\n<li>The&nbsp;fromColor&nbsp;field has been renamed to&nbsp;from_color<\/li>\n\n\n\n<li>The&nbsp;toColor&nbsp;field has been renamed to&nbsp;to_color<\/li>\n\n\n\n<li>Example transformation:&nbsp;dust_color_transition 1.0 0.0 0.0 0.5 0.0 1.0 0.5&nbsp;-&gt;&nbsp;dust_color_transition{from_color: [1.0f, 0.0f, 0.0f], scale: 0.5f, to_color: [0.0f, 1.0f, 0.5f]}<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added\u00a0entity_effect\u00a0options:\n<ul class=\"wp-block-list\">\n<li>Now accepts options to control the color of the particle<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>color: packed integer ARGB color, or list of floats (0.0 to 1.0) representing RGBA color<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Enchantments<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The&nbsp;minecraft:sweeping&nbsp;enchantment has been renamed to&nbsp;minecraft:sweeping_edge<\/li>\n\n\n\n<li>Projectile weapon Enchantments like&nbsp;infinity,&nbsp;multishot&nbsp;and&nbsp;piercing&nbsp;now work on both Crossbows and Bows, if placed onto the alternative weapon using data manipulation or a change to the&nbsp;enchantable\/*&nbsp;tags)<\/li>\n<\/ul>\n\n\n\n<p><strong>Damage Types<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Llamas now use a new damage type&nbsp;spit&nbsp;instead of&nbsp;mob_projectile<\/li>\n<\/ul>\n\n\n\n<p><strong>Tags<\/strong><\/p>\n\n\n\n<p><strong>Block tags<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added&nbsp;minecraft:does_not_block_hoppers&nbsp;for blocks that will never disable a Hopper when placed above one<\/li>\n\n\n\n<li>Added&nbsp;minecraft:blocks_wind_charge_explosions&nbsp;for blocks not impacted by the explosion when hit by Wind Charge<\/li>\n\n\n\n<li>Added\u00a0minecraft:incorrect_for_wooden_tool,\u00a0minecraft:incorrect_for_gold_tool,\u00a0minecraft:incorrect_for_stone_tool,\u00a0minecraft:incorrect_for_iron_tool,\u00a0minecraft:incorrect_for_diamond_tool,\u00a0minecraft:incorrect_for_netherite_tool\n<ul class=\"wp-block-list\">\n<li>These tags combine the existing&nbsp;needs_diamond_tool,&nbsp;needs_iron_tool, and&nbsp;needs_stone_tool&nbsp;tags for each specific tool tier<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Item Tags<\/strong><\/p>\n\n\n\n<p>New item tags controlling what enchantments can be added to what gear:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>minecraft:enchantable\/foot_armor<\/li>\n\n\n\n<li>minecraft:enchantable\/leg_armor<\/li>\n\n\n\n<li>minecraft:enchantable\/chest_armor<\/li>\n\n\n\n<li>minecraft:enchantable\/head_armor<\/li>\n\n\n\n<li>minecraft:enchantable\/armor<\/li>\n\n\n\n<li>minecraft:enchantable\/weapon<\/li>\n\n\n\n<li>minecraft:enchantable\/sword<\/li>\n\n\n\n<li>minecraft:enchantable\/mining<\/li>\n\n\n\n<li>minecraft:enchantable\/mining_loot<\/li>\n\n\n\n<li>minecraft:enchantable\/fishing<\/li>\n\n\n\n<li>minecraft:enchantable\/trident<\/li>\n\n\n\n<li>minecraft:enchantable\/durability<\/li>\n\n\n\n<li>minecraft:enchantable\/bow<\/li>\n\n\n\n<li>minecraft:enchantable\/equippable<\/li>\n\n\n\n<li>minecraft:enchantable\/crossbow<\/li>\n\n\n\n<li>minecraft:enchantable\/vanishing<\/li>\n<\/ul>\n\n\n\n<p>New item tags defining food and tempting items for various mobs:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>minecraft:armadillo_food<\/li>\n\n\n\n<li>minecraft:axolotl_food&nbsp;(renamed from&nbsp;minecraft:axolotl_tempt_items)<\/li>\n\n\n\n<li>minecraft:bee_food<\/li>\n\n\n\n<li>minecraft:camel_food<\/li>\n\n\n\n<li>minecraft:cat_food<\/li>\n\n\n\n<li>minecraft:chicken_food<\/li>\n\n\n\n<li>minecraft:cow_food<\/li>\n\n\n\n<li>minecraft:fox_food<\/li>\n\n\n\n<li>minecraft:frog_food<\/li>\n\n\n\n<li>minecraft:goat_food<\/li>\n\n\n\n<li>minecraft:hoglin_food<\/li>\n\n\n\n<li>minecraft:horse_food<\/li>\n\n\n\n<li>minecraft:horse_tempt_items<\/li>\n\n\n\n<li>minecraft:llama_food<\/li>\n\n\n\n<li>minecraft:llama_tempt_items<\/li>\n\n\n\n<li>minecraft:meat&nbsp;collection tag: not used by the game directly, but may be included in other tags<\/li>\n\n\n\n<li>minecraft:ocelot_food<\/li>\n\n\n\n<li>minecraft:panda_food<\/li>\n\n\n\n<li>minecraft:parrot_food<\/li>\n\n\n\n<li>minecraft:parrot_poisonous_food<\/li>\n\n\n\n<li>minecraft:pig_food<\/li>\n\n\n\n<li>minecraft:piglin_food<\/li>\n\n\n\n<li>minecraft:rabbit_food<\/li>\n\n\n\n<li>minecraft:sheep_food<\/li>\n\n\n\n<li>minecraft:strider_food<\/li>\n\n\n\n<li>minecraft:strider_tempt_items<\/li>\n\n\n\n<li>minecraft:turtle_food<\/li>\n\n\n\n<li>minecraft:wolf_food<\/li>\n<\/ul>\n\n\n\n<p>Removed item tags:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Removed tag&nbsp;minecraft:tools&nbsp;(overlapping with&nbsp;minecraft:breaks_decorated_pots)<\/li>\n<\/ul>\n\n\n\n<p><strong>Entity Type Tags<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added&nbsp;minecraft:ignores_poison_and_regen&nbsp;for entities that cannot be affected by Poison and Regeneration effects<\/li>\n\n\n\n<li>Added&nbsp;minecraft:illager_friends&nbsp;for entities that Illagers will consider allies (unless on a different team)<\/li>\n\n\n\n<li>Added&nbsp;minecraft:immune_to_infested&nbsp;for entities that cannot receive the Infested mob effect<\/li>\n\n\n\n<li>Added&nbsp;minecraft:immune_to_oozing&nbsp;for entities that cannot receive the Oozing mob effect<\/li>\n\n\n\n<li>Added&nbsp;minecraft:inverted_healing_and_harm&nbsp;for entities that have inverted meanings of the Healing and Harm effects<\/li>\n\n\n\n<li>Added&nbsp;minecraft:not_scary_for_pufferfish&nbsp;for entities that will not cause Pufferfish to puff<\/li>\n\n\n\n<li>Added&nbsp;minecraft:redirectable_projectile&nbsp;for projectiles which should be able to be redirected and deflected toward the direction the player is looking<\/li>\n\n\n\n<li>Added&nbsp;minecraft:sensitive_to_bane_of_arthropods&nbsp;for entities sensitive to Bane of Arthropods<\/li>\n\n\n\n<li>Added&nbsp;minecraft:sensitive_to_impaling&nbsp;for entities sensitive to Impaling<\/li>\n\n\n\n<li>Added&nbsp;minecraft:sensitive_to_smite&nbsp;for entities that take extra damage from the Smite Enchantment<\/li>\n\n\n\n<li>Added&nbsp;minecraft:wither_friends&nbsp;for entities that the Wither will not target and which cannot harm the Wither<\/li>\n<\/ul>\n\n\n\n<p><strong>Damage Type Tags<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added&nbsp;minecraft:bypasses_wolf_armor&nbsp;for damage sources that cannot be absorbed by Wolf Armor<\/li>\n\n\n\n<li>Added&nbsp;minecraft:is_player_attack&nbsp;for attacks performed by the player<\/li>\n<\/ul>\n\n\n\n<p><strong>Enchantment Tags<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added&nbsp;minecraft:tooltip_order&nbsp;controlling which order Enchantments are listed in tooltips<\/li>\n<\/ul>\n\n\n\n<p><strong>Banner Patterns<\/strong><\/p>\n\n\n\n<p>Banner Patterns will now be loaded into a dynamic registry from data packs (data\/&lt;namespace&gt;\/banner_pattern\/&lt;id&gt;)<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>These entries have two fields:\n<ul class=\"wp-block-list\">\n<li>asset_id\u00a0(namespaced string) is used to resolve texture locations\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;custom:pattern&nbsp;resolves to&nbsp;assets\/custom\/textures\/entity\/banner\/pattern.png,&nbsp;assets\/custom\/textures\/entity\/shield\/pattern.png<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>translation_key\u00a0(string) is a translation key prefix\n<ul class=\"wp-block-list\">\n<li>e.g.&nbsp;block.minecraft.banner.custom.pattern&nbsp;resolves to&nbsp;block.minecraft.banner.custom.pattern.&lt;dye color&gt;<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Wolf Variants<\/strong><\/p>\n\n\n\n<p>Wolf variants can be data-driven by adding entries to&nbsp;data\/&lt;namespace&gt;\/wolf_variant\/&lt;id&gt;.json.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Format: object with fields\n<ul class=\"wp-block-list\">\n<li>wild_texture\u00a0&#8211; wild\/untamed texture for this variant\n<ul class=\"wp-block-list\">\n<li>&lt;namespace&gt;:&lt;path&gt;&nbsp;resolves to&nbsp;assets\/&lt;namespace&gt;\/textures\/&lt;path&gt;.png<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>tame_texture&nbsp;&#8211; tamed texture for this variant<\/li>\n\n\n\n<li>angry_texture&nbsp;&#8211; to angry texture for this variant<\/li>\n\n\n\n<li>biome&nbsp;&#8211; a single entry, list or a tag describing biomes in which this variant naturally spawns<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Worldgen Data Formats<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added new terrain adaptation type for structures:\u00a0encapsulate\n<ul class=\"wp-block-list\">\n<li>Density will be added all around every piece of a structure<\/li>\n\n\n\n<li>Ideal for structures that need to be entirely covered underground<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Int and float providers are no longer wrapped in an extra\u00a0value\u00a0field next to\u00a0type\n<ul class=\"wp-block-list\">\n<li>For example,&nbsp;{&#8220;type&#8221;:&#8221;minecraft:uniform&#8221;,&#8221;value&#8221;:{&#8220;min_inclusive&#8221;:0.0,&#8221;max_inclusive&#8221;:1.0}}&nbsp;becomes&nbsp;{&#8220;type&#8221;:&#8221;minecraft:uniform&#8221;,&#8221;min_inclusive&#8221;:0.0,&#8221;max_inclusive&#8221;:1.0}<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Resource Pack Versions 23 Through 32<\/strong><\/h4>\n\n\n\n<p>The Resource Pack version is now 32. These are the changes compared to version 22, used in 1.20.4.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Renamed&nbsp;scute&nbsp;textures and models to&nbsp;turtle_scute<\/li>\n\n\n\n<li>Added textures and models for new features<\/li>\n\n\n\n<li>Changes to fonts<\/li>\n\n\n\n<li>Changes to shaders<\/li>\n<\/ul>\n\n\n\n<p><strong>Models And Textures<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added textures for Wolf variations<\/li>\n\n\n\n<li>Added files for Armadillo and Wolf Armor<\/li>\n\n\n\n<li>Added additional textures to support colored layers of Wolf Armor for the Wolf model and Wolf Armor item:\n<ul class=\"wp-block-list\">\n<li>textures\/entity\/wolf\/wolf_armor_overlay.png<\/li>\n\n\n\n<li>textures\/item\/wolf_armor_overlay.png<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added three semi-transparent textures for the cracks to show on the Wolf Armor layer:\n<ul class=\"wp-block-list\">\n<li>textures\/entity\/wolf\/wolf_armor_crackiness_low.png<\/li>\n\n\n\n<li>textures\/entity\/wolf\/wolf_armor_crackiness_medium.png<\/li>\n\n\n\n<li>textures\/entity\/wolf\/wolf_armor_crackiness_high.png<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added&nbsp;trial_chambers&nbsp;map decoration icon<\/li>\n\n\n\n<li>Added textures and model files for the following experimental blocks and items:\n<ul class=\"wp-block-list\">\n<li>Vault<\/li>\n\n\n\n<li>Ominous Vault<\/li>\n\n\n\n<li>Ominous Trial Spawner<\/li>\n\n\n\n<li>Ominous Bottle<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added the following mob effect icon textures:\n<ul class=\"wp-block-list\">\n<li>bad_omen_121<\/li>\n\n\n\n<li>infested<\/li>\n\n\n\n<li>oozing<\/li>\n\n\n\n<li>raid_omen<\/li>\n\n\n\n<li>trial_omen<\/li>\n\n\n\n<li>weaving<\/li>\n\n\n\n<li>wind_charged<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>GUI<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The\u00a0gui\/options_background\u00a0and the\u00a0gui\/light_dirt_background\u00a0textures have been removed. Instead;\n<ul class=\"wp-block-list\">\n<li>Added&nbsp;gui\/menu_background&nbsp;to be used as the background of screens, while&nbsp;gui\/menu_list_background&nbsp;is used for the background of lists for menus accessed from the Title Screen<\/li>\n\n\n\n<li>Added&nbsp;gui\/inworld_menu_background,&nbsp;gui\/inworld_menu_list_background,&nbsp;gui\/inworld_header_separator,&nbsp;gui\/inworld_footer_separator&nbsp;textures for menus accessed from the Pause Menu<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Lists now use the&nbsp;gui\/header_separator&nbsp;and&nbsp;gui\/footer_separator&nbsp;textures at the top and bottom, respectively<\/li>\n\n\n\n<li>The following textures have been updated:&nbsp;gui\/footer_separator,&nbsp;gui\/header_separator<\/li>\n\n\n\n<li>The following sprites have been updated:&nbsp;widget\/tab,&nbsp;widget\/tab_highlighted,&nbsp;widget\/tab_selected,&nbsp;widget\/tab_selected_highlighted<\/li>\n\n\n\n<li>The&nbsp;widget\/scroller_background&nbsp;sprite has been added<\/li>\n\n\n\n<li>The following textures in Realms have been removed:&nbsp;gui\/sprites\/backup\/changes,&nbsp;gui\/sprites\/backup\/changes_highlighted,&nbsp;gui\/sprites\/backup\/restore,&nbsp;gui\/sprites\/backup\/restore_highlighted,&nbsp;gui\/sprites\/player_list\/make_operator_highlighted,&nbsp;gui\/sprites\/player_list\/remove_operator_highlighted,&nbsp;gui\/sprites\/player_list\/remove_player_highlighted<\/li>\n\n\n\n<li>Added&nbsp;gui\/tab_header_background&nbsp;texture, which is rendered behind the tab buttons in the Create World Screen<\/li>\n\n\n\n<li>Added&nbsp;misc\/credits_vignette&nbsp;texture, which is rendered behind the poem and the credits<\/li>\n\n\n\n<li>Split map decoration atlas into separate files<\/li>\n<\/ul>\n\n\n\n<p><strong>Map Decorations<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Map decoration icons have been split from the former&nbsp;map_icons.png&nbsp;to use an atlas loaded from the&nbsp;textures\/map\/decorations\/&nbsp;directory<\/li>\n\n\n\n<li>The process of upgrading your pack can be assisted by using this automated\u00a0<a href=\"https:\/\/github.com\/Mojang\/slicer\/releases\/tag\/v1.1.5\" target=\"_blank\" rel=\"noreferrer noopener\">Slicer<\/a>\u00a0tool<\/li>\n<\/ul>\n\n\n\n<p><strong>Fonts<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The\u00a0ttf\u00a0font provider transforms have been adjusted to have more reasonable defaults\n<ul class=\"wp-block-list\">\n<li>shift&nbsp;is no longer applied double, and now directly represents a number of pixels in the game UI<\/li>\n\n\n\n<li>The font EM square is fitted to&nbsp;size&nbsp;pixels in the game UI, instead of between the font ascender and font descender<\/li>\n\n\n\n<li>The font baseline is positioned consistently with the default font (7 pixels below line top)<\/li>\n\n\n\n<li>This means that generally, any font with a&nbsp;size&nbsp;of 9 and no&nbsp;shift&nbsp;should look correct by default<\/li>\n\n\n\n<li>shift&nbsp;is now restricted to the range&nbsp;[-512; 512]<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added font variant filters to font providers<\/li>\n<\/ul>\n\n\n\n<p><strong>Font Variant Filters<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Every glyph provider can now be enabled or disabled based on certain set of variants<\/li>\n\n\n\n<li>Available variants are currently hardcoded and controlled by the font options menu\n<ul class=\"wp-block-list\">\n<li>Current variants:\n<ul class=\"wp-block-list\">\n<li>uniform&nbsp;&#8211; wired to &#8220;Force Uniform&#8221; button<\/li>\n\n\n\n<li>jp&nbsp;&#8211; wired to &#8220;Japanese Glyph Variants&#8221; button<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Filters are defined in section called\u00a0filter, available for every glyph provider\n<ul class=\"wp-block-list\">\n<li>Keys in that object are variant names (for example&nbsp;uniform)<\/li>\n\n\n\n<li>Glyph provider will be included only when value in filter matches actual value of variant in key<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Shaders<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The unused attributes array in core shader definitions has been removed<\/li>\n\n\n\n<li>The unused&nbsp;position_color_normal&nbsp;and&nbsp;position_tex_lightmap_color&nbsp;shaders have been removed<\/li>\n\n\n\n<li>The&nbsp;position_tex_color_normal&nbsp;shader (only used by clouds) has been replaced with&nbsp;rendertype_clouds<\/li>\n\n\n\n<li>The&nbsp;IViewRotMat&nbsp;uniform has been removed, and the&nbsp;Position&nbsp;attribute for entities is now in (camera relative) world space<\/li>\n\n\n\n<li>Light direction uniforms are no longer premultiplied by the view matrix<\/li>\n\n\n\n<li>The&nbsp;blur&nbsp;post-processing shader has been renamed to&nbsp;box_blur<\/li>\n\n\n\n<li>Added optional boolean field&nbsp;use_linear_filter&nbsp;to post-processing passes which when set to&nbsp;true&nbsp;switches texture sampling mode from nearest-neighbor sampling to linear interpolation for that pass<\/li>\n\n\n\n<li>Added&nbsp;entity_outline_box_blur&nbsp;post-processing shader<\/li>\n<\/ul>\n\n\n\n<p><strong>Particles<\/strong><\/p>\n\n\n\n<p>Added the following particle types:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>infested<\/li>\n\n\n\n<li>item_cobweb<\/li>\n\n\n\n<li>ominous_spawning<\/li>\n\n\n\n<li>raid_omen<\/li>\n\n\n\n<li>small_gust<\/li>\n\n\n\n<li>trial_omen<\/li>\n\n\n\n<li>trial_spawner_detection_ominous<\/li>\n\n\n\n<li>vault_connection<\/li>\n<\/ul>\n\n\n\n<p><strong>Sound Events<\/strong><\/p>\n\n\n\n<p>Added the following sound events:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>block.cobweb.break<\/li>\n\n\n\n<li>block.cobweb.fall<\/li>\n\n\n\n<li>block.cobweb.hit<\/li>\n\n\n\n<li>block.cobweb.place<\/li>\n\n\n\n<li>block.cobweb.step<\/li>\n\n\n\n<li>block.trial_spawner.about_to_spawn_item<\/li>\n\n\n\n<li>block.trial_spawner.ambient_charged<\/li>\n\n\n\n<li>block.trial_spawner.charge_activate<\/li>\n\n\n\n<li>block.trial_spawner.spawn_item_begin<\/li>\n\n\n\n<li>block.trial_spawner.spawn_item<\/li>\n\n\n\n<li>event.mob_effect.bad_omen<\/li>\n\n\n\n<li>event.mob_effect.raid_omen<\/li>\n\n\n\n<li>event.mob_effect.trial_omen<\/li>\n\n\n\n<li>item.ominous_bottle.dispose<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Experimental Features<\/strong><\/h4>\n\n\n\n<p>The following changes only apply when their respective Experiment is turned on, either by activating the corresponding experimental data pack or by turning it on in the Experiments screen while creating the world.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added the Mace<\/li>\n\n\n\n<li>Added Breeze Rod item<\/li>\n\n\n\n<li>Updates to the Breeze<\/li>\n\n\n\n<li>Added Wind Charge Item<\/li>\n\n\n\n<li>Added Vault block<\/li>\n\n\n\n<li>Redesigned Bad Omen to give access to Ominous Events<\/li>\n\n\n\n<li>Added Ominous Bottle<\/li>\n\n\n\n<li>Added Ominous Trial Spawner<\/li>\n\n\n\n<li>Added Ominous Vault<\/li>\n\n\n\n<li>Added Ominous Trial Key<\/li>\n\n\n\n<li>Added Bogged mob<\/li>\n\n\n\n<li>Added 6 new mob effects<\/li>\n<\/ul>\n\n\n\n<p><strong>Mace<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A new heavy weapon to smash your enemies!<\/li>\n\n\n\n<li>Can be crafted with a Breeze Rod and a Heavy Core<\/li>\n\n\n\n<li>Leverage the weight of this new weapon to deal additional damage the farther you fall before hitting your target\n<ul class=\"wp-block-list\">\n<li>Try it out by jumping down toward your target, and hit them before you hit the ground<\/li>\n\n\n\n<li>Successfully striking a target in this way will reset all vertical momentum and negate any fall-damage accumulated from the fall<\/li>\n\n\n\n<li>Other entities near the struck enemy will be knocked back by the immense force of the Mace<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Using a Mace will decrease its durability like any other weapon; repair it with Breeze Rods at an anvil<\/li>\n\n\n\n<li>Players can use a Mace in combination with Wind Charges to launch up and deliver devastating smash attacks on their enemies<\/li>\n\n\n\n<li>The baseline additional damage dealt by the Mace smash attack is 3 (1.5 hearts) per fallen block<\/li>\n\n\n\n<li>These existing enchantments can be applied to the Mace:\n<ul class=\"wp-block-list\">\n<li>Mending<\/li>\n\n\n\n<li>Unbreaking<\/li>\n\n\n\n<li>Smite<\/li>\n\n\n\n<li>Bane of Arthropods<\/li>\n\n\n\n<li>Fire Aspect<\/li>\n\n\n\n<li>Curse of Vanishing<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Three new enchantments have been introduced that are unique to the Mace:\n<ul class=\"wp-block-list\">\n<li>Density:\n<ul class=\"wp-block-list\">\n<li>Common Enchantment, accessible in the Enchanting Table and on Enchanted Books in loot<\/li>\n\n\n\n<li>Has 5 levels<\/li>\n\n\n\n<li>Maces enchanted with Density do more damage per fallen block per Density level\n<ul class=\"wp-block-list\">\n<li>Damage dealt per fallen block is increased by 1 per level of Density<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Breach:\n<ul class=\"wp-block-list\">\n<li>Rare Enchantment, accessible in the Enchanting Table and on Enchanted Books in loot<\/li>\n\n\n\n<li>Has 4 levels<\/li>\n\n\n\n<li>Maces enchanted with Breach reduce the effectiveness of armor on the target\n<ul class=\"wp-block-list\">\n<li>The effectiveness of the armor is reduced by 15% per Breach level<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Wind Burst:\n<ul class=\"wp-block-list\">\n<li>Unique enchantment which can only be found in Ominous Vaults<\/li>\n\n\n\n<li>Has 3 levels<\/li>\n\n\n\n<li>Maces enchanted with Wind Burst will emit a Wind Burst upon hitting an enemy, launching the attacker upward and enabling the linking of smash attacks one after the other<\/li>\n\n\n\n<li>Each level will bounce the attacker higher up in the air<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Heavy Core<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A mysterious, dense block which can be combined with a Breeze Rod to craft a brand-new weapon: the Mace!<\/li>\n<\/ul>\n\n\n\n<p><strong>Breeze Rod<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>An item dropped by the Breeze that can be crafted into 4 Wind Charges, or used with the Heavy Core to craft the Mace<\/li>\n<\/ul>\n\n\n\n<p><strong>Breeze<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Now drops 1-2 Breeze Rods when killed by a player\n<ul class=\"wp-block-list\">\n<li>The number of Breeze Rods dropped is affected by looting enchantments<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Added new sound effects, as well as tweaked existing sounds<\/li>\n\n\n\n<li>Breeze now deflects all projectiles<\/li>\n\n\n\n<li>Deflected projectiles now deflect in the direction of the shooter<\/li>\n\n\n\n<li>Breeze is now aggressive toward Iron Golems<\/li>\n\n\n\n<li>Breeze no longer retaliates against attacks from the following mobs: Skeletons, Strays, Zombies, Husks, Spiders, Cave Spiders, Slimes\n<ul class=\"wp-block-list\">\n<li>The above mobs will not retaliate when hurt by the Breeze&#8217;s Wind Charge Projectile<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Updated the model, texture, and animation of the Wind Charge projectile to give it a more dynamic look and feel<\/li>\n<\/ul>\n\n\n\n<p><strong>Wind Charge<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Become the Breeze! Using a Wind Charge item will fire off a Wind Charge projectile similar to the Breeze&#8217;s<\/li>\n\n\n\n<li>The Wind Charge can be used to launch entities away from the impact of the Wind Burst<\/li>\n\n\n\n<li>Players can also use Wind Charges to propel themselves high into the air<\/li>\n\n\n\n<li>A Wind Charge fired by a player will grant 10% more knockback than a Breeze&#8217;s, but have a much smaller area of impact<\/li>\n\n\n\n<li>Just like the projectile fired by the Breeze, Wind Charges fired by the player also deal damage if they hit an entity directly<\/li>\n\n\n\n<li>There is a half-second cooldown after each use<\/li>\n\n\n\n<li>Wind Charges can be fired from a dispenser<\/li>\n\n\n\n<li>Players that launch themselves with a Wind Charge only accumulate fall damage below the y-level of where they collided with the Wind Burst\n<ul class=\"wp-block-list\">\n<li>This means, for example, if a player uses a Wind Charge at y64 to launch themselves 9 blocks into the air, and they land back where they started at y64, they will take 0 damage.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Trial Spawner<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The Trial Spawner now has the same two default loot tables as they have in the Trial Chamber<\/li>\n\n\n\n<li>Trial spawners can now only activate when a player is in line of sight<\/li>\n<\/ul>\n\n\n\n<p><strong>Trial Chambers<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Trial Chambers are now more consistently buried by terrain when found underground<\/li>\n\n\n\n<li>Ominous Vaults can now be found inside rooms, intersections and at the end of corridors<\/li>\n\n\n\n<li>Decorated Pots in the Trial Chambers now have a chance to display a Flow, Guster, or Scrape Pottery Sherd<\/li>\n\n\n\n<li>Redesigned dispenser traps<\/li>\n\n\n\n<li>Redesigned specific rooms with new variations and challenges\n<ul class=\"wp-block-list\">\n<li>Redesigned chamber room 9 to Slanted room<\/li>\n\n\n\n<li>Redesigned chamber room 3 to Pedestal room<\/li>\n\n\n\n<li>Redesigned chamber room 5 to Eruption room<\/li>\n\n\n\n<li>Redesigned chamber room 6 to Assembly room<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Updated layout and placements of Vaults<\/li>\n\n\n\n<li>Reduced amount of Trial Spawners in corridors<\/li>\n\n\n\n<li>Added an atrium to the corridors<\/li>\n\n\n\n<li>Made various layout changes in intersections and corridors<\/li>\n<\/ul>\n\n\n\n<p>Known issue:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Corner quadrants in slanted may still fail to generate correctly<\/li>\n<\/ul>\n\n\n\n<p><strong>Trial Key<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Updated texture to reflect new Vault visuals<\/li>\n<\/ul>\n\n\n\n<p><strong>Trial Chamber Explorer Map<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Struggle no more to locate a Trial Chamber &#8211; level up your nearest Cartographer to Journeyman for the opportunity to trade for an Explorer Map pointing to a nearby Trial Chamber<\/li>\n<\/ul>\n\n\n\n<p><strong>Vault<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A block that holds locked treasure and loot &#8211; find the right key to eject its rewards\n<ul class=\"wp-block-list\">\n<li>Can be found throughout Trial Chambers, containing the structures&#8217; most valuable loot<\/li>\n\n\n\n<li>Vaults in Trial Chambers require a Trial Key to be unlocked<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can be unlocked by an unlimited number of players\n<ul class=\"wp-block-list\">\n<li>After a player has unlocked a Vault, they cannot unlock that Vault again<\/li>\n\n\n\n<li>If a player has not unlocked that Vault before, an orange stream of particles will flow from the player to the Vault when nearby<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Has a keyhole that will be open or closed depending on the players nearby\n<ul class=\"wp-block-list\">\n<li>If any nearby player has not unlocked that Vault, the keyhole will be open<\/li>\n\n\n\n<li>If all nearby players have unlocked that Vault, the keyhole will be closed<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Within its cage, it will cycle through and display items which are possible to eject from its loot table<\/li>\n\n\n\n<li>The loot it ejects is randomized each time it is unlocked<\/li>\n\n\n\n<li>Cannot be crafted nor obtained in Survival, and does not drop anything when mined<\/li>\n\n\n\n<li>Vaults are explosion resistant and cannot be moved<\/li>\n<\/ul>\n\n\n\n<p><strong>Ominous Events<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Bad Omen has been expanded to give access to an optional experience in Trial Chambers<\/li>\n\n\n\n<li>These optional experiences can be accessed through Bad Omen, which are now known as Ominous Events\n<ul class=\"wp-block-list\">\n<li>They are more challenging than usual, and are designed to shake up the experience in unique ways<\/li>\n\n\n\n<li>Illager Raids are an example of an existing Ominous Event<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Bad Omen is getting some changes with this redesign:\n<ul class=\"wp-block-list\">\n<li>It has a new, shadowy icon and a sound for being applied to the player<\/li>\n\n\n\n<li>It no longer triggers a Raid directly when entering a village\n<ul class=\"wp-block-list\">\n<li>Instead, it will transform into a Raid Omen variant with a duration of 30 seconds<\/li>\n\n\n\n<li>Once the Raid Omen expires, a Raid will start at the location the player gained the Raid Omen<\/li>\n\n\n\n<li>Like any other effect, players can drink a Bucket of Milk to clear the Raid Omen to prevent the Raid from starting<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>It is no longer given to players that defeat a Raid Captain outside a Raid\n<ul class=\"wp-block-list\">\n<li>Instead, players can gain access to Bad Omen by consuming a new Ominous Bottle<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Ominous Bottle<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>An item which can be consumed by players to receive the Bad Omen effect for 1 hour and 40 minutes\n<ul class=\"wp-block-list\">\n<li>Comes in 5 variations, one for each Bad Omen level<\/li>\n\n\n\n<li>The bottle breaks when consumed<\/li>\n\n\n\n<li>Can be stacked to 64<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Ominous Bottles can be found uncommonly in any Vaults that are unlocked with Trial Keys, and are dropped by Raid Captains when defeated outside a Raid<\/li>\n<\/ul>\n\n\n\n<p><strong>Ominous Trials<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A new Ominous Event that can be accessed by exploring a Trial Chamber with Bad Omen<\/li>\n\n\n\n<li>This event will have players facing more powerful Trial Spawners if they dare!<\/li>\n<\/ul>\n\n\n\n<p><strong>Trial Omen<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A variant that Bad Omen can transform into\n<ul class=\"wp-block-list\">\n<li>This occurs when the player is within detection range of a Trial Spawner that is not Ominous<\/li>\n\n\n\n<li>The Trial Omen has a duration of 15 minutes multiplied by the transformed Bad Omen&#8217;s level<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Players that have Trial Omen are surrounded by ominous particles<\/li>\n<\/ul>\n\n\n\n<p><strong>Ominous Trial Spawner<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A more powerful active phase of the Trial Spawner with unique challenges and rewards\n<ul class=\"wp-block-list\">\n<li>Provides a more challenging experience that advanced players can opt into for better rewards<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>If a Trial Spawner detects a player that has the Trial Omen effect, the spawner will become Ominous if:\n<ul class=\"wp-block-list\">\n<li>It is not in cooldown<\/li>\n\n\n\n<li>Or, it is in cooldown but was not Ominous during its last activation\n<ul class=\"wp-block-list\">\n<li>Making it Ominous this way will bypass the cooldown<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>While active, it will:\n<ul class=\"wp-block-list\">\n<li>Glow blue instead of orange<\/li>\n\n\n\n<li>Emit soul flames instead of normal flames<\/li>\n\n\n\n<li>Very commonly spawn mobs with equipment if they can wear it\n<ul class=\"wp-block-list\">\n<li>The equipment these mobs wear have Armor Trims applied from the Trial Chambers<\/li>\n\n\n\n<li>They also have various high-level enchantments<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Periodically spawn potions and projectiles on top of unsuspecting players and mobs\n<ul class=\"wp-block-list\">\n<li>Based on their location, spawners in an area will select a random set of projectiles to spawn<\/li>\n\n\n\n<li>These projectiles will always include a single type of Lingering Potion from a set of possible effects<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Becoming an Ominous Trial Spawner will despawn any existing mobs it spawned and reset its challenge\n<ul class=\"wp-block-list\">\n<li>It will stay Ominous until it has been defeated and its cooldown has finished<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>When defeated, it will eject a different set of loot compared to normal Trial Spawners<\/li>\n<\/ul>\n\n\n\n<p><strong>Ominous Trial Key<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A new variant of the Trial Key which can only be obtained by defeating an Ominous Trial Spawner<\/li>\n\n\n\n<li>They can be used to unlock Ominous Vaults<\/li>\n<\/ul>\n\n\n\n<p><strong>Ominous Vault<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A variant of Vaults that have a different texture and emit soul flames instead of normal flames<\/li>\n\n\n\n<li>These can be found throughout the Trial Chambers in harder to find places and require an Ominous Trial Key to unlock\n<ul class=\"wp-block-list\">\n<li>These Vaults hold a more valuable set of rewards than the standard Vaults unlocked by Trial Keys<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Bogged<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A new variant of Skeletons that shoots poisonous arrows\n<ul class=\"wp-block-list\">\n<li>They&#8217;re faster to take down with 16 health instead of 20 health<\/li>\n\n\n\n<li>They attack at a slower interval of 3.5 seconds instead of 2 seconds<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Bogged has a chance to drop Arrows of Poison when killed by players<\/li>\n\n\n\n<li>These mossy and mushroom covered Skeletons spawn naturally in Swamps and Mangrove Swamps\n<ul class=\"wp-block-list\">\n<li>Can also be found spawning from Trial Spawners in some Trial Chambers<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The Bogged drops 2 mushrooms (either both red\/brown or one of each) when sheared<\/li>\n<\/ul>\n\n\n\n<p><strong>Mob Effects<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The following effects have been added:\n<ul class=\"wp-block-list\">\n<li>Wind Charged\n<ul class=\"wp-block-list\">\n<li>Affected entities will emit a wind burst upon death<\/li>\n\n\n\n<li>Brewed with an Awkward Potion and a Breeze Rod<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Weaving\n<ul class=\"wp-block-list\">\n<li>Affected entities will spread Cobweb blocks upon death<\/li>\n\n\n\n<li>Affected entities can move through Cobweb with 50% of their normal speed instead of 25%<\/li>\n\n\n\n<li>Brewed with an Awkward Potion and a Cobweb block<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Oozing\n<ul class=\"wp-block-list\">\n<li>Affected entities will spawn two Slimes upon death<\/li>\n\n\n\n<li>Brewed with an Awkward Potion and a Slime Block<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Infested\n<ul class=\"wp-block-list\">\n<li>Affected entities have a 10% chance to spawn 1-2 Silverfish when hurt<\/li>\n\n\n\n<li>Brewed with an Awkward Potion and a Stone block<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>These effects can be encountered while taking on an Ominous Trial Spawner<\/li>\n\n\n\n<li>Some mobs are immune to these effects\n<ul class=\"wp-block-list\">\n<li>Slimes are immune to Oozing<\/li>\n\n\n\n<li>Silverfish are immune to Infested<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Whenever a mob with Oozing dies, it will check within a 5x5x5 area how many Slimes there are\n<ul class=\"wp-block-list\">\n<li>If the amount exceeds the max entity cramming cap (24 by default), it will not spawn any Slimes<\/li>\n\n\n\n<li>If it does not exceed it, it will attempt to spawn 2 Slimes up until the max entity cramming cap<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Copper Grates<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stonecutting Copper Blocks into Copper Grates outputs 4 Copper Grates<\/li>\n<\/ul>\n\n\n\n<p><strong>Pottery Sherds<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added Flow, Guster, and Scrape Pottery Sherds<\/li>\n\n\n\n<li>These can be obtained by breaking Decorated Pots that display them in Trial Chambers<\/li>\n<\/ul>\n\n\n\n<p><strong>Banner Patterns<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added Flow and Guster Banner Patterns<\/li>\n<\/ul>\n\n\n\n<p><strong>Armor Trims<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added Bolt and Flow Armor Trims and Smithing Templates<\/li>\n\n\n\n<li>Bolt can be duplicated using a Copper Block or Waxed Copper<\/li>\n\n\n\n<li>Flow can be duplicated using a Breeze Rod<\/li>\n<\/ul>\n\n\n\n<p><strong>Advancements<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added the following advancements:\n<ul class=\"wp-block-list\">\n<li>Minecraft: Trial(s) Edition&nbsp;&#8211; Step foot in a Trial Chamber<\/li>\n\n\n\n<li>Under Lock &amp; Key&nbsp;&#8211; Unlock a Vault using a Trial Key<\/li>\n\n\n\n<li>Blowback&nbsp;&#8211; Kill a Breeze with a deflected Wind Charge (challenge &#8211; gives 40 exp)<\/li>\n\n\n\n<li>Who Needs Rockets?&nbsp;&#8211; Use a Wind Charge to launch yourself upward at least 8 blocks<\/li>\n\n\n\n<li>Crafters Crafting Crafters&nbsp;&#8211; Be near a Crafter when it crafts a Crafter<\/li>\n\n\n\n<li>Lighten Up&nbsp;&#8211; Scrape a Copper Bulb with an Axe to make it brighter<\/li>\n\n\n\n<li>Over-Overkill&nbsp;&#8211; Deal 50 hearts of damage in a single hit using the Mace (challenge &#8211; gives 50 exp)<\/li>\n\n\n\n<li>Revaulting&nbsp;&#8211; Unlock an Ominous Vault with an Ominous Trial Key (goal)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Trade Rebalance<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>In the Trade Rebalance Experiment, Villagers who buy armor now ignore durability and can buy damaged armor<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">Fixed Bugs in 1.20.5<\/h4>\n\n\n\n<p>Around 210 bugs were fixed in this release. View the\u00a0<a href=\"https:\/\/bugs.mojang.com\/issues\/?filter=28358\" target=\"_blank\" rel=\"noreferrer noopener\">list on the issue tracker<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How to Install Minecraft 1.20.5<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"410\" height=\"345\" src=\"https:\/\/www.meloncube.net\/blog\/wp-content\/uploads\/2024\/04\/Minecraft1205Install.webp\" alt=\"Minecraft 1.20.5 Installation Screenshot\" class=\"wp-image-974\" srcset=\"https:\/\/www.meloncube.net\/blog\/wp-content\/uploads\/2024\/04\/Minecraft1205Install.webp 410w, https:\/\/www.meloncube.net\/blog\/wp-content\/uploads\/2024\/04\/Minecraft1205Install-300x252.webp 300w\" sizes=\"auto, (max-width: 410px) 100vw, 410px\" \/><\/figure>\n\n\n\n<p>Installing <a href=\"https:\/\/www.minecraft.net\/en-us\/article\/minecraft-java-edition-1-20-5\" target=\"_blank\" rel=\"noreferrer noopener\">Minecraft 1.20.5<\/a> is as easy as can be! First, open the Minecraft client and then click \u201cPlay.\u201d Upon doing so, the automated installation should begin right away.<\/p>\n\n\n\n<p>If trouble is encountered, a manual install can be created under the \u201cInstallations\u201d tab instead, following the steps below.<\/p>\n\n\n\n<ol class=\"wp-block-list\" type=\"1\">\n<li>First, click &#8220;New Installation.&#8221;<\/li>\n\n\n\n<li>Second, select &#8220;Latest Release&#8221; in the drop-down menu.<\/li>\n\n\n\n<li>Third, click \u201cCreate.\u201d<\/li>\n<\/ol>\n\n\n\n<p>The new Minecraft 1.20.5 installation will now be a selectable option before clicking play!<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How to Create Minecraft 1.20.5 Servers<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.meloncube.net\/blog\/wp-content\/uploads\/2022\/12\/Melon_JE2_BE2.webp\" alt=\"Minecraft Melon Cube Block\" class=\"wp-image-179\" style=\"width:194px;height:194px\" width=\"194\" height=\"194\" srcset=\"https:\/\/www.meloncube.net\/blog\/wp-content\/uploads\/2022\/12\/Melon_JE2_BE2.webp 300w, https:\/\/www.meloncube.net\/blog\/wp-content\/uploads\/2022\/12\/Melon_JE2_BE2-150x150.webp 150w\" sizes=\"auto, (max-width: 194px) 100vw, 194px\" \/><\/figure>\n\n\n\n<p>MelonCube Hosting <a href=\"https:\/\/www.meloncube.net\/minecraft\/order\/\">proudly offers servers<\/a> with Minecraft 1.20.5 pre-installed. Simply click your desired package, select Minecraft 1.20.5 in the drop-down menu, and then order away. Your server details will arrive within seconds, alongside instructions on how to log in and play.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Minecraft 1.20.5: Patch Notes &amp; Features to Try<\/h3>\n\n\n\n<p>Minecraft 1.20.5 is overflowing with new content to find! So much, in fact, that it could even be compared to a major update despite ending in \u201cx.x.5!\u201d What was your favorite feature of those added this time?<\/p>\n\n\n\n<p>Until Next Time,<\/p>\n\n\n\n<p>MelonCube =)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Minecraft 1.20.5 has officially been released for players across the world! So, today, we explore the Minecraft 1.20.5 patch notes, and which features we recommend giving a try. Patch Overview The highlights of Minecraft 1.20.5 are, without a doubt, the armadillo mob and wolf variants! Armadillos are easily frightened, but with care and time, they&#8230; <a href=\"https:\/\/www.meloncube.net\/blog\/minecraft-1-20-5-patch-notes-features-to-try\/\" class=\"readmore\">Continue Reading<\/a><\/p>\n","protected":false},"author":2,"featured_media":817,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[6],"class_list":["post-973","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-minecraft","tag-minecraft"],"_links":{"self":[{"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/posts\/973","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/comments?post=973"}],"version-history":[{"count":2,"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/posts\/973\/revisions"}],"predecessor-version":[{"id":976,"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/posts\/973\/revisions\/976"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/media\/817"}],"wp:attachment":[{"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/media?parent=973"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/categories?post=973"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.meloncube.net\/blog\/wp-json\/wp\/v2\/tags?post=973"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}