Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] Items running on a cycle Desync due to inconsistent cutscene skip time. #15

Open
Sewer56 opened this issue Jun 6, 2021 · 0 comments
Assignees
Labels
bug Something isn't working

Comments

@Sewer56
Copy link
Owner

Sewer56 commented Jun 6, 2021

Objects in the game world which run on a cycle may be desynced during Netplay sessions because players receive the skip intro message at different times.

Potential Solutions

Fast Restart Stage & Frame 1 Skip

Possibly the fastest solution given how cheap restarts are.

Fast Restart is also already implemented at ObjectLayoutController.
All you would have to do is flip the _skipRequested flag in RaceIntroSync.cs.

Synchronizing time post restart might be a concern, however this is currently handled by the RNG synchronizer (Random.cs). However, you would need to rewire the hook calling OnRaceSkipIntro to distinguish between a skip and normal start. In addition, screen face-in effect would need to be removed.

Note: Saying "Skip at Frame X" is illegal, because a player might receive the message late.

Disable the Intro Cutscene Skip Button.

An extremely simple but effective solution.
But also might annoy players.

Non-solutions

Reload Object Layout

This is currently a non-solution as I do not know how to unload the collision from objects.

@Sewer56 Sewer56 added the bug Something isn't working label Jun 6, 2021
@Sewer56 Sewer56 self-assigned this Jun 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant