Jump to content

Recommended Posts

Posted (edited)

Anego Studios is pondering how to implement flowing rivers, but I don't think it's possible with the current world generation system. To be honest, the world gen is a bit of a mess, you can even see the noise algorithms in the terrain. To implement rivers, you would need a large-scale, structured world gen. Mountains, valleys, large bodies of water, erosion, and so on.

I think Anego Studios should change their approach to world generation. They have a system similar to Minecraft's, but VS has evolved into something else entirely. If they want to keep raising the bar, a much more realistic, large-scale approach to world generation is needed. Tectonic is a good example. It's a Minecraft mod that implements realistic world generation. It doesn't work in Minecraft. The game is too simplistic and the performance and game mechanics render large mountain ranges and expansive plains redundant. But VS is different, it's much more realistic. Every time you go out on an expedition you need to prepare, you won't survive on a stack of cooked game meat alone. You can't visit every biome in a few hours either, so a more realistic world generation would suit the game. Anego Studios would need to adjust the scale for performance and gameplay and perhaps implement a more aggressive LOD generation, but I think it's feasible.

Finally, I would like to suggest a step-by-step implementation plan. First of all, I will remove the climate looping system. I understand that it simulates travelling around the planet, but I would simply make the world flat. There would be a north pole, an equator, a south pole, and everything in between. There is no need to overcomplicate things. No one is walking 200k blocks just to end up at equator 2. Give this one to the flat earthers 😭. This is how world generation would work:

  1. Continent Generation (3–10 Continents depending on the size of the map)

    • Start by generating a tectonic plate map or a set of large continental masks.

  2. High-Level Terrain Structure

    • Use plate interactions to influence noise functions and define mountain ranges, deep ocean basins, and major landmass topography (layered Perlin/Simplex noise and domain warping).

    • For simplicity, standardise the height: Y = 0 is sea level!

  3. Erosion and Terrain Refinement

    • Apply simulated hydraulic/thermal erosion passes to produce realistic slopes, valleys, and smooth coastlines.

  4. River and Watershed Generation

    • Create river systems by tracing flow lines from high-elevation areas toward big water masses.

    • Use a watershed algorithm to produce branching river networks and natural erosion.

  5. Biome Placement ( I think it already works like this)

    • Combine latitude, elevation, moisture, and temperature to assign biomes.

    • Ensure transitions between biomes follow ecological logic (e.g., temperate → boreal → tundra).

 

I know it's easier said than done, and maybe it won't suit the gameplay as well as I imagine. But hey, it would be fucking awesome to spend an hour following a river, set up camp and hunt some deer on a massive plain, take refuge from the cold in a trader's house, build a canoe and float down the river to find a village in the delta next to the ocean. The game would need some serious render distance to give the desired effect tho.

EDIT: Regardless of scale, even if the game needs thousands of small-scale continents, the key point is that we need well-defined, cohesive, and structured landmasses that support realistic and consistent topography rather than random, patchy terrain.

Edited by Alonso7
  • Like 8
Posted
14 minutes ago, Alonso7 said:

The game would need some serious render distance to give the desired effect tho.

This is why, barring any major breakthroughs in drastically improving performance at very high render distances, terrain really ought to be scaled down like it is now. It's nice to have grand landscapes, yes, but if one doesn't have the render distance to actually see it then it's not all that enjoyable. And not everyone has the beefy hardware required for exceptionally high render distance.

However, I do think that certain types of terrain could easily be fitted to a grander scale, without the need for high render distance. Plains or small, gentle hills are a good example, since a lower render distance will work decently well for getting the "vibe", so to speak. That is, the plain will still have that Kansas feel, since the player could go for miles without seeing a single mountain or hill. As for a mountain proper...that doesn't work so well on a lower render distance, since the player won't be able to actually climb to the top and view the surroundings for miles around. They'd be aware they're on a massive mountain, yes, but if the view is exactly the same as at the foot of the mountain, there's no real point.

  • Like 3
Posted
10 minutes ago, LadyWYT said:

