ID:900642
 
Code:
        Logout()
if(quit)
if(!invis) mb_msgout("{Y-->{x [ClassColor][name][Reset] exited [worldname]!", worldmobs)
worldmobs -= src
loggedIn = 0
quit = 0
Save()
del(src)
else
mb_msgout("[name] went linkdead.", oview(0))
linkdead = 1
Save()


CheckLinkDead()
if(!client && !inFight && linkdead)
world.log << "(CHARACTER) [name] went linkdead."
quit = 1
linkdead = 0
Logout()
spawn(10)
CheckLinkDead()


Problem description:
Basically if someone unplugs their internet BYOND is not detecting that the client is missing and wont log them out i even have a proc on the mob that checks for this that is not detecting as well.. and because of this when they relog it rolls back their character because they do not save.
Your problem may be elsewhere. This bug plagued one of the games I used to play all the time and I think the problem there was either that client/New() never returned or client/Del() never returned. I would consolidate your code and check over anything that happens when the user logs in or out.