Fix and improve fast-forward (frame skip)#4989
Conversation
I didn't realize that. Huh. Surely that's not an intentional feature?
You can verify the game speed with |
In the past, multiplayer frameskip did work fine, to any value. If two turtles fight, they might want to fast forward through training. |
|
ok I tested the right branch this time. Singleplayer fast forward is actually perfect. Multiplayer stutters are all still good. (I also found out compiling with And here's the state of fast forward in multiplayer (using Of course, if you have trouble fixing this I don't personally mind, the smoothness of the micro stutter improvement is worth it. |
I'm trying this now on alpha 5192 (the one before #4919). With 1v1 on an empty map, I don't think it even reaches 2x (do note: "Logic FPS" is meaningless here). The speed is very inconsistent too. When returning back to normal speed, the client clock is out of sync and it gets stuck drawing ~40 fps. So, all the findings you posted are an improvement already. Although personally I don't think this "feature" should even exist, at least not in its current state. To make it reliable, there would at least need to be some coordination, and the packet rate needs to remain steady (1 packet per 50ms). So, the whole input stage and packet exchange would need to be skipped. For now though, this patch just fixes the regression. |
Turns out I inadvertently broke frameskip (fast-forward) in #4919. Oops. This will fix it again, and even make it better than before: it now increases the game speed linearly, which makes it work properly with interpolation.