ValveSoftware / Proton

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

F1 2021 (1134570) #4966

Open AbnocChinwads opened 3 years ago

AbnocChinwads commented 3 years ago

Compatibility Report

System Information

I confirm:

steam-1134570.log

Symptoms

It begins to open and then immediately shuts down. It's a brand new game I didn't expect it to run straight away, I just want to help people who don't buy the deluxe edition and have to wait until 16th to play it.

Reproduction

Install the game, run it. I added PROTON_USE_SECCOMP=1 %command% to the launch options as that works for F1 2020, but it doesn't seem to help 2021 launch

kisak-valve commented 3 years ago

Hello @AbnocChinwads, your log hints that there might a D3D12 / VKD3D-Proton related issue going on with this game.

AbnocChinwads commented 3 years ago

Hello @kisak-valve I'm glad it could help in some way, is there anything I could try to help narrow down the issue?

davidjmemmett commented 3 years ago

Same as above, except I also get a "DirectX 12 is incompatible with this version of Windows" alert: Screenshot from 2021-07-20 19-10-15

Arsconyl commented 3 years ago

System Information

steam-1134570.log

Symptoms

Black fullscreen then closes.

Reproduction

Install the game and run it. (Just with PROTON_LOG=1 %command%)

I have a similar setup as OP but maybe it can help.

davidjmemmett commented 3 years ago

I got further using Proton Experimental and passing -force-d3d11 as launch options, this starts to play an introduction video and then crashes.

davidjmemmett commented 3 years ago

Ignoring my last comment - I upgraded vkd3d-proton and got slightly further, latest failure in attached log:

20568.822:010c:01ac:trace:seh:raise (22)
Assertion failed: std::find(succ.begin(), succ.end(), to_next) == succ.end(), file ../src-vkd3d-proton/subprojects/dxil-spirv/node.cpp, line 354

steam-1134570.log

der-eismann commented 3 years ago

Just chiming in with the same problem. Hopefully it gets fixed soon, I was getting used to playing F1 2020 on Linux.

System Information

steam-1134570.log (Proton 6.3) steam-1134570.log (Proton experimental)

Symptoms

Black fullscreen then closes.

nizos commented 3 years ago

@HansKristian-Work Can you have a look at this? Thanks. :)

davidjmemmett commented 3 years ago

I have verified the fix from @HansKristian-Work in dxil-spirv fixes the crash. Now the game runs until the main menu, where I reliably experience a full system lock-up and have to REISUB.

nizos commented 3 years ago

I have verified the fix from @HansKristian-Work in dxil-spirv fixes the crash. Now the game runs until the main menu, where I reliably experience a full system lock-up and have to REISUB.

Do you have any new logs you can share?

davidjmemmett commented 3 years ago

Yup, please find attached: steam-1134570.log

Raboebie commented 3 years ago

Interesting that you note that @davidjmemmett. I can navigate the menu just fine using this fix. The game did crash upon trying the benchmark or a track.

nizos commented 3 years ago

Interesting that you note that @davidjmemmett. I can navigate the menu just fine using this fix. The game did crash upon trying the benchmark or a track.

Interesting, I feel optimistic enough to get the game now. Do you have any logs you can share? How do I apply the mentioned fix? I will post my logs once I have tried it.

Raboebie commented 3 years ago

Yup, here you go![ steam-1134570.log

I can navigate the menu, sounds works, changing graphics settings work. Mapping my controller works. I tried running a benchmark on Silverstone in this example log.

Using proton experimental here.

davidjmemmett commented 3 years ago

@nizos you'll have to do it yourself for now - go into vk3d-proton/subprojects/dxil-spirv, pull the latest from master, build, set up F1 2021 to run from your own build (in Properties -> Compatibility -> Force the use of a specific Steam Play compatibility tool). Also, don't forget to set Launch Options to PROTON_LOG=1 %command%.

Raboebie commented 3 years ago

I have done a bunch of additional tests. All tests crash with the same result. As soon as a track is loaded it crashes.

  1. Changed proton version and updated to latest vkd3d with the same result.
  2. Used external versions of proton like GE with the same result.
  3. Changed various graphics settings to see if that might be causing the issue.
  4. Changed resolutions, windowed, fullscreen etc.
  5. Adjusted audio settings in-game

The showroom works correctly when choosing a car. It's all rendered correctly and I'm able to connect to online services and view multiplayer lobbies.

Attached is my latest log with vkd3d tracing enabled with Proton experimental. steam-1134570.log

DXGI log if useful: F1_2021_dx12_dxgi.log

Raboebie commented 3 years ago

Another update.

I updated vkd3d to the latest git and now I have some mixed results.

  1. Game no longer crashes at the loading screen but instead loads forever when using an F1 car and any track
  2. Game loads correctly when using an F2 car in the rain in France.

As soon as I select a dry track it crashes the display driver, so this could be a amdgpu issue or vkd3d.

I actually did quite a few laps with an F2 car in the wet around Paul Ricard without any issues. No stutter on missing textures.

Latest log: steam-1134570.log

warn:select_vk_format: Failed to find Vulkan swapchain format for DXGI_FORMAT_R8G8B8A8_UNORM.

Raboebie commented 3 years ago

Update 2

The game now works for the most part. I managed to complete the benchmark with acceptable performance and loaded up a few track and car combos and they all worked fine except for one occurrence where the display driver crashed but I haven't been able to reproduce that.

On to the next issue for me then!

My wheel is not detected as it was in F1 2020. Nothing shows up to configure it at all. Perhaps someone else can test as well just in case the problem is on my side? Launching 2020 confirms the wheel still works so the game must be detecting it differently.

I built vkd3d from the latest git master again this morning and this allowed me to run the game. The game seems to work fine with proton 6.3.x and up.

Am I allowed to share the build dll's for others that don't have a build environment?

davidjmemmett commented 3 years ago

There's nothing stopping you, however, it is at others' risk if they use any binaries that you distribute.

Raboebie commented 3 years ago

There's nothing stopping you, however, it is at others' risk if they use any binaries that you distribute.

Naturally thanks!

@nizos I see you are following the thread like a hawk. Interested in doing some testing? I can share the built libs with you if you can update us on your findings perhaps?

nizos commented 3 years ago

There's nothing stopping you, however, it is at others' risk if they use any binaries that you distribute.

Naturally thanks!

@nizos I see you are following the thread like a hawk. Interested in doing some testing? I can share the built libs with you if you can update us on your findings perhaps?

I'm in! I'll just get the game and start downloading it now. I also have a steering wheel that I can use to test the input issue that you mentioned.

der-eismann commented 3 years ago

I'd be in as well, I just didn't want to build it myself. Got an AMD graphics card w/ G29 steering wheel and Xbox controller.

Raboebie commented 3 years ago

Perfect, thanks. Any suggestions on what platform we can use to collaborate so we don't flood this thread?

WantedFreak commented 3 years ago

Hi I would also be interested in testing if needed. I have a Nvidia gpu and g920 wheel

Raboebie commented 3 years ago

Cool, I think discord would work nicely. Join here then we can all discuss over there and post our findings here:

https://discord.gg/7eQY5BVj

nizos commented 3 years ago

Perfect, thanks. Any suggestions on what platform we can use to collaborate so we don't flood this thread?

We can move to Discord, but we can also stay here to keep the information accessible to others.

davidjmemmett commented 3 years ago

I got as far as loading a track, then it crashed. Though this time "ego dumper" caught the fault and allowed the game to exit without me having to force a REISUB. Log attached. steam-1134570.log

Raboebie commented 3 years ago

Thanks David. I actually just did a bunch of laps on various laps and really does run very well for me now. Even my wheel works now. I have no idea what I did but after a reboot it just worked.

For me, the game crashes on the first load of a track for whatever reason. If I go again it works just fine. Played about an hour or breaking point now without issues.

The only notable problem is some flashing of shadows here and there.

Raboebie commented 3 years ago

I got as far as loading a track, then it crashed. Though this time "ego dumper" caught the fault and allowed the game to exit without me having to force a REISUB. Log attached. steam-1134570.log

Just noting, when I used the stock amd drivers I also had ego dumper pop up. Perhaps update to the latest git version if you don't already have that. Not sure if you have green or red power you machine.

Raboebie commented 3 years ago

Update 3

I can reliably launch the game and play breaking point, no issues on that front.

I also found a way to reliably crash the game. Launch game, select time trial with any car and select Canada as the track. Game loads and flashes the F1 into skip then the screen goes blank and display driver crashes. I've only managed to get this result in time trial so not really sure how loading time trial is different from other game modes.

In any case, see my latest log attached. This was the run that crashes. Notable log entries are

warn:seh:dispatch_exception EXCEPTION_WINE_NAME_THREAD exception (code=406d1388) raised err:ntdll:RtlpWaitForCriticalSection section 0000000425003178 "?" wait timed out in thread 0184, blocked by 0188, retrying (60 sec)

steam-1134570.log

Raboebie commented 3 years ago

Update 4

Based on some discussion I had with a few people on Discord I think I can safely say the game is now playable for AMD users running the latest git drivers. The game still crashes for Nvidia users after loading a track. So this must be related to the Nvidia drivers in some way.

LorenzKa commented 3 years ago

Any update on this?

dmolin93 commented 3 years ago

System Information

GPU: NVIDIA GeForce GTX 1070 Driver: NVIDIA 470.63.01 Kernel version: 5.10.70-1-MANJARO Link to full system information report as Gist: https://gist.github.com/dmolin93/f52b35b2d5115e3218551577c1092b6c Proton version: Proton-6.20-GE-1

steam-1134570.log

Tested both Proton Experimental and Proton-6.20-GE-1. Main menu loads fine, when trying to load into the track the game just hangs after a seconds and I have to kill the process.

Tested with "PROTON_HIDE_NVIDIA_GPU=1 %command%" and then it won't even load the main menu.

smt923 commented 3 years ago

unrelated to most of the issues here but I just want to note that proton experimental lets me launch the game, but my wheel (T150 via scarburato/t150_driver) isn't detected at all, using 6.20-GE-1 actually detects the wheel, but has no ffb - is adding in ffb support something planned for future proton versions? for me on AMD it's very close to working 'as it should', the ffb is really the last thing (and of course fixes for the nvidia users)

ReazerDev commented 3 years ago

unrelated to most of the issues here but I just want to note that proton experimental lets me launch the game, but my wheel (T150 via scarburato/t150_driver) isn't detected at all, using 6.20-GE-1 actually detects the wheel, but has no ffb - is adding in ffb support something planned for future proton versions? for me on AMD it's very close to working 'as it should', the ffb is really the last thing (and of course fixes for the nvidia users)

You'd need to install hid-tminit for FFB support. There's a GitHub page for it.

The current kernel module for Thrustmaster devices doesn't support FFB

ReazerDev commented 3 years ago

Replying to https://github.com/ValveSoftware/Proton/issues/4966#issuecomment-952046091

What about F2? It works for me.

Oh and btw. the Problems are probably not related to Proton but the Nvidia Driver

smt923 commented 3 years ago

You'd need to install hid-tminit for FFB support. There's a GitHub page for it.

The current kernel module for Thrustmaster devices doesn't support FFB

the t150 driver I mentioned in my comment uses tminit, I have FFB in other games, it's specific to f1 2021 for whatever reason

ReazerDev commented 3 years ago

Replying to https://github.com/ValveSoftware/Proton/issues/4966#issuecomment-952148426

Oh yeah, I must've missed that you are using another driver :)

It's weird that it's not working in F1 2021. I haven't used my Wheel with F1 2021 yet, I'll try later to see if FFB works on my T300rs and comment wether or not it works.

ReazerDev commented 3 years ago

@Raboebie Do you think that this could be causing the issues on nvidia graphics cards?

1332.428:0118:0418:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.

Raboebie commented 3 years ago

@ReazerDev No this is not something to worry about. NTLM is not required for most software to function. I have the same log message when I boot the game and it runs just fine :)

klllr commented 2 years ago

Has anyone found a way to deal with flashing shadows? @Raboebie seems like you've had a similar issue

For me, the only way to successfully launch the game was to select Proton 6.3-7 instead of Experimental. Otherwise it would either hang on "connection to online services" loading screen, crash on car selection in Time Trial, or just endlessly load any selected track. I'm using Artix Linux / RX 5700XT / Proton 6.3-7 / mesa 21.2.4-1.

@ReazerDev if you're on an Arch-based system, try to install samba, it contains ntlm_auth. On Debian-based systems you need to, as per instruction, install (or reinstall) winbind. Though I would agree with @Raboebie, most applications that produced this error on my system, weren't really affected by it.

ReazerDev commented 2 years ago

@Raboebie Hi, do you happen to know, how I can disable the NvAPI workaround in Proton? Or maybe link me to a cheatsheet for the available proton launch arguments, if you have one? I can't find any

kisak-valve commented 2 years ago

Hello @ReazerDev, sounds like you're looking for https://github.com/ValveSoftware/Proton#runtime-config-options.

dmolin93 commented 2 years ago

According to protondb people have started to get it to work on Nvidia cards, but I'm still facing issues. https://www.protondb.com/app/1134570

GPU: NVIDIA GeForce GTX 1070 Driver: NVIDIA 495.46 Kernel version: 5.15.7-1-MANJARO Proton: 6.21-GE-2/6.3-8/6-20-GE-1/Experimental System info: https://gist.github.com/dmolin93/413a680c1f6c38f8b213f420175571df

