
BepInExPack
Unified BepInEx all-in-one modding pack - plugin framework, detour libraryDetails
BepInEx Framework + API
This is the pack of all the things you need to both start using mods, and start making mods using the BepInEx framework.
To install, either refer to installation guide on R2Wiki,
or extract contents of the inner BepInExPack to the gamefolder, such that the winhttp.dll
file sits right next to RiskOfRain2.exe
.
The zip looks like:
\BepInExPack <----- move the contents of this folder
manifest.json
readme.md
icon.png
What each folder is for:
-
BepInEx/plugins
- This is where normal mods/plugins are placed to be loaded. If a mod is just aNAME.dll
file, it probably goes in here.For your own organisation, consider putting them inside folders, eg:plugins/ActualRain/ActualRain.dll
-
BepInEx/patchers
- These are more advanced types of plugins that need to access Mono.Cecil to edit .dll files during runtime. Only copy paste your mods here if the author tells you to. -
BepInEx/config
- If your plugin has support for configuration, you can find the config file here to edit it. -
BepInEx/core
- Core BepInEx .dll files, you'll usually never want to touch these files (unless you're updating)
What is included in this pack
BepInEx 5.4 - https://github.com/BepInEx/BepInEx This is what loads all of your plugins/mods.
Customized BepInEx configuration BepInEx config customized for use with RoR2
Writing your own mods
There's 2 documentation pages available:
Places to talk:
BepInEx contains helper libraries like MonoMod.RuntimeDetour and HarmonyX
Changelog
-
5.4.17
- Fixed console not opening in Outer Wilds and other games that ship custom
user32.dll
- Fixed console not opening in Outer Wilds and other games that ship custom
-
5.4.16
- Fixed when DumpAssemblies is enabled, dumped assemblies are now put to
BepInEx/DumpedAssemblies/<ProcessName>
. If assembly is in use (e.g. multiple game processes open), dumped assemblies will have a number postfix. - Game executable timestamp is not included in console title now (fixes issue with some window managers)
- Updated HarmonyX to 2.5.5
- Updated MonoMod.RuntimeDetour to 21.9.19.1
- Fixed when DumpAssemblies is enabled, dumped assemblies are now put to
-
5.4.15
- Update HarmonyX to 2.5.4
- Update MonoMod to 21.8.5.1
-
5.4.14
- Update HarmonyX to 2.5.3
- Update MonoMod to 21.7.22.3
-
5.4.13
- Update HarmonyX to 2.5.2
- Fixes an issue that prevented BepInEx from launching on certain games
- Update HarmonyX to 2.5.2
-
5.4.12
- Log executable timestamp in preloader logs
- Fix BepInEx *nix launch script
- Add support for the new Steam bootstrapper
- Add experimental fix for resolving symlinks
- Update Doorstop to 3.4.0.0
- Fix crash in paths with non-ASCII characters
- Experimental fix for HarmonyXInterop not working sometimes on first game launch
- Update HarmonyX to 2.5.1
-
5.4.11
- Update Bepin GOs to use HideAndDontSave flags
- Disable setting BepInEx manager to HideAndDontSave by default
- New config option: [Chainloader].HideManagerGameObject which enables HideAndDontSave for manager GameObjects
- Fix ChainLoader.HasBepinPlugins returning false when inheriting from class from another Assembly
- Update Bepin GOs to use HideAndDontSave flags
-
5.4.10
- Updated HarmonyX to 2.4.2
- Updated UnityDoorstop.Unix to 1.5.1.0
- Marked BepInEx plugin manager and ThreadingHelper GameObjects with HideAndDontSave flag to prevent it from being destroyed in some games
- Converted configuration files to always use UTF-8 without BOM
- Fixed headless mode check throwing an exception in some games