Full-Semester Curriculum for Beginner High School Students
This curriculum introduces beginner high school students to 2D game development using the Unity Game Engine and C#. Activities progress from very easy introductory projects to advanced complete games. Later activities build upon skills and concepts introduced earlier in the semester.
| Activity Name | Short Description | Difficulty | Concepts / Areas Covered |
|---|---|---|---|
| 1. Explore the Unity 2D Interface | Create a new 2D project and explore the main Unity windows and tools. | Very Easy | Unity interface, Scene view, Game view, Hierarchy, Inspector, Project window |
| 2. Create a Simple 2D Scene | Build a basic scene using sprites and simple objects. | Very Easy | Scenes, GameObjects, sprites, Transform |
| 3. Move and Resize Sprites | Position, rotate, and scale several sprites to create a simple layout. | Very Easy | Transform, position, rotation, scale |
| 4. Build a Layered Scene | Create a background, player, and foreground using proper sprite ordering. | Very Easy | Sprites, sorting layers, Order in Layer |
| 5. First C# Script | Attach a simple C# script to a GameObject and display a message. | Very Easy | C# scripts, components, MonoBehaviour, Start |
| 6. Move the Player | Move a sprite left, right, up, and down using the keyboard. | Easy | Keyboard input, variables, player movement, Update |
| 7. Keep the Player On Screen | Limit player movement so the character stays inside the game area. | Easy | Variables, conditions, coordinates, movement limits |
| 8. Add Rigidbody2D Physics | Add physics to a player and experiment with gravity and movement. | Easy | Rigidbody2D, gravity, physics |
| 9. Collision Playground | Create walls and objects that collide with the player. | Easy | Collider2D, Rigidbody2D, collision detection |
| 10. Trigger Zones | Make invisible areas that detect when the player enters them. | Easy | Triggers, Collider2D, OnTriggerEnter2D |
| 11. Collect the Coins | Build a game where the player collects objects around the scene. | Easy | Triggers, collectibles, Destroy, tags |
| 12. Add a Score | Display a score that increases when items are collected. | Easy | Variables, score systems, TextMeshPro, UI |
| 13. Timed Collection Game | Add a countdown timer to the coin collection game. | Easy–Intermediate | Timers, TextMeshPro, variables, game state |
| 14. Maze Game | Guide a player through a maze while avoiding walls. | Easy–Intermediate | Movement, collisions, level design, Rigidbody2D |
| 15. Maze With Goal | Add a goal area that completes the maze when reached. | Easy–Intermediate | Triggers, game completion, scenes |
| 16. Click the Target | Create targets that respond when the player clicks them. | Easy–Intermediate | Mouse input, scoring, object interaction |
| 17. Random Target Spawning | Make targets appear at random positions during the game. | Easy–Intermediate | Random values, spawning, prefabs |
| 18. Dodge the Enemies | Move a player while enemies travel across the screen. | Easy–Intermediate | Enemy movement, collisions, spawning |
| 19. Health and Lives | Add health or lives that decrease when the player touches an enemy. | Easy–Intermediate | Health systems, lives, UI, variables |
| 20. Game Over and Restart | Display a game-over screen and allow the player to restart. | Easy–Intermediate | Game states, UI, scene restart, SceneManager |
| 21. Pong | Build a two-paddle Pong-style game with bouncing and scoring. | Intermediate | Player input, Rigidbody2D, collisions, score systems |
| 22. Breakout | Create a paddle-and-ball game where the player destroys bricks. | Intermediate | Collision detection, object destruction, prefabs, scoring |
| 23. Add Sound Effects | Add sounds for collecting objects, collisions, and scoring. | Intermediate | AudioSource, AudioClip, sound effects |
| 24. Add Background Music | Add looping music and basic audio controls to a game. | Intermediate | Background music, audio settings, AudioSource |
| 25. Animate a Character | Create simple walking or idle animations for a player. | Intermediate | Animation, Animator, sprite animation |
| 26. Animated Player Movement | Change animations based on the player's movement. | Intermediate | Animator Controller, parameters, transitions, movement |
| 27. Frogger-Style Game | Cross lanes while avoiding moving obstacles and reaching a goal. | Intermediate | Moving obstacles, collisions, triggers, level goals |
| 28. Moving Platforms | Build platforms that move horizontally or vertically. | Intermediate | Platforms, movement, parenting, Rigidbody2D |
| 29. Basic 2D Platformer | Create a platforming level with walking, jumping, and obstacles. | Intermediate | Player movement, jumping, Rigidbody2D, Collider2D |
| 30. Platformer Collectibles | Add collectible objects and scoring to the platformer. | Intermediate | Collectibles, score systems, triggers, UI |
| 31. Platformer Checkpoints | Allow the player to return to the latest checkpoint after losing a life. | Intermediate | Checkpoints, player position, respawning |
| 32. Platformer Enemies | Add simple enemies that patrol back and forth. | Intermediate | Enemy movement, basic AI, collision detection |
| 33. Platformer Power-Ups | Add temporary abilities such as speed boosts, shields, or extra jump power. | Intermediate–Advanced | Power-ups, timers, variables, player attributes |
| 34. Multiple Levels | Connect several game levels using multiple scenes. | Intermediate–Advanced | Scene management, multiple scenes, level progression |
| 35. Main Menu | Create a start menu with Play, Instructions, and Quit options. | Intermediate–Advanced | UI, buttons, SceneManager, menus |
| 36. Top-Down Racing Game | Create a vehicle that accelerates and steers around a track. | Intermediate–Advanced | Movement, rotation, checkpoints, physics |
| 37. Racing Checkpoints and Laps | Track checkpoints and count completed laps. | Intermediate–Advanced | Checkpoints, counters, game logic, UI |
| 38. Space Shooter | Create a spaceship that moves and fires projectiles at enemies. | Intermediate–Advanced | Projectiles, prefabs, spawning, collisions |
| 39. Enemy Spawner | Generate waves of enemies at regular intervals. | Intermediate–Advanced | Object spawning, timers, prefabs, increasing difficulty |
| 40. Shooter Health and Score | Add player health, enemy health, score, and game-over conditions. | Intermediate–Advanced | Health systems, scoring, UI, game states |
| 41. Wave-Based Survival Game | Survive increasingly difficult waves of enemies. | Intermediate–Advanced | Enemy waves, timers, spawning, difficulty progression |
| 42. Basic Enemy AI | Create an enemy that follows or moves toward the player. | Intermediate–Advanced | Enemy AI, vectors, player tracking |
| 43. Tower Defense Basics | Create enemies that follow a fixed path toward a goal. | Intermediate–Advanced | Enemy paths, movement, waypoints |
| 44. Tower Placement | Allow players to place defensive towers in selected locations. | Intermediate–Advanced | Mouse input, prefabs, object placement |
| 45. Tower Targeting | Make towers detect enemies and fire projectiles at them. | Advanced | Targeting, enemy detection, projectiles, AI |
| 46. Complete Tower Defense Game | Combine paths, towers, health, scoring, waves, and difficulty progression. | Advanced | AI, spawning, projectiles, UI, game balance |
| 47. 2D Adventure Game | Build a larger world in which the player explores, collects objects, and encounters enemies. | Advanced | Level design, player movement, collectibles, enemies, UI |
| 48. Adventure Inventory | Add a simple system for collecting and tracking important objects. | Advanced | Lists, variables, UI, inventory concepts |
| 49. Locked Doors and Keys | Require players to collect specific items before entering new areas. | Advanced | Game state, triggers, inventory, conditions |
| 50. Boss Battle | Create a stronger enemy with multiple attacks and a health bar. | Advanced | Boss AI, health systems, projectiles, phases |
| 51. Save Simple Game Data | Save basic information such as score, unlocked level, or high score. | Advanced | PlayerPrefs, saving data, loading data |
| 52. Complete 2D Platformer | Combine movement, animation, enemies, power-ups, checkpoints, menus, sound, and multiple levels. | Advanced | Integrated 2D game development, level progression, UI, audio |
| 53. Complete 2D Adventure Game | Combine exploration, enemies, collectibles, inventory, multiple scenes, and a boss battle. | Advanced | Integrated game systems, AI, scene management, game state |
| 54. Final Student-Designed 2D Game | Students design and build an original 2D game using the Unity and C# skills learned throughout the semester. | Advanced | Complete 2D game development, C#, design, debugging, integration |