Skip to content

Freshman (2024 Spring) Introduction to Programming II - Mini Project - Tower Defense

Notifications You must be signed in to change notification settings

rogerfan48/I2P2-TowerDefense

Repository files navigation

Freshman (2024 Spring) Introduction to Programming II

Mini Project - Tower Defense

  • a tower defense game developed in C++ using the Allegro Library
  • features:
    • Continuous enemy waves that players must defend against by strategically placing towers. Players lose one life point if enemies reach the bottom-right corner, and the game ends when life points reach zero.
    • Score-based system where eliminating enemies earlier yields higher points (Score distribution can be viewed via the Debug button)
    • Multiple defensive options including:
      • Single-target damage towers
      • Magic towers for area-of-effect damage
      • Shovel tool for tower removal (75% cost refund)
      • Global bomb ability dealing minor damage to all enemies on screen
    • Real-time display of current difficulty level, money, score, remaining lives, and surrender button along with hotkey indicators
    • Quick-access hotkeys for all towers and tools, marked with red letters in the top-left corner of each item
    • Local scoreboard system that persists between game sessions
    • Paginated scoreboard featuring 10 records per page with a maximum capacity of 20 records
  • INFO: coded and designed based on the template given from the TAs, not fully initiated by myself

Project Deliverables

  • Gameplay Screenshot

    • TowerDefense
  • Scoreboard Screenshot

    • TowerDefense
  • Here are the steps to run the game (in macOS)(see documentation/ if using other OS):

    • Download Necessary Packages
      brew install cmake
      brew install pkg-config
      brew install allegro
      brew install gcc
      brew install ninja
    • To compile
      sh macos.sh

Others

About

Freshman (2024 Spring) Introduction to Programming II - Mini Project - Tower Defense

Topics

Resources

Stars

Watchers

Forks