You are viewing a potentially older version of this package. View all versions.
Vippy-AimDeltaFix-1.0.3 icon

AimDeltaFix

Fixes mouse sensitivity feeling slower at higher framerates. Patches the frame-rate dependent camera lerp in CameraAim.

Date uploaded a week ago
Version 1.0.3
Download link Vippy-AimDeltaFix-1.0.3.zip
Downloads 771
Dependency string Vippy-AimDeltaFix-1.0.3

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2305 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2305

README

AimDeltaFix

Fixes mouse sensitivity feeling slower at higher framerates in R.E.P.O.

What's the bug?

The camera smoothing in CameraAim.Update() uses Quaternion.Lerp(current, target, num3 * Time.deltaTime) in a feedback loop. At 60fps that lerp factor is ~0.83, so the camera snaps almost instantly to where you're aiming. At higher framerates like 700fps, it drops to ~0.07 per frame — the camera barely moves each frame and it feels like your sensitivity got turned way down.

How this fixes it

When camera smoothing is off and no override is active, the lerp is skipped entirely — the camera just snaps to your aim target regardless of FPS. When smoothing is on, the lerp factor is replaced with 1 - Exp(-num3 * Time.deltaTime) which gives proper frame-rate independent exponential decay.

Dev fix

The issue is on line 213 of CameraAim.Update(). Easiest fix for smoothing off is to just assign the target directly (base.transform.localRotation = quaternion). For smoothed mode, swap num3 * Time.deltaTime with 1f - Mathf.Exp(-num3 * Time.deltaTime).

Credit

  • Bug originally spotted by MiahTRT
  • 1A3 Jenson's suggestion to fix the threshold

CHANGELOG

Changelog

1.0.3

  • Auto-disables on REPO versions above 0.3.2, where the upstream fix lands

1.0.2

  • Fixes issue where it would snap the camera right to where you aim when override smooth camera was running (e.g, holding the time glass)

1.0.1

  • Check camera smoothing setting directly instead of deriving it from the lerp factor
  • Fixes edge case where low smoothing values would incorrectly snap

1.0.0

  • Initial release
  • Fixes frame-rate dependent camera lerp in CameraAim.Update()
  • Snaps camera directly to aim target when smoothing is off
  • Uses exponential decay for frame-rate independent smoothing when smoothing is on