diff --git a/modular_darkpack/modules/antediluvian_sarcophagus/code/sarcophagus.dm b/modular_darkpack/modules/antediluvian_sarcophagus/code/sarcophagus.dm
index 7f62b6e51eb5..c5b83473689c 100644
--- a/modular_darkpack/modules/antediluvian_sarcophagus/code/sarcophagus.dm
+++ b/modular_darkpack/modules/antediluvian_sarcophagus/code/sarcophagus.dm
@@ -93,7 +93,7 @@ GLOBAL_LIST_INIT(caesar_cipher, list(
icon_state = "b_sarcophagus"
// layer = CAR_LAYER
density = TRUE
- anchored = TRUE
+ anchored = FALSE
pixel_w = -8
var/password = "Brongus"
var/passkey = 5
@@ -102,13 +102,11 @@ GLOBAL_LIST_INIT(caesar_cipher, list(
/obj/sarcophagus/Initialize(mapload)
. = ..()
password = pick(GLOB.sarcophagus_passwords)
- if(prob(50))
- passkey = rand(5, 15)
- else
- passkey = rand(-15, -5)
+ passkey = rand(5, 15)
+
//to_chat(world, span_userdanger("UNKNOWN SARCOPHAGUS POSITION HAS BEEN LEAKED"))
- if(!mapload)
- SEND_SOUND(world, sound('modular_darkpack/master_files/sounds/announce.ogg'))
+ //if(!mapload)
+ // SEND_SOUND(world, sound('modular_darkpack/master_files/sounds/announce.ogg'))
/obj/sarcophagus/examine(mob/user)
. = ..()
@@ -130,17 +128,51 @@ GLOBAL_LIST_INIT(caesar_cipher, list(
if(!pass)
return ITEM_INTERACT_BLOCKING
if(password == uppertext(pass))
- icon_state = "b_sarcophagus-open1"
- to_chat(world, span_userdanger("UNKNOWN SARCOPHAGUS HAS BEEN OPENED"))
- SEND_SOUND(world, sound('modular_darkpack/master_files/sounds/announce.ogg'))
- var/sound_length = SSsounds.get_sound_length(OPEN_SOUND)
- playsound(src, OPEN_SOUND, 100, FALSE)
- spawn(sound_length)
- icon_state = "b_sarcophagus-open0"
- new /mob/living/simple_animal/hostile/megafauna/wendigo/antediluvian(loc)
- return ITEM_INTERACT_SUCCESS
+ open_the_sarcophagus()
+ return ITEM_INTERACT_SUCCESS
+
+/obj/sarcophagus/proc/open_the_sarcophagus()
+ icon_state = "b_sarcophagus-open1"
+ to_chat(world, span_userdanger("UNKNOWN SARCOPHAGUS HAS BEEN OPENED"))
+ SEND_SOUND(world, sound('modular_darkpack/master_files/sounds/announce.ogg'))
+ var/sound_length = SSsounds.get_sound_length(OPEN_SOUND)
+ playsound(src, OPEN_SOUND, 100, FALSE)
+ spawn(sound_length)
+ icon_state = "b_sarcophagus-open0"
+ if(prob(50))
+ new /mob/living/simple_animal/hostile/megafauna/wendigo/antediluvian(loc)
+ else
+ new /mob/living/simple_animal/hostile/megafauna/colossus/antediluvian(loc)
#undef OPEN_SOUND
+/obj/sarcophagus/bomb
+
+/obj/sarcophagus/bomb/open_the_sarcophagus()
+ icon_state = "b_sarcophagus-open2"
+ to_chat(world, span_userdanger("UNKNOWN SARCOPHAGUS HAS BEEN OPENED"))
+ SEND_SOUND(world, sound('modular_darkpack/master_files/sounds/announce.ogg'))
+ playsound(src, 'sound/items/weapons/armbomb.ogg', 100, FALSE)
+ anchored = TRUE
+ addtimer(CALLBACK(src, PROC_REF(explode)), 6 SECONDS)
+
+/obj/sarcophagus/bomb/proc/explode()
+ explosion(src, devastation_range = 2, heavy_impact_range = 7, light_impact_range = 11)
+ qdel(src)
+ priority_announce(
+ "BREAKING NEWS!!! A massive explosion has been reported in your area. First responders are advised to rush to the scene as soon as possible to rescue any survivors and a curfew is issued immediately to all citizens until the city is safe.",
+ "EMERGENCY BREAKING NEWS",
+ 'modular_darkpack/modules/events/sounds/news_notification.ogg',
+ ANNOUNCEMENT_TYPE_PRIORITY,
+ color_override = "red",
+ )
+
+/obj/sarcophagus/empty
+
+/obj/sarcophagus/empty/open_the_sarcophagus()
+ icon_state = "b_sarcophagus-open0"
+ to_chat(world, span_userdanger("UNKNOWN SARCOPHAGUS HAS BEEN OPENED"))
+ SEND_SOUND(world, sound('modular_darkpack/master_files/sounds/announce.ogg'))
+
/obj/fake_sarcophagus
name = "unknown sarcophagus"
desc = "A shiver runs down your spine just looking at it..."
diff --git a/modular_darkpack/modules/antediluvian_sarcophagus/code/the_antediluvian.dm b/modular_darkpack/modules/antediluvian_sarcophagus/code/the_antediluvian.dm
index 9ab2f270ec68..9a386da72850 100644
--- a/modular_darkpack/modules/antediluvian_sarcophagus/code/the_antediluvian.dm
+++ b/modular_darkpack/modules/antediluvian_sarcophagus/code/the_antediluvian.dm
@@ -1,7 +1,7 @@
#define ANTEDILUVIAN_SCORE "Antediluvians Killed"
#define BOSS_MEDAL_ANTEDILUVIAN "Antediluvian Killer"
/mob/living/simple_animal/hostile/megafauna/wendigo/antediluvian
- name = "Unknown Antediluvian"
+ name = "Unknown Methuselah"
desc = "A mythological legendary kindred, you probably aren't going to survive this."
health = 2500
maxHealth = 2500
@@ -18,7 +18,7 @@
score_achievement_type = /datum/award/score/antediluvian_score
/mob/living/simple_animal/hostile/megafauna/colossus/antediluvian
- name = "Unknown Antediluvian"
+ name = "Unknown Methuselah"
desc = "A mythological legendary kindred, you probably aren't going to survive this."
health = 2500
maxHealth = 2500
@@ -32,13 +32,13 @@
score_achievement_type = /datum/award/score/antediluvian_score
/datum/award/achievement/boss/antediluvian_kill
- name = "Antediluvian Killer"
+ name = "Methuselah Killer"
desc = "The bigger they are... the better the loot"
database_id = BOSS_MEDAL_ANTEDILUVIAN
icon_state = "firstboss"
/datum/award/score/antediluvian_score
- name = "Antediluvian Killed"
+ name = "Methuselah Killed"
desc = "You've killed HOW many?"
database_id = ANTEDILUVIAN_SCORE
diff --git a/modular_darkpack/modules/events/code/landmarks/event_landmarks.dm b/modular_darkpack/modules/events/code/landmarks/event_landmarks.dm
index b5879141ffee..6ff7dd79cd47 100644
--- a/modular_darkpack/modules/events/code/landmarks/event_landmarks.dm
+++ b/modular_darkpack/modules/events/code/landmarks/event_landmarks.dm
@@ -1,3 +1,7 @@
+/obj/effect/landmark/event_spawn/sarcophagus
+ name = "sarcophagus event spawn"
+ icon_state = "navigate"
+
/obj/effect/landmark/event_spawn/szlachta
name = "szlachta event spawn"
icon = 'modular_darkpack/modules/events/icons/event_landmarks.dmi'
diff --git a/modular_darkpack/modules/events/code/sarcophagus_event.dm b/modular_darkpack/modules/events/code/sarcophagus_event.dm
new file mode 100644
index 000000000000..43462815d805
--- /dev/null
+++ b/modular_darkpack/modules/events/code/sarcophagus_event.dm
@@ -0,0 +1,56 @@
+/datum/round_event_control/darkpack/sarcophagus
+ name = "Sarcophagus"
+ typepath = /datum/round_event/sarcophagus
+ weight = 1
+ min_players = 20
+ max_occurrences = 1
+ earliest_start = 70 MINUTES
+ category = EVENT_CATEGORY_INVASION
+ description = "A strange sarcophagus has appeared in the city..."
+ darkpack_allowed = TRUE
+
+/datum/round_event_control/darkpack/sarcophagus/can_spawn_event(players_amt, allow_magic)
+ . = ..()
+ var/sarcophagus_spawns = 0
+ for(var/obj/effect/landmark/event_spawn/sarcophagus/L in GLOB.generic_event_spawns)
+ sarcophagus_spawns++
+ if(sarcophagus_spawns >= 2)
+ return TRUE
+ return FALSE
+
+/datum/round_event/sarcophagus
+ start_when = 1
+ announce_when = 5
+
+/datum/round_event/sarcophagus/announce(fake)
+ priority_announce(
+ "You receive a notification about a viral Endpost - a respected archaeologist notes that the location of a long-lost Assyrian sarcophagus alongside it's key, which was famously stolen, seems to be in your city according to newly published criminological records tracking the suspected thief.",
+ "Viral News Story",
+ 'modular_darkpack/modules/events/sounds/news_notification.ogg',
+ ANNOUNCEMENT_TYPE_PRIORITY,
+ color_override = "yellow",
+ )
+
+/datum/round_event/sarcophagus/start()
+ var/list/landmarks = list()
+ for(var/obj/effect/landmark/event_spawn/sarcophagus/L in GLOB.generic_event_spawns)
+ // dont spawn if a player is nearby we don't need them popping in unrealistically
+ var/player_nearby = FALSE
+ for(var/mob/living/nearby_mob in view(DEFAULT_SIGHT_DISTANCE, L.loc))
+ if(nearby_mob.client)
+ player_nearby = TRUE
+ break
+ if(player_nearby)
+ continue
+ landmarks += L
+
+ if(length(landmarks) < 2)
+ return
+
+ var/obj/effect/landmark/event_spawn/sarcophagus/sarcophagus_landmark = pick(landmarks)
+ landmarks -= sarcophagus_landmark
+ var/obj/effect/landmark/event_spawn/sarcophagus/key_landmark = pick(landmarks)
+
+ var/sarcophagus_type = pick(list(/obj/sarcophagus/bomb, /obj/sarcophagus, /obj/sarcophagus/empty))
+ new sarcophagus_type(sarcophagus_landmark.loc)
+ new /obj/item/sarcophagus_key(key_landmark.loc)
diff --git a/modular_darkpack/modules/events/icons/event_landmarks.dmi b/modular_darkpack/modules/events/icons/event_landmarks.dmi
index cef1b3eb4822..258d9218df99 100644
Binary files a/modular_darkpack/modules/events/icons/event_landmarks.dmi and b/modular_darkpack/modules/events/icons/event_landmarks.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index a01a0abf082c..32b2cd67e625 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -7269,6 +7269,7 @@
#include "modular_darkpack\modules\ert\code\outfits\swat_outfits.dm"
#include "modular_darkpack\modules\events\code\_darkpack_event.dm"
#include "modular_darkpack\modules\events\code\blackout_event.dm"
+#include "modular_darkpack\modules\events\code\sarcophagus_event.dm"
#include "modular_darkpack\modules\events\code\szlachta_attack_event.dm"
#include "modular_darkpack\modules\events\code\landmarks\event_landmarks.dm"
#include "modular_darkpack\modules\external_organs\code\gargoyle_wings.dm"