Monday, December 22, 2025

Springs and valleys

It's been quite a while since the last post - real life has unfortunately rather dominated things recently and will probably continue to do so for quite a while. But I'm still tinkering with the planets when I can.

I've been working on refining the river simulation at the regional level, in particular making springs a bit more realistic. These are little rivers that flow into the main rivers, delivering the additional flow that the main rivers pick up in each tile. Previously, they were just random. But I thought it would make more sense if I could space them out a little so they flow into the main rivers in a more realistic way. To do this, I create imaginary zones around the rivers and start streams at the edges of these zones, spaced a bit from each other. That looks something like this:


All the rivers and springs here are shown the same shade, so it looks a bit overwhelming, but you can see in the more isolated sections how the springs flows nicely into their rivers. (The pink bit is a river valley.)

I've also enhanced the way that all rivers, including springs, carve the land beneath them, especially around mountains. That gives us pleasingly rugged landscapes like this:


There is still a lot of ironing out to do with this. I am thinking of implementing a simple hydrolic erosion system so that the shapes of the mountains interact more meaningfully with the valleys carved out by the rivers. That might mean I can make the mountains themselves a bit simpler, as the rivers will be doing more of the work of making the highland areas crinklier.

1 comment:

  1. Hi Jonathan,
    Thank you for your awesome work on UW. It's been a great inspiration for me alongside "For h in Hexes".
    Recently I started tinkering with Visual Studio and CMake and I was able to build and compile the classic version of UW from source. I will try to look for some of the bugs you mentioned to see if I can fix them, although to be honest I'm not proficient in C++ (it's an exciting task, though!).
    Is there any way I can reach out to you other than through comments on the blog? I am especially interested in asking about features you might have included in the globular version of the program that were not pressent in the classic one. I'd understand if you don't want to, though.

    Keep up the good work! This blog is full of treasures.

    ReplyDelete