-
Notifications
You must be signed in to change notification settings - Fork 0
Troubleshooting
Most problems come down to a name mismatch: the palette file name and the trim_animations frame entry must use the exact same names, and frame 0 must equal the material's base name (asset_name, or on 26.3 the last segment of palette_id).
Version paths. Palettes live in
textures/trims/color_palettes/on 1.21.1 and 26.2, and intextures/palettes/trim/on 26.3. The worn-armorarmor_trims.jsonatlas exists on 1.21.1 and 26.2 but was removed in 26.3 (worn armor is built on the fly). The material field isasset_nameon 1.21.1/26.2 andpalette_idon 26.3. See Creating an Animated Trim for the per-version files.
The material works but never moves.
- The mod is not installed or not on this client. The animation is played by Ent's Armor Trim Expanded. Without it, the material renders as a normal static trim. Everyone who should see the animation needs the mod.
-
Wrong
trim_animationspath. It must beassets/<namespace>/trim_animations/<material>.json, matching the material id.example:raw_copperbecomesassets/example/trim_animations/raw_copper.json. -
Frame names do not match the palette files. Every name in
framesmust exist as a palette file (textures/trims/color_palettes/<name>.pngon 1.21.1/26.2,textures/palettes/trim/<name>.pngon 26.3), and on 1.21.1/26.2 as a permutation key inarmor_trims.json. A typo means that frame silently falls back to frame 0. - You did not reload. Press F3+T after editing resources.
The trim shape shows but has no colour (looks white or grey).
-
Palette in the wrong folder. On 26.3 palettes must be at
assets/<ns>/textures/palettes/trim/<name>.png; the oldtextures/trims/color_palettes/path is not read any more. On 1.21.1/26.2 they must be attextures/trims/color_palettes/. Using the wrong folder for your version means no colour. -
palette_iddoes not point at the palette (26.3)."palette_id": "<ns>:trim/raw_copper"readsassets/<ns>/textures/palettes/trim/raw_copper.png. If the path or namespace differs, the game cannot find the colours and falls back to grey. (On 1.21.1/26.2 the equivalent mistake is a wrongasset_nameor atlas permutation value.) -
Palette is not 8 pixels wide. It must be the same width as the reference greyscale palette (
trim_baseon 26.3,trim_paletteon 1.21.1/26.2), which is 8 pixels. A different width produces no colour mapping. See Making Palettes.
[PalettedPermutations]: Failed to load palette image example:trim/raw_copper_1
An atlas asked for a palette that does not exist. On 1.21.1/26.2 this is the worn-armor armor_trims.json; on 26.3 worn armor has no atlas, so it can only come from the optional inventory-icon items.json. Almost always a name mismatch:
- The permutation value points at a file that is named differently (for example
raw_copper1.pngorraw_copper_f1.png). Make the file name match the permutation value exactly. - The palette is in the wrong folder for your version (
textures/trims/color_palettes/on 1.21.1/26.2,textures/palettes/trim/on 26.3). - The namespace in the permutation value (
example:...) does not match the folder (assets/example/...).
If a Failed to load palette image minecraft:trims/color_palettes/trim_palette shows up on 26.3, it is an outdated pack: its atlas still uses the old 26.2 palette_key. Update or remove it. If you are not shipping an inventory icon on 26.3, you can remove your items.json entirely; worn armor does not need it.
- Palette is not 8x1. It must be exactly 8 pixels wide, 1 tall. See Making Palettes.
-
Missing frame. One of the
framesnames has no palette file. Add it, or remove it from the list.
This is the most common issue with a new material, and it almost always means the provider file is missing.
-
No
trim_providersfile. The#trim_materialstag only lets the item sit in the material slot; it does not say which material to apply. You must also adddata/<ns>/entate/trim_providers/<name>.json:Without it the recipe produces no result even though{ "item": "minecraft:raw_copper", "material": "example:raw_copper" }/givestill works. See Creating an Animated Trim, section 1.4. -
itemormaterialtypo. Theitemmust be a real item id (and be in the tag), andmaterialmust exactly match yourtrim_materialid. Check the log forreferences unknown itemorreferences unknown trim material. -
Ingredient not tagged. The item must also be in
data/minecraft/tags/item/trim_materials.json. -
You wiped the vanilla tag. If you wrote
"replace": true, only your item is a trim material now. Use"replace": false. -
Data pack not loaded.
/reload, and make sure the data pack is enabled (/datapack list).
The lang entry is missing or misnamed. Add to assets/<ns>/lang/en_us.json:
{ "trim_material.example.raw_copper": "Raw Copper Material" }The key must exactly match the translate value in your material JSON.
This affects the 2D inventory icon only (worn armor is fine).
- On NeoForge: trim overlays on item icons are not shown in the current 26.3 beta (NeoForge's own trimmed-armor item model does not render the overlay yet). This is a NeoForge limitation, not a pack problem.
-
A broken material in a loaded pack. If any loaded trim material's icon sprite fails to build, it can break the whole armor item model. Update or remove outdated packs (for example a 26.2-format pack whose
items.jsonstill points attrims/color_palettes/trim_palette).
Interpolation draws the trim twice while blending. If you see z-fighting:
- Try
"interpolate": falseto confirm that is the cause. - Slower
frametimeand more frames reduce how much blending is visible. - If it persists, report it; the render order can be tuned mod-side.
- Both packs enabled? Data pack in
datapacks/and resource pack inresourcepacks/(enabled in Options). -
pack.mcmetapresent in each, with apack_formatvalid for your Minecraft version (1.21.1: data48, resources34; 26.2: data107, resources88; 26.3: data121, resources97). - Reload both:
/reload(data) and F3+T (resources). - Test directly, bypassing smithing:
/give @s minecraft:iron_chestplate[minecraft:trim={pattern:"minecraft:coast",material:"example:raw_copper"}]
Still stuck? Compare against the example pack; diffing your files against a known-good one usually finds it fast.
Ent's Armor Trim Expanded