When using a Data Pack that changes which items are considered "dyeable" (changing the color by combining it with one or more dyes in a crafting grid), the resulting item has the correct "dyed" data value just as Leather Armor/Leather Horse Armor would, but the item cannot be "washed" (removing the "dyed" data) by using it on a Cauldron containing water like the others.
To reproduce;
create a Data Pack where data>minecraft>tags>items>dyeables.json reads:
{
"replace": false,
"values": [
"minecraft:stick"
]
}
add it to a world and reload.
dye a Stick.
attempt to wash the dyed Stick in a Cauldron with water in it.
(Changing the "replace" value in dyeables.json to true, effectively removes Leather Armor/Leather Horse Armor from the tag, and any that were dyed prior to reloading the pack can no longer be washed. This indicates this is expected behaviour, not a "feature request" - that items included in the "dyeable" tag should be washable.)
Potential solutions:
remove the hard-coded arbitrary check for Leather Helmet/Chestplate/Leggings/Boots/Horse Armour when attempting to dye an item and just use the "dyeable" tag, instead of using both.
ignore "dyeable" tag completely and let any item with "dyed" data be washed
Attachments
Comments 7
I have attached a data pack with the custom "dyeable" item tag as seen in the code block in the original report.
You will find it allows you to now dye sticks any combination of colors, but unlike other dyeable items, cannot be used on a Cauldron to remove the information.
If you change the "false" to "true" in the pack's 'dyeable.json' file, Leather Armor/Horse Armor is removed from the tag and any that were dyed prior to making the change and reloading cannot be washed anymore either - indicating the behaviour is tag-dependent, and should work for custom items.
Just confirmed for 1.20.5 rc-2. Very annoying to have to deal with.
I've also noticed that it doesn't actually change the item's color after giving the tag to it and dying it in a crafting table? Is this just a me issue or do I need to change something within a resourcepack to make this work? I couldn't find any official info regarding this and wasn't sure if it was a different bug.
Could you please attach a minimal setup data pack to reproduce the issue?