[Caching] ## Enable/disable assembly metadata cache ## Enabling this will speed up discovery of plugins and patchers by caching the metadata of all types BepInEx discovers. # Setting type: Boolean # Default value: true EnableAssemblyCache = true [Detours] ## The native provider to use for managed detours # Setting type: DetourProvider # Default value: Default # Acceptable values: Default, Dobby, Funchook DetourProviderType = Default [Harmony.Logger] ## Specifies which Harmony log channels to listen to. ## NOTE: IL channel dumps the whole patch methods, use only when needed! # Setting type: LogChannel # Default value: Warn, Error # Acceptable values: None, Info, IL, Warn, Error, Debug, All # Multiple values can be set at the same time by separating them with , (e.g. Debug, Warning) LogChannels = Warn, Error [IL2CPP] ## Whether to run Il2CppInterop automatically to generate Il2Cpp support assemblies when they are outdated. ## If disabled assemblies in `BepInEx/interop` won't be updated between game or BepInEx updates! ## # Setting type: Boolean # Default value: true UpdateInteropAssemblies = true ## URL to the ZIP of managed Unity base libraries. ## The base libraries are used by Il2CppInterop to generate interop assemblies. ## The URL can include {VERSION} template which will be replaced with the game's Unity engine version. ## # Setting type: String # Default value: https://unity.bepinex.dev/libraries/{VERSION}.zip UnityBaseLibrariesSource = https://unity.bepinex.dev/libraries/{VERSION}.zip ## The RegEx string to pass to Il2CppAssemblyUnhollower for renaming obfuscated names. ## All types and members matching this RegEx will get a name based on their signature, ## resulting in names that persist after game updates. ## # Setting type: String # Default value: UnhollowerDeobfuscationRegex = ## If enabled, Il2CppInterop will use xref to find dead methods and generate CallerCount attributes. # Setting type: Boolean # Default value: true ScanMethodRefs = false ## If enabled, BepInEx will save dummy assemblies generated by an Cpp2IL dumper into BepInEx/dummy. # Setting type: Boolean # Default value: false DumpDummyAssemblies = false ## The path to the folder where IL2CPPInterop assemblies are stored. ## Supports the following placeholders: ## {BepInEx} - Path to the BepInEx folder. ## {ProcessName} - Name of the current process ## # Setting type: String # Default value: {BepInEx} IL2CPPInteropAssembliesPath = {BepInEx} ## Automatically load all interop assemblies right before loading plugins. ## Some plugins may not work properly without this, but it may cause issues in some games. ## # Setting type: Boolean # Default value: true PreloadIL2CPPInteropAssemblies = true ## The path to the IL2CPP metadata file. ## Supports the following placeholders: ## {BepInEx} - Path to the BepInEx folder. ## {ProcessName} - Name of the current process ## {GameDataPath} - Path to the game's Data folder. ## # Setting type: String # Default value: {GameDataPath}/il2cpp_data/Metadata/global-metadata.dat GlobalMetadataPath = {GameDataPath}/il2cpp_data/Metadata/global-metadata.dat [Logging] ## Enables showing unity log messages in the BepInEx logging system. # Setting type: Boolean # Default value: true UnityLogListening = true [Logging.Console] ## Enables showing a console for log output. # Setting type: Boolean # Default value: true Enabled = false ## If enabled, will prevent closing the console (either by deleting the close button or in other platform-specific way). # Setting type: Boolean # Default value: false PreventClose = false ## If true, console is set to the Shift-JIS encoding, otherwise UTF-8 encoding. # Setting type: Boolean # Default value: false ShiftJisEncoding = false ## Hints console manager on what handle to assign as StandardOut. Possible values: ## Auto - lets BepInEx decide how to redirect console output ## ConsoleOut - prefer redirecting to console output; if possible, closes original standard output ## StandardOut - prefer redirecting to standard output; if possible, closes console out ## # Setting type: ConsoleOutRedirectType # Default value: Auto # Acceptable values: Auto, ConsoleOut, StandardOut StandardOutType = Auto ## Which log levels to show in the console output. # Setting type: LogLevel # Default value: Fatal, Error, Warning, Message, Info # Acceptable values: None, Fatal, Error, Warning, Message, Info, Debug, All # Multiple values can be set at the same time by separating them with , (e.g. Debug, Warning) LogLevels = Fatal, Error, Warning [Logging.Disk] ## Appends to the log file instead of overwriting, on game startup. # Setting type: Boolean # Default value: false AppendLog = false ## Enables writing log messages to disk. # Setting type: Boolean # Default value: true Enabled = false ## Only displays the specified log levels in the disk log output. # Setting type: LogLevel # Default value: Fatal, Error, Warning, Message, Info # Acceptable values: None, Fatal, Error, Warning, Message, Info, Debug, All # Multiple values can be set at the same time by separating them with , (e.g. Debug, Warning) LogLevels = Fatal, Error, Warning ## If true, instantly writes any received log entries to disk. ## This incurs a major performance hit if a lot of log messages are being written, however it is really useful for debugging crashes. ## # Setting type: Boolean # Default value: false InstantFlushing = false ## The maximum amount of concurrent log files that will be written to disk. ## As one log file is used per open game instance, you may find it necessary to increase this limit when debugging multiple instances at the same time. ## # Setting type: Int32 # Default value: 5 ConcurrentFileLimit = 5 ## Include unity log messages in log file output. # Setting type: Boolean # Default value: false WriteUnityLog = false [Preloader] ## Specifies which MonoMod backend to use for Harmony patches. Auto uses the best available backend. ## This setting should only be used for development purposes (e.g. debugging in dnSpy). Other code might override this setting. # Setting type: MonoModBackend # Default value: auto # Acceptable values: auto, dynamicmethod, methodbuilder, cecil HarmonyBackend = auto ## If enabled, BepInEx will save patched assemblies into BepInEx/DumpedAssemblies. ## This can be used by developers to inspect and debug preloader patchers. # Setting type: Boolean # Default value: false DumpAssemblies = false ## If enabled, BepInEx will load patched assemblies from BepInEx/DumpedAssemblies instead of memory. ## This can be used to be able to load patched assemblies into debuggers like dnSpy. ## If set to true, will override DumpAssemblies. # Setting type: Boolean # Default value: false LoadDumpedAssemblies = false ## If enabled, BepInEx will call Debugger.Break() once before loading patched assemblies. ## This can be used with debuggers like dnSpy to install breakpoints into patched assemblies before they are loaded. # Setting type: Boolean # Default value: false BreakBeforeLoadAssemblies = false