-
Riccardo Paltrinieri (@riccardopaltrinieri)
-
Antonio Pagliaroli (@ilpaliuz)
-
Filippo Pagliani (@filloPagliani)
Santorini is an abstract strategy board game for 2-4 players. Inspired by the architecture of cliffside villages on Santorini Island in Greece, the game is played on a grid where each turn players build a town by placing building pieces up to three levels high. To win the game, players must move one of their two characters to the third level of the town.
Each turn of play involves moving one of your two pieces around a 5-by-5 grid each turn and then placing a tile adjacent to the moved piece, building up that spot of the board. On subsequent turns, pieces may be moved onto one of these built-up tiles, but only one level up at a time. Pieces may also be moved down any number of levels. Players may also place a special dome tile on top of a three level building, which prevents a player from moving onto that spot for the remainder of the game. The primary winning condition is to get one of your pieces onto the third level, though players may also win if their opponent is unable to make a move. There is a god powers variant, which gives each player a unique way to break the rules. God Powers are cards that provide you with a powerful ability that can be used throughout the game. Many God Powers change the way Workers move and build.
In deliverables there are two files with the UMLs of project:
- High Level UML
- Low Level UML generated by Intellij IDEA.
Functionality | State |
---|---|
Basic rules | |
Complete rules | |
Socket | |
GUI | |
CLI | |
Undo | |
Multiple games | |
Advanced god | |
Persistent games |
After the download you can start the game with jars. For a simplier use we have created three file.bat.
To run the client:
Go to the deliverables and choose your favorite Interface:
CLI : open ClientCli.bat
GUI: open ClientGui.bat
To run the server: open Server.bat
Open the network.json
file.
Here you can set ip and port of Server.
The default is:
{
"port": "12445",
"ip": "127.0.0.1"
}
Package | Class, % | Method, % | Line, % |
---|---|---|---|
all classes | 64,2% (34/ 53) | 52,1% (149/ 286) | 39,2% (760/ 1940) |
Package | Class, % | Method, % | Line, % |
---|---|---|---|
it.polimi.ingsw | 33,3% (1/ 3) | 20% (1/ 5) | 4,2% (2/ 48) |
it.polimi.ingsw.Controller | 100% (6/ 6) | 100% (20/ 20) | 98,8% (167/ 169) |
it.polimi.ingsw.Model | 100% (6/ 6) | 100% (58/ 58) | 100% (256/ 256) |
it.polimi.ingsw.Model.Divinities | 100% (10/ 10) | 100% (30/ 30) | 100% (115/ 115) |
it.polimi.ingsw.Network | 0% (0/ 2) | 0% (0/ 27) | 0% (0/ 235) |
it.polimi.ingsw.View | 40% (4/ 10) | 43,8% (21/ 48) | 23,4% (156/ 667) |
it.polimi.ingsw.View.Graphics | 0% (0/ 9) | 0% (0/ 75) | 0% (0/ 365) |
it.polimi.ingsw.utils | 100% (7/ 7) | 82,6% (19/ 23) | 75,3% (64/ 85) |