Sheep-y / Modnix

Mod loader and manager for Phoenix Point (Game).
https://www.nexusmods.com/phoenixpoint/mods/43
MIT License
12 stars 7 forks source link

I figured out how to install mods on Linux/Steam #32

Open folknor opened 3 years ago

folknor commented 3 years ago

Hi,

So to install mods on Phoenix Point: Year One Edition on Linux using Steam, I worked out some instructions:

(Obviously make sure you run the game once before doing this. Also, use proton 5.21-GE-1 or proton 6.0-GE-1 to run it. Later versions might work as well.)

  1. Download https://github.com/Sheep-y/Modnix/releases/download/v2.5.5/ModnixManualSetup_v2.5.5.7z (or a later version, make sure it's the manual setup one)
  2. Extract the files in the Managed folder in the 7z file (3 DLLs + 1 EXE) to steamapps/common/Phoenix Point/PhoenixPointWin64_Data/Managed (no files are replaced)
  3. Extract the file Modnix.exe to steamapps/compatdata/839770/pfx/drive_c/users/steamuser/My Documents/My Games/Phoenix Point/Mods (you need to create some of those folders)
  4. Install mono and basic assemblies, version does not matter
  5. Open a terminal to steamapps/common/Phoenix Point/PhoenixPointWin64_Data/Managed
  6. Run mv System.dll System.bak
  7. Run mono ModnixInjector.exe
  8. Run mv System.bak System.dll
  9. Download mods from nexusmods.com and extract them in steamapps/compatdata/839770/pfx/drive_c/users/steamuser/My Documents/My Games/Phoenix Point/Mods

This works for me. I'm posting these same instructions to protondb.com now, and linking to this ticket. People will probably come here for help.

folknor commented 3 years ago

The reason step 6 is needed is because without it you get this error:

$ mono ModnixInjector.exe
cant resolve internal call to "System.Diagnostics.FileVersionInfo::GetVersionInfo_internal(string)" (tested without signature also)

Your mono runtime and class libraries are out of sync.
The out of sync library is: /.../steamapps/common/Phoenix Point/PhoenixPointWin64_Data/Managed/System.dll

When you update one from git you need to update, compile and install
the other too.
Do not report this as a bug unless you're sure you have updated correctly:
you probably have a broken mono install.
If you see other errors or faults after this message they are probably related
and you need to fix your mono install first.
cant resolve internal call to "System.Diagnostics.FileVersionInfo::GetVersionInfo_internal(string)" (tested without signature also)

Your mono runtime and class libraries are out of sync.
The out of sync library is: /.../steamapps/common/Phoenix Point/PhoenixPointWin64_Data/Managed/System.dll

When you update one from git you need to update, compile and install
the other too.
Do not report this as a bug unless you're sure you have updated correctly:
you probably have a broken mono install.
If you see other errors or faults after this message they are probably related
and you need to fix your mono install first.
ERROR: An exception occured: System.MissingMethodException:  assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) System.Diagnostics.FileVersionInfo.GetVersionInfo_internal(string)
  at System.Diagnostics.FileVersionInfo.GetVersionInfo (System.String fileName) [0x00019] in <14e3453b740b4bd690e8d4e5a013a715>:0 
  at Sheepy.Modnix.Injector.GetProductVersion () [0x0000a] in <e2601b645ba44fb6b4a7eda71547c2e9>:0 
  at Sheepy.Modnix.Injector.SayHeader () [0x00000] in <e2601b645ba44fb6b4a7eda71547c2e9>:0 
  at Sheepy.Modnix.Injector.Main (System.String[] args) [0x0000b] in <e2601b645ba44fb6b4a7eda71547c2e9>:0 
Sheep-y commented 3 years ago

Thanks for the guide. Just released 2.5.4 to support Steam on Windows, but I guess manual setup is still necessary on Linux.

I have no immediate plan to support Linux (beyond flexible path separators), so the step is very valuable. Glad to know that it can be made to work.

