runtime error: bad del
proc name: Instant Transmission (/mob/learn/verb/Instant_Transmission)
source file: Instant Transmittion2.dm,108
Undefined variable /obj/x10_kame/var/insz
proc name: Exited (/turf/Floors/Safe_Zone/Exited)
source file: Floors.dm,132
runtime error: undefined variable /obj/x10_kame/var/e_db_1
proc name: Entered (/turf/Floors/Safe_Zone/Entered)
source file: Floors.dm,120
Undefined variable /obj/x10_kame/var/insz
Warning: further proc crash messages are being suppressed to prevent overload...
Undefined variable /obj/Distructo_Disk/var/insz
Undefined variable /obj/Distructo_Disk/var/insz
Undefined variable /obj/Distructo_Disk/var/insz
Undefined variable /obj/Distructo_Disk/var/insz
Problem description:Alright, before I begin, I know what variables are and how they work in the code. I've also fixed other runtime errors, but I can't seem to get to the bottom of this one. When I run the game, its working perfectly fine and all for hours sometimes (it actually stayed up running all night yesterday), but sometimes theres a huge lag spike and the server crashes. Within minutes the server is back up. At first we(our team) blamed it on the server, which is Virpus, because the VPS was also offline when the major hour long crashes happened. But it got progressively worse since the last update, so i decided to check the game logs. Theres A LOT of the "Undefined variable /obj/[different object names]/var/insz, and quite a few "proc name:Entered/Exited". While reading through the entire log, I found only one line that says, "Warning: further proc crash messages are being suppressed to prevent overload...". Now I am led to believe that the server crashing has to do with runtime errors. Any ideas on what I can do to fix this? Any help will be greatly appreciated. Thank you.
Entered(mob/PC/M)
if(M.e_db_1==1||M.e_db_2==1||M.e_db_3==1||M.e_db_4==1||M.e_db_5==1||M.e_db_6==1||M.e_db_7==1)
M<<"<font color=red><b>You are being punished for attempting to bring dragonballs into the SZ!</font color></b>"
world<<"<font size = 3><font color = red><b>[M] has been Automatically Bitch Slapped for attempting to bring dragonballs into the SZ!"
AutoBS(M)
if(M.buku)
M.buku = 0
M.density = 1
M.doing = 0
M.icon_state = ""
return
M.insz=1
Exited(mob/PC/M)
M.insz=0
mob/var/insz=0
(And Ill include the whole Instant Transmission since its marking it as another runtime error)
mob/var/it_blocked = 0
var/list/This_is_what_i_did = list()
mob/var/itable = 0
mob/learn
verb
Instant_Transmission()
set category = "Techniques"
set name = "Instant Transmission"
if(src.doing)
src << "You are already doing something!"
return
if(src.dead)
src << "You are dead."
return
if(src.buku)
return
if(src.dead)
return
if(src.bslapped)
return
if(src.it_lock)
src << "Cannot use this Technique at his time"
return
if(src.ki_lock)
src << "Cannot use this Technique at his time"
return
var/list/ITMenu = list()
var/list/NITMenu = list()
for(var/mob/M in world)
if(!M.client) continue
if(M.name != usr.name)
ITMenu.Add(M)
for(var/mob/N in world)
if(N.itable == 1)
NITMenu.Add(N)
switch(alert("Who would you like to IT to?","Instant Transmission","NPCs","Players","Cancel"))
if("NPCs")
var/mob/N = input("Which NPC would you like to IT to?", "",text) as null | anything in NITMenu
if(!N)return
if(istype(N,/mob/NPC))
if(usr.it_lock == 0)
if(usr.dead == 0)
if(usr.e_db_1==1||usr.e_db_2==1||usr.e_db_3==1||usr.e_db_4==1||usr.e_db_5==1||usr.e_db_6==1||usr.e_db_7==1)
if(!(N.z==1))
usr<<"<font color=red><b>You cannot IT outside the planet with the dragonballs!</font color></b>!"
return
if(N.insz==1)
usr<<"<font color=red><b>You cannot IT to someone that is in the safe zone</font color></b>!"
return
if(usr.n_db_1==1||usr.n_db_2==1||usr.n_db_3==1||usr.n_db_4==1||usr.n_db_5==1||usr.n_db_6==1||usr.n_db_7==1)
if(!(N.z==2))
usr<<"<font color=red><b>You cannot IT outside the planet with the dragonballs!</font color></b>!"
return
usr.icon_state = "IT"
sleep(6)
usr.icon_state = ""
usr.x = N:x
usr.y = N:y-1
usr.z = N:z
usr.icon_state = "IT"
sleep(6)
usr.icon_state = ""
else
return
if("Players")
var/mob/M = input("Who would you like to IT to?","Instant Transmission",text) as null | anything in ITMenu
if(!M) return
if(istype(M,/mob))
if(M.it_lock == 0)
if(usr.it_lock == 0)
if(usr.dead == 0)
if(M.dead == 0)
if(!M.GMLevel)
if(!M.it_blocked)
if(M.z==11 || M.z==12 || M.z==9 || M.z==3 || M.z==15)
src << "You cannot seem to get a clear lock on [M]'s energy signal..."
return
if(M.powerlevel<=M.powerlevel_max/10)
src << "You cannot seem to get a clear lock on [M]'s energy signal..."
return
if(usr.e_db_1==1||usr.e_db_2==1||usr.e_db_3==1||usr.e_db_4==1||usr.e_db_5==1||usr.e_db_6==1||usr.e_db_7==1)
if(!(M.z==1))
usr<<"<font color=red><b>You cannot IT outside the planet with the dragonballs!</font color></b>"
return
if(M.insz==1)
usr<<"<font color=red><b>You cannot IT to someone that is in the safe zone!</font color></b>"
return
if(usr.n_db_1==1||usr.n_db_2==1||usr.n_db_3==1||usr.n_db_4==1||usr.n_db_5==1||usr.n_db_6==1||usr.n_db_7==1)
if(!(M.z==2))
usr<<"<font color=red><b>You cannot IT outside the planet with the dragonballs!</font color></b>"
return
usr.icon_state = "IT"
sleep(6)
usr.icon_state = ""
usr.x = M:x
usr.y = M:y-1
usr.z = M:z
view(6) << "<font size=1><B>[usr.name] appears from nowhere!"
usr.icon_state = "IT"
sleep(6)
usr.icon_state = ""
del(M in ITMenu)
return
else
return
if(M.GMLevel >= 1)
src << "You cannot seem to get a clear lock on [M]'s energy signal..."
return
if("Cancel")
return