https://bugs.winehq.org/show_bug.cgi?id=57571
--- Comment #10 from Rencer rencer@euromail.hu --- (In reply to Béla Gyebrószki from comment #9)
@Rencer: can you reproduce the problem with the demo version? https://www.zafehouse.com/files/getdemo.php?demo=1
Please attach the terminal output from Wine: https://wiki.winehq.org/FAQ#get_log
It's not completely true that the game works without overrides because it needs native d3dx9_43.dll and d3dcompiler_43.dll Anyway, I cant reproduce the problem you reported here either (I tried the demo and the GOG.com version).
Recently I had a little time (and nerve) to mess around agin with this game.
I tried out the demo with a freshly created Wine prefix, created exactly as I done before with Mono and everything intalled. (see my previous posts) It doesn't work.
Now give it a try without MONO or anything. env WINEPREFIX=~/.wineZAFE1 WINEDLLOVERRIDES="mscoree,mshtml=" wineboot
Still running winecfg to check the audio, tho it always worked. It works this time too. env WINEPREFIX=~/.wineZAFE1 winecfg
Install demo. It confirms that we have clean prefix without mono or directx or anything, because it propmpts for NET Framework 2.0 and Directx to download. Skipped all. env WINEPREFIX=~/.wineZAFE1 wine ~/Temp/ZafehouseDiariesDemoSetup.exe
Run: env WINEPREFIX=~/.wineZAFE1 wine ~/.wineZAFE1/drive_c/Games/ZafehouseDiariesDemo/ZafehouseDiaries.exe
"Out-of-the-box" the demo won't run, same as the full game. Literally nothing happens. If I open a task manager, I see that wine just starts and immediately closes.
Now install DirectX and .NET 35sp1 (and also Visual C++ 2010 beacuse that is required too. Look it up here: https://screwflystudios.itch.io/zafehouse-diaries env WINEPREFIX=~/.wineZAFE1 winetricks directx9
-Winetricks won't allow it to be installed: "warning: directx9 is deprecated. Please install individual directx components (e.g., `/usr/bin/winetricks d3dx9`) instead." Fine, alright. And how the frikkin hell a simple user knows, from the hundreds of individuals dlls which one of the program uses? This is nonsense... This is a major problem in this case that we aren't allowed to install the full directx 9...
So I did what on the screen: env WINEPREFIX=~/.wineZAFE1 winetricks d3dx9 -Theres a propt that say: 'Using native override for following DLLs...' This is the list of all dll overrides that is written in the terminal: d3dx9_24 d3dx9_25 d3dx9_26 d3dx9_27 d3dx9_28 d3dx9_29 d3dx9_30 d3dx9_31 d3dx9_32 d3dx9_33 d3dx9_34 d3dx9_35 d3dx9_36 d3dx9_37 d3dx9_38 d3dx9_39 d3dx9_40 d3dx9_41 d3dx9_42 d3dx9_43
NET Framework: env WINEPREFIX=~/.wineZAFE1 winetricks dotnet35sp1 -Installation finises, but I wonder why winetricks change the prefix to Windows 7? Theres a 'Executing wine winecfg -v win7' when the .NET installation finished. Windows 10 is the default wine version with current Wine. Wineboot defaults to Windows 10. Changed back to defult Windows 10 version wiht winecfg
Visual C++: env WINEPREFIX=~/.wineZAFE1 winetricks vcrun2010 -Both 32bit and 64bit istallatation done without any error.
Runing the demo and generate logs: env WINEPREFIX=~/.wineZAFE1 wine ~/.wineZAFE1/drive_c/Games/ZafehouseDiariesDemo/ZafehouseDiaries.exe >log.txt 2>errlog.txt -The demo starts and I saw the usual texts at bottom right, but soon get an 'Unhandles exeption has occured in your application.' If I click 'Continue' anyway it froze forever. The last thing that is written at the bottom is 'Initialising drawing engine.' The log.txt is empty, zero byte. In the errlog.txt I find nothing, zero byte. Interesting...
Made a the 'XAudio2_7' that I found out is responsible for the sound with winecfg. env WINEPREFIX=~/.wineZAFE1 winecfg
Still the demo froze exactly as before. Not even reaching the point when the music should starts playing. When that 'Unhandles exeption has occured in your application.' window pops up, if I click the details there is this error: This is the only error that I run into. I'm not sure that this error is even relevant.
************** Exception Text ************** System.NullReferenceException: Object reference not set to an instance of an object. at Zafehouse2.Main.ThreadLoader_Complete(Object sender, RunWorkerCompletedEventArgs e) at System.ComponentModel.BackgroundWorker.OnRunWorkerCompleted(RunWorkerCompletedEventArgs e) at System.ComponentModel.BackgroundWorker.AsyncOperationCompleted(Object arg)
Demo doesn't work, can't even start it by this way. I tried this two overrides with the created prefix. Nothing. I also tried to simply just make that two dll overrides in the original backed-up old preix. It won't fix the graphics. The native d3dx9_43.dll and d3dcompiler_43.dll don't fix anything, or at least not this bug that I have, it seems.
But I can managed to start up the demo, see my next post how.