⭐ My First Video Game · Series 1 · Episode 2 of 6
🏎️ Ep 1 · Zoom Zoom 🍄 Ep 2 · Jump Jump 🔫 Ep 3 · Bang Bang 🧚 Ep 4 · Fairy Survivors 🦍 Ep 5 · Barrel Blast 🗡️ Ep 6 · Pixel Quest
🔧 Godot Workshop · Parent & Child
⭐ My First Video Game

Jump Jump! 🍄Build Your Own Mario-Style Platformer

Run, jump, and stomp your way to your very first platform game! You'll make a character who leaps over gaps, bounces on enemies, and collects coins just like Mario!

🧒 Age 5+ with a grown-up ⏱️ About 1–2 hours 🎮 Godot 4 (free!) ✨ 12 fun steps
🍄
📦 Starter Template
📦
Starter Template Available — open it alongside this workshop! Pre-built Godot 4 project with all scenes and scripts ready to go. Download, open in Godot 4, then follow each step to build on top.
⬇ Download Free
0 XP
Level 1
🔥0
🍄 Workshop Progress 0 / 12 steps
1
🌟
▶ Current
Welcome, Game Developer!
A big hello before we start building!
Active
🎯
Goal for this step

Understand what we're going to make, and get Godot open and ready!

🧒 For the child

We're going to make a REAL platform game like Mario! That means a little character who can run and JUMP over things. By the end, you'll have your very own game that you made yourself. That's amazing! Let's open Godot and get started! 🎉

👨‍👩‍👧 For the grown-up

This is Episode 2 of the My First Video Game series — no prior Godot experience is needed. Key concepts over the 12 steps: CharacterBody2D for a physics-based player, move_and_slide() with gravity, TileMapLayer for level design, Camera2D to follow the player, Area2D for collectibles, and a simple group-based enemy stomp. Godot 4 must be installed (free at godotengine.org).

👨‍👩‍👧
Grown-up note: Purple boxes like this one are just for you! The child can do most of the typing themselves — your job is to read the steps together and help when they get stuck. Celebrate every little win! 🎊
✏️
Fill in the Blanks
+15 XP
We are using a free game engine called to build a game — the kind where a character runs and jumps, just like Mario.
🧠
Knowledge Check
+15 XP
What kind of game are we building in this workshop?
AA racing game where you steer a car
BA Mario-style platformer where you run and jump
CA quiz game with multiple-choice questions
2
📁
🔒 Locked
Make a New Project
Every game starts with a blank canvas!
Locked
🎯
Goal for this step

Create a new Godot 4 project called "My Platformer" and get it open.

🧒 For the child

Godot is like a magic toybox for making games — and it's completely FREE! First, we need to make a new project. Think of it like getting a fresh new notebook just for our game.

👨‍👩‍👧 For the grown-up

Standard Godot 4 project setup. Choose the Compatibility renderer — it's the most stable for 2D beginners and works on all hardware. Point the project folder somewhere easy like the Desktop.

What to do:

  1. 1Open Godot 4. Click the big "New Project" button.
  2. 2In the Project Name box, type: My Platformer
  3. 3Click "Browse" and choose a folder — your Desktop is perfect!
  4. 4Make sure Renderer says Compatibility.
  5. 5Click the green "Create & Edit" button. Your new game opens up!
🕹️
Try it! Can you find the FileSystem dock at the bottom of Godot? That's where all your game files will live — like a folder on your computer, but just for your game!
🔢
Put It In Order
+15 XP
Click these steps in the correct order to make a new Godot project:
Click "Create & Edit" to open the new game
Click the "New Project" button in Godot
Type a project name and choose a folder
🧠
Knowledge Check
+15 XP
Which renderer should beginners choose for a 2D game?
AForward+
BCompatibility — the most stable for 2D and works on all hardware
CMobile only
3
🧑
🔒 Locked
Build the Player
Make the little character who does all the jumping!
Locked
🎯
Goal for this step

Create a Player scene with a CharacterBody2D — this is the hero of your game!

🧒 For the child

Now we build our main character! In Godot, every character is made of pieces called "nodes" — like building blocks. The special one we need is called a CharacterBody2D. It knows how to walk and jump!

👨‍👩‍👧 For the grown-up

Node tree: CharacterBody2D (root, rename to "Player") → Sprite2D + CollisionShape2D (RectangleShape2D, sized to a rough character body ~24×40px). Use a coloured rectangle or placeholder for the sprite. Save as player.tscn.

What to do:

  1. 1In the top menu, click Scene → New Scene.
  2. 2Click "Other Node" and search for and choose CharacterBody2D.
  3. 3In the Scene tree, double-click the node name and rename it Player.
  4. 4Click the + button to add a child node: Sprite2D. Give it a coloured square in the Inspector.
  5. 5Add another child: CollisionShape2D. Set its Shape to RectangleShape2D.
  6. 6Press Ctrl+S and save it as player.tscn.
🕹️
Try it! Make your character any colour you like! A red square, a blue blob — anything! We can make it look fancier later.
✏️
Fill in the Blanks
+15 XP
Every character in Godot is built from pieces called . The one that knows how to walk and jump is the .
🧠
Knowledge Check
+15 XP
What does the CollisionShape2D node do for the player?
AIt plays the jump sound
BIt chooses the player's colour
CIt gives the player a solid body so it can bump into floors and walls
4
🏃
🔒 Locked
Make the Player Run!
Press left and right to move your character!
Locked
🎯
Goal for this step

Write a script so your character can run left and right using the arrow keys.

🧒 For the child

Time for some CODE! Don't worry — we'll go slowly. We're going to write instructions that tell our character: "when I press the right arrow key, move that way!" It's like programming your own remote control.

👨‍👩‍👧 For the grown-up

Attach a GDScript to the CharacterBody2D root. This step focuses on horizontal movement only. We use Input.get_axis() — a Godot 4 shorthand that returns -1, 0, or +1. move_and_slide() handles all collision response.

👨‍👩‍👧
Grown-up note: Leave gravity out for now — it's easier for kids to understand movement first, then add gravity in the next step. Breaking it up like this keeps confidence high!

What to do:

  1. 1Click on the Player node in the Scene tree.
  2. 2Click the scroll icon (Attach Script) and click Create.
  3. 3Delete everything in the script and type the code below.
  4. 4Press Ctrl+S to save!
extends CharacterBody2D

const SPEED = 220  # How fast we run

func _physics_process(delta):
    # left/right movement — get_axis returns -1, 0 or +1
    var direction = Input.get_axis("ui_left", "ui_right")
    velocity.x = direction * SPEED

    move_and_slide()
🕹️
Try it! Press F5 to run the game. Does your character slide left and right? (They'll float in the air for now — that's fine, we fix that next!)
True or False?
+15 XP
Input.get_axis("ui_left", "ui_right") gives back -1, 0, or +1 depending on the arrow keys.
move_and_slide() handles bumping into floors and walls for us.
A bigger SPEED number makes the character move slower.
💻
Code Challenge
+20 XP
Fill in the blanks so the player moves left and right with the arrow keys:
var direction = Input.("ui_left", "ui_right") velocity.x = direction * move_and_slide()
💡 Hint: One reads the arrow keys (-1 to +1); the other is the constant that decides how fast we go.
🧠
Knowledge Check
+15 XP
Why do we set velocity.x = direction * SPEED?
ATo make the player jump higher
BSo the player moves left (-1), stays still (0), or moves right (+1) at our chosen speed
CTo change the player's colour as it moves

🎮 What We're Building

A side-scrolling platform game just like Mario or Sonic! Your character runs left and right, jumps over gaps, lands on platforms, and tries to reach the end of the level.

🧒 For the Child

Have you ever played Mario? We're going to make our VERY OWN version! You'll build a little character who can jump, collect coins, and even stomp baddies. You're going to be a real game developer!

👨‍👩‍👧 For the Grown-Up

This is Episode 2 of the My First Video Game series — no prior Godot experience needed (start with Episode 1: Zoom Zoom if you're brand new!). New concepts introduced: CharacterBody2D, gravity & jumping, TileMapLayer, Camera2D, and coins using Area2D. We keep code ultra-short and friendly.

✨ What You'll Make

  • A character who runs left and right
  • Gravity and a jump button
  • Solid platforms made from tiles
  • A camera that follows your character
  • Coins to collect with a score counter
  • A goal flag to finish the level
  • A simple enemy to stomp
  • Your very own Mario-style level!
⭐ My First Video Game · Series 1
You finished Episode 2! 🎉
Next up — shoot enemies and explore a randomly generated map!
← Ep 1 · Zoom Zoom 🔫 Next: Ep 3 · Bang Bang! → ⭐ View My Progress & Certificates

This workshop was free and took many hours to build. If it helped you learn something new, consider supporting the project.

☕ Support on Ko-fi

🛠️ Free In-House Dev Tools

Make It Yours

Use these free browser tools alongside this workshop to create custom sprites, sounds, levels and colour schemes for your game. No installs. Free forever.

🎨
Pixel Studio
Draw sprites & animations
🗺️
Level Designer
Build 2D tile maps
🎵
SFX Studio
Create custom sound effects
🎨
Colour Palette
Build a game-ready colour scheme
🎲
Game Idea Gen
Random game concepts & prompts
🛠️ See All 20 Free Tools →