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

KTRNG desyncing in loading screen #132

Closed
ScribbleTAS opened this issue Apr 2, 2022 · 2 comments
Closed

KTRNG desyncing in loading screen #132

ScribbleTAS opened this issue Apr 2, 2022 · 2 comments
Labels
Bug Something isn't working KillTheRNG Issue is related to RNG-Manipulation/KillTheRNG Needs Testing Issue can't be reproduced and needs testing
Milestone

Comments

@ScribbleTAS
Copy link
Member

ScribbleTAS commented Apr 2, 2022

Had a problem in the past where TASmod desyncs during the loading screen... Should implement #130 and #131 to test and to debug

@ScribbleTAS ScribbleTAS added Bug Something isn't working KillTheRNG Issue is related to RNG-Manipulation/KillTheRNG Needs Testing Issue can't be reproduced and needs testing labels Apr 2, 2022
@ScribbleTAS ScribbleTAS added this to the Alpha9 milestone Nov 1, 2022
@PancakeTAS PancakeTAS moved this to Todo in TASmod Mar 26, 2023
@PancakeTAS PancakeTAS moved this from Todo to Done in TASmod Mar 26, 2023
@PancakeTAS PancakeTAS removed the Done label Mar 26, 2023
@ScribbleTAS ScribbleTAS moved this from Done to In Progress in TASmod Apr 14, 2023
@ScribbleTAS
Copy link
Member Author

Round 2 of this nasty bug... This is related to #123 which makes this a lot worse than it should...

My brialliant idea was to just pause the recording/playback, whenever the player is not added to the chunk... This turned out to be bad for KillTheRNG, because while recording is paused, killtherng is ticking...

@ScribbleTAS
Copy link
Member Author

This won't be the last time but for now it works...

The changes I've made to get this working:

1. Pausing the server when a player is connecting #153

Without that, the server ticks a few times during the loading screen, advancing Server KTRNG and desyncing it with the client

2. Stop advancing the server seed when the container state is PAUSED

This will make sure both client and server don't advance anything when the client is paused

3. Consistently pause the recording/playback when the world is done loading

Before, whether the recording/playback pauses depended whether the player was added to the chunk (This causes the player to be unable to move). Now, the recording consistently pauses on world load, making everything more stable

I haven't looked at multiplayer yet, which is a whole other can of worms... maybe #153 isn't necessary after all for that but for singleplayer it works

ScribbleTAS added a commit to ScribbleTAS/TASmod that referenced this issue Apr 23, 2023
@ScribbleTAS ScribbleTAS moved this from In Progress to Done in TASmod Apr 23, 2023
ScribbleTAS added a commit to ScribbleTAS/TASmod that referenced this issue Apr 23, 2023
ScribbleTAS added a commit that referenced this issue Apr 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working KillTheRNG Issue is related to RNG-Manipulation/KillTheRNG Needs Testing Issue can't be reproduced and needs testing
Projects
Archived in project
Development

No branches or pull requests

2 participants