Official game site: CranioCreations.
Game rules (EN) Game rules (IT)
Software Engineering group project following the conclusion of the Software Engineering course in the Computer Science and Engineering Bachelor's Degree at Politecnico di Milano (2023/2024).
Teacher: Cugola Gianpaolo
Grade: 30L/30
The project consists of a Java version of the board game Codex Naturalis, made by Cranio Creations.
The final version of the game includes:
- high-level, general UML diagram;
- detailed UML diagram, generated from the code by automated tools;
- java documentations
- working game implementation;
- source code of the implementation;
- source code of tests.
Functionality | Implemented |
---|---|
Basic rules | ✅ |
Complete rules | ✅ |
Socket | ✅ |
RMI | ✅ |
TUI | ✅ |
GUI | ✅ |
Multiple games | ✅ |
Resilience to disconnections | ✅ |
Chat | ✅ |
Persistence | ⛔ |
Javadocs |
---|
- If your OS is Windows 11 follow this step for command prompt configuration
- If your OS is Mac OS or Linux follow this step for command prompt configuration
- We currently do not support other OSs
Click on the links below to be redirected to the download page, where you can download the self-contained all-in-one .jar files. Please note that you will still need to download the correct version of the JRE to run this program (which is written with JDK 21, and thus needs a JRE of 65.0 or higher to be run);
- Codex Naturalis Client
- Codex Naturalis Server --> needed only in the machine which is going to host it
- Open the command prompt on the host machine;
- Navigate through the directories using the appropriate commands for your command prompt (these may vary based on the
operating system) and position yourself in the file path where the
CodexNaturalisServer.jar
is located; - Run the .jar file for the server with the following command ->
java -jar CodexNaturalisServer.jar
; - Follow the instructions that appear on the screen to finalize the server configuration.
- Open the command prompt on the clients' machines;
- Navigate through the directories using the appropriate commands for your command prompt (these may vary based on the
operating system) and position yourself in the file path where the file
CodexNaturalisClient.jar
is located; - Run the .jar file for the server with the following command ->
java -jar CodexNaturalisClient.jar
- Follow the instructions that appear on the screen to start a game (make sure to enter the correct IP address used by the server when you have to choose the IP to connect to).
IMPORTANT --> : If you aim to play with different devices over the net, you can achieve this by using a third-party
software such as Hamachi, ZeroTier, Wireguard or properly set forward rules on the router where the
server is located. In case you want to play with RMI over the Internet, remember to launch the jar with the command
java -Djava.rmi.server.hostname=YOUR_PUBLIC_IP_ADDRESS -jar CodexNaturalisClient.jar
- Intellij IDEA Ultimate (Educational license) - main IDE for development
- LucidChart (EDU license) - online tool for composing UML diagrams
Authors:
- Piantoni Riccardo
- Rossi Matteo
- Pinto Federico
- Sacramone Jacopo
Codex Naturalis is an intellectual property of Cranio Creations. All content, including but not limited to, game mechanics, design, artwork, and assets, is protected under copyright law. Unauthorized reproduction, distribution, or modification of this material is prohibited without prior written consent from Cranio Creations. This project is released under the MIT License. Please refer to the LICENSE file for detailed information regarding the terms and conditions of use, reproduction, and distribution of the game.