Skip to content

AlizerUncaged/Astral

Repository files navigation

Astral

Astral

Astral is a machine learning AI for game automation. Astral recognizes and observes game objects in the same way as any other human would, using the Yolo algorithm, powerful GPUs, a trained model, and a screen as input.



💻Requirements

  • At least Windows 7 SP1, (tested on Windows 10 and 11).
  • 💾 2GB of available RAM.
  • 🖥️ For GPU Support:
    • At least CUDA 11.0 and cuDNN 8.4.0
    • At least Windows 10.

💡 Unfortunately, none of the compatible CUDA versions work with Windows 7. For operating systems below Windows 10, they can opt in for CPU.

💡 Unfortunately, AMD GPUs are not supported; for GPU support, an Nvidia GPU with CUDA is required.

🏗️ Dependencies

🕵️ Installing Detector Dependencies

⚡ FastYolo

Full instructions for installing required dependencies at https://github.com/maalik0786/FastYolo 💡 Although different CUDA versions greater than or 11.0 should work, tested with CUDA 11.0 with cuDNN 8.4.0 and it worked.

🚀 YoloV5

The implementation of YoloV5 uses ML.NET, for GPU support follow the official instructions at https://docs.microsoft.com/en-us/dotnet/machine-learning/how-to-guides/install-gpu-model-builder the implementation also works on CPU.

🚄 Speed

🔬 A GPU is favored for faster predictions, while a CPU can still do predictions.

🌐 If the input is through network, it is preferred that both computers be on the same lan network to avoid high latency; nevertheless, another machine on different network (via the internet) may create latency and delays.

🦥 The most playable delay for both input and predictions at the moment is 10 predictions per second 🔮 or 100ms delay (both input and predictions), which is not a big issue with newer GPUs and decent settings.

⚡ Below is a list of graphics cards tested on resolutions and its prediction speed (predictions/second).

⚠️ Different factors can cause the GPU to perform better or worse; please take this table with a grain of salt and don't place too much faith in it; different hardware and environment can result in different results, such as having different video settings in a game, different drivers, room temperature, or having background processes, for example.

Predictor GPU Game GPU Game Setup 960x540 1280x720 1920x1080
Windows 10 GTX 1050 Windows 10 GTX 1050 CSGO 🖥️ Same Machine 10 p/sec 11 p/sec 12 p/sec
Windows 11 MX 330 Windows 11 MX 330 CSGO 🖥️ Same Machine ? ? 5 p/sec

💡 As you can see, a mid-level gaming desktop GPU from 2016 may get decent results; but, newer GPUs can produce better and quicker predictions.

💡 Picture resizing can take some time; if the configurations demand additional image altering, this can slow down the prediction.

🛠 Custom Models

🖼️ Astral uses Yolo for object detection, more information on creating models here: https://github.com/AlexeyAB/darknet#how-to-train-tiny-yolo-to-detect-your-custom-objects

💡 There are several versions and sizes of Yolo; currently, the C# implementation may function on any model trained, for the quickest predictions, we choose the smallest Yolo model size. The larger the model size, the more accurate the prediction, but slower; the Yolo implementation used can be seen at https://github.com/AlexeyAB/darknet.