Open NamoDev opened 3 years ago
Same issue here. Identical error box, and nothing else.
A comment further down noticed that the logs are different if you click "yes" or "no" to sending a report. Here are logs for both cases:
Log when clicking "no" to sending crash report: steam-1151640-no_crash_report.log
Log when clicking "yes" to sending crash report: steam-1151640-yes_crash_report.log
Edit: Out of curiosity I tried with the newest GloriousEggroll/proton-ge-custom release, with seemingly same result. Log here, in case it helps anyone: proton_5.9-GE-5-ST_steam-1151640.log
Same issue here. Identical error box, and nothing else. steam-1151640.log Steam Sys-info
Looking at the logs from everyone, looks like this is common point where error occurs.
warn:debugstr:OutputDebugStringA "An unknown unhandled exception (C06D007Eh) has occurred in thread 'Main' (0) at instruction location 000000007B00FC3Eh\n\nCall stack:\nBase address: 0x000140000000\n 0. 0x00007BCDAC6C RtlVirtualUnwind\n 1. 0x00007BCDAF82 RtlVirtualUnwind\n 2. 0x00007BCDB2FE NtRaiseException\n 3"
I"m having same issue, the same line was also in my proton log, along with the error cpu_context_win.cc:144] non-x64 context
Same issue as mentioned by other users. However, I am still updating my results, incase it helps further to find the root cause.
System Info steam-1151640_GE_5.9-5_ST.log steam-1151640_Proton509.log steam-1151640_Proton509_next.log
same here System Info
Same issue here.
same here
I think, "error cpu_context_win.cc:144] non-x64 context" is the crash-reporter crashing and not hzd. When you click on no when being asked to send the error report, you get a much different proton log. Then warn:debugstr:OutputDebugStringA "Initializing DLMalloc Heap\n" maybe looks like the evil witch, that caused all of this. steam-1151640.log
It's also dx12 only. That might not help a lot either.
I'm getting the same pop-up.. I tried multiple versions of proton including proton-ge and proton-tkg..
I'm having the same issue
Then warn:debugstr:OutputDebugStringA "Initializing DLMalloc Heap\n" maybe looks like the evil witch, that caused all of this. steam-1151640.log
It isn't. These logs have a lot of info and possibly not enough.
Point in fact you can look at
fixme:msvcrt:MSVCRT__stdio_common_vsnwprintf_s options 24 not handled
warn:debugstr:OutputDebugStringA "Initializing DLMalloc Heap\n"
and think that could cause a failure. But, it is highly likely a red herring.
Also, stuff like "execute_cfa_instructions", "raise_exception", "dump_unwind_info" can all be present in a working game. Logs can also present other challenges with log entries appearing at different places.
There's also fixme and warnings appearing for dx12 but that may or may not mean anything important as well.
fixme:d3d12_device_caps_init_feature_options1: TotalLaneCount = 3840, may be inaccurate.
fixme:dxgi:dxgi_adapter_QueryVideoMemoryInfo Returning fake video memory info.
fixme:dxgi:dxgi_adapter_SetVideoMemoryReservation iface 0xd97f40, node_index 0, segment_group 0, reservation 0x180000000 stub!
warn:d3d12_device_CheckFeatureSupport: Shader cache features not supported.fixme:d3d12_device_CheckFeatureSupport: Unhandled format 0x55.
fixme:d3d12_device_CheckFeatureSupport: Unhandled format 0x56.
fixme:d3d12_device_CheckFeatureSupport: Unhandled format 0x73.
Its possible this one may take months or more to solve. Just depends on the problems and how many.
Same issue here. Identical error box. steam-1151640.log steam-sysinfo.txt
I added some additional debug channels for this log that will hopefully be helpful.
I added some additional debug channels for this log that will hopefully be helpful.
That does help a bit. The logs previously I don't think any other logs here show the dialog - the issuer's doesn't and I checked one other making two before this large one you provided.
You get that crash dialog box within [edit: 3k] lines [probably ~2.7 or 2.8k] of the dx12 info I posted above notably
"warn:d3d12_device_CheckFeatureSupport: Shader cache features not supported"
fixme:d3d12_device_CheckFeatureSupport: Unhandled format 0x56
Since its mostly garbage in between, its probable that its happening at the dx12 stuff or before (I haven't looked into it yet any further).
The error dialog.
0150:Ret PE DLL (proc=0x11007bb8,module=0x11000000 L"amd_ags_x64.dll",reason=THREAD_ATTACH,res=(nil)) retval=1
0150:Starting thread proc 0x140375730 (arg=0x4fc5500)
0150:Call user32.MessageBoxW(00000000,141b588b0 L"Unfortunately the game has crashed.\nDo you want to help us fix the issue by sending a crash report?",141b59dc0 L"Error",00040014) ret=1403757c8
So it looks like much of the log is the end result of it crashing. I included the amd dll line in there just because its next to it and it may not mean anything.
I tried the game on Windows 10 too and it also won't run, displaying exactly the same dialog box.
However, before the "Unfortunately the game has crashed..." error, it displays different dialog box that says the game will only run with driver version 27. This is NVidia DirectX driver version and that version supports DirectX12 Ultimate, which I couldn't install on the computer I have running Windows 10 because... reasons...
So, I assume that the reason for this crash on Proton is essentially because there is no DirectX 12 Ultimate support either in Proton, or DX dlls being used in Proton prefix for this game, or because NVidia driver I have on Linux (440.100) does not provide features needed to implement/emulate DX12 Ultimate, or some other place (I'm not really familiar with all the Wine/Proton stack to be able to pinpoint this more precisely).
Just my 2 cents, thought it may help in some way.
So, I assume that the reason for this crash on Proton is essentially because there is no DirectX 12 Ultimate support either in Proton, or DX dlls being used in Proton prefix for this game, or because NVidia driver I have on Linux (440.100) does not provide features needed to implement/emulate DX12 Ultimate, or some other place (I'm not really familiar with all the Wine/Proton stack to be able to pinpoint this more precisely).
Its certainly possible. Though Death Stranding is I believe the only other game that is using this version of the Decima engine and dx12, and it has been working with the Proton next version, although that seems to be iffy and not without problems.
VKD3D is still a work-in-progress but they also note that 440.100 is one that works with dx12 and also a higher version driver may be needed. I'm not sure anyone has tested here with the Nvidia Vulkan developer beta driver as well.
But, it definitely looks possible that everyone may need to wait for VKD3D to improve and to have a driver that will work with it. Should find out in time.
it is most probably a dx12 issue, I get "fixme:d3d12_device_CheckFeatureSupport: Unhandled feature 0x13." before it crashes, in logs.
Looks like we have to wait for vkd3d to progress more.
it is most probably a dx12 issue, I get "fixme:d3d12_device_CheckFeatureSupport: Unhandled feature 0x13." before it crashes, in logs.
Looks like we have to wait for vkd3d to progress more.
You can get rid of these error in a dirty way by adding some lines to vkd3d. It doesn't make a difference. Copying dxcompiler.dll from the tools directory to the executable's directory does make it show the loading screen, but it still crashes with the same message, so it's not really useful.
I noticed doing some debugging that the error message is from a generic exception handler. It doesn't indicate what's happening behind the scenes except that the game crashed.
As @Danacus says, the initial error is likely due to dxcompiler.dll
being missing (from @korodarn's log - thank you!):
00bc:Call KERNEL32.LoadLibraryExA(141e94fc0 "dxcompiler.dll",00000000,00000000) ret=1416abd49
...
00bc:Ret KERNEL32.LoadLibraryExA() retval=00000000 ret=1416abd49
00bc:Call KERNEL32.GetLastError() ret=1416abd57
00bc:Ret KERNEL32.GetLastError() retval=0000007e ret=1416abd57
00bc:Call KERNEL32.RaiseException(c06d007e,00000000,00000001,0021e290) ret=1416abd9d
If someone who has copied dxcompiler.dll from the tools directory to the executable's directory (and got to the loading screen, as Danacus stated) could provide a WINEDEBUG=+relay,module,seh,timestamp
log, it might help find a way around it :) (remember to compress it, otherwise it'll be pretty huge haha)
I don't think it got to loading screen, but log does look a bit different so maybe it will be useful, maybe not. steam-1151640_2.zip
@korodarn No idea if this will help or not, but try installing the native d3dcompiler_47
(protontricks 1151640 d3dcompiler_47
):
73612.804:00bc:Call d3dcompiler_47.D3DCreateBlob(0000022c,0021e360) ret=1401f327e
73612.804:00bc:Ret d3dcompiler_47.D3DCreateBlob() retval=00000000 ret=1401f327e
...
73612.804:00bc:trace:seh:raise_exception code=c0000005 flags=0 addr=0x1400f0787 ip=1400f0787 tid=00bc
steam-1151640_1.zip I copied the d3dcompiler_47 into the executable folder as well the run prior to the one I uploaded. I zipped it right before so it is here
*I know this might not do exactly the same thing as the install, since I didn't change the setting so I'm verifying if it used this file and will try re-running after.
I'm guessing this might be related to cause of the crash then:
warn:d3d12_swapchain_set_display_mode: Failed to find closest matching mode, hr 0x887a0001.
...
err:d3d12_swapchain_resize_target: Failed to set display mode, hr 0x887a0001.
...
73337.021:00bc:trace:seh:raise_exception code=c0000005 flags=0 addr=0x1400f0787 ip=1400f0787 tid=00bc
There are also a few warning messages above it, not sure if they're relevant:
Patch 1.01 is out, i didn't get to test it yet.
https://www.reddit.com/r/horizon/comments/i9jaa0/horizon_zero_dawn_complete_edition_for_pc_patch/
Still crashes for me.
Suppose its worth nothing and giving intersectRaven a break for the low quality post as the patch includes "Some players are experiencing startup crashes. Patch 1.01 fixes a few, but not all, of these crashes."
That patch should only benefit you when you can run it.
But, it still may need Proton/Wine/VKD3D/etc fixes before this game even runs.
By cherry-picking the some commits from upstream vkd3d into the valve tree you can fix the "unhandled feature" errors, and you can fix the "unhandled format" errors by simply adding the missing formats (not hard, these are supported formats in vulkan you just need to add the correct mapping). After this the game complains about missing DXIL support. Unfortunately even if you enable dxil-spirv in vkd3d you still can't get further than the loading screen because it fails with an "[ERROR] UNKNOWN unimplemented" which is coming from dxil-spirv. I tried going deeper but this stuff (vulkan/spirv/llvm) is way over my head and I'm not even sure what I did so far is correct. Anyway I think this game needs DXIL and dxil-spirv is not enough yet.
Well, there are bad news and good news. There was a recent update to dxil-spirv and now the graphics initialization seems to be done and now the input that's broken. The game tries to load "Windows.Gaming.Input" and fails to do so. It seems like it's some kind of WinRT/UWP API but I can't find many references to this in wine, not sure what's the next step here.
Edit: found some interesting stuff in wine and made some stubs hoping it would crash later but it's the same, I think this game is now blocked by fundamental missing features from wine.
@nyz93 can you publish your changes you made so far for HZD, maybe i find some time this weekend and add all that missing WinRT/UWP stuff.
@lyra00 you have to install dxil-spirv and build this vkd3d using --with-dxil-spirv
. As to how do you get this into proton I'm not 100% sure I'm using an EGS copy, regular wine 5.14-staging and an empty prefix with just vcrun2015
from winetricks.
@nyz93: OK, I think I got your changes implemented in Proton locally(with buildsystem integration). Im currently building and testing it and when its works I create a public FORK on my github account tomorrow. Then i get this WinRT/UWP stuff running. Hopefully that is the last thing missing there.
Have you tried with the vkd3d-proton fork? It has a ton of commits ahead of official vkd3d repository at winehq ever since it was forked.
Interesting vkd3d-proton fork have already dxil-spirv integrated so maybe its better to use it instead of adding it to proton directly.
Hi,
this should be integrated in TKG proton builds already.
https://github.com/Frogging-Family/wine-tkg-git/releases
Comes with the latest devel version of HansKristian & Doitsujin's vkd3d-proton standalone - https://github.com/HansKristian-Work/vkd3d
Ok, I'm working on a Proton HZD Fork, where I'm adding all those changes figured out by @nyz93(a biiiig thanks to him). I get his vkd3d changes running, but i have troubles building dxil-spirv with the default steam runtime.
@fsyy sadly i couldn't compile TKG Proton(so many merge conflicts O_o), but the only difference to the standard Proton is that "--with-dxil-spirv" is ON as default, so it was not worth for me to following that path any longer. I'll stick with Proton-5.0-next and cherry picking changes from Wine-5.x when I need to.
Here is a Fork i created, when you have a HZD specific solution you can add a PR. https://github.com/lyra00/Proton When we have HZD running we can contribute the changes to the Original Proton.
Things i did, planning to do:
- [ ] Figure out how to get WinRT/UWP running on wine/linux or
- [ ] Write an "Windows.Gaming.Input" to "DirectInput" Wrapper
I hope i can get into the WinRT/UWP stuff next Weekend.
One thing to note with this game is it has a lot of bugs. Even in Windows I had a lot of trouble with it crashing every 10 minutes or so. I finally found out how to get it to stop doing that in Windows thanks to a reddit post, and I'm not sure which part of that really fixed it but I haven't had a crash since I followed this series of things, and thought it might be helpful to note it here
Disable Control Flow guard in Windows Defender only for HZD Enable Large Pages If you're on the latest windows build (v2004 or 19041.xxx), ensure you enable HAGS. There is a program called "Intelligent Standby List Cleaner", which cleans standby memory over time based on certain parameters, get it and ensure it runs in the background.
Of these, HAGS seems to be noted to fix the crashes for others so I'm thinking that might be the most important part. Of course hopefully a patch comes out again in the mean time that makes settings like this in windows unnecessary for more of us.
Thanks to Paul's patches and continuous efforts from Hans-Kristian we're getting somewhere. https://www.winehq.org/pipermail/wine-devel/2020-August/172365.html https://www.winehq.org/pipermail/wine-devel/2020-August/172366.html
RADV/ACO:
AMDGPU-PRO:
This is unstable and slow on AMDGPU-PRO, and while it seems stable and perf is pretty good on RADV/ACO it's visually more glitchy (though both are). But hey, it's something.
In case someone's wondering, that was done with current head of proton-tkg, staging 5.15.2r7 (aaea13a1) based. Edit: There are blocking issues on Nvidia currently.
Congrats lads! So this is using an on-the-fly DX12 to Vulkan (SPIR-V) converter?
Replying to https://github.com/ValveSoftware/Proton/issues/4125#issuecomment-680129597
Now I'm curious to see how it'll look on nvidia GPU. Nvidia drivers are less glitchy than AMDs.
@Galcian79 It's rendering similarly to AMDGPU-PRO. Floating rocks, plants, missing objects etc. but no lines all over. Not sure about the stability though.
doesn't work here, nvidia user, same error as before.
log with a fresh prefix:
https://gist.github.com/fsyy/587f85abfea2a3ca2b993afe531c561e
system specs:
https://gist.github.com/fsyy/b6b4a73f60114d0cd1c40ecef95c83c2
It didn't work for me at first, but compiling vkd3d-proton to a dll and setting a dll override to native did work. I don't know why the native vkd3d-proton from @Tk-Glitch 's PKGBUILD didn't work.
@Danacus The shared library has limited functionalities compared to the standalone dll build. Using the standalone version is needed for various d3d12 games to work at all as it allows to bypass some wine limitations.
@Tk-Glitch Oh okay, good to know. Thanks!
which limitations?
On Wed, Aug 26, 2020 at 4:40 PM Daan Vanoverloop notifications@github.com wrote:
@Tk-Glitch Oh okay, good to know. Thanks!
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.
@Tk-Glitch I've used your vkd3d-git
PKGBUILD to install vkd3d-proton.
Then I compiled proton-tkg
with _use_vkd3dlib="false"
and tried HZD again but it still crashes.
I've also tried (as mentioned in https://github.com/ValveSoftware/Proton/issues/4125#issuecomment-680883714) compiling vkd3d-proton and copying the dll's inside system32 and syswow64 inside the wineprefix and adding an override in winecfg
for d3d12.dll
to native. That didn't change anything either.
Do I need to change something in the wineprefix of HZD? Is it possible that it has something to do with me using mesa-aco-git
or amdvlk
instead of vulkan-radeon
?
Sidenote for the adventurous:
The game requires native d3dcompiler_47.dll (you can run cp ./Tools/ShaderCompiler/PC/10.0.18362.0/x64/d3dcompiler_47.dll .
from the game's dir to "enforce" making use of it, as the game doesn't by default).
@D3SOX Apparently current head of mesa-git
prevents the game from running. mesa-aco-git
should be deprecated by now also. AMDVLK
doesn't work with the game afaik (-pro does though, possibly only on Navi as I haven't tested Vega nor Polaris).
Native d3d12.dll should be used by default when building proton-tkg without you doing anything. You also do not require a vkd3d package installed to use the standalone d3d12.dll.
@slapin The need for a wine's side D3D12CreateVersionedRootSignatureDeserializer implementation for example, or being able to use a different dxgi such as DXVK's. Hans-Kristian and Doitsujin know better :stuck_out_tongue:
Compatibility Report
System Information
I confirm:
Note: current NVIDIA driver is the latest version available in RPMFusion for Fedora 32
Symptoms
Game doesn't start - a dialog pops up saying "Unfortunately the game crashed" without providing any error details.
Reproduction
Just start the game through Steam. steam-1151640.log