Lordfirespeed / NuGet-GameLib-Dehumidifier

An automated utility that maintains 'GameLibs' packages for Steam games.
GNU General Public License v3.0
10 stars 5 forks source link

Implement IL2CPP support #60

Open enchart opened 1 month ago

enchart commented 1 month ago

Today I found this repo, and spent a few hours trying to fork it and make it work properly so that it can work with a certain IL2CPP game (Project Arrhythmia), trying to figure out why the uploaded package was completely empty, only to go to source code and realize that isil2cpp boolean does exist, but actually does nothing at all. image I truly value and respect your hard work, and it's definitely miles ahead of what's been done with BepInEx's own NuGet feed, but the fact that isil2cpp is present in the JSON schema, but is not used in any way, truly drove me in a completely wrong direction while trying to use it. I had no issues while using this project other than this one.

enchart commented 1 month ago

I'm going to try and take a look on how this can be implemented.

Lordfirespeed commented 1 month ago

The property was copied from here: https://github.com/BepInEx/BepInEx.NuGetUpload.Service where it may have been implemented.

enchart commented 1 month ago

Thank you for clarifying. 👍 Just checked, it doesnt't have any usages in the source repo either. It was probably only used for metadata or something.

Though I also wanted to share that, I tried to look into Cpp2IL.Core and integrate it into the depot processing tasks, but had no luck doing that, since Cpp2IL.Core's API is a singleton, which most likely won't work properly with the async code. The only alternative I could think of is using Cpp2IL's CLI, but it kinda feels like a hack rather than a proper solution.