Chained Curios
Rank 1,213
Rank 898 among mods

Quick rating

Chained Curios

Overall rating distribution
0.5★ (no ratings)
1.0★ (no ratings)
1.5★ (no ratings)
2.0★ (no ratings)
2.5★ (no ratings)
3.0★ (no ratings)
1 rating (100%) · 3.5★
4.0★ (no ratings)
4.5★ (no ratings)
5.0★ (no ratings)
0.5★ 5★
Gameplay rating distribution
0.5★ (no reviews)
1.0★ (no reviews)
1.5★ (no reviews)
2.0★ (no reviews)
2.5★ (no reviews)
3.0★ (no reviews)
3.5★ (no reviews)
1 review (100%) · 4.0★
4.5★ (no reviews)
5.0★ (no reviews)
0.5★ 5★
Aesthetics rating distribution
0.5★ (no reviews)
1.0★ (no reviews)
1.5★ (no reviews)
2.0★ (no reviews)
1 review (100%) · 2.5★
3.0★ (no reviews)
3.5★ (no reviews)
4.0★ (no reviews)
4.5★ (no reviews)
5.0★ (no reviews)
0.5★ 5★
Performance rating distribution
0.5★ (no reviews)
1.0★ (no reviews)
1.5★ (no reviews)
2.0★ (no reviews)
2.5★ (no reviews)
3.0★ (no reviews)
3.5★ (no reviews)
1 review (100%) · 4.0★
4.5★ (no reviews)
5.0★ (no reviews)
0.5★ 5★

wear chainmail under your armor, give chainmail a use!

QoL & Tweaks
Mod Loaders
Forge
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

3.5
GoldenBananaPeel

Reputation ranks

Explorer 0 pts
Contributor 100 pts
Guide 500 pts
Veteran 1,500 pts
Luminary 4,000 pts

Ranks only ever go up; points can drop but your rank stays.

About reputation ranks
MC 1.20
The version(s) the reviewer played
Gameplay
4.0
Aesthetics
2.5
Performance
4.0

Great mod, it definitely adds a use to Chainmail. It's better when paired with a mod that allows you to craft chainmail like Chained so that you actually have a higher likelihood of using the slots.
My ONE issue with this mod is that you can't hide the under armour from showing up like you can for most of the stuff that goes into curios slots (like Relics, Artifacts, etc.), so if you're using something like Cosmetic Armor Reworked, it looks really strange.

0
0
Posted July 1, 2026 at 8:30:23 PM UTC
3.5
GoldenBananaPeel

Reputation ranks

Explorer 0 pts
Contributor 100 pts
Guide 500 pts
Veteran 1,500 pts
Luminary 4,000 pts

Ranks only ever go up; points can drop but your rank stays.

About reputation ranks
MC 1.20
The version(s) the reviewer played
Gameplay
4.0
Aesthetics
2.5
Performance
4.0

Great mod, it definitely adds a use to Chainmail. It's better when paired with a mod that allows you to craft chainmail like Chained so that you actually have a higher likelihood of using the slots.
My ONE issue with this mod is that you can't hide the under armour from showing up like you can for most of the stuff that goes into curios slots (like Relics, Artifacts, etc.), so if you're using something like Cosmetic Armor Reworked, it looks really strange.

0
0
Posted July 1, 2026 at 8:30:23 PM UTC
3.5
GoldenBananaPeel

Reputation ranks

Explorer 0 pts
Contributor 100 pts
Guide 500 pts
Veteran 1,500 pts
Luminary 4,000 pts

Ranks only ever go up; points can drop but your rank stays.

About reputation ranks
Posted July 1, 2026 at 8:30:23 PM UTC
MC 1.20
The version(s) the reviewer played
0
0

Get it on

Available Platforms

About

Project Details

Type
Mod
Latest Version
chainedcurios-1.1.0.jar
Authors

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID

Resources

External Links

Source Issues Wiki Discord

About

Description

Chained Curios

A simple, vanilla-friendly mod that gives you a second layer of defense. No more choosing between your enchanted diamond chestplate and that cool-looking chainmail. Now you can wear both.

Features:

Underlayer Armor

Adds four new "underlayer" Curios slots, one for each armor type. This mod re-purposes vanilla chainmail to be worn underneath your primary armor instead of in the main armor slots. kinda like how you would in real life.

Layered Protection

The chainmail provides its full armor and enchantment benefits, stacking with your main gear. More protection is always better.

Smart Durability

The underlayer takes durability damage, but it's smart about it. If you have a primary armor piece equipped over it, the underlayer takes 60% less durability damage.

Seamless Visuals

The best part. The chainmail realistically renders only in the gaps of your outer armor. No ugly clipping or Z-fighting. It just looks right.

How to Use

  1. Make sure you have Forge and the Curios API for Minecraft 1.20.1 installed.
  2. Drop the .jar file into your mods folder.
  3. Open your inventory and find the new "underlayer" slots in the Curios menu.
  4. Equip chainmail armor manually or by right-clicking or shift-clicking it.

Compatibility

  • Outer Armor: The dynamic rendering technique is designed to work with armor from most other mods. You can wear your vanilla chainmail underlayer beneath almost any modded armor and it should render correctly. armor in the gallery is from the minecraft dungeons and armor mod
  • All the Trims: The mod includes explicit support for the All the Trims mod. Armor trims will render correctly on the chainmail underlayer.
  • Underlayer Armor: Please note that this mod currently only adds the underlayer functionality to vanilla Chainmail Armor. It does not enable other modded armor sets to be used as underlayers.

Technicals

This mod is designed to be lightweight and client-focused. Here's a look under the hood:

  • Curios Integration (CapabilityAttacher.java & UnderlayerCurioProvider.java):

    • The mod subscribes to Forge's AttachCapabilitiesEvent<ItemStack>. When the event fires for a chainmail item, we attach our own ICapabilityProvider.
    • This provider, UnderlayerCurioProvider, exposes the ICurio capability. The core logic resides in the ICurio implementation:
      • canEquipFromUse: Returns true to enable right-click and shift-click equipping.
      • canEquip: Checks the SlotContext identifier to ensure a chainmail piece can only be placed in its corresponding "underlayer_*" slot (e.g., Items.CHAINMAIL_HELMET in "underlayer_head").
      • getAttributeModifiers: This is key for providing armor stats. It gets the item's default attribute modifiers for its corresponding EquipmentSlot and rebuilds them with a new UUID, effectively copying the armor and armor toughness attributes to the Curio.
      • getEquipSound: Returns the vanilla SoundEvents.ARMOR_EQUIP_CHAIN.
  • Damage & Durability Logic (ModForgeEvents.java):

    • A static event handler subscribes to LivingHurtEvent. This event is where all damage calculations happen.
    • Enchantment Protection: The handler gets the player's Curios inventory and iterates through the equipped items. For each chainmail curio, it calls the vanilla EnchantmentHelper.getDamageProtection() and accumulates the value. This total is then used to calculate the damage reduction factor (1.0f - Math.min(20.0f, totalEnchantmentProtection) / 25.0f), and the event's damage amount is updated.
    • Durability Damage: After the damage is reduced, the final amount is used to calculate durability loss. The base durability damage is (int) Math.max(1.0f, finalDamage / 4.0f).
    • Synergy: The handler then checks if the player is wearing a corresponding piece of vanilla armor. If so, the durability damage for the curio is reduced by 60% (durabilityDamage * 0.4f).
    • Finally, the ItemStack.hurtAndBreak() method is called on the curio's stack to apply the damage.
  • The Rendering Magic (UnderlayerRenderer.java & ClientModEvents.java):

    • Registration: In the FMLClientSetupEvent, we register an instance of our UnderlayerRenderer for each of the four chainmail items using CuriosRendererRegistry.register().
    • The Problem: Rendering layered armor typically results in Z-fighting, where the inner and outer models clip through each other.
    • The Solution (Stencil Buffering): We use a multi-pass rendering technique to solve this.
      1. Pass 1: The Stencil Mold: We render the outer armor first, but invisibly (RenderSystem.colorMask(false, false, false, false)). This pass writes to the depth buffer (creating a 3D "mold") and, crucially, writes a value of 1 to the stencil buffer for every pixel the armor occupies. A custom RenderType (armorCutoutWithCull) is used to enable back-face culling, preventing the inside of the armor from creating a messy mold.
      2. Pass 2: The Clipped Underlayer: We then render the chainmail underlayer. However, we configure the RenderSystem to only draw where the stencil buffer's value is not equal to 1 (RenderSystem.stencilFunc(GL11.GL_NOTEQUAL, 1, 0xFF)). This confines the underlayer to the 2D silhouette of the outer armor. The standard depth test against the "mold" from Pass 1 then correctly clips the underlayer in 3D space, ensuring it only appears in the gaps and underneath the outer armor.
    • Chestplate Exception: The chestplate model, with its separate body and arm pieces, requires a more complex cycle. The body is rendered first (with limbs stenciled out), followed by the limbs (with the body stenciled out), ensuring a perfect composite.
    • Compatibility: The renderer includes a specific call to AllTheTrimsCompat.tryRender() to provide explicit support for rendering trims from the All the Trims mod. If that fails or the mod is not present, it falls back to the vanilla trim rendering logic.

Screenshots

Gallery

  • legs.jpg
    legs.jpg legs.jpg
  • front.jpg
    front.jpg front.jpg
  • back.jpg
    back.jpg back.jpg
  • robe.jpg
    robe.jpg robe.jpg
  • cahinn.jpg
    cahinn.jpg cahinn.jpg
  • under.jpg
    under.jpg under.jpg
  • chained.jpg
    chained.jpg chained.jpg

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

1
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

~4,000
Downloads
Last Updated
Created
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works