Why the procedurally generated world of Future Unfolding is hand designed

Andreas Zecher, Mattias Ljungström May 9 2016

Many games use procedural generation to dynamically create level geometry, creatures or missions. Game designers come up with rules that define how things should work. Then programmers implement these rules into code that generates playable levels from scratch. This allows games like No Man’s Sky to create a vast galaxy that would be impossible to create by hand.

Future Unfolding is an exploration game where nothing is ever explained explicitly. You have to find subtle hints in the world to solve puzzles that open up new areas, a setup somewhat comparable to The Witness. However, The Witness is set on a literally static island where every tree was placed manually and with accurate intention by its creators’ hands.

With Future Unfolding, we’re combining procedural generation with manual level design. We want everyone to experience a different world, but we also want to have control over the puzzles we put in your way.

To be able to do both, we developed a custom level editor in addition to our own graphics technology. We use it to define areas you can explore: Forest patches, clearings, lakes, paths from A to B, groups of animals, or artifacts that act as part of puzzles.

Custom level editor for Future Unfolding Detail from our custom level editor for Future Unfolding

For each scene we can specify many different parameters: The orientation of the scene, the density of how the trees are placed, the color scheme of the vegetation, which animals you encounter, which type of artifact to use for a puzzle, the width of a slope. These parameters are all defined in ranges or possibility sets.

For example – an opening has low-height vegetation which can be either flowers, small bushes or grass. A path has an enemy, it could be a wolf or a snake. Two areas are connected at a certain distance, the second area could be north or south of the first one.

To understand how this works, take a look at the screenshots below. They show three of the many different possible variations of a specific location in the game.

Variation A Variation B Variation C The same location in three different procedurally generated variations

All this variation adds up to a unique play experience where every world is different. Still, each level has the same conceptual structure so we can design interesting puzzles that are always solvable.

We take this even further by designing puzzle scenes with multiple solutions, depending on which objects are randomly chosen for you. Imagine a hard to reach location with a portal you want to get to. We can let the game either place deers close by, which can be tamed and then used to jump over cliffs. Or we can place a secret entrance at the base of the mountain with an exit at the top. In one instance you explore the game's mechanics, in another instance the game's world.

The layout of the world, how levels are connected with each other, is procedural as well. Each play-session has a different starting location, flow and pacing. You'll encounter animals and puzzles in a different order than your friends. With these efforts, we hope that you'll experience a non-linear, emergent and personal story when playing Future Unfolding.

Do you have a question or comment? Get in touch on Twitter.