Eriantys Board Game is the final test of "Software Engineering", course of "Computer Science and Engineering" held at Polytechnic University of Milan (2021/2022).
Teacher: San Pietro Pierluigi
- Elia Lazzeri (10716571)
- Filiberto Ingrosso (10682019)
- Litovchenko Nikita (10656602)
The project consists of a Java version of the board game Eriantys, made by Cranio Creations.
You can find the full game rules here.
The final version includes:
- Initial UML diagram;
- Final UML diagram, generated from the code by the IntelliJ diagrams tool;
- Working game implementation, which has to be rules compliant;
- Source code of the implementation;
- Source code of unity tests.
Functionality | Status |
---|---|
Basic rules | ✅ |
Complete rules | ✅ |
Socket | ✅ |
GUI | ⛔️ |
CLI | ✅️ |
All charachter cards | ✅ |
4 player game | ✅️ |
Multiple games | ✅ |
Persistence | ⛔ |
Resilience | ⛔ |
⛔ Not Implemented
All tests in model and controller has a classes' coverage at 100%.
Coverage criteria: code lines.
Package | Tested Class | Coverage |
---|---|---|
Controller | ActionPhase | 20/20 (100%) |
Controller | ControlEventManager | 11/11 (100%) |
Controller | Controller | 51/55 (92%) |
Controller | EndPhase | 10/17 (58%) |
Controller | PlanningPhase | 31/31 (100%) |
Model | Global Package | 656/708 (92%) |
To run the tests and compile the software:
- Install Java SE 11;
- Install Maven;
- Clone this repo;
- Unzip the .zip file;
- Open a terminal, navigate to the folder and compile sources of the package by typing:
cd /path/to/project/home/directory
mvn clean package
- A new folder called "target" will be created in the project home directory, inside it you will find the jar file, which already includes the project dependencies
- Open a terminal and go to the project target directory and execute these command:
//to start the server
java -jar original-PSP23-1.0-SNAPSHOT.jar
//to start the client
java -jar PSP23-1.0-SNAPSHOT.jar
In order to play, you'll have to launch at least one server and two clients.
In order to play multiplayer from different locations port forwarding is needed.
Diagrams.net - Initial UML and sequence diagrams
Intellij IDEA Ultimate - main IDE
Eriantys Board Game is copyrighted 2021.