> For the complete documentation index, see [llms.txt](https://docs.nexomc.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nexomc.com/configuration/custom-armors/trims.md).

# Trims Based (1.20+)

If using trims as your custom-armor type, most things is handled automatically for you.\
TRIMS method requires using CHAINMAIL as the base-item.

\
Nexo then generates a datapack based on your configured custom armors.\
Due to it requiring a datapack, the server needs to do a full restart any time you add/remove an armor-set.

{% hint style="danger" %}
After changing `CustomArmor.armor_type` to `TRIMS` you need to:

1. Start your server to let datapack be generated
2. Stop your server
3. Start it again to enable the previously generated datapack
   {% endhint %}

## How to configure your armor?

{% hint style="info" %}
Make sure that the itemID of your NexoItem follows the pattern `armorname_armortype`.\
For the rest of the above set it would be `ruby_chestplate`, `ruby_leggings` and `ruby_boots`.

Make sure your armor-layer files follow the format of **armorname**\_armor\_layer\_1/2.png.\
In the example below, we would need a **ruby**\_armor\_layer\_1.png & **ruby**\_armor\_layer\_2.png

\
If you are unsure how to reference a TextureFile in a NexoItem config; [FAQ](/general-usage/faq.md#how-do-i-reference-a-resourcepack-file-in-a-config)
{% endhint %}

```yaml
ruby_helmet:
  displayname: "<gradient:#FA7CBB:#F14658>Ruby Helmet"
  material: CHAINMAIL_HELMET
  Pack:
    parent_model: "item/generated"
    # Optional, if not specified, Nexo searches for any texture
    # with the filename armorname_armor_layer_X.png
    #CustomArmor:
    #  layer1: default/armors/ruby_armor_layer_1.png
    #  layer2: default/armors/ruby_armor_layer_2.png
    texture: default/armors/ruby_helmet
```

A trim-pattern is also necessary for the armor to display correctly.\
Nexo will automatically assign it if it has not been manually specified.\
You can optionally manually assign the `trim_pattern` if you want to.\
The value should be `nexo:armorname`, so in our example;

```yaml
ruby_helmet:
  trim_pattern: nexo:ruby
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nexomc.com/configuration/custom-armors/trims.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
