Nothing is ever guaranteed over network I may be missing something, but I think that, key of this mechanism is to have everything in sync at beginning and end of our “turn”. And we could allow some temporary out-of-sync. We could have six computers, one of which is a low spec laptop. If 5 PCs perform tasks in 20ms, and laptop in 200 ms, then we would have a 180ms lag, and faster PCs should wait until laptop finishes his commands. This is interesting and I think I will implement this and see how it performs.
Anyway, in engine core files I found some interesting things. You can switch engine to fixed timestep by setting GUseFixedTimeStep to true. By default the step is 1/30s, but you can set it to anything with -FPS=x console parameter or by manually setting GFixedDeltaTime. Hope this helps.