Breakout the GameMaker way: spawn a brick wall with two loops, use collision events for bouncing, add particle explosions with the built-in particle system, and screen shake, juice is a first-class citizen here.
💡 Hint: Ease the value down a little each frame; the ranged random function picks the wobble offset.
🧠
Knowledge Check
+15 XP
Shake decaying by 0.3/frame (not instantly stopping) makes the effect…
ALonger and floatier
BSnap hard then settle smoothly, a punch followed by recovery, like real impacts
CRandom forever
6
🏆
Win Condition & Polish Pass
instance_number and the finishing checklist
Locked
🎯
Goal for this step
Detect the cleared wall and complete the game loop.
1Win check, one line in obj_game Step: if (instance_number(obj_brick) == 0) room_goto(rm_win);
2rm_win / rm_gameover rooms with score display and R-to-restart (reset globals!).
3Polish checklist: ball speed cap (±7), serve delay (a 60-frame alarm before the ball moves, meet Alarm events!), sound effects (audio_play_sound on hits, the built-in bounce sounds work).
4Three engines, three Breakouts, you now FEEL what engines automate. Episode 4 continues in the Space Shooter trainer!