Skip to content

Releases: BepInEx/Il2CppInterop

v0.4.30.0

17 Apr 15:19
Compare
Choose a tag to compare

Changelog

  • @Kasuromi: Added initial support for injecting fields (#24)
  • @Kasuromi: Added support for enum field injection (#25)
  • @Kasuromi: Support methods with non-blittable types (#26)
  • Removed any CLI functionality from AssemblyUnhollower, renamed assembly to LibAssemblyUnhollower
  • Removed .NET Framework targets, added .NET Standard 2.1 and .NET 6.0 targets
  • Added AssemblyUnhollower.CLI as the new CLI tool
    • To install the tool, run dotnet tool install --global --add-source https://nuget.bepinex.dev/v3/index.json Il2CppAssemblyUnhollower.CLI

Packages are also available on BepInEx NuGet:

v0.4.23.0

24 Feb 19:14
Compare
Choose a tag to compare

Changelog

  • Update from upstream
    • Fix compatibility with Unity 2021.2+
    • Fix setters of non-blittable-value-type non-generic fields having invalid IL
    • Add PDB generator

Packages are also available on BepInEx NuGet:

v0.4.22.0

22 Dec 19:57
Compare
Choose a tag to compare

Changelog

  • @ghorsington: Fix importing Il2Cpp*Array<T> when adding params overload
  • @ghorsington: Enhance wrapping with a parameterless constructor

Packages are also available on BepInEx NuGet:

v0.4.21.0

07 Dec 20:04
af832f3
Compare
Choose a tag to compare

Changelog

  • @Kasuromi: Better Class::Init Search Method by (#18)
  • @Kasuromi: Don't require IntPtr ctor for injected types (#19)
  • @Kasuromi: Fix TryCast and default constructor calling issues (#20)

Packages are also available on BepInEx NuGet:

v0.4.20.0

18 Nov 18:46
Compare
Choose a tag to compare

Changelog

  • @simonkellly: Allow private computed properties to be hidden from Il2Cpp (#14)
  • @js6pak: Unstrip available const values (#15)
  • @js6pak Change pointer constructor parameter name to match Il2CppObjectBase (#16)
  • @PHPCore1: Add Il2CppImplementsAttribute and new general-purpose RegisterTypeInIl2Cpp(Type type, RegisterTypeOptions options) overload (#17)
    • Use of this overload is preferred over other overloads as it is binary-compatible

Packages are also available on BepInEx NuGet:

v0.4.19.5

08 Nov 19:10
Compare
Choose a tag to compare

Changelog

  • @ghorsington: Fix newslot being stripped for virtual methods

Packages are also available on BepInEx NuGet:

v0.4.19.4

07 Nov 14:22
Compare
Choose a tag to compare

Changelog

  • @simonkellly: Set default parameters for previously ignored types in unhollowed methods by

Packages are also available on BepInEx NuGet:

v0.4.19.3

05 Nov 16:51
Compare
Choose a tag to compare

Changelog

  • @simonkellly: Allow injected types to inherit from abstract injected types

Packages are also available on BepInEx NuGet:

v0.4.19.2

04 Nov 17:48
Compare
Choose a tag to compare

Changelog

  • @simonkellly: Fix casting between injected types and interfaces in cases where object is autogenerated by the unhollower

Packages are also available on BepInEx NuGet:

v0.4.19.1

03 Nov 20:44
Compare
Choose a tag to compare

Changelog

Changelog compared to v0.4.16.1 of knah/Il2CppAssemblyUnhollower:

  • @ghorsington: Add IsTypeRegisteredInIl2Cpp helper
  • @js6pak: Don't add CallerCountAttribute when xref is disabled
  • @simonkellly: Support abstract classes and virtual method overriding in class injector
  • @Kasuromi: ClassInjector Support for returning structs
  • @js6pak: Properly report if inheritance of abstract classes is not complete
  • @ghorsington: Optimise remapping of Il2Cpp->Unhollower types when injecting custom classes
  • @js6pak: Fix some assemblies not being disposed of early when unhollowing

Packages are also available on BepInEx NuGet: