ValveSoftware / Proton

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

Victoria 2 (AppId: 42960) #527

Closed Alxe closed 1 month ago

Alxe commented 6 years ago

Game works fine under a normal Wine32 setup on Fedora 28, but with Proton it fails in:

kylemiller3 commented 6 years ago

Game would also not start for me. The workaround mentioned above did not work for me but renaming v2game.exe to victoria2.exe did work for me.

Game does not crash on loading sound for me and appears to work fine. This is Flatpak Steam Ubunutu 18.04

tbsteinb commented 6 years ago

This appears to be related to issue #449 At the very least, that issue is what prevents installation of dotnet20.

tbsteinb commented 6 years ago

Okay, so interestingly enough for me after doing this fix the game would crash while loading, similer to what @Alxe noted, however if after the crash I ran /tmp/proton_run, the game would work. I was able to start a new game. I have not done any further testing yet, but at least I can run the game now.

EDIT: This applies after the first launch as well. If I run it through Steam it crashes at "Loading Sounds." What seems strange to me is that it does work fine without needing to use proton_run for other people.

ebenus commented 6 years ago

I can report the same thing happening to me - game crashing on "loading sounds", unless run through /tmp/proton_run (which is less than ideal as it does not apply Steam overlay).

tbsteinb commented 6 years ago

@kniedzielski You can get the overlay working if you copy the proton_run script somewhere else and add it to Steam. It isn't perfect, but at least everything in-game (and the overlay) works. The overlay also correctly pulls Victoria 2 guides.

simonhdickson commented 5 years ago

Using the new 3.16-4 Beta it loads and runs fine for me after doing that renaming trick. I had an issue with the music not working but installing libmpg123 and libmpg123-32bit packages fixed that. Maybe the sounds not loading is also a packages issue?

lucifertdark commented 5 years ago

Can confirm renaming the exe combined with Proton 3.16-4 Beta the game runs perfectly for me.

ebenus commented 5 years ago

A week ago I was also able to run the game from the 3.16-4 Beta branch with the exe switch, but it seems that at least for me a regression has happened lately, as the game now crashes as soon as the startup preloading screen appears (even before the "loading sounds"). Revert to 3.7-8 helped with this and I am able to enjoy the actual gameplay, hopefully the problem will not pass to the next stable release.

kisak-valve commented 5 years ago

Hello @kniedzielski, with Proton 3.16-4, please add PROTON_LOG=1 %command% to the game's launch options and drag and drop the generated $HOME/steam-$APPID.log into the comment box.

ebenus commented 5 years ago

Hi, sorry for missing the message and I am pretty confused about this, but in the meantime for extra check I purged the install and reinstalled it again with the 3.16-4 version of Proton on - now it works without any issue ((...)/steamapps/compatdata/42960/version where 42960 corresponds to Victoria 2 app id is tells that it indeed uses the 3.16-4 prefix). If the problem occurs again I will upload the log.

testtube123 commented 5 years ago

I have the same issue described I'm using Proton 3.16-4 Beta steam-42960.log

kisak-valve commented 5 years ago

Hello @testtube123, your log has eventfd: Too many open files, please run ulimit -Hn and verify it is a high value and not 4096.

Mariiibo commented 5 years ago

Been trying to get this working for the past couple of days. The .exe rename trick gets the startup video to play, then after it closes, the regular game window opens up to a black screen for anywhere from 1 to about 15 seconds, then crashes. I've got my file limit set to 1048576 so that's not an issue, I've attempted on both Proton 3.16-4 and 3.7-8. I've checked in /tmp/ and I've not seen a proton_run script at any point in my attempts. I do also have the libmpg123 and libmpg123-32bit packages installed. Attaching the log here steam-42960.log

DadSchoorse commented 4 years ago

As of Proton 4.11-8 the launcher now "works", it at least can start the game. The background image isn't displayed through.

DadSchoorse commented 4 years ago

Proton 5.0 somehow broke the game, it now just results in a black screen after the intro. steam-42960.log

kisak-valve commented 4 years ago

Hello @DadSchoorse, can you test if PROTON_USE_WINED3D=1 %command% in the game's launch options has an effect?

DadSchoorse commented 4 years ago

No, unfortunately that doesn't work either. steam-42960.log

kisak-valve commented 4 years ago

Hello @DadSchoorse, "Fix frequent crash introduced in Proton 5.0-1 related to video and audio playback." in Proton 5.0-2 should have helped with the regression, please retest.

DadSchoorse commented 4 years ago

Still not working: dxvk: steam-42960.log wined3d: steam-42960.log

siyia2 commented 4 years ago

