Skip to content

v2.3.0 — Camera Lock Fix + BepInEx Compatibility

Choose a tag to compare

@9138noms 9138noms released this 12 Feb 15:47

What's New in v2.3.0

Bug Fixes

  • Camera no longer breaks free on WASD — Patched GameManager.IsLocalAircraft to recognize possessed units, preventing CameraOrbitState from switching to free camera mode during WASD input
  • Camera survives scene changes — Fixed stale CameraStateManager reference that caused camera follow to fail when switching missions (always re-finds via FindObjectOfType)
  • BepInEx compatibility fix — Standalone FrameHelper MonoBehaviour on separate DontDestroyOnLoad GameObject, survives BepInEx_Manager destruction that occurs on some systems

Technical Details

  • GameManager.IsLocalAircraft Postfix: returns true for possessed unit → camera stays locked
  • CameraOrbitState.AnyMoveInput Prefix: blocks WASD input from reaching camera during possession (double safety)
  • FrameHelper pattern: Update(), FixedUpdate(), OnGUI() all run on standalone GameObject independent of BepInEx lifecycle

Installation

  1. Download VehicleControl.dll
  2. Place in BepInEx/plugins/
  3. Default key: F8 to possess nearest friendly ship/vehicle, F7 to toggle direct/waypoint mode