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.bat
for Windows-based platforms;start.sh
for 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 .dll
s 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.