ValveSoftware / Proton

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

Shadow Empire (1154840) #4434

Open Stew-rt opened 3 years ago

Stew-rt commented 3 years ago

Compatibility Report

System Information

I confirm:

steam-1154840.log

Symptoms

Game Launcher Loads - allows "Launch" button to be pressed (with minor exception popup showing about being unable to load locale from config file) Game Launches - Intro runs (with audio fine) Game main menu loads, buttons work When launch game, loading screen appears to run After loading screen, display drops to desktop, and window disappears, but audio continues to play, and process stays open.

Reproduction

Install Game Start game via Steam Try to start new game

Additional Info

I have read reports of users otherwise getting the game running in wine/proton with a workaround, but i've been able to get it right as-of-yet https://www.protondb.com/app/1154840

Workarounds suggest installing dotnet4.7.2 and gdiplus via winetricks - and modifying an erroneous png file

kisak-valve commented 3 years ago

Hello @Stew-rt, from the log this looks fatal:

Unhandled Exception:
System.NullReferenceException: Object reference not set to an instance of an object.
  at Microsoft.VisualBasic.Conversion.Str (System.Object Number) [0x0028c] in <4dcb7d1ddab44fa4bafe41122e645da4>:0 
  at WindowsApplication1.EventRelatedClass.GetVarValue (System.Int32 enr, System.Int32 linenr, System.Int32 itemnr, System.Int32 dataplus) [0x001a6] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.EventRelatedClass.GetItemValue2 (System.Int32 enr, System.Int32 linenr, System.Int32 itemnr) [0x00118] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.EventRelatedClass.GetItemValue (System.Int32 enr, System.Int32 linenr, System.Int32 itemnr) [0x00038] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.EventRelatedClass.DoCheckSpecificEvent (System.Int32 enr, System.Int32 tv0, System.Int32 tv1, System.Int32 tv2, System.Int32 tv3, System.Int32 tv9, System.Int32 tv7, System.Int32 tv8, System.Int32 tv10, System.Boolean skipSettingTempVars) [0x00aaa] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.EventRelatedClass.DoCheckEvents (System.Int32 checkMode) [0x001aa] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.LoadClass.Go () [0x01209] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at System.Threading.ThreadHelper.ThreadStart_Context (System.Object state) [0x00014] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00071] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state) [0x0002b] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
  at System.Threading.ThreadHelper.ThreadStart () [0x00008] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object.
  at Microsoft.VisualBasic.Conversion.Str (System.Object Number) [0x0028c] in <4dcb7d1ddab44fa4bafe41122e645da4>:0 
  at WindowsApplication1.EventRelatedClass.GetVarValue (System.Int32 enr, System.Int32 linenr, System.Int32 itemnr, System.Int32 dataplus) [0x001a6] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.EventRelatedClass.GetItemValue2 (System.Int32 enr, System.Int32 linenr, System.Int32 itemnr) [0x00118] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.EventRelatedClass.GetItemValue (System.Int32 enr, System.Int32 linenr, System.Int32 itemnr) [0x00038] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.EventRelatedClass.DoCheckSpecificEvent (System.Int32 enr, System.Int32 tv0, System.Int32 tv1, System.Int32 tv2, System.Int32 tv3, System.Int32 tv9, System.Int32 tv7, System.Int32 tv8, System.Int32 tv10, System.Boolean skipSettingTempVars) [0x00aaa] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.EventRelatedClass.DoCheckEvents (System.Int32 checkMode) [0x001aa] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at WindowsApplication1.LoadClass.Go () [0x01209] in <d24d311a75df46e5a7375faacfe7cdaf>:0 
  at System.Threading.ThreadHelper.ThreadStart_Context (System.Object state) [0x00014] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00071] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state) [0x0002b] in <7713cb95b33244ed9608bf0b23fbdce9>:0 
  at System.Threading.ThreadHelper.ThreadStart () [0x00008] in <7713cb95b33244ed9608bf0b23fbdce9>:0 (1)
Stew-rt commented 3 years ago
Yeah, looks like there's existing (likely exist in windows) bugs here.. but it may be Windows has workarounds.. If I skip the intro, I also get a pop-up exception to either continue or quit at the following exception:

``` Argument ' Expression' cannot be converted to type 'System.Int32' See the end of this message for details on invoking \njust-in-time (JIT) debugging instead of this dialog box.\n\n************** Exception Text **************\nSystem.ArgumentException: Argument 'Expression' cannot be converted to type 'System.Int32'. at Microsoft.VisualBasic.Conversion.Val (System.Object Expression) [0x000b3] in <4dcb7d1ddab44fa4bafe41122e645da4>:0 at WindowsApplication1.Form1.Form1_Keydown (System.Object sender, System.Windows.Forms.KeyEventArgs e) [0x0005e] in :0 at System.Windows.Forms.Control.OnKeyDown (System.Windows.Forms.KeyEventArgs e) [0x0001f] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.Control.ProcessKeyEventArgs (System.Windows.Forms.Message& m) [0x0013c] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.Control.ProcessKeyMessage (System.Windows.Forms.Message& m) [0x00020] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.Control.WmKeyChar (System.Windows.Forms.Message& m) [0x00001] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x004c1] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.ScrollableControl.WndProc (System.Windows.Forms.Message& m) [0x00043] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.ContainerControl.WndProc (System.Windows.Forms.Message& m) [0x0001a] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.Form.WndProc (System.Windows.Forms.Message& m) [0x00318] in <4b7d326f792d4378bd436300c6961411>:0 at WindowsApplication1.ImmoveableForm.WndProc (System.Windows.Forms.Message& m) [0x000e4] in :0 at System.Windows.Forms.Control+ControlNativeWindow.OnMessage (System.Windows.Forms.Message& m) [0x00001] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x000b3] in <4b7d326f792d4378bd436300c6961411>:0 at System.Windows.Forms.NativeWindow.Callback (System.Windows.Forms.Message& m) [0x00025] in <4b7d326f792d4378bd436300c6961411>:0 ************** Loaded Assemblies ************** mscorlib Assembly Version: 4.0.0.0 Win32 Version: 4.6.57.0 CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Proton%205.13/dist/share/wine/mono/wine-mono-5.1.1/lib/mono/4.5/mscorlib.dll ---------------------------------------- WindowsApplication1 Assembly Version: 1.0.7641.21356 Win32 Version: 1.0.7641.21356 CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Shadow%20Empire/ShadowEmpire.exe ---------------------------------------- Microsoft.VisualBasic Assembly Version: 10.0.0.0 Win32 Version: 10.0.0.0 CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Proton%205.13/dist/share/wine/mono/wine-mono-5.1.1/lib/mono/gac/Microsoft.VisualBasic/10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll ---------------------------------------- System Assembly Version: 4.0.0.0 Win32 Version: 4.6.57.0 CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Proton%205.13/dist/share/wine/mono/wine-mono-5.1.1/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Windows.Forms Assembly Version: 4.0.0.0 Win32 Version: 4.6.57.0 CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Proton%205.13/dist/share/wine/mono/wine-mono-5.1.1/lib/mono/gac/System.Windows.Forms/4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System.Drawing Assembly Version: 4.0.0.0 Win32 Version: 4.6.57.0 CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Proton%205.13/dist/share/wine/mono/wine-mono-5.1.1/lib/mono/gac/System.Drawing/4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- System.Configuration Assembly Version: 4.0.0.0 Win32 Version: 4.6.57.0 CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Proton%205.13/dist/share/wine/mono/wine-mono-5.1.1/lib/mono/gac/System.Configuration/4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll ---------------------------------------- Accessibility Assembly Version: 4.0.0.0 Win32 Version: CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Proton%205.13/dist/share/wine/mono/wine-mono-5.1.1/lib/mono/gac/Accessibility/4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll ---------------------------------------- irrKlang.NET4 Assembly Version: 1.0.6617.18847 Win32 Version: CodeBase: file:///Z:/home/stewart/.local/share/Steam/steamapps/common/Shadow%20Empire/irrKlang.NET4.dll ---------------------------------------- ************** JIT Debugging ************** ```

bbigras commented 3 years ago

@Stew-rt did you manage to install dotnet4.7.2? I didn't yet. It failed and when I updated winetricks it said that:

