Continuing on the Planner code, I’ve shifted more things up a level. Things like the Stone Cove, Ruins, Hive, etc., can all be specified by the planner. So theoretically you could make a forest with many ruins or none, lots of hives or just one, and eventually I’ll add more control over the placement of these.
I also put the Planner into action, and the game now can now generate a full set of connected areas. You can walk from Solomon’s house, go through the tunnel, come out into the forest, then up to the surface to a sign post, across a small transition area to the mountain, then into a tomb via a door (for instance). The Planner has a lot of flexibility with how it connects all these areas up, and I look forward to trying out different global layouts. For example, I can imagine finding a ruins in the forest, walking through it, coming out in a hidden room in the cathedral, then surfacing up in the volcano level.
Although all this may sound abstract, I’m using it to make big strides in the actual development. The planner can now add pre-built little areas (hidden around the forest and other areas) and specify the contents of containers. For instance, it might want to add a special set of armour in this little area:
Other attributes, like whether an area is snowing, or what theme it has, are also specified at the planner level. Each region will have a few themes which primarily affect what it looks like. Here’s the default theme for the forest and a ‘dusk’ theme. In this case the theme changes some of the plants and the distribution of basic blocks. Other attributes, like terrain_type, will be used to modify the actual structure of the areas.