I do think that certain types of terrain could easily be fitted to a grander scale, without the need for high render distance. Plains or small, gentle hills are a good example, since a lower render distance will work decently well for getting the "vibe", so to speak. That is, the plain will still have that Kansas feel, since the player could go for miles without seeing a single mountain or hill. As for a mountain proper...that doesn't work so well on a lower render distance, since the player won't be able to actually climb to the top and view the surroundings for miles around. They'd be aware they're on a massive mountain, yes, but if the view is exactly the same as at the foot of the mountain, there's no real point.

I totally agree, a breakthrough is needed. I'll just contact James Seibel, he's the creator of Distant Horizons. He has single-handedly changed the world of voxel games. In a video, he said that he would like to work for Mojang and natively implement it into the game. Of course, Mojang did what they always do and ignored him. If Mojang don't want him, maybe Anego Studios would appreciate his talent. Imagine if that technology was implemented in VS, it would be a game changer. Distant Horizons also performs well on low-end computers.

  • Like 4
Posted
10 minutes ago, Alonso7 said:

Imagine if that technology was implemented in VS, it would be a game changer.

https://mods.vintagestory.at/show/mod/22371

Technically, it's kinda already somewhat a thing. Kind of. But yeah, something like Distant Horizons is pretty much mandatory if one is going to play with epic terrain scales. Given how well Tyron and co. have optimized Vintage Story already, I think it's just a matter of time before they figure out some work-around for larger scale terrain features.

  • Like 5
Posted
1 hour ago, Alonso7 said:

First of all, I will remove the climate looping system. I understand that it simulates travelling around the planet, but I would simply make the world flat. There would be a north pole, an equator, a south pole, and everything in between. There is no need to overcomplicate things. No one is walking 200k blocks just to end up at equator 2. Give this one to the flat earthers 😭.

