{"id":60356,"date":"2026-06-03T15:27:46","date_gmt":"2026-06-03T12:27:46","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/"},"modified":"2026-06-03T15:27:46","modified_gmt":"2026-06-03T12:27:46","slug":"dynamic-villager-trades","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/","title":{"rendered":"Dynamic Villager Trades"},"content":{"rendered":"<p>Example trades from a librarian specialized in max-level, armor and water-related enchantments.<br \/>\n![](https:\/\/i.imgur.com\/ggdsnPT.png)<\/p>\n<p>A revisitation of the Villager trading mechanics that aims to get rid of those big trading halls filled with villagers with mostly useless trades, instead allowing you to get everything you need from a smaller number of villagers, which can become specialized in the long term through deliberate trading. To achieve this, the mod makes these two changes:<\/p>\n<p>&#8211; _Villagers choose their trades based on previous player interactions._ For instance, a librarian you&#8217;ve bought many Looting books from is more likely to offer sword enchantments and luck related enchantments in the future.<br \/>\n&#8211; _Villagers change their trades every time they restock\/every day (configurable)._ This makes it unnecessary to breed a large number of villagers in hope that they sell what you need, and adds a little challenge to the trading mechanics. The more you buy or sell a specific item, the more likely the villager will choose that trade after restocking.<\/p>\n<p>Additionally, this mod allows you to add or replace villager trades through datapacks. In multiplayer, the mod is only required on the server.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Villagers change trades based on previous player interactions<\/p>\n","protected":false},"featured_media":60357,"template":"","meta":{"_minecraft_slug":"dynamic-villager-trades","_minecraft_project_id":"baBYPjgq","_minecraft_author":"sneakysneaker04","_minecraft_license":"CC0-1.0","_minecraft_downloads":14835,"_minecraft_follows":36,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"dynamic-villager-trades.zip","_minecraft_size_bytes":769313,"_minecraft_version_count":3,"_minecraft_updated_at":"2026-05-15T21:44:38.843044Z","_minecraft_date_created":"2025-06-05T22:37:49.013224Z","_minecraft_date_modified":"2025-05-30T23:23:40.062899Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/dynamic-villager-trades","_minecraft_icon_attachment_id":60357,"_minecraft_imported_at":"2026-06-03T12:27:47+00:00","_minecraft_import_hash":"6efe0f2770a4d3c02759ed74083d7358","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[844,97,104,89,137,92],"mod_loader":[99],"minecraft_version":[59,36,62,37],"class_list":["post-60356","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-economy","mod_category-fabric","mod_category-forge","mod_category-game-mechanics","mod_category-mobs","mod_category-utility","mod_loader-fabric","minecraft_version-1-20","minecraft_version-1-20-1","minecraft_version-1-21","minecraft_version-1-21-1"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Dynamic Villager Trades - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dynamic Villager Trades - Minecraft\" \/>\n<meta property=\"og:description\" content=\"Villagers change trades based on previous player interactions\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/dynamic-villager-trades\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/dynamic-villager-trades\\\/\",\"name\":\"Dynamic Villager Trades - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/dynamic-villager-trades\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/dynamic-villager-trades\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/dynamic-villager-trades-icon-c2e368a8b15e101a6409a0358cd9be67d599abec_96.webp\",\"datePublished\":\"2026-06-03T12:27:46+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/dynamic-villager-trades\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/dynamic-villager-trades\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/dynamic-villager-trades\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/dynamic-villager-trades-icon-c2e368a8b15e101a6409a0358cd9be67d599abec_96.webp\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/dynamic-villager-trades-icon-c2e368a8b15e101a6409a0358cd9be67d599abec_96.webp\",\"width\":64,\"height\":64},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/dynamic-villager-trades\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Dynamic Villager Trades\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dynamic Villager Trades - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/","og_locale":"en_US","og_type":"article","og_title":"Dynamic Villager Trades - Minecraft","og_description":"Villagers change trades based on previous player interactions","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/","name":"Dynamic Villager Trades - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/dynamic-villager-trades-icon-c2e368a8b15e101a6409a0358cd9be67d599abec_96.webp","datePublished":"2026-06-03T12:27:46+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/dynamic-villager-trades-icon-c2e368a8b15e101a6409a0358cd9be67d599abec_96.webp","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/dynamic-villager-trades-icon-c2e368a8b15e101a6409a0358cd9be67d599abec_96.webp","width":64,"height":64},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/dynamic-villager-trades\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"Dynamic Villager Trades"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/60356","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/60357"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=60356"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=60356"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=60356"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=60356"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}