folknor commented 3 years ago

Thanks for keeping this ticket open, and if you want to help users even more you could link to it from the readme and from the release notes (you might have done already, I've not checked.)

Also, thank you for taking even small considerations like using flexible path separarators - Linux users don't mind getting their hands dirty to make things work, but not all developers are so easy to work with :+1:

I will of course test 2.5.4 when you release the manual install package for it, and 3.0 when the time comes. I will simply edit comment 1 with updated links/instructions as necessary.

Sheep-y commented 3 years ago

Modnix 3 Beta 2 is out. It no longer uses an injector, so the steps are bound to change. As a result, the new manual setup is simpler - just copy some files to game folder, and Modnix to the Mods folder.

That's assuming it works, of course. The new library supports Wine but, you know, this is the part where I am counting on you bringing in good news. :) If it works, it may be best to open a new issue.

And yeah, I have linked this page from manual setup doc and certain pages of the wiki. Will look at home too.

GrzegorzDrozd commented 3 years ago

Hi @folknor ,

I am having trouble with this guide. I am using newer version of Modnix for now to skip injector BUT when I run:

mono Modnix.exe 
The entry point method could not be loaded due to Could not load file or assembly or one of its dependencies. assembly:PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 type:<unknown type> member:<none>

What mono packages do I need exactly to at least run Modnix?

Thanks.

folknor commented 3 years ago

Which version of Modnix?

I've not tried it for a while, I was waiting for the DLC release which I believe is a week or so from now :-)

GrzegorzDrozd commented 3 years ago

Which version of Modnix?

I've not tried it for a while, I was waiting for the DLC release which I believe is a week or so from now :-)

I am trying with Modnix 3 beta 3 - to skip injector. It turns out that I need to just run it and have it in background :) Then running Modnix from mods directory works :) So I have save from windows, mods from windows and it looks like it is working fine so I will be able to do some gaming while on a six hour train travel tomorrow :) Just need to remember to kill process later.

But to make it even more usable: what mono packages did you installed?

mono --version
Mono JIT compiler version 4.6.2 (Debian 4.6.2.7+dfsg-1ubuntu1)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           __thread
    SIGSEGV:       altstack
    Notifications: epoll
    Architecture:  amd64
    Disabled:      none
    Misc:          softdebug 
    LLVM:          supported, not enabled.
    GC:            sgen
sudo apt list --installed | grep mono

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

ca-certificates-mono/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
fonts-noto-mono/bionic,bionic,now 20171026-2 all [installed,automatic]
fonts-tlwg-mono/bionic,bionic,now 1:0.6.4-2 all [installed,automatic]
fonts-tlwg-mono-ttf/bionic,bionic,now 1:0.6.4-2 all [installed,automatic]
libmono-2.0-1/bionic,now 4.6.2.7+dfsg-1ubuntu1 amd64 [installed,automatic]
libmono-2.0-dev/bionic,now 4.6.2.7+dfsg-1ubuntu1 amd64 [installed,automatic]
libmono-accessibility4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-cairo4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-cecil-private-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-cil-dev/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-codecontracts4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-compilerservices-symbolwriter4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-corlib4.5-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-cscompmgd0.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-csharp4.0c-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-custommarshalers4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-data-tds4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-db2-1.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-debugger-soft4.0a-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-http4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-i18n-cjk4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-i18n-mideast4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-i18n-other4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-i18n-rare4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-i18n-west4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-i18n4.0-all/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-i18n4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-ldap4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-management4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-messaging-rabbitmq4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-messaging4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-microsoft-build-engine4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-microsoft-build-framework4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-microsoft-build-tasks-v4.0-4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-microsoft-build-utilities-v4.0-4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-microsoft-build4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-microsoft-csharp4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-microsoft-visualc10.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-microsoft-web-infrastructure1.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-oracle4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-parallel4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-peapi4.0a-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-posix4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-rabbitmq4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-relaxng4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-security4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-sharpzip4.84-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-simd4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-smdiagnostics0.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-sqlite4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-componentmodel-composition4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-componentmodel-dataannotations4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-configuration-install4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-configuration4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-core4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-data-datasetextensions4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-data-entity4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-data-linq4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-data-services-client4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-data-services4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-data4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-deployment4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-design4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-drawing-design4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-drawing4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-dynamic4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-enterpriseservices4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-identitymodel-selectors4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-identitymodel4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-io-compression-filesystem4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-io-compression4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-json-microsoft4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-json4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-ldap-protocols4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-ldap4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-management4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-messaging4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-net-http-formatting4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-net-http-webrequest4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-net-http4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-net4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-numerics-vectors4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-numerics4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-core2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-debugger2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-experimental2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-interfaces2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-linq2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-observable-aliases0.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-platformservices2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-providers2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-runtime-remoting2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-windows-forms2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reactive-windows-threading2.2-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-reflection-context4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-runtime-caching4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-runtime-durableinstancing4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-runtime-interopservices-runtimeinformation4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-runtime-serialization-formatters-soap4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-runtime-serialization4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-runtime4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-security4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-servicemodel-activation4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-servicemodel-discovery4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-servicemodel-internals0.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-servicemodel-routing4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-servicemodel-web4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-servicemodel4.0a-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-serviceprocess4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-threading-tasks-dataflow4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-transactions4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-abstractions4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-applicationservices4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-dynamicdata4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-extensions-design4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-extensions4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-http-selfhost4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-http-webhost4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-http4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-mobile4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-mvc3.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-razor2.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-regularexpressions4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-routing4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-services4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-webpages-deployment2.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-webpages-razor2.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web-webpages2.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-web4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-windows-forms-datavisualization4.0a-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-windows-forms4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-windows4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-workflow-activities4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-workflow-componentmodel4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-workflow-runtime4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-xaml4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-xml-linq4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-xml-serialization4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system-xml4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-system4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-tasklets4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-webbrowser4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-webmatrix-data4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-windowsbase4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmono-xbuild-tasks4.0-cil/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
libmonosgen-2.0-1/bionic,now 4.6.2.7+dfsg-1ubuntu1 amd64 [installed,automatic]
libmonosgen-2.0-dev/bionic,now 4.6.2.7+dfsg-1ubuntu1 amd64 [installed,automatic]
mono-4.0-gac/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
mono-csharp-shell/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
mono-devel/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
mono-gac/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
mono-mcs/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
mono-runtime/bionic,now 4.6.2.7+dfsg-1ubuntu1 amd64 [installed,automatic]
mono-runtime-common/bionic,now 4.6.2.7+dfsg-1ubuntu1 amd64 [installed,automatic]
mono-runtime-sgen/bionic,now 4.6.2.7+dfsg-1ubuntu1 amd64 [installed,automatic]
mono-xbuild/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
mono-xsp4/bionic,bionic,now 4.2-2.1 all [installed,automatic]
mono-xsp4-base/bionic,bionic,now 4.2-2.1 all [installed,automatic]
monodoc-base/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
monodoc-gtk2.0-manual/bionic,bionic,now 2.12.40-2 all [installed,automatic]
monodoc-http/bionic,bionic,now 4.2-2.2 all [installed,automatic]
monodoc-manual/bionic,bionic,now 4.6.2.7+dfsg-1ubuntu1 all [installed,automatic]
ubuntu-mono/bionic-updates,bionic-updates,now 16.10+18.04.20181005-0ubuntu1 all [installed,automatic]
jficz commented 3 years ago

@GrzegorzDrozd How did you make v3b3 work exactly? For me mono doesn't seem to do the trick, even forcing wine-mono v6.3 into the prefix ignoring the system-wide mono packages.

Modnix seems to be running just fine except a small little detail: there is no window, no gui (see output logs below). Tried installing .NET4.8 inside the wine prefix and that resulted in a window spawning without a content and an almost immediate crash (.NET seems to be broken on Wine for a while). Leaving it running in this semi-broken state doesn't do anything with the game.

