Villagers expand remembered villages with gradual homes, paths, scaffolding, warehouses, and resource logistics.
VillageGrowth
Lets villagers expand remembered villages with new homes, paths, warehouses, scaffolding, and job buildings.
VillageGrowth is a Paper plugin that lets villagers grow persistent villages over time. Villagers can plan new structures, assign workers, gather supplies, build gradually, create paths, use scaffolding for elevated work, and register completed buildings back into VillageMemory so they can be repaired later.
VillageGrowth is designed for survival and RPG servers where villages should feel active and developing, without turning construction into instant structure spawning or free material duplication.
VillageGrowth stores block layouts, project state, placed-block records, temporary supports, warehouses, and resource data. It never copies or restores chest, barrel, or other container inventories.
Features
- Villager-led village expansion using real villager workers.
- Requires remembered villages from VillageMemory.
- Built-in vanilla-style house templates for complete, enclosed, usable homes.
- Job-building support for villages missing useful professions.
- Warehouse construction with real chest inventories.
- Dropped resource collection for eligible building supplies.
- Resource-aware construction with grouped material requirements.
- Configurable starting stockpiles and resource groups.
- Gradual visible construction with configurable placement limits.
- Worker assignment, worksite routing, and project diagnostics.
- Exterior scaffolding for elevated construction targets.
- Temporary scaffolding and support ownership, protection, expiry, and cleanup.
- Safe obstruction clearing for construction targets.
- Entrance protection so paths and supports do not block generated houses.
- Generated dirt paths between villages, houses, warehouses, and worksites.
- Path and support placement rules that avoid unsafe gaps.
- Chunk-ticket support for active build targets, with configurable caps.
- Warehouse logistics for storing and transferring village supplies.
- Custom template support with admin selection tools.
- Template validation to reject unsafe or incomplete copied structures.
- Copied-template learning from VillageMemory structures when enabled.
- Build queues for needed beds, warehouses, job buildings, and manual projects.
- Admin diagnostics for workers, blockers, project progress, resources, warehouses, chunk tickets, and temporary supports.
- Admin cleanup tools for owned growth blocks and supports.
- Completed buildings are registered with VillageMemory as remembered village blocks.
- Existing completed VillageGrowth buildings can be backfilled into VillageMemory from saved placed-block records.
- SQLite storage by default, with optional MySQL and MariaDB support.
- Bukkit service API and events for compatible plugins.
Resource Modes
VillageGrowth supports three construction resource modes:
infinitepartialplayer
infinite lets villagers build freely without consuming supplies.
partial gives villages configurable starting stockpiles and lets construction consume village resources when available.
player makes villages rely fully on supplied materials before construction can continue.
The default mode is partial.
Persistence
VillageGrowth stores templates, active projects, placed blocks, temporary supports, warehouses, resource stockpiles, pause state, and project bookkeeping.
Supported storage modes:
sqlitemysqlmariadb
SQLite is the default and is suitable for most servers.
Storage And Security
- SQLite is the default storage mode.
- MySQL and MariaDB are optional.
- SQLite paths are kept inside the plugin data folder.
- Example MySQL and MariaDB URLs use certificate and hostname verification.
- JDBC credentials are handled through the shared storage layer.
- Backups can be created before maintenance.
- Container inventories are never copied from templates.
- Warehouse storage uses real server inventories.
- Temporary supports and scaffolding are plugin-owned and bounded.
- Owned scaffolding can be protected from accidental player removal.
- Scaffolding cleanup removes temporary blocks without creating free material farms.
- Construction work is bounded by configured per-cycle limits.
- Safe clearing rules avoid arbitrary player-build destruction.
Dependencies
Required plugin:
- VillageMemory
VillageGrowth depends on VillageMemory for village detection, remembered village data, village parts, damage-aware growth checks, and completed-building memory. VillageGrowth will not run without the VillageMemory API service.
Commands
Main command:
/villagegrowth
Aliases:
/vgrowth/vg
Common commands:
/villagegrowth status/villagegrowth villages/villagegrowth inspect/villagegrowth templates/villagegrowth learn/villagegrowth forget-template/villagegrowth plan/villagegrowth queue/villagegrowth resources/villagegrowth cleanup/villagegrowth pause/villagegrowth resume/villagegrowth save/villagegrowth backup/villagegrowth reload
Permissions
Every permission defaults to operator access.
Grant all VillageGrowth permissions:
villagegrowth.admin
Or assign individual permissions:
villagegrowth.admin.commandvillagegrowth.admin.statusvillagegrowth.admin.inspectvillagegrowth.admin.templatesvillagegrowth.admin.template-selectvillagegrowth.admin.template-savevillagegrowth.admin.template-buildvillagegrowth.admin.template-managevillagegrowth.admin.learnvillagegrowth.admin.planvillagegrowth.admin.queuevillagegrowth.admin.resourcesvillagegrowth.admin.cleanupvillagegrowth.admin.pausevillagegrowth.admin.savevillagegrowth.admin.backupvillagegrowth.admin.reload
Plugin Integrations
VillageGrowth works with other Thunder plugins through VillageMemory.
- VillageMemory is required. It provides remembered villages, village parts, damage checks, and the remembered-block API used when VillageGrowth completes new buildings.
- Alignments is not a direct VillageGrowth dependency. If installed with VillageMemory, VillageMemory can still handle its own village repair, supply, damage, and theft reputation features.
- StormQuests is not a direct VillageGrowth dependency. If installed with VillageMemory, VillageMemory can still manage rebuild quest progress from its own repair and supply systems.
VillageGrowth also exposes its own Bukkit service API and project events for compatible plugins that want to inspect or react to villager-led growth.
Notes
VillageGrowth is designed for survival and RPG servers where villages should develop over time. It adds new homes, paths, warehouses, and job buildings through gradual villager work, while relying on VillageMemory to keep those new structures part of the remembered village.
Construction is intentionally bounded, resource-aware, and visible. Templates exclude container contents, temporary supports are controlled, and completed buildings are handed back to VillageMemory so villages can keep growing without becoming loot duplication machines.