Skip to content

marwan995/Ghost-of-CMP

Repository files navigation

⚡️Ghost of CMP⚡️

Ghost of CMP is a first-person shooter game that's built in C++ and OpenGL with a main focus on computer graphics concepts, OOP, and ECS framework.

License: MIT GitHub forks GitHub stars GitHub Language GitHub repo size

📝 Table of Contents

🐦 About

  • Ghost of CMP is a project we created in a computer graphics course at Cairo University to implement the concepts we learned using OpenGL.

  • As the game is a first-person shooter perspective projection is used instead of orthographic projection.

  • The instructions file shows how the project started and what tasks needed to be implemented.

📖 Story

  • Atef a normal CMP student who got trapped in the digital realm of his PC while fixing bugs that a malicious virus spread through his PC. A lighting strike hits his PC which thrusts Atef into a digital journey in his motherboard.

  • Armed with his trusty weapons, he navigates through a labyrinth of circuits and battles against vicious viruses and rogue components.

  • Step into the shoes of Atef while he tries to free his precious PC from the clutches of the killer virus infecting it and get out of the digital realm back to being a normal human being working on his college projects.

🎥 Trailer

Trailer on YouTube

⛏️ Built with

🎮 Gameplay

Controls

  • WASD: move
  • Mouse Left Click: fire
  • Mouse Right Click: aim down sight
  • Shift: run
  • Space: jump
  • 1, 2, 3: change weapons

Weapons

  • Laser Rifle: has a high fire rate but the lowest damage
  • Shotgun: has low fire rate and range but high damage
  • Rocket Launcher: has low fire rate with the highest damage. On collision, an explosion is created with AOE damage

Progression

  • You need to defeat Boss 1 to open the gate to Boss 2 room
  • The game ends when Boss 2 is defeated
  • Shotgun and Rocket Launcher are scattered in rooms around the map

Enemies

  • Canon: It doesn't move and only shoots laser on the player when he's in range
  • Spider: It moves towards the player and damages him on touch
  • Boss 1: It fires rockets on the player and damages him on touch then teleports away
  • Boss 2: It spawns spiders to attack the player and fires on him

🏁 Getting started

  1. Clone the repository
$ git clone https://github.com/marwan995/Ghost-of-CMP.git
  1. Navigate to repository directory
$ cd Ghost-of-CMP
  1. Build the project
$ make
  1. Navigate to the binary file
$ cd bin
  1. Run the game
$ ./GAME_APPLICATION

✍️ Contributors

marwanemad07
Marwan Emad
marwan995
Mrawan Samy
sofa5060
Seif Hany
MohamedAtef308
Mohamed Atef

🔒 License

This software is licensed under MIT License, See License.

Packages

No packages published

Languages