Daifugo is a Japanese card game in which players strategically try to get rid off all the cards in their hands. Players take turns playing cards from their hands while obeying the restrictions set by previously played cards. The winner is the player who is able to get rid off all of his or her cards first. Please read the manual for a more detailed description.
Download the Daifugo.jar file in the repository and double click the jar file to execute.
Note that it automatically connects to the default server that I am currently hosting.
A server with the JRE 1.7+ installed. 30+ players can be hosted with 512MB of RAM.
- Install Gradle
- Modify the HOST constant in ClientMain.java to match the server’s IP address.
- Execute
gradle jar
in the project's working directory. - Distribute the
client.jar
file which will be automatically built under/path/to/working/directory/client/build/libs/client.jar
. - Upload the
server.jar
file which will be automatically built under/path/to/working/directory/server/build/libs/server.jar
to your server. - Execute
nohup java -jar /path/to/server/file/server.jar &
on your server.
Note that the account details will be stored in an automatically generated file, daifugo.xml, in the server user's home directory.
- [netgame.common] (http://math.hws.edu/eck/cs124/javanotes6/source/netgame/common/)
- Card, Hand, and Deck classes
- jdom 2
The application was not designed with the intent to be distributed in masses. Passwords are stored in plain text and a linear search algorithm is used for querying usernames. Before any new functionality is added, the Validator class needs to be refactored. The UI for the client needs a redesign.