i'm not a full blown expert but my current recommendations for running this game on linux if you're using arch linux and AMD graphics and don't mind compiling your own packages:
1. A linux kernel with gang submit
https://www.phoronix.com/news/AMDGPU-Gang-Submit-6.1
2. Mesa-git patched to have gang submit support:
https://gitlab.freedesktop.org/Venemo/m ... ang_submit
You can generate the patch with git by cloning the source repository and then merging it and then using git diff between your merged branch and origin/main
If anyone has greater interest in this I can give more steps
3. You can use wine-ge-custom AUR/PKGBUILD to make the wine package
https://aur.archlinux.org/packages/wine-ge-custom best to edit it to set the march to native
or I personally prefer to use wine-tkg
https://github.com/Frogging-Family/wine ... ne-tkg-git
default with ESYNC and FSR enabled in the customization file and also in the PKGBUILD file, before the last 'if' section:
Code: Select all
# Doesn't compile without remove these flags as of 4.10
export CFLAGS="${CFLAGS/-fno-plt/}"
export CXXFLAGS="${CXXFLAGS/-fno-plt/}"
export LDFLAGS="${LDFLAGS/,-z,now/}"
# MingW Wine builds fail with relro
export LDFLAGS="${LDFLAGS/,-z,relro/}"
export CFLAGS="-O2 -march=native -pipe"
export CXXFLAGS="-O2 -march=native -pipe"
export LDFLAGS="-Wl,-O1,--sort-common,--as-needed"
export CFLAGS+=" -mno-avx2 -mfpmath=sse -fwrapv -fno-strict-aliasing -gdwarf-2 -gstrict-dwarf"
export CXXFLAGS+=" -mno-avx2 -mfpmath=sse -fwrapv -fno-strict-aliasing -gdwarf-2 -gstrict-dwarf -std=c++17"
export CROSSCFLAGS="$CFLAGS"
export CROSSCXXFLAGS="$CXXFLAGS"
export CROSSLDFLAGS="$LDFLAGS -Wl,--file-alignment,4096"
4. DXVK I run
https://aur.archlinux.org/packages/dxvk-async-git AUR package
In the dxvk.conf file I set the anisotropic filter level to 4 seems to still run smooth on my 6700 XT doing that and it looks WAY better and d3d9.floatEmulation = True
5. run the game with:
Code: Select all
WINEDEBUG=-all AMD_VULKAN_ICD=radv WINE_FULLSCREEN_FSR=1 WINE_FULLSCREEN_FSR_STRENGTH=3 WINE_LARGE_ADDRESS_AWARE=1 WINEFSYNC=0 WINEESYNC=1 WINEFSYNC_FUTEX2=0 DXVK_ASYNC=1 RADV_PERFTEST=nggc,sam,dccmsaa firejail --ignore=seccomp wine RoRLauncher.exe
take out "firejail --ignore=seccomp" if you arnen't using firejail, also i'm not 100% sure about the radv_perftest stuff, sometimes it seems to just ignore what you set there anyway
and that's it, pretty smooth result these days doing that
6. oh there's the radeon-profile app to where you can change profiles and try the "3D_FULL_SCREEN" one
https://aur.archlinux.org/packages/radeon-profile-git you might have to run it as root though or with sudo etc