protonscr

Cthulhu Saves The World

protonopen appid 107310Game compatibility - UnofficialRegression.NET-XNA
ValveSoftware/Proton#1783 · opened 2018-10-19 by BrunoDSL · updated 2024-12-27 · 17 comments · github · game page · search this game
3 matching comments, n / p to jump
BBrunoDSL 2018-10-19 github

Compatibility Report

  • Name of the game with compatibility issues: Cthulhu Saves The World
  • Steam AppID of the game: 107310

System Information

I confirm:

  • [x] that I haven't found an existing compatibility report for this game.
  • [x] that I have checked whether there are updates for my system available.

(Same as #1781 . The game doesn't launch normally, so no logs are created)

Symptoms

Same symptoms as #1781 . Game from the same developer.

Reproduction

Same as #1781

Fflibitijibibo 2019-04-18 github

This game should work with 4.2-3 after using this script in the game directory:

https://gist.github.com/flibitijibibo/c97bc14aab04b1277d8ef5e97fc9aeff

Fflibitijibibo 2019-09-16 github

Thanks to a ridiculous and ingenious (and kind of obvious, now that I think about it) hack from the FFXIV community we found a way to make the Linux version run natively without the use of extra compatibility tools. Using the docs here...

https://icculus.org/finger/flibitijibibo?date=2019-07-31&time=13-55-03

... you can just set this as a Launch Option:

echo "%command%"; ./CSTW
Sshoober420 2020-02-03 github

Compatibility Report

System Information

LOG:
steam-107310.log

Symptoms

Crash at startup

AAlleyDismay 2023-03-18 github

Is a Regression now? It fails with current Experimental and 7.0.6, and needed to be Proton 6.3-8 for it to run for me? Basically the same as "Breath of Death VII".

System Information

Logs:

steam-107310 - 7.0.6.log
steam-107310 - 6.3-8.log

Kkisak-valve maintainer 2023-03-18 github

Hello @AlleyDismay, same instructions as Breath of Death VII. Please add PROTON_LOG=1 %command% to the game's launch options, reproduce the regression, and attach the generated $HOME/steam-$APPID.log to this issue report as a file. (Proton logs compress well if needed.)

AAlleyDismay 2023-03-18 github

@kisak-valve - Thanks! Added into previous comment.

Kkisak-valve maintainer 2023-03-18 github

These look like some lines of interest from the log:

=================================================================
	Managed Stacktrace:
=================================================================
	  at <unknown> <0xffffffff>
	  at Theorafile:tf_videoinfo <0x00012>
	  at Microsoft.Xna.Framework.Media.Video:.ctor <0x000a3>
	  at Microsoft.Xna.Framework.Media.Video:.ctor <0x00033>
	  at Microsoft.Xna.Framework.Content.VideoReader:Read <0x00173>
	  at Microsoft.Xna.Framework.Content.ContentTypeReader`1:Read <0x0003e>
	  at Microsoft.Xna.Framework.Content.ContentReader:InnerReadObject <0x00079>
	  at Microsoft.Xna.Framework.Content.ContentReader:ReadObject <0x0003b>
	  at Microsoft.Xna.Framework.Content.ContentReader:ReadObject <0x0003f>
	  at Microsoft.Xna.Framework.Content.ContentReader:ReadAsset <0x00043>
	  at Microsoft.Xna.Framework.Content.ContentManager:ReadAsset <0x00527>
	  at Microsoft.Xna.Framework.Content.ContentManager:Load <0x0013b>
	  at Cthulhu_Saves_the_World.Game1:LoadContent <0x01ba6>
	  at Microsoft.Xna.Framework.Game:Initialize <0x0018f>
	  at Cthulhu_Saves_the_World.Game1:Initialize <0x00157>
	  at Microsoft.Xna.Framework.Game:DoInitialize <0x000c3>
	  at Microsoft.Xna.Framework.Game:Run <0x00033>
	  at Cthulhu_Saves_the_World.Program:Main <0x0004f>
	  at <Module>:runtime_invoke_void_object <0x0006c>
=================================================================

It looks like FNAMF-x86.dll is hitting an access violation (c0000005).

Mmadewokherd 2023-03-21 github

I think tf_videoinfo was called with a NULL context. The log doesn't have much information. fmamf and mfplat may be useful debug channels.

AAlleyDismay 2023-03-21 github

@madewokherd - Is there anything I can do?

Mmadewokherd 2023-09-19 github

Can you get a log with WINEDEBUG=+fnamf,+mfplat ?

AAlleyDismay 2023-09-19 github

@madewokherd - Tried 8.0-3 with command "PROTON_LOG=1 %command% WINEDEBUG=+fname,+mfplat %command%"

Got: this thing.log

Mmadewokherd 2023-09-26 github

The log doesn't have output from those channels. I'm guessing it's because you have an extra %command% in there before the WINEDEBUG=.

AAlleyDismay 2023-09-26 github

The log doesn't have output from those channels. I'm guessing it's because you have an extra %command% in there before the WINEDEBUG=.

Ah. Now I'm seeing the output. I had to Stop it since it didn't run. Tell me if you want a longer run?

this thang.log

Mmadewokherd 2023-09-29 github

The fnamf traces didn't show up for some reason, but the other information is enough that it wouldn't add anything anyway. It seems that MFCreateSourceReaderFromURL fails for the file steamapps\\common\\Cthulhu Saves the World\\Content\\Movies\\CSTW_intro2.wmv.

I see there's also an error status:

0160:warn:mfplat:media_source_constructor Failed to construct MFMediaSource, hr 0x8007000e.

0x8007000e is E_OUTOFMEMORY. But, this works for me and doesn't allocate very much memory, so it seems unlikely that it'd be an allocation failure. Based on the log it may be wg_parser_create that's failing, and it seems that's treated as E_OUTOFMEMORY regardless of why it fails.

So my best guess is that it has to do with the winegstreamer component. I don't think Proton normally parses WMV and instead downloads transcoded versions of those videos using Shader Pre-Caching. But, I tried disabling Shader Pre-Caching and that didn't cause a crash either, I just get a test pattern instead of the intro video. Still, could be worth a try (that is, if it's currently disabled).

Converting the video to ogg locally might also help. There's a shell script for it at https://gist.github.com/flibitijibibo/c97bc14aab04b1277d8ef5e97fc9aeff

AAlleyDismay 2024-07-14 github

I tried disabling Shader Pre-Caching and that didn't cause a crash either, I just get a test pattern instead of the intro video. Still, could be worth a try (that is, if it's currently disabled).

I just tried disabling and it doesn't stop the crashes, since I dunno how to get that ogg conversion to fully work?

AAlleyDismay 2024-12-23 github

Okay, now it works, or at least gets to Start Menu, in Experimental and got past the first mandatory battle in 9.0-4 after I deleted the 0 bytes file:

Steam/steamapps/common/Cthulhu Saves the World/Content/Movies/CSTW_intro2.ogv

AAlleyDismay 2024-12-27 github

Okay, no sometimes it freezes, apparently GStreamer issue?

winegstreamer error: decodebin8: Your GStreamer installation is missing a plug-in.
[...]
Missing decoder: Advanced Streaming Format

steam-107310.log

Proton versions

Launch options

DLLs

Error codes