diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm
index 6a92052eed5..8df3b950679 100644
--- a/code/game/gamemodes/cult/cult.dm
+++ b/code/game/gamemodes/cult/cult.dm
@@ -41,9 +41,9 @@ var/global/list/all_cults = list()
config_tag = "cult"
restricted_jobs = list("Chaplain","AI", "Cyborg", "Internal Affairs Agent", "Security Officer", "Warden", "Detective", "Security Pod Pilot", "Head of Security", "Captain", "Head of Personnel", "Blueshield", "Nanotrasen Representative", "Magistrate", "Brig Physician", "Nanotrasen Navy Officer", "Special Operations Officer")
protected_jobs = list()
- required_players = 30
- required_enemies = 3
- recommended_enemies = 4
+ required_players = 1
+ required_enemies = 1
+ recommended_enemies = 1
var/datum/mind/sacrifice_target = null
var/finished = 0
diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm
index edf0912c4d6..cbbe5590475 100644
--- a/code/game/gamemodes/cult/cult_items.dm
+++ b/code/game/gamemodes/cult/cult_items.dm
@@ -7,6 +7,7 @@
force = 30
throwforce = 10
sharp = 1
+ edge = 1
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
diff --git a/code/game/gamemodes/cult/cult_objectives.dm b/code/game/gamemodes/cult/cult_objectives.dm
index a84a83be688..3449e4a1c95 100644
--- a/code/game/gamemodes/cult/cult_objectives.dm
+++ b/code/game/gamemodes/cult/cult_objectives.dm
@@ -192,9 +192,6 @@
if(total < 15)
message_admins("There are [total] players, too little for the mass convert objective!")
log_admin("There are [total] players, too little for the mass convert objective!")
- else if(total > 50)
- message_admins("There are [total] players, too many for the mass convert objective!")
- log_admin("There are [total] players, too many for the mass convert objective!")
else
possible_objectives |= "convert"
convert_target = round(total / 2)
diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm
index da0cdc79e94..5a01ab01ec0 100644
--- a/code/game/gamemodes/cult/ritual.dm
+++ b/code/game/gamemodes/cult/ritual.dm
@@ -151,7 +151,7 @@
text += "Talisman of Stunning
Attacking a target will knock them down for a long duration in addition to inhibiting their speech. \
Robotic lifeforms will suffer the effects of a heavy electromagnetic pulse instead.
"
- text += "Talisman of Armaments
The Talisman of Arming will equip the user with armored robes, a backpack, an eldritch longsword, an empowered bola, and a pair of boots. Any items that cannot \
+ text += "Talisman of Armaments
The Talisman of Arming will equip the user with armored robes, a backpack, an eldritch longsword, an empowered bola. Any items that cannot \
be equipped will not be summoned. Attacking a fellow cultist with it will instead equip them.
"
text += "Talisman of Horrors
The Talisman of Horror must be applied directly to the victim, it will shatter your victim's mind with visions of the endtimes that may incapitate them.
"
@@ -194,10 +194,9 @@
return 1
/obj/item/weapon/tome/proc/finale_runes_ok(mob/living/user, obj/effect/rune/rune_to_scribe)
-
+ var/datum/game_mode/cult/cult_mode = ticker.mode
if(ticker.mode.name == "cult")
if(!canbypass == 1)//not an admin-tome, check things
- var/datum/game_mode/cult/cult_mode = ticker.mode
if(!cult_mode.narsie_condition_cleared)
to_chat(user, "There is still more to do before unleashing [cult_mode.cultdat.entity_name] power!")
return 0
@@ -210,20 +209,19 @@
if(!(CULT_ELDERGOD in cult_mode.objectives) || !(CULT_SLAUGHTER in cult_mode.objectives))
to_chat(user, "[cult_mode.cultdat.entity_name]'s power does not wish to be unleashed!")
return 0
- var/confirm_final = alert(user, "This is the FINAL step to summon your dietys power, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for Nar-Sie!", "No")
- if(confirm_final == "No")
- to_chat(user, "You decide to prepare further before scribing the rune.")
- return
- else
- return 1
+ var/confirm_final = alert(user, "This is the FINAL step to summon your dietys power, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for [cult_mode.cultdat.entity_name]!", "No")
+ if(confirm_final == "No")
+ to_chat(user, "You decide to prepare further before scribing the rune.")
+ return 0
+ else
+ return 1
else//the game mode is not cult..but we ARE a cultist...ALL ON THE ADMINBUS
- if(!canbypass == 1)//not an admin-tome, check things
- var/confirm_final = alert(user, "This is the FINAL step to summon your dietys power, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for Nar-Sie!", "No")
- if(confirm_final == "No")
- to_chat(user, "You decide to prepare further before scribing the rune.")
- return 0
- else
- return 1
+ var/confirm_final = alert(user, "This is the FINAL step to summon your dietys power, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for [cult_mode.cultdat.entity_name]!", "No")
+ if(confirm_final == "No")
+ to_chat(user, "You decide to prepare further before scribing the rune.")
+ return 0
+ else
+ return 1
/obj/item/weapon/tome/proc/scribe_rune(mob/living/user)
var/turf/runeturf = get_turf(user)
@@ -273,6 +271,8 @@
N.icon_state = "shield-cult"
N.health = 60
shields |= N
+ else
+ return//don't do shit
var/mob/living/carbon/human/H = user
var/dam_zone = pick("head", "chest", "groin", "l_arm", "l_hand", "r_arm", "r_hand", "l_leg", "l_foot", "r_leg", "r_foot")
diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm
index 68b13bb05aa..8e29970b95d 100644
--- a/code/game/gamemodes/cult/runes.dm
+++ b/code/game/gamemodes/cult/runes.dm
@@ -476,7 +476,7 @@ var/list/teleport_runes = list()
if(istype(ticker.mode.name, "cult"))
var/datum/game_mode/cult/cult_mode = ticker.mode
if(!is_station_level(user.z))
- message_admins("[user.real_name]([user.ckey]) tried to summon Nar-Sie off station")
+ message_admins("[user.real_name]([user.ckey]) tried to summon an eldritch horror off station")
for(var/M in invokers)
var/mob/living/L = M
to_chat(L, "\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"")
@@ -490,7 +490,7 @@ var/list/teleport_runes = list()
if(!cult_mode.eldergod)
for(var/M in invokers)
to_chat(M, "[ticker.mode.cultdat.entity_name] is already on this plane!")
- log_game("Summon Nar-Sie rune failed - already summoned")
+ log_game("Summon god rune failed - already summoned")
return
//BEGIN THE SUMMONING
used = 1
diff --git a/code/game/gamemodes/cult/talisman.dm b/code/game/gamemodes/cult/talisman.dm
index 1d0ac22c81c..1b7d1bee5a9 100644
--- a/code/game/gamemodes/cult/talisman.dm
+++ b/code/game/gamemodes/cult/talisman.dm
@@ -272,15 +272,14 @@
"You speak the words of the talisman, arming yourself!")
H.equip_or_collect(new /obj/item/clothing/suit/hooded/cultrobes/alt(user), slot_wear_suit)
H.equip_or_collect(new /obj/item/weapon/storage/backpack/cultpack(user), slot_back)
- H.drop_item()
H.put_in_hands(new /obj/item/weapon/melee/cultblade(user))
H.put_in_hands(new /obj/item/weapon/restraints/legcuffs/bola/cult(user))
/obj/item/weapon/paper/talisman/armor/attack(mob/living/target, mob/living/user)
if(iscultist(user) && iscultist(target))
user.drop_item()
- invoke(target)
qdel(src)
+ invoke(target)
return
..()
diff --git a/code/game/gamemodes/setupgame.dm b/code/game/gamemodes/setupgame.dm
index 61abe7bf39e..688566163a8 100644
--- a/code/game/gamemodes/setupgame.dm
+++ b/code/game/gamemodes/setupgame.dm
@@ -152,10 +152,6 @@
/proc/setupcult()
var/random_cult = pick(all_cults)
var/picked_cult = new random_cult() //this seems redundent as fuck
- log_startup_progress("Summoning eldritch horrors...")
if(!picked_cult)//shouldn't happen BUT JUST TO BE SURE LET US KNOW
log_startup_progress(" Failed to select a cult datum, Shank a coder!")
- else
- log_startup_progress(" [picked_cult] has risen!")
- //todo:add adminonly datum var, check for said var here...
return picked_cult
\ No newline at end of file
diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm
index e48a5f44b32..0a582221551 100644
--- a/code/game/machinery/cryopod.dm
+++ b/code/game/machinery/cryopod.dm
@@ -325,6 +325,12 @@
// them win or lose based on cryo is silly so we remove the objective.
if(istype(O,/datum/objective/mutiny) && O.target == occupant.mind)
qdel(O)
+ else if(is_sacrifice_target(occupant.mind))
+ var/datum/game_mode/cult/cult_mode = ticker.mode
+ O.owner.objectives -= O
+ qdel(O)
+ to_chat(O.owner.current, "Our gods chosen gift has gone passed our reach, we have a new goal..Objectives Updated!")
+ cult_mode.pick_objective()
else if(O.target && istype(O.target,/datum/mind))
if(O.target == occupant.mind)
if(O.owner && O.owner.current)
diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm
index ac88d755561..343841b639c 100644
--- a/code/game/machinery/rechargestation.dm
+++ b/code/game/machinery/rechargestation.dm
@@ -92,6 +92,12 @@
A.blob_act()
qdel(src)
+/obj/machinery/recharge_station/narsie_act()
+ go_out()
+ new /obj/effect/gibspawner/generic(get_turf(loc)) //I REPLACE YOUR TECHNOLOGY WITH FLESH!
+ qdel(src)
+
+
/obj/machinery/recharge_station/attack_animal(var/mob/living/simple_animal/M)//Stop putting hostile mobs in things guise
if(M.environment_smash)
M.do_attack_animation(src)
diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm
index 4c70d0bfa09..bac9244e9d3 100644
--- a/code/game/objects/effects/decals/Cleanable/humans.dm
+++ b/code/game/objects/effects/decals/Cleanable/humans.dm
@@ -24,7 +24,7 @@ var/global/list/image/splatter_cache=list()
/obj/effect/decal/cleanable/blood/New()
..()
update_icon()
- if(ticker && ticker.mode && istype(ticker.mode.name, "cult"))
+ if(ticker && ticker.mode && ticker.mode.name == "cult")
var/datum/game_mode/cult/mode_ticker = ticker.mode
var/turf/T = get_turf(src)
if(T && (is_station_level(T.z)))//F I V E T I L E S
diff --git a/data/mode.txt b/data/mode.txt
index ef18df98db4..53cfb4d03af 100644
--- a/data/mode.txt
+++ b/data/mode.txt
@@ -1 +1 @@
-extended
+cult
diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi
index 2016309aaff..44b48beb040 100644
Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