Skip to content

bugfix(skirmish): Prevent mismatch in replay playback by restoring slot setup before replay creation - #3200

Draft
Caball009 wants to merge 2 commits into
TheSuperHackers:mainfrom
Caball009:Caball009/bugfix_seed_values_restarted_game
Draft

bugfix(skirmish): Prevent mismatch in replay playback by restoring slot setup before replay creation#3200
Caball009 wants to merge 2 commits into
TheSuperHackers:mainfrom
Caball009:Caball009/bugfix_seed_values_restarted_game

Conversation

@Caball009

@Caball009 Caball009 commented Aug 25, 2026

Copy link
Copy Markdown

#2373 broke replays of restarted skirmish games again, making them mismatch 100% of the time. This PR fixes that.

The issue is that restoring the original slot data (color, position and faction) in GameLogic::tryStartNewGame happens too late because the RecorderClass update runs first. So for restarted games, a new replay is created with incorrect data. That's why I refactored the code, extracted it to a separate function and call it from both places.

TODO:

  • Replicate to Generals.

@Caball009 Caball009 added Bug Something is not working right, typically is user facing Major Severity: Minor < Major < Critical < Blocker Gen Relates to Generals ZH Relates to Zero Hour ThisProject The issue was introduced by this project, or this task is specific to this project labels Aug 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Bug Something is not working right, typically is user facing Gen Relates to Generals Major Severity: Minor < Major < Critical < Blocker ThisProject The issue was introduced by this project, or this task is specific to this project ZH Relates to Zero Hour

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant