Skip to content

Config ‐ 3.5.0

Imajo24I edited this page Jul 1, 2026 · 23 revisions

This page applies to Naturally Trimmed versions ranging from 3.5.0 - latest.

Viewing and Editing the Config

The config can be found either via the config file, or the config screen in minecraft.

Most config entries are self-explanatory and don't require much explanation. They are only listed here, though they are further documented in the descriptions inside the config file/screen.
Those that do require some better documentation and explanation will be thoroughly mentioned on this page.

The config file can be found under .minecraft/config/naturally_trimmed.json5 and uses the json5 file format.
The config screen requires YetAnotherConfigLib on all modloaders and additionally ModMenu on Fabric.

Both ways of editing the config have their upsides and downsides:

Config File:

  • Contains the predefined_trims config entry
  • Doesn't have util buttons like the config screen does
  • Less user-friendly

Config Screen:

  • A lot more user-friendly
  • Has util buttons including validation-buttons for predefined_trims, material_filter and pattern_filter
  • Doesn't include the predefined_trims config entry

Config Entries

List of all config entries

Details
  • enable_trim_mobs
  • enable_trim_loot_tables
  • enable_trim_trades
  • trim_filtering (category)
    • texture_validation_filtering
    • vanilla_only
    • material_filter
    • pattern_filter
  • trim_mobs (category)
    • trim_system
    • no_trims_chance
    • trim_chance
    • predefined_trims
  • trim_loot_tables (category)
    • trim_chance
  • trim_trades (category)
    • trim_chance
    • minLevel

Texture Validation Filtering

Details

Enables filtering trims by checking for the corresponding textures of the trim. However, this only works on the client, it will be not be applied on dedicated servers, due to textures not being available on dedicated servers.

See the Missing-Texture Trims Page

When this setting is applied (on client + enabled), it will override the precautionary filtering (this is different from the trim filtering config entries!). This built-in filtering is precautionarily filtering against missing-texture trims:

  • Ensure no trim patterns by elytra_trims are used (elytra_trims adds trim patterns, that are only usable on elytras, into the trim pattern registry)
  • Ensure at least one trim part (either trim material or trim pattern) is vanilla. This helps prevent no-texture trims, as they most often appear when both trim parts are modded / from different mods.

Trim Material Filter / material_filter

Details

It's a lot of text if explained thoroughly like here, but in the end it's relatively simple, as can be seen in the examples.
Feel free to open an issue in this repository if there are any questions about this.

The filter is a list of rules, which can be used to filter out specific trim materials from being used.

Rules

  • Each rule can apply to zero, one or more trim materials
  • Each rule can either be whitelisting or blacklisting a trim material (+/-)
  • Multiple rules can influence the same trim material
    • If multiple rules match the same trim material, the first matching rule takes precedence (first-match wins)
  • By default, every trim material is whitelisted

When a trim material is blacklisted, it will no longer be considered by the mod for random trims.
When a trim material is whitelisted, it will be considered and potentially used by the mod for random trims.

Rule Syntax

A rule consists of the source and optional prefixes. The source is either a regex pattern, or minecraft tag.

Regex patterns allow you to do very advanced text search matching. They apply to the trim material identifier and test for a full match.
Meanwhile minecraft tags allow you to use the pre-existing minecraft tags. If the tag contains the trim material, the rule will match.

These are the optional prefixes: +, -, #.

A # before the source, marks the source as a minecraft tag. The # is essentially an identifier to differentiate between regex patterns and minecraft tags.
If there's no #, the source will be interpreted as a regex pattern. If there is, it will be interpreted as a minecraft tag.

You can specify whether a rule will be blacklisting or whitelisting, by adding a + (whitelisting) or - (blacklisting) prefix before the source. While by default all trim materials are whitelisted, if there's no black-/whitelist prefix, the specific filter will default to blacklisting.

The +/- prefixes must come before the # prefix, otherwise it will be an invalid rule.

-#c:gold

- => prefix to specify that the rule should blacklist
# => prefix to specify that the source is a minecraft tag
c:gold => the source

Examples:

// The ["",""] part of the examples are json5 syntax. These are not necessary for the config screen entry, where just the raw rule can be used

// Blacklist everything
[".*"]

// Blacklist everything from the biomes_o_plenty mod
["-biomes_o_plenty:.*"]

// Blacklist tag c:gold
["-#c:gold"]

// Blacklist everything but tag c:gold (regex pattern '.*' matches everything)
["+#c:gold", "-.*"]

// Blacklist just diamond through a c:gold_and_diamond and a c:gold tag
["+#c:gold", "-#c:gold_and_diamond"]

Trim Pattern Filter / pattern_filter

Details

The same as Trim Material Filter but for trim patterns