V0id-HauntedHarpistFix icon

HauntedHarpistFix

Preloader compatibility patch fixing MissingMethodException and MissingFieldException crashes in Bob123's Haunted Harpist for modern Lethal Company versions.

By V0id
Last updated 4 days ago
Total downloads 125
Total rating 0 
Categories Bug Fixes AI Generated
Dependency string V0id-HauntedHarpistFix-1.0.1
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

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

Preferred version: 5.4.2100
Bob123-Haunted_Harpist-1.3.24 icon
Bob123-Haunted_Harpist

Adds several ghost enemies to the game.

Preferred version: 1.3.24

README

Haunted Harpist Fix

A lightweight, automated BepInEx preloader patch for Bob123's Haunted Harpist (Haunted_Harpist) ensuring full compatibility with modern Lethal Company versions (v60+).


What It Fixes

Haunted_Harpist v1.3.24 targets older Lethal Company releases and crashes in recent versions due to base-game binary changes:

  1. PlayerControllerB.HasLineOfSightToPosition (RPC Fear Calculation):

    • Problem: Lethal Company added a 5th parameter (int layerMask) to HasLineOfSightToPosition. In unpatched versions, whenever a player looks at or is targeted by a Harp Ghost or Enforcer Ghost, an unhandled RPC exception (MissingMethodException) is thrown.
    • Fix: Automatically updates the call to pass layerMask = -1 (default full mask) and resolves the active method signature.
  2. EnemyAI.EnableEnemyMesh (Bagpipes Ghost Spawn):

    • Problem: Lethal Company added a 3rd parameter (bool tamperWithMeshes) to EnableEnemyMesh. In unpatched versions, the Bagpipes Ghost crashes upon spawning.
    • Fix: Automatically updates the call to pass tamperWithMeshes = false and targets the 3-parameter overload.
  3. EntranceTeleport.exitPoint (Door Escape Navigation):

    • Problem: The base-game EntranceTeleport.exitPoint field was removed/refactored, causing MissingFieldException during Bagpipes Ghost AI intervals and escape door calculations.
    • Fix: Retargets the navigation instructions to read the valid entrancePoint field.
  4. EnemyAI.ChooseFarthestNodeFromPosition (AI Node Navigation):

    • Problem: Lethal Company changed the 6th parameter of ChooseFarthestNodeFromPosition from bool to int capDistance = -1. In unpatched versions, BagpipesGhostAIServer.DoAIInterval and SwitchBehaviourStateLocally throw MissingMethodException.
    • Fix: Automatically updates the call to pass capDistance = -1 and resolves the active 6-parameter method signature.

How It Works

This mod runs as a BepInEx preloader patcher. At game startup, it scans for LethalCompanyHarpGhost.dll and applies the IL patch in-place before plugins are loaded into memory:

  • Fully automated—no manual file editing or decompilation required.
  • Automatically creates a .orig backup of the unpatched binary.
  • Survives mod updates and reinstalls.