First problem: the config tool (which starts before the actual game starts) crashes instantly. I don't know why, but I might look into this later. Fixed in wine upstream as of version 4.3, patch backported to proton 4.2.
Second problem: the game itself crashes as well after the intro logos. It creates both a d3d9 and d3d11 device and tries to do resource sharing between them. This is not supported between wined3d/dxvk and I think this is what causes the game to crash. When using wined3d for d3d11, it crashes earlier.
The 'solution' to get the game to work on dxvk is to let d3d9 device creation fail. This makes the game start and it seems to run without problems after that. Note that setting the d3d9 dll to disabled doesn't work. It needs to be able to load the d3d9 dll and then d3d9 device creation needs to fail. The only problem with this workaround is that the intro movie doesn't play. It's worth pointing out that the game also has an ending movie which might cause problems, but I haven't gotten to that point in the game.
Apitrace taken on windows 10: https://mega.nz/#!2FlUWCTa!wY6b_kjMYEJTqP7RUilsW74LbscT6aRx0L7sojjZ4Cw (has graphical glitches due to an apitrace bug with deferred contexts)
The appdb page: https://appdb.winehq.org/objectManager.php?sClass=version&iId=37537.
I don't have them but I suspect some of the other games in the Atelier series might run into the same problem. Appids: 756590, 936160, 936180, 936190.
From the log, it looks like the address the config tool is trying to execute was truncated to 32 bits somewhere.
I've filed a wine bug for the config tool issue: https://bugs.winehq.org/show_bug.cgi?id=46712
I've filed a wine bug for the config tool issue: https://bugs.winehq.org/show_bug.cgi?id=46712
Thanks, I attached a patch there for testing.
Does anyone have any ideas for how to setup the d3d9 DLL kung fu using proton?
Using the customized local proton install I plan to make one just for these Atelier games. So I can do any DLL butchering needed then post up detailed instructions.
BTW I filed an issue report for 756590, same symptoms.
I wouldn't recommend running it through proton since apparently it crashes with current FAudio:
Unhandled exception: page fault on write access to 0x00000000 in 64-bit code (0x00007ff40e165b79).
=>0 0x00007ff40e165b79 free_check+0x1eba9() in libc.so.6 (0x00000000377bfc60)
1 0x00007ff3b120cfba FAudioVoice_SetChannelVolumes+0x4ca9() in libfaudio.so (0x00000000377bfc60)
It's an easy fix, but it might take some time before the FAudio changes get to proton.
EDIT: fixed by https://github.com/FNA-XNA/FAudio/commit/ca1729e416e27ffd15ecf35c6d69e8467db9cd29
Config tool crash should be fixed in 4.2-1, Valvesoftware/wine@df06b30.
Can confirm that the config tool works in proton 4.2-1, however I did notice it doesn't work in normal wine when running it through steam, unless native msvcr110 is used. The reason for this is a difference between how the "__crtGetShowWindowMode" call is handled in wine and the native dll. I will open a more detailed report on winehq soon. (https://github.com/wine-mirror/wine/commit/b353ad7db8e013bab8bfd0ffde3610372fa3d644)
@BillFleming The game actually seems to run fine in proton 4.2 once the dll stuff is set up, I've written detailed instructions in my first post in this thread.
The game now works out of the box with the latest Proton (5.0). The only problem: no video cutscenes. And stability.
I only get a white screen after the "Now Loading" message, though the game kinda "works" as it registers controller input and play sounds just fine. Maybe AMD driver related...
GPU: RX 5700 XT
Driver: Mesa 20.1.0-git / LLVM 11.0.0-git
Kernel: 5.6.0-rc1
System Info: https://gist.github.com/fureloka/2607f6c22f2af220fd28faa5c8e3a7cd
Proton Version: 5.0-2
Proton Log: steam-527290.log
Video File Info: https://gist.github.com/fureloka/fc3365f804e7ba249f4b9bab4c9031fd
Looking at the Proton log there are some interesting bits,
fixme:quartz:VMR9SurfaceAllocatorNotify_AdviseSurfaceAllocator (000000000EA96980/000000000EA96540)->(...) stub
fixme:quartz:VMR9SurfaceAllocatorNotify_SetD3DDevice (000000000EA96980/000000000EA96540)->(...) semi-stub
and
err:gstreamer:unknown_type Could not find a filter for caps: "video/x-ms-asf"
err:gstreamer:gstdecoder_init_gst Failed to play stream.
err:gstreamer:watch_bus decodebin0: Your GStreamer installation is missing a plug-in.
err:gstreamer:watch_bus ../../proton/gst-plugins-base/gst/playback/gstdecodebin2.c(4679): gst_decode_bin_expose (): /GstBin:bin0/GstDecodeBin:decodebin0:
no suitable plugins found:
Missing decoder: Advanced Streaming Format (ASF) (video/x-ms-asf)
Sadly ASF support is part of gst-plugins-ugly, so I don't see that happening anytime soon.
The game is still working on Proton 5.0-2 after that hotfix was released yesterday.
You still need to put the fake d3d9.dll into the game's folder.
Then use the following new launch options:
PROTON_USE_D9VK=1 %command%
The game is still working on Proton 5.0-2 after that hotfix was released yesterday.
You still need to put the fake d3d9.dll into the game's folder.
Then use the following new launch options:
PROTON_USE_D9VK=1 %command%
Yes. The game works that way.
But I'm sure, that the game worked out of the box on Proton 5.0-1. And stopped to (just showing white screen) on 5.0-2.
But another Atelier games continue to work even on 5.0-2...
Hello @FibYar, can you check if you're seeing a white screen with PROTON_USE_WINED3D=1 %command% and Proton 5.0-2?
proton 5.0-2x3 2020-02proton 5.0-1x1 2020-02proton 4.2x2 2019-03proton 4.2-1x1 2019-03PROTON_USE_WINED3D=1x1 2020-02PROTON_USE_D9VK=1x2 2020-02WINEDLLOVERRIDES=d3d9=nx1 2019-01PROTON_USE_WINED3D=1 %command%x1 2020-02PROTON_USE_D9VK=1 %command%x2 2020-02WINEDLLOVERRIDES=d3d9=n %command%x1 2019-01d3d9.dllx2 2020-02
Compatibility Report
System Information
I confirm:
steam-527290.log
Symptoms
Game does not starts.
Reproduction