Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Pursuing elegance


Published on

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

  • Be the first to comment

Pursuing elegance

  1. 1. Any intelligent fool can makethings bigger, more complex, andmore violent. It takes a touch ofgenius – and a lot of courage – to move in the opposite direction. E.F.Schumacher, 1973
  2. 2. Pursuing EleganceSimplicity, Complexity and the Creative ProcessJoel BurgessBethesda Game Studios
  3. 3. simplicity.
  4. 4. “The poor architect succumbs to every temptation and the good one resists it.” Ludwig Wittgenstein
  5. 5. Developers are Problem-Solvers● Long-term Appeal of Development● Solving Imaginary Problems● Pride in Hard Work and Cleverness● …both of which are largely irrelevant
  6. 6. (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
  7. 7. Studio Culture “We can do anything, but we can’t do everything.”● Ambition● Compromise● Everyone Is Accountable
  8. 8. The Idealist The Realist• Ambitious Ideas Be Of Two Time Conscious • The “Right Way” Perspective • Fears Not Scope Minds Expedient 
  9. 9. in practice.
  10. 10. Loopback Layouts Exit “Boss” 1-way drop “Boss”1-way drop Entrance Entrance/Exit
  11. 11. Unexpected Circumstances I go where I please.
  12. 12. Asking “So What?”● Usually the more Ideal Solution ● Greater Player Expression● Doing Nothing is Efficient ● Easier than any alternative 100% of the time
  13. 13. Less Work! BetterExperience!
  14. 14. Radiant Story● Broad Data Awareness● Semi-Procedural Experiences
  15. 15. The Radiant Assassin● Successful Use of Story System● Appears If: ● Player Level >= 10 ● Player is not Dark Brotherhood Member
  16. 16. Mistaken Possibility ? Identity SpaceAuthored Story ? ? ? The Jarl An Assassin Purchased was sent to Romance Political The Contract kill me! ? ? ? ? ? ? Revenge
  17. 17. The Headless Horseman
  18. 18. Body Slot Ears Slot Hair Slot Head Slot Circlet Slot
  19. 19. 15-Minute Proofs● Explore Risky Ideas● Save Time in Long Run● Especially Useful w/Multiple Fixes
  20. 20. scripting.
  21. 21. 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 FALSE endIfendFunction
  22. 22. if Game.GetPlayer().GetItemCount(pickaxe01) > 0if Game.GetPlayer().GetItemCount(pickaxe01) > 0 ORGame.GetPlayer().GetItemCount(pickaxe02) > 0if Game.GetPlayer().GetItemCount(pickaxe01) > 0 ORGame.GetPlayer().GetItemCount(pickaxe02) > 0 ORGame.GetPlayer().GetItemCount(pickaxe03) > 0
  23. 23. 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 FALSE endIfendFunction
  24. 24. Barred Doors This door is You must barred the raise from bar to open the other This door is this door. side. barred from the other side. Toggle bar
  25. 25. if barred == true && actor == game.getPlayer() if actor.getDistance(Door) < actor.getDistance(LockBar) ; I cannot be opened from this side! else ; player must be on the "right" side endif
  26. 26. Scripting Literacy● 60+ Years of Shared Knowledge● Readable Code is Good Code● Logical Design is Universal● Designers & Coders – Unite!
  27. 27. complexity.
  28. 28. Occam’s Razor
  29. 29. Simple Complex
  30. 30. Simple Direct Robust Complex
  31. 31. Critters
  32. 32. Critter Feature Set● Limited Environmental Awareness● Procedural Movement● Interactive (Damage/Collection)
  33. 33. Considering The Alternative Fully Scripted Vs Canned Art
  34. 34. Justifying Critter Complexity● Pioneer Test of Scripting System● Richer Player Experience● Repetition Of System ● Player Experience ● Workflow
  35. 35. Artist Artist Artist Artist Artist Artist Artist Artist Artist Artist Artist ArtistImplementers Designer Artist Artist Artist Artist Artist Artist Artist Artist Designer Programmer Designer Designer Users Designer Designer Programmer Designer Designer Designer Designer
  36. 36. process.
  37. 37. Direct Elegant Robust
  38. 38. Elegance● Merges Best of Both Worlds● Always Optimal● In reality: Usually Unavailable
  39. 39. Pursuing Elegance● No Direct Path Available● Disguised as Compromise● Revealed Through Process
  40. 40. “Write with the door closed, rewrite with the door open.” Stephen King, On Writing
  41. 41. The Creative Cycle● Begin Idealist, End Realist Pre-Production Content Lock Initial Layout Final Iteration 15-Min Proof Implementation
  42. 42. ●“You have to practiceImprovisation, let no one kid you about it!” ● Art Tatum
  43. 43. Thanks for ListeningQuestions/feedback?