Armor CEM Compat
Fixes 3D armor resource packs breaking every modded armor. Adds the item condition EMF is missing, and makes armor models actually refresh in-game.
截图
介绍
Armor CEM Compat
Stop 3D armor resource packs from breaking every modded armor.
The problem
You install a 3D armor resource pack (CEM) and suddenly every modded armor looks destroyed — misplaced colors, dark patches, and holes you can see the player’s skin through. Vanilla armor looks fine. Modded armor doesn’t. All of it.
And it’s not just cosmetic: it blocks your modpack. Any new armor tier you add comes in broken, so you can’t add progression or new dimensions.
Two details that make it hard to diagnose:
- The inventory icon looks fine. The bug only shows on worn armor (F5).
- It also affects zombies, skeletons, piglins and armor stands wearing modded armor.
Why it happens
A *_chestplate.jem doesn’t describe “the diamond chestplate”. It describes the entity’s armor layer — whatever item it comes from. So it captures modded armor too.
The pack’s textures are 64×64, but every modded armor uses the vanilla 64×32 layout. The UVs get squeezed and read from the wrong place.
And EMF had no way to filter that. Its items property comes back empty on armor layers. One-line proof: items=none matches while you’re wearing armor.
What this mod does
| # | Problem | Fix |
|—|—|—|
| 1 | items= is empty on armor layers | adds the armor_item property, reading getItemBySlot(slot) from the live entity – no NBT, no caching |
| 2 | ETF only allows re-evaluation the first time a rule matches | mixin on PropertiesRandomProvider.entityCanUpdate() |
| 3 | The armor layer keeps the model it got at startup | mixin on HumanoidArmorLayer.getArmorModel() |
| 4 | Writing 48 rules by hand | ships a built-in resource pack with them ready |
Point 3 matters on its own: without this mod, any EMF armor model variant won’t update until you press F3+T. The armor you see is whichever you were wearing when you joined the world. That affects every CEM armor pack using variants.
Installation
- Drop the jar into your
mods/folder - Install your 3D armor pack as-is – don’t modify it
- That’s it
The mod ships a resource pack that enables itself and sits above your armor pack. Nothing to copy or move.
Requires: EMF and ETF – the same ones any CEM pack already needs.
If modded armor still looks wrong
Check in Options -> Resource Packs that the compat pack is above your armor pack, then restart the game – reloading isn’t enough, because EMF doesn’t rebuild armor models on the fly. It’s placed correctly by default.
When to disable the built-in pack
You can disable it and the mod still works (the armor_item property stays). Do it if:
- Your armor pack already ships its own rules – ours would override them
- Your pack already uses its own variants (
<model>2.jem) – they’d collide - You want to write your own rules
armor_item syntax
models.1=2
armor_item.1=chest:minecraft:*_chestplate
armor_item.<n>=<slot>:<id> [more patterns, space separated]
slot : head | chest | legs | feet (also helmet/chestplate/leggings/boots)
id : supports '*'; namespace defaults to minecraft
'!' : negates the pattern - goes BEFORE the slot
armor_item.1=head:minecraft:*_helmet head:minecraft:turtle_helmet
armor_item.1=!chest:minecraft:*_chestplate
minecraft:*_chestplate excludes any mod by namespace – including ones installed later. No list to maintain.
Tested with
Just 3D Armors HMI 1.4 + Advanced Netherite, on Fabric 1.21.11 with EMF 3.3.5 and ETF 7.2.1.
Works with other CEM armor packs in principle – the file names are defined by EMF, not by the pack author. If you try it with another pack, please let me know how it went.
Credits
Full write-up of the investigation – including everything that was tried and ruled out – is in HALLAZGOS.md.
Thanks to Traben for EMF and ETF, and to nagi for Just 3D Armors.
Licensed MIT. Use it, modify it, bundle it in your modpack – no permission needed.
常见问题
Armor CEM Compat 支持哪些 Minecraft 版本?
Armor CEM Compat 支持 Minecraft Java 版 1.21.11,可用的加载器:Fabric。下载时注意选择和你游戏版本一致的文件。
Armor CEM Compat 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅客户端。
WHEYLL Studios 的其他作品
查看全部 →
LIV- Custom Immersive Audio
This resource pack is designed to enhance the gameplay experience of the Living Immersive Vanilla modpack.
LIV- Custom Immersive Audio
This resource pack is designed to enhance the gameplay experience of the Living Immersive Vanilla modpack.
评论
登录后评论和评分