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.

Source code for the client is not public, however a JAR file is available. To run the JAR-file, you will need JavaFX and Java (both version 17 or higher). 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: Documentation is in the README and the doc directory.