-
Notifications
You must be signed in to change notification settings - Fork 85
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
[Replays] Permanent Status (BKB, invis, smoke) #53
Comments
When you rewind or fast forward there's a huge burst of sound. |
Can someone share a matchID with some good examples of this? I think this bug happens on each individual modifier/effect that has the problem and needs to be corrected in the code for each one, so some specific examples would be really helpful. Thank you! |
Game ID: 6582012262 (Which I also believe is the game shown in OP's screenshot. If you skip ahead past -0:36, either by adding +10s from -0:46 or by adding +60s from "-1:36", Underlord will appear to be permanently affected by Smoke. Note that in the unaltered replay, there is NO smoke used. The bug in this instance applies a smoke effect to Underlord, Rubick and Windranger. This is present both visually on the hero model and as a buff on the HUD. Additionally: I've tested this 3 times in the following way:
Some thoughts: This bug seems to 'pull' buffs from some other time in the replay. I'd guess it's from the same time for all heroes, as multiple heroes are affected by Smoke at the same time. If we were to look through the replay for a game moment where all these heroes have these buffs organically, we could find where this bug is 'pulling' the buffs from, so to speak. |
I have looked through the replay and found the time at which these buffs occur organically. Now for the final piece of this puzzle: If at any point in the replay, you decide to drag the timeline back all the way to the beginning, you will see the time -0:15:36. Seems familiar? My attempt to visualize this: Summary: The start of the replay is at -15m36s game-time, If you skip towards -0:36 game-time, the replay bugs out and grants heroes a buff they should've received 15 minutes later. Is there some piece code where the wrong 'variable' is used, game-time vs replay-time (in my terms)? I can't phrase this properly, unfortunately my programming MMR is Herald 5. |
This should happen across every replay. This applies to visual effects like the ones mentioned and just the status icons (Invoker affected by 6wex, 2x Ring of Aquila) |
Thank you so much for the repro cases and the analysis. Turns out I was wrong about the case-by-case nature of the bug - it was systemic.
The buff network structure in a replay had data "from the future" that was incorrectly getting applied when you skipped around. Of course this is impossible during a normal game (modifiers from the future haven't been created on the server yet) so it only caused problems in replays. It's certainly possible there are more bugs here with modifiers vs. replays, but the ones mentioned in this issue are fixed locally with my change, and it certainly explains the behavior. This fix will ship in the next hotfix (likely later today). Thanks for the bug report! |
Glad to help! |
Replays are bugged when you jump around the timeline which gets you stuck with permanent effects for things like BKB, smoke, invisbility, ...
Very annoying for any type of content creation (very often present in short clips by people on reddit/youtube) and simply just watching replays.
Experienced on Windows (DirectX) and Linux (Vulkan).
Example: Underlord currently is perma smoked.
The text was updated successfully, but these errors were encountered: