ValveSoftware / Proton

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

Rage (9200) #166

Open LeJimster opened 6 years ago

LeJimster commented 6 years ago

It appears all the major bugs for this game have now been fixed. I plan to play through the game before I recommend whitelisting it.

Old bugs: Rage 32-bit suffers from Virtual Texture bug. Rage 64-bit renders correctly, although needs workaround to enable audio Audio fixed as of Proton 3.16-5 Mesa bug reports: Hang/Freeze in menus Fixed in latest mesa-git MegaTexture corruption *Fixed in latest mesa-git as of 24/6/22

Steam log My System Specs

32/64 video comparison showing the Virtual Texture (aka MegaTexture) problem. Rage 32 mesa megatexture corruption

Performance tweaks From my own experimenting I found these Launch Options produce the smoothest overall framerate on my system (RX Vega 56/Ryzen 1700) +r_swapInterval 1 +jobs_numThreads 2 +vt_maxPPF 64 +g_fov 90

It seems like higher cpu thread usage than 2 offers little benefit while causing the frame rate to dip and stutter in certain areas. I also chose to set the fov to 90 as 80 feels too low gaming at 1440p.

tr37ion commented 6 years ago

Arch Linux Kernel 4.18.3 Proton 3.7 Nvidia GTX 1070 - nvidia-beta 396.54 KDE Plasma 5.13.4 KDE Framework 5.49.0 Qt 5.11.1 § python --version = 3.7.0

Starting Rage (32Bit) the first time it took 2-3min until the game did start (Megatextures loading?) I set all GFX settings to MAX and did try to start the campaign. The game crashed.

I started the game again (32Bit) and now everything seems to work perfectly(!). Playing the campaign for some minutes was fine.

Candidate for [Whitelist] ?

vpelletier commented 6 years ago

Played from start to just before "mutant bash tv" mission, including pyros cave & refinery. The only issue I had was sound becomming distorted (a lot of cracks and pops - maybe a sound buffer being written to while it is being read by hardware ?). Onset may take time, as sound is initially fine. Only tested the default launch option (so... 32bits I guess ? the other option being "64-bits with mods", not sure whether the difference is "64 bits", "mods", or both).

Distribution: Debian sid Kernel: 4.17.17 (package 4.17.0-3-amd64) Proton: 3.7-4 CPU: i7-6700 GPU: GTX 1060@6GB, driver 396.51-1 (from "experimental" package repository) pulseaudio 12.0-1, sink alsa_output.pci-0000_01_00.1.hdmi-stereo (HDMI0 on nvidia card)

HughPH commented 6 years ago

I'm getting a hang when trying to load Hagar Caves, which comes after the first mission that requires loading a different area (so it's not just an area loading issue)

Update: Also hangs on loading the Wasted Garage

Update: Installed Mesa 18.2 and LLVM 7 and this issue has gone away

Update: Removed Mesa 18.2 (because I have an NVidia card), purged & reinstalled LLVM 7 and this issue came back. Reinstalled Mesa 18.2 and it didn't go away again.

whizse commented 6 years ago

Hangs in the menu every time for me. No crash no errors, if I'm fast enough I can load a game. In-game everything including the menu is fine. Esync on or off makes no difference.

@LeJimster I filed a bug about the texture artifacts, it seems to be radeonsi specific. There's a suggested workaround there too. Check if it works for you: https://bugs.freedesktop.org/show_bug.cgi?id=107694

HughPH commented 6 years ago

After the most recent update RAGE was starting with a black screen. Deleting its compatdata folder meant it was reinitialised with a clean wineprefix, but now it complains about being out of memory and ultimately loses a significant proportion of its textures (making it fairly difficult to play...)

This does mean there may be issues with the upgrade from one Proton version to the next.

HughPH commented 6 years ago

Still unable to get into The Wasted Garage but this time I was able to enter Hagar Caves - although I may have done so earlier, so this could be somehow related to a mission event making a global change that affects the game.

LeJimster commented 6 years ago

UPDATE: I've found a fix for missing sound in the 64-bit version. Installing xactto the Rage prefix did the trick. I used this command: WINEPREFIX=/your path to/Steam/SteamLibrary/steamapps/compatdata/9200/pfx winetricks xact Played the 64-bit version for 2 or 3 hours tonight, no issues.

tr37ion commented 6 years ago

@LeJimster I can confirm installing xact fixes 64-Bit version audio.

While it seems that xact in general has issues with DTS Patch for Pulseaudio. Very choppy sound with my system.

LeJimster commented 6 years ago

@tr37ion seems like the broken audio is a much wider spread issue. #54

For me the sound isn't choppy but it does appear like some of the sounds get cut or stop playing for a second here or there. I notice it mostly on engine sounds. Maybe that effect is exaggerated on your setup.

There is mention or Xaudio2 being broken on 64bit prefixes, I'm unfamiliar with these projects so I can't say what the best fix is.

LeJimster commented 6 years ago

@HughPH I have been playing the 64-bit fine but then it hanged when loading The Wasted Garage. These issues were apparently fixed in the proprietary drivers long ago, but it seems the game is broken in mesa. I found a strange workaround to get the level to load however. Switch to windowed mode before entering The Wasted Garage and it loads fine.

HughPH commented 6 years ago

Thanks @LeJimster - I don't actually have Mesa, though (mine is an Nvidia card and I'm using the latest drivers) and I was playing the 32-bit version... But I will try it and see what happens.

whizse commented 6 years ago

@LeJimster are you sure it's Mesa issues? If you use native xaudio on 64bit you probably run into the same pointer problems with the xaudio dlls as mentioned in https://bugs.winehq.org/show_bug.cgi?id=38668

lucifertdark commented 6 years ago

using Winetricks/protontricks to set override for xaudio2_7 native, builtin is enough to get the sound back in 64bit. No crashes for me so far.

ps Installing xact is what's causing the crashes for most people, DON'T DO IT! ;)

update: looks like I spoke too soon, just after posting ^ I started up the 64bit game again & it crashed in under 5 minutes. The 32bit version is working just fine though.

LeJimster commented 6 years ago

@lucifertdark strange. I haven't experienced any crashing on the 64bit version. Although I only quickly tested the 32bit with the latest mesa-git.

What is your system specs? Hopefully its not another regression in mesa. I will try to test later tonight.

lucifertdark commented 6 years ago

@lucifertdark strange. I haven't experienced any crashing on the 64bit version. Although I only quickly tested the 32bit with the latest mesa-git.

What is your system specs? Hopefully its not another regression in mesa. I will try to test later tonight.

I should have added it earlier.. I'm an Nvidia user

https://gist.github.com/lucifertdark/584c14275612e8e3c4a8070d428d8a02

LeJimster commented 6 years ago

I've just played 15 mins on the 64bit, no crashes on my RX Vega. So maybe you broke your prefix, or there is a driver issue. Would be nice to see if another nvidia user could test and compare.

ziabice commented 6 years ago

Game crashes on start complaining about a failed shader compilation: Failed to compile render prog binkyuv from binkyuv.

Using Proton 3.7-6.

I'm using Mesa 18.2.1 with LLVM 6.0.1.

The same problem happens if I use 32-bit or 64-bit version of RAGE.

My Specs

steam-9200.log

lucifertdark commented 6 years ago

Game crashes on start complaining about a failed shader compilation: Failed to compile render prog binkyuv from binkyuv.

Using Proton 3.7-6.

I'm using Mesa 18.2.1 with LLVM 6.0.1.

The same problem happens if I use 32-bit or 64-bit version of RAGE.

My Specs

steam-9200.log

You need LLVM 7 or higher.

LeJimster commented 6 years ago

@ziabice you need mesa-git for Rage to work on mesa right now. (Should be fine from 18.3 release). Also updating LLVM is a good idea as it fixes crashing in other games.

xDShot commented 6 years ago