I can live without a gui just fine (in fact I prefer it) but since there is no injector I assume Modnix must launch the game and patch it at runtime. @folknor maybe a command line parameter to tell Modnix to skip gui and launch the game directly?

wine 6.14-staging wine-mono 6.3

esync: up and running.
Startup time 2021-08-03 10:07:14.7846
Assembly: C:\users\user\Documents\My Games\Phoenix Point\Mods\Modnix.exe
Working Dir: C:\users\user\Documents\My Games\Phoenix Point\Mods
Mod Dir: C:\users\user\Documents\My Games\Phoenix Point\Mods
Running startup checks
Launching main window
Manager resolving PresentationCore.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationCore.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving Modnix.resources, Version=3.0.2021.204, Culture=en-US, PublicKeyToken=null
Manager resolving PresentationFramework.Classic.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.Classic.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.Classic.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.Classic.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving WindowsBase.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving WindowsBase.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving System.Xaml.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=b77a5c561934e089
Manager resolving System.Xaml.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=b77a5c561934e089
GUI?Setting up GUI
GUI?Refreshing GUI
Manager resolving ModnixLoader, Version=3.0.2021.204, Culture=neutral, PublicKeyToken=null
Mapped ModnixLoader.dll to memory, 111,104 bytes.
GUI?Refreshing app info
Initiating ModLoader
Manager resolving Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed
Mapped Newtonsoft.Json.dll to memory, 526,336 bytes.
Sheepy.Modnix.ModLoader/3.0.2021.204; 2021-08-03 10:07:17Z
Setup ModLoader
Loader?Loading C:\users\user\Documents\My Games\Phoenix Point\Mods\Modnix.conf
GUI?Refreshing game info
GUI?Clearing mod info
GUI?Clearing mod info
GUI?Refreshing app buttons
GUI?Set VISIBILITY = true
GUI?Checking app status
GUI?Startup log:
Startup time 2021-08-03 10:07:14.7846
Assembly: C:\users\user\Documents\My Games\Phoenix Point\Mods\Modnix.exe
Working Dir: C:\users\user\Documents\My Games\Phoenix Point\Mods
Mod Dir: C:\users\user\Documents\My Games\Phoenix Point\Mods
Running startup checks
Launching main window
Manager resolving PresentationCore.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationCore.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving Modnix.resources, Version=3.0.2021.204, Culture=en-US, PublicKeyToken=null
Manager resolving PresentationFramework.Classic.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.Classic.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.Classic.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.Classic.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving WindowsBase.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving WindowsBase.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=31bf3856ad364e35
Manager resolving PresentationFramework.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=31bf3856ad364e35
Manager resolving System.Xaml.resources, Version=4.0.0.0, Culture=en-US, PublicKeyToken=b77a5c561934e089
Manager resolving System.Xaml.resources, Version=4.0.0.0, Culture=en, PublicKeyToken=b77a5c561934e089
Manager resolving ModnixLoader, Version=3.0.2021.204, Culture=neutral, PublicKeyToken=null
Mapped ModnixLoader.dll to memory, 111,104 bytes.
Initiating ModLoader
Manager resolving Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed
Mapped Newtonsoft.Json.dll to memory, 526,336 bytes.
Sheepy.Modnix.ModLoader/3.0.2021.204; 2021-08-03 10:07:17Z
Setup ModLoader
Loader?Loading C:\users\user\Documents\My Games\Phoenix Point\Mods\Modnix.conf
GUI?Queuing status check
GUI?Last update check was 8/3/2021 8:43:13 AM
Thread4?Rebuilding mod list
Thread5?Checking app and game status
Thread7?Building mod list
Thread7?Loader?Scanning for mods: C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread5?Detecting game at c:/GOG Games/Phoenix Point Year One Edition
Thread5?Found game at c:/GOG Games/Phoenix Point Year One Edition
Thread5?Parsing c:/GOG Games/Phoenix Point Year One Edition\PhoenixPointWin64_Data\Managed\Assembly-CSharp.dll for game version.
Thread5?Manager resolving Mono.Cecil, Version=0.11.3.0, Culture=neutral, PublicKeyToken=50cebf1cceb9d05e
Thread5?Mapped Mono.Cecil.dll to memory, 357,376 bytes.
Thread5?Detecting PPML / Legacy Modnix injection.
Thread5?Scanning Cinemachine.CinemachineBrain of c:/GOG Games/Phoenix Point Year One Edition\PhoenixPointWin64_Data\Managed\Cinemachine.dll
Thread7?Loader?Found mod Sheepy.BlockTelemetry at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_BlockTelemetry.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod PhoenixPt_CapDeployBoost at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_CapDeployBoost.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod Sheepy.FullBodyAug at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_FullBodyAug.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod Sheepy.GlobeTweaks at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_GlobeTweaks.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod Sheepy.IndiGear at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_IndiGear.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod Sheepy.LootEverything at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_LootEverything.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod Sheepy.MitigateShred at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_MitigateShred.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod PhoenixPt_NoNothingFound at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_NoNothingFound.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod Sheepy.RecruitInfo at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_RecruitInfo.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod Sheepy.ScrapVehicle at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_ScrapVehicles.dll (0 actions, 1 dlls)
Thread5?Scanning PhoenixPoint.Common.Game.PhoenixGame of c:/GOG Games/Phoenix Point Year One Edition\PhoenixPointWin64_Data\Managed\Assembly-CSharp.dll
Thread7?Loader?Found mod Sheepy.SkipIntro at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_SkipIntro.dll (0 actions, 1 dlls)
Thread7?Loader?Found mod Sheepy.TechProgression at C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_TechProgression.dll (0 actions, 1 dlls)
Thread7?Loader?Resolving 12 mods
Thread5?All loader files found in c:/GOG Games/Phoenix Point Year One Edition\PhoenixPointWin64_Data\Managed
Thread7?Loader?Assigned 12 mods to 6 phases
Thread10?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread12?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread11?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread8?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread9?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread10?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_CapDeployBoost.dll
Thread12?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_IndiGear.dll
Thread9?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_GlobeTweaks.dll
Thread11?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_BlockTelemetry.dll
Thread8?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_FullBodyAug.dll
Thread10?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread10?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_LootEverything.dll
Thread8?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread12?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread9?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread11?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread8?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_MitigateShred.dll
Thread12?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_NoNothingFound.dll
Thread9?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_RecruitInfo.dll
Thread11?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_ScrapVehicles.dll
Thread10?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread10?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_SkipIntro.dll
Thread9?Scanning docs in C:\users\user\Documents\My Games\Phoenix Point\Mods
Thread9?Scanning embedded docs in C:\users\user\Documents\My Games\Phoenix Point\Mods\PhoenixPt_TechProgression.dll
Thread5?Installed loader hash: 0280467FC90EEB24CE272EDB27E9F49050CB8B3A18FA6DA31CCE603F35891044
Thread7?Determining mod load order
Thread5?Embedded loader hash: 0280467FC90EEB24CE272EDB27E9F49050CB8B3A18FA6DA31CCE603F35891044
Thread4?Fetching preload list
Thread11?Sorting 0 preloads
Thread11?Updating 0 preloads
Thread11?Preloads updated
Thread8?Creating sandbox
GUI?System.EntryPointNotFoundException: CreateInstalledObjectsInfo assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) MS.Internal.PtsHost.UnsafeNativeMethods.PTS.CreateInstalledObjectsInfo(MS.Internal.PtsHost.UnsafeNativeMethods.PTS/FSIMETHODS&,MS.Internal.PtsHost.UnsafeNativeMethods.PTS/FSIMETHODS&,intptr&,int&)
  at MS.Internal.PtsHost.PtsCache.InitInstalledObjectsInfo (MS.Internal.PtsHost.PtsHost ptsHost, MS.Internal.PtsHost.UnsafeNativeMethods.PTS+FSIMETHODS& subtrackParaInfo, MS.Internal.PtsHost.UnsafeNativeMethods.PTS+FSIMETHODS& subpageParaInfo, System.IntPtr& installedObjects, System.Int32& installedObjectsCount) [0x0024c] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.PtsHost.PtsCache.CreatePTSContext (System.Int32 index, System.Windows.Media.TextFormattingMode textFormattingMode) [0x0003c] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.PtsHost.PtsCache.AcquireContextCore (MS.Internal.PtsHost.PtsContext ptsContext, System.Windows.Media.TextFormattingMode textFormattingMode) [0x000b0] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.PtsHost.PtsCache.AcquireContext (MS.Internal.PtsHost.PtsContext ptsContext, System.Windows.Media.TextFormattingMode textFormattingMode) [0x00035] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.PtsHost.PtsContext..ctor (System.Boolean isOptimalParagraphEnabled, System.Windows.Media.TextFormattingMode textFormattingMode) [0x0003c] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.PtsHost.StructuralCache.EnsurePtsContext () [0x0001b] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.PtsHost.StructuralCache.get_Section () [0x00001] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.PtsHost.FlowDocumentPage..ctor (MS.Internal.PtsHost.StructuralCache structuralCache) [0x00010] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.Documents.FlowDocumentFormatter..ctor (System.Windows.Documents.FlowDocument document) [0x00022] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Documents.FlowDocument.get_BottomlessFormatter () [0x00044] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.Documents.FlowDocumentView.EnsureFormatter () [0x0001e] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.Documents.FlowDocumentView.get_DocumentPage () [0x0000f] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.Documents.DocumentPageTextView..ctor (MS.Internal.Documents.FlowDocumentView owner, System.Windows.Documents.ITextContainer textContainer) [0x0001f] in <86cb770284754e778dca573709108a09>:0 
  at MS.Internal.Documents.FlowDocumentView.System.IServiceProvider.GetService (System.Type serviceType) [0x00043] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Primitives.TextBoxBase.InitializeRenderScope () [0x00011] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Primitives.TextBoxBase.SetRenderScopeToContentHost () [0x00120] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Primitives.TextBoxBase.AttachToVisualTree () [0x00008] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Primitives.TextBoxBase.OnApplyTemplate () [0x00008] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.ApplyTemplate () [0x00050] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x00037] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at System.Windows.Controls.DockPanel.MeasureOverride (System.Windows.Size constraint) [0x00093] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at System.Windows.Controls.StackPanel.StackMeasureHelper (System.Windows.Controls.IStackMeasure measureElement, System.Windows.Controls.IStackMeasureScrollData scrollData, System.Windows.Size constraint) [0x0012e] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.StackPanel.MeasureOverride (System.Windows.Size constraint) [0x00038] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at System.Windows.Controls.DockPanel.MeasureOverride (System.Windows.Size constraint) [0x00093] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at System.Windows.Controls.Grid.MeasureCell (System.Int32 cell, System.Boolean forceInfinityV) [0x00113] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Grid.MeasureCellsGroup (System.Int32 cellsHead, System.Windows.Size referenceSize, System.Boolean ignoreDesiredSizeU, System.Boolean forceInfinityV, System.Boolean& hasDesiredSizeUChanged) [0x00045] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Grid.MeasureCellsGroup (System.Int32 cellsHead, System.Windows.Size referenceSize, System.Boolean ignoreDesiredSizeU, System.Boolean forceInfinityV) [0x00001] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Grid.MeasureOverride (System.Windows.Size constraint) [0x003b4] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at MS.Internal.Helper.MeasureElementWithSingleChild (System.Windows.UIElement element, System.Windows.Size constraint) [0x00023] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.ContentPresenter.MeasureOverride (System.Windows.Size constraint) [0x00001] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at Microsoft.Windows.Themes.ClassicBorderDecorator.MeasureOverride (System.Windows.Size availableSize) [0x00094] in <ffd2c367f8294e7397f0bd12ccdbecd0>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at System.Windows.Controls.Grid.MeasureOverride (System.Windows.Size constraint) [0x00058] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at System.Windows.Controls.Grid.MeasureCell (System.Int32 cell, System.Boolean forceInfinityV) [0x00113] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Grid.MeasureCellsGroup (System.Int32 cellsHead, System.Windows.Size referenceSize, System.Boolean ignoreDesiredSizeU, System.Boolean forceInfinityV, System.Boolean& hasDesiredSizeUChanged) [0x00045] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Grid.MeasureCellsGroup (System.Int32 cellsHead, System.Windows.Size referenceSize, System.Boolean ignoreDesiredSizeU, System.Boolean forceInfinityV) [0x00001] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.Grid.MeasureOverride (System.Windows.Size constraint) [0x003b4] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at System.Windows.Controls.Control.MeasureOverride (System.Windows.Size constraint) [0x00027] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at MS.Internal.Helper.MeasureElementWithSingleChild (System.Windows.UIElement element, System.Windows.Size constraint) [0x00023] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Controls.ContentPresenter.MeasureOverride (System.Windows.Size constraint) [0x00001] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <400af3b4c18e4bd486fafde2c27948b7>:0 
  at System.Windows.Controls.Decorator.MeasureOverride (System.Windows.Size constraint) [0x00011] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.Documents.AdornerDecorator.MeasureOverride (System.Windows.Size constraint) [0x00001] in <86cb770284754e778dca573709108a09>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <86cb770284754e778dca573709108a09>:0 
