stackcollision / GardenConquest

A new conquest game mode for Space Engineers
6 stars 7 forks source link

Cleanup timers sometimes fail to trigger expiration callback #75

Open zrisher opened 9 years ago

zrisher commented 9 years ago

As discussed, sometimes timers will fail to trigger the expiration method. Demonstrated in https://github.com/zrisher/GardenConquest/tree/derelict-timer-bugshow with a copy of the current world.

zrisher commented 9 years ago

I'm starting to think this happens because state is saved every 5 minutes and cleanup increments are usually set to increments of 5 min. State save happens first, just before, so the timers are loaded as expired but their internal timers are discarded, so the callback never actually gets triggered.