steam-1134570.log

F2 2020 Time trial works, trying to run F1 2021 time trial/grand prix hangs on loading.

Any ideas what to try next? It do seem like those who got it working on protondb have 2070s or newer cards, so maybe I'm just out of luck unless I upgrade?

lehleh commented 2 years ago

Replying to https://github.com/ValveSoftware/Proton/issues/4966#issuecomment-981107226

Can confirm this, same GPU as well, also happens to Braking Point EP12. System Info

relevant journalctl

Likely vkd3d/-proton or f1 dx12 issue

hakzsam commented 2 years ago

It seems RADV_DEBUG=nohiz "fixes" the shadows flickering. I will look into a fix.

hakzsam commented 2 years ago

Just pushed a workaround for RADV https://gitlab.freedesktop.org/mesa/mesa/-/commit/90994e4db7000951be058a956813e4a828f862c9

kisak-valve commented 2 years ago

F1 2021 Missing FFB Proton7.0

Issue transferred from https://github.com/ValveSoftware/Proton/issues/5582. @hodasemi posted on 2022-02-16T19:14:02:

Compatibility Report

System Information

I confirm:

Symptoms

Using Proton 6.3-8 force feedback works as intended with F1 2021, changing to Proton 7.0-1 it doesn't work at all. I'm using Thrustmaster T300.

Reproduction

Force specific Proton version to 7.0-1. Start the game and go into a race (or time trial). The wheel has no force feedback.

rbernon commented 2 years ago

Hi @hodasemi,

I don't have the device to try with, so it would be very helpful if you could run the game with PROTON_LOG=1 WINEDEBUG=+timestamp,+pid,+tid,+seh,+unwind,+loaddll,+dinput,+xinput,+hid,+plugplay %command% set in the game launch options, and attach the resulting steam-1134570.log file there. Both with Proton 7.0 and 6.3 if you can (or 7.0 only at least), copying the file between each run, as it gets overwritten.

Thanks!

hodasemi commented 2 years ago

Hi,

here they are: steam-1134570_Proton6.3.zip steam-1134570_Proton7.0.zip

I had to compress them, otherwise the upload didn't work.