The game doesn't recognize my game controller, even when I enable it in game settings and configure it in Steam Big Picture for the game.

ziabice commented 6 years ago

@lucifertdark @LeJimster because Wolfenstein TNO works well with my current setup, I believed Rage had to work too, my bad! :/

flibitijibibo commented 5 years ago

@kisak-valve Requesting an XAudio2 label for this game...

kwahoo2 commented 5 years ago

Rage 32-bit suffers from Virtual Texture bug. Rage 64-bit renders correctly, although needs workaround to enable audio (see below)

Mesa bug reports: Hang/Freeze in menus *Fixed in latest mesa-git MegaTexture corruption

Steam log My System Specs

32/64 video comparison showing the Virtual Texture (aka MegaTexture) problem. Rage 32 mesa megatexture corruption

I can confirm both issues. The megatexture bug is a regression - with initial release of SteamPlay Rage ran fine. My specs: https://gist.github.com/kwahoo2/41bf5ea9fe74de52269c6a349d3639cb

oblitum commented 5 years ago

Can this game run under Intel HD Graphics in Wine? I'm on a 7700K CPU alone, the game crashes on startup:

wine: Unhandled page fault on read access to 0x00000000 at address (nil) (thread 002a), starting debugger...

But I think this is relevant, since it tries to use cuda related stuff:

4307.491:0008:0009:trace:module:load_dll looking for L"cudart32_40_17.dll" in L"E:\\Steam\\steamapps\\common\\RAGE;C:\\Program Files (x86)\\Steam;C:\\windows\\system32;C:\\windows\\system;C:\\windows;.;C:\\windows\\system32;C:\\windows;C:\\windows\\system32\\wbem"
4307.491:0008:0009:trace:module:get_load_order looking for L"E:\\Steam\\steamapps\\common\\RAGE\\cudart32_40_17.dll"
4307.491:0008:0009:trace:module:get_load_order got hardcoded default for L"E:\\Steam\\steamapps\\common\\RAGE\\cudart32_40_17.dll"
4307.491:0008:0009:trace:module:load_builtin_dll Trying built-in L"E:\\Steam\\steamapps\\common\\RAGE\\cudart32_40_17.dll"
4307.491:0008:0009:warn:module:load_builtin_dll failed to load .so lib for builtin L"E:\\Steam\\steamapps\\common\\RAGE\\cudart32_40_17.dll": /mnt/seagate/Steam/steamapps/compatdata/9200/pfx/dosdevices/e:/Steam/steamapps/common/RAGE/cudart32_40_17.dll: invalid ELF header
4307.491:0008:0009:trace:module:load_builtin_dll Trying built-in L"cudart32_40_17.dll"
4307.491:0008:0009:warn:module:load_builtin_dll cannot open .so lib for builtin L"cudart32_40_17.dll": /mnt/seagate/Steam/steamapps/common/Proton 3.16/dist/lib/wine/cudart32_40_17.dll.so: cannot open shared object file: No such file or directory
4307.491:0008:0009:trace:module:load_native_dll Trying native dll L"E:\\Steam\\steamapps\\common\\RAGE\\cudart32_40_17.dll"
4307.492:0008:0009:trace:module:map_image mapped PE file at 0x330000-0x395000
4307.492:0008:0009:trace:module:map_image mapping section .text at 0x331000 off 400 size 41000 virt 40e4e flags 60000020
4307.492:0008:0009:trace:module:map_image mapping section .rdata at 0x372000 off 41400 size 12e00 virt 12cb2 flags 40000040
4307.492:0008:0009:trace:module:map_image clearing 0x384e00 - 0x385000
4307.492:0008:0009:trace:module:map_image mapping section .data at 0x385000 off 54200 size 1200 virt 237c flags c0000040
4307.492:0008:0009:trace:module:map_image clearing 0x386200 - 0x387000
4307.492:0008:0009:trace:module:map_image mapping section .rsrc at 0x388000 off 55400 size 6a00 virt 6838 flags 40000040
4307.492:0008:0009:trace:module:map_image clearing 0x38ea00 - 0x38f000
4307.492:0008:0009:trace:module:map_image mapping section .reloc at 0x38f000 off 5be00 size 6000 virt 5fc8 flags 42000040
4307.492:0008:0009:trace:module:perform_relocations relocating from 0x10000000-0x10065000 to 0x330000-0x395000
4307.492:0008:0009:warn:module:alloc_module disabling no-exec because of L"cudart32_40_17.dll"
4307.492:0008:0009:trace:module:set_security_cookie initializing security cookie 0x3851c0

There's just a cudart32_40_17.dll in the RAGE directory.

LeJimster commented 5 years ago

It shouldnt be cuda causing the crash as usually the game detects and disables GPU transcoding for non nvidia cards. I haven't tested it on Intel but if you use mesa, you might need latest mesa-git.

LeJimster commented 5 years ago

I can confirm both issues. The megatexture bug is a regression - with initial release of SteamPlay Rage ran fine. My specs: https://gist.github.com/kwahoo2/41bf5ea9fe74de52269c6a349d3639cb

Did you change your GPU since initial release of SteamPlay? Because the bug has always existed for on AMD with mesa from my testing (and this is going back years). Or was there something you changed with your setup between the intial release and now? Drivers? Kernel? Distro? Were you using "radeon" or "amdgpu". I wonder, because if you are correct.. You might hold the key to finding a fix.

Also, I experienced this bug from the very first release of proton... It was one of the first, if not the first game I tried.

oblitum commented 5 years ago

@LeJimster I'm on mesa 18.2.4. Do you know what fix/commit mesa-git could have for this? Just curious because I can't use it on my main system.

LeJimster commented 5 years ago

@oblitum I'm not sure why its not working with 18.2 series. I haven't tried them personally but have heard people say it doesn't work a few times now.

I believe the main change was this: https://patchwork.freedesktop.org/patch/244742/

And I read an article saying it had been added to 18.2.3..

Also a thought just occured to me, are you running steam-native or steam runtime? Ive found in the past some games need steam runtime to launch, so I always use it now.

Just one more thing. The guy who created a bug report for the mega texture bug in my first post. Tested against a Intel skylake GPU. So I presume it is possible to play it with Intel.

oblitum commented 5 years ago

@LeJimster Yes I use steam-native because I had the reverse experience in the past, plain steam caused me issues on ArchLinux. I tried plain steam for this game but the effect was the same.

LeJimster commented 5 years ago

@oblitum I do have access to an Intel system, so might be able to do some testing for you, but not until Sunday at the earliest.

oblitum commented 5 years ago

@LeJimster oh, that would be nice, no rush. Just like to comment that the issue I've reported above doesn't seem related to shader compilation, which the freedesktop patch, and the previous discussion, seems to point to.

oblitum commented 5 years ago

Logs

steam-9200.log

The x64 seems to go a bit further, I get a message box stating there was a pure virtual function call and the game process ends, no game window is ever run. I can't send the log for this execution because it's 512MB.

kwahoo2 commented 5 years ago

I can confirm both issues. The megatexture bug is a regression - with initial release of SteamPlay Rage ran fine. My specs: https://gist.github.com/kwahoo2/41bf5ea9fe74de52269c6a349d3639cb

Did you change your GPU since initial release of SteamPlay? Because the bug has always existed for on AMD with mesa from my testing (and this is going back years). Or was there something you changed with your setup between the intial release and now? Drivers? Kernel? Distro? Were you using "radeon" or "amdgpu". I wonder, because if you are correct.. You might hold the key to finding a fix.

Same GPU. The bug happened after one of Mesa or Steam updates. That was a working configuration IIRC https://gist.github.com/kwahoo2/e3c89a9b3798764991df3fc65bda4c2c

ziabice commented 5 years ago

With latest Proton 3.16-5 this game works perfectly. Just tested the 64-bit version and audio finally works like a charm. I haven't played too much, but to me, this game can be whitelisted. No workarounds of any sorts are needed, it installed and worked out of the box.

