Closed oscarcp closed 4 years ago
Actually, Wine is compiled with Proton as a Git Submodule. What you'd need to do is clone Proton, init the submodules and change the wine
submodule to point at the repo and branch of the pull request, then compile Proton (which compiles Wine along the way). Also, you need to have Vulkan development files installed.
Tried with Proton-5.4-GE-1, i get attached screen, and then crash after clicking play.
So I got this too. The question is, why does the launcher think you have a driver from late 2016 rather than 440+, which is 2020. I wonder if there's a driver string in the launcher that is getting mismatched somehow?
Did someone managed to compile Proton with this PR applied? It applies correctly, but it doesn't compiles. Despite that i have the latest (1.2.135) Vulkan-Loader and Vulkan-Headers installed, i get multiple compilation errors:
../../../wine/dlls/winevulkan/vulkan.c:2724:11: error: unknown type name ‘VkPhysicalDeviceSurfaceInfo2KHR’
2724 | const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../wine/dlls/winevulkan/vulkan.c:2725:5: error: unknown type name ‘VkSurfaceCapabilities2KHR’; did you mean ‘VkSurfaceCapabilitiesKHR’?
2725 | VkSurfaceCapabilities2KHR* pSurfaceCapabilities)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| VkSurfaceCapabilitiesKHR
../../../wine/dlls/winevulkan/vulkan.c:2752:11: error: unknown type name ‘VkPhysicalDeviceSurfaceInfo2KHR’
2752 | const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
This is just fragment, actually there are more errors.
By the way, TkG repo contains the patch for VK_KHR_get_surface_capabilities2 extension for regular Wine (and for Staging). Unfortunately, this patch doesn't add VK_EXT_full_screen_exclusive, which is also required for Doom Eternal.
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.
I got the Doom Eternal working by compiling Wine-Staging with the patch from TkG repo and replacing strings with VK extensions in the game executable (yes, this dumb as f**k, but at least this allow the game to launch). Also the latest (1.2.135) Vulkan-Loader is required.
For example, i replaced vkAcquireFullScreenExclusiveModeEXT with vkCreateDescriptorUpdateTemplateKHR, i also replaced VK_EXT_full_screen_exclusive with VK_EXT_sampler_filter_minmax. I used sed for this purpose.
sed -i 's/vkAcquireFullScreenExclusiveModeEXT/vkCreateDescriptorUpdateTemplateKHR/g' DOOMEternalx64vk.exe
sed -i 's/VK_EXT_full_screen_exclusive/VK_EXT_sampler_filter_minmax/g' DOOMEternalx64vk.exe
Here is another variant that works better:
sed -i 's/vkAcquireFullScreenExclusiveModeEXT/vkGetImageSparseMemoryRequirements2/g' DOOMEternalx64vk.exe
sed -i 's/VK_EXT_full_screen_exclusive/VK_EXT_shader_stencil_export/g' DOOMEternalx64vk.exe
Replaced strings should have the same length as the original strings (it's important, otherwise the executable will not launch at all).
The game often hangs or crashes before entering the main menu, multiple attemps may be required.
I was able to get into main menu, but only once, on the next run the game hanged again:
After multiple attempts i was able to ge into main menu again and start the campaign:
Here is the video of gameplay (sound works, i just didn't record it). Don't look at the performance, i'm pretty sure it's bad because of this dirty way to run the game.
I've only tried DRM-Free executable, so can't say if the Denuvo version can be launched this way.
I will continue to experiment with strings, maybe i will get the game completely working.
p.s. Sorry for grammar mistakes, English is not my native language (but i'm improving it constantly).
@Kron4ek what OS are you using? I'm looking at the vulkan-cd-loader availability on Manjaro, and only see up to 1.2.132-1. Am curious to know how you got your hands on 1.2.135.
@makusu2 Resident Evil 2 worked the whole time Denuvo was still a part of the game, they didn't remove Denuvo from RE2 until very, very recently. Denuvo's presence doesn't mean all that much, it will most likely still work.
@MacroHard-sys, all you did was install a new version of Wine to your SYSTEM with the PR. Proton uses Wine built-in, not system Wine. You don't even need Wine installed on your system to use Proton, specifically because Proton doesn't use your system's Wine at all.
You would need to compile Proton with the PR, and use that version of Proton to try and run the game.
@Kron4ek it seems like we should be able to get it working, then, it just may take a few days for Valve to accept the PR and figure out the last few kinks.
just tried patching the game executable (from steam) with @Kron4ek's commands, no dice. gives a small window with the id logo and then quits. i'm still working on building proton with the patches, will report if it works with that.
@pastapojken I'm using Arch Linux, i compiled the latest vulkan-icd-loader manually.
just tried patching the game executable (from steam) with @Kron4ek's commands, no dice. gives a small window with the id logo and then quits.
You have to recompile and install wine using TkG's patch with those string replacements and 1.2.135 of the vulkan-icd-loader and headers for it to work.
@Kron4ek gotcha.
So, do we need vulkan-icd-loader 1.2.135 installed or patched Proton will suffice?
@mozo78 you'll need the latest loader/headers installed, presumably for added features that the game makes use of
So, do we need vulkan-icd-loader 1.2.135 installed or parched Proton will suffice?
it seems like if you're using wine outside of proton then you need vulkan-icd-loader, but proton will use the steam runtime otherwise which should contain the correct version if you've opted into the beta version of steam
Thank you. It gets harder and harder...
@Kron4ek have you tried running the game with +com_skipSignInManager 1
in Steam launch options?
According to DX4400 on the steam forums, you can add: +com_skipKeyPressOnLoadScreens 1
which disables the press spacebar to continue and just loads the game into the level. @Kron4ek if you're getting hangs during initial loads, maybe this might help.
Additional tweaks here: DOOT ETERNAL LAUNCH TWEAKS
Better use :
+com_skipIntroVideo 1 +com_skipKeyPressOnLoadScreens 1 +com_skipSignInManager 1
So, do we need vulkan-icd-loader 1.2.135 installed or patched Proton will suffice?
need to use vulkan-icd-loader & patch
@liberodark the steam-runtime
beta Steam build contains the required vulkan versions, it should only be steam-native
which disables the Steam runtime that requires those vulkan versions installed on the system, see what @kisak-valve said above.
Im speak for launch without steam-runtime im not use this.
@liberodark steam-runtime
and Steam For Linux Runtime are two different things, the first one is just Steam with builtin libraries, and is the default manner for launching the game in distributions like Manjaro. If you just run steam
, it'll be running steam-runtime
. The second is a compatibility layer, like Proton before Proton came out. It's what you can use to try and launch some games in the properties, like where you choose Proton versions.
considering that the required version of the vulkan-icd-loader and headers isn't even available for most Linux users without heavy manual intervention, Steam should definitely be run with the steam-runtime
and not steam-native
version, for right now.
@Kron4ek have you tried running the game with +com_skipSignInManager 1 in Steam launch options?
Sorry, I didn't buy the game yet, so for now i'm only experimenting with the DRM-Free executable. Though, I tried this argument on the DRM-Free executable, for some reason it doesn't work for me, the game still asks for login into Bethesda account. However, disabling internet connection works.
After multiple attemps i was able to get into main menu and start the campaign. Here is the video, i also edited my post above.
It's nice to explain it to me but I know the difference well I worked on the two I admit that the containerization is very interesting.
@Kron4ek good video :D
@Kron4ek so it looks like the game should work as soon as Valve fixes a couple things.
Maybe you could try explaining the EXACT process you used from beginning to end (after obtaining the game of course) to get it to work, so others can try and reproduce. Including whether you used the steam runtime or if not how you obtained and built the needed version of vulkan-icd-loader
.
@gardotd426 Yes, looks like the game should be completely playable after merging the 85 PR. Well, at least the DRM-Free should work, but i guess the Denuvo version will work too.
I've never had an issue with the few Denuvo games I've tried on Linux, Resident Evil 2 worked fine even before they removed it. So that's one reason for hope. We'll have to wait for word from Valve, I suppose. Or TKG or GE, if nothing else.
On Fri, Mar 20, 2020 at 3:39 PM Kron4ek notifications@github.com wrote:
@gardotd426 https://github.com/gardotd426 Yes, looks like the game should be completely playable after merging the 85 PR https://github.com/ValveSoftware/wine/pull/85/commits. Well, at least the DRM-Free should work, but i guess the Denuvo version will work too.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ValveSoftware/Proton/issues/3654#issuecomment-601878901, or unsubscribe https://github.com/notifications/unsubscribe-auth/AM5Y33ZXPWHPJSRJ4753NADRIPA7VANCNFSM4LP25FOQ .
no need aur
NVIDIA :
sudo pacman -S nvidia nvidia-utils lib32-nvidia-utils nvidia-settings vulkan-icd-loader lib32-vulkan-icd-loader
AMD :
sudo pacman -S lib32-mesa vulkan-radeon lib32-vulkan-radeon vulkan-icd-loader lib32-vulkan-icd-loader
INTEL :
sudo pacman -S lib32-mesa vulkan-intel lib32-vulkan-intel vulkan-icd-loader lib32-vulkan-icd-loader
@ReaperOfSouls1909 it's not in the AUR, it's in the official repos. You'll have to use something like svn to checkout the repo PKGBUILD, and manually edit it.
@liberodark that doesn't do them any good, the repo versions aren't new enough, they need .135, not .132. so just sudo pacman -S ...
won't help them at all.
can someone link me to vulkan-icd-loader aur
I havve the AUR PKGBUILDs for both loader and header in a comment earlier in this ticket if yyou need them, but as they said steam-runtime should load their internal 1.2.135 versions
ok
same problem, any quick way to run this?
you need last vulkan-icd-loader
pacman -S vulkan-icd-loader
?
For people with Radeon GPU: use vulkan driver from amdgpu-pro, it runs much better than amdvlk (also seem not to hang every 10 minutes). With it I have stable 120+ fps with 5700 XT in 1440p + high settings.
@Niedzwiedzw no, that doesn't give an up-to-date enough version.
You have to download the zip above
@werman how did you get it to run?
oh is not authorized to share wine tkg ? @ValveSoftware
Hello @liberodark, while it's okay to share Proton builds, it's not okay to share game executables, and the link you used is region locked so I couldn't look closer to evaluate beyond your description of the contents.
ok im make version without that
@gardotd426 At what step do you have issues?
Someone needs to clearly explain how to get it to run, this thread is an absolute mess right now. @werman:
It doesn't help anyone if there's not even a semblance of a step-by-step guide when all of these workarounds are needed at the moment.
@ReaperOfSouls1909 how do i do that? :O
@Niedzwiedzw https://wiki.archlinux.org/index.php/Makepkg
New link just pure wine tkg precomplied version : https://drive.google.com/open?id=1_pPRwztcq_Vp6IKGAXo-XIrnicizZqlk
patch your game exe :
sed -i 's/vkAcquireFullScreenExclusiveModeEXT/vkGetImageSparseMemoryRequirements2/g' DOOMEternalx64vk.exe
sed -i 's/VK_EXT_full_screen_exclusive/VK_EXT_shader_stencil_export/g' DOOMEternalx64vk.exe
It doesn't help anyone if there's not even a semblance of a step-by-step guide when all of these workarounds are needed at the moment.
@gardotd426 give it a bit my dude, this thread is hyper-active and it would be good to show some patience. we have a lot of people doing great work, give them a minute to catch their breath and get things in order.
have some error in your pkgfile @ReaperOfSouls1909 better share compiled version
@liberodark, taking a look at the wine build you shared, it contain a legally problematic workaround and and has been removed.
but no have share any files bad or illegal juste is tkg have better solution. Im go to make pure wine version @kisak-valve
Had to disable ACO for Vulkan 1.2.135 to be used.
Otherwise the game runs great after all the workarounds.
@kisak-valve have updated the link look is only wine tkg pre compiled with a patch for doom
Compatibility Report
System Information
I confirm:
steam-782330.log
Symptoms
The game starts, opens the system tray of wine, then closes abruptly.
Reproduction