Tuesday, October 5, 2021

We have but slept for five million years

 I've made a few small tweaks to the program to improve the appearance of regional maps:

(1) Low mountains and hills are more likely to use wider peaks, giving them a more rounded and gentle appearance compared to higher ridges and peaks.

(2) Transform faults in mid-ocean ridges have been turned off, at least for now - they look too messy most of the time.

(3) Shading on ocean seabeds has been reduced for small differences in elevation, to avoid the kind of artifacts seen in the second map here.

(4) Semi-arid areas are depicted as slightly greener.

The main addition, though, is one I was considering for a while: custom worlds. It is now possible to import your own maps into Undiscovered Worlds and have it calculate the climates, rivers, and so on. You can then explore it, and export maps, just as if it were a world generated from scratch.

Here's what the new import screen looks like:


You can import three kinds of maps. Each needs to be a png image file the size of the global map. A land map is a heightmap for the land and a sea map is a depthmap for the sea (only needed if you want to specify sea depths - you don't have to import one), which are both pretty self-explanatory. The mountains map is needed because of how the program handles mountains: they are not simply high areas on the global map, but store ridge direction information as well. Luckily I managed to make it fairly simple to do. The user need only create another global-scale image with lines indicating the heights of the central ridges of the main mountain ranges. UW then draws more complicated ranges running along and around these, including working out how the ridges intersect.

So, for example, if the user draws a single line on their mountains image and imports it into UW, it creates mountains that look like this at the regional scale:


And I think these look reasonable.

As you can see, the import screen also allows you to generate various features on your map once you've imported the heightmaps. You can remove straight coastlines, generate continental shelves and mid-ocean ridges, add random variation to both sea beds and the land if desired (this means that you could import just flat heightmaps for the land or sea and have UW create variation in elevation, if you don't want to do it yourself). Finally, you can add smaller mountain ranges, hills, and also island chains, all randomly placed.

When you press the big button at the bottom, UW does a few additional processes such as removing depressions and adding gentle slopes to the land, and then calculates all the climates, as well as the river courses, lakes, and so on. Once that's done the world is finished and you can explore it at the regional level, and of course export maps with your preferred colour schemes, to do with as you will.

With luck, this should provide enough control for hopeful Slartibartfasts to sketch out the outlines of a world in whatever paint program they like, and then have UW fill in all the details.

I thought I'd test it out myself. I adapted this map of the Third Age of Arda to import into Undiscovered Worlds. I only did basic land outlines, and mountain ridges - the scale probably isn't quite right but I tried to get it as close as possible. I had to pretty much guess the heights of the mountains. Importing these two sets of data into UW, I added random elevation, and also random hills scattered about, so it won't exactly match Tolkien's physical terrain (to the extent that he ever specifies it precisely at all). Also, I cheated a bit by making the two large salt lakes in Tolkien's map into patches of actual sea, to ensure they appeared in the right locations.

I tried running this through UW a number of times and found that the results could vary quite a lot, depending on how the winds were generated (it's pretty random), as well as depending on where random hills get plonked down, plus all kinds of other small differences that can translate into quite significant variation. In some versions, Gondor was a huge desert. In some, the River Anduin swerved west and flowed out through the Gap of Rohan.

Here's a version that seemed to me quite pleasant-looking:

Obviously the only bit we really care about is the northwestern part of Middle Earth, so this is what that area looks like:

Here are the climates of that same region (using this colour scheme):


Some of the differences here, compared to Tolkien's maps, are purely physical. The Misty Mountains don't represent such an unbroken barrier as they should - Frodo and company could have found their way through any number of accommodating passes on this version of the map. The same applies to the Ash Mountains, to the north of Mordor. This is a result of how the program translates simple lines in the imported mountains image into tolerably believable mountain ranges - it has to mess about with them to some extent, and I can't remove that without making them look generally worse.

In addition, of course, there are various ranges of hills that aren't on the original maps, which I had UW add randomly. You need a good scattering of these to give the terrain a bit of texture, but it might mean that the watercourses aren't quite as you'd expect.

Instead of one major river running south, to the east of and parallel to the Misty Mountains, we have a number of rivers heading more or less due east. More significant rivers are found to the west, where you'd expect more rainfall - and indeed, to the west of the mountains UW places humid continental climates, giving way to temperate oceanic closer to the coast. The Shire straddles these two climatic zones, which also makes more sense than having it all temperate oceanic (as I assume it is for Tolkien, as it's meant to resemble England). It is, after all, further inland than England is in real life.

Gondor turns out to be quite arid again, but the main surprise here for me is Mordor, which looks a lot pleasanter than one might expect. The climate is mostly humid continental, giving way to subtropical in the south. I think this is because I made the mountains to the south fairly low, which is how I imagined them, and they didn't provide much of a barrier to the moisture blowing in from the southwest.

Obviously it's hard to say how many of the discrepancies are down to Tolkien's errors as a world builder, or down to UW's deficiencies as a world modeller, or down to my own errors in translating the maps to match the projection used here. Probably it's a combination of all of these factors.

Anyway, there's a quick demonstration of what you can do with the import feature. I hope people will find it useful who would like to sketch out a world and then have the computer calculate the climates and show roughly what it might look like.

3 comments:

  1. Replies
    1. Thank you! Now it's time for bug-hunting. Yay!

      Delete
  2. Now you're talking my language! I think it will be hard to come up with mountains and rivers both reasonably realistic and accurate to Middle-earth since, after all, A Wizard Did It.

    ReplyDelete