If any limitations were placed on the distance the map will render (which seems pointless, I suspect it works that way because it's easier to continue infinitely in whatever direction than to find a natural seeming way to establish world borders), then they should stitch the world boundaries together to implement a rudimentary bi-directional world wrap.

Civilization 4 had a world wrap option they called "toroidal", where both the north/south and east/west boundaries of a rectangular map of grid squares would connect to each other, allowing you to walk around the "globe" in any direction. The actual zoomed-out shape of the resulting planet is physically impossible and difficult to visualize, but that's not noticeable from the ground, and certainly not at Vintage Story's first person scale. 

I think it would be really cool to simulate a globe like this, allowing people to journey south 400km and find themselves back at their base. It also shouldn't be too difficult technically, with the biggest problem likely to be figuring out how to make the map boundary terrain look seamless. 

  • Like 3
Posted
2 hours ago, williams_482 said:

Civilization 4 had a world wrap option they called "toroidal", where both the north/south and east/west boundaries of a rectangular map of grid squares would connect to each other, allowing you to walk around the "globe" in any direction.

That was the first solution that came to mind, would be the perfect solution, but I'm not sure if it's feasible for a voxel game.

  • Like 1
Posted
5 hours ago, LadyWYT said:

https://mods.vintagestory.at/show/mod/22371

Technically, it's kinda already somewhat a thing. Kind of. But yeah, something like Distant Horizons is pretty much mandatory if one is going to play with epic terrain scales. Given how well Tyron and co. have optimized Vintage Story already, I think it's just a matter of time before they figure out some work-around for larger scale terrain features.

This mod - bare bones as it is - totally transforms the way I play the game. Just being able to see grey outlines of mountains in the far distance makes everything feel really big and makes exploration way more exciting. Including this mod in the base game and improving on it would make these grand scale terrain generation options work, and in my opinion making big, realistic terrain will make exploration so much better. 

  • Like 1
Posted

I think we could store world gen as ASCI Dwarf Fortress style in the background, then render graphics as the player comes upon them, rather than doing it all at once and leading to strange artefacts when the player is discovering zones too quickly.

 

It would allow the computer to frontload the generation and keep track of interactable environmental effects (erosion, rivers rolling downhill etc) and ostensibly speed up loading. 

  • Like 3
Posted
15 hours ago, Facethief said:

Bro, it’s shaped like a donut. Calm down.

Assuming a square map, it's shaped like a donut where the diameter of the vertical cross section of the donut ring is the same as the diameter of the donut itself, and the circumference around the outside of the donut is the same as the circumference of the hole in the middle. That's not like any donut I've ever eaten. 

Posted
23 minutes ago, williams_482 said:

Assuming a square map, it's shaped like a donut where the diameter of the vertical cross section of the donut ring is the same as the diameter of the donut itself, and the circumference around the outside of the donut is the same as the circumference of the hole in the middle. That's not like any donut I've ever eaten. 

It’s an impossibly thin donut; they make them like that in some places, but they’re not that great. Really crunchy.

  • Like 1
  • Haha 1
Posted (edited)
On 11/11/2025 at 10:39 AM, Alonso7 said:

Anego Studios is pondering how to implement flowing rivers, but I don't think it's possible with the current world generation system. To be honest, the world gen is a bit of a mess, you can even see the noise algorithms in the terrain. To implement rivers, you would need a large-scale, structured world gen. Mountains, valleys, large bodies of water, erosion, and so on.

I think Anego Studios should change their approach to world generation. They have a system similar to Minecraft's, but VS has evolved into something else entirely. If they want to keep raising the bar, a much more realistic, large-scale approach to world generation is needed. Tectonic is a good example. It's a Minecraft mod that implements realistic world generation. It doesn't work in Minecraft. The game is too simplistic and the performance and game mechanics render large mountain ranges and expansive plains redundant. But VS is different, it's much more realistic. Every time you go out on an expedition you need to prepare, you won't survive on a stack of cooked game meat alone. You can't visit every biome in a few hours either, so a more realistic world generation would suit the game. Anego Studios would need to adjust the scale for performance and gameplay and perhaps implement a more aggressive LOD generation, but I think it's feasible.

Finally, I would like to suggest a step-by-step implementation plan. First of all, I will remove the climate looping system. I understand that it simulates travelling around the planet, but I would simply make the world flat. There would be a north pole, an equator, a south pole, and everything in between. There is no need to overcomplicate things. No one is walking 200k blocks just to end up at equator 2. Give this one to the flat earthers 😭. This is how world generation would work:

  1. Continent Generation (3–10 Continents depending on the size of the map)

    • Start by generating a tectonic plate map or a set of large continental masks.

  2. High-Level Terrain Structure

    • Use plate interactions to influence noise functions and define mountain ranges, deep ocean basins, and major landmass topography (layered Perlin/Simplex noise and domain warping).

    • For simplicity, standardise the height: Y = 0 is sea level!

  3. Erosion and Terrain Refinement

    • Apply simulated hydraulic/thermal erosion passes to produce realistic slopes, valleys, and smooth coastlines.

  4. River and Watershed Generation

    • Create river systems by tracing flow lines from high-elevation areas toward big water masses.

    • Use a watershed algorithm to produce branching river networks and natural erosion.

  5. Biome Placement ( I think it already works like this)

    • Combine latitude, elevation, moisture, and temperature to assign biomes.

    • Ensure transitions between biomes follow ecological logic (e.g., temperate → boreal → tundra).

 

I know it's easier said than done, and maybe it won't suit the gameplay as well as I imagine. But hey, it would be fucking awesome to spend an hour following a river, set up camp and hunt some deer on a massive plain, take refuge from the cold in a trader's house, build a canoe and float down the river to find a village in the delta next to the ocean. The game would need some serious render distance to give the desired effect tho.

EDIT: Regardless of scale, even if the game needs thousands of small-scale continents, the key point is that we need well-defined, cohesive, and structured landmasses that support realistic and consistent topography rather than random, patchy terrain.

idk this is giving me more dwarf fortress worldgen vibes; perhaps a bit lighter since there wouldn't be a "civ phase" simulation;

 

edit: I would support this infinitely;

Edited by Tabbot95
Posted (edited)

One way to achieve much more realistic terrain could be to give every chunk its own 0 point for the Y axis. So let's say you've got a 512 block world height, but where those 512 blocks are depends on the chunk, they can be shifted up and down to create a world that is much more than 512 blocks high. There'd be an obvious downside, which is that you could reach the bottom of the world by digging horizontally through a tall mountain, but IMO it would still be worth it. You could have much more interestingly scaled landmasses and allow rivers to flow in a far more reasonable way than with the current limitations. Combined with having something like Farseer by default, you could allow for some pretty spectacular worldgen that would also probably be far less annoying to navigate than what we have right now. 1000m+ high mountains, very gradual shifts in terrain height alllowing for things like proper highlands, rivers that flow realistically, etc. Stuff that simply isn't possible with the default 256.

Edited by Reto Häner
  • 4 weeks later...
Posted
On 11/12/2025 at 12:56 AM, Entaris said:

I think we could store world gen as ASCI Dwarf Fortress style in the background, then render graphics as the player comes upon them, rather than doing it all at once and leading to strange artefacts when the player is discovering zones too quickly.

 

It would allow the computer to frontload the generation and keep track of interactable environmental effects (erosion, rivers rolling downhill etc) and ostensibly speed up loading. 

Frontloaded or World-based generation (like DF); would also allow for certain "world centric" systems to be managed/generated;

things like "Migratory Birds", "Predator packs/prides/etc.", "Locusts", etc. could be managed through having preset (broadly) areas where said animals are both going and coming from.

One downside to rivers overall will be handling damming; (stuff like seasonal flooding is out of the question as 1m³ scale prevents the sort of subtlety needed to really have flood plains.).. Perhaps it would be as simple as "you are not allowed to block off the flow or change the bed of a river "chunk"/"subchunk" beyond a certain percentage or if the river is of a certain size. (as some alteration will be necessary to allow for bridge abutments and piers supports to be set.)

  • Like 1
Posted (edited)
On 11/12/2025 at 5:56 AM, Entaris said:

I think we could store world gen as ASCI Dwarf Fortress style in the background...

This is a bit of a minor point, but ASCII is one of the worst ways to store data, if it's unsigned you are limited to 0 - 255, and if signed that goes down to 0 - 127. 

My 2 cents worth about rivers is that they will never really be implemented in the way I'd like, and that is purely down to the amount of work it would take. I've written about this elsewhere so I won't repeat word for word, but as we have complex(ish) geology being generated then the water should fit into that. It should cut away sandstone, creating valleys and even canyons, it should pool up into deltas and flood plains when the rock below it is impermeable like granite. The sources should be ice water drainage, and upwelling of springs. There should be tributaries and based on geology, water falls where it cannot weather the rock away.

All these, and trust me I could have written more, are "wanting the Moon on a stick", not only would it be a considerable task writing the code to do all this, the idea of having to test all the random possibilities without the game generating completely impossible water flows would seem like a Sisyphean task.

Edited by Broccoli Clock
  • Like 3
Posted
21 hours ago, Broccoli Clock said:

This is a bit of a minor point, but ASCII is one of the worst ways to store data, if it's unsigned you are limited to 0 - 255, and if signed that goes down to 0 - 127. 

My 2 cents worth about rivers is that they will never really be implemented in the way I'd like, and that is purely down to the amount of work it would take. I've written about this elsewhere so I won't repeat word for word, but as we have complex(ish) geology being generated then the water should fit into that. It should cut away sandstone, creating valleys and even canyons, it should pool up into deltas and flood plains when the rock below it is impermeable like granite. The sources should be ice water drainage, and upwelling of springs. There should be tributaries and based on geology, water falls where it cannot weather the rock away.

All these, and trust me I could have written more, are "wanting the Moon on a stick", not only would it be a considerable task writing the code to do all this, the idea of having to test all the random possibilities without the game generating completely impossible water flows would seem like a Sisyphean task.

My thoughts are basically for a minimum viable river that 

- has river valleys,

- has tributaries that go upland.

- is navigable at least in some respect by boat.

- impacts the placement of villages/etc.

  • Like 1
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.