$ STEAM_COMPAT_DATA_PATH=~/.steam/steam/steamapps/compatdata/40960 ~/.steam/steam/compatibilitytools.d/proton/proton run ~/.steam/steam/steamapps/compatdata/40960/pfx/drive_c/windows/system32/winecfg.exe
And set msvcr100.dll and msvcp100.dll to builtin.
And FFLauncher.exe is a .NET application. Since proton doesn't have mono support yet. You need to rename rename Stronghold2.exe to FFLaucher.exe, then it will launch.
$ file msvcp100.dll
msvcp100.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows
$ file FFLauncher.exe
FFLauncher.exe: PE32 executable (GUI) Intel 80386, for MS Windows
So it seems to be the game is installing a msvc runtime of wrong architecture. On Windows, there is a dll architecture check[1] when loading dlls, whereas wine currently loads the first found.
Stronghold 2 (40960)
Issue transferred from https://github.com/ValveSoftware/Proton/issues/8489.
@pietrodevo posted on 2025-03-01T13:50:51:
The game won't launch and will keep prompting the message:
"fx_2_0" target profile is only compatible with the "fx" target type
Launch the game from Steam.
proton experimentalx1 2025-03msvcp100.dllx1 2019-01msvcr100.dllx1 2019-01
Steam - System Information
steam-40960.log (with FFLauncher.exe)
I tried to rename Stronghold2.exe to FFLaucher.exe but no success.
steam-40960.log (with Stronghold2.exe)