Skip to content

A C++ sim where Earth fights off alien hordes. Uses different types of data structures to track battles and spits out stats on who’s winning. My solo take on a team project from Cairo Uni. C++, OOP, and data structures vibes. Clone it, run ./AlienInvasion, and feed it a .txt file from Inputs.

Notifications You must be signed in to change notification settings

KarimZakzouk/Alien-Invasion-Simulator

Repository files navigation

Alien Invasion Simulator

A C++ project that simulates battles between Earth's defenses and alien armies, using data structures to analyze power dynamics and generate strategic battle statistics. This project demonstrates my ability to design and implement simulation logic and perform data-driven analysis using low-level programming techniques.

My Role

This project was originally developed as part of a team effort during my studies at Cairo University. In this repository, I have recreated my individual contributions to showcase my work:

  • Designed the simulation logic using data structures (e.g., linked lists, arrays) to model battle dynamics between Earth’s defenses and alien forces.
  • Implemented statistical analysis to generate strategic insights, such as power dynamics and battle outcomes.

Tech Stack

  • Language: C++
  • Concepts: Data Structures (linked lists, arrays, etc.), Object-Oriented Programming (OOP)

Prerequisites

To build and run this project, you’ll need:

  • A C++ compiler (e.g., g++ via GCC on Linux, MinGW on Windows, or WSL).
  • Git to clone the repository.

How to Run

Follow these steps to set up and run the Alien Invasion Simulator:

  1. Clone the Repository:

    git clone https://github.com/KarimZakzouk/Alien-Invasion-Simulator.git
  2. Navigate to the Directory:

    cd Alien-Invasion-Simulator
  3. Run the Program:

    ./AlienInvasion
  4. Starting the Program: Upon execution, the program will prompt you to enter the name of the input file located within the Inputs directory. Please provide the filename in the .txt format. For example, if your input file is named battle_data.txt, simply enter battle_data when prompted, and the program will automatically append the .txt extension.

    Please review the project document for more information.

Additional Notes

  • Team Context: This project was originally a collaborative effort with my teammates, who hosted the initial version. This repository contains my personal implementation of my contributions.

Project Documentation

https://docs.google.com/document/d/1ck__SLPvKN5DF3HxUoaG6dNM_42xdNcQObSbbQX36Zc/edit?tab=t.0


About

A C++ sim where Earth fights off alien hordes. Uses different types of data structures to track battles and spits out stats on who’s winning. My solo take on a team project from Cairo Uni. C++, OOP, and data structures vibes. Clone it, run ./AlienInvasion, and feed it a .txt file from Inputs.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published