Skip to content

Commit

Permalink
✨ README update (#76)
Browse files Browse the repository at this point in the history
* 📝 Updated README.md

* 📝 Created LICENSE

* 📝Added License to README.md

* 📸 Added few more visuals

* ✨ Added introduction, DS, and class design sections

---------

Co-authored-by: Habiba Ayman <137416623+habibayman@users.noreply.github.com>
Co-authored-by: AhmedSobhy01 <samahmedsobhy@gmail.com>
  • Loading branch information
3 people authored Jul 8, 2024
1 parent 3b1a8d0 commit 4c1b34e
Show file tree
Hide file tree
Showing 2 changed files with 122 additions and 8 deletions.
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2024 Helana Nady

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
109 changes: 101 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,105 @@
<div align="center"> <h1>👾 Alien Invasion: simulate or surrender ! 👾</h1> </div>
<div align="center">

#### Whispers have become screams, earie lights piercing the once-peaceful night sky,
**🛸 Alien invasion is no longer science fiction! 🛸**

![image](https://github.com/HelanaNady/Alien-Invasion/assets/137416623/eb4b450b-6a96-40be-90c9-2b30caa70ba2) </br>

<h1 align="center">👾 Simulate or Surrender 👾</h1>
<div align="center">

#### Whispers have become screams, eerie lights piercing the once-peaceful night sky,

**🛸 Alien invasion is no longer science fiction! 🛸**

</div>

The once-distant nightmare is now a present threat. The clock is ticking, and the weight of humanity's future rests on the shoulders of the **Global Defense Unit** - humanity's last line of defense. grappling with the stark truth: brute force won't be enough. They needed a glimpse into the future, a way to predict their moves before they unfold.
The once-distant nightmare is now a present threat! The clock is ticking, humanity needed a glimpse into the future, a way to predict the enemy's moves before they unfold.

Faced with this impossible challenge, we developed **a simulated realm where strategies are tested, weaknesses exposed, and the enemy's playbook laid bare**. It is humanity's last chance to rewrite the future before the first shot shatters the silence!

## 📝 Introduction

"Alien Invasion" is a simulation game developed as part of a data structures course in our first year of computer engineering. The game involves Earth's army fighting against an alien army with randomly generated battle scenarios. The project's primary goal was to help us understand how to choose appropriate data structures for various tasks, design classes, and manage them effectively.

## 🕹️ Simulation Modes

Choose how to witness **humanity's last stand**:

- **Interactive Mode:** Watch the battle as it unfolds and let the aliens know you are watching!
- **Silent Mode:** Conduct a silent stealth mission and strategize in secret.

https://github.com/HelanaNady/Alien-Invasion/assets/137416623/e665c15d-3613-4e57-840f-621ae3b08516

## ⚔️ Battle Scenarios

The fate of Earth rests in your hands! Adapt your strategies and tactics as Earth's and alien forces vary in strength:

- **Balanced Power:** Engage in a battle where both Earth and alien armies are evenly matched, testing pure strategy.
- **Earth Overpower:** Lead a stronger Earth army against weaker or moderate alien forces for offensive strategies.
- **Alien Overpower:** Face overwhelming alien forces with a weaker Earth army to test defensive tactics.

## 🛠️ Getting Started

1. Clone the repo:
```sh
git clone https://github.com/HelanaNady/Alien-Invasion.git
```
2. Open the project in Visual Studio Code or Visual Studio.
3. Build and run the project to start the simulation.

Adjust the battle scenarios through the prompt to test different strategies and the army's power.
## 🗂️ Data Structures Used
This project utilizes various data structures to efficiently manage the game's components:

| List Name | Member of Class | Type |
| -------------- | --------------- | -------------- |
| Earth Soldiers | EarthArmy | Queue |
| Earth Tanks | EarthArmy | Stack |
| Earth Gunnery | EarthArmy | Priority Queue |
| Earth Healers | EarthArmy | Stack |
| Alien Soldiers | AlienArmy | Queue |
| Alien Monsters | AlienArmy | Array |
| Alien Drones | AlienArmy | Deque |

## 🧩 Class Design

The project follows an object-oriented design with the following main classes:

- `Army`: Represents an army, either Earth or alien, containing units.
- `Unit`: Represents a single unit within an army with attributes such as health and attack power.
- `Game`: Manages the battle, including the armies and their interactions and generates statistics at the end of the game.
- `RandomGenerator`: Generates random units every timestep based on specified probabilities.

### 📋 UML Diagram

![UML Diagram](https://lucid.app/publicSegments/view/2f21f577-3649-42d0-b463-5bd722aba50a/image.png)

## 🔒 License

This project is licensed under MIT License, See [License](LICENSE) for more information.

Faced with this impossible challenge, we stepped in. we developed a weapon not of steal and fire but of code and imagination: **a simulated realm where strategies are tested, weakness exposed and the enemy's playbook laid bare**. It is humanity's last chance to rewrite the future before the first shot shatters the silence!
## 🌟 Collaborators

<table>
<tr>
<td align = "center">
<a href = "https://github.com/AhmedSobhy01">
<img src = "https://github.com/AhmedSobhy01.png" width = 100>
<br />
<sub> Ahmed Sobhy </sub>
</a>
</td>
<td align = "center">
<a href = "https://github.com/habibayman">
<img src = "https://github.com/habibayman.png" width = 100>
<br />
<sub> Habiba Ayman </sub>
</a>
</td>
<td align = "center">
<a href = "https://github.com/HelanaNady">
<img src = "https://github.com/HelanaNady.png" width = 100>
<br />
<sub> Helana Nady</sub>
</a>
</td>
</tr>
</table>

0 comments on commit 4c1b34e

Please sign in to comment.