Inspiration

I wanted to challenge myself to make a “real” game not just draw a triangle in C++. I’ve always heard "game dev in c++ is hard" so I figured I’d see how far I could get. Spaceships + silly enemies felt like the perfect excuse.

What it does

Tiger Space Program is a top-down shooter where you dock at a space station, pick a planet (Earth or Mars), drop into a level, grab the key, fight enemies, and reach the teleporter. You collect credits, buy upgrades, and eventually unlock the next planet. There are different enemy types (bouncers, shooters, even a boss) and a simple HUD for ammo/health/credits.

How I built it

  • Language: C++
  • Graphics: raylib which wraps OpenGL giving more out of the box features, it's still C++ though.
  • Game Structure: I used states to define what screen the player was looking at and how their resources were managed on that page.
  • Entities: player, bullets, enemies, pickups are all updated every frame. This could definitely be an issue later on after the game expands.
  • Art: Pixel art generated by GPT-5

Challenges I ran into

  • I'm not the biggest C++ developer and a lot of the issue I ran into were with the make files and compilation.
  • Collision and tile mapping are some topics I want to revisit but I have temporary solutions for now.
  • Managing different enemy behaviors
  • Game state transitions between levels and screens

Accomplishments that I'm proud of

  • I actually made a playable C++ game that has a story.
  • I safely managed textures, inputs, updates, and drawings with raylib
  • I made multiple levels and even different planets off my engine
  • I added a shop to add to the rouge like dungeon crawler feel

What I learned

  • C++ with raylib isn't as scary as I thought, maybe OpenGL won't be too bad (famous last words)
  • Creating maps as 2D arrays allows me to quickly search for open tiles or verifying what is on the level.
  • Visual feedback when getting hurt is very important

What's next for Tiger Space Program

  • Powerups: I want to add a temporary fire rate boost, shield, or maybe double credits. Maybe incorporate some pickup drops from enemies.
  • Planets: I want to create more planets with more themes and different levels
  • Enemies: Adding more enemies with different attacking styles would be super cool
  • Sound Effects: Because what's a game without sound?

Built With

Share this project:

Updates