Before this daily build firing this code:
timer.performWithDelay( 5000, function() print('done') end, 1 ) local i = 0 timer.performWithDelay( 10, function() i = i + 1 if i == 500 then print('done2') end end, 500 )
Would result in printing both ‘done’ and ‘done2’ at the same time.
In 2019.3468 because timer is now bound with framerate ‘done2’ is printed few SECONDS!!! later. That denies the purpose of the timer. Now synchronizing any data based on timer is impossible without desynchronization. Also there are problems with using timers and physical bodies because of being bound to frames.
Other issue with having timers bound to frame rate is desynchronization if framerate is unstable/framedrops occur.
Please take a look at this issue and bring back old timer implementation.