🗒 Cheat Sheet← Lesson
BitWithBite
Pygame Mastery Worksheet

🏃 Movement System

Module 8 of 20 · Level ★★☆ · Time: 40 min
SCORE___ / 20
NameClassDate
After this worksheet you can
Apply velocity/acceleration each frameImplement gravity and jumpingAdd double jump and dashClamp movement to screen boundaries
📚 Quick Recap

Movement feel comes from velocity, acceleration and friction applied every frame, plus gravity pulling objects down and a negative-velocity jump that gravity naturally arcs back down — with double jump and dash layered on top.

🧠 Section A · Concept Check ● INTERMEDIATE 4 × 1 = 4

1What is "speed" relative to a velocity vector?
2How is double jump typically implemented?
3Why is jump velocity negative in Pygame?
4What does friction do with no movement input?

🧮 Section B · Problem Solving ● INTERMEDIATE 2 + 3×3 = 11

5Position updates each frame as pos += * dt.
6Gravity is applied as a constant added to vertical velocity every frame.
7Write the pattern for resetting jumps_left only when the player is on_ground.
8What's the purpose of a cooldown timer on a dash ability?
9Why should screen boundary clamping happen after movement is applied, not before?

🚀 Section C · Challenge ● CHALLENGE 5

10Explain why acceleration-based movement (ramping up to max speed) feels better than instantly snapping velocity to max speed.
💭 Reflection — the most useful thing I learned:
A ___/4   B ___/11   C ___/5   Total ___/20 Teacher's Signature Parent's Signature
✂ answer key — fold or cut before handing out

1-B   2-B   3-B   4-B  |  5 velocity (vel)   6 acceleration   7 = if on_ground: jumps_left = MAX_JUMPS   8 = it prevents the dash from being spammed repeatedly, forcing a delay between uses   9 = movement must be applied first so the new position exists to be clamped; clamping first would use the stale old position and let the object briefly overshoot before being corrected  |  10 = instant snapping feels robotic/twitchy because there's no sense of weight or momentum; gradual acceleration mimics real physical objects building up speed, which reads as more natural and controllable

📄 Need offline practice?Download the print-ready PDF or open the one-page cheat sheet.
⬇ Worksheet PDF 🗒 Cheat Sheet