After switching from DXVK 1.3 to 1.3.1 FFXIV has started crashing when mods are installed.
Note: Unmodded still works fine.
I have been unable so far to track down specific types of mods that cause issues. Everything I've tried seems to be working as excepted with 1.3.1 as long as you have just a few mods installed.
I've also been unable to create an apitrace. Likely due to the launcher being 32bit and the game itself being 64 bit. I'll keep trying when I have time.
A picture of the "crash" / "corruption": https://i.imgur.com/nZniTwj.png - The DXVK HUD is still updating, but nothing functions.
Switch back to DXVK 1.3
Final Fantasy XIV, default settings, modded.
Game works fine on my RX 480, but I'm also not using any mods. Also, please test without ACO, since older ACO builds are known to break the game (it has been fixed upstream, but I have no idea where you're getting your build from).
Does this build work? It disables the optimization you mentioned, but I don't see why it would cause the game to crash since it is pretty much bug-free.
dxvk-ffxiv-test.tar.gz
Edit: Also, can you please clarify whether the game works for you without mods? Can you please attach wine console output? DXVK logs alone aren't useful to debug crashes since DXVK doesn't know that it crashed.
To clarify. The game works fine without mods on both 1.3 and 1.3.1. But with mods 1.3.1 crashes.
And to clarify about aco, I've tested both mesa-aco and stable normal Mesa. Same issue.
Will test your build soon.
Then please test the build I gave you. If that doesn't work, you're going to have to figure out how to get an apitrace of the game, and if possible, bisect the issue yourself to figure out which commit broke it. I cannot support modded setups directly.
If the build I gave you does work, I'm still going to need an apitrace to reproduce it.
@fosspill What kind of mods did you use? Without more details it will be difficult to fix.
So, quick update while I keep testing.
The dxvk-ffxiv-test build doesn't make a difference, as far as I can tell.
@doitsujin The Wine console log, as requested: https://gist.githubusercontent.com/shinnova/dc573350adc8d181907eb0cb22db650f/raw/86af91df05de15e36ed3dbcc7f7a7844fe89f59c/wine%2520console%2520log
@varris1 Currently testing various mods. Kind of tedious to test, but I haven't been able to find a specific type of mod that causes crashing. It might be as simple as the amount of mods causing issues with 1.3.1 and not 1.3.
I also updated the main issue with the information I have so far.
Can you please bisect the problem then?
I'll be blunt, I don't care about your use case since it probably violates the game's ToS, but I do care about DXVK regressions since they might affect pretty much any game out there.
Edit: Looking at your wine console log, it doesn't look like anything crashed at all?
I understand that you don't care about this specific use case directly, that's fine :)
I'll try bisecting the problem when I have time.
Regarding the wine log, somehow it seems like the rendering itself crashes, but the game itself keeps running in a corrupted state. Maybe crashing was the wrong word to use?
Picture of the issue, the DXVK_HUD is even still updating:
https://i.imgur.com/nZniTwj.png
While @fosspill is bisecting the issue, I've been testing different types of mods and found at least one type of mod that causes this issue reliably. Furniture model mods, for instance this "toilet mod".
I also want to say thank you for giving this potentially silly yet surprisingly popular use case some attention.
Wow, bisecting is actually kind of fun and therapeutic in a strange way.
Here is the output after bisecting @doitsujin
acf6c27e76d07bd9f8ec2b1beb7117015ef129d8 is the first bad commit
commit acf6c27e76d07bd9f8ec2b1beb7117015ef129d8
Author: Philip Rebohle <[email protected]>
Date: Mon Jul 15 04:14:23 2019 +0200
[dxvk] Limit maximum size of multi-slice buffers
Reduces memory fragmentation caused by frequently renamed buffers.
src/dxvk/dxvk_buffer.cpp | 7 +++++++
src/dxvk/dxvk_buffer.h | 9 +++++----
2 files changed, 12 insertions(+), 4 deletions(-)
I noticed that in d9vk, when making a zero-sized DxvkBuffer it crashes due to a divide by zero exception here after this commit.
Could be the same thing perhaps?
@fosspill Are you able to test whether that fixes the issue? Cheers.
@Joshua-Ashton, I built DXVK from your "dxvk-buffer-div-zero" branch and it works perfectly to what I can see so far.
00cf2a20a3a3e2ea2a3db0dbddf619152159d8f0 should hopefully fix the problem properly.
@doitsujin Indeed, that seems to have done it :)
A bit off-topic, but thank you for being the much needed Linus of the wine gaming world! (And yes, that's a compliment!)
Alright, thanks for confirming.
@doitsujin Thanks for fixing this! I had this similar crash with DXVK 1.3.1 playing 3DXChat (NSFW game) :blush: I just build DXVK from source and got it running again no problem :+1:
Most helpful comment
@doitsujin Thanks for fixing this! I had this similar crash with DXVK 1.3.1 playing 3DXChat (NSFW game) :blush: I just build DXVK from source and got it running again no problem :+1: