ID:147827
 
This is not a piece of code I actually use, but here's the problem.

The code:
obj
ssaura
icon = 'ssaura.dmi'
icon_state = "aura"

mob
verb
Transform()
set category = "Transform"
usr.overlays += /obj/ssaura
sleep(25)
usr.overlays -= /obj/ssaura

Sometimes, when you have a OBJ overlay or underlay on you at the moment and you log out, and relog. It will not go away if you put usr.overlays -= ssaura, not matter how many times you put that there it will not go away.

Is there anyway to fix this or is this a BYOND bug?
What you can do as a workaround is every time you add something to overlays or underlays, also add it to a seperate list belonging to the mob. Then every time before saving, remove everything from the overlays and underlays lists, and after saving, and when loading, just add the overlays and underlays from the two other lists.
put this everytime you login

mob
Login()
usr.overlays -= /obj/ssaura

same thing with underlays. try that