GDevelop Visual Events Cheat Sheet
A one-page printable reference for conditions, actions, behaviors, variables, expressions and the most-used GDevelop event patterns. Pin it next to your monitor!
A one-page printable reference for conditions, actions, behaviors, variables, expressions and the most-used GDevelop event patterns. Pin it next to your monitor!
| At the beginning of the scene | Runs once when scene starts |
| Timer "name" exceeded X seconds | Repeat after delay |
| Value of variable = X | Compare scene/global variable |
| Object A is in collision with B | Hit-test two objects |
| Key [X] is pressed | Keyboard input check |
| Mouse button pressed (left) | Mouse click check |
| Object X is off-screen | Bounds check for cleanup |
| Force on Y of Player < 0 | Is falling (top-down/platformer) |
| Variable "hp" of Player โค 0 | Death check on object variable |
| Change variable X of object | Add, set or subtract a value |
| Create an object | Spawn at position or expression |
| Delete an object | Remove from scene |
| Play a sound/music | Trigger audio file |
| Change the scene | Transition to another scene |
| Modify the position of Object | Change X/Y directly |
| Add a force (direction & speed) | Push/move an object |
| Hide / Show an object | Toggle visibility |
| Restart the scene | Reload current level |
| Display a text | Change text object content |
| Platformer Character | 2D platformer movement (jump, gravity) |
| Top-Down Movement | 8-direction movement (WASD/arrows) |
| Pathfinding | Grid-based pathfinding to target |
| Flash | Flash object colour periodically |
| Tween | Smooth property animation |
| Draggable | Mouse/touch drag objects |
| Anchor | Pin to screen edge (UI) |
| Destroy outside screen | Auto-remove off-screen |
| Camera extension | Follow player, zoom, shake |
โโ OBJECT VARIABLES โโ -- per-instance, on each object Change variable "hp" of Player: = 10 Change variable "score" of Player: + 1 Condition: Variable "hp" of Player โค 0 โโ SCENE VARIABLES โโ -- shared within the current scene Change variable "wave": = 3 Condition: Variable "enemies_alive" = 0 โโ GLOBAL VARIABLES โโ -- persist across all scenes Change variable "high_score": = 999 Condition: Variable "level" โฅ 5
| Random(min, max) | Random number in range |
| Random(0, 100) | Random integer 0-100 |
| Timer("name") | Seconds since timer started |
| ObjectCount("Enemy") | Number of object instances |
| Count(VariableName) | Count a scene variable |
| Player.X() / Player.Y() | Object position |
| CameraX() / CameraY() | Camera position |
| TimeDelta() | Time since last frame |
| SceneVariable("name") | Read a scene variable |
| GlobalVariable("name") | Read a global variable |
โโ REPEAT X TIMES โโ Repeat 5 times: Create object "Coin" at (Random(0,800), Random(0,600)) โโ FOR EACH OBJECT โโ For each object "Enemy": If distance(Player, Enemy) < 100: Change variable "alert" of Enemy: = 1 โโ WHILE LOOP โโ While variable "i" < 10: Change variable "i": + 1
โโ HEALTH SYSTEM โโ Condition: "Player" is in collision with "Enemy" Then: Change variable "hp" of Player: - 1 Then: Delete object Enemy Condition: Variable "hp" of Player โค 0 Then: Change scene to "GameOver" โโ SCORE TRACKING โโ Condition: "Player" is in collision with "Coin" Then: Change variable "score": + 10 Then: Delete object Coin Then: Play sound "coin.ogg" Then: Display text "Score: " + VariableString(score) โโ ENEMY AI (CHASE) โโ Condition: Always Then: Add force to Enemy towards Player, speed 150 โโ INVENTORY SYSTEM โโ Condition: Variable "has_key" = 1 Then: Delete object "Door" โโ DIALOGUE BOX โโ Condition: Key [E] pressed Then: Show object "DialogBG" Then: Display text "Hello!" on "DialogText" Then: Pause the game
Follow one of our free step-by-step workshops in the Workshop hub.
๐ง Browse Workshops โ