The base plugin type that is used by the BepInEx plugin loader.
This attribute specifies any dependencies that this plugin has on other plugins.
This attribute specifies other plugins that are incompatible with this plugin.
This attribute denotes that a class is a plugin, and specifies the required metadata.
This attribute specifies which processes this plugin should be run for. Not specifying this attribute will load the plugin under every process.
Helper class to use for retrieving metadata about a plugin, defined as attributes.
Paths used by BepInEx
Data class that represents information about a loadable BepInEx plugin. Contains all metadata and additional info required for plugin loading by Chainloader.
Convenience extensions for utilizing multiple threads and using the ThreadingHelper.
Provides methods for running code on other threads and synchronizing with the main thread.
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!
Generic helper properties and methods.
Generic input system interface. Just barely good enough for hotkeys.
Flags that are applied to a dependency