![](/static/253f0d9b/assets/icons/icon-96x96.png)
![](https://lemmy.world/pictrs/image/5b285cfd-b3d2-4b6d-8ce2-b46a32996fb0.png)
Well, I’d like to point out that this isn’t manipulating the terrain so much as taking the terrain as it is and predicating the generation of villages on the extant properties of the terrain. And while the POI generation system in minecraft does not guarantee something is always there, it would be fine if the ‘attempt’ to generate a POI there was enough for a corresponding ‘attempt’ to pathfind to it. Dead end paths manifest in real life too sometimes.
Also, it’s perfectly feasible to limit recursion in tiers, somewhat the way that the Distant Horizons mod does: It performs a limited query of minecraft’s terrain generation code that only roughs out surface-level details speculatively. They are not fully realized. Precalculating speculative paths between potential POI-sites in the far distance as a background operation before you get close enough to generate those chunks “for real” would be a function of what process cycles you have to spare rather than being a prerequisite before rendering the next frame.
Oh wow I wasn’t even referring to villager agency but I kinda agree with you - ESPECIALLY on the grounds of what you described in terms of pathing for them, what I feel I’d call “parbaked pathing”.
My idea with using pathfinding algorithms as the root of village generation was to prevent ridiculously awful disasters of architecture in the first place by ensuring that villages would only tend to generate where a village would hypothetically have all the things it needs:
a. Open, stable, solid, reasonably flat-ish ground
b. Hypothetical easy connectivity to (imaginary speculative) “resources” in the world (that are in actuality arbitrary points of interest that tried to pathfind to each other and whose paths inevitably converged at a.)
c. Potential access to other villages for travel.
If villagers DID have agency to actively build instead of magically-already-have-been-built-now-they’re-stuck-with-a-lava-pool-burning-all-the-wooden-houses, what would be cool about that PLUS never developing a village on top of a lava pool would be the potential for villagers to build actual roads between villages when the POI-linking pathfinding in the background happens to touch two villages concurrently…
(like lightning, shooting out tracers to establish a current but then committing once a viable route is found)
This should not be something happening in the foreground though so as not to harm chunk loading performance. Maybe only actionable when a player trades with villagers and somehow tells them “yeah, I’d like you to proceed with that”.
We already have sculk that spreads - and arbitrarily, chaotically so! - in response to player interaction, after all. This proposal would violate precedent LESS than that.