diff --git a/src/Etterna/Models/HighScore/HighScore.cpp b/src/Etterna/Models/HighScore/HighScore.cpp index 07a85f30f9..918578928a 100644 --- a/src/Etterna/Models/HighScore/HighScore.cpp +++ b/src/Etterna/Models/HighScore/HighScore.cpp @@ -1262,6 +1262,14 @@ HighScore::RescoreToWife3(float pmax) -> bool return false; } + if (pmax <= 0.F) { + m_Impl->fSSRNormPercent = 0.F; + m_Impl->fWifeScore = 0.F; + m_Impl->fWifePoints = 0.F; + m_Impl->WifeVersion = 3; + return true; + } + // SSRNormPercent auto p4 = 0.F; // WifeScore for HighScore Judge diff --git a/src/Etterna/Models/Misc/StageStats.cpp b/src/Etterna/Models/Misc/StageStats.cpp index 37d5996d64..3f898a4357 100644 --- a/src/Etterna/Models/Misc/StageStats.cpp +++ b/src/Etterna/Models/Misc/StageStats.cpp @@ -607,11 +607,8 @@ FillInHighScore(const PlayerStageStats& pss, NoteDataUtil::TransformNoteData(nd, *td, po, style->m_StepsType); GAMESTATE->m_iStageSeed = tmpSeed; } - auto maxpoints = static_cast(nd.WifeTotalScoreCalc(td)); - - // explode the game if something broke - ASSERT(maxpoints > 0); + auto maxpoints = static_cast(nd.WifeTotalScoreCalc(td)); if (pss.GetGrade() == Grade_Failed) { hs.SetSSRNormPercent(0.F); } else {