Code Soccer is a project where I tried to programme and evaluation system of a game Paper Soccer and implement AI algorithms. You can learn the rules on Wiki or in my dissertation work report which has been written in Czech.
- method Main calls method setupGame of GameSetup.java.
- Instance of SoccerGame.java is created with designated number of rows and columns. Move history is prepared and ball is set at the center.
- After the initialization proccess method play of GameEvaluation.java is called which starts the game.
- When game is finished, the winner is printed out in the console.
- Fork this repo
- In opponents package create your own opponent. This opponet has to implement interface Opponent.java located at stc/soccer/opponents/Opponent.java:13
- Add your own type of AI to OpponentType.java enum located at stc.soccer.opponents.types.OpponentType#NAIVEAI
- Pass your AI to the constructor of the evaluation system in GameSetup.java located at stc/soccer/core/GameSetup.java:26. Both passed opponents must have different values of GoalLocationType, otherwise an IllegaleStatecException is thrown.
- Start your game and look at the results!