All Mods Resource Packs Data Packs Shaders Modpacks Plugins
Trade Picker: Choose Your Villager Trades

Trade Picker: Choose Your Villager Trades

by polyvenom • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Trade Picker

Now available for both Fabric & NeoForge

Pick the exact villager trades you want. No cycling. No luck.

Short clip of trade picker in action

Trade Picker replaces the workstation-cycling grind with a simple choice screen. Right-click any villager and, instead of getting whatever trades the RNG decided, you see every trade that villager could offer at its current level — then you pick the ones you want. Your picks lock in permanently, and reputation discounts from curing or Hero of the Village still stack on top.

It adds no new items, blocks, or recipes. Everything you can pick is something that villager could already sell in vanilla — you just choose it instead of rolling for it.


How it works

  1. Right-click a villager.
  2. If that villager has more possible trades at its current level than vanilla would grant, a picker grid appears listing every option. Type in the search box to filter — mending, fortune, looting, weakness, emerald, any item name.
  3. Choose your trades and hit Confirm. They become that villager's permanent trades.
  4. When the villager levels up — Novice → Apprentice → Journeyman → Expert → Master — the picker opens again for that tier, if there's a meaningful choice to make.

The picker only appears when de-randomizing is actually relevant — that is, when the villager's trade pool has more options than vanilla would give you. If a villager only has two possible trades for a given level, you'd get both anyway, so it just opens the shop normally.


What you can pick, by villager

šŸ§‘ā€šŸ« Librarian

  • Sells: enchanted books.
  • You pick: every tradeable enchantment, listed individually at every level — Mending, Sharpness I–V, Fortune III, Looting III, Silk Touch, Infinity, every Treasure enchantment. No more breaking and replacing lecterns to chase one book.

āš”ļø Weaponsmith

  • Sells: enchanted swords and axes.
  • You pick: the enchantment on the weapon — Sharpness, Smite, Bane of Arthropods, Looting, Fire Aspect, Knockback, Sweeping Edge, Unbreaking.

šŸ›”ļø Armorer

  • Sells: enchanted diamond armor (helmet, chestplate, leggings, boots).
  • You pick: the protection you want — Protection, Fire / Blast / Projectile Protection, plus piece-specific options like Respiration and Aqua Affinity (helmets), Feather Falling and Depth Strider (boots), Thorns, and Unbreaking.

ā›ļø Toolsmith

  • Sells: enchanted diamond tools (pickaxe, axe, shovel, hoe).
  • You pick: Efficiency, Fortune, Silk Touch, Unbreaking — grab Fortune III or Silk Touch directly without the reroll.

šŸ¹ Fletcher

  • Sells: enchanted bows and crossbows, and tipped arrows.
  • You pick: bow enchantments (Power, Punch, Flame, Infinity, Unbreaking), crossbow enchantments (Quick Charge, Piercing, Multishot, Unbreaking), and the potion on tipped arrows — including Arrow of Weakness for curing zombie villagers.

šŸŽ£ Fisherman

  • Sells: an enchanted fishing rod.
  • You pick: Luck of the Sea, Lure, Unbreaking.

🌾 Every other profession

Farmer, Cleric, Butcher, Shepherd, Mason, Cartographer, Leatherworker ... — you pick which trades that villager offers at each level, straight from its full vanilla pool. The enchantment-choosing above only applies to professions that sell enchanted items; everyone else lets you choose their regular trades.

Everything stays inside what that villager could roll in vanilla, including level limits. Data packs and modded enchantments are picked up automatically, because the picker reads the actual trade list registered for each profession.


Config: enchanted gear & pricing

Books always list every enchantment individually. For enchanted gear (weapons, armor, tools, bows, rods) you can choose how much control you want:

  • Headline mode (default): pick the main enchantment you want; the game still rolls its level and any vanilla bonus enchantments — so a sword can still come with an extra perk, keeping vanilla's variety.
  • Single mode: pick the exact enchantment and its level. You get only that.
  • Cost scaling (off by default): enable per profession to make rarer and higher-level enchantments cost more emeralds, up to vanilla's price cap — a little balance so picking the best isn't free.

Pricing is configurable too. By default, all trades are offered at vanilla's minimum possible price, and curing and Hero of the Village discounts can still apply on top. Enable Vanilla Pricing in the config to restore normal price randomization if you'd rather keep that part of vanilla intact.

Configure everything in ModMenu (Fabric) or by editing config/tradeoptimizer.json (works on both loaders). The same file holds the Vanilla Book Limits toggle.


Multiplayer

On shared servers, each villager is claimed by the first player to interact with it. Only that player — or a server operator — can reset or change its trades, so your emerald shop stays yours. Players without the mod installed fall back to normal vanilla trading and receive a one-time message explaining why.


Reset anytime

Hit the Reset button on any trade screen to wipe a villager back to Novice and re-pick from scratch. A confirmation prompt keeps it from firing by accident.


Trade Picker vs. trade cycling mods

Trade cycling mods Trade Picker
Get specific trades Eventually, with luck āœ… First try, every time
Librarian enchantment choice Random āœ… Pick any enchant + level
Lowest vanilla price āœ… āœ… (configurable)
Works on all professions āœ… āœ…
Adds no new items or recipes Varies āœ…
Multiplayer trade protection āŒ āœ…

Compatibility

  • Loaders: Fabric and NeoForge — Minecraft 26.2
  • Sodium / Embeddium āœ…
  • Iris / Oculus āœ…
  • Lithium / Starlight āœ…
  • ModMenu āœ…
  • EMI / JEI / REI āœ…
  • Data packs that add or change villager trades āœ…

Heads-up: Don't install alongside another trade-cycling mod — you only need one, and running two can conflict.


Install

  1. Install Fabric Loader or NeoForge for Minecraft 26.2.
  2. On Fabric, also install Fabric API.
  3. Drop the matching Trade Picker jar into your mods folder.
  4. On a server: install on both the server and the client.

No config needed. Right-click a villager and it just works.


Source & License

Support

If Trade Picker saves you an afternoon of lectern-smashing, a tip on Ko-fi is always appreciated. No pressure — the mod is and always will be free.

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.1.x
Fabric
3d ago 1
26.2
Fabric
10d ago 1
26.3
Neoforge
15d ago 1
26.3
Fabric
15d ago 1
26.1.x
Fabric
24d ago 1
26.2
Fabric
24d ago 1
26.3
Fabric
24d ago 1
26.2
Fabric
2mo ago 1
1.21.x
Fabric
4mo ago 1
26.1.x
Fabric
4mo ago 1
1.21.x
Fabric
4mo ago 1
26.2
Fabric
4mo ago 1
26.1.x
Fabric
4mo ago 1
26.2
Neoforge
4mo ago 1
26.2
Fabric
4mo ago 1
26.2
Fabric
4mo ago 1
26.2
Neoforge
4mo ago 1
26.1.2
Neoforge
5mo ago 1
26.1.2
Fabric
5mo ago 1
26.1.2
Fabric
5mo ago 1
26.1.2
Fabric
5mo ago 1
26.1.2
Fabric
5mo ago 1
26.1.2
Fabric
5mo ago 1
26.1.2
Fabric
5mo ago 1
26.1.2
Fabric
5mo ago 1
## Trade Picker 1.7.2

Adds picks for stew effects and dye colours, keeps trades in the order you choose them, and makes the picker faster. Also adds more version support.

### New

  • Pick the exact variant.** A farmer's suspicious stew shows one card per effect, and a leatherworker's dyed leather shows one card per colour. (#14)
  • Trades appear in the order you pick them.** Selected cards are numbered 1, 2, and so on, and the villager lists the trades in that order. (#23)

### Changed

  • Faster picker.** The picker opens and confirms with less work per click. Settings save once, when you close the config screen. (#20)
  • Translatable screens.** The picker, the Reset button and the reset confirmation use translation keys. Enchantment and effect names come from Minecraft itself, so they are localised and modded ones display correctly. Professions show as "Farmer" rather than "FARMER". Tipped arrows show potency and duration, for example "Strength II (0:11)". (#21)
  • Picker screen polish.** Your selections, search text and scroll position survive a window or GUI-scale change. Search matches trade contents only, not the annotation text. (#18)

### Fixed

  • Correct enchanted-book labels with datapacks.** Librarians from datapack trade sets now show the enchantment you will actually get. (#16)
  • Book prices.** A picked enchanted book costs what its card showed, including single-level books such as Mending and Silk Touch. (#15)
  • Vanilla refusals.** As in vanilla, you can't trade with a sleeping or dying villager, or with one another player is already trading with. (#10)
  • Esc on the reset confirmation** goes back to the trade screen.
  • Walking away mid-pick** now shows a message saying your picks weren't applied.
  • Server-side checks.** The server validates every pick a client sends and rejects modified or out-of-range requests. (#9)

Fabric builds require Fabric API. Install the same version on both client and server.

## Trade Picker 1.7.2

Adds picks for stew effects and dye colours, keeps trades in the order you choose them, and makes the picker faster. Also adds more version support.

### New

  • Pick the exact variant.** A farmer's suspicious stew shows one card per effect, and a leatherworker's dyed leather shows one card per colour. (#14)
  • Trades appear in the order you pick them.** Selected cards are numbered 1, 2, and so on, and the villager lists the trades in that order. (#23)

### Changed

  • Faster picker.** The picker opens and confirms with less work per click. Settings save once, when you close the config screen. (#20)
  • Translatable screens.** The picker, the Reset button and the reset confirmation use translation keys. Enchantment and effect names come from Minecraft itself, so they are localised and modded ones display correctly. Professions show as "Farmer" rather than "FARMER". Tipped arrows show potency and duration, for example "Strength II (0:11)". (#21)
  • Picker screen polish.** Your selections, search text and scroll position survive a window or GUI-scale change. Search matches trade contents only, not the annotation text. (#18)

### Fixed

  • Correct enchanted-book labels with datapacks.** Librarians from datapack trade sets now show the enchantment you will actually get. (#16)
  • Book prices.** A picked enchanted book costs what its card showed, including single-level books such as Mending and Silk Touch. (#15)
  • Vanilla refusals.** As in vanilla, you can't trade with a sleeping or dying villager, or with one another player is already trading with. (#10)
  • Esc on the reset confirmation** goes back to the trade screen.
  • Walking away mid-pick** now shows a message saying your picks weren't applied.
  • Server-side checks.** The server validates every pick a client sends and rejects modified or out-of-range requests. (#9)

Fabric builds require Fabric API. Install the same version on both client and server.

## Trade Picker 1.7.2

Adds picks for stew effects and dye colours, keeps trades in the order you choose them, and makes the picker faster. Also adds more version support.

### New

  • Pick the exact variant.** A farmer's suspicious stew shows one card per effect, and a leatherworker's dyed leather shows one card per colour. (#14)
  • Trades appear in the order you pick them.** Selected cards are numbered 1, 2, and so on, and the villager lists the trades in that order. (#23)

### Changed

  • Faster picker.** The picker opens and confirms with less work per click. Settings save once, when you close the config screen. (#20)
  • Translatable screens.** The picker, the Reset button and the reset confirmation use translation keys. Enchantment and effect names come from Minecraft itself, so they are localised and modded ones display correctly. Professions show as "Farmer" rather than "FARMER". Tipped arrows show potency and duration, for example "Strength II (0:11)". (#21)
  • Picker screen polish.** Your selections, search text and scroll position survive a window or GUI-scale change. Search matches trade contents only, not the annotation text. (#18)

### Fixed

  • Correct enchanted-book labels with datapacks.** Librarians from datapack trade sets now show the enchantment you will actually get. (#16)
  • Book prices.** A picked enchanted book costs what its card showed, including single-level books such as Mending and Silk Touch. (#15)
  • Vanilla refusals.** As in vanilla, you can't trade with a sleeping or dying villager, or with one another player is already trading with. (#10)
  • Esc on the reset confirmation** goes back to the trade screen.
  • Walking away mid-pick** now shows a message saying your picks weren't applied.
  • Server-side checks.** The server validates every pick a client sends and rejects modified or out-of-range requests. (#9)

Fabric builds require Fabric API. Install the same version on both client and server.

## Trade Picker 1.7.2

Adds picks for stew effects and dye colours, keeps trades in the order you choose them, and makes the picker faster. Also adds more version support.

### New

  • Pick the exact variant.** A farmer's suspicious stew shows one card per effect, and a leatherworker's dyed leather shows one card per colour. (#14)
  • Trades appear in the order you pick them.** Selected cards are numbered 1, 2, and so on, and the villager lists the trades in that order. (#23)

### Changed

  • Faster picker.** The picker opens and confirms with less work per click. Settings save once, when you close the config screen. (#20)
  • Translatable screens.** The picker, the Reset button and the reset confirmation use translation keys. Enchantment and effect names come from Minecraft itself, so they are localised and modded ones display correctly. Professions show as "Farmer" rather than "FARMER". Tipped arrows show potency and duration, for example "Strength II (0:11)". (#21)
  • Picker screen polish.** Your selections, search text and scroll position survive a window or GUI-scale change. Search matches trade contents only, not the annotation text. (#18)

### Fixed

  • Correct enchanted-book labels with datapacks.** Librarians from datapack trade sets now show the enchantment you will actually get. (#16)
  • Book prices.** A picked enchanted book costs what its card showed, including single-level books such as Mending and Silk Touch. (#15)
  • Vanilla refusals.** As in vanilla, you can't trade with a sleeping or dying villager, or with one another player is already trading with. (#10)
  • Esc on the reset confirmation** goes back to the trade screen.
  • Walking away mid-pick** now shows a message saying your picks weren't applied.
  • Server-side checks.** The server validates every pick a client sends and rejects modified or out-of-range requests. (#9)

Fabric builds require Fabric API. Install the same version on both client and server.

## Trade Picker 1.5.1

Adds Minecraft 26.3. Villagers now take a new rank only after you've picked its trades.

### Fixed

  • Name tags and spawn eggs work on villagers again.** Right-clicking a villager with a named name tag names it, and using a villager spawn egg on it spawns a baby, as in vanilla.
  • No black flash when a screen opens.** The picker and the trade screen open straight over the world. Confirming your picks goes directly to the next screen without dropping back to the world first.

### If you played 1.5.0 (#25)

1.5.0 could leave a villager one rank short for good. A rank with nothing to choose, such as the librarian's Master rank, was filled in automatically but never granted. 1.5.1 grants those ranks. A villager that 1.5.0 already left stuck gets its rank the next time you right-click it, with no picker and no lost trades.
## Trade Picker 1.5.1

Adds Minecraft 26.3. Villagers now take a new rank only after you've picked its trades.

### Fixed

  • Name tags and spawn eggs work on villagers again.** Right-clicking a villager with a named name tag names it, and using a villager spawn egg on it spawns a baby, as in vanilla.
  • No black flash when a screen opens.** The picker and the trade screen open straight over the world. Confirming your picks goes directly to the next screen without dropping back to the world first.

### If you played 1.5.0 (#25)

1.5.0 could leave a villager one rank short for good. A rank with nothing to choose, such as the librarian's Master rank, was filled in automatically but never granted. 1.5.1 grants those ranks. A villager that 1.5.0 already left stuck gets its rank the next time you right-click it, with no picker and no lost trades.
[1.5.1] Trade Picker 1.5.1 by polyvenom on Oct 02, 2026
Download
## Trade Picker 1.5.1

Adds Minecraft 26.3. Villagers now take a new rank only after you've picked its trades.

### Fixed

  • Name tags and spawn eggs work on villagers again.** Right-clicking a villager with a named name tag names it, and using a villager spawn egg on it spawns a baby, as in vanilla.
  • No black flash when a screen opens.** The picker and the trade screen open straight over the world. Confirming your picks goes directly to the next screen without dropping back to the world first.

### If you played 1.5.0 (#25)

1.5.0 could leave a villager one rank short for good. A rank with nothing to choose, such as the librarian's Master rank, was filled in automatically but never granted. 1.5.1 grants those ranks. A villager that 1.5.0 already left stuck gets its rank the next time you right-click it, with no picker and no lost trades.
[1.4.0] Trade Picker 1.4.0 by polyvenom on Sep 06, 2026
Download
## Fixed:

Cured villagers keep the trades you picked. Curing a zombie villager replaces it with a new entity behind the scenes, which detached it from your picks. The villager came back selling trades you never chose, and the picker never opened for it again. Your picks and your claim now follow a villager through the whole zombify-and-cure round trip.
  • Reputation discounts actually reach the trade screen. Discounts from curing a villager, and from Hero of the Village, were being applied and then wiped a moment before the screen opened, so you saw the full price every time. They now show correctly on every open.
  • Villagers keep their picks through a Nether portal. (#12) Profiles were stored per dimension, so a villager carried through a portal read as unclaimed on the far side and could be re-picked or reset by anyone. Profiles are now stored once for the whole world, and profiles saved by older versions are folded into the shared store automatically.
  • Trade use-counts no longer roll back after a reload. (#11) Trades a villager already had before you installed the mod could reset their use counts when the world reloaded, restocking them early.
  • One unreadable profile no longer takes the rest down with it. (#13) A single malformed entry stopped every villager profile in the world from loading. Bad entries are now skipped one at a time.
  • Cost scaling applies to tipped-arrow trades. (#17) The fletcher's tipped-arrow trades ignored the cost-scaling setting.

Fixes a crashing issue on 1.21.11 using the 1.21.9-11 cluster jar, plus a handful of definition changes.
## Trade Picker 1.3.1
### Quality-of-life update for the trade picker, based on player feedback.

  • Already-picked trades are marked. Trades a villager already sells now show a green check mark and a tooltip note, so you never have to remember which trades you chose at earlier levels.

  • New setting:* Hide Already-Picked Trades. Turn it on to remove those trades from the picker entirely — you only ever see trades you don't have yet. Off by default. Found in the mod settings via ModMenu.

  • Sorted picker. Trades are now sorted by type: regular trades first, then enchanted books and enchanted gear grouped alphabetically by enchantment and level. No more hunting through the list.

Available for Minecraft 26.2 and 1.21.9–1.21.11 (Fabric). Requires Fabric API. Install the same version on client and server.
## Trade Picker 1.3.1
### Quality-of-life update for the trade picker, based on player feedback.

  • Already-picked trades are marked. Trades a villager already sells now show a green check mark and a tooltip note, so you never have to remember which trades you chose at earlier levels.

  • New setting:* Hide Already-Picked Trades. Turn it on to remove those trades from the picker entirely — you only ever see trades you don't have yet. Off by default. Found in the mod settings via ModMenu.

  • Sorted picker. Trades are now sorted by type: regular trades first, then enchanted books and enchanted gear grouped alphabetically by enchantment and level. No more hunting through the list.

Available for Minecraft 26.2 and 1.21.9–1.21.11 (Fabric). Requires Fabric API. Install the same version on client and server.
[1.3.1] Trade Picker 1.3.1 by polyvenom on Jul 05, 2026
Download
## Trade Picker 1.3.1
### Quality-of-life update for the trade picker, based on player feedback.

  • Already-picked trades are marked. Trades a villager already sells now show a green check mark and a tooltip note, so you never have to remember which trades you chose at earlier levels.

  • New setting:* Hide Already-Picked Trades. Turn it on to remove those trades from the picker entirely — you only ever see trades you don't have yet. Off by default. Found in the mod settings via ModMenu.

  • Sorted picker. Trades are now sorted by type: regular trades first, then enchanted books and enchanted gear grouped alphabetically by enchantment and level. No more hunting through the list.

Available for Minecraft 26.2 and 1.21.9–1.21.11 (Fabric). Requires Fabric API. Install the same version on client and server.
## Backports
  • Minecraft 26.1.x (Fabric):** tradeoptimizer-fabric-1.3.0+mc26.1.jar — covers 26.1 through 26.1.x. Same 1.3.0 feature set: Fixes bug: enchanted gear (weapons, armor, tools, bows, rods) and tipped arrows now expand into choosable cards in the picker, instead of letting vanilla roll them.

## What's new
  • Weaponsmith / Armorer / Toolsmith / Fletcher / Fisherman** — pick the enchantment on the item they sell.
  • Fletcher tipped arrows** — pick the potion (e.g. Arrow of Weakness).
  • Two modes:** Headline (default — pick the main enchantment; the game still rolls its level and any bonus enchantments) or Single (pick the exact enchantment and level). Switchable in ModMenu (Fabric) or config/tradeoptimizer.json.
  • Optional per-profession cost scaling** — make rarer/higher enchantments cost more emeralds; off by default.
  • Everything stays within what that villager could roll in vanilla — no enchantments or levels it couldn't normally offer.

[1.3.0] Trade Picker 1.3.0 by polyvenom on Jun 22, 2026
Download
Fixes non-librarian issues: enchanted gear (weapons, armor, tools, bows, rods) and tipped arrows now expand into choosable cards in the picker, instead of letting vanilla roll them.

What's new

  • Weaponsmith / Armorer / Toolsmith / Fletcher / Fisherman** --- pick the enchantment on the item they sell.
  • Fletcher tipped arrows** --- pick the potion (e.g. Arrow of Weakness).
  • Two modes:** Headline (default --- pick the main enchantment; the game still rolls its level and any bonus enchantments) or Single (pick the exact enchantment and level). Switchable in ModMenu (Fabric) or config/tradeoptimizer.json.
  • Optional per-profession cost scaling** --- make rarer/higher enchantments cost more emeralds; off by default.
  • Everything stays within what that villager could roll in vanilla --- no enchantments or levels it couldn't normally offer.

Notes

  • Fabric + NeoForge, Minecraft 26.2. Worlds carry over between loaders.
  • No new items, blocks, or recipes.
[1.3.0] Trade Picker 1.3.0 by polyvenom on Jun 22, 2026
Download
Fixes non-librarian issues: enchanted gear (weapons, armor, tools, bows, rods) and tipped arrows now expand into choosable cards in the picker, instead of letting vanilla roll them.

What's new

  • Weaponsmith / Armorer / Toolsmith / Fletcher / Fisherman** --- pick the enchantment on the item they sell.
  • Fletcher tipped arrows** --- pick the potion (e.g. Arrow of Weakness).
  • Two modes:** Headline (default --- pick the main enchantment; the game still rolls its level and any bonus enchantments) or Single (pick the exact enchantment and level). Switchable in ModMenu (Fabric) or config/tradeoptimizer.json.
  • Optional per-profession cost scaling** --- make rarer/higher enchantments cost more emeralds; off by default.
  • Everything stays within what that villager could roll in vanilla --- no enchantments or levels it couldn't normally offer.

Notes

  • Fabric + NeoForge, Minecraft 26.2. Worlds carry over between loaders.
  • No new items, blocks, or recipes.
[1.2.0] Trade Picker 1.2.0 by polyvenom on Jun 17, 2026
Download
## Trade Picker 1.2.0 — Minecraft 26.2

Updated for Minecraft 26.2.

### New
  • Vanilla book limits (optional, off by default).** Caps a librarian's enchanted-book picks per level to vanilla's actual book-trade count, pushing your remaining picks onto that level's non-book trades — for players who want a more vanilla-flavoured librarian economy. Toggle it in the config screen (ModMenu) or config/tradeoptimizer.json.

### Fixes
  • The trade screen no longer briefly flashes closed the first time you reopen a villager right after resetting its trades.
  • The book-limit label no longer reads "(max 0 book)" on professions that don't sell books.

Requires Minecraft 26.2 and Java 25.
[1.2.0] Trade Picker 1.2.0 by polyvenom on Jun 17, 2026
Download
## Trade Picker 1.2.0 — Minecraft 26.2

Updated for Minecraft 26.2.

### New
  • Vanilla book limits (optional, off by default).** Caps a librarian's enchanted-book picks per level to vanilla's actual book-trade count, pushing your remaining picks onto that level's non-book trades — for players who want a more vanilla-flavoured librarian economy. Toggle it in the config screen (ModMenu) or config/tradeoptimizer.json.

### Fixes
  • The trade screen no longer briefly flashes closed the first time you reopen a villager right after resetting its trades.
  • The book-limit label no longer reads "(max 0 book)" on professions that don't sell books.

Requires Minecraft 26.2 and Java 25.
[1.1.1] Trade Picker 1.1.1 by polyvenom on Jun 09, 2026
Download
## Trade Picker is now available on both Fabric and NeoForge for Minecraft 26.1.2.
### Worlds carry over between loaders
  • The mod id, package name, and SavedData keys are identical across both loaders, so a world's villager picks transfer between Fabric and NeoForge unchanged. Drop the jar in either loader and pick up where you left off.
## Bug fixes
### Restock exploit fixed
  • Picking new trades on a level-up no longer silently restocks previously-used lower-level trades. Use-counts now carry over across the offer rebuild, so a maxed-out trade stays maxed until a normal restock refills it.
### Book-key migration
  • Synthetic book keys for librarian picks are now written in a level-first lowercase form (book/<level>/<namespace>/<path>) for stricter Identifier compatibility. The previous uppercase-L form is still read on load for save compatibility.

[1.1.1] Trade Picker 1.1.1 by polyvenom on Jun 09, 2026
Download
## Trade Picker is now available on both Fabric and NeoForge for Minecraft 26.1.2.

### Worlds carry over between loaders
  • The mod id, package name, and SavedData keys are identical across both loaders, so a world's villager picks transfer between Fabric and NeoForge unchanged. Drop the jar in either loader and pick up where you left off.
## Bug fixes
### Restock exploit fixed
  • Picking new trades on a level-up no longer silently restocks previously-used lower-level trades. Use-counts now carry over across the offer rebuild, so a maxed-out trade stays maxed until a normal restock refills it.

### Book-key migration
  • Synthetic book keys for librarian picks are now written in a level-first lowercase form (book/<level>/<namespace>/<path>) for stricter Identifier compatibility. The previous uppercase-L form is still read on load for save compatibility.

[1.1.0] Trade Picker 1.1.0 by polyvenom on Jun 07, 2026
Download
## What's new

  • Enchantment display fix — single-level enchantments (Mending, Silk Touch, Infinity, Channeling, etc.) no longer show a redundant "I" numeral, matching vanilla's display conventions
  • Vanilla pricing toggle — new config/tradeoptimizer.json with a vanillaPricing option. Off by default (keeps the mod's lowest-price behavior). Enable it to use vanilla's randomized price range
  • ModMenu integration — config screen accessible from the ModMenu mods list if ModMenu is installed (soft optional, not required)
  • Mod icon fix — icon is now the correct 256Ɨ256 format and displays properly in ModMenu
[1.0.5] Trade Picker 1.0.5 by polyvenom on Jun 06, 2026
Download
## 1.0.5

  • Picker opens first for fresh villagers — Right-clicking a villager who just got their profession now opens the picker immediately. The old behaviour imported their random starter trades and made you hit Reset first before choosing. Villagers you've already traded with are unaffected.

  • Restocking now works correctly — Picked trades were restocking instantly every time you reopened the merchant screen, bypassing vanilla's restock cooldown entirely. Fixed — the villager now has to sleep and return to their workstation to restock, same as vanilla.

  • Reset button hidden on Wandering Traders — The button was appearing on the Wandering Trader screen and could accidentally target a villager you'd visited just before. It now only shows on real villagers.

### Other fixes:

  • Enchanted-book trades from mods with / in their enchantment IDs were being silently dropped — fixed
  • Villagers whose levels don't have exactly 2 trades (modded trade pools, or vanilla edge cases like a toolsmith's master level) had trades filed at the wrong level or lost entirely — fixed
  • Server-only install: players without the mod now fall back to vanilla trading with a one-time explanation instead of silent failure
  • Safe to update mid-world — all existing picks carry over.
[1.0.4] Trade Picker 1.0.4 by polyvenom on Jun 06, 2026
Download
### Security hardening + villager ownership (v1.0.4)
  • Packet DoS guard: cap pick count (≤64) and trade list size (≤4096)
before allocation in PickerSubmitC2S / OpenPickerS2C decoders
  • Server-side pick validation: re-enumerate real trade pool on submit;
reject picks not in the pool and level values above the villager's
current level — closes cross-profession trade laundering
  • Villager ownership: first player to right-click claims the villager;
only the owner (or op) can reset or overwrite picks; persists across
reloads and profession changes; backward-compatible with 1.0.3 saves
[1.0.3] Trade Picker 1.0.3 by polyvenom on Jun 06, 2026
Download
Bug Fix

  • Librarian book trades no longer vanish when the villager reaches master level.** Previously, re-applying trades on a villager at master level (which sells candles, not books) caused all earlier enchanted-book picks to silently fail and drop out of the trade menu. The bookshelf and candle trades were unaffected.

  • No reset needed** --- existing villager picks are intact. Affected librarians will self-heal and show all their book trades again on the next right-click.

Also includes the v1.0.2 fix: villager levels with only 1 or 2 possible trades (e.g. toolsmith master = diamond pickaxe only) now auto-progress without requiring the picker.

  • No save data changes** --- existing worlds carry over without any reset.
[1.0.1] Trade Picker 1.0.1 by polyvenom on Jun 06, 2026
Download
Bug Fix

  • Reputation discounts now apply correctly.** Prices from curing a zombie villager or having Hero of the Village were never being applied to picked trades in v1.0.0. They now work exactly as vanilla intends.

Also fixes the mod icon showing in ModMenu and the mod list.

  • No save data changes** --- existing worlds and villager picks carry over without any reset.
Trade Picker: Choose Your Villager Trades Icon
Download Trade Picker: Choose Your Villager Trades
Select game version
Select platform