Skip to content

tahina35/warzone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project: Warzone

This project involves developing a simplified Risk-style strategy game, compatible with the Warzone version of Risk. The game follows Warzone’s rules and map format, supporting command-line gameplay.

Features:

  • Graph-Based Map: A world map is represented as a connected graph, where nodes are countries and edges define adjacency.
  • Multiplayer Gameplay: Two or more players compete to place armies, attack adjacent countries, and * conquer territories*.
  • Win Condition: The objective is to conquer all countries on the map.

For more details on Warzone's mechanics, visit Warzone.

How to Run

Prerequisites

  • Java Development Kit (JDK) 21 or higher
  • Apache Maven 3.6 or higher
  • A terminal or IDE to run the game

Steps

  1. Clone the repository:
git clone https://github.com/cu-fantm/warzone
cd warzone
  1. Build the project with Maven:
mvn clean package
  1. Run the game:
mvn exec:java

Code Structure

The project is organized into three main layers:

1. Domain Layer (ca.concordia.fantm.warzone.domain)

  • Core business logic for the game.

2. Application Layer (ca.concordia.fantm.rps.application)

  • Manages the game flow and user interactions.

3. Infrastructure Layer (ca.concordia.fantm.rps.infrastructure)

  • Handles input and output for the game.

Code Style and Documentation

  • The project requires Javadoc for all methods, enforced by Maven builds.
  • It enforces the Google Java Format style.
  • It is recommended to configure auto-formatting in your IDE to ensure compliance with the style guide.

License

This project is licensed under the MIT License.

Acknowledgments

This project was created as part of the SOEN 6441 Advanced Programming Practices graduate course at Concordia University.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages