ValveSoftware / Proton

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

They Are Billions (644930) #495

Open ryanmusante opened 6 years ago

ryanmusante commented 6 years ago

[They Are Billions] Crash does not load

System Information

Recent Failure Reports:


Game update: AppID 644930 "", ProcID 1654, IP 0.0.0.0:0
>>> Adding process 1654 for game ID 644930
GameAction [AppID 644930, ActionID 1] : LaunchApp changed task to WaitingGameWindow with ""
GameAction [AppID 644930, ActionID 1] : LaunchApp changed task to Completed with ""
ERROR: ld.so: object '/home/ryan/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

>>> Adding process 1662 for game ID 644930 
Lahvuun commented 6 years ago

I've managed to run this game in the past with plain wine, here is a relevant winehq thread. Basically, the game required VC++2017, and .NET 4.71 to run, as well as a couple dll overrides and registry edits.

Hope this helps any Proton maintainers.

Rabcor commented 5 years ago

I managed to get it working (steam discussion thread)

Using protontricks I installed dotnet46 (installing a more recent version of it did not work, you can try using winetricks but I suspect it will fail to even get 4.6 installed; may succeed if you set the prefix to windows xp mode though, but you have to change it back afterwards)

Then using the appropriate wine prefix for they are billions, I went to they are billions' install directory and ran WINEPREFIX=/path/to/Steam/steamapps/compatdata/644930/pfx wine msiexec /i SlimDXRuntime.msi

Apparently the only thing proton does not provide that the game needs is dotnet 4.6 or newer and whatever that slimdxruntime does. For anyone wondering, running the game with .net 4.7.2 does not get rid of the issue mentioned in that thread. I doubt vcrun would have an effect on it but haven't tried. The game works, it's fully playable.

It did show to me however that proton fails to properly execute .msi installers, and the above command (msiexec /i installer.msi) would be how to fix that issue. Someone might wnat to make a separate issue for that.

h8672 commented 5 years ago

Actually installs on proton 4.2-9 without any configs. There were 2 problems for me though.

Texts seem to have multiple problems.

Saving and loading games:

Edit

Texts can be fixed with gdiplus. Saving doesn't let you play campaign and ends up with blackscreen and cursor and I cant hear any magnificent sound tracks in cinematics! Oh and you cant select a mayor as it always picks the first one.

Below is my terminal command to install gdiplus.

env WINEPREFIX="/home/advis/.local/share/Steam/steamapps/compatdata/644930/pfx" WINEPATH="/home/advis/.local/share/Steam/steamapps/common/Proton 4.2/dist/bin" winetricks gdiplus

perru commented 5 years ago

With Proton 4.2-9 : Before launching the game the first time, I did : protontricks 644930 --force vcrun2017 dotnet472 gdiplus and WINEPREFIX=/path/to/Steam/steamapps/compatdata/644930/pfx wine msiexec /i SlimDXRuntime.msi

The game run, it's slow to start but it runs ok. Some stutering sometimes, nothing important. Alt+Tab crash the game something like 50% time.

I've some missions not working, like it : https://i.imgur.com/pGAcame.png

Sometimes it loads then blackscreen, I can hear game sounds (click on menu, unites movement...), sometimes it load "ok", i can see the base and my unites but everything is black around the base... The game freeze after some seconds. I can continue to hear game sounds like before with blackscreen...

Other missions allready finished, I don't see any problem.

Can't attach log (600Mo...)

nsivov commented 5 years ago

The game starts and game menu shows up fine for me with Proton 4.11-2 without any additional effort, just Play and let it install SlimDX on first launch. Please retest.

perru commented 5 years ago

Same bug with proton 4.11-2 in the same mission.

Dar13 commented 5 years ago

Using Proton 4.11-2, installed the game, and SlimDX installed successfully.

New issue seems to be an error pops up saying that save games couldn't be created. There are a bunch of System.IO.IOException exceptions in the Proton logs as well.

steam-644930.log

nsivov commented 5 years ago

@Dar13 when does this pop up? I was able to "save backup" and "save and exit" without errors.

Dar13 commented 5 years ago

@nsivov I'm not getting that error on Proton 4.11-3 anymore. I'll try playing out a few missions now, might be able to corroborate/get more data for your issue.

Dar13 commented 4 years ago

Finally got back to playing this game, can corroborate that winetricks gdiplus is needed to fix the text issues. Otherwise haven't run into any issues yet, but I have less than an hour played.

This is on Proton 4.11-7.

Dar13 commented 4 years ago

I updated to Proton 4.11-8 and now the game won't launch at all. Validated and even did a full reinstall and still doesn't work. This is after protontricks 644930 gdiplus which fixes the text problem on Proton 4.11-7. steam-644930.log

Looking at the log, appears that the .NET 4.6 problem is back:

2272.110:0031:0032:trace:mscoree:parse_supported_runtime L"v4.0"
2272.110:0031:0032:fixme:mscoree:parse_supported_runtime sku=L".NETFramework,Version=v4.6" not implemented
2272.110:0031:0032:trace:mscoree:ConfigFileHandler_endElement (null) L"supportedRuntime" L"supportedRuntime"
2272.110:0031:0032:trace:mscoree:ConfigFileHandler_endElement (null) L"startup" L"startup"
2272.110:0031:0032:trace:mscoree:ConfigFileHandler_endElement (null) L"configuration" L"configuration"
2272.110:0031:0032:trace:mscoree:ConfigStream_Release (000000000008BFF0) ref=1
2272.110:0031:0032:trace:mscoree:ConfigStream_Release (000000000008BFF0) ref=0
2272.110:0031:0032:trace:seh:NtRaiseException code=c0000005 flags=0 addr=0x641c91de ip=641c91de tid=0032
2272.110:0031:0032:trace:seh:NtRaiseException  info[0]=0000000000000000
2272.110:0031:0032:trace:seh:NtRaiseException  info[1]=0000000000000008
2272.110:0031:0032:trace:seh:NtRaiseException  rax=0000000000000000 rbx=000000000008c060 rcx=00000000000100a8 rdx=00000000000100b0
2272.110:0031:0032:trace:seh:NtRaiseException  rsi=0000000000000008 rdi=000000000008bf70 rbp=0000000000000001 rsp=000000000022f8a0
2272.110:0031:0032:trace:seh:NtRaiseException   r8=0000000000000002  r9=0000000000000000 r10=0000000000110000 r11=0000000000000246
2272.110:0031:0032:trace:seh:NtRaiseException  r12=000000000022f950 r13=000000000022fb60 r14=0000000000400000 r15=0000000000000000
2272.110:0031:0032:trace:seh:RtlVirtualUnwind type 1 rip 641c91de rsp 22f8a0

Once dotnet46 is installed via protontricks/winetricks then the game starts up as expected.

Dar13 commented 4 years ago

I've finally progressed far enough in the game to experience the same bug that @perru was getting where the missions "The Mines of the Raven" or the swarm between "The Coast of Bones" and "Cape Storm" load in, but the environment is severely darkened to the point where the game is unplayable. Had to turn off "+seh" in the WINEDEBUG variable to get a usable log (otherwise it was hundreds of MBs), but enabled DXVK/D9VK's debug (not that it shows much here): steam-644930.log

Dar13 commented 4 years ago

The above error occurs in both WineD3D and D9VK and looks like the screenshot in both cases as well. Screenshot_20191128_233641

lehtoj commented 4 years ago

I would like to report that in Proton 5.0 They are Billions works out of the box without doing protontricks. In fact, using protontricks to install anything but gdiplus causes the game to frequently crash. Gdiplus fixes font rendering, although the game does work without it.

If your game is frequently crashing in Proton 5.0, delete your steamapps/compatdata/644930 directory and start fresh, don't install anything but gdiplus.

Remaining issues are: 1) Some maps in the campaign appear like Dar13's screenshot above. 2) If the game manages to save game during problem 1), the savegame becomes unusable as only mouse cursor will render on load, and the game will crash a moment later. 3) Must use lowest possible graphics settings and enable fast timers optimization to reduce lag during gameplay and the game performance getting worse over time. 4) Save games becoming corrupted on occasion and cannot be used. Not sure if this is a problem with Wine/Proton or just the game in general.

nsivov commented 4 years ago

@lehtoj what are those font rendering issues that native gdiplus fixes? Could you please attach good and bad screenshots of those?

jonasbro commented 4 years ago

@nsivov Here are some screenshots with and without gdiplus installed. Without gdiplus the text is not fully visible, seems cut in half or rendered larger than the box that would fit it.

Loading screen without gdiplus loading_screen_text_cut_in_half

Loading screen with gdiplus loading_screen_with_gdiplus

Sawmill without gdiplus building_sawmill_text_cut_in_half

Sawmill with gdiplus sawmill_with_gdiplus

lehtoj commented 4 years ago

I've attached screenshots of differences with and without gdiplus.

Click for screenshots

![map_with_gdiplus](https://user-images.githubusercontent.com/284658/75097073-09300080-55af-11ea-8e2a-b02f9ee96bc4.png) ![map_without_gdiplus](https://user-images.githubusercontent.com/284658/75097074-0af9c400-55af-11ea-9683-b796b9744e86.png) ![news_with_gdiplus](https://user-images.githubusercontent.com/284658/75097076-0c2af100-55af-11ea-86c8-99387b70d6ec.png) ![news_without_gdiplus](https://user-images.githubusercontent.com/284658/75097077-0cc38780-55af-11ea-8e3b-8cbf69308b03.png) ![resource_with_gdiplus](https://user-images.githubusercontent.com/284658/75097078-0df4b480-55af-11ea-9331-da26c607f847.png) ![resource_without_gdiplus](https://user-images.githubusercontent.com/284658/75097080-0f25e180-55af-11ea-8079-ab87f147bf5e.png)

kkartaltepe commented 2 years ago

I'm not sure if this is nvidia specific, but the game has immense performance regressions rendering it unplayable at times on

4.2-9 is the last playable version. After which moving the mouse around introduces rendering stalls for 100-1000ms. This can be confirmed in mangohud on the title screen if you just move your mouse around (generally the newer you go the worse the stalls and the worse performance)

The game also no longer starts on proton experimental at all.

kkartaltepe commented 2 years ago

Oh and for others trying to play this game, Proton versions prior to 5.13-6 dont properly skip the slimdx and directx installers on start. However, you can simply kill the install process (which will hang and never complete anyway) to progress past that setup step successfully.

For example during step 1, ps -ef | grep Slim and kill the associated installer. Then during step 2, ps -ef | grep DX and kill the associated installer.

kkartaltepe commented 2 years ago

Well there is a lot going on here I guess, first and foremost it seems I was affected by ValveSoftware/steam-runtime#312 (comment) which resulted in the reduced performance of the game as I happened to have the vulkan drivers for intel and my igpu enabled. Causing the largest of the performance issues.

5118 then affected my ability to test with different proton versions and likely influenced if/how they survived the slimdx and directx installs. Clean prefixes appear to do better with actually making through the install without needing to kill the installers.

in a clean prefix actually versions before 5.13-6 dont install/run properly, likely they worked after slimdx/dx were installed correctly in later prefixes. However the performance regression seems somewhat real but I pinned it wrong, since its not really about 4.2-9 but wined3d.

wined3d gives perfectly consistent framerate during the menu while dxvk hitches (progressively worse from 5.10 to 6.3) when moving the mouse. Its not unplayable on my nvidia but unplayably bad on the intel -> nvidia broken setup I had when testing. Actual performance in game is somewhat different with dxvk generally being faster slower and it retains the hitches it had on the menu making the experience worse than the consistent framerate of wined3d.

kkartaltepe commented 2 years ago

And for anyone else protontricks 644930 gdiplus fails to install gdiplus on modern prefixes it seems. You can work around this by deleting the symlinks that fails to copy over. The text then renders somewhat normally, I still get missing blocks in difficulty and the drop shadow for some text seems incorrect. But these are easily ignored.

kampfwuffi commented 2 years ago

Savegames still do not load. Always quit with an error "could not load SavegameXY..." Steam Proton 6.3-8

Any fix for Steam users?

rtentser commented 2 years ago

The game randomly freezes during campaign intro.

GPU: RX 6600
Driver/LLVM version: Mesa 22.1.4
Kernel version: 5.18.14
Proton version: proton experimental.

Log (clean prefix): steam-644930.log

And for anyone else protontricks 644930 gdiplus fails to install gdiplus on modern prefixes it seems

Works for me.

which will hang and never complete anyway

Works for me. At least an installation successful.

UPD: With PROTON_NO_FSYNC=1 intro didn't freeze, but the game crashes after character selection. Log (prefix with gdiplus): steam-644930.log

sTiKyt commented 1 year ago

Still broken fonts but protontricks 644930 --force vcrun2017 dotnet472 gdiplus gives errors if i try to run it

sTiKyt commented 1 year ago

Any progress on this?