unity-mod-manager
unity-mod-manager copied to clipboard
Add support for Linux (and Mac OS)
Just wanting to add this compatibility request here to hopefully one day get this to work under Linux.
Atm I do believe it runs via MONO but there is a small issue that is mentioned in the Nexus bug section page of this mod.
https://www.nexusmods.com/site/mods/21?tab=bugs
It looks like a bug in the zip library Ionic.Zip. When the app tries to unzip the archive, it literally create a directory named "/my/full/path/to/the/mod/folder" as the directory name
Ok someone pointed out that the reason UMM can't find mods is because everyone names Info.json with a capital I, UMM under Linux will check for a info.json file, this is critical under Linux because things are case sensitive. Rename Info.json to info.json and everything appears to work under Linux now.
SO yes now it works under Linux and Mac, all because of changing a I to a i
Which emulators are best used for Linux and Mac?
I'm using KingmakerModLaucher which does it all for me. No need to run any installer gui.
I find VirtualBox works well for Linux. I haven't found found a good solution for emulating Mac. Also, KingmakerModLoader doesn't support Mac.
KingmakerModLoader doesn't support Mac.
Hmmm, does mac not use the same unity engine dll's or same game version or something?
I don't see why it wouldn't work.
@jarrard I didn't keep the exact error log, but it cause exceptions when the game tries to create new GUID's, likely due to the way KML inserts itself into the game by replacing/wrapping the built-in random number generator.
@newman55 If your asking in the context of unity mod manager, I was able to get it running on Linux and Mac using mono. I don't really know much about wine.
Specifically
mono UnityModManger.exe
for Linux
mono32 UnityModManager.exe
for Mac
Need to show the logs from attempting to run KML/UMM on a Mac... Anyone able to do that?
If it's faulting on the pass-through RNG... well, that'd be pretty damned weird.
Edit; As for emulating Mac OS X ... VMWare Player, EFI bios mode, Hackintosh... I think there's some VMX files floating around. I also see a guide on how to accomplish the same for VBox.
Edit 2; If it's related to Ionic.Zip, that's unrelated to the RNG. With KML, all of the assemblies were moved outside of the game directory, link against the unmodified game libs, and the assemblies provided by KML or packaged with the mods... so any Ionic.Zip type dependency in a different assembly doesn't interfere with the Ionic.Zip.Reduced assembly.... though I think I ended up redirecting to the game's Ionic.Zip.Reduced? Not sure.
Really wish I had more time to put back into this, I have only been managing to squeeze in some casual games here and there on weekends; when I'm feeling productive on the weekends I end up putting in work on job stuff as an investment in reducing stress during the week, there's just so much that needs to be done to get things oiled to the point that the day to day isn't stressful and irritating.
@Tyler-IN So installed it again, and i think the issue was that I had KingmakerModLoader.dll installed in the wrong folder. I had it installed in ~/Library/Application Support/Steam/steamapps/common/Pathfinder Kingmaker/Kingmaker.app/Contents/KingmakerModLoader/KingmakerModLoader.dll and was getting this error https://pastebin.com/xFgYmhJt
After moving it to ~/Library/Application Support/Steam/steamapps/common/Pathfinder Kingmaker/KingmakerModLoader/KingmakerModLoader.dll the error is now this https://pastebin.com/PewuvC9g
It's the version of the System.Drawing I used. 🤷♂️ Probably can replace it with a different, Mac friendly library. I don't think UMM even needs/uses such a library. Feel free to replace that library. You can try removing the other KMM mods and see if it loads w/o initializing the System.Drawing library, it can probably still load UMM mods.
Not related to the method of injection, though.
Unity Doorstop appears to be windows-only out of the box due to it's use of __ImageBase. Could have used a cross-platform method of getting the entry module's load address, sheesh. Oh, and it also relies on hooking windows libraries... ok so yeah it's really windows-only.
Any updates on this?
no, you'll have to keep using mono for now. Which works.
Some of the time, yeah.
I did get it to work after a lot of tinkering and copying files, but it seems to be finiky on a per-game basis.
Are we there yet?
@Auraculum2 Works over mono, but font is not displayed on some builds.