anchor.diff:  /obj/effect/gibspawner/generic
   	gibtypes = list(/obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood/gibs/core)
   	gibamounts = list(2, 2, 1)
  +	sound_vol = 40
   
   /obj/effect/gibspawner/generic/Initialize()
  -	playsound(src, 'sound/effects/blobattack.ogg', 40, 1)
  -	gibdirections = list(list(WEST, NORTHWEST, SOUTHWEST, NORTH),list(EAST, NORTHEAST, SOUTHEAST, SOUTH), list())
  -	. = ..()
  +	if(!gibdirections.len)
  +		gibdirections = list(list(WEST, NORTHWEST, SOUTHWEST, NORTH),list(EAST, NORTHEAST, SOUTHEAST, SOUTH), list())
  +	return ..()
   
   /obj/effect/gibspawner/generic/animal
   	gib_mob_type = /mob/living/simple_animal/pet
  +
  +
   
   /obj/effect/gibspawner/human
   	gibtypes = list(/obj/effect/decal/cleanable/blood/gibs/up, /obj/effect/decal/cleanable/blood/gibs/down, /obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood/gibs/body, /obj/effect/decal/cleanable/blood/gibs/limb, /obj/effect/decal/cleanable/blood/gibs/core)
   	gibamounts = list(1, 1, 1, 1, 1, 1, 1)
   	gib_mob_type = /mob/living/carbon/human
  +	sound_vol = 50
   
   /obj/effect/gibspawner/human/Initialize()
  -	playsound(src, 'sound/effects/blobattack.ogg', 50, 1)
  -	gibdirections = list(list(NORTH, NORTHEAST, NORTHWEST),list(SOUTH, SOUTHEAST, SOUTHWEST),list(WEST, NORTHWEST, SOUTHWEST),list(EAST, NORTHEAST, SOUTHEAST), GLOB.alldirs, GLOB.alldirs, list())
  -	. = ..()
  +	if(!gibdirections.len)
  +		gibdirections = list(list(NORTH, NORTHEAST, NORTHWEST),list(SOUTH, SOUTHEAST, SOUTHWEST),list(WEST, NORTHWEST, SOUTHWEST),list(EAST, NORTHEAST, SOUTHEAST), GLOB.alldirs, GLOB.alldirs, list())
  +	return ..()
  +
   
   /obj/effect/gibspawner/human/bodypartless //only the gibs that don't look like actual full bodyparts (except torso).
   	gibtypes = list(/obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood/gibs/core, /obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood/gibs/core, /obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood/gibs/torso)
   	gibamounts = list(1, 1, 1, 1, 1, 1)
  +
  +/obj/effect/gibspawner/human/bodypartless/Initialize()
  +	if(!gibdirections.len)
  +		gibdirections = list(list(NORTH, NORTHEAST, NORTHWEST),list(SOUTH, SOUTHEAST, SOUTHWEST),list(WEST, NORTHWEST, SOUTHWEST),list(EAST, NORTHEAST, SOUTHEAST), GLOB.alldirs, list())
  +	return ..()
  +
   
   
   /obj/effect/gibspawner/xeno
  
positive.code: 	gib_mob_type = /mob/living/carbon/alien
  
  /obj/effect/gibspawner/xeno/Initialize()
  	playsound(src, 'sound/effects/blobattack.ogg', 60, 1)
  	gibdirections = list(list(NORTH, NORTHEAST, NORTHWEST),list(SOUTH, SOUTHEAST, SOUTHWEST),list(WEST, NORTHWEST, SOUTHWEST),list(EAST, NORTHEAST, SOUTHEAST), GLOB.alldirs, GLOB.alldirs, list())
  	. = ..()
  
  /obj/effect/gibspawner/xeno/bodypartless //only the gibs that don't look like actual full bodyparts (except torso).
  	gibtypes = list(/obj/effect/decal/cleanable/xenoblood/xgibs, /obj/effect/decal/cleanable/xenoblood/xgibs/core, /obj/effect/decal/cleanable/xenoblood/xgibs, /obj/effect/decal/cleanable/xenoblood/xgibs/core, /obj/effect/decal/cleanable/xenoblood/xgibs, /obj/effect/decal/cleanable/xenoblood/xgibs/torso)
  	gibamounts = list(1, 1, 1, 1, 1, 1)
  
  
  /obj/effect/gibspawner/larva
  
negative.code: 	gib_mob_type = /mob/living/carbon/alien/larva
  
  /obj/effect/gibspawner/larva/Initialize()
  	if(!gibdirections.len)
  		gibdirections = list(list(NORTH, NORTHEAST, NORTHWEST),list(SOUTH, SOUTHEAST, SOUTHWEST), list(), GLOB.alldirs)
  	return ..()
  
  /obj/effect/gibspawner/larva/bodypartless
  	gibtypes = list(/obj/effect/decal/cleanable/xenoblood/xgibs/larva, /obj/effect/decal/cleanable/xenoblood/xgibs/larva, /obj/effect/decal/cleanable/xenoblood/xgibs/larva)
  	gibamounts = list(1, 1, 1)
  
  /obj/effect/gibspawner/larva/bodypartless/Initialize()
  	if(!gibdirections.len)
  		gibdirections = list(list(NORTH, NORTHEAST, NORTHWEST),list(SOUTH, SOUTHEAST, SOUTHWEST), list())
  	return ..()
  
  
  
  /obj/effect/gibspawner/robot
  