Welcome to week 2 of development diaries; this week, I’ll be explaining the biggest aspect of procedural generation in Voyageur, the generated prose.
The first thing that went into the design of Voyageur was the procedurally-generated universe. Procedural generation has been a tradition in space exploration games since the original Elite, but Voyageur is a very different take on it. We’re generating prose, first of all; creating impressions of the worlds you visit by recombining text. But that prose reflects a model of the world that determines which stories and items you find on a planet. Let me give you this week’s procedural world early:
Your ship alights ungainly among tall mangroves that obscure the planet’s marshy surface. You disembark into a small but vivid settlement of yurts and tents, some of which are large and built-up enough to seem more like two-story houses. Gengineered and augmented iguanas roam the pavement, performing some unknown public function. You pass by an Orange Kupol fronted with tall windows that let in the sunlight; soft chanting comes from inside it.
I just pulled this description out by running some of the current game code; let me dissect it:
This isn’t necessarily complete; I know from my planet-generator test output that this planet has a mining economy, for instance, and the description doesn’t bring that up – please note that the content in the current game build is still quite limited, and prose generator is still being gradually improved.
Voyageur is about distinct cultures; the worlds you visit are defined by the people you find there and the societies they have built. When the game generates a planet, the text that it uses to describe that world is reflected in the game elements you encounter there. Frontier worlds have different economies, for instance, and many stories are tied to alignments.
Join me next week when I explain what the alignments are.