Jim Whitehead: Infinite Games: Procedural Content in Game Design
Jim Whitehead: Infinite Games: Procedural Content in Game Design
Jim Whitehead: Infinite Games: Procedural Content in Game Design
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Inf<strong>in</strong>ite</strong> <strong><strong>Game</strong>s</strong>: <strong>Procedural</strong><br />
<strong>Content</strong> <strong>in</strong> <strong>Game</strong> <strong>Design</strong><br />
How procedural content generation enhances our ability to<br />
perform level design, and creates new game design potentials.<br />
<strong>Jim</strong> <strong>Whitehead</strong><br />
Augmented <strong>Design</strong> Laboratory // Center for <strong><strong>Game</strong>s</strong> and Playable Media<br />
http://games.soe.ucsc.edu/adl // http://games.soe.ucsc.edu<br />
Professor and Chair, Computer Science
Computers today can create and<br />
manipulate astonish<strong>in</strong>gly complex<br />
shapes and patterns.<br />
This makes it possible for computers to<br />
be creative, either solo, or <strong>in</strong><br />
collaboration with human artists.
Art, virtual worlds, computer games:<br />
All of these k<strong>in</strong>ds of content have been<br />
created by computer algorithms.<br />
<strong>Procedural</strong> content generation:<br />
The use of computer algorithms to create<br />
novel content.<br />
What are some examples?
<strong>Procedural</strong> content generation of artwork
<strong>Procedural</strong> content generation of<br />
virtual worlds and cities
<strong>Procedural</strong> content generation of<br />
game content and complete games
Our research focuses on procedural content<br />
generation <strong>in</strong> two ways:<br />
Novel author<strong>in</strong>g tools that explore how humans<br />
and computers can collaboratively create game<br />
levels<br />
<strong><strong>Game</strong>s</strong> where procedural content generation is<br />
a core part of the gameplay loop<br />
Let’s start with an analogy…
But, I don’t know how to design a<br />
p<strong>in</strong>ball game!<br />
Never m<strong>in</strong>d, looks easy.<br />
Let’s go!
A ball.<br />
Yeah, good idea.<br />
P<strong>in</strong>ball games need a ball.
Flippers!<br />
P<strong>in</strong>ball games always have those.
Plunger!<br />
Gotta have one...
Those round th<strong>in</strong>gs that go “ka‐<br />
ch<strong>in</strong>g, ka‐ch<strong>in</strong>g”, yeah!<br />
And, some of those triangular th<strong>in</strong>gs<br />
that bounce the ball.<br />
While we’re at it, make the ball stay<br />
<strong>in</strong> play more.<br />
Yeah, all that stuff, toss it <strong>in</strong>. More!
Need to make the ball do more, be<br />
more active.<br />
How do I do that?<br />
I dunno.<br />
Add more of everyth<strong>in</strong>g!
Hey, not bad!<br />
But also, not great.<br />
How could I make this better?
Mixed <strong>in</strong>itiative<br />
First the Human designer takes a turn<br />
Then the computer takes its turn<br />
A design collaboration
Tanagra<br />
Mixed‐<strong>in</strong>itiative level design<br />
Platform games
•<br />
•<br />
•<br />
Simple rules<br />
–<br />
–<br />
–<br />
Run, jump<br />
Collect items<br />
Get to the goal<br />
Complexity<br />
–<br />
–<br />
–<br />
Dexterity challenge<br />
F<strong>in</strong>d secret areas<br />
F<strong>in</strong>ish levels quickly<br />
Focus <strong><strong>Game</strong>s</strong><br />
–<br />
–<br />
–<br />
Super Mario World<br />
Donkey Kong Country 2<br />
Sonic the Hedgehog<br />
2D PLATFORMERS<br />
Super Mario World,<br />
N<strong>in</strong>tendo<br />
Sonic the Hedgehog,<br />
N<strong>in</strong>tendo<br />
Donkey Kong Country 2,<br />
N<strong>in</strong>tendo
•<br />
•<br />
•<br />
•<br />
•<br />
Platforms<br />
– Player runs along them.<br />
Obstacles<br />
– Cause damage to player.<br />
Collectible Items<br />
– Provide reward to player.<br />
Triggers<br />
– Cause change <strong>in</strong> level.<br />
Movement Aids<br />
– Help player through the level.<br />
LEVEL COMPONENTS<br />
Super Mario World,<br />
N<strong>in</strong>tendo<br />
Sonic the Hedgehog 2,<br />
SEGA<br />
Yoshi’s Island DS,<br />
N<strong>in</strong>tendo<br />
New Super Mario<br />
Bros., N<strong>in</strong>tendo<br />
Yoshi’s Island DS,<br />
N<strong>in</strong>tendo
Updated Level<br />
TANAGRA ARCHITECTURE<br />
ABL Choco<br />
Level Structure Constra<strong>in</strong>ts<br />
GUI<br />
Solution<br />
Geometry<br />
Pattern Library
What if players could play a procedural<br />
generator?<br />
What k<strong>in</strong>d of game design potential does<br />
that create?
Consider a platform game<br />
Levels generated procedurally and automatically<br />
Player actions <strong>in</strong>‐game affect the generator<br />
The generator becomes part of the gameplay loop
ENDLESS WEB
THE WEB<br />
Each axis is a specific challenge type and is related to a<br />
specific fear
DREAMER IN THE WEB<br />
There are six dreamers, each with a separate nightmare<br />
located <strong>in</strong> dreamweb space.
TUNING PORTALS
Human designer<br />
+ procedural content generation<br />
= TANAGRA<br />
Human player<br />
+ procedural content generation<br />
= ENDLESS WEB