(This is an open reply to Michael Cook's introspective blog on Procedural Generation, located here)
As game developers it is our job to stare, unblinking, into the gaping maw of The Public. We pour our very hearts and souls into the beast in the hope of placating it, even momentarily. Attendants line up to sacrifice their careers and relationships at its altar, some desirous of its approval - others simply have no other way to quell the burning desire in their heart for creativity.
The reduction of all our experinces into numbers is the dream of many data scientists and engineers. Michael's article draws our attention to another blog post, wherein the author dreams of a procedurally generated city with limitless stories to tell. Engineers and scientists are taught to ask "how can we?", and prefer to leave the "should we?" to philosophers. I intend to explore the "should we?" side of the matter in this blog.
I'm no stranger to procedural generation (though I'm absolutely standing on the shoulders of giants such as Michael and Julian), almost every personal project I've worked on features it to some exent; an earlier shelved project procedurally generated cities, crimes, and evidence chains for neverending film-noir-style gumshoe work, and Gunbuds, my current side project featuring procedural levels, started out with the idea of exposing the weapon creation algorithm to the player to make a sort of infinite crafting system. Procedural generation is "good lazy" of the highest order, but I always struggle with "why"? Spending a decade as a designer makes it hard to shake the question of "why does the player care?" from my mind.
In Gunbuds, I decided to lean into this question, which is to say that I crafted the concept such that the vastness of infinity and our inability to explore it all is part of the conflict. Though I'm pleased with the decision, it is not an honest approach at resolving the question. At some point we must acknowledge the infinitely large elephant in the room: are we making content that the player cares about?
Like any tool, procedural generation is ethically neutral; it is how we, as the wielders, use it and what our motivations are that are the heart of the matter. Too often, procedural generation is employed because a team lacks the size or time to create the requisite number of levels - or worse, they see that it's all the rage and shoehorn it in. As the old adage goes, use the right tool for the job - but also consider how the use of that tool affects the final product; procedural generation often leaves ambiguous setups and pointless variety as a sort of "tooling mark" on games that use them heavily.
Consider a game like Torchlight 2. When I played it, I paid little heed to the narrative, eager to see what level it would generate for me next. I considered the story to be inconsequential, up until the point where it ran out and I was just generating random endgame levels with no end in sight. Ironically, I now missed the structure that was provided by the story I largely ignored. The game hadn't changed the type of content it was offering me, simply the framing for that content - instead of accomplishing some story item, I was on a treadmill. I had infinity stretching out before me, and it wasn't enough.
When your waist-deep in procedural generation, it's easy enough to see an algorithmic solution - if people want more story, let's just generate more. The fallacy here is the belief that any one type of content can solve all problems if only we could generate enough of it, or find the perfect algorithm. An infinite amount of story is no more or less fulfilling than an infinite amount of levels or terrain. We must keep in mind that one of the great things about games is that, like all good things,, they come to an end.
Giving your player an infinite amount of content - without proper finite framing - denies them the satisfaction of completing the game. In avoiding the sadness that can come when completing a project, we replace it with the breathless ennui that only infinity can bring. Each level they accomplish means nothing, because there are infinitely more to be explored. Each head of the hydra that gets chopped off is replaced by an infinite number of heads. It's widely agreed that the journey is more important than the destination, but without a destination the journey is meaningless.
My intent here is not to mount a smear campaign against procedural generation - for all it's algorithmically-defined warts and scars, it can add wonderful texture to an experience. The heart of the matter is that we must provide meaning to the content, which is probably a Wicked Problem as far as algorithms are concerned. Artists and animators are not the only ones who can find themselves struggling against the unscalable walls of the uncanny valley - I firmly believe that as we strive for deeper simulation fidelity, we'll find the same valley exists for the quality of gameplay. There will be no algorithm so perfect that we won't be bound by limitations; although it is a noble task to fight against these limitations, we should also strive to experience the space those limitations define for us. As thinking and feeling humans, we should embrace our quirks and caprices - they are the ineffable qualities that forever separate us from machines.