ID:264649
 
Code:
Logout()
world << "<b><font face = times new roman><font color = red><u>Information</u>:<font color = green>[usr](<font color = blue>[usr.specialtitle]<font color = green>)<font color = yellow> has <u>left</u> the combat!"
world<<output("<b><font face = times new roman><font color = red><u>Information</u>:<font color = green>[usr](<font color = blue>[usr.specialtitle]<font color = green>)<font color = yellow> has <u>left</u> the combat!","Room")
if(usr.inroom == 1&&usr.inmatch==0)
for(var/mob/M in world)
if(M<>src)
if(M.playerspot > src.playerspot)
M.playerspot-=1
for(var/mob/M in world)
if(M.roomowner == usr.roomowner&&M.roomowner<>null||M.roomowner == usr.roomwatching&&M.roomowner<>null||M.roomwatching == usr.roomwatching&&M.roomwatching<>null)
M << sound('Select.wav')
M<<output("<font face = times new roman><font color=green><font color=yellow> [usr] has left!","Room")

src.UpdateRoom()
spawn(1)
del(usr)


Problem description: I'm working on my new game and for some reason it does really random errors after I reboot and by errors i mean like procs not finishing and stuff like that. Most of the time it will just crash once a fight starts. Think it might have anything to do with my logout code?

What procs aren't finishing? How do you determine they just "aren't finishing?" Also, if the game crashes generally when fights start, maybe you should post the relevant code snippets (i.e.: the code that handles "fights" and "starting fights").

My understanding of world.Reboot() is that it preserves the connections, deletes the world (literally), creates a new one, and then attempts re-process the connections (connecting them to clients and such). Pretty much the same as starting the game up a second time and having everyone join.

I know I've had problems with Reboot() in the past due to modifying some functions, but I can't recall exactly what.

EDIT: How did you determine mob/Logout() might be the cause, by the way? Did you try removing it and it worked fine?
In response to Keeth
Ok I think I found the main problem Its in the proc that updates the HUDS but If this dosnt work im gonna redo the proc or show you what i have for it
You should not be using usr in procs. ESPECIALLY Logout().