My specs: https://gist.github.com/ziabice/8c19008e58f82b16a62f7ab65ba235d4#file-sysinfo-txt

oblitum commented 5 years ago

Still same error for me on 3.16-5.

LeJimster commented 5 years ago

As ziabice mentioned audio is now working on 64-bit out of the box with Proton 3.16-5 beta, presumably due to the great work Ethan Lee has been doing with FAudio. For AMD users it's very playable with the 64-bit, but would be nice to have the 32-bit rendering correctly.

@oblitum I forgot to update you, I tested the game on an Intel system and was getting the same errors as yourself. There is a new Intel Iris Gallium3D driver thats experimental right now, might be worth a test.

oblitum commented 5 years ago

@LeJimster OK thanks, no problem.

rado84-github commented 5 years ago

Proton 4.2-2, changing brightness level in game has no effect and in dark areas it's impossible to find the exit. Everything else works great.

LeJimster commented 5 years ago

Can confirm the brightness change doesn't work on 32-bit, but does on 64-bit. I checked on windows and brightness control works on both versions fine. My setup/system is in the original post (AMD Vega 56/Ryzen 7), I checked this on 4.2-2, 3.16-8, 3.7-8.

Would be nice to know your system @IvoAndonov as it might be driver specific and not a proton bug.

rado84-github commented 5 years ago

Can confirm the brightness change doesn't work on 32-bit, but does on 64-bit. I checked on windows and brightness control works on both versions fine. My setup/system is in the original post (AMD Vega 56/Ryzen 7), I checked this on 4.2-2, 3.16-8, 3.7-8.

Would be nice to know your system @IvoAndonov as it might be driver specific and not a proton bug.

My system is 64-bit and it doesn't work.

Mint 18.3 Cinnamon x64 with kernel 4.13.0-45, Proton 4.2-2, driver version 418.56 and here's a copy-paste of my hardware from a forum signature: AsRock B85M Pro4, Core i3-4170, Palit GTX 1050 Ti 4 GB, Corsair 32 GB DDR3 1600 MHz, Corsair CX750, Corsair Force LE 120 GB, Western Digital 1.5 TB

LeJimster commented 5 years ago

@IvoAndonov I'm talking about the game itself, there are 2 executables for Rage.

64-bit_Rage

rado84-github commented 5 years ago

I tried the 64-bit too. Brightness does work there but that version says it doesn't support 1920x1080 fullscreen and it remains in a window part of which is behind the panel. Also the cursor is limited and I can't turn the charater in 180 degrees, let alone 360.

dreamer commented 5 years ago

Regarding brightness - can you test this workaround: https://github.com/ValveSoftware/Proton/issues/1550#issuecomment-487287891 ?

phrogg commented 5 years ago

I'm still having the same issue. How did you guys fixed this?

I have two RX480. And Mesa version 19.0.1 padoka.

phrogg commented 5 years ago

I upgraded to MESA 19.2.0 devel still the same issue.

dreamer commented 5 years ago

@LuigiTheHunter what issue?

LeJimster commented 5 years ago

Regarding brightness - can you test this workaround: #1550 (comment) ?

That registry entry seems to give some control over brightness, but compared to the 64-bit version it doesn't get quite as light.

I upgraded to MESA 19.2.0 devel still the same issue.

Rage works fine with the 64-bit version of the game on mesa. There are launch options that might help with performance in my original post. If you are experiencing some other issue, please give details.

phrogg commented 5 years ago

@LeJimster I still have the same issues, from the first thread. I will try to use the tweaking options from there today. Also I will send a screenshot from my issue.

I still have these issues: 20190522091102_1 20190522091109_1 20190522091116_1

kopr12 commented 5 years ago

I have texture problems both in 32bit and 64bit They are far worse than in some pictures posted here, you can barely recognize anything. mesa 19.1.1 amdgpu driver Proton 4.2-9

20190630-115615

phrogg commented 5 years ago

@kajzersoze I have the same problem still.