This is the death proc all the way to line 488 which is the line we fixed,


mob
proc
Death(mob/M)
if(!src)
return
if(!M)
return
if(src.npc)
src.health = src.mhealth
if(src.ispedal)
src.health = src.mhealth
if(src.safe)
src.health = src.mhealth
if(src.stype == "Zaraki"&&src.health <= 0)
src.zarrandom = rand(1,2)
if(src.zarrandom == 1)
if(src.health >= 1)
return
view(8) << "<b>[src] grins as his reiatsu and strength goes off the charts...!"
view(8) << "<b>[src]: Now we're having fun!!!!!!!!!!!"
src.health = src.mhealth/2
src.attack *= 2
src.rei *= 2
return
if(src.stype == "Shinji"&&src.inshikai ==1&&src.health <= 0)
src.shinrandom = rand(1,5)
if(src.shinrandom == 1)
if(src.health >= 1)
return
view(8) << "<b>[src]: Whats wrong? Heh, too much for ya?"
src.health = src.mhealth/4
return
if(src.shinrandom == 2)
if(src.health >= 1)
return
view(8) << "<b>[src]: What a fool..."
M.health = 0
M.Death(src)
src.health = src.mhealth
if(src.stype == "Nnorita"&&src.health <= 0&&src.inshikai)
src.nnoritarandom = rand(1,4)
if(src.nnoritarandom == 2)
if(src.health >= 1)
return
src.health = src.mhealth
return
if(src.stype == "Nnorita"&&src.health <= 0&&src.inbankai)
src.nnoritarandom = rand(1,2)
if(src.nnoritarandom == 2)
if(src.health >= 1)
return
src.health = src.mhealth
if(src.stype == "Uliquiorra"&&src.health <= 0&&src.inbankai)
src.ulirandom = rand(1,2)
if(src.ulirandom == 1)
if(src.health >= 1)
return
view(8) << "<b>[src] regenerates..."
src.health = src.mhealth
return
if(!src)
return
if(!M)
return
if(src.npc)
src.health = src.mhealth
if(src.ispedal)
src.health = src.mhealth
if(src.safe)
src.health = src.mhealth
if(src.zab)
src.health = src.mhealth
if(src.enemy)
M.hollowprotection = 0
if(src.tourny == 1&&src.safe == 1)
return
if(src.zab)
src.health = src.mhealth
if(src.enemy)
M.hollowprotection = 0
if(src.quest2mob == 1)
src.deaths += 1
M.kills += 1
usr.quest2 = 0
M.quest2done = 1
M.mattack = src.mattack*1.5
M.attack = src.mattack*1.5
M.mhealth = src.mhealth*1.5
M.health = src.mhealth*1.5
M.mrei = src.mrei*1.5
M.rei = src.mrei*1.5
M.reiatsu = src.mrei*1.5
M.mdefence = src.mdefence*1.5
M.defence = src.mdefence*1.5
M.loc = locate(73,29,5)
world << "Quest Info: [M] has slain the Shinigami Captain, Kenpachi Zaraki and saved Ichigo!"
if(src.vailast&&src.health <= 0)
src.health = 16000
if(usr.race == "Shinigami")
world << "<b><font color = aqua>Race Info: [M] is now a Vaizard!"
M.race = "Vaizard"
M.squad=""
M.status=""
M.verbs += /mob/special/verb/Inner_Mode
usr<<"You have been granted an extreme source of power.."
world<<"<font color = lime>[M] has learned to control their Inner Hollow!"
if(usr.race == "Bounto")
world << "<b><font color = aqua>Race Info: [M] is now a Bountard!"
M.race = "Bountard"
if(usr.race == "Inoue")
world << "<b><font color = aqua>Race Info: [M] is now a Inozard!"
M.race = "Inozard"
M.verbs += new /mob/vaizard/verb/mask()
M.verbs += new /mob/Vaizard/verb/Toggle_Takeover_System()
M << "<b>Your health got boosted by 500000!"
M.mhealth += 500000
M << "<b>Your reiatsu got boosted by 300000!"
M.mrei += 300000
M << "<b>Your attack got boosted by 80000!"
M.mattack += 80000
M << "<b>Your defence got boosted by 80000!"
M.mdefence += 80000
M << "<b>Your reiatsu power got boosted by 80000!"
M.reiatsu += 80000
M.client.screen += new/obj/Cero
M.verbs += /mob/Vaizard/verb/Vaizard_Hangout
M.verbs += /mob/Kun6/verb/Extreme_Cero
switch(input("Which hollow mask do you want?)", text) in list ("Ichigo","Hiyori","Shinji","Love","Mashiro","Kensei","Hachigen"))
if("Ichigo")
M.vaizardmask = "Ichigo"
if("Hiyori")
M.vaizardmask = "Hiyori"
if("Shinji")
M.vaizardmask = "Shinji"
if("Love")
M.vaizardmask = "Love"
if("Hachigen")
M.vaizardmask = "Hachigen"
if("Mashiro")
M.vaizardmask = "Mashiro"
if("Kensei")
M.vaizardmask = "Kensei"
M.loc = locate(73,29,5)
M.safe = 1
for(var/mob/hitchigo/K in world)
del(K)
if(src.enemy&&src.health <= 0)
src.health = src.healthwas
for(var/mob/M2 in oview(10))
if(M2.in_team)
if(M2.teamid == M.teamid)
M2.mhealth += round(src.healthgain/4)
M2.mrei += round(src.reigain/4)
M2.mdefence += round(src.defgain/4)
M2.mattack += round(src.strgain/4)
M2.health += round(src.healthgain/4)
M2.rei += round(src.reigain/4)
M2.defence += round(src.defgain/4)
M2.attack += round(src.strgain/4)
M2.reiatsu += round(src.reipgain/4)
M2.exp += round(src.expgain/4)
M2.money += 1000
M2.levelup()
M2 << "<b>[M] has defeated a [src]! You gained [src.expgain/4] experience and Some Money!"
M2.skill()
if(src.in_team)
M.mhealth += round(src.healthgain/2)
M.mrei += round(src.reigain/2)
M.mdefence += round(src.defgain/2)
M.mattack += round(src.strgain/2)
M.health += round(src.healthgain/2)
M.rei += round(src.reigain/2)
M.defence += round(src.defgain/2)
M.attack += round(src.strgain/2)
M.reiatsu += round(src.reipgain/2)
M.exp += round(src.expgain/2)
M.money += 2000
M << "<b>You have defeated a [src]! You gained [src.expgain/2] experience and Some Money!"
M.levelup()
M.skill()
else
M.mhealth += src.healthgain
M.mrei += src.reigain
M.mdefence += src.defgain
M.mattack += src.strgain
M.health += src.healthgain
M.rei += src.reigain
M.defence += src.defgain
M.attack += src.strgain
M.reiatsu += src.reipgain
M.exp += src.expgain
M.levelup()
M.skill()
M.money += 1000
M << "<b>You have defeated a [src]! You gained [src.expgain] experience and Some Money!"
src.loc = locate(0,0,0)
spawn(src.spawntime*10)
src.loc = src.oldspot
return
if(src.health <= 0)
src.overlays -= 'sword.dmi'
src.inbankai = 0
src.inshikai = 0
src.verbs -= /mob/renji/verb/Higa_Zekkou
src.seeleuse = 0
src.overlays -= 'rikujoukourou.dmi'
src.overlays -= 'rukiashikai.dmi'
src.overlays -= 'rukiabankai.dmi'
src.flashstep = 1
src.bowon = 0
src.rundelay = 2
src.renjishikai = 0
src.retract = 0
src.controlbug = 0
src.kirashi = 0
src.overlays -= 'hinamorishikai.dmi'
src.overlays -= 'hinamorishikai.dmi'
src.overlays -= 'ichigobankaiclothes.dmi'
src.renjibankai = 0
src.hitsugayabankai = 0
src.ikkakushikai = 0
src.overlays -= /obj/ikkaku1
src.overlays -= /obj/ikkaku2
src.overlays -= /obj/ikkaku3
src.overlays -= /obj/ikkaku4
src.overlays -= /obj/ikkaku5
src.inoueshield = 0
src.overlays -= /obj/ikkaku6
src.overlays -= /obj/ikkaku7
src.overlays -= /obj/ikkaku8
src.overlays -= /obj/ikkaku9
src.overlays -= 'mayurishikai.dmi'
src.overlays -= /obj/mayuri1
src.overlays -= /obj/mayuri2
src.overlays -= /obj/mayuri3
src.overlays -=/obj/seele1
src.overlays -=/obj/seele2
src.overlays -=/obj/seele3
src.verbs -= /mob/byaku/verb/Scene_of_Massacre
src.overlays -=/obj/seele4
src.overlays -=/obj/seele5
src.overlays -=/obj/seele1
src.seele = 0
src.overlays -=/obj/seele2
src.verbs -= new /mob/kido/verb/Power_Burst()
src.verbs -= new /mob/hollow/verb/Cero4()
src.overlays -=/obj/seele3
src.overlays -=/obj/seele4
src.overlays -=/obj/seele5
src.overlays -=/obj/seele1
src.overlays -=/obj/seele2
src.overlays -= 'byakuyabankaisword.dmi'
src.overlays -= 'byakuyabankaisword.dmi'
src.overlays -= 'byakuyabankaisword.dmi'
src.overlays -=/obj/seele3
src.overlays -=/obj/seele4
src.overlays -=/obj/seele5
src.overlays -= /obj/mayuri4
src.overlays -= /obj/mayuri5
src.underlays -= /obj/mayuri6
src.overlays -= /obj/bankai1
src.overlays -= /obj/bankai2
src.overlays -= 'bountowindsword.dmi'
src.overlays -= 'bountowindsword2.dmi'
src.overlays -= /obj/bankai3
src.overlays -= /obj/bankai4
src.ikkakubankai = 0
src.overlays -= /obj/bankai5
src.overlays -= /obj/bankai6
src.attack = src.mattack
src.defence = src.mdefence
src.overlays -= 'ichigobankai.dmi'
src.overlays -= 'ichigobankai.dmi'
src.overlays -= 'kirashikaiun.dmi'
src.overlays -= 'kirashikai.dmi'
src.overlays -= 'vaizard.dmi'
src.icon_state = ""
src.overlays -= 'quincybow.dmi'
src.verbs -= new /mob/yumichika/verb/Cyclone_Slash()
src.overlays -= 'quincybow2.dmi'
src.overlays -= 'quincybow.dmi'
src.overlays -= 'quincyfinal.dmi'
src.overlays -= 'chadarm.dmi'
src.overlays -= 'chadarm4.dmi'
src.overlays -= 'chadarm5.dmi'
src.overlays -= 'byakuyashikaisword.dmi'
src.overlays -= 'chadarm2.dmi'
src.overlays -= 'soifonshikai.dmi'
src.overlays -= 'SoiFonBankai.dmi'
src.overlays -= 'SoiFonBankai.dmi'
src.verbs -= new /mob/soifon/verb/Hornet_Sting()
for(var/obj/byakublade/Ma in world)
if(Ma.owner == src)
del Ma
src.overlays -= 'chadarm3.dmi'
src.overlays -= 'quincyfinalwing.dmi'
src.overlays -= 'quincybow3.dmi'
src.overlays -= /obj/wing1
src.overlays -= /obj/darkwing1
src.overlays -= 'renjishikai.dmi'
src.overlays -= 'ichigoshikaiback.dmi'
src.overlays -= 'zarakishikai.dmi'
src.hollowprotection = 1
if(src.race == "Bounto")
src.overlays -= /obj/faura1
src.overlays -= /obj/faura2
src.overlays -= /obj/faura3
src.overlays -= /obj/faura4
src.overlays -= /obj/faura5
src.overlays -= /obj/faura6
src.overlays -= /obj/faura7
src.overlays -= /obj/faura8
src.overlays -= /obj/maura1
src.overlays -= 'bountoyoshi.dmi'
src.overlays -= /obj/maura2
src.overlays -= /obj/maura3
src.overlays -= /obj/maura4
src.overlays -= /obj/maura5
src.overlays -= /obj/maura6
src.overlays -= /obj/maura7
src.overlays -= /obj/maura8
src.underlays -= 'bountometal.dmi'
src.underlays -= 'bountofire.dmi'
src.icon = 'base.dmi'
src.verbs -= /mob/yoshi/verb/Life_Shaver
src.verbs -= /mob/getsuga/verb/getsuga2
src.verbs -= /mob/fire/verb/Fire_Ball
src.verbs -= /mob/metal/verb/Metal_Ball
src.overlays -= 'ichigoshikaiback.dmi'
src.overlays -= 'renjishikai.dmi'
src.overlays -= /obj/menos2
src.overlays -= /obj/menos3
src.armon = 0
src.overlays -= /obj/menos2
src.overlays -= /obj/menos3
src.overlays -= /obj/strong1
src.overlays -= /obj/strong2
src.overlays -= /obj/strong3
src.overlays -= /obj/strong4
walk(src,0)
src.overlays -= /obj/strong5
src.overlays -= /obj/strong1
src.overlays -= /obj/strong2
src.inran = 0
src.overlays -= 'silvergritz.dmi'
src.overlays -= /obj/strong3
src.overlays -= /obj/strong4
src.overlays -= 'yumichikashikai.dmi'
src.overlays -= 'yumichikashikaiun.dmi'
src.overlays -= 'SoiFonBankai.dmi'
src.overlays -= 'soifonshikai.dmi'
src.rundelay = 2
src.chadref = 0
src.overlays -= /obj/strong5
src.verbs -= new /mob/hitsu/verb/shoot()
src.verbs -= new /mob/chad/verb/Power_Blast()
src.verbs -= new /mob/chad/verb/El_Directo()
src.verbs -= new /mob/rukia/verb/shoot()
src.verbs -= new /mob/soifon/verb/Hornet_Sting()
src.verbs -= new /mob/soifon/verb/Shoot_Missile()
if(src.race == "Arrancar")
src.rundelay = 0
src.icon = 'base.dmi'
for(var/mob/pedals/A in world)
if(A.owner == src)
del A
for(var/mob/zabimaru/A in world)
if(A.owner == src)
del A
if(src.swordon)
src.overlays -= 'sword.dmi'
src.overlays -= 'sword.dmi'
src.overlays -= 'sword.dmi'
src.overlays += 'sword.dmi'
if(src.stype == "Ichigo"&&src.shikai)
src.overlays -= 'sword.dmi'
src.overlays -= 'sword.dmi'
src.overlays += 'ichigoshikaiback.dmi'
src.inshikai = 1
if(src.stype == "Inner Hollow"&&src.shikai)
src.overlays -= 'sword.dmi'
src.overlays -= 'sword.dmi'
src.overlays += 'ichigoshikaibackhollow.dmi'
src.inshikai = 1
if(src.hollowtype == "Menos Grande")
src.overlays = 0
src.overlays += /obj/menos2
src.overlays += /obj/menos3
if(src.hollowtype == "Strong")
src.overlays = 0
src.overlays += /obj/strong1
src.overlays += /obj/strong2
src.overlays += /obj/strong3
src.overlays += /obj/strong4
src.overlays += /obj/strong5
if(src.hollowtype == "Adjucha")
src.overlays = 0
src.overlays += /obj/Adjucha1
src.overlays += /obj/Adjucha2
src.overlays += /obj/Adjucha3
src.overlays += /obj/Adjucha4
src.overlays += /obj/Adjucha5
src.overlays -= /obj/bankai6
src.safe = 1
src.overlays -= 'hitsugayabankai1.dmi'
src.overlays -= /obj/hwings1
src.overlays -= /obj/hwings2
src.overlays -= /obj/hwings3
src.overlays -= /obj/hwings4
src.overlays -= /obj/hwings5
src.overlays -= /obj/hwings6
src.overlays -= /obj/hwings7
src.overlays -= /obj/hwings8
src.overlays -= /obj/hwings9
src.overlays -= /obj/hwings10
src.overlays -= /obj/hwings11
src.overlays -= /obj/hwings12
src.overlays -= /obj/hwings3
src.health = src.mhealth
src.rei = src.mrei
src.attack = src.mattack
src.defence = src.mdefence
src.overlays -= 'Hitsu new wings.dmi'
src.overlays -= /obj/wings1
src.overlays -= /obj/wings2
src.overlays -= /obj/wings3
src.overlays -= /obj/wings4
src.overlays -= /obj/wings5
src.overlays -= /obj/wings6
src.overlays -= /obj/wings7
src.overlays -= /obj/wings8
src.overlays -= /obj/wings9
src.overlays -= /obj/wings10
src.overlays -= /obj/wings11
src.overlays -= /obj/wings12
src.overlays -= /obj/wings3
src.health = src.mhealth
src.rei = src.mrei
src.attack = src.mattack
src.defence = src.mdefence
world << "<b><font color = red>[M] has killed [src]!"
if(src.tourny == 1)
src.tourny = 0
if(src.race != "Hollow")
src.loc = locate(150,147,1)
if(src.race == "Shinigami")
src.loc = locate(75,30,5)
if(src.race == "Bounto")
src.loc = locate(11,185,5)
else
src.loc = locate(97,85,3)
src.safe = 0
if(M.stype == "Zaraki")
if(M.inshikai&&M.shikaidrain > 0)
M.random = rand(1,10)
if(M.random <= 8)
M << "<b><font color = green>You have gotten better at maintaining your shikai!"
M.shikaidrain -= 0.1
if(M.inbankai&&M.bankaidrain > 0)
M.random = rand(1,100)
if(M.random <= 50)
M << "<b><font color = green>You have gotten better at maintaining your bankai!"
M.bankaidrain -= 0.1
if(M.enemy&&src.race == "Human")
switch(input(src,"Do you want to become a Hollow?", text) in list ("Yes","No"))
if("Yes")


I... Yeah... I'm sorry. But this code snippet has an example of everything that I've fought against for years. Please start from the beginning with a tutorial and throw that rip source code away. It's truly horrible.

There is no fixing the codebase you are working on that doesn't involve a gascan and some matches.
Ive narrowed it down, whenever i kill a strong hollow it crashs teh game
src.overlays = 0


You can't set overlays to 0. There's your crash right there.

You need to do this instead:

src.overlays.Cut(1,0)


And yeah, there's no reason this proc should be this long. Everything is wrong here. You really shouldn't be relying on ripped source code. If you ever have a procedure getting into thousands of line long, you have probably done something immensely wrong, and I can tell you right now that all of this is wrong.
changed all those and still when i kill a strong hollow is crashs
Send me a copy of your source code via PM. I'll debug it and find what's going wrong a lot faster.
sounds good thanks for all the help btw sending you a pm now
Best response
I was unable to reproduce the infinite loop. I'll need more specific information on how to reproduce it.

I'll be honest, though, this is the worst codebase I've ever seen.
i dont know how to reproduce it but the source i sent you already has the loop, just go kill a strong hollow with a rei based attack or something
also i didnt make it this messy, it was already this messy i just have been adding on to it lool
Where are strong hollow? What is a rei?
when you spawn into the game train for like 2 seconds then walk out of hospital then walk to the right and click right clicking the npcs till you find strong hollow, pretty sure you can just walk up to it and regular attack when you do you should freeze/dc
also i noticed as soon as the game starts up a strong hollow kills byakuya somehow been lookin for it in the files but cant find it
Pls delete the source and start anew.
I found your problem.

You are using spawn() instead of sleep() to make procs wait.

Look at your hollow AI.
ahhhhhhhh i thought that was the problem i just didnt know how to go about changing all my procs
step(src,EAST)
spawn(10)
step(src,SOUTH)


^This doesn't work like you think it does.

step(src,EAST)
sleep(10)
step(src,SOUTH)


^That would be correct instead.
could you perhaps change what your talkin about and send it back to me? i did it and nothing changed still crash when i kill strong hollow
Yep, same thing happened to me. Not sure where the crash is coming from, to be honest. I'm at a total loss. This source is just too broken for me to work with. Sorry.
In response to FishMan123
FishMan123 wrote:
Pls delete the source and start anew.

I repeat.
Page: 1 2 3