This Hurts Me
As a civil engineering and municipal infrastructure enthusiast, village generation like this makes me die inside.
You may think “but it looks cool”, until you actually fly in close and realize that none of the villagers can get back into their houses after convening at the common areas of the town because they’re up sheer cliffs or halfway embedded into solid rock, and none of the paths are actually navigable in any way.
Even ‘rescuing’ this town by trying to light it up sufficiently that they won’t be accosted by zombies all day long from every nook and cranny, let alone refactoring all the paths so they can find their way around, is a frustrating and painful prospect.
Yeah sure okay it’s just a video game, but games and other environmental simulations of the sort only capture the imagination and our own minds’ abilities to extrapolate emergent play by having at least some basic modicum of verisimilitude - and i can tell you, this settlement, which was supposed to have been ostensibly built by allegedly sapient beings, should NEVER have come to be. Villagers can’t even merely sustain existence here let alone build it. Not that they have any canonical capacity to construct in the first place, but it’s supposed to be implied by the existence of buildings.
In a word, it’s dissonant.
How To Decrease Suck
But look. I’m not here to just point fingers and lay blame. Generally it’s a dick move to criticize a situation without offering a solution, and I have one:
Pathfinding as a generative guideline.
Retracing the hows and whys of populated places in real life, we can reveal the underlying principles that drive the phenomenon of Basically Any Place That Is Dwelled-Within. You see, for millions of years before humanity even existed let alone before the first permanent artificial structures were constructed on earth, the critters who occupied various land-based biomes on our world were trying to balance the needs of food, water, and safety. And they would do this by recognizing where these things were, and then attempting to navigate between them as efficiently as possible. In other words: animals create game trails, delineated paths of least resistance, between foraging grounds, watering holes, and hiding/nesting/resting places. Even entirely nomadic herds will attempt to beat relatively easier-to-traverse routes between grazing lands.
You could build an algorithm that attempts to lay a route between any two arbitrary points in an environment that minimizes for disruptions like objects blocking the way, bodies of water, gaps in the terrain like ravines, or even slopes that are uncomfortably steep.
A Pathfinding Algorithm.
Now, why do people make paths? Well, our hunter-gatherer ancestors did this to follow migratory prey and seasonal edible plants. Even though structures weren’t permanent, we’d come back to set up our camps at the same spots because they’re good spots to camp at - and our ancestors KNEW that as a function of accessibility. When we began experimenting with agriculture and attained the ability to stay in the same spot year-round while not dying of starvation or exposure, we discovered a whole-ass new use for pathfinding: trade!
We’d harvest materials from the surrounding world, and congregate to exchange what we found. Since all the materials were there, we began producing those materials into goods! Since we have all these people and all these goods in one place, why, let’s facilitate the exchange with the performance of services to improve quality of life! Providers of Materials, Producers of Goods, and Performers of Services, congregating at a common location…
That’s a Village.
The villagers in minecraft also possess an intrinsic implied division of labor along similar lines:
- Farmers obviously provide all the base sustenance foods the community needs.
- Fishermen provide fish, but also presumably various salvaged items or junk their luck of the sea might have brought ashore.
- Fletchers hunting in the wild provide wood, flint, feathers, and string.
- Masons mining in quarries provide minerals.
- Shepherds tending their herds and flocks provide meat, dyes, and cloth from wool.
- The various armorer, weaponsmith, toolsmith, leatherworker, and butcher all produce finished goods from those raw materials.
- The Cleric provides the service of being the community’s organizer and leader.
- The Librarian provides the service of keeping records and teaching the young.
- The Cartographer provides the service of facilitating travel and communication between towns and the location of resources in the field
What I’m trying to say is, there’s every indication that the only thing missing from this brew is the PATHS.
And that, if you DID try to draw paths of least resistance between arbitrary points in the world, you would see them converging upon level, open areas of solid ground… which would be perfect for the construction of settlements and slot seamlessly into the extant paradigms of villages as they already are.
Not only that, but, this would go incredibly far toward enriching every minecraft world with the semblance of a narrative without actually having to write one for real. Villages connected with roads will provoke our imaginations to externally hallucinate the existence of social systems that don’t even need to be programmed into the game, like sociological regions, or nations.
It all comes down to a road-based approach.
edit: BTW,
I created a submission in the official Minecraft Feedback site last month.
Sadly it’s rather hard to elegantly express what I’m suggesting with a character limit of only 1500.
So if you think this is a good idea, come here and vote or something. maybe comment.
Feedback Link
I know it’s broken, but I kind of like seeing the ridiculous ways villages can generate. Villagers in Minecraft are notoriously stupid, so it almost makes sense in a way that they wouldn’t be the best at creating practical towns.
RIGHT!? And maybe it’s me but whenever I see one of these villages I have to help them. I fell so bad watching them stranded in pits and stuck on cliff sides. Derails whatever I was doing bc I feel so bad for them. Sometimes I’ve had to destroy and block off entire houses bc they spawned in a cave under the village and the villagers were getting eaten alive trying to get to it.
If you felt so inclined, this village was in Seed -592881470 at x+784 z+80
i mean … as i type this i feel a little silly thinking someone would spin up a copy of this world just to go to that specific village and graciously unfuck its shit, but … i can’t help but put myself in your position given what you’ve said and feel the urge to represent at least one version of their universe where their town isn’t a total disaster 😅
As one of the devs of a structure mod, ALL Minecraft structures have godawful world placement. There really aren’t many tools to improve how they spawn other than to ignore the world entirely lol.
Funny thing to think about, when was the last time Mojang added a structure that cares about the world around it? Trial Chambers spawn underground, Trail Ruins spawn underground, Ancient Cities spawn underground, etc
Mojang died when Microsoft bought them. This will never be fixed, ever, along with a long list of other complaints (readers feel free to compile your own list).
Instead, I am looking for another game to replace minecraft. Lay of the Land looks promising, but it’s one guy and the project is still in VERY early dev. I am open to other suggestions.
Also, I got here because this post was on my front page. I’m not normally in this community and will take my negativity with me when I leave.
What complaints do yos have abou the game?
I mostly play creative these days, as survival doesn’t really have much in the way of gameplay. Once you’ve automated food production, made a skeleton grinder for arrows/xp, mined up a couple stacks of diamond for gear and enchanted them, there isn’t much left to actually do. Sure, you can explore, and mojang has added some really cool biomes and locations over the years, but there’s never anything actually worthwhile to get (except for the elytra in the end).
To make survival engaging would require overhauling so many aspects of minecraft, and I suggest looking at Terraria for inspiration. Minecraft has 7 swords (wood, stone, iron, gold, diamond, netherrite), with possible enchantments for each. According to bing ai, Terraria has 101 different swords, all with different possible modifiers. The progression ladder is not only much taller, but also more granular. And then apply this logic all the rest of the equipment (and add trinkets while we’re here).
Of course, with all these weapons, you would need something to do with them. Different zones within the game would need to be more or less difficult, with a much greater variety of mobs. I’m not sure the best way to do this, so why not have actual dungeons? Trial chambers seem to be a step in the right direction, but without the possibility of better and more interesting rewards, there’s no point in making better dungeons.
Inventory management is also bad. Terraria kept upping stack sizes over the years, and every time the community was happy about it. Minecraft needs to do more than just up stack sizes, because each material type also has different shapes (blocks, slabs, stairs, fences/walls) that building anything with more than one material is a chore. You should be able to have a stack of 2000 stone brick in your inventory and place any of its shape variants without crafting another object. Make a slab cost a full block, I don’t care, having more slots in my inventory free is way more important.
Every attempt that Mojang has made to address the above has been surface level at best. I’d be fine with that, after all survival is only one way to play the game. There’s also creative, and the vanilla experience is awful.
Ever try to do a large art project in MS paint using only the pencil tool? That’s minecraft creative mode. There needs to be tools to modify several blocks at once, using an intuitive interface (there’s a video for Lay of the Land that demonstrates the kinds of tools I’m talking about, I’ll link it if I can find it again). To get around this, I use a mod called Litematica, which is a cumbersome pain in my behind but the only way I know how to build a large scale anything without going mad. I’ve attempted to switch over to modelling in Blender and use Joey Carlino’s Block Blender addon, but I can’t figure out how to get the exporter to make the blocks actually be the material I want them to be. These mods and external tools should not be necessary, especially in CREATIVE MODE.
The lay of the land video as promised: https://youtu.be/XjCSY5x_EQw?si=q3UUd95-4dXgJVPj
Also also, we really should have more decorative objects. We have one type of bed, and it can have a few different color blankets on it. There should be a different style of bed for every major material type (like Terraria). Also, chairs. Not just things we can build that kinda look like chairs, but actual chairs that we can sit in. My park benches currently look terrible because in order to be functional they have to have a minecart in them. Tables that are coded as tables and you can simply pick up or set down objects on them. Furniture in general.
Yeah I completely agree with you on most things like building and the endgame being crap. But the tiers of tools I kinda like for the simplicity. I have played several smp servers with my friends and the qctivity on the server was quite a bit lower after we killed the ender dragon and got elytrae.
Even if the different gear were sidegrades to each other, that would still be better. Keep the main ones that you craft yourself as is, but then have findable versions that you can’t craft that have the same or similar stats but very different aesthetics (and possibly enchant bias). That would already make exploration more worthwhile. Armor trims are a step in the right direction, but making the schematics fragile is just a slap in the face. Actually, gear fragility really shouldn’t exist at all, but that conversation can happen another day.
Gear fragility is fine. The repair system onthe anvil needs to be redone and the lvl cap removed
This would be a massive undertaking for something very few people care about. It would also greatly increase worldgen time, and bring back cascading worldgen. Bridges might be feasible, but structures don’t typically do that kind of terrain manipulation you speak of
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.
I really like this idea, and like you point out elsewhere it might be possible to achieve this without prohibitive “river-like” worldgen problems.
I’ve long thought that a big problem with villages & villagers is that Minecraft’s design philosophy has always prized player-supremacy. That is, the player can change any blocks and very few other things can alter them. (creepers are fine; endermen acne can fuck right off)
So the villagers are stuck with the village they were given and cannot help themselves.
If villagers were given the power to dig and build to create the paths they need, repair their buildings and to fight off monsters, they’d be so much more interesting, and players wouldn’t be able to silo them off in little stalls to act as simple vending machines. The player would be forced to respect their autonomy.
I know the villagers already create big lag, but that’s because they’re constantly recalculating their pathfinding. If they made a path, and only recalculated when they bumped into one another or a block on their path was updated, then they wouldn’t need to do that, and they could have more complex behaviours. Also as a bonus this would fix a lot of mob lag.
It would be a lot easier if the villages spawned on reasonable terrain as well.