Wednesday, February 9, 2022

Worldbuilding 5b: Generation

Updated today, and steadily in progress:

Left-click the map, then right-click the resulting projection to
open image in a new tab.  This gets a result that gives full detail.


The above map is a combination of random generation and geographical fumbling.  Humourously, I found a huge error I'd made in determining the course of the river through Kronstadt.  There is no such river in the real world.  The actual river, the Olt, flows through Sankt Georgen, then north through the valley to Miclosoara, through the hills by Apata and then along the track given the Olt on the map above.  So, my map is totally wrong.  But, I'm happy with it, so it is what it is.  No doubt, readers from Brasov, Romania [german:Kronstadt] would be displeased, but I've displeased locals with my maps before.

The process of laying out the regions and seeing them take shape is, frankly, thrilling ... particularly because it is random.  The results are unexpected, yet wholly within reason, so that it's fascinating and fun.  Though, admittedly, it's painstaking and occasionally trying.

Okay, something fun.  I'm using four images to denote mountains, which produces a somewhat repetitive composite that annoys me a little, but it's also more practical than accurately sketching every hill.  The largest of these images is the one tagged "Mt. Omu," about 14 miles southwest of Kronstadt.  ["N" is 60 degrees right of the map's top, which is I'm sad to say an element of how my maps depict the Earth's surface].

Mt. Omu is a real place.  Using Google Earth Pro, and putting Kronstadt, or Brasov, at the bottom of the screen — and then doubling the elevation exaggeration on Earth Pro — Mt. Omu is the enormous mountain at the back ... and yes, about 14 mi. away.  Some things are the same.


So, as I go along, I use a random generator, I study Earth Pro for the approximate height of local hills, low mountains or high ones, give names to some mountains when I find them, enjoy the map's forward progress as each new 20-mile hex is broken into 6-mile hexes.

The strongest reason I have for building a generator, rather than just sketching things purely from my imagination, is that I worry less.  For example, today the generator made every hex in a group exactly the same.

Here we have 10 contiguous type-4 hexes, each with its country town or village, most of them in the Tarnava valley (the "Tarnava" label needs to be a bit bigger).  The chances of this result was approximately 1 in 56.  I know, because I built the formula.  The hex's base infrastructure was 56.  There are 29 possible combinations, with differing frequencies.

If I were to decide, on a whim, that I'd make every hex a type-4, I'd be asking myself, "Should I have done that?  Is this a good place for it?  Am I making too many type-4 hexes?  Maybe one of those should be a type-5.  I just don't know."

This kind of thinking would haunt me with every decision I made about how important or how dense a given hex is, based on nothing more than my "feelings" ... from a creative standpoint, it's a special kind of hell.  On the whole, raw creativity is fair for something like writing a blog post.  I have a point to make, and each sentence needs to be designed to reach the point desired.  A bad sentence needs adjusting or removal; good sentences suggest the next, and the next after that, getting us where we want to go.

But there are no rights and wrongs with "how much civilisation" does a given hex have.  Which would seem to suggest, "Okay, it doesn't matter."  Unfortunately, an ad hoc approach to these things tends to produce two kinds of results:

Either we're very conservative, carefully choosing the mainstream options because they seem "appropriate" and "consistent" ... producing a very grey field where virtually every part of the map is mostly the same, offering little weird little backwaters and stand-out localities.

Alternately, we go hog wild, making everything strange and unique and "special" ... producing an unreal landscape that's plainly about the designer and not all suitable to the player's imagination.

A carefully tuned generation system, on the other hand, can provide the best of both worlds.  Some areas wind up being randomly consistent, like the Tarnava Valley ... while others are distinctly inconsistent, so that a big city like Kronstadt sits within a mile of a large wilderness without any infrastructure at all.

 
Look at it.  The heavy density of hammers and coins and food suddenly ends with the Busegi Mts., part of the Carpathian Range that swings in a circle through Romania.  A section 54 miles long and 18 miles wide lacks so much as a signpost — and it's here not because I wanted it, but because I'm using the real world as a guideline; and source materials that tell me nothing was here in 1650.  Oh, perhaps I'm wrong about this, the way I was wrong about the Olt River, but I have no evidence to the contrary.  More importantly, I'm using an outside source that is not me to dictate what's here and what isn't.  Therefore I can enjoy the presence of it without feeling responsible, the players can investigate it without suspecting it's anything more than the world being fickle about its geography — and whatever the players find in it, they expect to find because this is D&D and the above is exactly where the monsters are.  Seriously!  You walk 10 miles away from Kronstadt into a temperate mountainous oak and beech forest (Hungarian oak, to be precise, quercus frainetto) and stumble into an owlbear.  Isn't this exactly what you'd expect?

So, the players don't walk into the forest without realising it's bound to have awful things in it.  It's not just a blank part of the map, it's a wild part of the map.  So they prepare.  They're forewarned, so they fore-arm.  Unless they're stupid.  And when I decide what they find, I'm not plunking some module into their path ... I'm thinking, "Okay, we're 10 miles from Kronstadt; there are hunting parties that roam these mountains from Transylvania and from Wallachia; there's a national border dividing Transylvania from the Ottoman Empire controlled Wallachia that runs right through it.  Who or what ought to be here?  What kind of organised, intelligent being would make this place it's home?  Or their home.  A wilderness that has seen the boots of Romans, Goths, Huns, Pechenegs, Cumans, Bulgars ... and lawd knows how many creatures they encountered in the valleys and hollows of this place.  Let me think."

Owlbear.  It's got to be an owlbear.  With a leash and a collar.  And no name tag.

I originally meant to explain the generation method that got us here, but instead I got tied up explaining why there should be a generation method at all.  Realistically, we can't generate everything.  The choice to make it an owlbear wasn't generated; I get that.

But we do all that we can to build a kayak that won't sink and will endure hitting rocks, knowing that when the time comes we'll still have to steer the kayak in a way that keeps it afloat and avoids rocks.  The world's design will only get us so far.  However, it sucks to kayak down a river without a kayak.

I mean that, metaphorically, we generate all we can, and then when that fails us, we take the next step without the generation.  Though the generation won't do everything, doesn't make it useless.  It gets us this far.  And, with experimentation, we might invent another step we can generate that gets us farther.

This is what I mean when I say the map generation is FUN for me.  It doesn't feel like work, because it's so damned cool to see what pops up.  It's almost a video game.

1 comment: