Java Edition 23w04a
Minecraft 23w04a


| Edition | |||||||
|---|---|---|---|---|---|---|---|
| Release date |
January 24, 2023 | ||||||
| Type | |||||||
| Snapshot for | |||||||
| Downloads | |||||||
| Obfuscation maps | |||||||
| Protocol version |
dec: 1073741940 | ||||||
| Data version |
3321 | ||||||
| Resource pack format |
12 | ||||||
| Data pack format |
11 | ||||||
| Minimum Java version | |||||||
| |||||||
{
"title": "Minecraft 23w04a",
"images": [
"23w04a.jpg",
"Java Edition 23w04a.png"
],
"rows": [
{
"field": "''(link to Java Edition article, displayed as Java Edition)''",
"label": "(link to Edition article, displayed as Edition)"
},
{
"field": "January 24, 2023",
"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.19.4 article, displayed as 1.19.4)",
"label": "Snapshot for"
},
{
"field": "[https://piston-data.mojang.com/v1/objects/2623aee01948e8ed29b3a52e5504c4d1fd63c7ae/client.jar Client] ([https://piston-meta.mojang.com/v1/packages/6805751cb57fcb5a2f6fc24740d22b073e1536be/23w04a.json .json])<br />[https://piston-data.mojang.com/v1/objects/2f31a8584ec1e70abd2d8b22d976feb52a6a3e31/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/4ef420245e54a29c2bbd38caf3d8d66964610756/client.txt Client]<br />[https://piston-data.mojang.com/v1/objects/868745891d933db0ae97afd7046416a2af961e86/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>1073741940<br /> <span style=\"font-size:smaller\"><abbr title=\"hexadecimal\">hex</abbr>: </span>40000074",
"label": "(link to Protocol version article, displayed as Protocol version)"
},
{
"field": "3321",
"label": "(link to Data version article, displayed as Data version)"
},
{
"field": "12",
"label": "<span style=\"white-space: normal;\">(link to Pack format#List of resource pack formats article, displayed as Resource pack format)</span>"
},
{
"field": "11",
"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.19.3|<span style=\"margin-right:-0.35em\">◄</span>◄ 1.19.3]]</td>\n<td style=\"padding: 0.4em\">'''[[Java Edition 1.19.4|1.19.4]]'''</td>\n<td style=\"padding: 0.4em\" >[[Java Edition 1.20| 1.20 <span style=\"margin-right:-0.35em\">►</span>►]]</td>\n</tr>\n<tr style=\"background: inherit;\">\n<td style=\"padding: 0.4em\">\n[[Java Edition 23w03a|◄ 23w03a]]\n</td>\n<td style=\"padding: 0.4em\">''' 23w04a'''</td>\n<td style=\"padding: 0.4em\">\n[[Java Edition 23w05a| 23w05a ►]]\n</td>\n</tr>\n</table>"
}
23w04a is the second snapshot for Java Edition 1.19.4, released on January 24, 2023,[1] which adds smithing templates and fixes bugs.
Additions
Command format
- Added a new relation
originfor/execute on, which can select:- Shooter, if the executing entity is a projectile (like arrow, fireball, trident, firework, thrown potion, etc.)
- Thrower, if the executing entity is an item.
- Source of effects, if the executing entity is an area effect cloud.
- Igniter, if the executing entity is a primed TNT.
- Summoner, if the executing entity is evoker fangs or a vex.
Changes
Items
General
- Enchantment glint on items and armor is now more subtle.
General
User interface
- Placeholder icons for empty slots such as armor or in a brewing stand have been lightened.
- Change has not been applied to the loom menu.
- Setting the resource pack to programmer art does not revert this change (despite the change being made to the textures themselves).
Experimental
These additions and changes only take effect when the 1.20 experimental data pack is enabled.
Additions
Items
- New item series for armor trimming and netherite upgrading, with twelve of them.
- They can be obtained randomly from chests generated in structures accordingly.
- Exceptions:
- While randomly generated in other rooms, a netherite upgrade smithing template is also guaranteed in every treasure room in a bastion remnant.
- A single tide armor trim smithing template is sometimes dropped by elder guardians upon death.
- Some armor trims are rarer.
- Exceptions:
- Consumed when used to upgrade an item in the smithing table.
- Can not be crafted directly, but can make a copy of them by crafting in crafting tables as following pattern:
- 7 diamonds, shaped as iron ingots in cauldron crafting recipe.
- 1 block of material that the template is made out of, placed in the center slot of the crafting grid.
- 1 smithing template, placed in the remaining slot.
General
- Added registry
trim_patternandtrim_material, which defines trim patterns and materials respectively, to allow add them via data packs.- These are synchronized to clients when they join the server, but the accompanying resource pack is required on client to make them visible.
- The paths to these textures are inferred based on the filename of the pattern json, and try to find the textures within the same namespace as the trim pattern's
namefield.
trim_patterndefines following data:asset_id: a namespaced ID used to infer texture locations and localization.template_item: the ID of the smithing template item used to apply the trim pattern.description: a text component used for displaying the pattern name of an armor trim when hovering an armor itemstack.
trim_materialdefines following data:asset_name: a string used as a suffix for armor trim texture locations.ingredient: the ID of the ingredient item used to apply the trim material.item_model_index: a float number which defines the item model override each armor item model should target to change their visuals for this material.incompatible_armor_material: an optional ID of the armor material this trim material cannot be applied to.description: a text component used for displaying the material name of an armor trim when hovering an armor itemstack.- The style defined in this description is applied to the armor trim pattern
descriptionas well.
- The style defined in this description is applied to the armor trim pattern
- Added new flag (value 128) to
HideFlagsNBT field for hiding armor trim item tooltips.
- Added
smithing_transformandsmithing_trimrecipe serializers for the updated netherite upgrade and the new armor trim recipe respectively.
- Added
paletted_permutations, which is a new type of atlas configuration source used to dynamically generate new textures in memory based on a set of color palettes.- Color palettes allows to swap out the colors of a texture without having to supply all files for the variants of a texture in a resource pack.
- This is useful for things like armor trims. It can change the their color directly without create a new texture for each color.
- The
paletted_permutationssource has a set of required parameters:textures: a list of namespaced locations of base textures.- These textures are used to generate variants of them that have been modified by color palettes.
palette_key: a namespaced location of a color palette key file.- A color palette key is used to define the set of key pixel colors we want to swap out with the color palettes defined below.
permutations: a map of permutations from suffix to a namespaced location of a color palette file.- The suffix is appended at the beginning to the resource location of the output variant textures, with a
_character separating the suffix and the base texture name. - The color palette is a texture file with a set of pixels that are used for replacing pixels that match the color palette key in each base texture.
- The number of pixels in each color palette must be the same as that of the
palette_keydefined for this source. - Key matching is done by comparing the RGB values of each pixel in the
palette_keyto the RGB values of each pixel in the color palette. - Alpha channel is ignored for key matching, but in the resulting texture the alpha channel is multiplied with the color palette's alpha channel.
- Pixels that do not match the
palette_keyare copied over to the resulting texture as-is.
- The suffix is appended at the beginning to the resource location of the output variant textures, with a
- After defining a
paletted_permutationssource, those namespaced output textures can be referenced in other resources in resource pack.- For example, if the following
paletted_permutationssource exists:{ "type": "paletted_permutations", "textures": [ "minecraft:item/leather_helmet", "minecraft:item/leather_chestplate", "minecraft:item/leather_leggings", "minecraft:item/leather_boots" ], "palette_key": "minecraft:colormap/color_palettes/leather_armor_color_key", "permutations": { "red": "minecraft:colormap/color_palettes/red", "green": "minecraft:colormap/color_palettes/green", "blue": "minecraft:colormap/color_palettes/blue" } }
- The resulting textures can be referenced in other resources like this:
{ "textures": { "layer0": "minecraft:item/leather_helmet_red", "layer1": "minecraft:item/leather_chestplate_green", "layer2": "minecraft:item/leather_boots_blue" } }
- For example, if the following
- Added following item tags:
#trim_materials: containsamethyst_shard,copper_ingot,diamond,emerald,gold_ingot,iron_ingot,lapis_lazuli,netherite_ingot,quartz, andredstone.#trim_templates: containscoast_armor_trim_smithing_template,dune_armor_trim_smithing_template,eye_armor_trim_smithing_template,rib_armor_trim_smithing_template,sentry_armor_trim_smithing_template,snout_armor_trim_smithing_template,spire_armor_trim_smithing_template,tide_armor_trim_smithing_template,vex_armor_trim_smithing_template,ward_armor_trim_smithing_template, andwild_armor_trim_smithing_template.#trimmable_armor: containschainmail_boots,chainmail_chestplate,chainmail_helmet,chainmail_leggings,diamond_boots,diamond_chestplate,diamond_helmet,diamond_leggings,golden_boots,golden_chestplate,golden_helmet,golden_leggings,iron_boots,iron_chestplate,iron_helmet,iron_leggings,netherite_boots,netherite_chestplate,netherite_helmet,netherite_leggings, andturtle_helmet.
Changes
Items
- Now can be visually customized with a variety of unique trims at the smithing table, except leather armor.
- Purely visual with no gameplay benefits, and can only be applied to helmets, chestplates, leggings and boots.
- All trim patterns are visually the same on an armor's item icon, but the color still changes based on the trim material.
- The name of the trim pattern is displayed on the item's tooltip.
- Armor trim has 2 properties: pattern and material.
- Pattern: Defined by the smithing template used to apply the trim, and represents the visual pattern of the trim.
- Material: Defined by what ingredient is used to apply the trim, and represents the color of the trim.
- Available ingredients:
- Armor cannot have the same material it is made of applied to it as a trim, except for diamond armor with netherite trim being upgraded to netherite armor.
Gameplay
Smithing table functionality
- Redesigned: it is now a workstation for physical equipment upgrades and modifications.
- Added a slot used by smithing templates to the left of the old 2 slots.
- Smithing templates define what type of upgrade is made to equipment.
- It specifies both what type of items that can upgrade, and which ingredients are valid to customize the upgrade.
- Netherite equipment crafting now also requires a netherite upgrade smithing template.
- Two menu types:
- Old menu without the smithing template slot has been renamed to
legacy_smithing, and will be removed when armor trims are no longer an experimental feature. - New menu with smithing template slot was added, called
smithing.
- Old menu without the smithing template slot has been renamed to
Fixes
From released versions before 1.19
- MC-198809 – Blast Protection does not reduce explosion knockback except at very high levels.
From the previous development version
- MC-259189 – Narrator: Not Available isn't grayed out on accessibility splash.
- MC-259204 – All goat horns display as Ponder goat horns and play the Ponder instrument.
- MC-259211 – You cannot select incompatible resource packs within the resource packs menu via keyboard navigation.
Video
Video made by Slicedlime:
Trivia
- Unlike most of the first-of-the-week snapshots, this one was released on a Tuesday, instead of a Wednesday.
References
- ↑ "Minecraft Snapshot 23w04a" – Minecraft.net, January 24, 2023.