ValveSoftware / Proton

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

SONIC X SHADOW GENERATIONS (2513280) #8185

Open MattyPixels opened 1 month ago

MattyPixels commented 1 month ago

steam-2513280.log

Compatibility Report

System Information

I confirm:

Symptoms

Opening the Options menu in the Shadow portion of the game on the main menu or in game crashes the game. The Sonic portion works. The rest of the game also seems to work perfectly.

The game works perfectly, options menu included on Steam Deck.

Reproduction

Access the Options in the Shadow portion of the game on the main menu or in game, it will crash right away.

sonic2kk commented 1 month ago

I am also experiencing this crash, but on SteamOS Game Mode it works fine (tested on SteamOS Beta Channel with Proton Experimental). This is only a problem on my Desktop PC, although I did not try SteamOS Desktop Session (but maybe this is a video driver issue/regression rather than a Session issue, from skimming the Proton log, although I'm not an expert).

Proton log of running the game to the crash using Proton Experimental: steam-2513280.log


My understanding of how the game works is, the Sonic Generations portion launches a separate executable (SONIC_GENERATIONS.exe), but the Shadow Generations part is the main game executable (SONIC_X_SHADOW_GENERATIONS.exe). It appears there are some windowing issues on KDE Plasma Wayland 6.2.2 with the Shadow Generations part, but not the separate Sonic Generations executable (the two games use different engines, Hedgehog Engine 1 versus Hedgehog Engine 2).

If you Alt+Tab during the Sonic Generations portion, there is no problem, but the Shadow Generations portion, including the main menu, bugs out when Alt+Tabbing. It will go from fullscreen to a weird window that isn't really a borderless fullscreen window but acts like it is, and then when tabbing again, the window becomes impossible to focus.

I thought that maybe the Options menu crashing was related to some kind of windowing-related problems and perhaps it wasn't able to properly get display information (this caused crashes with some games in the past iirc). But when trying to run this game with GameScope (gamescope version 3.15.9-20-g056b79e (gcc 14.2.1)) I still hit the same crash problem. That was with the GameScope Wayland backend and in a Nested Session, rather than the Embedded Session that SteamOS would use. The GameScope SDL backend currently doesn't function so I can't test if that would work.

CptCookies12 commented 1 month ago

Did some experimenting after seeing some comments on Discussion threads and I think I found the reason the crash consistently happens: there's some kind of issue with the game regarding any resolutions higher than 1080p. Changing my monitor resolution (or using Gamescope) to 1920x1080 fixes the crashing issue and lets me open the settings menu for Shadow. Going back to my native 2560x1440 resolution (or also using Gamescope for anything above 1080) makes the game crash again. None of these issues occur on Sonic's part of the game, likely because that's running on the original Hedgehog Engine that game used while Shadow's part of the game is a separate executable and using Hedgehog Engine 2 (similar to Sonic Frontiers).

GPU: RX 6700 XT 12GB Video driver version: Mesa 24.1.7 Kernel version: 6.11.4-201.fc40.x86_64 OS: "Fedora Linux 40 (KDE Plasma)" (64 bit) Proton version: Proton 9.0-3

sonic2kk commented 1 month ago

Excellent find! I can also confirm when using GameScope at 1080p (gamescope -h 1080 -H 1080 -- %command%) that it works on my setup as described above (https://github.com/ValveSoftware/Proton/issues/8185#issuecomment-2436577937). The crash will occur if using GameScope at 1440p or above.

image

Forcing the game to run at 3840x2160 on Steam Deck in Properties (making sure to tick "Use resolution for internal and external display" if you're running without an external display connected) also results in a crash. Using 1080p or below (including the native 1280x800 resolution) does not result in a crash.

So the root cause does appear to be resolutions above 1080p, and it affects the Linux Desktop across a variety of distributions (CachyOS, Arch, Fedora) and SteamOS if forced to run above 1080p.

To sum up: Shadow Generations will crash when trying to open the Settings menu on a display with a resolution above 1080p. It will open fine on resolutions 1080p or lower.

FehrIsFair commented 1 month ago

If you edit the options in the Sonic part of the game, the options will effect the Shadow part of the game. I'm now running at my Monitor's native res of 1440p. So I'm thinking they're using the same options file or something along those lines.

isaboll1 commented 3 weeks ago

I ran into the same set of issues, however I found that using KDE's X11 session, I was able to edit the settings on a 4K monitor.

Stomern commented 2 weeks ago

There's a recent patch which seems to fix this, apparently the cause of the crash is dropdowns that have more than 32 options. Tested on a KDE Wayland session:

Settings

FehrIsFair commented 2 weeks ago

@Stomern Is this a KDE patch or a patch for the game?

sonic2kk commented 2 weeks ago

This was a game patch