FEZModding / HAT

Simple mod loader for FEZ
MIT License
16 stars 1 forks source link

bug: `FEZ.Hooks.mm.dll` fails to patch on non-Steam version #19

Closed Krzyhau closed 6 months ago

Krzyhau commented 8 months ago

One of binaries used for generating common hooks library (most likely FEZ.exe) relies on Steamworks.NET.dll on Steam version of the game, which, as you may guess, is not present on other versions of the game. However, MonoMod requires it during patching process as a dependency because Hooks library is dependent on it.

Solution is quite simple: exclude Steamworks.NET.dll dependency from the hooks library. Not sure how; I'm hoping there's a way to do it at any stage of hook library generation (HookGen or ILRepack). If not, I might need to get crafty... or just use non-steam FEZ version to generate the library lol

Krzyhau commented 6 months ago

Instead, I've decided to follow a method similar to other .NET modding communities and include stripped versions of DRM-free binaries (from itch.io version), which are modified to work both for that version and for Steam version of the game. They're now included as part of the repository. Generating hook library from these seem to work flawlessly, and we now have an additional bonus of being able to configure CI/CD if we want!