Breaking CPU limit change?



  • Game CPU limit used to allow spikes of 5x allocated CPU - this doesn't seem to be a case any more.
    Game.cpuLimit used to return 1500 for me, I used this to abort new pathfinding in the tick and executed cached movements only; Now it is always returning 300.
    Was this an intended change or is this a bug?


  • Dev Team

    Game.cpuLimit value is not guaranteed to be the same all the time, this strongly depends on servers load, in order to keep smooth overall game experience for all players.



  • Yeah, but previously it was usually larger than the actual limit - I assume that it allowed to use more CPU in a tick, then gave you (your limit - overexpenditure from you limit) for the next tick.
    This is not the case any more - it's fixed to the actual CPU limit.


  • Dev Team

    In fact, for players with 100 CPU limit, Game.cpuLimit still allows bursts up to 300 CPU. It just has been lowered for players with 300 CPU limit as 1500 peaks cause issues with overall system performance.



  • I only had a burst from 300 to 500 before, but this change is still majorly breaking for me.

    If we don't have any grace area / token bucket, would it at least be possible to have it show a traceback of where it times out, when it times out? Or, more ideally, throw a catchable error with say a 20ms grace period to handle the timeout error before actually killing the script?



  • This sudden change broke my assault on Azurastar. Guess it's back to the drawingboard, need to optimise stuff.