A digital version of the board game Codex in Naturalis made in Java by:
🟨Matteo Figini🟨
🟦Paolo Ginefra🟦
🟥Samuele Grisoni🟥
🟩Teo Lanzafame🟩
🖼️PROJECT PRESENTATION🖼️
Features | Base | Advanced |
---|---|---|
Complete ruleset | ✅ | |
Socket | ✅ | |
RMI | ✅ | |
TUI | ✅ | |
GUI | ✅ | |
Multiple Games | ✅ | |
Persistence | ✅ | |
Resilience to disconnections | ✅ | |
Chat | ✅ |
❗Dependencies❗ In order to run our application you need to have installed a Java version >= 21, we suggest to use this version.
You can find the server jar here: Server
Once you have downloaded the jar, you can run it with the following command:
cd path/to/CodexNaturalisPSP49_Server.jar
java -jar CodexNaturalisPSP49_Server.jar
When the server is running you will see the ip address
of the server, you will need it to connect the client.
❗Warning❗ The server will run on port
1234
for RMI and12345
Socket, make sure that these ports are available.
You can find the client jar here: Client
Once you have downloaded the jar, you can run it with the following command:
cd path/to/CodexNaturalisPSP49_Client.jar
java -jar CodexNaturalisPSP49_Client.jar
By running the client you will be asked to choose the type of interface you want to use, you can choose between TUI
and GUI
.
❗Warning❗ The
GUI
has been tested with machines with anx86
architecture and an Os betweenWindows 10/11
,Debian 12
,MacOS 14
.
❗Warning❗ The
TUI
makes an extensive use of emojis, for the best experience we suggest to use aWindows
command prompt (CMD), just remember to enableUTF-8
encodings by runningchcp 65001
.
When the client is running you will be asked to insert the ip address
of the server, you can find it in the server logs.
If you are interested in the inner workings of our application you can find the following diagrams:
-
UML Class Diagram:
-
UML Sequence Diagram:
-
Game and View State Machine Diagram: