Skip to content

Latest commit

 

History

History
45 lines (33 loc) · 2.34 KB

File metadata and controls

45 lines (33 loc) · 2.34 KB

Dominion

This is the Dominion (http://en.wikipedia.org/wiki/Dominion_(card_game)) Game implemented with Java 8.

Program Architecture

This implementation is created based on the MVC principle. For this solution was a strict package structure created.

  • database: This package contains all the game data with read-write rights or only read rights.
  • logic: This package contains the logical doings of the cards and single game steps.
  • ui: This package contains the cpu and humand playable classes.

Code Style

For a nice and effective code implementation of the project PMD, checkstyle and simian was used.

Usage

The game is implemented with a few "artificial intelligence" and random CPU-Players. It is possible to play the game through the network with telnet. As human player there is also the option to play with a nice user interface which is created with Java-FX.

alt tag

If you wanne play the game, just see the help below.

You have the following options:
	-h or -?                will show you the help.
	-r            allows you to record the game to a file. This file will be stored in the temp-directory/Dominion/.
	-p            allows you to automaticly replay the game from a recorded game file.allows you to automaticly replay the game from a recorded game file. This will grab the file from the temp-directory/Dominion/.
	-v                      allows you to see the running game and it's players. Possible to use if only roboters play.
	ConsolePlayer=    You will play in the command line.
	JavaFxPlayer=     You will play in an graphical user interface made with Java-FX.
	NetPlayer=        Someone else can play with you throw the network. (Port=2014)
	RobotDefender=    A roboter played by the cpu.
	RobotMilitia=     A roboter played by the cpu.
	RobotSorcerer=    A roboter played by the cpu.
	RobotX=           A roboter played by the cpu.
	Robot1=           A roboter played by the cpu.

All players have to get different names.