# Level Up! (Review)
**Book:** *Level Up! The Guide to Great Video Game Design*, 2nd edition, by Scott Rogers (Wiley, April 2014, about 550 pages). The 1st edition came out in 2010.
**Author:** Scott Rogers worked as a designer on *Pac-Man World*, *God of War*, *Maximo* and *SpongeBob SquarePants* games, according to the publisher's blurb.
**Target:** the Unity links point to the tutorials in this vault (Unity 6000.5+; VR notes target 6.3 LTS). Companion to [[Game Programming Patterns (Review)]]. That book covers how to structure code; *Level Up!* covers what to design.
> [!note] Sources and honesty
> - Chapter and section titles come from the publisher tables of contents on O'Reilly Learning: [2nd edition](https://www.oreilly.com/library/view/level-up-the/9781118877197/xhtml/02_9781118877166-flast.xhtml) and [1st edition](https://www.oreilly.com/library/view/level-up-the/9780470688670/). Short "rules" quoted here (for example *"Walking is never, ever gameplay!"*) are 1st-edition section headings shown in that TOC.
> - The concept explanations are my paraphrase of what each titled section covers, plus widely repeated summaries of the book. They are not quotes, and there are no page numbers.
> - Items marked **(verify)** are things I'm recalling from secondary summaries and could not confirm against the TOC. Check them against your copy before teaching them as Rogers' exact words.
## Overall review
**Structure.** Rogers calls chapters "Levels." The 2nd edition has 18 levels plus 11 "Bonus Levels." The bonus levels are templates and lists: a one-sheet, a ten-pager, a GDD template, story genres, game genres, environments, mechanics and hazards, an enemy design template, a boss design template, a pitch deck, and a closing essay.
**Strengths**
- It is practical and template-driven. Students leave with documents they can fill in: a one-sheet, a ten-pager, a beat chart, and enemy and boss sheets.
- Each chapter ends with "Universal Truths and Clever Ideas," which are short rules you can put on a slide.
- The **3Cs** framing (Character, Camera, Controls) is the clearest way to break down "game feel" for beginners.
- It is written from the action/adventure tradition (*God of War*, *Maximo*), so combat, enemy and boss design are covered in more depth than in most design books.
**Weaknesses**
- It is genre-biased toward third-person action and platformers. Strategy, sim and narrative-game students get less.
- It is light on systems or economy math and on playtesting methods.
- The 2014 platform landscape is dated: no VR, and mobile and free-to-play as they were in 2014.
### What changed from the 1st edition (2010)
Based on the two publisher TOCs:
- **New chapter:** Level 15 "Everybody Wins: Monetization." In the 1st edition, Music, Cutscenes and "The Hard Part" are Levels 15 to 17. In the 2nd edition they become 16 to 18. Numbered references in older handouts will be off by one from Level 15 on.
- **Mobile and touch:** new sections "The Brave New World of Gaming: Mobiles, Online Distribution, and Touchscreens" (L1), "You've Got the Touch" (L7), "Creating Icons for Mobile Games" (L8), and "AR Cameras" (L6).
- **Level 4 (GDD):** steps are numbered 1 to 6 and reordered so that Gameplay Progression and the Beat Chart come *before* the full GDD. "Unique Selling Points" and "Competitive Products" are added.
- **Level 9:** adds "Foreshadowing," "Goal Setting," "Following Procedure," "Sandbox Play" and "Levels without Characters." The beat chart moves into the GDD chapter.
- **Level 10:** expanded melee sections ("Put 'Em Up!", "And a One and a Two", "The Big Finish", "Live by the Sword", "Dodging the Bullet") and "Conflict Without Combat."
- **Level 11:** adds the enemy-attribute sections ("Sizing Up the Enemy", "Bad Behavior", "How Rapid is Rapid?", "Movement Style") and "The Alphabetical Bestiary of Choices."
- **Level 13:** adds "Powering Up," "High Score," "Achievements," "Money!", "Souvenirs," bonus features and "How to Win at Losing."
- **Level 14:** adds a full multiplayer level-design workflow (plan, map, build) and "The Dirty Half Dozen."
- **Level 16:** adds "Music with Style" and "And the Beat Goes On."
- **Level 18:** adds "Who's Paying?" and "Emergent, Vertical, or Horizontal?"
## Chapter by chapter
Each chapter has a classroom-friendly explanation, the key ideas, and **In the Unity tutorials** links that show the idea implemented.
### Introduction: Press Start!
This covers who the book is for and why there is a second edition. Rogers' stance is that designers communicate ideas, and a design no one reads is useless. There are no Unity links here.
### Level 1: Welcome, N00bs!
**Ideas:** a brief history of games, genres, and the roles on a team (programmer, artist, designer, producer, tester, composer, sound designer, writer), plus the publisher-side roles.
**Classroom framing:** "Who does what?" Map each role to a Unity window: the programmer writes scripts, the artist works in Shader Graph and with sprites, the designer works with Tilemaps and ScriptableObject data, and the composer works with the Audio Mixer.
**In the Unity tutorials:**
- [[Setting Up GitHub for Unity]] and [[Connecting an Existing Unity Project to a New GitHub Repository Using GitHub Desktop]] show how a multi-role team shares one project.
- [[ScriptableObject Architecture]] shows how designers can tune data without touching code, which is the programmer/designer split in practice.
### Level 2: Ideas
**Ideas:** where ideas come from, "What do gamers want?", brainstorming, breaking writer's block, and "Why I Hate 'Fun'": "fun" is not a design goal you can specify, so describe the concrete activities instead.
**Classroom framing:** turn "it's fun" into verbs. For example, "the player *dodges*, *collects*, *upgrades*."
**In the Unity tutorials:** the small complete games are good "start from a verb" examples:
- [[Unity 6 Pong]]: *deflect*
- [[Space Invaders]]: *shoot and dodge*
- [[Horse Race Game]]: *bet and watch*
- [[Unity 2D Point-and-Click System]]: *explore and examine*
### Level 3: Writing the Story
**Ideas:** "The Triangle of Weirdness," wrapping up a story, naming the game, creating characters players care about, writing for kids, and writing for licenses.
**In the Unity tutorials:**
- [[0.Dialogue System]] and its [[5.Dialogue System Dialogue Tree Editor]] give branching dialogue, which is the delivery vehicle for characters players care about.
- [[NPCMemory.cs]] lets NPCs remember the player, which deepens character.
- [[Conversation Engine Design for Unity 6]] is a modular alternative.
- [[Spaces360 Scene Authoring Guide]] covers story told through places.
### Level 4: You Can Design a Game, but Can You Do the Paperwork?
**Ideas:** the GDD is built in steps:
1. **One-Sheet:** title, genre, platforms, target ESRB rating, story summary, gameplay, **unique selling points**, and **competitive products**.
2. **Ten-Pager:** the 1st-edition sample is laid out page by page: title, story and gameplay, game flow, characters and controls, main gameplay concepts, world, interface, mechanics and power-ups, enemies and bosses, and cutscenes, bonus material and comps. **The Rule of Threes** says to group features in threes.
3. **Gameplay Progression:** what the player can do, and when.
4. **The Beat Chart:** a table with one row per level. It lists the setting, story beat, new mechanics, enemies, power-ups and music, so you can check pacing and variety at a glance.
5. **The full GDD:** "everything is liquid," so it is a living document.
6. **Don't be a jerk:** collaborate.
**Classroom framing:** the beat chart is a spreadsheet that becomes data. Each row maps naturally to a level asset in Unity.
**In the Unity tutorials:**
- [[ScriptableObject Architecture]] lets you turn beat-chart rows into `LevelDefinition`-style assets (data containers, Step 1).
- [[Level Manager]] and [[SceneManagement in Unity 6]] give the level order the beat chart describes, using a scene list and scene handoff data.
- [[Custom Inspectors and Editor Tooling]] lets you build an editor window that shows the beat chart inside Unity.
### Level 5: The Three Cs, Part 1: Character
**Ideas:**
- Form follows function: a silhouette should communicate abilities.
- Personality.
- Games without characters, sidekicks ("We Are Not Alone") and NPCs ("Who Are the People in Your Neighborhood?").
- **Gameplay metrics:** define the character's dimensions, walk and run speeds, jump height and distance. The world is then built to those numbers, so the doors, ledges and gaps all match what the player can do.
- Covered in the TOC as well: idles ("The Art of Doing Nothing"), jumping, hoists and teeters, falling, the blob shadow as a landing aid ("Me and My Shadow"), swimming, and quadrupeds.
**Classroom framing:** "The metrics sheet comes before the level." If the jump is 2 m, every gap in the level is designed against 2 m.
**In the Unity tutorials:**
- [[Surface-Walking with an Omnidirectional Player Movement]] has a movement controller with tunable speed, gravity and jump values in Step 6, "Testing & Tuning." Those values are the metrics sheet.
- [[Unity New Input System Upgrade Tutorial]] is the input side of the same character.
- [[Car Controller]] applies metrics to a non-human "character."
- [[NavMesh in Unity 6 (AI Navigation 2.x)]] uses **Agent Types** (radius, height, step height, max slope; Step 4), which are literally character metrics. The baked NavMesh encodes where a body of that size can go.
- [[1.Stat Definitions and Base vs Derived Stats]] covers metrics as data: base stats such as move speed and jump.
- [[0.Dialogue System]] covers the NPCs in "your neighborhood."
- **Gap:** there is no dedicated character controller or metrics tutorial yet. See [[#Gaps]].
### Level 6: The Three Cs, Part 2: Camera
**Ideas:**
- Camera views: first person, third person, 2.5D, isometric, top-down, AR, and special cases.
- How much control to give the player: full, none, or sometimes.
- Shot, angle and movement guides borrowed from film.
- "Always point the camera to the objective" and "never let the character get out of the camera's sight."
- Multiplayer cameras.
**In the Unity tutorials:**
- [[Surface-Walking with an Omnidirectional Player Movement]] sets up a Cinemachine FreeLook camera in Step 3, a player-controlled third-person camera.
- [[Timeline Basics]] uses Cinemachine shots in a Timeline, which applies the shot and movement guides.
- [[Tilemaps and Tilesets]], [[Unity 6 Pong]] and [[Space Invaders]] use fixed 2D cameras, Rogers' "no camera control" case.
- [[0.Choosing a Unity Version]] and [[6.Quest 2 Input Hands and Passthrough]]: in VR, the camera *is* the player's head. That is first person with no designer control, and Rogers' rules about camera motion become comfort rules.
- [[5.Quest 2 Performance and Rendering]] covers the frame-rate budget, which is what makes that VR camera comfortable.
- **Gap:** there is no dedicated Cinemachine 3 camera-systems tutorial. See [[#Gaps]].
### Level 7: The Three Cs, Part 3: Controls
**Ideas:**
- Control mapping, including touch controls (2nd edition).
- "As the button is pressed, the action should happen" (1st-edition heading): responsiveness matters.
- Character-relative versus camera-relative movement.
- Rumble and haptics ("Shake, Rattle, and Roll").
**In the Unity tutorials:**
- [[Unity New Input System Upgrade Tutorial]] and [[Unity 6 Pong]] cover Input System action maps, which make remappable controls practical.
- [[Surface-Walking with an Omnidirectional Player Movement]] moves the player camera-relative on arbitrary surfaces.
- [[6.Quest 2 Input Hands and Passthrough]] covers VR controllers and hand tracking, with haptics as "shake, rattle and roll."
- [[Unity 2D Point-and-Click System]] is mouse or touch-style control.
### Level 8: Sign Language: HUD and Icon Design
**Ideas:**
- The HUD elements: health bar, targeting reticle, ammo, inventory, score and XP, positive messaging, radar and map, and context-sensitive prompts.
- "The Clean Screen": show only what's needed.
- Icon clarity ("KYSS = Keep Your Symbols Simple", a 1st-edition heading).
- Avoid QTE overload.
- "You should never have to press a button more than three times to reach any game screen" (1st-edition heading).
- Other screens (pause, menus), and fonts.
**In the Unity tutorials:**
- [[3.HUD and Inventory Example]] builds a health bar, score and inventory screen in UI Toolkit.
- [[4.Data Binding and Custom Controls]] covers custom HUD widgets such as gauges.
- [[5.Diegetic UI Approaches]] and [[6.Diegetic Terminal and Wrist Display]] move the HUD *into* the world, the ultimate "clean screen."
- [[8.UI Toolkit for VR]] covers HUD placement where a screen-space HUD isn't an option.
- [[6.Saving Stats and Character Sheet UI]] covers the "other screens": the character sheet.
- [[TypewriterEffect.cs]] covers text presentation.
### Level 9: Everything I Learned About Level Design, I Learned from Level 9
**Ideas:**
- **Theme and naming:** the top 10 cliché themes, and "The Name Game." Name your levels so the team can talk about them.
- **"Everything I Learned About Level Design, I Learned from Disneyland":** design levels like a theme park. Show the destination early, guide the guest with sightlines and landmarks, control pacing, and hide the "backstage." A tall landmark that pulls visitors forward is often called a **"weenie"**, a Walt Disney term that summaries of this chapter commonly cite **(verify the term is used in the book)**.
- **Foreshadowing, goal setting and procedure:** show the player the goal, then the way.
- **Re-using re-use:** building modular pieces.
- **Mapping:** the "Gary Gygax" and "Dave Arneson" memorial mapping sections are about drawing level diagrams. Rogers draws the level as a top-down diagram, then checks:
- *"Walking is never, ever gameplay!"*
- *"If it ever feels long or boring, then it is"*
- *"Every finger should have a reward at the end, even if it's just a trashcan"* (dead-end branches need a payoff)
All three are 1st-edition TOC headings.
- **Sandbox play and illusional narrative.**
- **"Gray Matters":** build gray-box levels first. *"If it looks like the player can go there, then they should be able to"* (1st-edition heading).
- **"Leave the Training Level for Last":** build the tutorial level when you know the game.
**In the Unity tutorials:**
- [[Tilemaps and Tilesets]] is the fastest gray-box to final-art pipeline in 2D. Rule Tiles are "re-using re-use," and the collision setup enforces "if it looks walkable, it is."
- [[NavMesh in Unity 6 (AI Navigation 2.x)]] and [[Navmesh (3D) in Untiy]] use a baked NavMesh as a level-diagram check: it shows where agents (and the player's metrics) can actually reach. NavMeshLinks are the "hoists and jumps" between areas.
- [[Level Manager]] and [[SceneManagement in Unity 6]] give level flow and ordering, loading screens, and starting from Bootstrap.
- [[URP Shaders and Shader Graph]] and [[HDRP Essentials]] support the theme-park idea: lighting and color used to lead the eye to the "weenie."
- [[Lighting and Baking]] is the practical GI / lightmap / probe / reflection-probe pipeline for that atmosphere (doorway sightlines, baked interiors).
- [[2.Worked Effect - Trash Can Fire]] is literally a trash-can reward at the end of a finger, and fire and smoke make a strong landmark.
- [[Spaces360 Scene Authoring Guide]] and [[Setup guide — Dialogue and Spaces 360]] cover spatial storytelling and illusional narrative in 360 tours.
- [[7.Quest 2 Worked Example Room]] is a gray-box room built at VR metrics.
### Level 10: The Elements of Combat
**Ideas:**
- Melee: attack strings and combos ("And a One and a Two," "The Big Finish").
- Weapons ("Live by the Sword"), defense, dodging and guarding.
- Shooting: "The Best Gun for You" and "Run and Gun."
- Status effects ("Not Just Shooting": *always strive to enable the player, even when you're disabling them*, a 1st-edition heading).
- Hit reactions and damage ("Where Doesn't It Hurt?").
- Death and respawn ("Death: What Is It Good For?" *You want to keep them playing*).
- "Conflict Without Combat."
**In the Unity tutorials:**
- [[5.Damage Formulas]] covers damage, defense, crits and resistances: the math behind "where does it hurt."
- [[2.Modifiers and Timed Buffs]] covers status effects (stuns, slows, buffs), with timers so a disable always ends.
- [[4.Equipment Items and Classes]] covers weapon choice ("The Best Gun for You").
- [[Space Invaders]] covers run-and-gun basics.
- [[1.Particle System Fundamentals]], [[3.Particles Spawning Particles on Contact]] and [[4.Controlling Particles from Script]] cover hit feedback ("juice"): sparks on impact through collision sub-emitters, triggered from code.
- [[Multiplayer with Netcode for GameObjects]] covers combat across the network, with a capturable flag as "conflict without combat."
### Level 11: They All Want You Dead (Enemies and Bosses)
**Ideas: enemies**
- **Form follows function:** an enemy's look should tell the player how it behaves.
- **Enemy attributes.** The 2nd-edition section titles define them as: **size** ("Sizing Up the Enemy"), **behavior** ("Bad Behavior"), **speed** ("How Rapid is Rapid?") and **movement style**. Bonus Level 8, the **Enemy Design Template**, puts these on one sheet together with attack and health. **(verify the exact template fields)**
- **Behaviors:** "The Alphabetical Bestiary of Choices" is an A-to-Z list of behaviors such as patrollers, chasers, guards, ambushers, flyers, burrowers, swarmers and splitters. **(verify; these example names are from summaries, not the TOC)** The design move is to *combine* one behavior, one movement style and one attack pattern into readable enemy types.
- "Fighting enemies is supposed to be fun!" and "Enemies should be fought, not avoided" (1st-edition headings).
- "Make the player hate their enemy."
- **Non-enemy enemies:** hazards that behave like enemies.
**Ideas: bosses**
- "How to Create the World's Greatest Boss Battle" and "Who's the Boss?"
- **Size matters**, and "Let the player administer the coup de grâce" (1st-edition heading).
- **Location, location, location:** the arena is part of the fight. Bonus Level 9 is a **Boss Design Template** (the 1st edition includes a "Boss Fight Arena" section).
- **"Why Not to Create the World's Greatest Boss Battle":** cost, and players who never see it.
**Classroom framing:** each behavior word is a state, each movement style is a NavMesh setting, and each attribute is a stat.
**In the Unity tutorials:**
- [[Enemy AI State Machine]] gives the behaviors as states: Idle, Patrol, Chase, Attack, Search and Flee, plus a transition table and a hierarchical Calm/Alert option. A "patroller" or a "guard" is just a different starting state and transition table. **Boss phases** map directly onto the hierarchical super-state idea, with one sub-machine per phase.
- [[Organic Enemy Sensing]] covers *how* an enemy notices you: vision cones with focal and peripheral zones, hearing with falloff and occlusion, awareness meters, memory and reaction delays. This makes "ambusher" or "guard" read as believable, and the reaction delay gives the player a fair window.
- [[NavMesh in Unity 6 (AI Navigation 2.x)]] covers **movement style**: agent speed, acceleration and angular speed, agent types for size (big bosses need their own agent type), area costs, and NavMeshLinks for jumpers.
- [[1.Stat Definitions and Base vs Derived Stats]] and [[5.Damage Formulas]] cover **enemy attributes as data**: health, speed and damage per enemy type.
- [[ScriptableObject Architecture]] fills in Rogers' enemy template as one asset per enemy type. Step 5 is a worked enemies, player health and HUD example, and runtime sets track the active enemies.
- [[Space Invaders]] is a classic attack and movement pattern: a marching formation that speeds up as it shrinks.
- [[Timeline Basics]] covers boss intros (see Level 17).
### Level 12: The Nuts and Bolts of Mechanics
**Ideas:**
- Mechanics versus hazards ("Holy Death Trap!"). "No dropping rocks on the player's head" (1st-edition heading) means hazards must be telegraphed.
- Timers ("Time to Die").
- Rhythm ("The Music of Mechanics"): moving platforms and traps on a readable beat.
- Blocks ("Chip Off the Old Block").
- Calm spots between challenges.
- Puzzles: "Show 'em the door and then send 'em after the key" and "No cat mustaches" (no illogical solutions; both are 1st-edition headings).
- Minigames.
- Bonus Level 7 is a big list of mechanics and hazards.
**In the Unity tutorials:**
- [[2.Worked Effect - Trash Can Fire]] is a hazard that telegraphs itself through layered fire, sparks and smoke.
- [[3.Particles Spawning Particles on Contact]] lets you visualize hazard contact.
- [[Tilemaps and Tilesets#9. Runtime tile editing|Tilemaps and Tilesets, section 9]] covers breakable blocks and doors.
- [[Unity 2D Point-and-Click System]] covers "show the door, then the key" in adventure-game puzzles.
- [[MixtureContainer]] and [[Mixer]] are a combination mechanic. **(I only checked the note names, not their contents, so verify the fit.)**
- [[Timeline Basics]] covers signals that fire on a beat, giving rhythmic hazards.
### Level 13: Now You're Playing with Power
**Ideas:**
- Power-ups ("Powering Up").
- **"Love Thy Player"**: "If it feels too long, hard, or boring, then it probably is" (1st-edition heading).
- Rewards and wealth: "Never underestimate the greed of the player" and "The best rewards are hard won" (1st-edition headings).
- **High score, achievements, money, souvenirs** (collectibles) and bonus features.
- **"How to Win at Losing":** making failure rewarding.
**In the Unity tutorials:**
- [[2.Modifiers and Timed Buffs]] covers power-ups as timed stat modifiers that add and then expire cleanly.
- [[3.Leveling and XP Curves]] covers progression rewards and the "hard-won" curve.
- [[4.Equipment Items and Classes]] covers loot.
- [[High Scores, Saves and Player Stats]]:
- Part 1, the high-score table, covers High Score.
- Part 3, player statistics and achievement hooks, covers Achievements and Souvenirs.
- Part 2, saves, covers "win at losing" because progress persists.
- [[PlayerPrefs Advanced]] and [[Custom Player Preferences User Manual]] are lightweight persistence for unlocks.
- [[3.HUD and Inventory Example]] covers positive messaging and a wealth display.
### Level 14: Multiplayer: The More the Merrier
**Ideas:**
- Player counts ("How Many Is the Right Number?").
- MMOs ("Hell Is Other People"). "Players will always do the last thing you expect… and sometimes you should let them do it" (1st-edition heading).
- **Designing multiplayer levels:** plan, map and build.
- "The Dirty Half Dozen" (2nd edition). **(verify contents; summaries describe it as six classic multiplayer map or level types)**
**In the Unity tutorials:**
- [[Multiplayer with Netcode for GameObjects]] covers:
- the host/client model
- player prefabs
- ownership (a capturable flag is a classic objective-map mechanic)
- a synced scoreboard
- testing with Multiplayer Play Mode
- Sessions + Relay
- [[Unity 6 Pong]] is local two-player.
- [[NavMesh in Unity 6 (AI Navigation 2.x)]]: bake and check sightlines and route lengths on multiplayer maps.
### Level 15: Everybody Wins: Monetization (new in 2nd edition)
**Ideas:** business models such as premium, free-to-play and in-app purchases, and ethical "something something" warnings.
**In the Unity tutorials:** none. This is out of scope for Marshall's non-commercial work. Mention it in class only.
### Level 16: Some Notes on Music (Level 15 in 1st edition)
**Ideas:**
- Music style and genre.
- "Always make the music more exciting than the action on screen" (1st-edition heading).
- Adaptive and layered music ("And the Beat Goes On").
- Sound effects as gameplay feedback ("Sounds Like a Game to Me").
**In the Unity tutorials:**
- [[Creating Audio (Tools)]] covers making SFX in Audacity and similar tools, then using them in Unity.
- [[Unity 6 Pong]] covers authentic SFX tied to events (Step 0).
- **Gap:** there is no adaptive music or Audio Mixer tutorial. See [[#Gaps]].
### Level 17: Cutscenes, or No One's Gonna Watch 'Em Anyway (Level 16 in 1st edition)
**Ideas:**
- "Can it be done in the game?" Prefer in-engine and interactive.
- "How to Write a Screenplay in Eight Easy Steps."
- "It's always better to have the player do than watch" (1st-edition heading).
- Keep them short and skippable.
**In the Unity tutorials:**
- [[Timeline Basics]] covers in-engine cutscenes with tracks and Cinemachine shots.
- Its **skip and scrub from code** section (section 5) answers "no one's gonna watch 'em." Signals (section 4) hand control back to gameplay.
- A custom fade track (section 6) covers transitions.
- [[0.Dialogue System]] and [[TypewriterEffect.cs]] give interactive, in-game "cutscenes" through dialogue.
### Level 18: And Now the Hard Part (the pitch and the business)
**Ideas:**
- "No One Cares About Your Stupid Little World": pitch the gameplay, not the lore. 1st-edition heading: *Game demo > game design document > presentation > pitch*. A playable demo beats everything.
- "Who's Paying?"
- "Video Games Is a Haaaard Business": games are made by people.
- When reality gets in the way, cut scope.
- "Emergent, Vertical, or Horizontal?" **(verify meaning; summaries tie it to the kind of content and slice you build)**
- What to do for an encore.
- Bonus Level 10 is a **High-Concept Pitch Presentation**. The 1st edition outlines the slides: cover, company profile, target specs, story, goals, gameplay summary, gameplay details, download strategy, and production specs.
**In the Unity tutorials:**
- [[Setting Up GitHub for Unity]] covers keeping a demo build versioned and shareable.
- [[4.Quest 2 Testing and Deployment]] covers sideloading a VR demo to headsets for a pitch.
- [[Level Manager]] covers a vertical-slice level sequence for a demo build.
### Bonus Levels (templates)
| Bonus Level | What it is | Unity tie-in |
|---|---|---|
| 1 One-Sheet sample | One-page concept | none (doc) |
| 2 Ten-Pager sample | Ten-page design | [[ScriptableObject Architecture]] (turn pages 8 and 9, mechanics and enemies, into assets) |
| 3 GDD template | Full outline | [[Custom Inspectors and Editor Tooling]] |
| 4 and 5 Story genres, game genres | Lists | none |
| 6 Big List of Environments | Theme ideas | [[Tilemaps and Tilesets]], [[URP Shaders and Shader Graph]] |
| 7 Mechanics and Hazards | List | [[Particle Systems and Layered Effects]] |
| 8 Enemy Design Template | Enemy sheet | [[Enemy AI State Machine]], [[Organic Enemy Sensing]], [[1.Stat Definitions and Base vs Derived Stats]] |
| 9 Boss Design Template | Boss sheet | [[Enemy AI State Machine]] (hierarchical phases) |
| 10 High-Concept Pitch | Slides | none |
| 11 "Exactly Like Making Chili" | Closing essay | none |
## Gaps
These are book concepts with no tutorial in the vault yet, each with a suggested tutorial:
1. **Character controller and gameplay metrics (L5):** "Character Controller and Metrics in Unity 6." Cover a CharacterController or Rigidbody controller with coyote time, jump buffering, a metrics ScriptableObject, a gray-box metrics gym (gap, ledge and door test pieces) and a blob shadow.
2. **Camera systems with Cinemachine 3 (L6):** "Cinemachine 3 Camera Systems." Cover first person, third-person orbit, 2.5D follow, isometric, top-down, a camera confiner, look-at objective, collision and occlusion, split-screen for multiplayer, and camera shake through the Impulse system.
3. **Audio: adaptive music and the Audio Mixer (L16):** "Adaptive Music and Audio Mixer." Cover mixer groups and snapshots, vertical layering and horizontal re-sequencing, music intensity driven by the enemy alert state, and pooled SFX.
4. **Animation and combat feel (L10):** "Animator, Combos and Hit Feedback." Cover Animator state machines for attack strings, animation events, hit-stop, hitboxes and hurtboxes, i-frames and dodge.
5. **Boss fights (L11):** "Boss Battle with Phases." Cover a hierarchical FSM per phase, arena hazards, a telegraph VFX and a Timeline intro.
6. **Level design and gray-boxing in 3D (L9):** "ProBuilder Gray-Boxing and Level Diagrams." Cover ProBuilder, landmarks ("weenies"), lighting to guide players, and a beat-chart importer.
7. **Hazards and puzzles (L12):** "Hazards, Traps and Key/Door Puzzles." Cover timing-based traps, a telegraph, lock and key data, and checkpoints.
8. **Tutorial/onboarding level (L9, "Leave the Training Level for Last"):** "Context-Sensitive Prompts and Onboarding." Cover input-glyph prompts with UI Toolkit.
9. **Monetization (L15):** intentionally skipped, since Marshall's work is non-commercial.
## Teaching notes
Each exercise is meant for a class session or a short assignment in Unity.
| Chapter | Exercise |
|---|---|
| L2 Ideas | Write five game ideas as "the player [verb]s to [goal]." Prototype one verb in 30 minutes, starting from the [[Unity 6 Pong]] project. |
| L4 GDD | Write a one-sheet and a 6-row beat chart. Then create one ScriptableObject asset per row ([[ScriptableObject Architecture]]) and load the rows in order with [[Level Manager]]. |
| L5 Character | Create a metrics sheet (speed, jump height, jump distance). Build a "metrics gym" gray-box with gaps at 80%, 100% and 120% of the jump distance. Which feel fair? |
| L6 Camera | Build the same room with three cameras (first person, third person orbit, top-down) using the Cinemachine setup from [[Surface-Walking with an Omnidirectional Player Movement]]. Test whether the objective stays in view. |
| L7 Controls | Add a gamepad binding and a "camera-relative vs character-relative" toggle with the Input System ([[Unity New Input System Upgrade Tutorial]]). Compare the two. |
| L8 HUD | Rebuild [[3.HUD and Inventory Example]] as a "clean screen": hide the HUD until it's relevant. Convert one element to diegetic ([[6.Diegetic Terminal and Wrist Display]]). |
| L9 Level design | Draw a top-down level diagram on paper. Paint it with [[Tilemaps and Tilesets]]. Every dead end needs a reward (a trash-can fire from [[2.Worked Effect - Trash Can Fire]] counts). |
| L11 Enemies | Fill in an enemy sheet (size, behavior, speed, movement style, attack). Implement two enemies that differ only in data and state wiring, using [[Enemy AI State Machine]], [[Organic Enemy Sensing]] and [[NavMesh in Unity 6 (AI Navigation 2.x)]]. |
| L11 Bosses | Design a 3-phase boss as a hierarchical state machine. Give the boss its own NavMesh agent type. |
| L12 Mechanics | Build a timed hazard that telegraphs for one second before it fires (particles plus sound). Add a calm spot after it. |
| L13 Power | Add a 10-second speed power-up with [[2.Modifiers and Timed Buffs]]. Add a high-score table and one achievement ([[High Scores, Saves and Player Stats]]). |
| L14 Multiplayer | Two students per team: make a capture-the-flag map using [[Multiplayer with Netcode for GameObjects]] and test with Multiplayer Play Mode. |
| L16 Music | Make three SFX in Audacity ([[Creating Audio (Tools)]]) and hook them to gameplay events. |
| L17 Cutscenes | Make a 20-second skippable intro with [[Timeline Basics]]. Then make it interactive instead. |
| L18 Pitch | Present a 10-slide pitch plus a playable build (for VR, sideload it via [[4.Quest 2 Testing and Deployment]]). |
## Related
- [[Game Programming Patterns (Review)]]
- [[Architecture and Code Patterns]]
- [[Unity Tutorials]]
> [!warning] None of the linked tutorial code has been compiled in Unity yet. The book mappings are interpretive.