A classic Flappy Bird clone built with Godot 4.6 and GDScript.
- Press Space to flap and keep the bird in the air
- Navigate through the gaps between green pipes
- Each pipe you pass earns +1 point
- Hit a pipe or the ground → Game Over!
- Press Space to restart after dying
- Custom pixel art bird with squash-and-stretch animation
- Classic green pipes with highlighted edges and cap lips
- Scrolling ground with grass and dirt detail
- Parallax sky background with drifting clouds and city silhouette
- Score tracking with punch animation on each point
- Game Over screen with dark overlay and screen shake effect
- Smooth bird rotation — tilts up when flapping, nosedives when falling
- 3 game states: Ready → Playing → Game Over
- Godot 4.6 or later
- Clone the repository:
git clone https://github.com/Ezed9/flappybird.git
- Open Godot 4.6
- Click Import → navigate to the cloned folder → select
project.godot - Click Import & Edit
- Press F5 (or ⌘B on Mac) to play!
flappybird/
├── assets/
│ └── bird.png # Pixel art bird sprite
├── scenes/
│ ├── bird.tscn # Bird scene (CharacterBody2D)
│ └── main.tscn # Main game scene
├── scripts/
│ ├── background.gd # Parallax sky with clouds & city
│ ├── bird.gd # Player controller (gravity, flap, tilt)
│ ├── game_manager.gd # Game states, pipe spawning, scoring, UI
│ ├── ground.gd # Scrolling ground with collision
│ └── pipe_pair.gd # Pipe pair with gap and score detection
├── project.godot # Godot project config
└── README.md
All values are exposed in the Godot Inspector for easy tuning:
| Parameter | Default | Description |
|---|---|---|
jump_strength |
-320 |
Upward impulse on flap |
gravity |
900 |
Downward acceleration (px/s²) |
max_fall_speed |
700 |
Terminal velocity |
pipe_spawn_interval |
1.6s |
Time between pipe spawns |
pipe_speed |
200 |
How fast pipes scroll left |
pipe_gap |
160 |
Vertical gap between pipes |
- Godot Engine 4.6 — Open-source game engine
- GDScript — Python-like scripting language
This project is licensed under the MIT License — see the LICENSE file for details.
Made with ❤️ and Godot