Fix GameConditionManager.MapBrightnessTracker (Unnatural Darkness) desyncs #453
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
GameConditionManager.MapBrightnessTracker:Tick
usesTime.deltaTime
, the value of which will be different between the players. With similar FPS they'll be very close to one another, but if there's a big change between FPS values (for example, 60 and 144) the issue will be much bigger.The issue with
MapBrightnessTracker
is the map will get darker at a different rate for each player - in one of my tests, the client finished the transition 10 ticks faster than the host.The fix here is rather simple - replace
deltaTime
with a constant value of1 / 60
or0.166666...
to ensure each 60 ticks in-game will be treated as a second, no matter the game speed.