/Java-RMI-Simulator

Computer Science - Semester 2. Project with Java RMI for a multiplayer game.

Primary LanguageJava

Java-RMI-Simulator

This was the first java project in my study. It was developed with NetBeans as IDE, Ant as build tool, and SVN as SCM. Later I decided to import it on my GitHub. To upload it I used transformed it to a Maven project. The overall code got only a small clean up, so it still contains bugs and a lot of space for improvement.

Components

  • The Client provides a simple UI via Java Swing.
  • The Server provides the game logic for the clients and the RMI-Skeleton for the clients.
  • The Interface provides the datastructures and the RMI-Interfaces for the communication.

Statistics

While cleaning up the project I introduced Lombok to make the classes more lightweight. This reduced the size of the classes and saved a lot of LOC.

  • Overall Lines: ~5900
  • Java Lines: ~4400
  • Java Lines of Code: ~3400
  • Average Java Class Lines: ~100

Notes

  • The original project got developed in NetBeans. When the UI got created, there was a config file to use the Netbeans UI Tool for Swing. When the project was clean up, this file got lost. Therefore, the UI can't be edited easily anymore.
  • The Client.jar does not work with the resources, because the code references to the development resources.

Usage

Start the Server first. After that the Client can create a game and connect with multiple sessions to the server. Press the Help Button for at least a little of information.

If an actual game is started, the direction of the movement is driven by the numpad. Put in the number into the Turn field.

Help Button