Devs weigh in on the best ways to use (but not abuse) procedural generation

March 12, 2018
Devs weigh in on the best ways to use (but not abuse) procedural generation
Game Developer logo in a gray background | Game Developer

Like so much in game dev, the decision to use procedural generation in your game is a double-edged sword.

While it provides a theoretically unlimited amount of content, you sacrifice the advantages of your game being bespoke and hand-crafted.

The goal, then, is to craft tools that can turn out procedural content in near infinite quantities and configurations while making that content feel as close to homemade as possible.

To explore some different approaches to that problem, Gamasutra reached out to a number of devs with experience working with procedural tools and asked about how they thought about different methods of content generation, and how they avoid making procedural content that feels banal and recycled. 

Why procedural content?

First and most obvious is the question of why choose procedural content in the first place. For Kitfox Games' Tanya X. Short, co-editor of the book Procedural Generation in Video Games, the answer is simple — it’s just more interesting, it’s a way to build something that even its creator doesn’t fully recognize.

“Procedural content and handmade content each have their own strengths and weaknesses. To me, the main difference is that I enjoy creating procedural content far more, as a designer, because my creation has more opportunities to surprise me.”

 

"Most newbies in procedural generation are afraid of chaos and random nonsense, when what they should be worried about is generating too much samey, boring blandness."

For Justin Ma of Subset Games, who utilizes procedural content both in their breakout hit FTL as well as their new title Into the Breach, it’s not necessary to exclusively choose one or another, either procedural or handmade.

“Both approaches to content creation have a place in the games world and both can lead to great results if executed well,” Ma says. “Speaking as a player of games, I am generally less interested in completely linear games that test if you can achieve the goals laid forth by a designer exactly how they intended you to play.  I'm much more interested in exploring dynamic systems that give the player a lot of leeway to express themselves.  However the most compelling games to me often use both procedural and handmade content.”

The key focus is always to ensure that at the end you have a product that’s engaging and fun, above all other considerations; procedural content, properly deployed, can help with that.

“You COULD simulate complex procedural systems that are amazing from a technical perspective, but if they're not aiding in making the game enjoyable, it's kind of a waste.  For example, we found that heavily restricting the procedural generated elements was necessary to make Into the Breach's battles less frustrating. Instead, we relied on creating simple mechanics that can interact with each other in a variety of interesting and dynamic ways.”

That solution is a perfect illustration of how bespoke and randomly generated content aren’t necessarily oppositional, and can actually be used to amplify each other’s strengths.

"With Into the Breach we found that the amount of fun you'd have with the game was highly dependent on where enemies stood in relation to their environment.  If an enemy is in a corner attacking a building, it's much more likely that you'll be unable to neutralize the threat without causing collateral damage to the buildings," continues Ma. 

"This feeling of having no potential solution was unacceptable to us so it became clear that we would need to create environments that would minimize the chances of this happening. The types of problematic terrain configurations was quite varied so we eventually decided that we could not rely on procedural generation of maps.  Instead we opted to manually design the basic layout of each map and use procedural generation for less important aspects of maps (such as forests and sand locations) as well as elements that were unique to specific missions (such as where key structures were spawned).  The result was a lot of variety of maps while avoiding problematic layouts as much as possible - however if you play enough you will likely start recognizing key features.”

Zabir Hoque, an engineer at System Era Softworks whose 2016 release Astroneer leans heavily on procedurally generated elements, agrees that the best results are often produced when procedural and bespoke content is married together.

“Generally, handmade content allows for a level of polish that is very hard to replicate with an entirely procedural system,” Hoque says. “The goal with procedural content is to provide novelty, but we want some level of familiarity so the player isn't just experiencing chaos. Artists and designers can be extremely convincing, and building procedural systems that can match that level of care and quality can be quite hard. That being said, having procedural systems enables scenarios that would otherwise be impossible - for instance, in the case of Astroneer, creating varying game planets that provide alternate experiences each play through.”

In generating the landscapes of Astroneer, Hoque and his team use handmade assets as landmarks to break up procedural content and make the whole seem less random and unfamiliar. They treat these handmade pieces as having an “area of influence” that extends around them into the procedural content and influences it in terms of player experience. For Hoque, building procedural tools isn’t just a way to save labor or reduce the amount of artistic content required to build a game; quite the contrary, it’s a way to empower artists.

“From a technical side I think the most important thing to consider when building procedural systems is how to allow for artistic control at various authoring levels,” Hoque explains. “You want to allow for authoring a rule set for general use cases, and then provide enough vectors of configuration so users can exercise artistic control when needed.“

And Hoque echoes Ma’s sentiments about ensuring that the final product is entertaining and enjoyable, about serving the player first.

“With our terrain system, we could just use Perlin noise everywhere in the terrain with random values and say ‘Look! It’s different every time!’ but this is what leads to the feeling of bland repetition. Instead, we try to think of how the player will play the game and when they’ll seek out novelty, and that is where we try to introduce variation.”

Putting procedural content to work

Once you have landed on procedural generation, the challenge becomes masking it’s randomly crafted nature as much as possible, or unifying it with handmade assets.

“Honestly, there are so many considerations it's hard to sum up,” Short says. “Basically, most newbies in procedural generation are afraid of chaos and random nonsense, when what they should be worried about is generating too much samey, boring blandness.”

Short plans to address this very issue in her GDC talk on March 22nd, where she’ll refer to the work of designers like Dr. Emily Short (who develops middleware artificial intelligence and security solutions at Spirit AI) and Jason Grinblat (of Caves of Qud fame).

 

"It's a bit pretentious to call your algorithm a co-author, but it's also extremely true, because often your A.I. friend will surprise you with the outputs, in both good and bad ways. It's the joy and the horror of the medium."

“It's a scary, giant topic that I don't think anyone has solved, so I hope nobody in the audience brings tomatoes. But as a quick summary, I recommend first analyzing your system inputs AND outputs for orthogonality — the less overlapping your different modular pieces and systems can be, and the less overlapping their expressions can be, not only are they more likely to be coherent, but also the more interesting your potential user experience will be.”

Short is also quick to point out that it’s often more important that you design intelligent systems to link and organize your content than it is to agonize over the content itself.

She emphasizes the “high value in writers creating a higher order of meaning that correlates data according to themes. It's common to carefully prune your molecules, but less common to actually give those molecules alignments, so that they're more or less likely to find each other.”

By way of example, Short talks about creating tools to define a character’s job, drawing on and arranging a matrix of data points in logical ways.

“The systems therein invent new organizations or symbology or founding myths on the fly, in order to inform the occupation. But rather than just rolling dice and smooshing 100 random things together, it would be more interesting for players if you first picked an archetype for the character, according to some logic of your universe -- perhaps according to playing card suits, say, Hearts, Spades, Diamonds, and Clubs," Short says. 

Tags:

No tags.

JikGuard.com, a high-tech security service provider focusing on game protection and anti-cheat, is committed to helping game companies solve the problem of cheats and hacks, and providing deeply integrated encryption protection solutions for games.

Explore Features>>