------------------------------------------------------
Executing load_dotnet472 
------------------------------------------------------
warning: This package (dotnet472) is broken in wine-5.13-634-gd6646652a2f. Broken since 5.12. Upgrade to >=5.18. See https://bugs.winehq.org/show_bug.cgi?id=49532 for more info. Use --force to try anyway.
bbigras commented 3 years ago

btw I'm the one who posted the report on protondb and winehq.

The png fix is for the "System.InvalidOperationException: SetPixel is not supported for images with indexed pixel formats." error that we had when the game was first release. (I found the problematic file with strace).

gdiplus was to fix the lag and the font size I think.

Stew-rt commented 3 years ago

I haven't even got it to the stage where it doesn't crash, I'm also getting the same failure trying to proton/winetricks dotnet4.7.2 - currently trying to figure out a cleaner way to create a 32 bit prefix to see if that removes the dotnet failure.

bbigras commented 3 years ago

I tried with a 32 bit prefix. but I think the game is 64 bit. That would cause problems right?

Right now I'm trying to install dotnet with protontricks <id> --force. EDIT: it failed.

jrudess commented 3 years ago

I was unable to get the game working with Proton 5.13, but it works great with Proton 5.0. I suspect the primary issue is that installing dotnet 4.7.2 does not work with Proton 5.13 as mentioned earlier in the thread.

PROTON_VERSION="Proton 5.0" protontricks 1154840 gdiplus
PROTON_VERSION="Proton 5.0" protontricks 1154840 dotnet472
sisso commented 3 years ago

Installing gdiplus and donet472 works for me. But after some time playing (normally after finish a turn) everything gets laggy. Each click takes a second, to process a turn takes minutes, even saving the game takes longer. CPU/memory/io all idle.

I have this same issue with wine. Funny, restart the game didn't help. But logout/login fixes the issue.

jhaand commented 3 years ago

Installing dotnet472 and gdiplus using protontricks took quite some effort. Installing .net 4.6.2. crashed a lot and that blocked borh dotnet472 and gdiplus Is was easier to set WINEPREFIX to the correct prefix and use winetricks several times. The game runs quite fine, but slow with Proton-5.0-10b.

export WINEPREFIX=$HOME/.steam/steam/steamapps/compatdata/1154840

kisak-valve commented 1 year ago

Shadow Empire DLC Oceania not downloading

Issue transferred from https://github.com/ValveSoftware/Proton/issues/6969. @Vokda posted on 2023-07-26T20:03:37:

Compatibility Report

System Information

I confirm:

Logfile

steam-1154840.log.zip

Symptoms

The DLC is not downloaded and not installed.

Reproduction

Additional Info:

kisak-valve commented 1 year ago

Hello @Vokda, that reads like #3111. Like that issue report, can you go to Steam -> Settings -> Compatibility and enable the Enable Steam Play for all other titles checkbox, then test if that makes the DLC show up?

Vokda commented 1 year ago

Hi @kisak-valve, that option is already enabled for me. I tried disable it and enable it again then restarting steam, unfortunately it did nothing.

kisak-valve commented 1 year ago

Maybe check if the DLC is listed and enabled in the per-game properties?

Something like Library -> Right click on the game on the list of games -> Properties -> DLC and see if what you're looking for is listed, but not checked. Alternatively, select the game in Library, then scroll down until you see a Manage My # DLC button on the right side.

Vokda commented 1 year ago

I have already done that. It is checked. I have tried to uncheck and check again but without results. Is it possible to manually download and install the DLC?

alasky17 commented 1 year ago

@Vokda This is silly, but have you launched the game to see if the Oceania planets are there? I tested on Windows to see what the behavior looked like, and I didn't see any new download when I added the Oceania DLC, but suddenly when I started a new game, I had the Oceania planet options. Maybe they ship the DLC with the game and just turn it on and off or something?

Vokda commented 1 year ago

@alasky17 Not silly at all! All suggestions are welcome. :) Though I have tested that too and no oceania planets there, only the original planets under the core and additional tab.

I did however notice now that in the main menu at the bottom it says: v 1.21 d Shadow Empire: Planetary Conquest + D2D disabled (steam) Should the D2D be enabled?