Save this video — free

CS50 2D - Lecture 5 - Legend of Zelda (live, unedited)

CS50 · 3:24:25 · Watch on YouTube

CS50 2D - Lecture 5 - Legend of Zelda (live, unedited) Watch on YouTube →

Overview

CS50's "Legend of Zelda" lecture explores 2D game development concepts inspired by the classic franchise, covering dungeon generation, hitboxes/hurtboxes, screen scrolling, and stenciling. David Malan and Colton Ogden demonstrate implementing these features in Lua using the Love2D framework, showcasing data-driven design and coroutines for complex algorithms like dungeon generation.

Key takeaways

Chapters

0:05 Introduction and Nintendo Console Preferences
0:07 The Legend of Zelda: Core Mechanics and Evolution
0:09 Top-Down vs. Side-Scrolling Game Perspectives
0:11 Live Demo: Legend of 50 Gameplay
0:22 Second Live Demo: Dungeon Navigation and Game Over
0:24 Recap of Gameplay Elements and Core Concepts
0:25 Zelda Zero: Day Zero Update - Top-Down Rendering
0:26 Orthographic vs. Isometric Graphics and Tile Rendering
0:27 Character Sprite Sheets and Animation Frames
0:29 Entity Component System and Data-Driven Design
0:30 Entity Attributes: Health and Invulnerability
0:32 Entity Definitions: Animations and Data Tables
0:34 Sprite Sheet Splitting and Programmatic Loading
0:35 Play State: Entity States and Graphics Transformations
0:38 Zelda Zero: Player Movement and State Machines
0:40 Zelda One: Tile Set Update and Dungeon Rendering
0:41 Tile Set Structure and Composition
0:44 Room Generation: Walls, Floors, and Randomization
0:49 Player Movement and Boundary Checking
0:56 Zelda Two: Dungeon Update and Room Transitions
0:58 Dungeon Structure: Rooms, Current Room, and Next Room
1:02 Hitboxes vs. Hurtboxes: Collision Detection Semantics
1:05 Zelda Three: Implementing Sword Hitboxes
1:10 Swing Sword State: Animation and Hitbox Logic
1:15 Zelda Four: Monster Update and Combat Integration
1:19 Entity Generation and Damage Handling
1:23 Zelda Five: Triggers, Switches, and Doorways
1:30 Game Objects and Inter-Object Communication
1:40 Zelda Six: Screen Scrolling and Room Transitions
1:43 Event System for Handling Transitions
1:51 Player Walk State: Doorway Collision and Event Dispatch
1:57 Dungeon Shifting Logic and Tweening
2:02 Finishing Transitions and Resetting Game State
2:03 Zelda Seven: Stenciling for Corridor Effects
2:05 Stencil Buffer Operations: Action, Mode, and Value
2:11 Stenciling Implementation in Room.lua
2:18 Debugging Stenciling with Rectangles
2:19 Dungeon Generator: Queue-Based Algorithm
2:27 Dungeon Generation Phases: Rooms, Doorways, and Visualization
2:35 Data-Driven Design and Entity Component Systems
2:37 Low-Level Game Development: NES and Assembly
2:38 Assignment Five: Extending Player Capabilities
2:40 Boomerang Mechanics and Projectile Behavior
2:41 Course Recap: 2D Game Development Fundamentals
3:06 Love2D Stenciling Functions: `setStencilState` and `setColorMask`
3:19 Stenciling Demo and Debugging Rectangles
3:21 Stenciling Implementation Details in Room.lua
3:23 Dungeon Generator Algorithm and Coroutines

Keep these chapters and the full searchable transcript in your own library.

Summary, takeaways, and chapters were generated by AI from the video's transcript and may contain errors. The video belongs to its creator, CS50.

Want the full transcript?

Save this video in YouTube Collector to get its complete searchable transcript, your own AI summaries, and a library that keeps every video you collect in one place.