Skip to content

Paths Class

Paths used by BepInEx

C#
public static class Paths

Inheritance object

The directory that the core BepInEx DLLs reside in.

C#
public static string BepInExAssemblyDirectory { get; }

The path to the core BepInEx DLL.

C#
public static string BepInExAssemblyPath { get; }

The path to the main BepInEx folder.

C#
public static string BepInExRootPath { get; }

The path of the currently executing program BepInEx is encapsulated in.

C#
public static string ExecutablePath { get; }

The directory that the currently executing process resides in.

On OSX however, this is the parent directory of the game.app folder.

C#
public static string GameRootPath { get; }

The path to the config directory.

C#
public static string ConfigPath { get; }

The path to the global BepInEx configuration file.

C#
public static string BepInExConfigPath { get; }

The path to temporary cache files.

C#
public static string CachePath { get; }

The path to the patcher plugin folder which resides in the BepInEx folder.

C#
public static string PatcherPluginPath { get; }

The path to the plugin folder which resides in the BepInEx folder.

This is ONLY guaranteed to be set correctly when Chainloader has been initialized.

C#
public static string PluginPath { get; }

The name of the currently executing process.

C#
public static string ProcessName { get; }

List of directories from where Mono will search assemblies before assembly resolving is invoked.

C#
public static string[] DllSearchPaths { get; }

SetExecutablePath(string, string, string, bool, string[])

Section titled “SetExecutablePath(string, string, string, bool, string[])”
C#
public static void SetExecutablePath(string executablePath, string bepinRootPath = null, string managedPath = null, bool gameDataRelativeToManaged = false, string[] dllSearchPath = null)

executablePath string

bepinRootPath string

managedPath string

gameDataRelativeToManaged bool

dllSearchPath string[]