Java Edition 24w12a
Minecraft 24w12a


| Edition | |||||||
|---|---|---|---|---|---|---|---|
| Release date |
March 20, 2024 | ||||||
| Type | |||||||
| Snapshot for | |||||||
| Downloads | |||||||
| Obfuscation maps | |||||||
| Protocol version |
dec: 1073742005 | ||||||
| Data version |
3824 | ||||||
| Resource pack format |
30 | ||||||
| Data pack format |
36 | ||||||
| Minimum Java version | |||||||
| |||||||
{
"title": "Minecraft 24w12a",
"images": [
"24w12a.jpg",
"Java Edition 24w12a.png"
],
"rows": [
{
"field": "''(link to Java Edition article, displayed as Java Edition)''",
"label": "(link to Edition article, displayed as Edition)"
},
{
"field": "March 20, 2024",
"label": "Release date"
},
{
"field": "(link to Snapshot article, displayed as Snapshot)",
"label": "(link to Version types article, displayed as Type)"
},
{
"field": "(link to Java Edition 1.20.5 article, displayed as 1.20.5)",
"label": "Snapshot for"
},
{
"field": "[https://piston-data.mojang.com/v1/objects/7670c61bac7bbf1bb734233e434d367d3d232067/client.jar Client] ([https://piston-meta.mojang.com/v1/packages/116d099e66d3ef191db658efe76ccfd3742a932d/24w12a.json .json])<br />[https://piston-data.mojang.com/v1/objects/6f036460d361ce1e645bba365a72be2eed35ec01/server.jar Server]",
"label": "(link to Tutorial:Installing a snapshot#Manual version installation article, displayed as Downloads)"
},
{
"field": "[https://piston-data.mojang.com/v1/objects/d99485ba2acdb6e8b9d7c2785f0d9b9d69c13718/client.txt Client]<br />[https://piston-data.mojang.com/v1/objects/50203a07ba97b3ce9e61cbaa3cadb5b40ee8e160/server.txt Server]",
"label": "(link to Obfuscation map article, displayed as Obfuscation maps)"
},
{
"field": " <span style=\"font-size:smaller\"><abbr title=\"decimal\">dec</abbr>: </span>1073742005<br /> <span style=\"font-size:smaller\"><abbr title=\"hexadecimal\">hex</abbr>: </span>400000B5",
"label": "(link to Protocol version article, displayed as Protocol version)"
},
{
"field": "3824",
"label": "(link to Data version article, displayed as Data version)"
},
{
"field": "30",
"label": "<span style=\"white-space: normal;\">(link to Pack format#List of resource pack formats article, displayed as Resource pack format)</span>"
},
{
"field": "36",
"label": "<span style=\"white-space: normal;\">(link to Pack format#List of data pack formats article, displayed as Data pack format)</span>"
},
{
"field": "<span class=\"plainlinks\">[https://en.wikipedia.org/wiki/Java_version_history#Java_SE_17 Java SE 17]</span>",
"label": "<span style=\"white-space: normal;\">Minimum Java version</span>"
}
],
"invimages": [],
"footer": "<table style=\"margin: auto; word-break: break-word;\">\n<tr style=\"background: inherit;\">\n<td style=\"padding: 0.4em\" >[[Java Edition 1.20.4|<span style=\"margin-right:-0.35em\">◄</span>◄ 1.20.4]]</td>\n<td style=\"padding: 0.4em\">'''[[Java Edition 1.20.5|1.20.5]]'''</td>\n<td style=\"padding: 0.4em\" >[[Java Edition 1.20.6| 1.20.6 <span style=\"margin-right:-0.35em\">►</span>►]]</td>\n</tr>\n<tr style=\"background: inherit;\">\n<td style=\"padding: 0.4em\">\n[[Java Edition 24w11a|◄ 24w11a]]\n</td>\n<td style=\"padding: 0.4em\">''' 24w12a'''</td>\n<td style=\"padding: 0.4em\">\n[[Java Edition 24w13a| 24w13a ►]]\n</td>\n</tr>\n</table>"
}
24w12a is the thirteenth snapshot for Java Edition 1.20.5, released on March 20, 2024,[1] which fixes bugs, changes the heavy core, adds 7 new advancements and adds the trial chambers map.
Additions
Command format
- Added new item stack components.
- Added
fooditem stack component.- When present, this item behaves as if a food (can be eaten)
- Format: object with fields:
nutrition: non-negative integer, number of food points to restore when eaten.saturation_modifier: float, amount of saturation to restore when eaten.can_always_eat: boolean (default:false)- If
true, this food can be eaten even if not hungry.
- If
eat_seconds: float (default:1.6)- The number of seconds that it takes to eat this food item.
effects: list of effects to apply when eaten (default:[])effect: effect instance (same format ascustom_effectsinminecraft:potion_contentscomponent)probability: float between 0 and 1, chance for the effect to be applied (default:1)
- Example:
food={nutrition:4,saturation_modifier:0.1}
- On food items, has an implicit default value for that food type.
- Added
max_stack_size.- Controls the maximum stacking size of this item.
- Format: integer between 1 and 99.
- Example:
max_stack_size=4
- Example:
- Has an implicit default value according to the item type (usually
64but can also be16and1)
- Added
max_damage.- Controls the maximum amount of damage than an item can take.
- If not present, the item cannot be damaged.
- Format: positive integer.
- Example:
max_damage=123
- Example:
- Has an implicit default value for damageable items.
- Added
fire_resistant.- If present, this item doesn't burn in fire.
- Format: empty object.
- Example:
fire_resistant={}
- Example:
- Has an implicit default value for fire-resistant items, such as netherite tools.
- Added
rarity.- Controls the color of the item name.
- Format: enumerated value, one of:
common(default): white name, or aqua when enchanted.uncommon: yellow name, or aqua when enchanted.rare: aqua name, or light purple when enchanted.epic: light purple name.- Example:
rarity=rare.
- Special items such as golden apples have an implicit default value.
- Added
tool.- Controls the behavior of the item as a tool.
- Format: object with fields.
rules: list of rule entries.blocks: single block, list of blocks, or #-prefixed block tag to match.speed(optional): float, overrides the mining speed if present and matched.correct_for_drops(optional): boolean, overrides whether this tool is considered 'correct' if present and matched.truecauses the block to mine at its most efficient speed, and drop items if the targeted block requires that.
default_mining_speed: float, mining speed to use if no rules match and override mining speed (default: 1.0).damage_per_block: non-negative int, amount of durability to remove each time a block is mined with this tool.- Example:
tool={rules:[{blocks:"#mineable/pickaxe",speed:4.0,correct_for_drops:true}]}
- Vanilla tool items have an implicit default value based on their tier and tool type.
- Added
hide_tooltip.- If present, it completely hides whole item tooltip (that includes item name).
- Tooltip is still visible and searchable in Creative mode.
- Format: empty object.
- Example:
hide_tooltip={}
- Example:
- Added
toggle_tooltipsloot function.- This function can be used to modify item component tooltip visiblity.
- It works by setting fields like
show_in_tooltipwithout changing other values. - Format:
toggles- a map of supported item component type to boolean value. - Supported components:
trim,dyed_color,enchantments,stored_enchantments,unbreakable,can_break,can_place_on,attribute_modifiers. - Example:
{function:"toggle_tooltips","toggles":{"enchantments":false}}hides enchantments tooltip.
- Added
storageloot number provider to access values from command storage.- This number provider is able to access numeric values from command storage directly.
- If selected storage does not exist or tag selected by path is not numeric or does not exist, provider returns 0.
- Fields:
storage: namespaced id of command storage.path: NBT path to field.
Gameplay
- Added a
crafter_recipe_craftedtrigger which is triggered when a crafter ejects a successfully crafted item into the world.<player>an entity predicate matching the player who is nearby.<recipe_id>is the ID of the recipe being crafted.<ingredients>is a list of item predicates matching the ingredients that form the recipe being crafted.
- Added a
fall_after_explosiontrigger which is triggered when a player begins falling after being knocked upwards by an explosion or wind burst.<player>an entity predicate matching the player who is falling.<start_position>a location predicate matching the position the player was at when they were hit by the explosion or burst.<distance>a distance predicate matching how far the player must be fromstart_positionto cause the trigger to activate.<cause>an entity predicate matching the entity which caused the explosion or burst to happen.
General
- Added
incorrect_for_wooden_tool,incorrect_for_gold_tool,incorrect_for_stone_tool,incorrect_for_iron_tool,incorrect_for_diamond_tool,incorrect_for_netherite_toolblock tags.- These tags combine the existing
needs_diamond_tool,needs_iron_tool, andneeds_stone_tooltags for each specific tool tier.
- These tags combine the existing
- Added
meatcollection item tag.- Contains
beef,chicken,cooked_beef,cooked_chicken,cooked_mutton,cooked_porkchop,cooked_rabbit,mutton,porkchop,rabbit, androtten_flesh - This is not used by the game directly, but may be included by other tags.
- Contains
- Added
#armadillo_food,#bee_food,#camel_food,#cat_food,#chicken_food,#cow_food,#frog_food,#goat_food,#hoglin_food,#horse_food,#horse_tempt_items,#llama_food,#llama_tempt_items,#ocelot_food,#panda_food,#parrot_food,#parrot_poisonous_food,#pig_food,#rabbit_food,#sheep_food,#strider_food,#strider_tempt_items,#turtle_food, and#wolf_fooditem tags to control which items can be fed to or tempt the corresponding mobs. - Added
sensitive_to_smiteentity type tag.- For entity types that take extra damage from the Smite enchantment.
Changes
Command format
General
- Command arguments that previously accepted namespaced ids of loot tables, modifiers and predicates can now also accept inline definitions:
lootitemexecute if predicate- Values have same structure as matching JSON files, though they are encoded as SNBT. Example:
execute if predicate {condition:weather_check, raining:true}
Entity sub-predicates
wolf- New
wolfsub-predicate has been added to match wolf variantsFields:variant- wolf variant to match (single entry, list of entries or tag)
- New
cat,frog,painting- Field
variantnow accepts single entries, list of entries or tags.
- Field
wolf,cat,frogandpaintingentity sub-predicates now accept tags and plain lists instead of just single elements.
set_lorefunction:- The
replacefield has been removed. - Now has
modelikeset_fireworksandset_written_book_pages.
- The
set_written_book_pagesfunction:pagesis now a JSON object rather than a string containing JSON.
- Nested lists are no longer supported in function lists.
Item predicate argument
- The item predicate syntax (used in
execute if|unless itemsandclearcommands) has been significantly expanded. - The general syntax is:
<type> [comma-separated list of <test>] <type>can be one of:- item id
- item tag id prefixed with
# *to match any item.
<test>can have one of 3 forms:<component_id>=<value>- match exact value of component (same as in previous format)<value>is a representation of component value in SNBT format (same as initem giveargument)
<component_id>- check if component exists.<predicate_id>~<value>- check item sub-predicate.<value>is a representation of item sub-predicate in SNBT format (but otherwise same as one used for advancement and loot table JSON files)- Example:
*[damage~{durability:{min:3}}]matches any stack with at least 3 uses left.
- The special name
minecraft:countcan be used for matching the stack size.count=<positive int>passes only when the stack size equals the given value.count~<int range>passes when the stack size is in the specified range.- Example:
*[count~{max:2}]matches any stack with count <= 2.
- Example:
countalways passes.
- Any
<test>entry can be negated by prefixing with!- Example:
*[!count=1]matches any stack that has count other than 1.
- Example:
<test>elements can be also joined with | to check multiple alternatives.- Example:
*[!damage|damage=0]looks for items without damage component or with 0 damage.
- Example:
- Removed redundant custom data section (
{...}) from item arguments (it's fully replaced by[custom_data={...}])- To make this transition easier,
custom_dataitem sub-predicate has been changed to allow unquoted SNBT.
- To make this transition easier,
- The syntax for custom data partial matching (
{}) has been removed in favor of usingcustom_datapredicates.- So
stick{a:2}becomesstick[custom_data~{a:2}]
- So
- Predicate
minecraft:custom_datanow accepts both SNBT data written as a string (existing format) and unflattened tags.- That means that
*[custom_data~{a:1}]and*[custom_data~"{a:1}"]are equivalent. - Flattened string format has been kept since NBT type information can't be expressed in JSON.
- That means that
General
- The data pack version is now
36.
- The resource pack version is now
30. - Changed texture asset paths in
wolf_variantto better match other formats.- Field
texturehas been renamed towild_texture wild_texture,tame_textureandangry_textureno longer require values to be prefixed withtextures/and suffixed with.png.
- Field
- Particle
entity_effecttakes color argument when spawned from command/particle entity_effect.rgba- 4 float values ranging from 0.0 to 1.0 representing RGBA.
- Removed
map_icons.png- Map decoration icons have been split from the former
map_icons.pngto use an atlas loaded from thetextures/map/decorations/directory. - The atlas is now generated upon loading resources: map_decorations.png-atlas
- Map decoration icons have been split from the former
- The process of upgrading a pack can be assisted by using an automated Slicer tool.[2]
- Added
trial_chambersmap decoration icon.
axolotl_tempt_itemshas been renamed toaxolotl_food.
Experimental
Additions
Items
- Can be traded from journeyman cartographers.
- Point to a nearby trial chamber.
Gameplay
- Added seven new advancements:
- Minecraft: Trial(s) Edition
- Step foot in a Trial Chamber
- Under Lock & Key
- Unlock a Vault using a Trial Key
- Blowback
- Kill a Breeze with a deflected Wind Charge
- Who Needs Rockets?
- Use a Wind Charge to launch yourself upward at least 8 blocks
- Crafters Crafting Crafters
- Be near a Crafter when it crafts a Crafter
- Lighten Up
- Scrape a Copper Bulb with an Axe to make it brighter
- Over-Overkill
- Deal 50 hearts of damage in a single hit using the Mace
- Minecraft: Trial(s) Edition
General
- Added the
#on_trial_chambers_mapsstructure tag.- Contains
trial_chambers.
- Contains
Changes
Blocks
- Can now be waterlogged.
- Can now survive lava flowing into them.
- Adjusted destroy time and explosion resistance.
- It now takes 15 seconds to mine (down from 45).
- Blast resistance now matches the one from obsidian.
- Pushing a heavy core with a piston now moves the block, instead of popping it off.
- Map color is now silver.
- Removed the unused
orientationblock state.
Items
- No longer counts as an efficient tool for breaking cobwebs.
- Maces now have a unique sound when hitting an entity from a fall of more than five blocks.
World generation
- Now generate slightly more rarely and a bit more spaced out from each other.
Fixes
From released versions before 1.20
- MC-200947 – Large amount of unused space in map_icons.png texture file.
- MC-200987 – Title in bossbar breaks HUD opacity.
- MC-251303 – Transparent boss bars break when more than one is on screen.
From 1.20.4
- MC-267747 – Click and hover events don't work when viewing chat while F1 is enabled.
- MC-269085 – Experience bar and jump bar render translucent pixels as opaque.
From the 1.20.5 development versions
- MC-267933 – Silk Touch and Fortune enchanted books cannot be found in Creative inventory.
- MC-267943 – Anvil exclusive enchantments can be obtained from enchanting tables.
- MC-268068 – Pieces of text in the "Reset World" Realm menu can intersect when using some resolutions.
- MC-268171 – Some GUI textures can no longer be transparent in Minecraft.
- MC-268311 – Bane of arthropods enchantment uses
#arthropodstag instead of#sensitive_to_bane_of_arthropods. - MC-268312 – Impaling enchantment uses
#aquatictag instead of#sensitive_to_impaling. - MC-268343 – Breeze charge has laggy unnatural flightpaths when punched.
- MC-268510 – Items with "
Unbreakable:1b" NBT can no longer have the Unbreaking enchantment applied. - MC-268556 – Wind charges go through non-full blocks instead of colliding.
- MC-268562 – Wind charges deal no knockback within non-solid blocks.
- MC-269169 – Wolf variants not present in advancement criteria.
- MC-269268 – Components don't work on the smithing table.
- MC-269280 – The right side of incompatible resource or data packs isn't rendered correctly when the scroll bar is present.
- MC-269299 – The red text within the "Experiments" menu cannot be narrated or selected.
- MC-269336 – Crash with
set_enchantmentsitem modifier above level 255.
From the previous development version
- MC-269354 – The subtitle for the "
minecraft:item.mace.smash_air" sound event displays as a raw translation string. - MC-269356 – Heavy core cannot be oriented despite its blockstates suggesting otherwise.
- MC-269361 – Weird wind charge behavior when deflecting.
- MC-269373 –
/datapack disabledoesn't work. - MC-269393 – Game crashes when wind charge hits entity.
- MC-269401 – The
minecraft:set_written_book_pagesitem modifier is inconsistent withminecraft:set_name and minecraft:set_lore. - MC-269403 – Mace can mine any block at a higher speed than hand.
- MC-269409 – Unable to execute
/particle entity_effect. - MC-269419 – Heavy core cannot be waterlogged.
- MC-269422 – Carpet on powder snow no longer negates fall damage.
- MC-269452 – Crash when using item modifier with
replace_sectionmode and very large size field. - MC-269457 – Crash with
set_loreitem modifier setting more than 256 lores. - MC-269513 – Maces can break cobwebs.
Video
Videos made by Slicedlime: