Dynamic Village v0.7-1.21.1
Curse Maven Snippet
What's new
Changes
For Players:
-Rebalanced trades, making emeralds harder to obtain from coal and repricing undercosted goods and contradictions between villagers.
For Developers:
-The mod has been fully transitioned to a platform for developers (All features can be found in the DATAPACK.md file)
-Richer trade items — tags, count ranges, and item data
-Trade cost/result entries gained three optional powers:
- Count ranges —
"count": { "min": 2, "max": 5 }rolls a random amount per offer, instead of a fixed number. - Item tags —
"tag": "c:ingots/zinc"resolves to the first item in a tag, so a trade can say "whatever zinc ingot this pack provides" instead of hard-coding one mod's item. - Components / NBT on results — attach enchantments, custom names, potions, etc.
-Any trade or building file can carry a conditions array (mod_loaded, item_exists, block_exists, each optionally negated). If the conditions aren't met, the file is skipped.
-Merge control — replace. Trade files now append by default (so any number of packs stack cleanly), with an opt-in "replace": true to fully redefine a profession's trades. Files load in a deterministic, sorted order.
-Data-defined professions (new!). You can add a brand-new villager profession with its own job-site block and trades using only JSON — no Java. Define it in config/dynamicvillage/professions/<name>.json (config, not a data pack, because professions must register before data packs load — a hard Minecraft constraint), add its job site to the acquirable_job_site tag via a normal data pack, and give it trades through the usual trade system.
-Tooling — schemas and a worked example
- JSON schemas for trade, building, and profession files (
schemas/*.schema.json) — point your editor at them for autocomplete and validation. - A runnable example add-on (
examples/example-addon/) demonstrating every feature end to end, including a new profession.
This mod has no additional files

