Lethal Company
You are viewing a potentially older version of this package. View Latest Version
Install with App

Details

Date Uploaded
last month
Downloads
6.2M
Size
140KB

MonoDetour

Easy and convenient .NET detouring library, powered by MonoMod.RuntimeDetour.

Note: MonoDetour is a library for developers. By itself, it does the following once it's loaded by the runtime:

  • ILHooks (includes HarmonyX transpilers) will get MonoDetour's CIL analysis on target method compilation when an InvalidProgramException is thrown
  • If an ILHook manipulator method throws on legacy MonoMod.RuntimeDetour, it will be disabled so the target method can be ILHooked successfully later
  • MonoMod's ILLabels won't cause InvalidCastExceptions in some Mono.Cecil.Cil.Instruction methods, such as ToString.

Note: do not depend on this package directly. Instead depend on MonoDetour_BepInEx_5 or MonoDetour_BepInEx_6 as it will integrate MonoDetour's logger with BepInEx and provides HarmonyX interop support.

Why Use MonoDetour?

MonoDetour is an alternative to HarmonyX or MonoMod.RuntimeDetour for detouring. It attempts to improve on the hooking experience as much as possible. See https://monodetour.github.io/getting-started/why-monodetour/ to learn more.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.