
Death without checkpoints is just punishment. Nobody wants to replay an entire level because they clipped a spike at the 90% mark. Here's how to build a respawn checkpoint system in GDevelop using the community Checkpoints extension.
What You Need in Your Scene
Three objects:
Player — your main character
Checkpoint sprite — a flag, glowing disk, star, whatever reads as "progress saved"
Hazard — spikes, pits, enemies, anything that kills the player
Install the Checkpoints Extension

Open your Project Manager → Extensions → click the + button → search "Checkpoints."
Watch out: there's a "Checkbox" extension that shows up in results too. You want Checkpoints, not Checkbox. Installing the wrong one means the actions you need won't exist when you go looking for them.
Save Logic: Store the Player's Position on Contact
Create an event with this structure:
Condition: Player is in collision with Checkpoint
Action: Checkpoints → Save a checkpoint for an object
The save action takes three inputs:

Object: your player
X and Y coordinates: where the player should reappear. Hover over your desired respawn point in the Scene Editor to grab these. Spawning slightly above the checkpoint (e.g., X: 288, Y: -95) prevents the player from clipping into the floor.
Checkpoint Name: a string identifier like "Checkpoint1". This must be in double quotes. Without quotes, GDevelop treats it as an undefined variable and the whole thing silently breaks.
Load Logic: Respawn on Death
Condition: Player is in collision with Hazard
Action: Checkpoints → Load a checkpoint
Use the same player object and the exact same checkpoint name string you used in the save action.

When the player hits a hazard, they teleport back to the saved coordinates instantly.
Pro tip: If you have multiple hazard types, put them all in an object group called "Hazards." One collision event covers every dangerous object in the game instead of duplicating events per spike variant.
Visual Feedback
Players need to know the checkpoint activated. Give your checkpoint sprite two animations:
Off — default inactive state
On — activated state (color change, flag wave, glow, etc.)
Add a "Change animation to On" action to your save event. Now the checkpoint visually confirms the save.

Common Mistakes
Respawning directly on the checkpoint — offset the Y coordinate so the player drops in from above, otherwise they can get stuck in geometry
Forgetting quotes on the checkpoint name — this fails silently, which makes it annoying to debug
Wrong extension installed — Checkbox ≠ Checkpoints
Wrap Up
The whole system is two events: one save on checkpoint collision, one load on hazard collision. The Checkpoints extension handles coordinate management so you don't have to track X/Y positions in variables manually. From here you can chain multiple checkpoints per level, add death animations, or build in a respawn cooldown.
Top comments (0)