As part of one of an Assignment in CS218 : Mobile Middleware (Computing Course offered by the University of the South Pacific). We were required to create a Rock-Paper-Scissors-Lizard-Spock Game coded in Java with a minimum of 3 players using either Socket Programming or Java RMI. Requirements included creating a GUI as well as incorporating some sort of audio.
This Project gave our team a variety of challenges and helped everyone's coding abilities grow from learning new ways of manipulating java.swing based GUI application as well as establishing a client/server relation. The group ultimately decided to pursue a Socket Programming based approach to the challenge. Tasks were divided into different aspects with myself handling most of the Design and creation of the GUI. The group maintained a free-flow work style that allowed everyone to make improvements/assist in all aspects of the project through GitHub Commits.
Rock-Paper-Scissors-Lizard-Spock is a simple game made famous by Dr. Sheldon Cooper from The Big Bang Theory (Season 2 Episode 8). The rules goes something like ; Scissors cuts Paper, Paper covers Rock, Rock crushes Lizard, Lizard poisons Spock, Spock smashes Scissors, Scissors decapitates Lizard, Lizard eats Paper, Paper disproves Spock, Spock vaporizes Rock and finally Rock crushes Scissors. More accurately described below:
Once a player chooses an option, all the options get sent to the server where the winner is calculated after all the players have chosen. Then the server sends a message to all the players letting them know if they have won, lost or tied the game. The game includes a points system to track wins per player as well as some space-themed background music which can be turned off with a working mute button.
There was however some limitations due to time constraints. We were unable to implement more than 3 players to the game as well as allow for different host connect to the server via a TCP connection. Looking past these small discrepancies, the entire team is very proud of the project and how it turned out and plan to make improvements to the code in the future.
The Team and their respectful email contact details are as follows:
Sachinandan Sen - email here
Maanvik Gounder - email here
Zalika Shameem - email here
>> View the GitHub Repository Here