Skip to content

cslylla/prehistoric-leap

Repository files navigation

Prehistoric Leap

A Flappy-Bird-style arcade game set in prehistoric times, built with Python and Pygame as part of the Codecademy AI Maker Bootcamp.

Game View

The Story of Tiny

Tiny the T-Rex

Meet Tiny — a baby T-Rex with big dreams and even bigger teeth. When a volcanic eruption tears through his homeland, Tiny has no choice but to flee through the ancient caves beneath the earth. But the caves aren't empty. Jagged stone pillars block every turn, hungry velociraptors patrol the skies, and the only comfort along the way are the scattered gold coins left behind by civilizations long forgotten. Armed with nothing but his tiny arms and a whole lot of courage, Tiny leaps into the unknown. How far can you take him?


Features

  • 🦖 Fly Tiny through procedurally generated stalactites & stalagmites
  • 🦅 Dodge velociraptors flying in on unpredictable wave patterns
  • 🪙 Collect gold coins that spawn between walls for bonus points
  • 📈 5 levels that scale automatically — from Stone Age to Meteor Strike
  • 🏆 Persistent high score saved to disk
  • 🎵 Full sound design — background music, flap, enemy alert, coin pickup, game over
  • ⚙️ Data-driven difficulty via levels.json — tweak everything without touching code

How to Play

Input Action
SPACE Flap
Left Click Flap

Fly through wall gaps (+1 score each), collect coins, avoid everything else. The game gets harder as your score climbs. That's it — simple to learn, tough to master.

Levels

# Name Starts at Speed Coin Value
1 Stone Age Score 0 Slow 1x
2 Jurassic Era Score 5 Medium 1x
3 Cretaceous Period Score 12 Fast 1x
4 Extinction Event Score 22 Faster 2x
5 Meteor Strike Score 35 Max 2x

Play Now (Web Version)

You can play Prehistoric Leap directly in your browser here: Play NOW

Note: Due to browser security policies, you must click the game screen once after loading to enable the background music and sound effects.

Installation & Local Play

1. Clone the repo

git clone <repository-url>
cd prehistoric-leap

2. Activate the virtual environment

Windows:

gaming\Scripts\activate

macOS/Linux:

source gaming/bin/activate

3. Install dependencies & run

pip install -r requirements.txt
python main.py

🏗️ Web Build Instructions

To build the web version locally: python -m pygbag --template static/index.html .

Configuration

Everything lives in levels.json: gravity, wall speed, gap size, enemy frequency, coin spawn chance, coin value, and more. Add levels, remove them, or rebalance the whole game from one file.

To reset your high score, edit highscore.json or just delete it.

Tech Stack

Tech Role
Python 3.10+ Core logic and game state management.
Pygame CE Rendering, 2D physics, and audio engine.
JSON Level configuration and high-score persistence.
Pygbag Runtime environment and WebAssembly (Wasm) compilation.
GitHub Actions CI/CD pipeline for automated web builds on every push.
CSS3 & HTML5 Custom prehistoric-themed loading interface.

Project Context

Built as part of the Codecademy AI Maker Bootcamp, focusing on game design, procedural content generation, and data-driven architecture.

Credits & Tools

  • Visual Assets: Character and Environment sprites generated via Gemini (Nano Banana model)
  • Sound Design: Custom sound effects generated with Python synthesis tools (pydub & FFmpeg) using ChatGPT
  • Built with: Pygame
  • Deployed on GitHub Pages

About

A prehistoric themed Flappy Bird game developed with PyGame and Python

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published