TeamRizu / OutFox

The Bug Reporting Repository for OutFox LTS 0.4, Alpha V and Steam Early Access Builds
https://projectoutfox.com
Apache License 2.0
182 stars 3 forks source link

[Game Crash] ScreenDemonstration doesn't like OnePlayerOneSide on non-dance game modes #674

Open DarkBahamut162 opened 1 year ago

DarkBahamut162 commented 1 year ago

Describe the crash

The title is self-explanatory. Potential reason/cause for this has been found and will be explained in the Additional Information segment down below. The crash only happens on 0.4.9, as 0.5.0 (both Steam and Non-Steam) seems to just skip the screen altogether (making this just a [BUG] over there).

How can you reproduce the error?

  1. Switch game modes to anything other than dance
  2. Use any theme that has ScreenDemonstration
  3. Make sure said screen uses AllowStyleTypes="OnePlayerOneSide"
  4. Game crashes on 0.4.9 once going to that screen | On 0.5.0, said screen is just being skipped

Screenshots/Videos

https://www.youtube.com/watch?v=SNmo_6yY3uM (0.4.9 only)

Game Mode

dance

Additional Information

This is an upstream bug since this also happens on SM5/ITGMania. I found the cause in GameManager.cpp by checking SM5's source code and what had been set for the following values:

m_bUsedForGameplay
m_bUsedForEdit
m_bUsedForDemonstration
m_bUsedForHowToPlay

It turns out that only very few singles have been set to true for m_bUsedForDemonstration while all versus ones work/have been enabled. This or something similar might also be the case for OutFox. The following modes have been checked where this happens: pump, smx, be-mu, po-mu. I'm assuming that this is also the case for all other newly introduced game modes in OutFox as well.

tldr: The crash log says the following: "[Project Outfox] Crash Reason: Assertion 'vStylePossible.size() > 0' failed