diff --git a/_maps/map_files/RandomZLevels/fileList.txt b/_maps/map_files/RandomZLevels/fileList.txt
index 52f26162ff7..b135397b4f1 100644
--- a/_maps/map_files/RandomZLevels/fileList.txt
+++ b/_maps/map_files/RandomZLevels/fileList.txt
@@ -7,19 +7,29 @@
#Do NOT tick the maps during compile -- the game uses this list to decide which map to load. Ticking the maps will result in them ALL being loaded at once.
#DO tick the associated code file for the away mission you are enabling. Otherwise, the map will be trying to reference objects which do not exist, which will cause runtime errors!
+#===================================#
+# BROKEN / INCOMPLETE AWAY MISSIONS #
+#===================================#
#_maps/map_files/RandomZLevels/academy.dmm
-#_maps/map_files/RandomZLevels/beach.dmm
#_maps/map_files/RandomZLevels/blackmarketpackers.dmm
#_maps/map_files/RandomZLevels/challenge.dmm
#_maps/map_files/RandomZLevels/centcomAway.dmm
#_maps/map_files/RandomZLevels/clownplanet.dmm
#_maps/map_files/RandomZLevels/example.dmm
-#_maps/map_files/RandomZLevels/listeningpost.dmm
-#_maps/map_files/RandomZLevels/moonoutpost19.dmm
#_maps/map_files/RandomZLevels/spacebattle.dmm
#_maps/map_files/RandomZLevels/spacehotel.dmm
#_maps/map_files/RandomZLevels/stationCollision.dmm
-#_maps/map_files/RandomZLevels/undergroundoutpost45.dmm
#_maps/map_files/RandomZLevels/wildwest.dmm
+#===================================#
+# USABLE AWAY MISSIONS #
+#===================================#
+#_maps/map_files/RandomZLevels/beach.dmm
+#_maps/map_files/RandomZLevels/listeningpost.dmm
+#_maps/map_files/RandomZLevels/moonoutpost19.dmm
+#_maps/map_files/RandomZLevels/undergroundoutpost45.dmm
+
+#===================================#
+# SPECIAL AWAY MISSIONS #
+#===================================#
_maps/map_files/RandomZLevels/evil_santa.dmm
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/winter_mobs.dm b/code/modules/mob/living/simple_animal/hostile/winter_mobs.dm
index 73286aa485e..7b28a5eb266 100644
--- a/code/modules/mob/living/simple_animal/hostile/winter_mobs.dm
+++ b/code/modules/mob/living/simple_animal/hostile/winter_mobs.dm
@@ -74,44 +74,43 @@
maxHealth = 150 //if this seems low for a "boss", it's because you have to fight him multiple times, with him fully healing between stages
health = 150
var/next_stage = null
+ var/death_message
name = "Santa Claus"
icon_state = "santa"
icon_living = "santa"
icon_dead = "santa-dead"
+/mob/living/simple_animal/hostile/winter/santa/death()
+ ..()
+ if(death_message)
+ visible_message(death_message)
+ if(next_stage)
+ spawn(10)
+ new next_stage(get_turf(src))
+ qdel(src) //hide the body
+
/mob/living/simple_animal/hostile/winter/santa/stage_1 //stage 1: slow melee
desc = "GET THE FAT MAN!"
next_stage = /mob/living/simple_animal/hostile/winter/santa/stage_2
+ death_message = "HO HO HO! YOU THOUGHT IT WOULD BE THIS EASY?!?"
speed = 2
melee_damage_lower = 5
melee_damage_upper = 15
-/mob/living/simple_animal/hostile/winter/santa/stage_1/death()
- ..()
- visible_message("HO HO HO! YOU THOUGHT IT WOULD BE THIS EASY?!?")
- spawn(5)
- new next_stage(get_turf(src))
- qdel(src) //hide the body
-
/mob/living/simple_animal/hostile/winter/santa/stage_2 //stage 2: slow ranged
desc = "GET THE FAT MAN AGAIN!"
next_stage = /mob/living/simple_animal/hostile/winter/santa/stage_3
+ death_message = "YOU'VE BEEN VERY NAUGHTY! PREPARE TO DIE!"
ranged = 1
projectiletype = /obj/item/projectile/ornament
retreat_distance = 5
minimum_distance = 5
-/mob/living/simple_animal/hostile/winter/santa/stage_2/death()
- ..()
- visible_message("YOU'VE BEEN VERY NAUGHTY! PREPARE TO DIE!")
- spawn(5)
- new next_stage(get_turf(src))
- qdel(src) //hide the body
-
/mob/living/simple_animal/hostile/winter/santa/stage_3 //stage 3: fast rapidfire ranged
desc = "WHY WON'T HE DIE ALREADY!?"
next_stage = /mob/living/simple_animal/hostile/winter/santa/stage_4
+ death_message = "FACE MY FINAL FORM AND KNOW DESPAIR!"
ranged = 1
rapid = 1
speed = 0 //he's lost some weight from the fighting
@@ -119,13 +118,6 @@
retreat_distance = 3
minimum_distance = 3
-/mob/living/simple_animal/hostile/winter/santa/stage_3/death()
- ..()
- visible_message("FACE MY FINAL FORM AND KNOW DESPAIR!")
- spawn(5)
- new next_stage(get_turf(src))
- qdel(src) //hide the body
-
/mob/living/simple_animal/hostile/winter/santa/stage_4 //stage 4: fast spinebreaker
name = "Final Form Santa"
desc = "WHAT THE HELL IS HE!?! WHY WON'T HE STAY DEAD!?!"
@@ -138,8 +130,10 @@
melee_damage_upper = 25 //that's gonna leave a mark, for sure
/mob/living/simple_animal/hostile/winter/santa/stage_4/death()
+ world << "
"
world << "THE FAT MAN HAS FALLEN!"
world << "SANTA CLAUS HAS BEEN DEFEATED!"
+ world << "
"
..()
var/obj/item/weapon/grenade/clusterbuster/xmas/X = new /obj/item/weapon/grenade/clusterbuster/xmas(get_turf(src))
var/obj/item/weapon/grenade/clusterbuster/xmas/Y = new /obj/item/weapon/grenade/clusterbuster/xmas(get_turf(src))