Currently there is, as far as I'm aware, two options regarding loop checks :
- world.loop_checks = 0 ; when DM detects an infinite loop, it will ignore it and go on as usual. This is dangerous because it can lead to unexpected crashes which are hard to diagnose and to debug.
- world.loop_checks = 1 ; an infinite loop will just runtime and get switched to the background. In the case of a multiplayer game (ss13), it slows down the server to a crawl until someone manages to fix the problem (for instance, by deleting the instance of the object which is looping infinitely.)
Feature request :
- world.loop_checks = 2 ; if an infinite loop is detected, a runtime is produced and the proc is stopped.
So, if this kind of problem happen, it can still be identified but doesn't cause massive performance issues.
I'm not sure if there is already a way to work around this or if it's not in the design philosophy of byond, but I believe it could be useful.
Dec 7 2018, 7:38 am (Edited on Dec 7 2018, 10:44 am)