SANDBOX — this is a test environment. No servers are actually deployed and no real payments are charged.
✓ VerifiedEconomy & shops

VillagersTradingPlus

by LithiumPlus · for Minecraft

Add, replace or delete the trades of any villager, change the currency, gate trades behind conditions and reprice them, all from a datapack.

31KDownloads
54d agoLast updated
GPL-3.0-onlyLicense
Fabric · Forge +1Loaders

About VillagersTradingPlus

From Modrinth

Add, replace or delete the trades of any villager, change the currency, gate trades behind conditions and reprice them, all from a datapack.

VillagerTradingPlus allows you to fully customize villager trading for your world.

Add, replace or delete the trades of any villager, change the currency, gate trades behind conditions and reprice them, all from a datapack.

Versions: 1.20.1, 1.21.1, 1.21.8

Loader: Fabric, Neoforge, Forge

Support my work on

Patreon

Buy me a coffee

***

What this is

VillagerTradingPlus is a library. On its own it adds no villagers, blocks or items: it replaces the machinery behind villager trading so that mods and datapacks can define trades in JSON.

Install it if a mod asks for it, or if you want to rewrite villager trading in your own pack. VillagersPlus is the reference mod built on top of it.

What you can do with it

  • Add, delete or overwrite trades for every villager profession, the vanilla ones included.
  • Change the currency from emeralds to any item you like.
  • Set the amount, max usages, villager experience and price behaviour of each trade.
  • Gate trades behind conditions: biome, dimension, weather, time of day, moon phase, gamerule,

job site block or a config flag.

  • Fourteen trade types, from a plain item sale to weighted pools, structure maps and enchanted

books drawn from a weighted list you define.

  • Merge multiple datapacks that modify the same villager, instead of letting the last one win.
  • Customize the wandering trader the same way, with its own common and rare tiers.

***

Configuration

config/villagertradingplus/villagertradingplus-1.0-config.json5

These apply to every trade the library builds, no matter which mod or datapack defined it.

Trades

| Option | Default | What it does | | --- | --- | --- | | trade_offers_per_level | 2 | Max new trades a villager gains per level. | | trade_offers_wandering_trader | 5 | Max trades the wandering trader offers. | | trade_price_multiplier_scale | 1.0 | Scales how strongly prices swing from demand and reputation. 0.0 freezes both. Does not change a trade's starting price. | | trade_cost_scale | 1.0 | Multiplies the base cost of every trade (first input slot only). 2.0 doubles all prices. Result is clamped to 1 .. one stack. | | enable_conditional_trades | true | Whether condition-gated trades are actually checked. false makes every trade always appear. | | enable_time_of_day_pricing | false | Randomly nudges a trade's cost based on the in-game time it is unlocked. The price is locked in at unlock and does not keep changing. | | time_of_day_price_variance | 0.15 | How far that nudge can go, as a fraction of the cost. Only used when the option above is on. |

Trading screen controls

All three are off by default. When on, any player can use them, so they are meant for creative building and testing rather than survival servers.

| Option | Default | What it does | | --- | --- | --- | | allow_trade_reroll | false | Buttons to re-roll a villager's or wandering trader's trades, all at once or one level at a time. | | allow_set_villager_level | false | A control to set a villager's level (1-5) and regenerate its trades. Wandering traders have no levels and ignore it. | | allow_view_all_trades | false | A button that opens a read-only catalog panel listing every trade a villager could roll at a chosen level, with weights, chances and conditions. |

***

Making a datapack

Trade files go into a datapack under your own namespace. Three folders are read:

| Folder | What it does | | --- | --- | | data/<namespace>/default_villager_trades/<profession>.json | Replaces a profession's trades outright. | | data/<namespace>/villager_trades/<profession>.json | Adds to a profession's trades. | | data/<namespace>/wandering_trader_trades/<any name>.json | Wandering trader trades. |

A profession file names the profession and holds five tier arrays:

{
    "profession": "minecraft:butcher",
    "trades": {
        "novice": [],
        "apprentice": [],
        "journeyman": [],
        "expert": [],
        "master": []
    }
}

Every snippet below is a single trade object that goes inside one of those five arrays.

_Notice: the vanilla trades aren't in JSON form yet, so replacing those means writing out the tiers you want to keep._

***

Fields every trade type accepts

These are left out of the examples below to keep them short:

| Field | Meaning | | --- | --- | | max_uses | How often the trade can be used before it locks. | | villager_experience | Experience the villager gains per use. | | price_multiplier | How strongly reputation and Hero of the Village move this trade's price. | | demand | Seeds vanilla's demand pricing: the cost climbs with use and decays over time. | | conditions / logic | See Conditions further down. |

Trade types are namespaced villagertradingplus:. The old villagersplus: namespace is still accepted for datapacks written before the split, but it logs a deprecation warning on load, so write new files against the new one.

***

Trade types

sell_item

The villager sells an item for a price.

{
  "type": "villagertradingplus:sell_item",
  "sell": { "item": "minecraft:oxeye_daisy", "count": 1 },
  "priceIn": { "item": "minecraft:emerald", "count": 2 }
}

buy_item

The villager buys an item and pays you.

Read the full description on Modrinth →

Highlights

From source data

Game versions

Supports 3 Minecraft versions, the newest being 1.21.8.

Loaders

Runs on Fabric, Forge and NeoForge.

Footprint

Rated a light load on a server.

What kind of mod it is

From the catalog
Listed on Modrinth as “Mods”

Economy & shops

Currencies, shops, trading and rewards.

Runs on your server

From source side support

Modrinth lists VillagersTradingPlus as required on the server. Check its Modrinth page to see whether players need it too.

Compatibility

Game
Minecraft
Loaders
FabricForgeNeoForge
Runs on
Serverrequired on the server
Game versions
1.21.8 and 2 earlier

Verified at the source

  • ✓ModrinthOfficial listing, checked 2026-10-01Open ↗
  • ✓AuthorLithiumPlus, as published on Modrinth
  • ✓LicenseGPL-3.0-onlyFree

VillagersTradingPlus, answered

Generated from the mod’s own source data.

Do my players need to install VillagersTradingPlus?

Modrinth lists VillagersTradingPlus as required on the server. Check its Modrinth page to see whether players need it too.

Which loaders does it support?

Fabric, Forge and NeoForge.

Is it free?

Yes. VillagersTradingPlus is free to download from Modrinth. Its license is GPL-3.0-only.

How do I add it to my Nxeon server?

Use “Add to a server” on this page, or open NxLabs from your dashboard. We install it, restart your server and switch it on.

NxLabs

Run VillagersTradingPlus on a Minecraft server.

Deploy in about a minute from $4.20 a month, then add VillagersTradingPlus in one click.