A battle-royal game with trained agent which controls tanks in realistic physic world.
Each tank receives the rendered frame of its camera as input, and the agent is trained to fire and hit enemies.
When the agent is trained (with the PPO or SAC algorithm), you can fight it through the tanks it handles.
First you need to clone the repo :
$ git clone https://github.com/Ipsedo/ArenAI.gitBuild should work on any decent Linux distribution.
Windows build is now working !
Install dependencies with pacman :
$ sudo pacman -Sy glm glfw vulkan-devel vulkan-headers glslang gtestThen, download or install LibTorch :
$ wget https://download.pytorch.org/libtorch/cu132/libtorch-shared-with-deps-2.12.0%2Bcu132.zip
$ unzip ./libtorch-shared-with-deps-2.12.0+cu132.zip -d /optor from the AUR with your favorite manager (ex : paru) :
$ # to adapt according your machine (cpu/cuda)
$ paru -Sy libtorch-cudaFinally, build the project :
$ cd /path/to/ArenAI/
$ mkdir build && cd build
$ cmake .. && make -j $(nproc)You need first to install Visual Studio C++ (download it from official website).
This will add the vcpkg executable in the PATH which is needed to compile the project and its dependencies.
Then you are ready to build all modules. Open a PowerShell session :
cd C:\Users\MyName\path\to\ArenAI\
.\install_dependencies.ps1This will create libs folder with all dependencies.
You can now compile the project's modules :
cd C:\Users\MyName\path\to\ArenAI\
.\build_windows.ps1Any bug, build failed, etc. reports will be really appreciated. Create your issue if you want to participate !
The system-monitor extension is causing freeze periodically. The fix is to disable it when playing :
# on ArchLinux
gnome-extensions disable system-monitor@gnome-shell-extensions.gcampax.github.com