Battleship
Battleship is a classic game, and here it is the basis for possible student projects. Students can implement a client for the game in a variety of possible technologies: desktop PC apps (for example, using JavaFX), web applications (for example, using React), or as an Android app (for example, using Jetpack Compose).
The server provides a RESTful interface, and is normally running on port 50003 on this server.
A sample client is available, either as a Java
project, or as a JAR file is available. To run the client,
you will need JavaFX and Java (both version 17 or higher). For the JAR-file, use a command like
this (be sure to set the path correctly):
java --module-path /path/to/JavaFX/lib/ --add-modules javafx.controls -jar battleship-client.jar
Project repository
Code for the server is in this GitLab repository: https://gitlab.com/kri/battleship-server.
Documentation is in the README and the doc directory.