aboutsummaryrefslogtreecommitdiff
path: root/compile
diff options
context:
space:
mode:
authorGravatar Hayden K <imaciidz@gmail.com> 2025-04-07 16:18:35 -0400
committerGravatar Michael Smith <mikesmiffy128@gmail.com> 2025-04-07 22:35:53 +0100
commit25838ab4eb1fc94f59186cb24b75f440f9062f9a (patch)
tree4dfcd7fe9fa686133ce8d050596c38a02ae6c3b0 /compile
parent58b495650f7613cdebfe78fff9de2b99556f1998 (diff)
downloadsst-25838ab4eb1fc94f59186cb24b75f440f9062f9a.tar.gz
sst-25838ab4eb1fc94f59186cb24b75f440f9062f9a.zip
Fix the infamous Swamp Fever "god mode glitch"
Turns out this was fixed in version 2112 (October 2012), so it was fairly easy to isolate in Ghidra (I had previously thought this was fixed by TLS). The CDirector::FinaleEscapeState member is used in CDirector::IsFinaleWon (and maybe another function, I don't remember). Prior to Valve's fix, the value was never reset to 0 after finishing a campaign, so when the Swamp (or Crash Course) "minifinale" events ran, the game would behave as though the player was entering the end-of-finale cutscene and block votes, make players invincible etc. 2112 fixed this bug by setting the member back to 0 in CDirector::Reset, so here we just set it to 0 when quickreset is used, since that is essentially the recommended way to start a run at this point. Now co-op hosts won't need to restart their game after finishing a campaign anymore!
Diffstat (limited to 'compile')
0 files changed, 0 insertions, 0 deletions