Thursday 2 February 2012

Fragile Worlds

Why do certain programmers - myself included - keep returning to procedural content generation in games?

It's so easy to get it wrong. Too homogeneous, too random, too formulaic... humans seem to be wired for pattern recognition, and most procedural content consists of layered patterns. Even worse, it sometimes gets used in games where we perceive a narrative bent, games where there is an overarching reason why the world is the way it is... but the why of such generators is always 'because Perlin' (or whatever). We can layer procedural details over a narrative world, but unless they remain harmless, forgettable greebles attached to the background or strictly bounded by the requirements of the story, the tension between that story and random numbers can irritate.

I think we've also gotten used to a small army of architects and landscape designers marching just ahead of our progress through game worlds, artfully arranging every detail where it matters and gently eliding where it does not. The generators do not care. They may produce breathtaking scenes, as nature is wont to do, but equally produce a hodgepodge of clutter and boring expanse. Worse, they might have the audacity to produce these at exactly the wrong time, leading us away from the golden path through the game. The horror, not only do we have choice in where to go rather than marching through a linear series of cutscenes and set-piece battles, we might not even have a flashing neon marker to follow when we wish to rejoin the railroad plot!

So that's why we shouldn't use them, except as a time-saver for little, tedious details that an artist or designer would be wasted upon.

Except.

What such generation produces, at least to a good approximation, is a unique world. As mentioned, the massively chaotic systems of the real world are quite capable of creating something inspiring, terrifying, engaging, and explorable. We're aware on some levels that this world is all we've got, for the span we get to walk upon it. Whether this remains true, for now I think that the worlds which are unique and fragile resonate the most with us.

Roguelikes get brought up often in discussions concerning PCG, along with the hazy nimbus of somewhat similar games. These are important not just because they operate at a level of detail which we're happy to accept procedural content, where we're free to elaborate upon it internally (of course all these corridors aren't alike! They're just rendered with the same ASCII characters, despite being replete with details and variations that conveniently use no disk space or polygon budget), but also because of the permadeath mechanic. It makes everything so much more interesting if you know that not only are you breaking new ground, but that something wonderful might be around the very next corner that you never, ever get to see because you just died to a pitfall trap. And along with your character, the world is gone. The new one will be broadly similar of course, but you'll never find out what was around that corner. Instead, you get a universe of fresh new corners, that you might die before you have the chance to peek around them.

Unless you savescum. We don't discuss such perverse habits in polite company.



This rant dates from sometime in the middle of last year, when I was exceptionally bitter about some linear game or other. Skyrim has once again struck this nerve, at once hurling me into a wide open world (woo!) and poorly designed (if very, very pretty) linear dungeons (boo!). Many games do offer very compelling procedural worlds, roguelikes not least of them. Minecraft and Terraria leap to mind as in addition to a large and potentially interesting random world, they offer huge player agency in effecting changes to those worlds. It's a potent mix.

So, this is maybe a tad angrier than I feel is appropriate right now, but it was mostly complete. And I still feel strongly that fragile gaming experiences, unique procedural worlds and the divisive permadeath mechanic all have their places.

No comments: