{"id":107468,"date":"2026-06-06T08:04:17","date_gmt":"2026-06-06T05:04:17","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/"},"modified":"2026-06-06T08:04:17","modified_gmt":"2026-06-06T05:04:17","slug":"multi-village-selector","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/","title":{"rendered":"Multi Village Selector"},"content":{"rendered":"<p># Multi Village Selector (MVS)<\/p>\n<p>**Minecraft 1.21.1 | NeoForge &#038; Fabric | MIT License**<\/p>\n<p>Multi Village Selector gives you control over village spawning in Minecraft. Instead of each village mod fighting for spawn slots, MVS intercepts village generation and selects from **all your installed village mods** using configurable weights.<\/p>\n<p>## The Problem MVS Solves<\/p>\n<p>When you install multiple village mods (Cobblemon Additions, ChoiceTheorem&#8217;s Overhauled Village, Towns &#038; Towers, etc.), they compete for the same spawn locations. Some mods override others, some never spawn, and you have no control over the mix. MVS fixes this by:<\/p>\n<p>&#8211; **Intercepting** vanilla village spawns before any mod processes them<br \/>\n&#8211; **Selecting** from all configured village structures using weighted random selection<br \/>\n&#8211; **Respecting** biome rules so desert villages spawn in deserts, snowy villages in snow, etc.<br \/>\n&#8211; **Providing** you control over village spawning and the mix\/ratio of different village types<\/p>\n<p>## Download<\/p>\n<p>&#8211; **Modrinth**: Multi Village Selector<br \/>\n&#8211; **GitHub Releases**: Latest Release<\/p>\n<p>**Requirements:**<br \/>\n&#8211; Minecraft 1.21.1<br \/>\n&#8211; NeoForge 21.1.80+ **or** Fabric Loader 0.16.0+ with Fabric API<br \/>\n&#8211; Architectury API (required for both platforms)<\/p>\n<p>## Quick Start<\/p>\n<p>1. **Install** MVS and Architectury API in your `mods\/` folder<br \/>\n2. **Launch** Minecraft and load a world<br \/>\n3. **Run** `\/mvs generate` in-game to scan your installed mods<br \/>\n4. **Review** the generated config at `local\/mvs\/multivillageselector.json5`<br \/>\n5. **Move** the config to `config\/multivillageselector.json5`<br \/>\n6. **Restart** Minecraft to apply changes<\/p>\n<p>That&#8217;s it! Villages from all your mods will now spawn with weighted representation &#8212; but be sure to look over the weights, the generator makes some guesses and isn&#8217;t perfect.<\/p>\n<p>For detailed setup instructions, see the **Getting Started Guide**.<\/p>\n<p>## Configuration<\/p>\n<p>MVS uses a JSON5 config file with four main sections:<\/p>\n<p>&#8220;`json5<br \/>\n{<br \/>\n  \/\/ Which structure sets MVS controls (usually just minecraft:villages)<br \/>\n  intercept_structure_sets: [&#8220;minecraft:villages&#8221;],<\/p>\n<p>  \/\/ Your village structures with per-biome weights<br \/>\n  structure_pool: [<br \/>\n    { structure: &#8220;minecraft:village_plains&#8221;, biomes: {&#8220;#minecraft:is_plains&#8221;: 25} },<br \/>\n    { structure: &#8220;bca:village\/default_mid&#8221;, biomes: {&#8220;#bca:villages&#8221;: 29} },  \/\/ Cobblemon Additions<br \/>\n    \/\/ &#8230; more structures<br \/>\n  ],<\/p>\n<p>  \/\/ Optional: Reduce spawn rate in specific biomes<br \/>\n  biome_frequency: {<br \/>\n    &#8220;#minecraft:is_ocean&#8221;: 0.3,  \/\/ Only 30% of ocean spawn attempts proceed<br \/>\n  },<\/p>\n<p>  \/\/ Optional: Control village density (vanilla defaults shown)<br \/>\n  placement: {<br \/>\n    &#8220;minecraft:villages&#8221;: {<br \/>\n      spacing: 34,<br \/>\n      separation: 8,<br \/>\n    }<br \/>\n  }<br \/>\n}<br \/>\n&#8220;`<\/p>\n<p>See the **Configuration Guide** for complete documentation.<\/p>\n<p>## Commands<\/p>\n<p>&#8220;`bash<br \/>\n\/mvs generate              # Scan mods and generate config<br \/>\n\/mvs biome                 # Show current biome info<br \/>\n\/mvs locate <structure>    # Find nearest structure with teleport links<br \/>\n\/mvs structure biomes <id> # Show biome rules for a structure<br \/>\n\/mvs structure pool        # List structures in MVS config pool<br \/>\n\/mvs structure list        # Dump all game structures to file<br \/>\n\/mvs structure nearby      # List structures near player<br \/>\n\/mvs structure predict     # Predict what would spawn at current location<br \/>\n\/mvs help                  # Show all commands<br \/>\n&#8220;`<\/p>\n<p>See the **Commands Reference** for full documentation.<\/p>\n<p>## Supported Mods<\/p>\n<p>MVS works with mods that **add new villages** to structure sets:<\/p>\n<p>&#8211; **Vanilla Minecraft** &#8211; All 5 village types<br \/>\n&#8211; **Cobblemon Additions (BCA)** &#8211; Cobblemon-themed villages<br \/>\n&#8211; **ChoiceTheorem&#8217;s Overhauled Village (CTOV)**<br \/>\n&#8211; **Towns &#038; Towers**<br \/>\n&#8211; **Terralith**<br \/>\n&#8211; And many more&#8230;<\/p>\n<p>Some mods require disabling their own village spawning. See **Mod Compatibility** for setup instructions.<\/p>\n<p>### Tested Compatible Mods<\/p>\n<p>These mods have been tested alongside MVS without issues:<\/p>\n<p>&#8211; **C2ME** &#8211; Concurrent chunk generation works fine with MVS<br \/>\n&#8211; **Explorer&#8217;s Compass** &#8211; Structure location still works<br \/>\n&#8211; **Nature&#8217;s Compass** &#8211; Biome location still works<br \/>\n&#8211; **Chunky** &#8211; Pre-generation works correctly with MVS structures<\/p>\n<p>### What MVS Cannot Control<\/p>\n<p>MVS intercepts **structure selection**, not **jigsaw piece assembly**. Mods that replace individual village pieces (buildings, paths) rather than adding whole village structures work differently:<\/p>\n<p>&#8211; **Better Villages** &#8211; Replaces vanilla village jigsaw pieces<br \/>\n&#8211; **Luki&#8217;s Grand Capitals** &#8211; Replaces\/extends vanilla village pieces<\/p>\n<p>These mods will still apply their changes to whatever village MVS selects, usually the vanilla villages. This is usually fine if you only use one &#8211; MVS picks which village type spawns, then the jigsaw replacer modifies its buildings. But MVS doesn&#8217;t help you with fighting between those types of mods.<\/p>\n<p>## Documentation<\/p>\n<p>| Guide | Description |<br \/>\n|&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;-|<br \/>\n| **Getting Started** | Installation and first-time setup |<br \/>\n| **Configuration** | Complete config reference |<br \/>\n| **Mod Compatibility** | Per-mod setup instructions |<br \/>\n| **Commands** | In-game command reference |<br \/>\n| **Spacing Guide** | Controlling village density |<br \/>\n| **Troubleshooting** | Common issues and solutions |<br \/>\n| **Project Scope** | Design philosophy and limitations |<\/p>\n<p>## Known Issues<\/p>\n<p>&#8211; **Large mod structures may fail biome validation** &#8211; Structures with large starter pieces (BCA, Terralith) can fail vanilla&#8217;s biome check. Use `relaxed_biome_validation: true` in config.<br \/>\n&#8211; **Terralith sky biomes** &#8211; Terralith adds 3D biomes above ground level. Structures on tall terrain may sample a sky biome instead of the expected surface biome, causing biome validation failures.<\/p>\n<p>See **Troubleshooting** for details and workarounds.<\/p>\n<p>## FAQ<\/p>\n<p>#### Do I need village mods installed?<br \/>\nMVS works with vanilla, but you&#8217;ll only see vanilla villages. Install village mods like Cobblemon Additions or Towns &#038; Towers for variety.<\/p>\n<p>#### Why aren&#8217;t my villages spawning?<br \/>\nCheck the Troubleshooting Guide. Common causes: mod conflicts, biome mismatches, or spacing settings.<\/p>\n<p>#### Can MVS control other structures (temples, mansions)?<br \/>\nCurrently MVS focuses on villages. See Scope for design rationale. You can add any structure to MVS&#8217;s pool, but it&#8217;s designed for only one structure pool.<\/p>\n<p>#### Fabric or NeoForge?<br \/>\nBoth! MVS v0.3.0+ supports both platforms via Architectury.<\/p>\n<p>#### Can I add this to my modpack?<br \/>\nYes! Please file an issue if you have feature requests or find bugs. If it&#8217;s outside the project scope, I&#8217;ll likely say no.<\/p>\n<p>#### Can you do this for all structures?<br \/>\nThat&#8217;s harder. Managing ALL structure pools this way is much more complex. I&#8217;m considering it, but honestly comprehensive datapacks are probably easier for that use case.<\/p>\n<p>#### How do I make villages spawn more or less often?<br \/>\nUse the `placement` config section to adjust `spacing` and `separation`. See the **Spacing Guide** for details and recommendations.<\/p>\n<p>## Contributing<\/p>\n<p>Contributions are welcome! Please:<\/p>\n<p>1. Fork the repository<br \/>\n2. Create a feature branch<br \/>\n3. Submit a Pull Request<\/p>\n<p>For bug reports and feature requests, use GitHub Issues.<\/p>\n<p>## Authors<\/p>\n<p>**Project Design:** RhettL &#8212; Rhett takes no responsibility for the code in this repo, he didn&#8217;t write any of it.<\/p>\n<p>**Implementation:** This mod was developed entirely with Claude Code (Claude Sonnet 4.5), an AI coding assistant by Anthropic. RhettL provided design direction and testing.<\/p>\n<p>## License<\/p>\n<p>MIT License &#8211; see [LICENSE](LICENSE) for details.<\/p>\n<p>## Acknowledgments<\/p>\n<p>&#8211; Village mod creators for their amazing structures<br \/>\n&#8211; Cobblemon Additions creators for encouragement and allowing me to tell people about this mod on their Discord<br \/>\n&#8211; Architectury for multi-loader support<br \/>\n&#8211; json5-java for config parsing<br \/>\n&#8211; NeoForge and Fabric teams<br \/>\n&#8211; Claude Code (Sonnet 4.5) for doing most of the work coding this at RhettL&#8217;s direction<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A mod for allowing modpack creators to have as many village replacing mods as they like, setting biome, weights, and frequency of pool structures.<\/p>\n","protected":false},"featured_media":107469,"template":"","meta":{"_minecraft_slug":"multi-village-selector","_minecraft_project_id":"35BiK2KV","_minecraft_author":"RhettL","_minecraft_license":"MIT","_minecraft_downloads":1966,"_minecraft_follows":12,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"multi-village-selector.zip","_minecraft_size_bytes":3435796,"_minecraft_version_count":12,"_minecraft_updated_at":"2026-05-16T01:42:17.304047Z","_minecraft_date_created":"2025-12-01T04:56:16.316627Z","_minecraft_date_modified":"2026-03-10T00:29:40.983856Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/multi-village-selector","_minecraft_icon_attachment_id":107469,"_minecraft_imported_at":"2026-06-06T05:04:18+00:00","_minecraft_import_hash":"915735787c727b0e997f132afdf55aa6","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[97,126,158,92,159],"mod_loader":[99,160],"minecraft_version":[37],"class_list":["post-107468","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-fabric","mod_category-management","mod_category-neoforge","mod_category-utility","mod_category-worldgen","mod_loader-fabric","mod_loader-neoforge","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>Multi Village Selector - 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\/multi-village-selector\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Multi Village Selector - Minecraft\" \/>\n<meta property=\"og:description\" content=\"A mod for allowing modpack creators to have as many village replacing mods as they like, setting biome, weights, and frequency of pool structures.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/\" \/>\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=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/multi-village-selector\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/multi-village-selector\\\/\",\"name\":\"Multi Village Selector - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/multi-village-selector\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/multi-village-selector\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/multi-village-selector-icon-df694df748fdf0c57eff4795ad42cacc72361798_96.webp\",\"datePublished\":\"2026-06-06T05:04:17+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/multi-village-selector\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/multi-village-selector\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/multi-village-selector\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/multi-village-selector-icon-df694df748fdf0c57eff4795ad42cacc72361798_96.webp\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/multi-village-selector-icon-df694df748fdf0c57eff4795ad42cacc72361798_96.webp\",\"width\":96,\"height\":96},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/multi-village-selector\\\/#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\":\"Multi Village Selector\"}]},{\"@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":"Multi Village Selector - 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\/multi-village-selector\/","og_locale":"en_US","og_type":"article","og_title":"Multi Village Selector - Minecraft","og_description":"A mod for allowing modpack creators to have as many village replacing mods as they like, setting biome, weights, and frequency of pool structures.","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/","name":"Multi Village Selector - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/multi-village-selector-icon-df694df748fdf0c57eff4795ad42cacc72361798_96.webp","datePublished":"2026-06-06T05:04:17+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/multi-village-selector-icon-df694df748fdf0c57eff4795ad42cacc72361798_96.webp","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/multi-village-selector-icon-df694df748fdf0c57eff4795ad42cacc72361798_96.webp","width":96,"height":96},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/multi-village-selector\/#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":"Multi Village Selector"}]},{"@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\/107468","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\/107469"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=107468"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=107468"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=107468"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=107468"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}