Please enable JavaScript to use CodeHS

Outline


1. Intro to Game Design
1.1 Intro to Games
Video 1.1.1 Intro to Games
Free Response 1.1.2 What Games Have You Played?
Free Response 1.1.3 Game Design Reflection
1.2 Unpacking a Game
Video 1.2.1 Gameplay and Game Components
Quiz 1.2.2 Check Your Understanding - Gameplay and Game Components
Video 1.2.3 Game Mechanics and Elements
Quiz 1.2.4 Check Your Understanding - Game Mechanics and Elements
Notes 1.2.5 Investigate a Game
Free Response 1.2.6 Identify Game Elements
Free Response 1.2.7 Identify Game Components
Free Response 1.2.8 Identify Game Mechanics
Free Response 1.2.9 Describe Your Experience
1.3 Categorizing Games
Notes 1.3.1 Categorizing Games
Article 1.3.2 A Bird's Eye View on Perspectives
Article 1.3.3 Getting to Know Game Genres
Notes 1.3.4 Pick a Few Games
Free Response 1.3.5 Categorizing Your Games
Free Response 1.3.6 Game Category Reflection
2. Programming in JavaScript
2.1 How to Think Like a Programmer
Video 2.1.1 How to Think Like a Programmer
Free Response 2.1.2 Problem Decomposition #1 - Meal Planning
Free Response 2.1.3 Problem Decomposition #2 - Hobbies
Video 2.1.4 Algorithms
Free Response 2.1.5 Algorithm #1 - PB&J
Free Response 2.1.6 Algorithm #2 - Your Choice
2.2 Intro to JavaScript
Video 2.2.1 Hello World
Example 2.2.2 Hello World
Exercise 2.2.3 Introduce Yourself
Debugging 2.2.4 Debugging: Printing Error
Quiz 2.2.5 Check Your Understanding - Printing
2.3 Variables
Video 2.3.1 Variables
Video 2.3.2 Live Coding: Variables
Exercise 2.3.3 Exploration: Making a Purchase
Quiz 2.3.4 Check Your Understanding - Variables
Debugging 2.3.5 Debugging: Hiking App
Exercise 2.3.6 2020 Olympic Basketball Winners
2.4 User Input
Video 2.4.1 User Input
Example 2.4.2 Greetings
Exercise 2.4.3 Exploration: Guessing Game
Quiz 2.4.4 Check Your Understanding - Input
Exercise 2.4.5 Create a Story
2.5 Basic Math
Video 2.5.1 Basic Math
Example 2.5.2 Multiplication Practice
Exercise 2.5.3 Bookstore
Exercise 2.5.4 Flying Pigeon!
Quiz 2.5.5 Check Your Understanding - Math
2.6 Basic Functions
Video 2.6.1 Basic Functions
Notes 2.6.2 Variables in Functions
Example 2.6.3 Looking at Program Flow
Debugging 2.6.4 Debugging: Console Bear
Quiz 2.6.5 Check Your Understanding - Functions
Example 2.6.6 Development with Pseudocode
Free Response 2.6.7 Your Own Custom Function - Planning
Challenge 2.6.8 Your Own Custom Function - Development
3. Getting to Know p5play
3.1 Introducing Libraries
Video 3.1.1 Introducing Libraries and p5play
Article 3.1.2 p5play Demo - Asteroids
Article 3.1.3 p5play Demo - Dominoes
Article 3.1.4 p5play Demo - Red Remover
Article 3.1.5 p5play Reference Guide
3.2 Program Structure
Video 3.2.1 Program Structure
Notes 3.2.2 Program Structure Reference
Example 3.2.3 Bounce Bounce Revolution
Exercise 3.2.4 Exploration: The Elevator
Exercise 3.2.5 The Propeller
Quiz 3.2.6 Check Your Understanding - Structure
3.3 Understanding the Canvas
Video 3.3.1 Understanding the Canvas
Exercise 3.3.2 Create a Canvas
Connection 3.3.3 Canvas Coordinates
Example 3.3.4 Helper Function for Coordinates
Example 3.3.5 Refreshing the Canvas
Exercise 3.3.6 Shelving Boxes
Quiz 3.3.7 Check Your Understanding - Canvas
3.4 Your First Sprites
Video 3.4.1 Your First Sprites
Example 3.4.2 Sprite Face
Exercise 3.4.3 Exploration: Shapeshifter
Exercise 3.4.4 Downhill Delights
Quiz 3.4.5 Check Your Understanding - Sprites
Challenge 3.4.6 Block Mario
3.5 The Physics of Sprites
Notes 3.5.1 Physics Engines and Gravity
Exercise 3.5.2 Exploration: Gravity
Notes 3.5.3 Collisions
Exercise 3.5.4 Exploration: Collisions
Notes 3.5.5 Physical Properties
Exercise 3.5.6 Exploration: Physical Properties
Notes 3.5.7 Motion
Exercise 3.5.8 Exploration: Motion
Free Response 3.5.9 Sprite Physics Reflection
4. Project: Mini Golf
4.1 Mini Golf - Setup
Notes 4.1.1 Project Design Process
Video 4.1.2 Mini Golf Project Intro
Free Response 4.1.3 Project Decomposition
Notes 4.1.4 A Quick Note About the Project Setup
Exercise 4.1.5 Project - Setting Up the Canvas
4.2 Mini Golf - Sprites
Notes 4.2.1 Adding Your Sprites
Exercise 4.2.2 Project - Grass and Hole
Exercise 4.2.3 Project - Walls
Exercise 4.2.4 Project - Ball and Putter
Exercise 4.2.5 Project - Commenting Your Code
4.3 Booleans
Video 4.3.1 Booleans
Free Response 4.3.2 Booleans are Questions
Notes 4.3.3 p5play Booleans
Article 4.3.4 Boolean Examples
Free Response 4.3.5 Boolean Reflection
Check for Understanding 4.3.6 Check Your Understanding - Booleans
4.4 If/Else Statements
Video 4.4.1 If/Else Statements
Article 4.4.2 If/Else Statements with p5play
Check for Understanding 4.4.3 Check Your Understanding - If/Else Statements
Exercise 4.4.4 Exploration: Feline Fields
Exercise 4.4.5 Into the Office We Go
4.5 Mini Golf - Interactions
Notes 4.5.1 Adding Interactions
Exercise 4.5.2 Project - Dragging the Putter
Exercise 4.5.3 Project - Rotating the Putter
Exercise 4.5.4 Project - Slowing Down the Ball
Exercise 4.5.5 Project - Removing the Ball
4.6 Mini Golf - Music and Score Display
Notes 4.6.1 Improving Playing Experience
Exercise 4.6.2 Project - Adding Music
Exercise 4.6.3 Project - Displaying the Score
Exercise 4.6.4 Project - Updating the Score
4.7 Mini Golf - Hole #2 Challenge
Notes 4.7.1 Hole #2 Intro
Free Response 4.7.2 Planning Hole #2
Challenge 4.7.3 Project - Developing Hole #2
Free Response 4.7.4 Playtesting and Feedback
Free Response 4.7.5 Mini Golf Reflection
5. Project: Projectiles
5.1 Projectiles - Setup
Video 5.1.1 Projectiles Project Intro
Free Response 5.1.2 Project Decomposition
Notes 5.1.3 A Quick Note About the Project Setup
Exercise 5.1.4 Project - Setting Up the Canvas
Exercise 5.1.5 Project - Adding the Ground
5.2 Projectiles - Cannon
Notes 5.2.1 Building a Cannon
Exercise 5.2.2 Project - Pole and Cannon Sprites
Exercise 5.2.3 Project - Moving the Cannon
Free Response 5.2.4 Pseudocode for Cannon Rotation
Exercise 5.2.5 Project - Rotating the Cannon
5.3 Groups and Tiles
Notes 5.3.1 Introducing p5play Groups
Example 5.3.2 Group of Boxes
Exercise 5.3.3 Exploration: Fountain
Notes 5.3.4 Introducing p5play Tiles
Example 5.3.5 Brick Man
Exercise 5.3.6 Exploration: Star Field
5.4 Projectiles - Cannonballs
Notes 5.4.1 Fire the Cannons!
Exercise 5.4.2 Project - Cannonball Group
Exercise 5.4.3 Project - Firing the Cannon
5.5 Projectiles - Tower
Notes 5.5.1 Tower Building 101
Exercise 5.5.2 Project - Wood and Stone Groups
Exercise 5.5.3 Project - Wood and Stone Tiles
5.6 Projectiles - Destroying Tiles
Notes 5.6.1 Destroying Tiles
Free Response 5.6.2 Destruction Pseudocode
Exercise 5.6.3 Simple Prototype
Notes 5.6.4 Looping Through Groups
Exercise 5.6.5 Project - Destroying Tiles
Exercise 5.6.6 Project - Limiting the Destruction
5.7 Projectiles - Winning Scenario
Notes 5.7.1 How Do You Win?
Exercise 5.7.2 Project - Creating the Target
Exercise 5.7.3 Project - Adding the Win Message
Exercise 5.7.4 Project - Checking for the Win
5.8 Projectiles - Level #2 Challenge
Notes 5.8.1 Level #2 Intro
Free Response 5.8.2 Planning Level #2
Challenge 5.8.3 Project - Developing Level #2
Free Response 5.8.4 Playtesting and Feedback
Free Response 5.8.5 Projectiles Reflection
6. Project: Jumper
6.1 Jumper - Setup
Video 6.1.1 Jumper Project Intro
Free Response 6.1.2 Project Decomposition
Notes 6.1.3 A Quick Note About the Project Setup
Exercise 6.1.4 Project - Framework and Canvas
Exercise 6.1.5 Project - Basic Grass Tiles
6.2 Jumper - Character Prototype
Notes 6.2.1 Basic Character Functionality
Free Response 6.2.2 Character Pseudocode
Exercise 6.2.3 Project - Character Sprite
Exercise 6.2.4 Project - Character Movement
Exercise 6.2.5 Project - Character Jumps
Exercise 6.2.6 Project - A Camera That Follows
6.3 Sprite Animations
Notes 6.3.1 Sprites in Games
Notes 6.3.2 Intro to Spritesheets
Notes 6.3.3 Creating Sprite Animations
Exercise 6.3.4 Exploration: Learning to Walk
Exercise 6.3.5 Born to Run
6.4 Jumper - Character Animation
Notes 6.4.1 Character Animation
Exercise 6.4.2 Project - Character Idling
Exercise 6.4.3 Project - Character Walking
6.5 Jumper - Collecting Coins
Notes 6.5.1 Collecting Coins
Free Response 6.5.2 Coin Decomposition
Exercise 6.5.3 Project - Animated Coins
Exercise 6.5.4 Project - Collecting the Coins
Exercise 6.5.5 Project - Counting the Coins
6.6 Jumper - Improved Player Functionality
Notes 6.6.1 Improved Player Functionality
Exercise 6.6.2 Project - Getting Back Up
Notes 6.6.3 Jumping Mechanics
Exercise 6.6.4 Project - Adding a Ground Sensor
6.7 Jumper - End of Level
Notes 6.7.1 End of Level
Free Response 6.7.2 Ending Event Pseudocode
Exercise 6.7.3 Project - The Ending Event
Exercise 6.7.4 Project - Game Over
Challenge 6.7.5 Project - Final Level Design
6.8 Jumper - Level #2 Challenge
Notes 6.8.1 Level #2 Intro
Free Response 6.8.2 Planning Level #2
Challenge 6.8.3 Project - Creating Level #2
Free Response 6.8.4 Playtesting and Feedback
Free Response 6.8.5 Jumper Reflection