GAME 1303 Game Pitch Analysis
Companion documents
- 01.GAME 1303 — Pitch Analysis — the original 17 pitches and what they have in common
- 02.GAME 1303 — Scripts by Game_v2 — which of the 115 scripts each student needs
- 03.GAME 1303 — Scripts Source — Text listings of .cs scripts
- 04.GAME 1303 — Instructor Handbook — This Guide
- 05.GAME 1303 — Deployment Guide — How to start in Unity and deploy the scripts
- 06.GAME 1303 — Mecanim Wiring Guide — Mecanim rigs, parameters, state machines
Source: "Game Pitch Discussion" board (posts Aug 25 – Sep 1, 2026). Instructor whiteboard photo from Sep 1 used to confirm the class-agreed categories (2D / Puzzle / Narrative / 3D) and the Unity component vocabulary (GameObjects → Transform; Components: Rigidbody2D, Player Input, Script, Animator; Mechanim animator with idle/walk/run states).
Part 1 — Games by student
| # | Student | Game | Type (whiteboard column) | Perspective | One-line summary |
|---|---|---|---|---|---|
| 1 | Lazaro Garcia | Apep's Trial | 3D/2D hybrid | First-person 3D switching to 2D side-scroll or top-down | Magic construct replaces Ra on his nightly barque journey to stop Apep. Dash/air-dash, double jump, glide, sprint. Core mechanic is the camera switching between 3D and 2D. Refs: Fez, Shady Part of Me, Risk of Rain 2. |
| 2 | Amarion Wilson | The Magnet | 2D | Side-scroller | Single-player Sonic-style side-scroller. Hero has magnet gloves that pull metal items toward him; fights masked criminals up to a boss named "Blaster." Student self-describes as new and wants it simple. Has pixel-art sprites already (Magnet, Blaster, Masked Criminal). |
| 3 | Zachary Thompson | Missile Man! | 2D | Side-scroller | Side-scrolling beat 'em up / action-comedy. Hero refuses melee; builds momentum by running, then launches himself at enemies. |
| 4 | Rhys Watson | Cozy Critters | 2D | Single screen / small area | Tamagotchi-style pet sim with no death anxiety. Pet idles and walks; player performs care actions that raise happiness and change the pet's nature. One area; species and customization undecided. |
| 5 | Sylvia Lee | Commission Witch | 2D | Side-scroller | Simple Mario / Hollow Knight platformer, gothic-Halloween theme. Witch gathers plant ingredients while avoiding ghosts; different endings based on what and how much you collect. Instructor notes: order received → gather ingredients → mix & recipe check; question of "bad ingredients"; ghosts move around but you don't touch them. |
| 6 | Tony Williams | Zap Attack!! | 2D (2.5D look) | Side-scroller | Fast trial-and-error precision platformer (Super Meat Boy, Pizza Tower). Blobby the Electro Slime dashes through enemies, rides power lines, unlocks homing attack / slam / machine operation. Unlimited lives. 4 sectors × 10 levels, hub towns, bosses on level 5 and 10, 5th level locked behind collected "green electricity." Online time-attack. Most ambitious scope in the class. |
| 7 | Sanad Ammari | Store Simulator (name from whiteboard; post is images only) | 3D | First-person | Shop/management sim. Refs: Supermarket Simulator, Gas Station Simulator, Escape Simulator, Cash Cleaner Simulator. Stock shelves, serve customers, earn money. |
| 8 | Kathryn Groover | A Spark of Corruption | 2D | Side-scroller | Action-adventure platformer (Nameless Cat, Hollow Knight, Celeste). Four party members with roles: Fire Aprice (attack), a Servant (support: flying/moving objects), an Archer (support: stealth/distraction), a Sorcerer (attack/support: elemental). Shadow-blob enemies. Four worlds with palettes: Fiery Kingdom, Forest, Ruins, Starry Wastelands. Strong art already done. |
| 9 | Nicholas Murley | Conquer the Cutthroat Course | 2D | Side-scroller | Single trap-filled obstacle course that ramps in difficulty. No timer, 3 lives. Traps: saw blade, fire, acid pit, spikes, crushers, electricity zones (jump too high and you're shocked). Funny SFX on final death. |
| 10 | Julian Vargas | Hot Air (untitled; whiteboard says "Hot Air") | 2D | Side-scroller | Physics platformer: runaway hot air balloon with limited fuel and a grappling hook. Wind pushes you through the level; manage fuel, grapple to avoid obstacles, reach checkpoints. |
| 11 | Joshua Freeman | Roach Invasion | 2D | Side-scroller | Collectathon platformer. Swap between 4 insects (different HP: 5/3/2/3, and abilities — one flies) to suit each hazard and enemy. Collect all plant-based items; evade mutated roaches. Sketched level has ladders, spikes, gaps. |
| 12 | Fozaan Sheikh | MythoClash | Narrative (whiteboard) — realistically 2D arena combat | Side-view | Hero fights mythological monsters across multiple pantheons. Fight or skip (max 3 skips; skipping raises chance of tougher foe). Earn Drachma (XP) to unlock levels. 3 levels per world, ~12 opponents per world. Detailed asset plan already (38 visual, 6 audio, 4 background/NPC). Pixel art done: hero, hydra, Ammit-style croc, wolf, serpent. |
| 13 | Andraya Rhoads | Anabasis | Narrative | 2D exploration | Ghost between life and death regains memories. Explore, make decisions, solve puzzles, multiple endings. Monochrome/ink mood board. Class idea (Jax): dialogue choices change the world's imagery. |
| 14 | Marcelo Diaz | Stardust (placeholder) | 2D | Side-scroller | Action platformer (Mega Man ZX ref). Dash, jump, attack; combo counter — consecutive hits raise damage. |
| 15 | Chris Acosta | Last Delivery | Puzzle | Top-down 2D | Food-delivery robot goes from A to B across a wasteland; monsters try to intercept and steal the food. Ref: Crossy Road. |
| 16 | Mena Rofail | Detective Liz: Haunted Case | Narrative | 2D | Detective uses a flashlight to fight ghosts while investigating a five-story abandoned building. Class ideas (Jax): flashlight battery, a recharge that requires standing still (vulnerable), and harm from staying in the dark too long. Has a PPTX pitch attached. |
| 17 | Jax Keenan | Weenie(dog) Maze | Puzzle | Top-down 2D | Snake-with-a-twist: a dachshund navigates a maze eating treats and growing without running into itself. |
| — | J Marshall Pittman (instructor demo) | Cephalopods in Space! | — | 2D cockpit | Octopus pilots a custom spaceship; attend to controls and watch the display to survive perils. Multitasking/attention game. |
Count: 17 student pitches. 12 are 2D side-scrollers of some kind, 2 top-down puzzle, 2 narrative-first, 1 pet sim, 1 3D sim, 1 3D/2D hybrid.
Part 2 — Games by type
A. 2D side-scrolling platformer (the big cluster — 9 games)
Commission Witch (Sylvia), Zap Attack!! (Tony), A Spark of Corruption (Kathryn), Conquer the Cutthroat Course (Nicholas), Hot Air (Julian), Roach Invasion (Joshua), Stardust (Marcelo), The Magnet (Amarion), Apep's Trial 2D sections (Lazaro).
Sub-flavors:
- Precision / hazard platformer — Zap Attack, Cutthroat Course, Hot Air (physics variant)
- Collectathon / gather-and-return — Commission Witch, Roach Invasion
- Action platformer with combat — Spark of Corruption, Stardust, The Magnet
- Character-swap — Roach Invasion (4 insects), Spark of Corruption (4 party members)
B. 2D side-scrolling combat (non-platformer or platformer-light — 2 games)
Missile Man (beat 'em up), MythoClash (one-on-one monster fights).
C. Top-down 2D puzzle (2 games)
Last Delivery (Chris), Weenie(dog) Maze (Jax) — both grid/lane-based movement with an A-to-B goal and things that get in the way.
D. 2D narrative / exploration (2 games)
Anabasis (Andraya), Detective Liz (Mena). Both need dialogue, branching choices, interactable objects, and a light/dark or mood system.
E. Simulation (2 games)
Cozy Critters (2D pet sim — needs stat/timer loop, not platforming), Store Simulator (3D first-person — the outlier).
F. Hybrid
Apep's Trial — first-person 3D + 2D; realistically will use the 2D platformer kit plus a camera-mode switcher.
Part 3 — Script inventory
Naming follows Unity C# conventions. "Used by" lists which games would drop each script in more or less unchanged.
Tier 1 — Core kit almost everyone uses (write these first)
| Script | What it does | Used by |
|---|---|---|
PlayerController2D | Rigidbody2D + new Input System; horizontal move, jump, coyote time, jump buffer, variable jump height, ground check via overlap box, flips sprite. Exposed moveSpeed, jumpForce. | All 9 platformers, Missile Man, MythoClash, Apep's Trial (2D mode) |
PlayerAnimatorBridge | Feeds speed, isGrounded, yVelocity, triggers (jump, attack, hurt) into the Mechanim controller with idle/walk/run/jump/fall states from the whiteboard. | Every game with a character sprite (15 of 17) |
Health | maxHealth, currentHealth, TakeDamage(), Heal(), invulnerability frames, OnDied / OnHealthChanged UnityEvents. Works for player, enemies, bosses. | 13 games |
DamageOnContact | Hazard/enemy trigger that calls Health.TakeDamage with a damage value and optional knockback. Tag/layer filter. | All platformers, Cutthroat Course, Last Delivery, Missile Man |
Checkpoint + RespawnManager | Trigger sets last checkpoint; on death, teleport player, reset velocity, restore health. Optional lives counter. | Zap Attack, Cutthroat Course (3 lives), Hot Air, Roach Invasion, Spark of Corruption, Stardust, Magnet |
Collectible + CollectionTracker | Trigger pickup, plays SFX, increments a typed count (ScriptableObject ItemType), fires UI update. Supports "collect N to unlock." | Commission Witch, Roach Invasion, Zap Attack (green electricity), Weenie Maze (treats), Cozy Critters (food), Store Sim (stock) |
CameraFollow2D (or a Cinemachine 2D preset) | Smooth follow with dead zone, level bounds via Polygon Collider confiner. | Every side-scroller and top-down game |
LevelManager / SceneLoader | Load next level, reload on death, return to hub, fade transition. | All |
GameManager (singleton) | Pause, score/lives, persistent state between scenes. | All |
AudioManager | Play SFX / music by name; one-shot pool. | All (Cutthroat Course's funny death sound, MythoClash's 6 audio assets) |
HUDController | Health bar, lives, collectible counter, timer text. Subscribes to Health and CollectionTracker events. | All |
MovingPlatform | Waypoint mover; parents player on contact. | Most platformers |
ParallaxBackground | Layered background scroll relative to camera. | All side-scrollers |
Tier 2 — Enemy & combat kit
| Script | What it does | Used by |
|---|---|---|
EnemyPatrol | Walks between two points or until an edge/wall check fails; flips. | Commission Witch ghosts, Magnet criminals, Roach Invasion roaches, Spark of Corruption shadows, Stardust, Zap Attack |
EnemyChase | Detects player in radius/line-of-sight, moves toward, returns to patrol. | Last Delivery monsters, Detective Liz ghosts, Roach Invasion, Missile Man thugs |
FloatingEnemy | Sine-wave hover / free 2D movement ignoring gravity. | Commission Witch & Detective Liz ghosts, Roach Invasion flying roaches |
MeleeAttack | Attack input → animation trigger → overlap circle at hit point → damage. Cooldown. | Stardust, Spark of Corruption, Magnet, MythoClash, Missile Man |
ProjectileShooter + Projectile | Spawn prefab at fire point with speed and lifetime; hits call DamageOnContact. | Blaster boss (Magnet), MythoClash, Spark of Corruption (archer/sorcerer), Stardust |
ComboCounter | Tracks consecutive hits within a window; exposes damage multiplier; resets on miss/hurt. | Stardust (core mechanic), useful for Missile Man & MythoClash |
Knockback | Applies impulse away from source; brief control lock. | Most combat games |
BossController | Phase-based state machine (idle → attack pattern A/B → vulnerable), health thresholds change phase. | Magnet (Blaster), Zap Attack (sector bosses), MythoClash, Spark of Corruption |
Hitbox / Hurtbox pair | Standard separation so attacks and damage taken don't collide with each other. | All combat games |
Tier 3 — Movement extensions (drop-in modules for PlayerController2D)
| Script | Mechanic | Used by |
|---|---|---|
Dash | Burst in facing/input direction, i-frames optional, cooldown, air-dash count. | Apep's Trial, Zap Attack, Stardust, Spark of Corruption |
DoubleJump | Extra jump count reset on ground. | Apep's Trial, Spark of Corruption, Roach Invasion (some insects) |
Glide | Hold jump while falling → clamped fall speed. | Apep's Trial, Roach Invasion (bee) |
Sprint | Hold to multiply speed. | Apep's Trial, Missile Man |
MomentumLauncher | Speed builds while running; at threshold, press to convert velocity into a body-slam attack; damage scales with speed. | Missile Man (core), Zap Attack (dash-through) |
WallSlideJump | Wall detection, slide speed, wall jump. | Zap Attack, Stardust, Spark of Corruption |
Ladder | Enter climb state on vertical input; disables gravity. | Roach Invasion, Detective Liz (five stories), Spark of Corruption |
GrapplingHook | Raycast to anchor layer, DistanceJoint2D / SpringJoint2D swing, reel in/out. | Hot Air (core); reusable for Spark of Corruption servant |
FuelSystem + BalloonController | Fuel depletes on thrust; buoyancy force up; WindZone2D applies constant AreaEffector2D force. | Hot Air |
MagnetPull | On hold, find objects on "Metal" layer within radius and pull them toward player; can yank enemy weapons/shields. | The Magnet (core) |
RailRide | Snap to a spline/edge collider and travel along it. | Zap Attack (power lines) |
CharacterSwapper | Holds a list of character prefabs/stats; hot-swaps active controller, keeps position, updates HUD portrait. | Roach Invasion (4 insects), Spark of Corruption (4 party members) |
Tier 4 — Hazards & level pieces (Cutthroat Course is the showcase; others borrow)
| Script | Used by |
|---|---|
SpinningSaw (rotate + DamageOnContact) | Cutthroat Course, Zap Attack |
SpikeTrap (static or timed pop-up) | Cutthroat Course, Roach Invasion, Stardust |
Crusher (piston on timer) | Cutthroat Course |
FireHazard / AcidPool (kill zone, optional DoT) | Cutthroat Course, Roach Invasion |
ElectricZone (ceiling shock if player y exceeds threshold; also fits Zap Attack's electric theme) | Cutthroat Course, Zap Attack |
Breakable (health-driven destruction) | Magnet, Stardust, Spark of Corruption |
Door / Lock (opens when CollectionTracker ≥ N or key held) | Zap Attack (generator door), Commission Witch, Detective Liz, Anabasis |
LevelSelect + LevelUnlockData (ScriptableObject) | Zap Attack (sectors), MythoClash (Drachma gates) |
TimerHUD + local best-time save | Zap Attack (time attack), Cutthroat Course optional |
Tier 5 — Top-down / grid kit
| Script | Used by |
|---|---|
TopDownMover (8-dir Rigidbody2D, no gravity) | Last Delivery, Apep's Trial (top-down mode), Cozy Critters pet |
GridMover (step on input, snap to tiles, wall check) | Weenie Maze, Last Delivery if lane-based |
SnakeBody (list of segments follows head; self-collision = fail; grows on treat) | Weenie Maze (core) |
LaneSpawner (spawns obstacles/monsters along lanes at intervals, Crossy-Road style) | Last Delivery |
MazeLoader (reads a text/2D array into Tilemap) | Weenie Maze, Last Delivery |
DeliveryObjective (carry item; lose it on hit; deliver at goal trigger) | Last Delivery |
Tier 6 — Narrative kit
| Script | Used by |
|---|---|
Interactable + InteractionPrompt (press E when in range) | Anabasis, Detective Liz, Commission Witch (order board), Cozy Critters, Store Sim |
DialogueRunner + DialogueData (ScriptableObject lines, speaker, portrait, choices) — or adopt Yarn Spinner / Ink | Anabasis, Detective Liz, MythoClash intro, Zap Attack hubs, Commission Witch endings |
ChoiceFlagManager (string→bool/int flags persisted across scenes) | Anabasis (choices reshape world), Commission Witch (endings), Detective Liz |
EndingSelector (evaluate flags/counts → load ending scene) | Commission Witch, Anabasis, Detective Liz |
WorldStateSwapper (swap tilemaps/sprites based on flags — Jax's "imagery changes with choices") | Anabasis |
Flashlight2D (URP 2D spot light follows aim; toggle; battery drain; Recharge requires standing still) | Detective Liz |
DarknessMeter (accumulates while outside light; harms player past threshold) | Detective Liz |
LightSensitiveEnemy (ghost takes damage/flees while inside light cone) | Detective Liz, Commission Witch variant |
PuzzleSwitch / PressurePlate / PushBlock | Anabasis, Apep's Trial |
FloorTransition (stairs/elevator between five stories) | Detective Liz |
Tier 7 — Simulation kit
| Script | Used by |
|---|---|
NeedStat (hunger, happiness, energy — decay per second, clamp, events) | Cozy Critters |
PetBrain (idle/wander/react state machine; mood from stats affects animation set) | Cozy Critters (uses the Mechanim idle/walk pattern) |
CareAction (feed/play/clean buttons that modify NeedStats) | Cozy Critters |
PersonalityTracker (long-run averages shift "nature") | Cozy Critters |
SaveSystem (JSON to persistentDataPath; time-since-last-play offline decay) | Cozy Critters, Zap Attack, MythoClash |
FirstPersonController (CharacterController, mouse look) | Store Simulator |
PickupCarry / ShelfSlot / Register / CustomerAI / Economy | Store Simulator only |
Tier 8 — Specialty
| Script | Used by |
|---|---|
CameraModeSwitcher (lerps between 3D perspective rig and 2D ortho rig; swaps active controller & input map) | Apep's Trial (core) |
EncounterManager (present monster, fight/skip choice, skip counter max 3, difficulty roll on skip) | MythoClash (core) |
ExperienceWallet (Drachma; gates in LevelSelect) | MythoClash |
RecipeChecker (compare collected ItemType counts against a recipe ScriptableObject; flag bad ingredients) | Commission Witch |
MultiTaskStation (several timed gauges the player must keep in range) | Cephalopods in Space (instructor demo) |
Part 4 — Common themes and shared assets
Mechanics that recur across the class
- Gather-and-return loops: Commission Witch (ingredients → recipe), Roach Invasion (plants), Zap Attack (electricity → generator door), Weenie Maze (treats), Last Delivery (food). One
Collectible/CollectionTracker/Doortrio serves all five. - Character/mode switching: Roach Invasion, Spark of Corruption (party of 4 each), Apep's Trial (camera modes). A single
CharacterSwapperpattern covers the first two; the third is the same idea applied to cameras. - Momentum and dash: Zap Attack, Missile Man, Stardust, Apep's Trial, Spark of Corruption. Build
Dashonce with speed/duration/cooldown fields;MomentumLauncheris a variant. - Light vs. dark: Detective Liz (flashlight), Anabasis (monochrome world), Commission Witch (gothic night). URP 2D lighting lesson pays off for three projects.
- Ghosts as the enemy: Commission Witch, Detective Liz, Anabasis (player is one). A shared floating ghost prefab with
FloatingEnemy+EnemyChasewould help. - Multiple endings: Commission Witch, Anabasis, Detective Liz — all need
ChoiceFlagManager+EndingSelector. - Electricity theme: Zap Attack, Cutthroat Course, and The Magnet (magnetism) — shared spark/arc VFX and SFX.
- Lives with a twist: Cutthroat Course (3 lives, no timer), Zap Attack (unlimited), Roach Invasion (per-insect HP).
Health+RespawnManagerwith a configurable lives count handles all.
Reference games the students keep naming (worth showing in class as design studies): Hollow Knight (×3), Celeste, Super Meat Boy, Mario, Sonic, Mega Man ZX, Crossy Road, Snake, Tamagotchi, Hades / God of War, Fez.
Shared art/audio assets that could be produced once
- A generic 32×32 or 16×16 humanoid platformer sprite sheet (idle/walk/run/jump/fall/hurt/attack) matching the Mechanim state names from the whiteboard, so students with no art yet (Missile Man, Stardust, Cutthroat Course, Hot Air, Last Delivery, Weenie Maze) can prototype.
- A tileset with ground/wall/platform/ladder/spike autotiles for the Tilemap system.
- Hazard prefabs: saw, spikes, fire, acid, crusher, electric arc.
- A floating ghost sprite (three games).
- UI kit: health bar, hearts, counter, lives, timer, dialogue box with portrait slot.
- SFX pack: jump, land, hit, collect, death, door unlock, UI click, plus one ridiculous death sound for Nicholas.
- Parallax background sets in a few palettes (Kathryn's four world palettes are a good starting point).
Students who already have significant art: Amarion (3 sprites), Kathryn (characters, enemies, palettes, world thumbnails), Fozaan (hero + 4 monsters + banner), Andraya (mood board), Tony (Blobby). Students with nothing visual yet who would benefit most from placeholder assets: Zachary, Marcelo, Julian, Chris, Jax, Mena, Rhys, Sanad.
Part 5 — Suggested build order for the shared script library
PlayerController2D,PlayerAnimatorBridge,CameraFollow2D,ParallaxBackground— unblocks 12 projects immediately.Health,DamageOnContact,Checkpoint/RespawnManager,HUDController— every game can then "die and retry."Collectible/CollectionTracker/Door,EnemyPatrol/EnemyChase/FloatingEnemy— turns prototypes into loops.Dash,MeleeAttack,Hitbox/Hurtbox,Knockback,BossController— the combat cluster.TopDownMover/GridMover/SnakeBody— the two puzzle games.Interactable,DialogueRunner,ChoiceFlagManager,Flashlight2D— the narrative cluster.- Per-game specialty scripts (
GrapplingHook,MagnetPull,CharacterSwapper,CameraModeSwitcher,EncounterManager,NeedStat) as those students reach them.
Scope flags to discuss with students: Zap Attack (40+ levels, online leaderboards, 4 hubs) and Store Simulator (3D, AI customers, economy) are far larger than the rest; Apep's Trial's 3D/2D switch is doable but should be prototyped first before any content is built.