Same here crashes with black screen on proton 5.x, proton 4.x working though.

steam-42960.log

DadSchoorse commented 4 years ago

The regression seems to be fixed in 5.0-6 RC.

Blu3wolf commented 4 years ago

Works fine for me aside from the music. Sound effects play, but not music. Is there a fix or workaround for this?

ImperatorStorm commented 3 years ago

Runs perfectly with proton 5.13-1

Ottoman-Von-Bismarck commented 3 years ago

Not sure what happened. A few months ago I had the game running perfectly fine, then I uninstalled it and uninstalled steam for a few months. I come back and I've tried the renaming trick and just reinstalling the game and steam multiple times and the only thing I can get to run is the launcher, it just crashes after that. I've been using proton 4.11 because I think that's what I used to run it on. Any ideas?

DadSchoorse commented 3 years ago

The game works perfectly for me with 5.13 and 6.3, even the launcher kinda works (the background image is missing tho).

But there has been a regression with 6.3-experimental, it doesn't do anything after the intro plays. steam-42960.log

Ottoman-Von-Bismarck commented 3 years ago

Here's the issue report file: https://gist.github.com/Ottoman-Von-Bismarck/d8afc1d23d359c0f6bb50e1d00273d8d

kisak-valve commented 3 years ago

Hello @Ottoman-Von-Bismarck, please copy your system information from Steam (Steam -> Help -> System Information) and put it in a gist, then include a link to the gist in this issue report. Your log hints that there was an access violation (c0000005) with the Steam overlay.

Ottoman-Von-Bismarck commented 3 years ago

@kisak-valve alright. Here's the system info: https://gist.github.com/Ottoman-Von-Bismarck/dafd3de47ff3313f50eca99410813541

As you can see it's rather low-end but like I said it was only a few months ago on the same proton version that I was able to get the game to run perfectly fine.

kisak-valve commented 3 years ago

Proton uses DXVK to translate DirectX 9 / 10 / 11 to Vulkan and your Intel Sandybridge chipset doesn't support Vulkan. Unfortunately that makes your hardware unsupported by Proton in general.

You might get lucky trying a newer Proton version with PROTON_USE_WINED3D=1 %command% in the game's launch options, which tells Proton to use wine's DirectX to OpenGL render path, but this runtime option is not considered supported and comes with a significant performance penalty.

Ottoman-Von-Bismarck commented 3 years ago

Ok, I figured it might be that but I'm just surprised since it worked fine until this month. Thank you

alasky17 commented 3 years ago

@Ottoman-Von-Bismarck The regression in Experimental should be fixed with the latest build (experimental-6.3-20210503) :)

mikoxyz commented 3 years ago

I don't get past the launcher no matter the Proton version :c steam-42960.log

Edit: Seems like me having a symbolic link in the mod folder caused the problem; game seems to start and run just fine with the symlink removed.

DadSchoorse commented 3 years ago

The launcher has regressed in one of the proton experimental updates this week, it used to pretty much work perfectly (and still does with stable proton). Now it crashes after briefly showing up. steam-42960.log

kisak-valve commented 3 years ago
Hello @DadSchoorse, these look like some lines of interest from the log:

``` Unhandled Exception: System.InvalidCastException: Specified cast is not valid. at (wrapper managed-to-native) System.Runtime.InteropServices.Marshal.GetIDispatchForObjectInternal(object) at (wrapper native-to-managed) System.Windows.Forms.UnsafeNativeMethods+IAccessibleInternal.get_accChild(intptr,System.Variant,intptr) at (wrapper managed-to-native) System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(System.Windows.Forms.NativeMethods/MSG&) at System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop (System.IntPtr dwComponentID, System.Int32 reason, System.Int32 pvLoopData) [0x001d7] in <2736a4f873604bfea9e5f3a0d64b37d6>:0 at System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner (System.Int32 reason, System.Windows.Forms.ApplicationContext context) [0x00282] in <2736a4f873604bfea9e5f3a0d64b37d6>:0 at System.Windows.Forms.Application+ThreadContext.RunMessageLoop (System.Int32 reason, System.Windows.Forms.ApplicationContext context) [0x0001a] in <2736a4f873604bfea9e5f3a0d64b37d6>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.Application+ThreadContext.RunMessageLoop(int,System.Windows.Forms.ApplicationContext) at System.Windows.Forms.Application.Run (System.Windows.Forms.Form mainForm) [0x0000d] in <2736a4f873604bfea9e5f3a0d64b37d6>:0 at launcher.Program.Main () [0x00010] in :0 [ERROR] FATAL UNHANDLED EXCEPTION: System.InvalidCastException: Specified cast is not valid. at (wrapper managed-to-native) System.Runtime.InteropServices.Marshal.GetIDispatchForObjectInternal(object) at (wrapper native-to-managed) System.Windows.Forms.UnsafeNativeMethods+IAccessibleInternal.get_accChild(intptr,System.Variant,intptr) at (wrapper managed-to-native) System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(System.Windows.Forms.NativeMethods/MSG&) at System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop (System.IntPtr dwComponentID, System.Int32 reason, System.Int32 pvLoopData) [0x001d7] in <2736a4f873604bfea9e5f3a0d64b37d6>:0 at System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner (System.Int32 reason, System.Windows.Forms.ApplicationContext context) [0x00282] in <2736a4f873604bfea9e5f3a0d64b37d6>:0 at System.Windows.Forms.Application+ThreadContext.RunMessageLoop (System.Int32 reason, System.Windows.Forms.ApplicationContext context) [0x0001a] in <2736a4f873604bfea9e5f3a0d64b37d6>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.Application+ThreadContext.RunMessageLoop(int,System.Windows.Forms.ApplicationContext) at System.Windows.Forms.Application.Run (System.Windows.Forms.Form mainForm) [0x0000d] in <2736a4f873604bfea9e5f3a0d64b37d6>:0 at launcher.Program.Main () [0x00010] in :0 (1) ```

