Namespace BepInEx

Classes

BaseUnityPlugin

The base plugin type that is used by the BepInEx plugin loader.

BepInDependency

This attribute specifies any dependencies that this plugin has on other plugins.

BepInIncompatibility

This attribute specifies other plugins that are incompatible with this plugin.

BepInPlugin

This attribute denotes that a class is a plugin, and specifies the required metadata.

BepInProcess

This attribute specifies which processes this plugin should be run for. Not specifying this attribute will load the plugin under every process.

MetadataHelper

Helper class to use for retrieving metadata about a plugin, defined as attributes.

Paths

Paths used by BepInEx

PluginInfo

Data class that represents information about a loadable BepInEx plugin. Contains all metadata and additional info required for plugin loading by Chainloader.

ThreadingExtensions

Convenience extensions for utilizing multiple threads and using the ThreadingHelper.

ThreadingHelper

Provides methods for running code on other threads and synchronizing with the main thread.

UnityInput

Abstraction layer over Unity's input systems for use in universal plugins that need to use hotkeys. It can use either Input or Unity.InputSystem, depending on what's available. Input is preferred. WARNING: Use only inside of Unity's main thread!

Utility

Generic helper properties and methods.

Interfaces

IInputSystem

Generic input system interface. Just barely good enough for hotkeys.

Enums

BepInDependency.DependencyFlags

Flags that are applied to a dependency