praydog / UEVR

Universal Unreal Engine VR Mod (4.8 - 5.4)
http://uevr.io
2.94k stars 151 forks source link

[BUG] Marvel's Midnight Suns crashes to desktop after 5 or more minutes of activity #102

Open SantiniGH opened 7 months ago

SantiniGH commented 7 months ago

Describe the bug

After injecting the latest release version of UEVR (Beta 1.02) into the Marvel's Midnight Suns process, the game will crash/quit to the desktop after 5 or more minutes of activity.

Crashes appear to consistently occur after that period of time elapses. Crashes can happen if you're standing idle in an area, engaged in combat, or watching a cutscene (real-time or pre-rendered).

This happens whether the game is set to use DirectX 12 or DirectX 11, with DLSS on or off.

Upload logs and any crash dumps

UEVR folder w/settings and logs attached.

DirectX 11 was used for this run. DLSS was turned off. Settings were set to high with TXAA. Motion blur and anti-aliasing were both turned off.

MidnightSuns-Win64-Shipping.zip

Unfortunately, no Unreal Engine-specific crash dumps seem to be produced in `%LOCALAPPDATA% or the game's save directory (where they would normally appear) when this type of crash occurs. The only crash dumps that can be found are in the "C:\Users\\AppData\Local\CrashDumps" directory.

https://www.mediafire.com/file/jeyzzb19owj4tq1/MidnightSuns-Win64-Shipping.exe.12848.dmp.zip/file

I've also attached the log from the game's save directory.

MidnightSuns-in-game-log.zip

Identify the UEVR version

Beta 1.02, commit 54990a2

To Reproduce

  1. Launch the game.
  2. Start a new game or load a saved game.
  3. After entering real-time gameplay, inject UEVR.
  4. Play the game or leave it idle.
  5. Wait for the crash to occur after a little more than 5 minutes (one occurrence took around 7 minutes)

Expected behavior

The game should not crash to desktop after 5 or more minutes of any activity.

PC Specs (please complete the following information):

Windows 10 (w/latest updates) NVIDIA RTX 2070 Super (drivers 527.37 and also 537.58) AMD Ryzen 3700X Oculus Rift S OpenXR not streaming; headset is wired Oculus Runtime

praydog commented 7 months ago

I wanna say this might be because of some intentional anti-tamper in the game. The crash dump looks like it crashed in obfuscated code (possibly a virtual machine or just obfuscation), but can't really say for certain yet.

SantiniGH commented 7 months ago

That actually might explain it. After looking this up, I was disappointed to learn that the game has Denuvo Anti-Tamper DRM.

https://steamdb.info/app/368260/depots/?branch=denuvo

To add to that, in the save directory's "MidnightSuns.log" file, it appears that the game is also phoning home to 2K.

I attempted a test with the current 1.03 build and ran the game completely offline. I was able to play a little longer than 5 minutes before it crashed.

MidnightSuns.log

MidnightSuns-Win64-Shipping.zip

Though the game can be completed, it has been plagued with crashes and unstable performance since its launch. Having Denuvo around certainly doesn't help. It's unfortunate as the game looks really great in VR.

Anyhow, thanks for your efforts in making VR possible with all of these games!

praydog commented 7 months ago

Denuvo doesn't usually cause these crashes though, it would be because of some other reason like some in-house anti-tamper being added alongside it. Either way, anti-tamper is still anti-tamper. I'd have to take a look at the game myself to verify