ID:135290
 
I've been encountering some world freezes in my game. Here's a description. I don't know what's wrong with it though.

The game is hosted on a remote UNIX Shell server. I startup the game through PuTTy. It stays up a few hours, and sometimes, it just suddenly freezes. I can change the tabs on the stat panels, and any animated turfs on the map is still moving and whenever someone ingame logs out, it displays a "user logs out" messege so that means the world is still returning a ping and it didn't actually completely freeze. It could be a my Logout() proc that is causing this but I'm not really sure. Does anyone encounter this game? My game has only 1 infinite loop which is a global infinite loop setted as a background process as a "spawn while()". I've also put sleep_offline on to save CPU when noone is on the world and also turned off loop_checks.
Well no wonder you can't track down your problem--you turned off the only means of analyzing it!

NEVER turn off world.loop_checks. It's there to protect your game from itself. In a worst-case scenario it will generate a debug message that will point out the spot of the problem.

Lummox JR
Does your game generate icons dynamically? I keep running into a bizarre BYOND bug when creating too many new /icon datums in a short period of time. Many of the game features freeze up and sleeping procs cease, but the game continues to run in several ways. The worst part is that BYOND only occasionally catches and reports the bug.

If this is a possible source of your problem, I can offer you my icon caching routines. Instead of creating a new icon and manipulating it every time, the proc checks a cache file and reads the icon from there. It only needs to build a particular icon the first time that it is used on a particular computer.