Skip to content

@ghorsington ghorsington released this Mar 21, 2021 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Updated HarmonyX to 2.4.0
  • Updated UnityDoorstop to 3.3.1.0
  • Fixed logs being duplicated in headless Unity versions
  • Fixed error spams in Unity debug builds when calling Application.isEditor
  • Added [Logging.Console].PreventClose option: allows to prevent console from being closed (and in turn closing the game) on platforms that support it
Assets 5

@ghorsington ghorsington released this Feb 28, 2021 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Updated BepInEx.Harmony
    • Fixes MissingMethodException in some Harmony 2 methods caused by upgrade to MonoMod 21.01.11.01
Assets 5

@ghorsington ghorsington released this Feb 26, 2021 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Updated BepInEx.Harmony
    • Fixes shimming assemblies that reference stable Harmony 2+
Assets 5

@ghorsington ghorsington released this Feb 26, 2021 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Updated HarmonyX to 2.3.2
  • Updated MonoMod.RuntimeDetour to 21.01.11.01
  • Updated UnityDoorstop to 3.3.0.0
  • Updated UnityDoorstop.Unix to 1.5.0.0
  • Fixed SIGINT not being handled on unix in some cases
    • Added ForceBepInExTTYDriver config option to force use of BepInEx TTY driver on unix
  • Added --enable-console command line argument handler to enable or disable BepInEx console
Assets 5

@ghorsington ghorsington released this Dec 19, 2020 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Updated HarmonyX to 2.3.0
  • Updated MonoMod.RuntimeDetour to 20.11.05.01
  • Harmony Interop now allows to shim more different kinds of plugins that depend on Harmony
Assets 5

@ghorsington ghorsington released this Dec 6, 2020 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Fixed Harmony upgrading in older Unity games in cases where a plugin depended on another upgradeable plugin in the same folder
Assets 5

@ghorsington ghorsington released this Nov 24, 2020 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Fix Harmony interop upgrading plugins that don't need upgrading
  • Fix Harmony interop attempting to shim DLLs that can't be loaded from a file path
Assets 5

@ghorsington ghorsington released this Nov 23, 2020 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Update HarmonyX to 2.2.0
  • Fix Harmony interop not upgrading plugins in certain cases
  • Fix Harmony interop attempting to shim DLLs that don't exist on disk
Assets 5

@ghorsington ghorsington released this Nov 13, 2020 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any BepInEx 5 releases starting version 5.4 will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

  • Added BepInEx 5.3 to 5.4 shimming tool
    • DLLs that use older Harmony version are fixed to properly work with 5.4
    • Original DLLs are automatically placed to BepInEx_Shim_Backup folder
  • Compiling new plugins against BepInEx.Harmony now emits a compiler error
    • All plugins should be updated to use HarmonyX only; refer to error messages during compilation
Assets 5

@ghorsington ghorsington released this Nov 8, 2020 · 290 commits to master since this release

⚠️ BepInEx 5 now enters long term support (LTS) mode

BepInEx 5.4 is the last version of BepInEx 5 with major updates. Any further BepInEx 5 releases will be minor and only contain fixes along with package version updates. Our main development focus now shifts to implementing BepInEx 6.

For developers: BepInEx 5 source code is now maintained on v5-lts branch. In turn master branch will start hosting BepInEx 6 source. All PRs regarding BepInEx 5 should be targeting that branch instead of master.

Changelog

Major changes

  • Added config option StandardOutType to hint about console output redirection. Useful for dedicated servers which handle logging differently from normal games
  • Changed Harmony log source to HarmonyX to emphasise the use of the custom Harmony library
  • Marked some core assemblies as "critical" by loading them automatically at game start
    • This fixes cases where a game ships its own assemblies like Mono.Cecil that are out-of-date
  • Allow multiple versions of an assembly to be loaded
    • If multiple assemblies with same name are detected, the one with the higher version is always preferred

Dependency updates

  • Updated HarmonyX to v2.1.1
    • This brings full Harmony 2 API to HarmonyX along with reverse patchers and more
    • Developers: Update your code to use HarmonyX 2.1.1. Old plugins will work via a special interop library (experimental)
  • Update MonoMod to v20.11.05.01

Fixes

  • Prevent reporting an error if there is a native DLL in plugins folder
  • Fixed assembly resolving causing BepInEx to crash in cases where assembly name contained unconvential characters
  • Fixed preloader logs not being output to LogOutput.txt
  • Further improved terminal logging support on linux
  • Fixed platform checks on *nix systems
  • Fixed failing to parse a config option if the value contained = symbol
  • Fixed crashing on some Unity versions caused by different IO API, see #139
  • Unified the format of preloader log messages with chainloader
Assets 5