We have a project that has a basic Soccer Game AI (5v5). Your mission is developing the code we wrote before, NOT FROM SCRATCH.
Maybe, you can develop with writing some codes about soccer players field alignment AI (2 Forward-2 Defender-1 Goalkeeper) and maybe assisting (passing) system between soccer players. I dont want proffesional codes (just basic AI) from you, just write runnable, obvious and understandable codes with good comments.
Write a class representing the AI of a soccer player. The class should implement PlayerAI interface. You can write additional classes or interfaces. You are not allowed to change the classes in /sccr/internal folder except SoccerDemo class where you can try your bots and see them in action.
The AI can get all of the information it needs by accessing the player and game objects that come as parameters to the functions of the interface. Those information includes the positions and velocities of all players, the locations of some special points in the soccer field, the position and speed of the ball, etc. Just examine SoccerPlayer and SoccerGame classes to see what you can get.
The Player AI basically decides on two actions:
-Movement action of the player in terms of SteeringBehavior
-Kick action if the player can kick the ball in terms of SteeringInfo. Otherwise it is ignored by the game
Note that the players have some stamina so that they can not run normally if it is lower than a certain value (Fatigue threshold) If the players run faster than FatigueSpeed it consumes some stamina. If the player moves slower than FatigueSpeed then he will eventually get rested and turn back to normal. You can get the current, minimum, maximum and threshold values of stamina for players by using corresponding functions in SoccerPlayer interface
There is already a very simple (toy) AI implemented in the attached code. Check it before writing your own AI class.
To run the attached code extract the zip and copy the movement and util folder under /src/arhrs/ folder of your project.
I uploaded 2 different projects, one is simple cannon ball game and other is basic soccer game AI which you have to develop. I couldn't delete the other (cannon ball) project because maybe it has some classes for soccer game AI. If you can download and run the project (Soccer game) without an error, we can start the project and discuss.
Slick2D and Vector2D libraries should be implemented to run the project.
Check the files I uploaded to see what we wrote before.
Project deadline: 20 November 2018