This project contains a C# implementation of the classic board game Risk. The game involves strategic conquest and control of territories on a world map. Players aim to dominate the world by controlling all territories through battles and strategic planning. Furthermore, the project also will contain a webservice and a database for the project which will allow players to submit their own Risk AI's to battle each other on the website.
Risk/
: Contains the main game logic and implementation.Game.cs
: Core game mechanics and rules.Player.cs
: Player-related logic and attributes.Territory.cs
: Territory-related logic and attributes.
Risk.Tests/
: Contains unit tests for the game logic.GameTests.cs
: Unit tests for game mechanics.PlayerTests.cs
: Unit tests for player logic.TerritoryTests.cs
: Unit tests for territory logic.
data/
: Contains JSON data files used by the game.territories.json
: JSON file containing the territories and their adjacent territories.
- .NET SDK
- A compatible IDE (e.g., JetBrains Rider)
To build the project, run the following command:
./build.sh
To run the project, run the following command:
./run.sh
To run the project tests, run the following command:
./test.sh