daniele-bondi commented 2 years ago

Any update on this? I cannot use the gui and I don't understand how to make modnix work without it. Version is 3-beta3.

EDIT: made it work, kinda.

The instructions in the readme of the manual setup archive are wrong. The first bullet point says

Find the game folder. Default to C:\Program Files (x86)\Steam\steamapps\common\Phoenix Point\PhoenixPointWin64_Data\Managed\ or C:\Program Files\Epic Games\PhoenixPoint\PhoenixPointWin64_Data\Managed\. You can find PhoenixPointWin64.exe in it.

The game folder would be C:\Program Files (x86)\Steam\steamapps\common\Phoenix Point or C:\Program Files\Epic Games\PhoenixPoint, NOT the PhoenixPointWin64_Data\Managed subdirectory.

Since I have to copy a bunch of dlls as part of the manual setup, I assumed they have to go in the Managed directory together with the all the other dlls. This was not the case. The modnix files do indeed go into the root of the game installation (i.e. the folder that contains PhoenixPointWin64.exe). After moving the files the modnix loader started working.

I still have the issue that some mods (e.g. Assorted Adjustments) rely on modnix for configuration. I could not find any mod configuration file, so I assume they only get generated when you change some configuration value from inside modnix. This means that I cannot edit them by hand as I don't know what name or format the file should have.


In case other people read this, what I did to make v3 work is:

  1. Download the manual setup archive from the releases page and extract it somewhere.
  2. Copy 0Harmony.dll, ModnixLoader.dll, Mono.Cecil.dll, winhttp.dll, doorstop_config.ini into the game root folder (the folder with PhoenixPointWin64.exe in it).
  3. Copy Modnix.exe, Modnix.config into <user directory>/Documents/My Games/Phoenix Point/Mods/. Create any folder that does not exist.
  4. Run winecfg. Go to the "Libraries" tab and add a dll override for winhttp.dll (set to "native then builtin"). See also https://docs.bepinex.dev/articles/advanced/proton_wine.html
  5. Run game.

You can see if modnix is correctly installed by running the game once and checking the file <user directory>/Documents/My Games/Phoenix Point/Mods/ModnixLoader.log. If it doesn't exist, the modnix loader was not executed.