Posted July 13, 2017 by watabou
List of changes:
Coastal cities
The new version of the generator is now able to place a city on a coast or to be exact it can place a coast next to a city. There are no rivers yet, they will be added later, since I'm going to implement them differently. As with walls, plaza and citadel currently you can't specify whether you need a coast or not, this parameter is chosen randomly (2 out of 3 layouts are coastal). Here is roughly how the coast thing works:
That's it, conceptually it is very simple. In practice it took much more time and much more refactoring than I anticipated. Also surprisingly adding a waterbody had a serious negative impact on performance so I needed to invest into optimization.
What's next?
The next big feature I'm planning to work on is rivers/canals. Unlike sea they won't take whole patches of terrain, but will run between them similarly to roads. This approach should allow me to create narrow channels, I just hope it will be "compatible" with existing coast feature.
Another thing in my to-do list is smaller but equally important I guess: a UI for editing map parameters, both "structural" (e.g walls, plaza, coast) and visual ones (e.g. colour scheme, hatching). Initially I was going to implement something fancy like a dialog window or sidebar with tabs, but I don't want to spend too much time on it so now I think it will be a simple hierarchical menu. Also I'll try to bring back zooming. I'm not sure if anyone needs it, but it was there in the beginning and then I had to remove it and now it makes me feel uncomfortable :)