🎮 My First Python Game â€ĸ Episode 1 of 7 â€ĸ See All Episodes
🎮 Episode 1 â€ĸ Beginner â€ĸ No Experience Needed

Don't Drop It!
Fruit Catch Game

Your first Python game: slide a basket to catch falling fruit, score points, and speed things up until you drop one. You will learn the game loop, keyboard input, random numbers and collision.

🎮 Ages 10+ 🎮 ~1.5 Hours 🎮 Python ✓ Free
🎮 Game loop 🎮 Keyboard input 🎮 Random numbers 🎮 Variables 🎮 Collision ? Speed scaling
⭐
0 XP
Level 1
🎮0
Your Progress 0 / 6 steps
đŸ› ī¸
Build it in our Python Studio too: lay out a level on a grid, tick the Pygame features and download a real main.py you can run, right in the browser with no install. Open the Python Mod Studio →
đŸ“Ļ
Reference project: download the finished code files used in this workshop: âŦ‡ python-catch-workshop-reference.zip. Every code block also has a Copy button.
🎮
Stuck?
- ModuleNotFoundError ? Run pip install pygame in your terminal
- pygame not found ? Make sure you installed Python with the "Add to PATH" checkbox
- Window flashes and closes ? Your code has an error â€ĸ check the terminal for red text
🌐
How it works: write the Python in each step, and the canvas on the right shows what your code does. It is a live preview that maps Pygame ideas to a playable game. Type to see it update, or press Apply to Canvas to test it straight away.
đŸĻŠ
Lumo says: every step adds one feature to the same game. Type a little, click Apply to Canvas, and test it straight away. There is no wrong answer you can't undo.

Build Fruit Catch Step by Step

Each step adds one feature. Write the code, watch it come alive in the canvas, then make it your own.

Step 1 / 6
An orange basket at the bottom of a dark screen
🎮
What you just learned:
  • Setting up a Python/Pygame project and running a 60 FPS game loop
  • Reading held keyboard input with pygame.key.get_pressed() for smooth movement
  • Spawning objects at random positions using random.randint()
  • Detecting overlap between objects with colliderect()
  • Scaling difficulty by tying fall speed to the score value
🎮🎮🎮🎮?
Workshop Complete!
Game loop, input, random spawning, collision, difficulty, the DNA of every arcade game, written in Python by you. Episode 2: jumping!
0
Total XP
1
Level
0
Best Streak
0%
Accuracy
🎮-🎮 Episode 2: Simple Platformer ?
⭐ 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
🐍 Build Fruit Catch in the Python Studio Pick the game in the browser, tune it, play it live, then download a runnable Pygame project with real Python code. No install. Open the Studio →