From c3674d8a6ebc016636613ccaecde7e5a9167fa72 Mon Sep 17 00:00:00 2001 From: jc_gargma Date: Tue, 27 Jul 2021 08:47:38 -0700 Subject: Add dialogue tree for drinking blood from mutant npcs. Change traits required for npcs to avoid being bitten. Change dialogue and remove reputation hit for non-hostile trait npcs refusing to give blood. --- .../NPC/v_npc_responds/blood-drinking.json | 207 ++++++++++++++------- .../NPC/v_npc_responds/general.json | 3 +- 2 files changed, 140 insertions(+), 70 deletions(-) (limited to 'vamp_stuff/Modification_Files/NPC') diff --git a/vamp_stuff/Modification_Files/NPC/v_npc_responds/blood-drinking.json b/vamp_stuff/Modification_Files/NPC/v_npc_responds/blood-drinking.json index 24e6578..f9d1632 100644 --- a/vamp_stuff/Modification_Files/NPC/v_npc_responds/blood-drinking.json +++ b/vamp_stuff/Modification_Files/NPC/v_npc_responds/blood-drinking.json @@ -167,7 +167,6 @@ "success": { "topic": "TALK_BLOODDRINK_ALLY_ACCEPT" }, "failure": { "topic": "TALK_BLOODDRINK_ALLY_REFUSE", - "opinion": { "trust": -1, "anger": 1 }, "effect": { "npc_add_effect": "vamp_refused_blood", "duration": 172800, "intensity": 1 } } }, @@ -251,15 +250,44 @@ }, { "text": "*Forcefully take blood*", - "note": "take blood by force. humans attack you afterwards. vampires avoid and just attack you.", - "trial": { - "type": "CONDITION", - "condition": { - "not": { "npc_has_trait": "THRESH_VAMP" } + "note": "Take blood by force. Vampires.", + "condition": { "npc_has_trait": [ "THRESH_VAMP" ] }, + "topic": "TALK_BLOODDRINK_BY_FORCE_VAMP" + }, + { + "text": "*Forcefully take blood*", + "note": "Take blood by force. Mutants with traits that make biting them a bad idea. Cut/Stab Armour 5 or higher, acid, spines, but not poison.", + "condition": { "and": [ + { "not": + { "npc_has_any_trait": [ + "THICK_SCALES", + "CHITIN", + "CHITIN2", + "CHITIN3", + "CHITIN_FUR", + "CHITIN_FUR2", + "CHITIN_FUR3", + "CF_HAIR", + "SPINES", + "QUILLS", + "BARBS", + "BARK", + "THORNS", + "INK_GLANDS", + "ACIDBLOOD" + ] + } } - }, - "success": { "topic": "TALK_BLOODDRINK_BY_FORCE_ALLY" }, - "failure": { "topic": "TALK_BLOODDRINK_BY_FORCE_VAMP" } + ] }, + "topic": "TALK_BLOODDRINK_BY_FORCE_MUTANT" + }, + { + "text": "*Forcefully take blood*", + "note": "Take blood by force. Humans.", + "condition": { "and": [ + { "not": { "npc_has_trait": [ "THRESH_VAMP" ] } } + ] }, + "topic": "TALK_BLOODDRINK_BY_FORCE_ALLY" }, { "text": "*You decide to talk more instead.*", "topic": "TALK_NONE" }, { "text": "*You decide not to.*", "topic": "TALK_DONE" } @@ -520,10 +548,10 @@ { "id": [ "TALK_BLOODDRINK_ALLY_REFUSE", "TALK_BLOODDRINK_FRIENDLY_REFUSE" ], "type": "talk_topic", - "dynamic_line": "Not a chance vampire.", - "note": "The human is very annoyed.", + "dynamic_line": "I'd rather not.", + "note": "The human is unwilling.", "responses": [ - { "text": "I shouldn't have asked...", "topic": "TALK_DONE" } + { "text": "Nevermind.", "topic": "TALK_DONE" } ] }, { @@ -535,11 +563,99 @@ { "text": "Another time then.", "topic": "TALK_DONE" } ] }, + { + "id": [ "TALK_BLOODDRINK_BY_FORCE_VAMP" ], + "type": "talk_topic", + "dynamic_line": "You arrogant whelp! You think you can steal my blood! I shall kill you for your insolence!", + "note": "The vampire is very angry. You might be able to grovel if they are your sire.", + "responses": [ + { + "text": "I'm sorry Sire! I shouldn't have tried that!", + "condition": { "and": [ + { "npc_has_trait": "VAMP_SIRE" }, + { "not": { "npc_has_trait": "vamp_sire_forgiven" } } + ] }, + "trial": { "type": "PERSUADE", "difficulty": 30 }, + "success": { "topic": "TALK_BLOODDRINK_BY_FORCE_VAMP_GROVEL", "opinion": { "trust": -1, "anger": 1 } }, + "failure": { "topic": "TALK_DONE", "effect": "hostile" } + }, + { + "text": "I'm sorry Sire! I shouldn't have tried that!", + "condition": { "and": [ + { "npc_has_trait": "VAMP_SIRE" }, + { "npc_has_trait": "vamp_sire_forgiven" } + ] }, + "topic": "TALK_BLOODDRINK_BY_FORCE_VAMP_GROVEL_TWICE" + }, + { "text": "Not if I kill you first!", "topic": "TALK_DONE", "effect": "hostile" } + ] + }, + { + "id": [ "TALK_BLOODDRINK_BY_FORCE_VAMP_GROVEL" ], + "type": "talk_topic", + "dynamic_line": "I'll give you this one chance, my ungrateful progeny. Next time I won't be so forgiving!", + "note": "The sire has decided to forgive you. This one time.", + "speaker_effect": { + "effect": [ + { "npc_add_trait": "vamp_sire_forgiven" } + ] + }, + "responses": [ + { "text": "Thank you, Sire! It will never happen again.", "topic": "TALK_DONE" } + ] + }, + { + "id": [ "TALK_BLOODDRINK_BY_FORCE_VAMP_GROVEL_TWICE" ], + "type": "talk_topic", + "dynamic_line": "You had your chance! Now you will die!", + "note": "This was your second chance.", + "responses": [ + { "text": "Not if I kill you first!", "topic": "TALK_DONE", "effect": "hostile" } + ] + }, + { + "id": [ "TALK_BLOODDRINK_BY_FORCE_MUTANT" ], + "type": "talk_topic", + "dynamic_line": "Wh-what are you...", + "note": "You caught your mutant companion off-guard. The vampire will get a nasty surprise for biting a mutant with biological defences. They might be able to avoid you if strong, fast, or hard to grab.", + "responses": [ + { + "text": "*Attempt to bite*", + "trial": { + "type": "CONDITION", + "condition": { "not": + { "npc_has_any_trait": [ + "QUICK", + "ADRENALINE", + "MARTIAL_ARTS2", + "STR_UP2", + "STR_UP3", + "STR_UP4", + "STR_ALPHA", + "SLIMY" + ] } + } + }, + "success": { "topic": "TALK_BLOODDRINK_BY_FORCE_MUTANT_SUCCESS", "opinion": { "trust": -1, "anger": 1 } }, + "failure": { "topic": "TALK_BLOODDRINK_BY_FORCE_MUTANT_FAILURE" } + }, + { "text": "Huh? Nothing.", "topic": "TALK_NONE" } + ] + }, + { + "id": [ "TALK_BLOODDRINK_BY_FORCE_MUTANT_FAILURE" ], + "type": "talk_topic", + "dynamic_line": "Oh no you don't! I'll never let some monster have my blood. I'll kill you, vampire!", + "note": "The player should receive a large morale and player faction reputation nerf for attempting to murder a follower. Yes even if they were a xeno.", + "responses": [ + { "text": "Not if I kill you first!", "topic": "TALK_DONE", "effect": [ "hostile", { "u_faction_rep": -50 } ] } + ] + }, { "id": [ "TALK_BLOODDRINK_BY_FORCE_ALLY" ], "type": "talk_topic", "dynamic_line": "Wh-what are you...", - "note": "You caught your companion off-guard. Attempt to drink them dry, though they might be able to avoid you if strong or fast.", + "note": "You caught your human companion off-guard. Attempt to drink them dry, though they might be able to avoid you if strong, fast, or hard to grab.", "responses": [ { "text": "*Attempt to bite*", @@ -547,11 +663,14 @@ "type": "CONDITION", "condition": { "not": { "npc_has_any_trait": [ - "BADTEMPER", - "KILLER", - "MOODSWINGS", - "SPIRITUAL", - "THRESH_LUPINE" + "QUICK", + "ADRENALINE", + "MARTIAL_ARTS2", + "STR_UP2", + "STR_UP3", + "STR_UP4", + "STR_ALPHA", + "SLIMY" ] } } }, @@ -596,62 +715,12 @@ { "id": [ "TALK_BLOODDRINK_BY_FORCE_ALLY_FAILURE" ], "type": "talk_topic", - "dynamic_line": "I'll never let some monster have my blood. I'll kill you, vampire!", + "dynamic_line": "Oh no you don't! I'll never let some monster have my blood. I'll kill you, vampire!", "note": "The player should receive a large morale and player faction reputation nerf for attempting to murder a follower.", "responses": [ { "text": "Not if I kill you first!", "topic": "TALK_DONE", "effect": [ "hostile", { "u_faction_rep": -50 } ] } ] }, - { - "id": [ "TALK_BLOODDRINK_BY_FORCE_VAMP" ], - "type": "talk_topic", - "dynamic_line": "You arrogant whelp! You think you can steal my blood! I shall kill you for your insolence!", - "note": "The vampire is very angry. You might be able to grovel if they are your sire.", - "responses": [ - { - "text": "I'm sorry Sire! I shouldn't have tried that!", - "condition": { "and": [ - { "npc_has_trait": "VAMP_SIRE" }, - { "not": { "npc_has_trait": "vamp_sire_forgiven" } } - ] }, - "trial": { "type": "PERSUADE", "difficulty": 30 }, - "success": { "topic": "TALK_BLOODDRINK_BY_FORCE_VAMP_GROVEL", "opinion": { "trust": -1, "anger": 1 } }, - "failure": { "topic": "TALK_DONE", "effect": "hostile" } - }, - { - "text": "I'm sorry Sire! I shouldn't have tried that!", - "condition": { "and": [ - { "npc_has_trait": "VAMP_SIRE" }, - { "npc_has_trait": "vamp_sire_forgiven" } - ] }, - "topic": "TALK_BLOODDRINK_BY_FORCE_VAMP_GROVEL_TWICE" - }, - { "text": "Not if I kill you first!", "topic": "TALK_DONE", "effect": "hostile" } - ] - }, - { - "id": [ "TALK_BLOODDRINK_BY_FORCE_VAMP_GROVEL" ], - "type": "talk_topic", - "dynamic_line": "I'll give you this one chance, my ungrateful progeny. Next time I won't be so forgiving!", - "note": "The sire has decided to forgive you. This one time.", - "speaker_effect": { - "effect": [ - { "npc_add_trait": "vamp_sire_forgiven" } - ] - }, - "responses": [ - { "text": "Thank you, Sire! It will never happen again.", "topic": "TALK_DONE" } - ] - }, - { - "id": [ "TALK_BLOODDRINK_BY_FORCE_VAMP_GROVEL_TWICE" ], - "type": "talk_topic", - "dynamic_line": "You had your chance! Now you will die!", - "note": "This was your second chance.", - "responses": [ - { "text": "Not if I kill you first!", "topic": "TALK_DONE", "effect": "hostile" } - ] - }, { "id": [ "TALK_BLOODDRINK_BY_FORCE_FRIENDLY_1" ], "type": "talk_topic", diff --git a/vamp_stuff/Modification_Files/NPC/v_npc_responds/general.json b/vamp_stuff/Modification_Files/NPC/v_npc_responds/general.json index 736e96f..1816cbd 100644 --- a/vamp_stuff/Modification_Files/NPC/v_npc_responds/general.json +++ b/vamp_stuff/Modification_Files/NPC/v_npc_responds/general.json @@ -4,7 +4,8 @@ "TALK_VAMP_PLACEHOLDER", "TALK_GHOULIFY_MENU_ALLY", "TALK_EMBRACE_MENU_ALLY", - "TALK_GHOULIFY_MENU_FRIENDLY" + "TALK_GHOULIFY_MENU_FRIENDLY", + "TALK_BLOODDRINK_BY_FORCE_MUTANT_SUCCESS" ], "type": "talk_topic", "dynamic_line": "The dialogue is not yet complete.", -- cgit v1.2.1