Skip to main content

Python Game Development II: Intermediate Game Dev

Physics, tile worlds, AI, juice and shipping

About this course

Take your pygame-ce games from prototype to product: sprites at scale, easing and particles, forces and collisions, scenes and saves, tile-based platformers, procedural terrain, UI and editors, NPC AI and A*, juice and audio, genre studies, a tower-defense capstone, and shipping executables.

Who it is for: You finished Game Dev I (or can already build a small pygame-ce game with sprites, collisions and sound).

14three-hour modules
27lessons
42contact hours
46.25content hours (instruction + lab)

Before you start

This course assumes:

New Python features are taught where they are first needed, in short “Python sidebar” boxes:

  • Enum (L09)
  • @dataclass and asdict (L10)
  • heapq (L20)
  • Recursion refresher (L23)
  • copy.deepcopy (L18, inline)

Setup: install Python 3.10 or newer, then run pip install pygame-ce in a terminal. Lesson 1 walks through it.

Modules

Each module is one three-hour session: instruction, guided practice and a lab you can finish at home. Teaching it in a classroom? See the 14-session instructor-led syllabus (PDF).

  1. Module 1: Sprites at Scale (3.25 h)

    Manage many sprites with Groups, layers and masks, then keep big scenes fast with spatial hashing and object pools.

  2. Module 2: Smooth Motion & Particles (3.5 h)

    Build the course's single easing library with frame-rate-independent smoothing, then use it to drive particle effects.

  3. Module 3: Forces & Gravity (3.25 h)

    Model velocity, acceleration and forces with semi-implicit Euler and a fixed timestep, then add platformer gravity and variable jumps.

  4. Module 4: Bounces & Impacts (3 h)

    Add restitution and friction, then resolve circle-circle collisions with impulses and mass.

  5. Module 5: States, Scenes & Saves (3.5 h)

    Organize a game into scenes with a push/pop stack and transitions, then save and load progress safely with versioned data.

  6. Module 6: Tile Worlds (3.5 h)

    Build tile maps with collision and JSON levels, then follow the player with smooth, clamped cameras.

  7. Module 7: Platformer Feel (3 h)

    Write a complete character controller with coyote time and jump buffering, then add depth with parallax layers.

  8. Module 8: Chance & Generated Worlds (3.25 h)

    Use seeded randomness for loot, spawns and fair luck, then generate terrain and biomes from noise.

  9. Module 9: UI & Tools (3.5 h)

    Build an anchored HUD, minimap and dialog box, then a level editor with undo and validation.

  10. Module 10: NPC AI (3.5 h)

    Give NPCs believable behavior with finite state machines, then find paths through tile worlds with A*.

  11. Module 11: Juice & Audio (3.25 h)

    Make every hit feel good with trauma shake, hit stop, flashes and tweens, then mix audio with buses, panning and crossfades.

  12. Module 12: Genre Studio (3.5 h)

    Study two genres end to end: match-3 and sliding puzzles, then RPG stats, inventory, dialogue, quests and saves.

  13. Module 13: Capstone (3 h)

    Build a complete tower-defense game that pulls together particles, UI, waves, cooldowns and pathing.

  14. Module 14: Ship It (3.25 h)

    Freeze your game into desktop executables with PyInstaller, then launch on itch.io and plan updates.