20 AI cars learning how to drive through the use of raycasts.
Player versus the best stored AI (all-time best individual from the training phases). Though this individual's car isn't boosted in any way, it's practically almost impossible to beat its nearly perfect trajectories.
Grab the latest build here or head to the builds/ folder.
To run the application, simply run one of the root scripts:
start.batfor Windows-based platforms;start.shfor Linux-based platforms.
You can check these scripts before running them to ensure they're safe.
- press SPACE to make your car accelerate;
- press ← to turn left and → to turn right.
You will need Maven to build the project using the preconfigured pom.xml file.
To clean the project from previous builds, including target temporary folder, first run
mvn clean.
Then compile, package and assemble the project by running
mvn compile package assembly:single.
This will generate .zip and .tag.gz archives in target temporary folder.
Since the project's goal was more to work around the game's and machine learning logic than its aesthetics, it uses the Slick2D library for rendering purposes, which requires itself a few other libraries such as LWJGL or JInput (hence the .dlls at the project's root).
The cars' "physics" as well as the neural network and the netcode, on which we focused more, are totally hand-made.

