group2 0.1.0
CSE 125 Group 2
Loading...
Searching...
No Matches
systems::GamepadAimAssistConfig Struct Reference

Tunable parameters for gamepad aim assist. More...

#include <GamepadAimAssistSystem.hpp>

Public Attributes

bool enabled = true
float innerConeDeg = 3.0f
 Inner cone (degrees from crosshair) where pull strength is at maximum.
float outerConeDeg = 8.0f
 Outer cone (degrees from crosshair) where pull falls to zero.
float maxRange = 3000.0f
 Maximum world distance to a target at which aim assist applies.
float activationStickThresh = 0.00f
 Stick activation threshold (0..1 fraction of full deflection).
float rotationalCompensation = 0.8f
 Tracking compensation factor.
float maxPullRate = 3.0f
 Hard cap on rotational pull this frame, in radians/second.
float slowdownStrength = 0.1f
 Slowdown factor (0..1).

Detailed Description

Tunable parameters for gamepad aim assist.

Exposed in the ECS inspector so testers can dial it in live. Defaults are tuned to feel like assist, not auto-aim — a moving enemy is easier to track but a stationary one is unaffected.

Member Data Documentation

◆ activationStickThresh

float systems::GamepadAimAssistConfig::activationStickThresh = 0.00f

Stick activation threshold (0..1 fraction of full deflection).

Either the left (movement) OR the right (look) stick must exceed this for aim assist to fire. Holding both still disables the effect.

◆ enabled

bool systems::GamepadAimAssistConfig::enabled = true

◆ innerConeDeg

float systems::GamepadAimAssistConfig::innerConeDeg = 3.0f

Inner cone (degrees from crosshair) where pull strength is at maximum.

Anywhere inside this cone, the full compensation applies.

◆ maxPullRate

float systems::GamepadAimAssistConfig::maxPullRate = 3.0f

Hard cap on rotational pull this frame, in radians/second.

Prevents the assist from teleporting onto a target that just spawned or warped via server snapshot correction. 3.0 rad/s ≈ 172°/s is generous; legitimate tracking deltas are typically well below.

◆ maxRange

float systems::GamepadAimAssistConfig::maxRange = 3000.0f

Maximum world distance to a target at which aim assist applies.

◆ outerConeDeg

float systems::GamepadAimAssistConfig::outerConeDeg = 8.0f

Outer cone (degrees from crosshair) where pull falls to zero.

Pull lerps linearly between inner and outer cones.

◆ rotationalCompensation

float systems::GamepadAimAssistConfig::rotationalCompensation = 0.8f

Tracking compensation factor.

When the apparent angular position of the anchor on the target changes by Δθ between frames (due to enemy motion + player translation), aim assist contributes rotationalCompensation × Δθ to the camera rotation. The player still has to provide the remainder manually.

0.0 = no rotational help, 1.0 = perfect tracking (aimbot). Default 0.8 — assist contributes 80 % of the angular velocity needed to glue to a moving target, leaving 20 % for the player. Bumped up from 0.6 after tester feedback that 60 % felt weak.

◆ slowdownStrength

float systems::GamepadAimAssistConfig::slowdownStrength = 0.1f

Slowdown factor (0..1).

When the crosshair is on a target the effective look sensitivity is multiplied by this much. Lower = stronger slowdown / "stickier" feel inside the kill zone. Default 0.35 = look at 35 % speed on-target; aggressive enough that the crosshair perceptibly resists overshoot when flicking onto an enemy, while still letting the player swing past if they really want to. Tuned tighter than the previous 0.6 after tester feedback that the slowdown felt subtle.


The documentation for this struct was generated from the following file: