ValveSoftware / Proton

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

Ground Branch (16900) #5534

Open nPHYN1T3 opened 2 years ago

nPHYN1T3 commented 2 years ago

Compatibility Report

System Information

I confirm:

steam-16900.log

Symptoms

If the game is started offline it just crashes on launch.

Reproduction

Start the game with no network connection, crash.

wunderbar78 commented 2 years ago

System Information

I can confirm the crash with no internet connection. Attached is a log where I launched the game while opensnitch prevented internet access for the proton-runner.

steam-16900-proton-exp-no-internet-crash.log.tar.gz

to verify that the game is not crashing on windows, I booted Win10, launched Steam, deactivated the ethernet connection and launched the game. At first there was a Steam popup saying "Connecting to Steam", but after hitting the X the game launched and worked without issues.

wunderbar78 commented 2 years ago

There is also an issue with a "webview component", I guess from Unreal Engine 4. The game has a screen that can display websites and pictures with a simple https://link.to/image.png or just www.groundbranch.com in the config. https://i.imgur.com/iXezjNI.png (Screenshot taken on Win10) This is already washed out very much and needs to be fixed by the game-devs, but it's usable with dark pictures.

With Proton, If I link a website, there is a loading indicator at first and then a very bright, white screen. https://imgur.com/gd2P6Vy.png https://i.imgur.com/U1tm20F.png (this should be the same as the first screenshot) With a linked picture, it probably loads so fast that I cant see the status indicator and only see the bright screen.

This is a log where I started the game, looked at a screen that should show the website and closed it. steam-16900-proton-exp-washed-out-screen.log.tar.gz proton-experimental with dxvk; I also tried -dx12 parameter and with vkd3d it's the same.

nPHYN1T3 commented 2 years ago

Initially the devs said this was an issue with UE4/SteamAPI (which it is) but back then they said they'd fix it. Comically in a thread 100% about Proton 5 pages in they clued in it was about Proton and pulled the "Not supported, won't fix." schpeel.

I've done a lot of testing and have submitted tons of logs (elsewhere) that show the game crashes when calling the Steam API. If the game can resolve api.steampowered.com it works. For whatever reason how games check the running Steam instance for the API and authorization isn't available to UE4 as Ground Branch has implemented it without resolving the external domain.

I will also add that if you run the game outside of Steam (just with system wine) it will work offline but visually it's a mess. Seems the game uses various Steam hooks and features to correctly choose/load all the shaders and such which on the system WINE just leaves the game broken visually...but it will run offline.

wunderbar78 commented 8 months ago

there is a regression in proton-experimental with the new communitytest (v1034) update. With the latest Proton-experimental or GE-Proton8-24 or higher, whenever I try to connect to my server in a DMZ on my homenetwork, I get a UNetConnection::PendingConnectionLost. on the server and the client crashes to desktop.

Proton8.0-4 or GE-Proton8-23 are working fine.

GroundBranch.log (Client)

[2023.12.24-12.36.18:503][852]LogThreadingWindows: Error: Runnable thread OnlineAsyncTaskThreadSteam DefaultInstance crashed.
[2023.12.24-12.36.18:503][852]LogWindows: Error: === Critical error: ===
[2023.12.24-12.36.18:503][852]LogWindows: Error: 
[2023.12.24-12.36.18:503][852]LogWindows: Error: Fatal error!
[2023.12.24-12.36.18:503][852]LogWindows: Error: 
[2023.12.24-12.36.18:503][852]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION 0x000000000c395080
[2023.12.24-12.36.18:503][852]LogWindows: Error: 
[2023.12.24-12.36.18:503][852]LogWindows: Error: 
[2023.12.24-12.36.18:503][852]LogWindows: Error: Crash in runnable thread OnlineAsyncTaskThreadSteam DefaultInstance
[2023.12.24-12.36.18:508][853]LogExit: Executing StaticShutdownAfterError

Server.log

[2023.12.24-13.36.04:961][841]LogNet: SteamSockets: New connection (1154578628) over listening socket accepted 76561198028560633:27105
[2023.12.24-13.36.14:959][136]LogNet: UNetConnection::PendingConnectionLost. [UNetConnection] RemoteAddr: 76561198028560633:27105, Name: SteamSocketsNetConnection_2147478532, Driver: GameNetDriver SteamSocketsNetDriver_2147482519, IsServer: YES, PC: NULL, Owner: NULL, UniqueId: INVALID bPendingDestroy=0

Proton log: (has bloated to 22MB) steam-16900.log.tar.gz

wunderbar78 commented 8 months ago

After my comment I've seen there is Proton8.0-5-rc and I could test it now and the game runs also fine with that version. The issue is somewhere between 8.0-5-rc and now.

alasky17 commented 8 months ago

@wunderbar78 Could you please get a log of the game crashing on experimental and working on 8.0-5 for comparison - with the following logging channels: PROTON_LOG=+steam,+steamclient,+wininet,+winhttp,+winsock,+iphlpapi,+nsi,+bcrypt,+secur32

If they are too big to upload, starting with at least +steam,+steamclient would be great :)

wunderbar78 commented 8 months ago

these are the logs with PROTON_LOG=+steam,+steamclient,+wininet,+winhttp,+winsock,+iphlpapi,+nsi,+bcrypt,+secur32

40MB uncompressed steam-16900-proton8.0-5-rc-successful-connect.log.tar.gz

25MB uncompressed steam-16900-proton-experimental-crash-on-connect.log.tar.gz

alasky17 commented 8 months ago

@wunderbar78 Thank you for the logs! There was an obvious error in there, and a dev just pushed a fix to the bleeding-edge beta branch. Wehn you get a chance, could you test experimental-bleeding-edge and see if the failure is fixed?

wunderbar78 commented 8 months ago

@alasky17 it's fixed in bleeding-edge, thanks y'all!

wizardlink commented 5 months ago

Hello there! I haven't for about a week been able to play multiplayer, when entering other player's lobbies it fails to connect, when trying to host I can't invite anyone and when opening the server browser it's empty.

Here's my logs: https://drive.proton.me/urls/MM7E17NP08#9vznpH6ClT5s (it's in here since the file is 58MB)

The most interesting lines are these:

2581.688:0130:0134:warn:seh:OutputDebugStringW L"[2024.03.23-07.34.11:273][  0]LogGBGameInstance: Error: UGBGameInstance::CreateSteamLobby() SteamMatchmaking() == nullptr\r\n"
2598.685:0130:0134:warn:seh:dispatch_exception "[2024.03.23-07.34.28:270][807]LogTemp: Error: AGBGameState::UpdateLobbyModList() SteamMatchmaking() == nullptr\r\n"

Not entirely sure what could be the issue at hand.