Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
November 1, 2014
arrowPress Releases
November 1, 2014
PR Newswire
View All
View All     Submit Event





If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 
Un-pro-cedural Generation
by Enrique Dryere on 04/25/14 02:08:00 pm   Featured Blogs

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

 

Procedural generation is the cornerstone of roguelike games and promisor of great things! Randomly creating the game world from a set of coded instructions can lead to nearly infinite possibilities. You can change the layout of a level, spawn different enemies, drop different loot; you can basically create a whole universe, as promised by games like No Man’s Sky and Limit Theory.

Our last game, Ring Runner, had procedural background generation that could produce over 2.4 billion unique, spacey backgrounds with planets, nebulae, and stars. But if you’ve played Ring Runner as much as I have, some of the settings might start looking a little familiar. That’s because although countless microvariations are present, the macrovariations are far more limited. Maybe the nebula is swept in a slightly different way, or the number of stars is different, or that planet back there has an extra moon, but to my simple human brain, it may as well be a background I’ve seen before.

Blinded by the noise!

Static is one of the simplest graphical representations of the effects of randomization.

Can you spot the differences in these two images? But more importantly, do you care?

We can get a bit more sophisticated with Perlin noise.

Now the differences become more obvious, but pretty soon, they all start running together.

In essence, randomization can lead to a vague sameness when repeatedly executed. In its current level of sophistication, procedural generation also has problems creating truly compelling new situations or occurrences. I might find myself slightly underwhelmed when I visit planet RGX-YB56-9er and discover that it has a slightly different concentration of resource Scrotanium 5-B2 when compared to its neighbor.

I’m not the first to point out this problem with procedural generation, and it’s a major concern when developing a game like Popup Dungeon, which relies heavily upon procedural generation.

So what are we doing about it?

Well, first of all, microvariations are good at keeping things unpredictable. But new level layouts, loot, and enemy deployment only keep things fresh for so long. After a while, we encounter the same problem as with the Perlin noise, and even though you might be able to point out the differences of every run, you may not find them compelling.

This is why macrovariations are essential. One of the things that makes Binding of Isaac such a popular game is that each run can be radically different depending on which items drop. These are macrovariations, big differences that you can actually talk about after a run.

You may’ve heard a friend say something like, “dude… (yes, your friends begin every sentence with “dude,” sorry, don’t get mad at me if you don’t like it, find different friends!) you remember that run where I got the helmet that made me invulnerable to slashing damage and we totally owned that minotaur boss?”  Whereas, it’s less likely that he’d say, “dude… you remember when we did that run where there were 3 goblins instead of 4, but one of them was like 3 tiles over to the right and another was behind a barrel?”

One of the best aspects of roguelike games is that, since every run is self-contained, rewards and gear can come fast and hard. Players can earn game-changing items and weapons around every corner, because the next turn might be their last. One of our goals is to ensure that Popup Dungeon’s gear has bold effects that go far beyond the realm of +1 AC.

Another way we’re looking to keep every run significantly different is with our Portals of Fate system. These optional portals present high-risk, high-reward opportunities. Step through and you might find a treasure hoard, a vending machine room, an extra-tough boss battle, a whole other dungeon level, or a room of wall-to-wall minotaurs!

And finally we come to the titular element of our efforts to keep Popup Dungeon exciting for years to come, something we’re calling un-pro-cedural generation. And what is un-pro-cedural generation? It’s user-generated content! Get it? Un-pro-cedural. Alright so maybe the name is kind of lame, but the possibilities aren’t! Popup Dungeon has many ways of seamlessly introducing user-generated content into the game.

For instance, we have the option to automatically download a selection of user-generated enemies each run, so you really won’t know what lurks in the dark: a rogue animatronic pirate, shirtless Vladimir Putin, a rabbit with big pointy teeth… the possibilities are only limited by human imagination. Afterwards, you can decide whether or not you’d like to keep them in your own library.

Popup Dungeon also makes creating any character you can imagine easy. They can use any ability or weapon you’d like, so you can form an entirely new party every time if you wanted.

And if that’s still not enough, you can have a friend (preferably not that guy that’s always starting sentences with “dude”) assume the role of Dungeon Master, allowing them to control enemies, adjust level parameters, and affect the course of a run with special “DM” abilities.

It’s our greatest hope that this effervescent blend of digital and human creativity will lead to dangerous amounts of replayability.

If some of this dungeon-talk stokes your flames, you can get involved in the development process and support us on Kickstarter.

And a big thanks to Fabio Santana and Steve Tom Sawyer for featuring this article in Revuelabs as well!


Related Jobs

Rensselaer Polytechnic Institute
Rensselaer Polytechnic Institute — Troy, New York, United States
[10.31.14]

Assistant Professor in Music and Media
The College of New Jersey
The College of New Jersey — Ewing, New Jersey, United States
[10.31.14]

Assistant Professor - Interactive Multi Media - Tenure Track
Next Games
Next Games — Helsinki, Finland
[10.31.14]

Senior Level Designer
Magic Leap, Inc.
Magic Leap, Inc. — Wellington, New Zealand
[10.30.14]

Level Designer






Comments


Daneel Filimonov
profile image
Good stuff. I definitely think macro-randomness is the way to go. Adding additional variables (to be randomized separately) definitely makes it even better. One thing I noticed in some games that use randomization in these terms is that it's mostly aesthetic randomness rather than game-changing randomness. I think GTA: VC's "chaos %" (http://www.twitch.tv/adam_ak/c/3027448) challenge [a community challenge where random things happen while you try to speedrun or even just finish the game] is a good example of this game-changing randomness that truly is chaotic, yet somewhat possible to overcome. Instead of basing the game off the original mechanics intended, perhaps make the intended mechanics be randomized and chaotic at their core? There may be obvious drawbacks to this such as being completely impossible or incredibly easy, but those are what make such a thing randomized in the first place. Just my 2 cents :)

Kenneth Blaney
profile image
This idea of macro-random vs micro-random is intimately related to a very real area of modern research in dynamical systems as related to the idea of emergent behavior. MIT's open course in Differential Equations may help your current and future work here... especially in terms of being able to model the randomness and thus properly balance it (remove completely unfair yet still uninteresting situations) without spending thousands of hours testing and implementing a number of kludges.

http://ocw.mit.edu/courses/mathematics/18-03-differential-equatio
ns-spring-2010/


none
 
Comment: