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

AimDeltaFix

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

Date uploaded 4 months ago
Version 1.0.1
Download link Vippy-AimDeltaFix-1.0.1.zip
Downloads 296
Dependency string Vippy-AimDeltaFix-1.0.1

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, 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