villager banner
villager icon

villager

customizable villager trades so each villager can have diiferent trades like weapons tools and armor

00
fabricBoth1.21.1mod

Villager mod notes

  • Adds a villager trade overhaul: every villager is given a focused trade set (weapons, tools, or armor) when they load into the world. Their profession is set to match the role and their level is bumped to 5 so the full list is always available.
  • Default behavior picks a random role, but you can pre-tag villagers with command tags villager_weapons, villager_tools, or villager_armor to force a category before they are first processed. The tag villager_custom_trades is used internally to avoid reapplying trades automatically.
  • Admin command: /villagertrades <target> <category> applies the chosen list on demand (category accepts weapons/tools/armor). /villagertrades <target> random rerolls with a new random role. Works on existing villagers even after they were already customized.
  • Each category sells practical end-game items: weapons offer swords/crossbows/shields, tools cover diamond tools and anvils, and armor focuses on full diamond protection. Pricing and max uses are baked into the offer list.
  • Restocking still follows vanilla rules: villagers need access to the correct workstation (grindstone, smithing table, or blast furnace) to refresh uses. Trades are server-driven; no client-side steps are required.

Known limitations and ideas

  • Pricing is static and not currently configurable in-game; consider adding a config file or datapack-based definitions for server balancing.
  • Auto-detection runs on entity load; if you want to change a villager’s role later, use the /villagertrades command.
  • No new UI is provided; discovery is by interacting with villagers or by reading their command tags.

Server Validation

Server validation passed - The mod was tested on a real Minecraft server and loaded successfully.