diff --git a/code/game/gamemodes/cult/runes/_rune.dm b/code/game/gamemodes/cult/runes/_rune.dm index 2c1236cba80..173dd35bebd 100644 --- a/code/game/gamemodes/cult/runes/_rune.dm +++ b/code/game/gamemodes/cult/runes/_rune.dm @@ -168,7 +168,8 @@ words.Remove(word) update_icon() -/// Sets up the appearance of all random runes at mapgen. Called here instead of `Initialize()` to avoid runtimes. +/// Sets up the appearance of all random runes that were placed before roundstart. Called here instead of `Initialize()` to avoid runtimes. /hook/roundstart/proc/populate_malformed_runes() for (var/obj/effect/rune/mapgen/M in cult.all_runes) M.generate_words() + return TRUE diff --git a/code/game/gamemodes/cult/runes/astral_journey.dm b/code/game/gamemodes/cult/runes/astral_journey.dm index eefa0a0f46f..ff6f5eac1e4 100644 --- a/code/game/gamemodes/cult/runes/astral_journey.dm +++ b/code/game/gamemodes/cult/runes/astral_journey.dm @@ -50,7 +50,7 @@ ghost.forbid_seeing_deadchat = TRUE ghost.name = "???" ghost.color = COLOR_LIGHT_RED - announce_ghost_joinleave(ghost, TRUE, "You feel that they had to use some [pick("dark", "black", "blood", "forgotten", "forbidden")] magic to [pick("invade","disturb","disrupt","infest","taint","spoil","blight")] this place!") + announce_ghost_joinleave(ghost, TRUE, "You feel that they had to use [pick("dark", "black", "blood", "forgotten", "forbidden")] magic to [pick("invade","disturb","disrupt","infest","taint","spoil","blight")] this place!") START_PROCESSING(SSprocessing, src) /obj/effect/rune/astral_journey/process() diff --git a/code/game/gamemodes/cult/runes/communicate.dm b/code/game/gamemodes/cult/runes/communicate.dm index b7834a55503..f322d4797f6 100644 --- a/code/game/gamemodes/cult/runes/communicate.dm +++ b/code/game/gamemodes/cult/runes/communicate.dm @@ -1,6 +1,6 @@ /obj/effect/rune/communicate rune_name = "Communicate" - rune_desc = "Allows you to communicate with other cultists by speaking aloud next to the rune. Can be muted or unmuted through invocation." + rune_desc = "Allows you to communicate with other cultists by speaking or whispering aloud next to the rune. The rune can be muted or unmuted by invoking it." talisman_path = /obj/item/paper/talisman/communicate circle_words = list(CULT_WORD_SELF, CULT_WORD_OTHER, CULT_WORD_TECHNOLOGY) invocation = "O bidai nabora se'sma!" diff --git a/code/game/gamemodes/cult/runes/convert.dm b/code/game/gamemodes/cult/runes/convert.dm index 2cd424bd6ad..5ba8716fc2f 100644 --- a/code/game/gamemodes/cult/runes/convert.dm +++ b/code/game/gamemodes/cult/runes/convert.dm @@ -29,7 +29,7 @@ break var/datum/gender/G = gender_datums[converting.get_visible_gender()] converting.visible_message( - SPAN_DANGER("[converting] writhes in agony as the markings below [G.him] glow a sullen, bloody red."), + SPAN_DANGER("[converting] writhes as the markings below [G.him] glow a sullen, bloody red."), SPAN_DANGER("AAAAAAHHHH-") ) converting.emote("scream") @@ -42,7 +42,7 @@ ) return else - to_chat(user, SPAN_NOTICE("The ritual is begun. You must keep [converting] atop the rune until [G.him] succumb[G.s] to the Geometer's influence... or die from its revelation.")) + to_chat(user, SPAN_NOTICE("The ritual is begun. You must keep [converting] atop the rune until [G.he] succumb[G.s] to the Geometer's influence - or die[G.s] from the revelation.")) impudence = 1 START_PROCESSING(SSprocessing, src) process() @@ -50,7 +50,7 @@ /obj/effect/rune/convert/process() if (!can_convert(converting) || !cult.can_become_antag(converting.mind) || get_turf(converting) != get_turf(src)) if (converting) - to_chat(converting, SPAN_DANGER("And then, just like that, it was gone. The blackness slowly recedes, and you are yourself again. It has taken something precious from you.")) + to_chat(converting, SPAN_DANGER("And then, just like that, it was gone. The blackness slowly recedes, and you are yourself again. Are you still whole?")) converting = null waiting_for_input = FALSE STOP_PROCESSING(SSprocessing, src) @@ -64,29 +64,28 @@ var/choice = alert(converting, "Submit to the presence invading your head?", "Submit to Nar-Sie", "Submit!", "Resist!") waiting_for_input = FALSE if (choice == "Submit!") - cult.add_antagonist(converting.mind) - converting.hallucination = 0 to_chat(converting, SPAN_OCCULT("Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible truth. The veil of reality has been ripped away and in the festering wound left behind something sinister takes root.")) to_chat(converting, SPAN_OCCULT("Assist your new compatriots in their dark dealings. Their goal is yours, and yours is theirs. You serve the Dark One above all else. Bring It back.")) + cult.add_antagonist(converting.mind) + converting.hallucination = 0 converting = null STOP_PROCESSING(SSprocessing, src) if (impudence) converting.take_overall_damage(0, min(5 * impudence, 20)) + converting.apply_effect(min(5 * impudence, 20), AGONY) switch (converting.getFireLoss()) if (0 to 25) to_chat(converting, SPAN_DANGER("You feel like every part of you is on fire as you force yourself to resist the corruption invading every corner of your mind.")) - if(25 to 45) - to_chat(converting, SPAN_DANGER("Everything is so, so hot. It feels like it's inside your body. Inside your soul.")) - if(45 to 75) - to_chat(converting, SPAN_DANGER("Flickering images of a vast, vast, dark thing engulf your vision. Your will is crumbling.")) + if (45 to 75) + to_chat(converting, SPAN_DANGER("Flickering images of a vast, vast, dark thing engulf your vision. Everything is so, so hot.")) converting.apply_effect(rand(1, 10), STUTTER) - if(75 to 100) - to_chat(converting, SPAN_DANGER("You feel like you're being cremated. Images of unspeakable horrors are bombarding the last remnants of your mental resistance.")) + if (75 to 100) + to_chat(converting, SPAN_DANGER("You feel like you're being cremated. Images of unspeakable horror flicker through your senses like a slideshow.")) converting.hallucination = min(converting.hallucination + 100, 500) converting.apply_effect(10, STUTTER) converting.adjustBrainLoss(1) - if(100 to INFINITY) - to_chat(converting, SPAN_DANGER("You are broken. Everything is on fire. You feel yourself slipping away, drawn towards inexorable nothingness.")) + if (100 to INFINITY) + to_chat(converting, SPAN_DANGER("Everything is on fire. You feel yourself coming apart, drawn towards inexorable nothingness.")) converting.hallucination = min(converting.hallucination + 100, 500) converting.apply_effect(15, STUTTER) converting.adjustBrainLoss(1) diff --git a/code/game/gamemodes/cult/runes/imbue_talisman.dm b/code/game/gamemodes/cult/runes/imbue_talisman.dm index a9a36f0994c..9b888b65a20 100644 --- a/code/game/gamemodes/cult/runes/imbue_talisman.dm +++ b/code/game/gamemodes/cult/runes/imbue_talisman.dm @@ -1,6 +1,7 @@ /obj/effect/rune/imbue_talisman rune_name = "Imbue Talisman" - rune_desc = "Etches the markings of a nearby rune onto a piece of paper on top of this one. Only some runes can be made into talismans." + rune_desc = "Used to create talismans. To use, place a sheet of paper onto this rune, then scribe a different type of rune adjacent to this one. Invoke this one afterwards, and the other rune will be etched onto the paper, creating a talisman out of it. Only some runes can be made into talismans." + rune_shorthand = "Used to create talismans out of sheets of paper and other runes." circle_words = list(CULT_WORD_HELL, CULT_WORD_TECHNOLOGY, CULT_WORD_JOIN) invocation = "H'drak v'loso, mir'kanas verbot!" diff --git a/code/game/gamemodes/cult/runes/raise_dead.dm b/code/game/gamemodes/cult/runes/raise_dead.dm index 0861d4aff66..2c48176e1d9 100644 --- a/code/game/gamemodes/cult/runes/raise_dead.dm +++ b/code/game/gamemodes/cult/runes/raise_dead.dm @@ -1,6 +1,6 @@ /obj/effect/rune/raise_dead rune_name = "Raise Dead" - rune_desc = "This rune allows for the resurrection of any dead person. You will need a dead human body and a living human sacrifice. Make 2 raise dead runes. Put a living, awake human on top of one, and a dead body on the other one. When you invoke the rune, the life force of the living human will be transferred into the dead body, allowing a ghost standing on top of the dead body to enter it, instantly and fully healing it. Use other runes to ensure there is a ghost ready to be resurrected." + rune_desc = "This rune allows for the resurrection of a dead body. You will need two copies of this rune - place a living human on top of one to use as a sacrifice, and the corpse you wish to resurrect on the other one. If the ritual is successful, the corpse will return from the dead fully healthy, while the sacrifice will be torn apart." rune_shorthand = "Brings a dead body to life using the sacrifice of a living human on another copy of the rune. If the dead body is not a cultist, they will become one." circle_words = list(CULT_WORD_BLOOD, CULT_WORD_JOIN, CULT_WORD_SELF) invocation = "Pasnar val'keriam usinar. Savrae ines amutan. Yam'toth remium il'tarat!" @@ -53,7 +53,7 @@ if (ghost) ghost.notify_revive("The cultist [L.real_name] is attempting to raise you from the dead. Return to your body if you wish to be risen into the service of Nar-Sie!", 'sound/effects/genetics.ogg', source = src) if (do_after(shears, 5 SECONDS, lamb, FALSE, incapacitation_flags = INCAPACITATION_NONE)) - resurrect(shears, lamb) + resurrect(shears, lamb, invokers[1]) return to_chat(L, SPAN_NOTICE("The ritual's participants must remain stationary!")) if (shears) @@ -75,11 +75,11 @@ shears.visible_message(SPAN_WARNING("\The [shears] drops unceremoniously to the ground.")) lamb.visible_message( SPAN_WARNING("\The [lamb] drops unceremoniously to the ground."), - SPAN_DANGER("THe force releases its hold on you, and you fall back to the ground!") + SPAN_DANGER("The force releases its hold on you, and you fall back to the ground!") ) playsound(shears, "bodyfall", 50, TRUE) playsound(lamb, "bodyfall", 50, TRUE) - to_chat(invoker, SPAN_WARNING("The deceased's spirit did not return to its body. It may if you try again, or it may not.")) + to_chat(invoker, SPAN_WARNING("The deceased's spirit did not return to its body. It might work if you try again, or it might not.")) return var/datum/gender/GS = gender_datums[shears.get_visible_gender()] lamb.visible_message( @@ -90,13 +90,11 @@ for (var/obj/item/organ/external/E in lamb.organs) E.droplimb(FALSE, DROPLIMB_EDGE) shears.revive() - shears.visible_message( - SPAN_DANGER("\The [shears] convulses violently as [GS.he] suddenly comes back to life!"), - SPAN_DANGER("Life... you're alive again...") - ) + shears.visible_message(SPAN_DANGER("\The [shears] convulses violently as [GS.he] suddenly comes back to life!")) + to_chat(shears, SPAN_DANGER(FONT_LARGE("You are enveloped in a burning red light, plucked from death and forced back into your corpse like a taxidermist might stuff an animal."))) if (!iscultist(shears)) - cult.add_antagonist(shears.mind) to_chat(shears, SPAN_OCCULT("Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible truth. The veil of reality has been ripped away and in the festering wound left behind something sinister takes root.")) to_chat(shears, SPAN_OCCULT("Assist your new compatriots in their dark dealings. Their goal is yours, and yours is theirs. You serve the Dark One above all else. Bring It back.")) + cult.add_antagonist(shears.mind) shears.flash_eyes(override_blindness_check = TRUE) shears.Paralyse(10) diff --git a/code/game/gamemodes/cult/runes/stun.dm b/code/game/gamemodes/cult/runes/stun.dm index e67a0f5f8e1..d6f58505240 100644 --- a/code/game/gamemodes/cult/runes/stun.dm +++ b/code/game/gamemodes/cult/runes/stun.dm @@ -1,6 +1,6 @@ /obj/effect/rune/stun rune_name = "Stun" - rune_desc = "This rune is specialized for use in talismans; invoked on its own, its only effect is to slightly disorient nearby beings." + rune_desc = "This rune is specialized for use in talismans; invoked on its own, its only effect is to slightly disorient nearby beings. Cultists are also affected." talisman_path = /obj/item/paper/talisman/stun circle_words = list(CULT_WORD_JOIN, CULT_WORD_HIDE, CULT_WORD_TECHNOLOGY) invocation = "Fuu ma'jin!" diff --git a/code/game/gamemodes/cult/runes/weapon.dm b/code/game/gamemodes/cult/runes/weapon.dm index 296e75cd1a5..34ca2b3982a 100644 --- a/code/game/gamemodes/cult/runes/weapon.dm +++ b/code/game/gamemodes/cult/runes/weapon.dm @@ -1,6 +1,6 @@ /obj/effect/rune/weapon rune_name = "Weapon" - rune_desc = "Creates a deadly blade, adept at maiming and dismemberment. Use sparingly, for the Geometer disdains bloodshed not executed at Its behest." + rune_desc = "Creates a deadly blade, adept at maiming and dismemberment. Use sparingly, for the Geometer disdains bloodshed not executed at Its request." circle_words = list(CULT_WORD_HELL, CULT_WORD_DESTROY, CULT_WORD_OTHER) invocation = "Sa tatha rajin!" @@ -9,7 +9,7 @@ var/obj/item/melee/cultblade/C = new (get_turf(src)) L.put_in_active_hand(C) L.visible_message( - SPAN_DANGER("The runes coalesce into a long, cruel blade, which [L.get_active_hand() == C ? "\the [L] picks up" : "settles on the floor"]."), - SPAN_DANGER("The runes coalesce into a serrated blade[L.get_active_hand() == C ? ", which you pick up" : ""].") + SPAN_DANGER("The runes coalesce into a long and cruel blade, which [L.get_active_hand() == C ? "\the [L] picks up" : "settles on the floor"]."), + SPAN_DANGER("The runes coalesce into a long and cruel blade[L.get_active_hand() == C ? ", which you pick up" : ""].") ) qdel(src) diff --git a/code/game/gamemodes/cult/talismans/stun.dm b/code/game/gamemodes/cult/talismans/stun.dm index 5808b0e7f0b..e5ac38eeb61 100644 --- a/code/game/gamemodes/cult/talismans/stun.dm +++ b/code/game/gamemodes/cult/talismans/stun.dm @@ -1,13 +1,13 @@ /obj/item/paper/talisman/stun talisman_name = "Stun" - talisman_desc = "Forces the concentrated energy of a stun rune into a struck target, immediately knocking them to the ground. Humans will be prevented from speaking for a time." - tome_desc = "Forces concentrated energy into a struck target, knocking them to the ground and preventing them from speaking. Must be on Harm intent to use." - invocation = "Dream sign 'Evil Sealing Talisman'!" // I think this is a touhou reference + talisman_desc = "Forces concentrated energy into a struck target, immediately knocking them to the ground. Humans will be prevented from speaking for a time. This will be obvious to anyone nearby." + tome_desc = "Forces concentrated energy into a struck target, knocking them to the ground and preventing them from speaking. This is obvious to anyone nearby." + invocation = "Dream sign 'Evil Sealing Talisman'!" // I think this is a touhou reference, but I'm not sure - I kept it from the old implementation just in case whispered = FALSE /obj/item/paper/talisman/stun/attack_self(mob/living/user) if (iscultist(user)) - to_chat(user, SPAN_NOTICE("To use this talisman, attack someone with it.")) + to_chat(user, SPAN_NOTICE("To use this talisman, attack someone with it while on Harm intent.")) return /obj/item/paper/talisman/stun/attack(mob/living/carbon/T, mob/living/user)