Java implementation of the board game called Santorini, edited by Cranio Creations.
We implemented all the requirements listed for a maximum assessment of 30L, as indicated in the requirements:
- 📚 Complete rules
- 🎮 CLI
- 🌴 GUI
- 📡 Socket
- 🔱 Advanced Gods
- 💾 Persistence
- Controller = 100%
- Model = 95%
More details listed in jacoco (deliveries/jacoco)
We made 183 tests for both model and controller, the latter has been tested also through stubs; in order to run them successfully:
mvn test
Generate jar files (client and server) through maven by executing the following commands:
mvn clean
mvn package
NB. The following commands to run jar files only work if they are generated through maven. If the user wants to use the ones in 'deliveries' folder the path has to change accordingly.
-
Server
- Default port (1337):
java -jar target/GC15-server-jar-with-dependencies.jar
- Chosen port:
java -jar target/GC15-server-jar-with-dependencies.jar -p <port_num>
where <port_num> stands for the socket port which both server and clients will use for the connection.
-
Client CLI
java -jar target/GC15-client-jar-with-dependencies.jar
- Commands
- Move: move (x,y)
- Build: build (x,y)
- Active Power: usePower (x,y)
- Commands
-
Client GUI
Double click on target/GC15-client-jar-with-dependencies.jar icon.
- Riccardo Secreti (matr. 889417) : @RiccardoSecreti
- Fabio Tresoldi (matr. 886622) : @Fabio-Tresoldi
- Mirko Usuelli (matr. 888170) : @mirkousuelli
- Prof. Gianpaolo Cugola
- Emanuele Del Sozzo : @emanueledelsozzo
- Alberto Parravicini : @AlbertoParravicini