Weird issue with UGameplayStatics::SetGlobalTimeDilation

I’m seeing really weird behavior with UGameplayStatics::SetGlobalTimeDilation in the promoted branch (with the HEAD at commit 3381c214799b9206b8a62398babc5278e078b106).

If we call UGameplayStatics::SetGlobalTimeDilation(0.f) then everything slows down (because, as the message in the output log states, “Time Dilation must be between 0.0001 and 20. Clamping value to that range.”). That’s fine, that’s not the bug.

The bug is that doing this slowly decreases the frame rate by slowly increasing the amount of time spent in each game loop (seen using “stat unit”). For instance, I’m seeing the game time starting at ~2.9ms and, after calling UGameplayStatics::SetGlobalTimeDilation(0.f) and waiting about 30 seconds, it’s currently taking 34ms.

That’s new behavior since 4.7 and I haven’t spent any time tracking down what’s happening yet, I just wanted to log the bug here and I’ll update it when I find out something more.

Hey Neil.Griffths-

Thanks for letting us know about this issue. The testing for the promoted build is not as extensive as the testing for a release build and as such there are at times bugs in promoted that will be resolved by release. Let us know if you if you see the same behavior in the releases branch or in a project created from the binary Launcher. If so please also include the steps you used to test this.