pursuing elegance

46
Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius – and a lot of courage – to move in the opposite direction. E.F.Schumacher, 1973

Upload: joel-burgess

Post on 18-Nov-2014

1.118 views

Category:

Design


4 download

DESCRIPTION

Slides from GDC2012 Level Design in a Day - Joel Burgess session on pursuing elegance as a game developer. Full talk transcript is available at www.joelburgess.com

TRANSCRIPT

Page 1: Pursuing elegance

Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius – and a lot of courage – to move in the opposite direction.

E.F.Schumacher, 1973

Page 2: Pursuing elegance

Pursuing EleganceSimplicity, Complexity and the Creative Process

Joel BurgessBethesda Game Studios

Page 3: Pursuing elegance

simplicity.

simplicity.

Page 4: Pursuing elegance

“The poor architect succumbs to every temptation and the

good one resists it.”

Ludwig Wittgenstein

Page 5: Pursuing elegance

Developers are Problem-Solvers

●Long-term Appeal of Development●Solving Imaginary Problems●Pride in Hard Work and Cleverness●…both of which are largely irrelevant

Page 6: Pursuing elegance

(a somewhat large videogame)

●Full Scale Production: < 3 years●Team Size: 90+ Developers●Outsourcing: Limited●Level Design: 300+ Locations / 8 LDs●Hit Ship Date – No Delays

Page 7: Pursuing elegance

Studio Culture“We can do anything, but we

can’t do everything.”●Ambition●Compromise●Everyone Is Accountable

Page 8: Pursuing elegance

Be Of Two Minds

The Idealist

• Ambitious Ideas• The “Right

Way”• Fears Not Scope

The Realist

Time Conscious ŸPerspective Ÿ

Expedient Ÿ

Page 9: Pursuing elegance

in practice.

in practice.

Page 10: Pursuing elegance

Loopback Layouts

1-way drop

u“Boss”

Entrance/Exit

“Boss”u1-way drop

Exit

Entrance

Page 11: Pursuing elegance

Unexpected CircumstancesI go whereI please.

Page 12: Pursuing elegance

Asking “So What?”

●Usually the more Ideal Solution● Greater Player Expression

●Doing Nothing is Efficient● Easier than any alternative 100% of the time

Page 13: Pursuing elegance

Better Experience!

Less Work!

Page 14: Pursuing elegance

Radiant Story

●Broad Data Awareness●Semi-Procedural Experiences

Page 15: Pursuing elegance

The Radiant Assassin

●Successful Use of Story System●Appears If:

● Player Level >= 10● Player is not Dark Brotherhood Member

Page 16: Pursuing elegance

PossibilitySpace

An Assassin was sent to

kill me!

AuthoredStory

MistakenIdentity

Revenge

Political Romance

?

?

?

?

?

?

??

?

?

The JarlPurchased

The Contract

Page 17: Pursuing elegance
Page 18: Pursuing elegance

The Headless Horseman

Page 19: Pursuing elegance

Body Slot

Head Slot

Hair Slot

Ears Slot

Circlet Slot

Page 20: Pursuing elegance

15-Minute Proofs

●Explore Risky Ideas●Save Time in Long Run●Especially Useful w/Multiple Fixes

Page 21: Pursuing elegance

scripting.

scripting.

Page 22: Pursuing elegance

●Bug Report:● Player cannot mine ore w/unique pickaxe

Page 23: Pursuing elegance

bool function playerHasTools()if Game.GetPlayer().GetItemCount(pickaxe01) > 0

; player has a pickaxe. Return true. return TRUE

Else; player has no pickaxe. Return false.

return FALSEendIf

endFunction

Page 24: Pursuing elegance

if Game.GetPlayer().GetItemCount(pickaxe01) > 0

if Game.GetPlayer().GetItemCount(pickaxe01) > 0OR

Game.GetPlayer().GetItemCount(pickaxe02) > 0

if Game.GetPlayer().GetItemCount(pickaxe01) > 0OR

Game.GetPlayer().GetItemCount(pickaxe02) > 0OR

Game.GetPlayer().GetItemCount(pickaxe03) > 0

Page 25: Pursuing elegance

bool function playerHasTools()if Game.GetPlayer().GetItemCount(mineOreToolsList) > 0

; player has an item in tools list. Return true. return TRUE

Else; player has no items in tools list. Return false.

return FALSEendIf

endFunction

Page 26: Pursuing elegance

Barred Doors

Toggle bar

This door is barred from

the other side.

You must raise the

bar to open this door.

This door is barred from

the other side.

Page 27: Pursuing elegance

if barred == true && actor == game.getPlayer()if actor.getDistance(Door) < actor.getDistance(LockBar)

; I cannot be opened from this side! barredMSG.show()

else; player must be on the "right" sideUnlockMeMSG.show()

endif

Page 28: Pursuing elegance

Scripting Literacy

●60+ Years of Shared Knowledge●Readable Code is Good Code●Logical Design is Universal

●Designers & Coders – Unite!

Page 29: Pursuing elegance

complexity.

complexity.

Page 30: Pursuing elegance

Occam’s Razor

Page 31: Pursuing elegance

ComplexSimple

Page 32: Pursuing elegance

RobustSimple ComplexDirect

Page 33: Pursuing elegance

Critters

Page 34: Pursuing elegance

Critter Feature Set

●Limited Environmental Awareness●Procedural Movement●Interactive (Damage/Collection)

Page 35: Pursuing elegance

Considering The Alternative

Fully ScriptedVs

Canned Art

Page 36: Pursuing elegance

Justifying Critter Complexity

●Pioneer Test of Scripting System●Richer Player Experience●Repetition Of System

● Player Experience● Workflow

Page 37: Pursuing elegance

Programmer

Designer

Artist

Artist

Artist

Programmer

Designer

Artist

Artist

Artist

Designer

Designer

Designer

Designer

Artist

Artist

Artist

Artist

Artist

Artist

Artist

Artist

Designer

Designer

Designer

Designer

Artist

Artist

Artist

Artist

Artist

ArtistIm

ple

men

ters

Use

rs

Page 38: Pursuing elegance

process.

process.

Page 39: Pursuing elegance

Robust

Direct

Elegant

Page 40: Pursuing elegance

Elegance

●Merges Best of Both Worlds●Always Optimal

●In reality: Usually Unavailable

Page 41: Pursuing elegance

Pursuing Elegance

●No Direct Path Available●Disguised as Compromise●Revealed Through Process

Page 42: Pursuing elegance

“Write with the door closed, rewrite with the door open.”

Stephen King, On Writing

Page 43: Pursuing elegance

15-Min Proof Implementation

Initial Layout Final Iteration

The Creative Cycle

●Begin Idealist, End Realist

Pre-Production Content Lock

Page 44: Pursuing elegance
Page 45: Pursuing elegance

●“You have to practice Improvisation, let no one kid

you about it!”

●Art Tatum

Page 46: Pursuing elegance

Thanks for Listening

Questions/[email protected]