Terrain Features

When we first created our world map it was one large land mass that had a very zoomed out, low detail look to it.  As we began creating our event system we realized we wanted some that targeted real Japanese landmarks and it was not possible to do this with that map.

Original Map

We tasked our artist with creating individual maps for each of our areas. Each were designed with actual areas of interest that tied into real landmarks in Japan around the time period we were targeting.

Kyushu

Now that we have amazing mountain ranges, points of interest, rivers, and many other land features I knew immediately that our procedural generated points would have to tie into them somehow.

Colormaps

Bring in colormaps.  By defining entire areas like forests, mountains, plains, rivers, and other various terrain types by color we were able to assign a terrain to every pixel on the map.  

What exactly does this give us? Glad you asked. We have a robust event system that delivers content to the player based on the region and sometimes restricted to certain terrains.  This allows the designers freedom to create more unique events and also to restrict pieces of them based on where the event takes place.

Event Details

A simple example would be an event with 5 branches, each of which has specific terrain requirements.  One could have “must be near a forest” while another has “must be near the mountains.” When the player hits this event in a node, it dynamically adjusts the options available based on the current location so that every play through has a slight variation (and you thought you could just memorize every event or scour what we hope to be a very detailed player created wiki someday).

Battle Locations

The secondary benefit of this is for generic battle events.  Adding some noise to each region allows us to sample several points around the player’s position to get a list of several possible terrain types that the battle can take place in.  Again, more dynamic variation per play through while making it feel like your combat takes place in the visual terrain surrounding you.

This simple idea really got the “there we go” we needed in order to make the game feel less linear every play through and gave the designers much more work to do on event development.