diff --git a/data/mods/DinoMod/NPC/NC_Yoshimi.json b/data/mods/DinoMod/NPC/NC_Yoshimi.json index a3c46e348b46..4526f1c753f5 100644 --- a/data/mods/DinoMod/NPC/NC_Yoshimi.json +++ b/data/mods/DinoMod/NPC/NC_Yoshimi.json @@ -6,9 +6,10 @@ "name_suffix": "DinoLab survivor", "class": "dm_dinolab_survivor", "attitude": 0, - "mission": 0, + "mission": 7, "chat": "TALK_Yoshimi_1", - "faction": "no_faction" + "faction": "no_faction", + "mission_offered": "MISSION_DinoLab_Yos_1" }, { "type": "npc_class", @@ -50,7 +51,8 @@ "yes": [ "How can I help you survivor?", "Seen any interesting specimens? I mean dinosaurs.", - "I was just imagining you transforming into a tyrannosaurus rex. Of course that's impossible. Unless…" + "I was just imagining you transforming into a tyrannosaurus rex. Of course that's impossible. Unless…", + "Let's do some science." ], "no": "Please leave me be, I am but a humble muck farmer in this humble muck." }, @@ -64,12 +66,12 @@ { "text": "Die demon mutant!", "effect": [ { "u_add_var": "u_met_yoshimi", "type": "general", "context": "meeting", "value": "yes" }, "insult_combat" ], - "condition": { "not": { "u_has_var": "u_met_sadie", "type": "general", "context": "meeting", "value": "yes" } }, + "condition": { "not": { "u_has_var": "u_met_yoshimi", "type": "general", "context": "meeting", "value": "yes" } }, "topic": "TALK_DONE" }, { "text": "How did you get here?", - "condition": { "and": [ { "u_has_var": "u_met_yoshimi", "type": "general", "context": "meeting", "value": "yes" } ] }, + "condition": { "and": [ { "u_has_var": "Yos_chemistry", "type": "mission", "context": "flag", "value": "yes" } ] }, "topic": "TALK_yoshimi_ask_past" }, { @@ -77,6 +79,11 @@ "condition": { "and": [ { "u_has_var": "u_met_yoshimi", "type": "general", "context": "meeting", "value": "yes" } ] }, "topic": "TALK_yoshimi_ask_mood" }, + { + "text": "You look like you need help. Can I do something for you?", + "condition": { "and": [ { "u_has_var": "u_met_yoshimi", "type": "general", "context": "meeting", "value": "yes" } ] }, + "topic": "TALK_MISSION_LIST" + }, { "text": "Goodbye.", "topic": "TALK_DONE" } ] }, @@ -94,12 +101,12 @@ "type": "talk_topic", "id": "TALK_yoshimi_what", "dynamic_line": "I am a hard working professional in a challenging field adjusting to a recent change in circumstances. That is all you need to know.", - "responses": [ { "text": "I should go.", "topic": "TALK_DONE" } ] + "responses": [ { "text": "Fair enough.", "topic": "TALK_Yoshimi_1" } ] }, { "type": "talk_topic", "id": "TALK_yoshimi_ask_past", - "dynamic_line": "My manager Dr. Tingle made some important mistakes and I have had to make some quick decisions I would rather not go into detail on. In retrospect our faculties may have been influenced by external factors. Suffice to say Dr. Tingle is no longer with us but died doing what they wanted most in the world. And I escaped alive.", + "dynamic_line": "My manager Dr. Tingle made some important mistakes and I have had to make some quick decisions I would rather not go into detail on. In retrospect our faculties may have been influenced by external factors. Suffice to say Dr. Tingle is no longer with us but died happy. And I escaped alive.", "responses": [ { "text": "Let's talk about something else.", "topic": "TALK_Yoshimi_1" } ] }, { @@ -113,5 +120,84 @@ "id": "TALK_yoshimi_ask_mood", "dynamic_line": "I just got here actually, I've found it wise to move a lot recently. There may be some interesting specimens nearby. I mean dinosaurs.", "responses": [ { "text": "Interesting.", "topic": "TALK_Yoshimi_1" } ] + }, + { + "id": "MISSION_DinoLab_Yos_1", + "type": "mission_definition", + "name": { "str": "First we need some supplies" }, + "goal": "MGOAL_FIND_ITEM", + "difficulty": 2, + "value": 1000, + "item": "chemistry_set", + "start": { + "assign_mission_target": { "om_terrain": "microlab_generic_surface", "reveal_radius": 1, "random": true, "search_range": 200 }, + "update_mapgen": [ + { + "om_terrain": "microlab_generic_surface", + "place_item": [ { "item": "chemistry_set", "x": 12, "y": 12 } ], + "place_monster": [ { "group": "GROUP_DINOSAUR_ZOMBIE", "x": 12, "y": 12 } ] + } + ], + "effect": { "u_add_var": "Yos_chemistry", "type": "mission", "context": "flag", "value": "in_progress" } + }, + "end": { + "effect": [ + { "u_add_var": "Yos_chemistry", "type": "mission", "context": "flag", "value": "yes" }, + { "u_adjust_var": "DinoLab_power", "type": "counter", "context": "DinoLab", "adjustment": 2 } + ] + }, + "origins": [ "ORIGIN_SECONDARY" ], + "followup": "MISSION_DinoLab_Yos_2", + "dialogue": { + "describe": "I think I might know where a decent chemistry set is…", + "offer": "I need a full chemistry set to do my work properly. I could use some help.", + "accepted": "So much to do.", + "rejected": "Fine, you'll probably be dead soon anyway.", + "advice": "It might be too dangerous now, any working full chemistry set is fine. There is a good chance something got out.", + "inquire": "Do you have the set yet?", + "success": "Let's get started.", + "success_lie": "Very convincing. I do need an actual chemistry set to work though.", + "failure": "It's fine, I'll make something work." + } + }, + { + "id": "MISSION_DinoLab_Yos_2", + "type": "mission_definition", + "name": { "str": "Kiernan consult" }, + "goal": "MGOAL_FIND_ITEM", + "difficulty": 2, + "value": 1000, + "item": "kiernans_notes", + "start": { + "assign_mission_target": { "om_terrain": "dinoexhibit", "reveal_radius": 1, "random": true, "search_range": 120 }, + "update_mapgen": [ + { + "om_terrain": "dinoexhibit", + "place_item": [ { "item": "kiernans_notes", "x": 20, "y": 9 }, { "item": "portal", "x": 20, "y": 9 } ], + "place_monster": [ + { "monster": "mon_zombie_scientist", "name": "Kiernan", "x": 20, "y": 9 }, + { "monster": "mon_zeinonychus_bio_op", "x": 21, "y": 9 } + ] + } + ] + }, + "end": { + "effect": [ + { "u_buy_item": "kiernans_notes" }, + { "u_adjust_var": "DinoLab_power", "type": "counter", "context": "DinoLab", "adjustment": 2 } + ] + }, + "origins": [ "ORIGIN_SECONDARY" ], + "dialogue": { + "describe": "I need some expert advice…", + "offer": "I don't have access to standard lab procedures here. Find Dr. Kiernan and get some notes on the basics. I can work from there.", + "accepted": "So much to do.", + "rejected": "Ugh.", + "advice": "Kiernan is probably still at the old field office. It should be fine as long as the emergency power is still working. You may have to do some kind of stupid task before Kiernan talks. Try not to get violent. If Kiernan is dead try and find some notes or books.", + "inquire": "Do you have the information yet?", + "success": "Let's get started. Oh, I'll make you a copy just in case.", + "success_lie": "Very convincing. I do need the information to work though.", + "failure": "It's fine, I'll make something work." + } } ] diff --git a/data/mods/DinoMod/mapgen/swamp_shack.json b/data/mods/DinoMod/mapgen/swamp_shack.json index f455debc5e34..9f28cb4a6906 100644 --- a/data/mods/DinoMod/mapgen/swamp_shack.json +++ b/data/mods/DinoMod/mapgen/swamp_shack.json @@ -118,7 +118,7 @@ "repeat": 4 }, { "chunks": [ "cattail", "null" ], "x": [ 0, 6 ], "y": [ 18, 23 ], "neighbors": { "west": "forest_water" } }, - { "chunks": [ "NC_Yoshimi_spawn" ], "x": [ 10 ], "y": [ 8 ] } + { "chunks": [ "NC_Yoshimi_spawn" ], "x": [ 10 ], "y": [ 9 ] } ] } }