valarnin/ffxiv-tools

Information on Getting CMTool, TexTools, etc. working under linux + WINE

Closed this issue · 2 comments

2020-09-23 EDIT: Cleaned this up a bit with further information learned during use and testing.

Hello - per your request valarnin, I wanted to post some of the information I'd used to get some of the additional programs to work with FFXIV. While it probably needs more testing, this setup has Advanced Combat Tracker, XIVLauncher, CMTool, and TexTools all working:

  • .Net "Windows Presentation Foundation" (WPF) is what has prevented some of these programs from working (CMTool and TexTools at least).

  • WPF relies on DirectX 9 but seems to fail with DXVK version of DX9 in place.

  • WINE built-in version of DirectX 9 DLLs appear to fix this and allow the programs to work.

  • Install .Net 4.7.2 with winetricks (installing .Net 4.8 in addition doesn't seem to cause any issues).

  • Install Visual C++ 2015-2019 libraries (I had to install these manually, winetricks couldn't successfully install in my instance).

  • Install the Windows DLLs from winetricks: d3d9, d3dcompiler_47, d3dxof

  • Override d3d9 as 'built-in' or put the built-in d3d9 DLL into the application folder. Note that Lutris appears to force d3d9 override to 'native' and overwrites the native Windows DLL to enforce DXVK use if you have 'Use DXVK' toggled on, and doesn't appear to respect any settings to use 'built-in', so for Lutris using the DLL-in-folder method may be easiest.

  • Use specific versions of WINE - Proton-5.8-GE2 confirmed working, wine-tkg-staging-5.16 confirmed working, Proton-5.9 failed in my instance.

  • Do the usual setcap/patchelf required on the WINE binaries for ACT, it's needed for any memory-reading from any of these programs.

  • If using Lutris + DXVK and you need to copy the built-in WINE d3d9.dll files, they're located at the following places - copy these to the application folder and remove the .orig at the end:

  • 32-bit: drive_c/windows/syswow64/d3d9.dll.orig

  • 64-bit: drive_c/windows/system32/d3d9.dll.orig

Even with those tips my CMTool still crashes on start

We've made some changes in Textools side that has rendered part of this info outdated (VS202x, moving to .net 4.8) and had some changes made that better supports wined3d in the viewer. DXVK 2.x should be fine now, but there are some situations where driver support might be an issue, such as in the SteamOS radeon driver on polaris gpu's