ValveSoftware / Proton

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

HITMAN 3 (1659040) #5536

Open AirstrikeIvanov opened 2 years ago

AirstrikeIvanov commented 2 years ago

Compatibility Report

System Information

I confirm:

Proton log attached here: steam-1659040.log

Symptoms

The game itself seems to work well in 2D, but when the user attempts to enable VR mode, it does not seem to work in the HMD display. The game also needs SteamVR running before it recognizes the device in my case (Rift CV1 with OpenHMD), but I am also using a relatively unsupported device and wasn't sure if this was a bug or a feature.

Reproduction

  1. Start SteamVR, and then start HITMAN 3.
  2. Enable VR mode.
  3. Watch as the display image in the application window works just fine in VR mode, but is not sent to the HMD.

(Note, This is my first time submitting a compatibility report here, I'm not sure if it's appropriate to submit one for JUST the VR mode of a game, please let me know if I'm not supposed to submit reports for things like this!)

Inveli commented 1 year ago

I think I finally solved my freezing issue. I tried a solution I found for random Crashing to Desktop, despite that not being exactly what happened, and I didn't have a single freeze in 2 game sessions of several hours each. I found a guide detailing solutions to frequent crashing with error 0x80000003, and one of them involved adding a new registry value, so I used Proton Tricks so I could access regedit on the prefix and added the value, and after that I haven't had crashes so far. Here is the value it said to add:

"Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers" Create a Key of type DWORD there named "TdrDelay", and give it the value "10" as it's Decimal value

According to the guide this increases the time the Driver has to respond, as the issue might be due to the driver randomly taking to long to respond and hitting a threshold.

Granted, I could be getting lucky with the last 2 gaming sessions, so there is a chance this didn't fix things. If the freezing comes back I'll update this, but it seems promising as I had been getting the freeze almost every hour for the past week while I tried to play, and haven't gotten it once with 2 3+ hour gaming sessions.

Ashe commented 1 year ago

I am having really poor performance despite having a 6900 :cry:

Full specs and log of the game can be found here

Issue

Rough specs

tshack commented 1 year ago

The deadlock issue mentioned by many people here that manifests itself as a "frozen screen with continuing audio" and the following error in steam-1659040.log as:

1477672.177:0140:01d0:err:sync:RtlpWaitForCriticalSection section 00000003BD9C7838 "?" wait timed out in thread 01d0, blocked by 01d4, retrying (60 sec)
1477672.177:0140:0248:err:sync:RtlpWaitForCriticalSection section 00000003BD9C7958 "?" wait timed out in thread 0248, blocked by 01d0, retrying (60 sec)

Appears to have been fixed in Proton Experimental (as of 01/06/2023) due to the inclusion of fixes present in vkd3d-proton release 2.8.

The vkd3d-proton 2.8 Changelog notes:

Fixes a spurious hang in Hitman III where game relies on asynchronous present in order to not lock up.

I have tested this a bit and it appears to resolve the issue. The upgrade to vkd3d-proton 2.8 is not present in Proton 7.0-6 (current Proton Next). Fix will probably be in Proton 7.0-7 (or whatever version comes after 7.0-6), provided it is not reverted. One can only guess. Currently in Proton Experimental.

Would be interested to hear if other people experiencing this issue can verify resolution by testing the current Proton Experimental.

Refs: https://github.com/ValveSoftware/Proton/wiki/Changelog https://github.com/HansKristian-Work/vkd3d-proton/releases/tag/v2.8 https://github.com/HansKristian-Work/vkd3d-proton/issues/1248

lucifertdark commented 1 year ago

I've been seeing this bug since I bought the game recently, the Dubai map being the most consistent offender for the crash, I just played that map for an hour without incident thanks to your tip.

Since I commented on this that it was working for me things took a turn, I don't have a current log at the moment but the game no longer runs at all with Experimental, it won't even start the launcher.

lucifertdark commented 1 year ago

System info https://gist.github.com/lucifertdark/584c14275612e8e3c4a8070d428d8a02 Proton log from Proton 7.05 steam-1659040-p705.log Proton log from Experimental steam-1659040.log

Any ideas on what I screwed up would be appreciated.

kisak-valve commented 1 year ago

Hello @lucifertdark, this is more of a guess than anything, but can you temporarily disable vkbasalt and see if that has an effect?

Something's making the Vulkan render paths unhealthy on your system. (https://gist.github.com/lucifertdark/584c14275612e8e3c4a8070d428d8a02#file-system-info-L415-L423 https://gist.github.com/lucifertdark/584c14275612e8e3c4a8070d428d8a02#file-system-info-L193-L201)

lucifertdark commented 1 year ago

Sorry I've taken so long to get back, real world issues, vkbasalt was broken, I was using the script to install it & failed to notice a compilation error that stopped it working even though it still installed. I've got that fixed now but the Vulkan render paths you pointed out are still pooched, I've purged & reinstalled the nvidia drivers as well in case it was them.

Gamemode was also in a poor state so I rebuilt that while I was feeling industrious. new logs to follow.

Razatop commented 1 year ago

Haven't read through the entire thread but this game is basically unplayable for me. Sometimes I can get in to watch intro cutscenes. Most of the time the game will freeze in a menu and then just crash out.

terzag commented 1 year ago

Just tried to play Hitman 3 after the recent update. Using Proton Experimental, still crashing.

I'm not sure this is the same issue or a new one, though, as I've tried to play in the new Freelancer mode and the game crashes as soon as I want to start a mission. Seems to be reproducible. I hear some plane take off audio when it crashes (but with image frozen in the gameplay part), so I assume it's playing a cutscene.

Also, as I've said in a previous message, with my current CPU I get a series of "amdgpu_cs_ioctl failed to initialize parser -125" errors, I'm not sure if that's a different crash that's specific to my hardware and if there's something I should try about it (updating the kernel? Mesa? I'm using Ubuntu, so I'm a bit reluctant on using 3rd-party repos for this kind of stuff).

Can somebody confirm if they can play the Freelancer mode or if it crashes when starting a mission too?

Mezentium commented 1 year ago

I've been able to play the Freelancer mode no crashes and decent frame rates. Not using any 3rd party repos or command line arguments when starting the application. Using Proton experimental (non-beta) I haven't had any crashes since September 2022. Framerates are surprisingly good at 50fps average (vs 30fps on Hitman 2). Note: Using Mesa 22.3

neofetch

                 'ooo'                    OS: Artix Linux x86_64 
                'ooxoo'                   Kernel: 6.1.6-artix1-1 
               'ooxxxoo'                  Uptime: 42 secs 
              'oookkxxoo'                 Packages: 993 (pacman) 
             'oiioxkkxxoo'                Shell: bash 5.1.16 
            ':;:iiiioxxxoo'               Resolution: 3840x1080 
               `'.;::ioxxoo'              DE: Plasma 5.26.5 
          '-.      `':;jiooo'             WM: KWin 
         'oooio-..     `'i:io'            WM Theme: plastik 
        'ooooxxxxoio:,.   `'-;'           Theme: Artix-dark [Plasma], Artix-dark [GTK2/3] 
       'ooooxxxxxkkxoooIi:-.  `'          Icons: breeze-dark [Plasma], breeze-dark [GTK2/3] 
      'ooooxxxxxkkkkxoiiiiiji'            Terminal: konsole 
     'ooooxxxxxkxxoiiii:'`     .i'        CPU: AMD Athlon X4 845 Quad (4) @ 3.500GHz 
    'ooooxxxxxoi:::'`       .;ioxo'       GPU: AMD ATI Radeon RX 5500/5500M / Pro 5500M 
   'ooooxooi::'`         .:iiixkxxo'      Memory: 970MiB / 15938MiB 

vulkaninfo --summary

Devices:
========
GPU0:
        apiVersion         = 1.3.230
        driverVersion      = 22.3.3
        vendorID           = 0x1002
        deviceID           = 0x7340
        deviceType         = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
        deviceName         = AMD Radeon RX 5500 XT (RADV NAVI14)
        driverID           = DRIVER_ID_MESA_RADV
        driverName         = radv
        driverInfo         = Mesa 22.3.3
        conformanceVersion = 1.2.7.1
        deviceUUID         = 00000000-0300-0000-0000-000000000000
        driverUUID         = 414d442d-4d45-5341-2d44-525600000000
terzag commented 1 year ago

My Mesa version is a bit older (22.2.1, there's 22.2.5 in the repos since a few hours, currently upgrading to test) but more than that, my kernel is quite older (5.19) and I'm wondering if it's recommended (or required) to use kernel 6.x for proper management of navi14 GPUs.

Mezentium commented 1 year ago

Looking at Distrowatch, Artix moved to 6.x around the time my crashing issues were resolved.

terzag commented 1 year ago

No change with Mesa 22.2.5 anyway. I'll try to upgrade the kernel to see, then.

EDIT: nope.

First tried to install kernel 6.1.8 → still freezing + GPU reset when starting a Freelancer mission.

Then tried to upgrade to Mesa 22.3.4 (most recent version I can get using a somewhat stable repo) → same, except that now the GPU somewhat recovers from its crash as I get back to the login screen without having to kill Xorg.

I've put a Proton log there in case someone can spot something wrong: https://pastebin.ubuntu.com/p/CK5yncXqry/

Mezentium commented 1 year ago

From the output it looks like you're using Radv instead of amdgpu (kernel driver). You can know for sure by running: lspci -k | grep -EA3 'VGA|3D|Display'

terzag commented 1 year ago

AFAIK, I've always used amdgpu, seems to still be the case with the current configuration:

09:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 24 [Radeon RX 6400 / 6500 XT] (rev c1)
    Subsystem: Micro-Star International Co., Ltd. [MSI] Navi 24 [Radeon RX 6400 / 6500 XT]
    Kernel driver in use: amdgpu
    Kernel modules: amdgpu
Mezentium commented 1 year ago

One more thing, do you have vulkan-radeon and lib32-vulkan-radeon installed?

terzag commented 1 year ago

These don't exist as such on Ubuntu. I have Vulkan packages installed as well as a libdrm-radeon1 package and a xorg one (xserver-xorg-video-radeon). All packages are installed as 32 + 64 bit except for the xorg one which doesn't have a 32 bit build.

Mezentium commented 1 year ago

ah you're right I guess for Ubuntu the equivalent is: apt install libvulkan1 mesa-vulkan-drivers vulkan-utils

terzag commented 1 year ago

Yeah, they're installed, 32 and 64 bit. In theory, everything is fine regarding packages installed.

Mezentium commented 1 year ago

@terzag is your Steam client beta participation on, that broke H3 for me a while back: image

terzag commented 1 year ago

No, regular version, no beta.

lucifertdark commented 1 year ago

I've made a couple of changes to my setup, I switched to the nvidia 520 drivers & using Proton next 7.06 the game is running pretty much perfectly for me at the moment. https://gist.github.com/lucifertdark/584c14275612e8e3c4a8070d428d8a02

steam-1659040.log

uristdwarf commented 1 year ago

I currently have a massive slowdown with experimental compared to Proton Next (7.0-6). Next is usually ~60 FPS while experimental is averaging less than 20 FPS.

System information: https://gist.github.com/uristdwarf/43f90f9147edef5fc3fa73417b2625a3 Experimental logs steam-1659040-experimental.log Next logs steam-1659040-next.log (Tested on the Dartmoor interactive benchmark)

vulkaninfo output vulkaninfo.log

kisak-valve commented 1 year ago

Hello @uristdwarf, your system is configured to use AMDVLK. Can you check how the game behaves with mesa/RADV?

uristdwarf commented 1 year ago

Hello @uristdwarf, your system is configured to use AMDVLK. Can you check how the game behaves with mesa/RADV?

That seems to have put it back to 60 FPS (even better than the performance on next with AMDVLK)

steam-1659040-experimental-radv.log

In any case, thank you for the advice to use RADV, I wasn't too familiar with vulkan drivers so I picked the one supported by the manufacturer.

BillThePlatypus commented 1 year ago

I've been having the issue with the game freezing on Linux for several months now, and nothing I've tried (mostly from this thread) has worked. I confirmed when freelancer came out that it still froze frequently. However, I just upgraded from an Intel i5-9400F to an AMD 5800X3D, and now the game doesn't freeze (I've played a few syndicates with no problems.) It is possible that the CPU change fixed it. It is also possible that an OS/game/driver/Proton update fixed the issues. If you've been having freezing issues, you might want to run all updates and try again. If that doesn't work maybe it's something Intel-specific.

Other details:

soleofthesea commented 1 year ago

For anyone who's having issues with abnormally low FPS, I've found that running the game with Plagman's gamescope solves it. Not the most elegant fix - Steam now hangs "waiting for the game to shut down" - but at least I can actually play the game now.

terzag commented 1 year ago

It is also possible that an OS/game/driver/Proton update fixed the issues. If you've been having freezing issues, you might want to run all updates and try again. If that doesn't work maybe it's something Intel-specific.

Well, in my case the freezes happen with an AMD CPU (Ryzen 5 1500X) + GPU (Radeon RX 6500 XT), so definitely not Intel-specific.

Mezentium commented 1 year ago

@terzag have you disabled SMT? I saw recently that was an issue and SMT should be disabled for some CPU loads. My setup doesn't have SMT.

terzag commented 1 year ago

@terzag have you disabled SMT? I saw recently that was an issue and SMT should be disabled for some CPU loads. My setup doesn't have SMT.

What's SMT and how do I disable it?

Mezentium commented 1 year ago

@terzag It should be in your bios. 2ttfw2u747r31

ThisNekoGuy commented 1 year ago

Hitman 3 has a DLSS problem where enabling it results in severely incorrect behavior like this: 20230225061146_1

System Info Gist

terzag commented 1 year ago

@Mezentium So, I've checked in the BIOS (sorry, didn't have time to do it until now) and SMT was likely enabled (auto) so I forced disabling it but no change for Hitman 3, still the exact same crash.

frozen-sea commented 1 year ago

Re: the greyed out RT options, I found this: https://github.com/HansKristian-Work/vkd3d-proton/issues/1148#issuecomment-1570914021

After setting vendor id to something bogus via dxvk.conf, e.g dxgi.customVendorId = ffff then I can enable both RT reflections and shadows in the game and they render correctly. This of course locks out enabling DLSS.

4070 Ti, driver 535.86.05 Nobara 38, kernel 6.3.12 Proton 8.0-103 (default)

Aegeontis commented 1 year ago

frozen-sea:

This of course locks out enabling DLSS.

Can someone explain why setting the VendorId to ffff disables DLSS, but enables rt? Why does the stock 10de that dxvk sets here disable rt?

Oh and any idea why cyberpunk2077 has both rt and dlss, without adding a dxvk.conf file, but hitman3 doesnt, even though both games use directx12? Did the Cyberpunk devs do something on their side?

frozen-sea commented 1 year ago

frozen-sea:

This of course locks out enabling DLSS.

Can someone explain why setting the VendorId to ffff disables DLSS

dxvk-nvapi checks that it's 10de

Why does the stock 10de that dxvk sets here disable rt?

Got no clue, but the commit that does it pre-dates Hitman 3 even having RT. FWIW, spoofing 1002 (AMD) instead of ffff has the same result for me, but might be different in actual AMD hardware. Could also be that AGS (AMD GPU Services) works just fine now and this is all outdated.

Oh and any idea why cyberpunk2077 has both rt and dlss, without adding a dxvk.conf file, but hitman3 doesnt, even though both games use directx12? Did the Cyberpunk devs do something on their side?

I have tested dozens of RT enabled games and no other has behaved like this, so it's more like Hitman 3 does something odd. Could be that Dirt 5 is also affected since it has RT and AGS workaround in dxvk, but I can't test that.

willthong commented 1 year ago

Would be interested to hear if other people experiencing this issue can verify resolution by testing the current Proton Experimental.

Sadly this one is still an issue for me @tshack: audio continues but video freezes. Log shows the same error as you've got there. Running Proton Experimental 8.0-20230822 and proton-vkd3d 2.9.0 (although I've tried on GE and stable too). I tried dropping all graphics settings to the lowest possible and still experienced this issue. Proton logs::

7720.410:0138:01d4:err:sync:RtlpWaitForCriticalSection section 000000039CD0CA98 (null) wait timed out in thread 01d4, blocked by 01d0, retrying (60 sec)
7720.440:0138:01a4:err:vkd3d-proton:dxgi_vk_swap_chain_submit_blit: Failed to wait for fence, vr -4
7720.440:0138:01a4:err:vkd3d-proton:dxgi_vk_swap_chain_present_signal_blit_semaphore: Failed to submit present discard, vr = -4.
alkaris2 commented 1 year ago

Hitman 3 currently doesn't work for me, it'll show the Launcher and I hit Play, and then the game immediately exits. I have tried the -skip_launcher and the game immediately exits when it tries to run, so basically can't run the game at all.

I've tried running the game with DXVK_ASYNC=1 PROTON_ENABLE_NVAPI=1 PROTON_HIDE_NVIDIA_GPU=0 VKD3D_CONFIG=dxr11 VKD3D_FEATURE_LEVEL=12 %command% -dx12 and it does nothing. Created dxvk.conf with the dxgi.customVendorID = 10de set, I ensured I also had dxgi.nvapiHack = true and still doesn't work at all. Tried with multiple versions of Proton with no luck at all. It was last previously known working with GE-Proton7-42, but that is not the case anymore, even later versions did nothing, as it either results in game launcher popping up but hitting Play immediately crashes the game, or launcher never appears and runs indefinitely without doing anything but being hung up in a zombie process state.

The following log file shows for running under GE-Proton7-42, one extra thing I had to throw into the Launch Options was LD_PRELOAD="$LD_PRELOAD:/usr/\$LIB/libgamemode.so.0" because it wasn't properly detecting libgamemode.so.0 library file and would throw errors saying;

gamemodeauto: dlopen failed - libgamemode.so: cannot open shared object file: No such file or directory

steam-1659040.log

kisak-valve commented 1 year ago

Hello @alkaris2, err:steamclient:create_win_interface Don't recognize interface name: SteamUser023 followed by an access violation hints that the third party build of Proton is too old to be used with the game.

SteamUser023 looks like it's part of Steamworks 1.57, which should work with Proton 8.0-3 (or newer). (https://github.com/ValveSoftware/Proton/commit/a33bbf115c3de5cc0ec6dda7305367968720e6bb) Please retest with Proton 8.0-3 and share and updated Proton log.

my4ng commented 1 year ago

Hitman 3 has a DLSS problem where enabling it results in severely incorrect behavior like this

DLSS works with no more artefacts (4070 Ti and GE-proton8-20). However, it seems the framerate has been capped to 60, while FSR can deliver 100-120fps.

morali commented 1 year ago

VR still doesn't work on the latest version of Proton (tested on Experimental and 8.0-4). The game switches to VR mode, and responds to the movement of the headset, but there's no video in the headset.

Proton version: 8.0-4 SteamVR version: 2.0.9 beta

Attaching the log file. steam-1659040.log

Mar2ck commented 11 months ago

I just got my Steam Deck OLED and was disappointed to see that the HDR option in this game doesn't show up. The HDR option is there in the launcher but doesn't do anything, in-game the option just doesn't appear. I tried with the default Proton 8 and changing to Experimental but neither work.

misyltoad commented 11 months ago

@Mar2ck This seems to be a game bug, the HDR functionality does not work for me on Windows either.

It has the same symptom of it creating a HDR swapchain for the first frame and then going back do aRGB for the rest.

Mar2ck commented 11 months ago

You have to be in Exclusive fullscreen for HDR to appear as an option in-game, but otherwise it works fine on my Windows PC for both my HDR monitor and TV.

https://github.com/ValveSoftware/Proton/assets/6759254/f10f8474-d484-4d80-a75a-456dc02beb1b

Edit (2024-07-09): HDR now works with Proton Experimental! Not sure when this happened but I'm glad it's been fixed.

oliwer commented 10 months ago

Am I the only one who noticed physics issues playing Hitman? The problem is with rebounds: when I throw an object (like a coin) on the floor, it will rebound several meters in the air with huge force, which makes it impossible to predict where it will end up. The issue happens with any object, including bodies but to a lesser extent.

I've seen this issue since day 1 playing Hitman 3. It does not make the game unplayable but it sure is annoying. Hitman 2016, which had a native Linux port, did not have this problem.

Playing on Steam on Ubuntu 23.10 with amdgpu drivers.

huupoke12 commented 9 months ago

I'm having problem when setting graphic at "Fullscreen" mode (as "Exclusive Fullscreen" crashes the game when alt-tabbing). The game window is being pushed up and right slightly, as shown in the picture below (I can't screenshot this bug). I'm using Proton 8.0-5 and NVIDIA RTX 3050Ti Mobile with driver 545.29.06 on Fedora Workstation 39, GNOME 45.3 on Xorg server.

Seems like the problem only happen when running under Xorg server. Doesn't happen on Wayland.

Hitman_3_Proton_Fullscreen_bug

huupoke12 commented 7 months ago

Sometimes after completing a mission, I get the error "Error starting contract". I have to restart the game to continue playing. But if the error happen when playing the freelancer mode, I cannot restart the game to continue to play freelancer at all. The only solution that works is to start into Windows (dual boot), start the freelancer mode from there then quit the game. Only after that, I can continue playing the freelancer mode on Proton. This is very annoying.

I have tried both Proton 8.0-6 and 9.0 and they both have the problem.

https://github.com/ValveSoftware/Proton/assets/16283764/ec0e7654-39e3-4c38-b9c1-f94c1b8505ce

NoXPhasma commented 3 months ago

While HDR works for me, I can't see the dark box in the gamma settings for HDR. It only shows a white box: Bildschirmfoto_20240715_181225

Logfile: steam-1659040.log Sysinfo: https://gist.github.com/NoXPhasma/b8596ea576a20d55d687f3bd0de79e17

MarcPG1905 commented 2 months ago

I am completely unable to launch the game. When launching over steam, it just shows the "Launching" and then returns back to the "Play" button.

These are the errors I get in the proton logs:

12263.046:0120:0124:err:module:loader_init "d3d12.dll" failed to initialize, aborting
12263.046:0120:0124:err:module:loader_init Initializing dlls for L"E:\\SteamLibrary\\steamapps\\common\\HITMAN 3\\Launcher.exe" failed, status 80000100

and this is the complete log. I'm running Arch with an RTX 4070 on the 555.58.02 NVIDIA drivers.