Most first platformers die the same way: a player that floats, a jump that fires mid-air forever, and platforms that look solid until the costume overlaps them. Searchers typing how to make a platformer scratch are usually one afternoon away from that mess — and one honest jump loop away from something fun. Start with the loop. Grow the art later.
What searchers typing how to make a platformer scratch actually want
DataForSEO lists how to make a platformer scratch at 1,900 searches a month with KD 0 and informational intent (verified 2026-10-12 in tools/research-supplement.md, seed how to make a platformer). Sibling phrases in the same cluster include how to make a platformer game on scratch (1,900/mo, KD 0), how to make a platformer in scratch (1,900/mo, KD 0), and the looser head term how to make a platformer (320/mo, KD 0). The preposition variants already have posts on this blog; this page targets the high-volume natural phrasing without “in/on.”
Wikipedia’s platform game article (verified 2026-10-12) defines the genre by uneven terrain and suspended platforms that require jumping and climbing, with walking, running, jumping, attacking, and climbing as the common movement set. Scratch is where millions of learners first meet that shape. Wikipedia’s Scratch page (verified 2026-10-12) describes a block-based language aimed primarily at ages 5–16, with Scratch 3.0 as the current online editor (stable release 2 January 2019), a stage with x/y coordinates centered at 0,0, and block categories that include Motion, Looks, Events, Control, Sensing, and Variables. You do not need every category on day one. You need gravity, a grounded jump, and three platforms you can fail on.
The platformer loop in plain English
MDN’s Anatomy of a video game still frames the job as a loop: present the scene, accept input, update state, repeat (verified 2026-10-12). For a jumper that means:
- Present — draw the player and platforms at their current positions.
- Input — left/right each frame; jump only on the press edge while grounded.
- Update — add gravity to vertical velocity, move the player, resolve platform collisions, set grounded true/false.
- Repeat — forever (Scratch green-flag loop) or
requestAnimationFrame/ Phaser’s update.
Feel lives in the update step. Gravity too weak and the character moon-walks. Gravity too strong and gap B becomes a punishment. Jump impulse too high and you skip the puzzle. The win condition for today is not “finished game.” It is “gap B feels intentional.”
Scratch stage and script map for a one-screen jumper
Build the smallest fair stage before you touch scrolling. On the Scratch stage (center 0,0 per Wikipedia’s Scratch article, verified 2026-10-12):
- Player sprite — one costume for idle/run is enough. Add a second costume for jump only after the physics feels right.
- Platform sprites — three wide rectangles at different heights. Name them mentally A (start), B (the mean gap), C (goal ledge).
- Variables —
y vel,grounded(0/1), optionaljump bufferframes.
Script shape (describe the blocks; do not paste a whole project):
- When green flag clicked → go to start x/y → set
y velto 0 → setgroundedto 0 → forever: run the loop below. - Each frame: if right arrow, change x by a small positive step; if left arrow, change x by a small negative step.
- Each frame: change
y velby a negative gravity constant (try −1 first), then change y byy vel. - Collision: if touching a platform and
y vel≤ 0, snap to the platform top, sety velto 0, setgroundedto 1; else setgroundedto 0. - Jump: if space pressed and
grounded= 1, sety velto a positive impulse (try 12) and setgroundedto 0.
Playtest order: walk on A, fall off A, land on A, clear gap B, stand on C. If you can air-jump forever, your grounded flag is wrong. If you sink into platforms, snap y before the next gravity tick. If gap B is impossible, lower gravity or raise the impulse — do not widen the platform as your first fix, or you will never learn the feel budget.
Optional quality upgrades once the basics work: a 4–6 frame coyote window (still allow jump shortly after leaving a ledge), an 6–8 frame jump buffer (queue jump if pressed slightly early), and a variable jump cut (reduce y vel when space is released on the way up). Those three tricks are why console platformers feel fair. Scratch can express them with timers and boolean flags; you do not need an engine install to learn them.
Common failure modes while you are still on the Scratch stage:
- Infinite air jumps — you set
groundedfrom “touching platform” without checking that you are falling or standing. Requirey vel≤ 0 (or a “feet sensor” costume offset) before granting grounded. - Sticky walls — horizontal motion still runs while overlapping a platform side. Separate X resolution from Y resolution: move X and push out, then move Y and push out.
- Jitter on landing — gravity keeps applying after snap. Zero
y velon land and skip gravity for that frame. - Unfair gap B — you tuned jump height with a full-bar press, then players release early. Add the jump cut so short taps make short hops and full holds clear B.
Keep enemies out until those four are gone. A goomba on a broken jump teaches rage, not game design.