ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.58k stars 1.07k forks source link

Doom Eternal (782330) - Initial month of feedback #3654

Closed oscarcp closed 4 years ago

oscarcp commented 4 years ago

Compatibility Report

System Information

I confirm:

steam-782330.log

Symptoms

The game starts, opens the system tray of wine, then closes abruptly.

Reproduction

PraetorianSC4 commented 4 years ago

Had to disable ACO for Vulkan 1.2.135 to be used.

Otherwise the game runs great after all the workarounds.

So that we understand correctly, you installed 1.2.135. Is there anything else you did besides disabling ACO (and how did you do that for that matter) to get the game to run? Did it involve leveraging the wine modification for DOOT Eternal?

Kron4ek commented 4 years ago

Edit. Proton 5.0-5 has been released and the game works on it, editing the game's exe with sed is not required anymore. However, you still need to install the latest Vulkan-Loader (1.2.135) and probably still need to replace the game's exe with the DRM-Free version.

Ok, here is the pretty short instruction about how to run the game with the DRM-Free exe:

  1. Install latest videodrivers for your GPU (probably not required, but highly recommended)
  2. Install the latest (1.2.135) Vulkan-Loader and Vulkan-Headers. Compile them manually or find some repo.
  3. Compile the latest Wine-Staging with this patch applied
  4. Replace the game executable with the DRM-Free version (can't post the link here, but it can be finded pretty easily)
  5. Perform this commands inside the game directory:
    sed -i 's/vkAcquireFullScreenExclusiveModeEXT/vkGetImageSparseMemoryRequirements2/g' DOOMEternalx64vk.exe
    sed -i 's/VK_EXT_full_screen_exclusive/VK_EXT_shader_stencil_export/g' DOOMEternalx64vk.exe
  1. Run the game exe (DOOMEternalx64vk.exe) using the Wine-Staging that you compiled in step 3

As i said before, the game often crashes or hangs before entering the main menu, so multiple game restarts may be required.

gardotd426 commented 4 years ago

@PraetorianSC4 unless you have RADV_PERFTEST=aco in either your /etc/environment, ~/.profile, ~/.zprofile, ~/.zshrc, ~/.bashrc, etc, or in the launch options (so basically unless you have manually enabled ACO, it's not enabled by default. If you've got it enabled elsewhere, you can use RADV_PERFTEST=llvm.

@Voxed, are you running the Steam version or DRM-free version? If not the Steam version, has anyone actually gotten the Steam version to work yet?

liberodark commented 4 years ago

The pre compiled version of wine is here : https://drive.google.com/file/d/1_pPRwztcq_Vp6IKGAXo-XIrnicizZqlk/view?usp=sharing only wine

Voxed commented 4 years ago

@PraetorianSC4 unless you have RADV_PERFTEST=aco in either your /etc/environment, ~/.profile, ~/.zprofile, ~/.zshrc,~/.bashrc, etc, or in the launch options (so basically unless you have manually enabled ACO, it's not enabled by default. If you've got it enabled elsewhere, you can useRADV_PERFTEST=llvm`.

@Voxed, are you running the Steam version or DRM-free version? If not the Steam version, has anyone actually gotten the Steam version to work yet?

The DRM free version, you need the tkg patch to get it to work.

liberodark commented 4 years ago

precompiled version for arch : https://drive.google.com/open?id=1Gvvq5rxvSZmeLOaZZeGcm95FBT9mtOrq

gardotd426 commented 4 years ago

So then DRM is an issue for this game, if it's impossible to run it without the DRM-free version. Or has anyone with the Steam version actually tried any of this?

liberodark commented 4 years ago

no just need to wait for drm when the pr is merge is ok

PraetorianSC4 commented 4 years ago

@gardotd426: unknown at this time. I don't think anyone has gotten far enough yet with the drm version of the game.

ashkitten commented 4 years ago

i'm still working on getting the incredibly janky proton build process to work so i can build with patches from that pr

liberodark commented 4 years ago

but bethesda launcher is other probable issue Probably just rename files ?

gardotd426 commented 4 years ago

TKG's proton build uses the same patches as wine-tkg, so all you'd have to do is build proton-tkg with the patched wine-tkg.

jjbarr commented 4 years ago

@gardotd426 The issue is that at present the workaround involves hotpatching the executable because of a deficiency in Wine.

There's no reason we know of the DRM build won't work once that gets fixed.

kisak-valve commented 4 years ago

Hello @gardotd426, Denuvo is anti-tamper software, so it's not surprising that sed'ing the executable to lie about vulkan extensions would make it upset.

werman commented 4 years ago

I'm using drm-free version. amdvlk hangs for me every 10 minutes so I use amdgpu-pro

1) I've compiled vulkan-icd-loader 1.2.135 with https://gist.github.com/werman/af271c89410b942e6d50963ccf0f34f1 PKGBUILD (you can find compiled version above in thread, I think) 2) Radeon* Install amdgpu-pro vulkan, PKGBUILD https://gist.github.com/werman/696063d328fb9a49ed5ca609df6dff50, do makepkg and then do sudo pacman -U vulkan-amdgpu-pro-19.50_967956-1-x86_64.pkg.tar amdgpu-pro-core-meta-19.50_967956-1-any.pkg.tar amdgpu-core-meta-19.50_967956-1-any.pkg.tar 3) You need Proton 5.0 + two patch wine libs, https://cdn.discordapp.com/attachments/542099730751160338/690574741819621386/frog.7z (taken from dxvk discord, and compiled by doitsujin) - place both .so into Proton 5.0/dist/lib64/wine/

or use patched wine from above

4) For amdgpu-pro add VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/amd_pro_icd64.json 5) Add +com_skipIntroVideo 1 +com_skipKeyPressOnLoadScreens 1 to launch options it can look like VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/amd_pro_icd64.json %command% +com_skipIntroVideo 1 +com_skipKeyPressOnLoadScreens 1 6) There may be issues with alt-tab (or whatever I have in i3) so you may want to enable virtual desktop in wine prefix 7) Enjoy

It's a bit hectic and people already posted guides above, but maybe this will help someone. At least Ithis worked for me.

PraetorianSC4 commented 4 years ago

Now we just need to take @werman's list and convert for nvidia card holders, apply it to the steam version of the game, and hope for the best.

Seltyk commented 4 years ago

@werman my distro doesn't have a build for the proprietariat's drivers. I haven't tested anything yet, but if amdvlk is so bad, then maybe the Mesa Radeon Vulkan driver would be better suited? Really I'm just throwing things at the wall

@ashkitten best of luck with the Proton build; I'm really hoping to see the game run out of the Steam client on day-1 :crossed_fingers:

werman commented 4 years ago

@wundrweapon I wasn't able to launch game with Mesa, but I didn't really tried

gardotd426 commented 4 years ago

@jjbarr @kisak-valve I was under the impression that the patches for wine being mentioned (that are required to get the game to run) ARE what's in the PR, and what we're waiting on to be implemented in Wine. So shouldn't the Steam version just work with a patched Proton?

liberodark commented 4 years ago

But need vulkan-headers 1.2.135 too @ReaperOfSouls1909 you have this in pre compiled ?

monban commented 4 years ago

@PraetorianSC4 if I'm understanding correctly, @werman's instructions still involve using an executable of questionable legality, so if that's truly required then I doubt we'll see this fix making its way into the Steam Play defaults any time soon.

kisak-valve commented 4 years ago

Hello @gardotd426, if you dig back into the discussion, there was talk of another variant similar to PR 85 which applies cleanly to wine git master, but does not cover everything in that pull request.

Voxed commented 4 years ago

@PraetorianSC4 if I'm understanding correctly, @werman's instructions still involve using an executable of questionable legality, so if that's truly required then I doubt we'll see this fix making its way into the Steam Play defaults any time soon.

AFAIK the DRM-free version is only being used as to circumvent running through steam. The DRM version might still work with proton-tkg.

liberodark commented 4 years ago

OK HAVE FOUND BETTER SOLUTION :D

image

mahmutpek commented 4 years ago

Someone make a noob-proof guide/video? Some users (like me) even forget how coding works.. Also can this work on arch or gentoo linux? Thx!

Seltyk commented 4 years ago

@mahmutpek seems like all the testing in this thread so far has been done on Arch. Personally I'm just hoping that it all works smoothly on Void (now that I've updated Vulkan on their repos)

ashkitten commented 4 years ago

Someone make a noob-proof guide/video? Some users (like me) even forget how coding works.. Also can this work on arch or gentoo linux? Thx!

the solutions given so far are not "noob-proof" at all. you should wait for a better solution if you lack the understanding required to use the ones given so far.

Berinth commented 4 years ago

@mahmutpek

You'll have to wait a bit. I've been watching this thread since it was opened a whole ~20 hrs ago, and they are still figuring it out

gardotd426 commented 4 years ago

@kisak-valve, that makes much more sense, thank you for the clarification.

mahmutpek commented 4 years ago

@wundrweapon Yeah seems like I will try arch too but hope all of them will work. @ashkitten True, I'm in the wrong league. Thanks for all answers, also the new ones.

liberodark commented 4 years ago

im send you better wine release work not need to patch the exe :D https://drive.google.com/file/d/197kenSrONBQJvdo4Jd8YSTdOn4f5Bv5T/view?usp=sharing

MacroHard-sys commented 4 years ago

im send you better wine release work not need to patch the exe :D https://drive.google.com/file/d/197kenSrONBQJvdo4Jd8YSTdOn4f5Bv5T/view?usp=sharing

what would someone do with that on debian/ubuntu?

ashkitten commented 4 years ago

looks like https://github.com/ValveSoftware/Proton/blob/proton_5.0/vagrant-user-setup.sh#L7 failed because fetching http://repo.steampowered.com/steamrt/pool/main/libx/libxcb/libxcb-xinerama0-dev_1.11.1-1ubuntu1+steamos1+srt2_i386.deb timed out, unfortunately. it's a real pain to get this environment set up, because repo.steampowered.com is very slow.

edit: retried and it did not fail to fetch this time... let's see if the whole docker container will build now

Voxed commented 4 years ago

im send you better wine release work not need to patch the exe :D https://drive.google.com/file/d/197kenSrONBQJvdo4Jd8YSTdOn4f5Bv5T/view?usp=sharing

What patch did you use?

liberodark commented 4 years ago

is just build of wine precompiled. For me not problem to run that on ubuntu or debian if you have same lib version for icd

Voxed commented 4 years ago

Yes but what did you do to get it to compile with VK_EXT_full_screen_exclusive support?

CatalinPuscoci commented 4 years ago

im send you better wine release work not need to patch the exe :D https://drive.google.com/file/d/197kenSrONBQJvdo4Jd8YSTdOn4f5Bv5T/view?usp=sharing

Do I just cp -r / it?

liberodark commented 4 years ago

Yeah use this version make a backup of your proton version.

MacroHard-sys commented 4 years ago

Yeah use this version make a backup of your proton version.

how do we get steam to use it and where do we put it?

liberodark commented 4 years ago

For run quickly the game and for drm-free or steam version @Kron4ek :

+in_terminal 1 +com_skipIntroVideo 1 +com_skipKeyPressOnLoadScreens 1 +com_skipSignInManager 1
ashkitten commented 4 years ago

finally got the vagrant box working to be able to try and build proton... getting some nasty errors, i think the patch might not be working properly. will try again in a bit.

liberodark commented 4 years ago

Ok this is a mini tutorial

tar -xvf winev2.tar.gz

mv ~/.local/share/Steam/steamapps/common/Proton\ 5.0/dist ~/.local/share/Steam/steamapps/common/Proton\ 5.0/dist_back

mv wine ~/.local/share/Steam/steamapps/common/Proton\ 5.0/dist

run your game

Voxed commented 4 years ago

finally got the vagrant box working to be able to try and build proton... getting some nasty errors, i think the patch might not be working properly. will try again in a bit.

With proton-tkg?

Seltyk commented 4 years ago

@liberodark tried what you posted, ran the Denuvo-infected version from Steam. No dice. Is there something I'm forgetting? I replaced the Proton dist with your latest wine build and ran with the specified options

annmuor commented 4 years ago

So I getting after doing all the stuff, with latest nvidia drivers & vulkan from Arch repos: FATAL ERROR: Please update your driver: VK_KHR_get_surface_capabilities2 is required.

Any ideas?

Kron4ek commented 4 years ago

@annmuor vulkan-icd-loader from the Arch repos is not new enough, 1.2.135 version is required.

liberodark commented 4 years ago

yeah you need : 1.2.135

image

annmuor commented 4 years ago

@Kron4ek @liberodark yep I know but ...

pacman -Ql vulkan-icd-loader vulkan-icd-loader /usr/ vulkan-icd-loader /usr/lib/ vulkan-icd-loader /usr/lib/libvulkan.so vulkan-icd-loader /usr/lib/libvulkan.so.1 vulkan-icd-loader /usr/lib/libvulkan.so.1.2.135 vulkan-icd-loader /usr/lib/pkgconfig/ vulkan-icd-loader /usr/lib/pkgconfig/vulkan.pc vulkan-icd-loader /usr/share/ vulkan-icd-loader /usr/share/licenses/ vulkan-icd-loader /usr/share/licenses/vulkan-icd-loader/ vulkan-icd-loader /usr/share/licenses/vulkan-icd-loader/LICENSE.txt

misyltoad commented 4 years ago

You'll also need a version of Proton with my VK_KHR_get_surface_capabilities2 + VK_EXT_full_screen_exclusive patches.

CatalinPuscoci commented 4 years ago

You'll also need a version of Proton with my VK_KHR_get_surface_capabilities2 + VK_EXT_full_screen_exclusive patches.

seems like that is what's missing for me as well(FATAL ERROR: Please update your driver: VK_KHR_get_surface_capabilities2 is required - I see that in the logs), but I did get the prebuilt wine liberodark put earlier in the thread

PS: I did get the new vulkan-icd-loader and headers too, and I'm using a GTX 1060 if that's useful info