Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rogerfan48/project-fresh2-i2p2-towerdefense
Tower Defense game project developed for Introduction to Programming II (Freshman Spring).
https://github.com/rogerfan48/project-fresh2-i2p2-towerdefense
allegro cpp
Last synced: 1 day ago
JSON representation
Tower Defense game project developed for Introduction to Programming II (Freshman Spring).
- Host: GitHub
- URL: https://github.com/rogerfan48/project-fresh2-i2p2-towerdefense
- Owner: rogerfan48
- Created: 2024-05-27T08:20:49.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-12-31T07:21:46.000Z (10 days ago)
- Last Synced: 2024-12-31T08:22:24.112Z (10 days ago)
- Topics: allegro, cpp
- Language: C++
- Homepage:
- Size: 29.1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Project - Freshman Spring - Introduction to Programming II - 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### Project Deliverables
- Gameplay Screenshot
- ![TowerDefense](Images/game.png)
- Scoreboard Screenshot- ![TowerDefense](Images/scoreboard.png)
- Here are the steps to run the game (in macOS)(see [documentation/](https://github.com/rogerfan48/Project-Fresh1-I2P1-Pacman/blob/main/documentation) if using other OS):
- Download Necessary Packages
```shell
brew install cmake
brew install pkg-config
brew install allegro
brew install gcc
brew install ninja
```
- To compile
```shell
sh macos.sh
```### Others
- the **coursework** of I2P2: [Course-Fresh2-I2P2](https://github.com/rogerfan48/Course-Fresh2-I2P2)
- **Final Project** of I2P2: [Project-Fresh2-I2P2-ArenaLegends](https://github.com/rogerfan48/Project-Fresh2-I2P2-ArenaLegends)