Open World Procedural Generation
Software Used: Unity
Programming Language: C#
The approach is node-based open world where each node borrows from Roguelike encounter design, and each color represents a potential biome. Biomes are selected from a list, so colors in the above image may be condensed based on overall number available (in other words, yellow and purple both may end up being Forest biome, if there aren’t enough biomes to pull from). Roguelike encounter pacing works as follows:
Radiating from center, each node represents a significant event, and follows the pacing pattern found in games like Slay The Spire. At the end players reach a “wall”, separating game “Acts”.
At each node you have an opportunity to find quests and quest-like events similar to those featured in Breath of the Wild. Some of these quests and events are contained to particular locations, others direct you to new locations, and others simply begin at the node.
1. Go to Location (pick a random point of interest greater than X distance)
○ Bring object to that location
○ Go there while afflicted by status effect
○ Ensure NPC arrives at that location safely
2. Find/Save NPC
○ By killing monsters
○ By bringing them something
○ Just find someone/something and report its location
3. Bring Me Item(s)
○ Altars which accept a type of item as a sacrifice
○ Magical seals which demand a reagent to deactivate
○ Items which change after exposure to specific situations
1. Page (map to location, poem that offers cryptic clues, etc)
2. Altar (location/object which requires the right object/person to unlock)
4. Magic Item (which initiates a silent quest upon pickup)
Ambush (spawn monsters at perimeter once player enters a tile)
Guarded Treasure (when a treasure spawns, it could come with a pile of enemies)
Hunter (spawn a monster which slowly tracks the player)
Herd on the move (large group of something walks across players’ path)
Unkillable Monster (huge dragon lands nearby, it will think you look tasty if it sees you)
Lightning Storm (wet surfaces and random lightning strikes)
Lingering Ghosts (act out some story moment silently)
Locks, Keys, and Attention
Each of the above elements exist for a specific purpose. That purpose is either gating progression via lock and key mechanics (such as an Altar blocking off a part of the map), or to draw the player’s attention towards a point of interest.
Go To Location quests have a built-in ability to help the player explore the map. Each of these should bring the player closer to the next part of the game, most likely just drawing them outwards towards the boundary walls surrounding each Act.
Location quests should NOT draw the player back towards the center spawn. Keep the player moving forward at all times, or at least moving laterally.
Find/Save NPCs quests are most beneficial if the person you save serves some function for the player, such as a merchant or maybe someone who offers temporary buffs.
Item collection quests should offer either significant reward, beyond what is findable in the wild, or should unlock some gate to allow forward progress.
Non-quest events can’t be locks, but they can be keys. The herd of monsters crossing your path might hold the material you need for a shrine, or the weather system causing the storm might offer the source for the lightning you need to create the right key.
When the above quests are not directly related to outward progress, they should be drawing your attention to something that is. Location quests should mostly move you towards points of interest like towns or bosses. NPCs that you save should either be beneficial to you directly, or they can be used to tell you about the nearby town, even offering you directions.
Directing player attention towards the useful points of interest is an essential aspect of open world design. Every single element must reinforce these points of interest over and over again, piquing player curiosity until they finally decide to investigate. Then those points can be used as the home base for more extravagant, hand-crafted sequences.