Stormersh commented 3 years ago

Proton uses DXVK to translate DirectX 9 / 10 / 11 to Vulkan and your Intel Sandybridge chipset doesn't support Vulkan. Unfortunately that makes your hardware unsupported by Proton in general.

You might get lucky trying a newer Proton version with PROTON_USE_WINED3D=1 %command% in the game's launch options, which tells Proton to use wine's DirectX to OpenGL render path, but this runtime option is not considered supported and comes with a significant performance penalty.

I know Haswell only has partial support for Vulkan, but is it considered supported?

I've got two issues with this game, one is when playing without any mod. The game runs (after starting a game, selecting a country and messing around, it does crash once but in subsequent launches it doesn't, most likely a quirk of the game though) but it has a visual bug. It is playable though.

The other issue is with mods, I couldn't get any total conversion mod to work (tried HPM, HFM, CWE and Divergence of Darkness which is the one I used for the second log). They all crash while loading.

Both of these only happen when using DXVK. The wined3d flag solves the visual bug and the mod crash, but the performance hit is huge.

Vanilla log Modded log

System info

kisak-valve commented 3 years ago

Hello @Stormersh, rendering anomalies and crashes are expected with that chipset generation due to it being non-spec conformant and in general, it is not supported by Proton.

That said, it might be interesting to let the mesa devs know about the behavior difference between the OpenGL and Vulkan render path and they might be able to figure out what's going on there.

Stormersh commented 3 years ago

Thanks @kisak-valve! I hope it can be solved at some point, it's so close to fully working! :(

That said, it might be interesting to let the mesa devs know about the behavior difference between the OpenGL and Vulkan render path and they might be able to figure out what's going on there.

Is that done by you/Valve or is my input needed?

kisak-valve commented 3 years ago

If you don't mind, then I think it would be better if you coordinated with the mesa/ANV devs directly instead of there being a proxy relaying information second hand. https://docs.mesa3d.org/bugs.html is a good starting point for feedback directed at mesa.

alasky17 commented 3 years ago

@DadSchoorse Thanks for reporting the launcher crash! It should be fixed with the current experimental (20210921) and will be fixed in 6.3 the next time it includes a wine-mono update :)

BobbyBlock commented 3 years ago

steam-42960.log Spent the last hour looking at this and can't figure out how to fix it, my best guess is the error that repeats after line 4167 is something to do with it considering that is different from other logs I have seen posted, tried it with "PROTON_USE_WINED3D=1 %command%" but got the same error. Thanks in advance

kisak-valve commented 3 years ago

Hello @BobbyBlock, these look like some lines of interest from your log:

fixme:d3dcompiler:compile_shader Compilation target "fx_2_0" not yet supported
warn:debugstr:OutputDebugStringA "Clausewitz Error[effecthandler.cpp:111]: D3DXCreateEffectFromFile failed for file: gfx\\FX\\avatar.fx. Couldn't open file.\n\n"

This is shortly followed by an access violation (c0000005).

Upstream bug report: https://bugs.winehq.org/show_bug.cgi?id=37676

Alxe commented 1 month ago

I'm closing this issue as there's been no movement since 2024. Last time I played Victoria 2, I recall everything working flawlessly.