Complete-ish BBR recoil compensation
Please use the Rust version instead! This version is outdated & uses a inferior hid-api version
- Doesn't support horizontal recoil compensation. (Impossible)
- Doesn't support burst & single fire modes*
Inputs, (Vertical, Initial, Rpm, Magazine Size, Fov)
Optional, (Smoothness, Scope (2x, 4x), Global Overflow, Local Overflow)
Stock AK74 for example
1.40, 1.0, 670, 30, 110
- 1.40 = Vertical recoil
- 1.0 = First shot kick
- 670 = Fire rate
- 30 = Magazine capacity
- 110 = FOV
1.40, 1.0, 670, 30, 110, 8, 2x, true, true
- 8 = Smoothing (Divides the calculated recoil 8 times over a period smoothing it visually) (Use 0 if you want to leave it at default) (default: 0)
- 2x = Scope zoom (1.4x, 3.0x) (default: 1.0x)
- true = Attempts to compensate for loss in accuracy after each bullet. (default: true)
- true = ^, instead locally compensates for accuracy loss during smoothing process. (default: true)
For the most accurate recoil compensation you'll want a weapon setup with the least horizontal recoil even if vertical recoil is high. (e.g. using "BCM" grip as it provides the most horizontal recoil reduction)
- RPi 4b or newer (Must have USB OTG)
- .NET 8 installed on local machine (NOT on the RPI), this is for compiling the binary.
Read the requirements first!
Follow HID-API Gadget guide for first time installation. To verify if everything is setup correctly, ls
into /dev/
and see if hidg0
and hidg1
are present.
git clone https://github.com/StrateimTech/Helious
cd ./Helious
Download latest release of HID-API, https://github.com/StrateimTech/HID-API/releases.
Move latest HID-API.dll
into /helious/libs
dotnet publish -c Release -o publish -r linux-arm
Transfer all files within the build directory to the RPi via your choice of method. Don't forget to chmod :)
chmod +x ./Helious
sudo ./Helious
Requires elevated permission to access /dev/
directory
Please do not use this in multiplayer, this is further validation that static recoil systems are NOT to be used.