Tinkers' Devotion: true tinkers integration and immersion! Vanilla tools, weapons and armor all replaced by their TC counterparts in recipes, loot, mob equipment, and villager trades. There are no bounds to your tinkering, and the world should reflect that!
This mod is designed to be extensible, so the replacements system should work automatically with most mods! Most replacement systems can be toggled, scoped per item type, or blacklisted per mod. See Configuration further down.
Mobs spawning with vanilla tools or armor spawn with the TC equivalent instead, rolled fresh per mob with materials biased toward the same tier. This affects armour, melee and ranged weapons.
Vanilla tools, weapons, and armor in chest loot, fishing pools, and mob drops get replaced with TC same-tier equivalents at the same tier. Pre-enchanted items have their enchantments converted to weighted-random TC modifiers as part of the swap.
Crafting vanilla tools, armor, and ranged weapons as outputs is disabled (via Mantle). Recipes that take vanilla tools as inputs (e.g: a dispenser requiring a bow) are rewritten to accept a TC equivalent at the same tier. This is designed to work for ALL modded recipes which require vanilla items as recipe inputs.
I highly suggest you use JEI, as it shows candidate TC tools per slot with tier hints in the tooltip.
All villager trades involving such items (e.g: armorer, toolsmith, fisherman) have these trades replaced with a deterministic trade on spawn (e.g: iron-sword from a toolsmith will be replaced with a tier-2 TC sword equivalent). Wandering traders are also handled in the same way.
Skip to Configuration if you just want to play.
The general flow
The core of the mod is a shared tryReplace() function: vanilla item in, TC equivalent out (matched category, weighted materials, enchantments converted to modifiers). Everything else is just hooks that pass items into it.
Four entry points feed tryReplace():
EntityJoinLevelEvent handler swaps any vanilla item in the mob's slots.Because every hook converges on the same tryReplace(), a mob's diamond axe and a chest's diamond axe roll the same way.
Picking materials: the 80 / 10 / 10 split (configurable)
We pick a TC tool matching the vanilla item's category (sword / pickaxe type, etc.), then rolls materials per part using a weighted split:
The full canonical mappings:
| Vanilla tier | Tool canonical | Armor canonical |
|---|---|---|
| wooden | tconstruct:wood |
— |
| stone | tconstruct:rock |
— |
| leather | — | tconstruct:copper |
| iron / chainmail | tconstruct:iron |
tconstruct:iron |
| golden | tconstruct:rose_gold |
tconstruct:gold |
| diamond | tconstruct:cobalt |
tconstruct:cobalt |
| netherite | tconstruct:hepatizon |
tconstruct:hepatizon |
Enchantments → TC modifiers
Pre-enchanted vanilla items get their enchantments converted to TC modifiers.
ceil(sqrt(totalLevels × 4)), cap at 7. Sharpness V Unbreaking III Mending I gets a budget of about 6.A skip list in the config keeps unwanted modifiers out (defaults include netherite, creative_slot, draconic, etc.).
Compatibility & extensibility
MaterialRegistry. New material drops in, it's eligible. Custom-tier materials work for armor and ranged; tools need a vanilla-tier mapping.Drop the jar in your mods folder and load a world.
The defaults are quite sensible but if you want to tune, three files appear under config/ after first launch:
| File | Format | What it controls |
|---|---|---|
tinkersdevotion-common.toml |
TOML | Main toggles. Disable mob, loot, or villager replacement independently. Tune the parts-match threshold, loot variance, modifier specialization weight. |
tinkersdevotion/tool_exclusions.json |
JSON | Blacklist specific TC tools per slot or action. Stops dagger from substituting for cleaver in recipes, stops slimesuit from rolling as armor loot, etc. Defaults pre-populated. |
tinkersdevotion/modifier_skip_list.json |
JSON | TC modifier IDs that should never appear in the random enchantment pool. Defaults pre-populated. |
/tinkersdevotion generate re-runs the recipe scan and rewrites the generated datapack. Useful after installing or removing mods. OP level 2./tinkersdevotion generate reset resets the two JSON config files to defaults and regenerates. The TOML config is untouched.The recipe datapack auto-generates on first world load, so the command is only needed if you change your mod list.
Any bug reports, feature requests / suggestions (e.g: "this addon mod isn't getting picked up correctly"), please leave a comment or go on the GitHub issue tracker.
Or hop in the Discord if you just want to chat about the mod, ask a question, or hang out:
Tested with Tinkers' Things, TCIntegrations, Tinkers Levelling Addon, and Tinkers' Thinking. Should be friendly to any other TC addon that uses standard tags and registers its modifiers via TC's recipe system.
Tinkers' Construct and Mantle by SlimeKnights. Without them this mod would have nothing to integrate.
License: All Rights Reserved. Short version:
Full terms in LICENSE.md. For permission requests, open a GitHub issue.