From 374adc9823cb873608f07f410f61cc019d492aa2 Mon Sep 17 00:00:00 2001 From: LyleSY Date: Wed, 11 Oct 2023 23:45:35 -0400 Subject: [PATCH] NPC Elvira Fish, Circulations (#68081) * Create NPC_Elvira_Fish.json * remove linting trash * Create great_library_librarian_goods.json * rem misc item group * more accurate desc * Create great_library_librarian_itemlist.json * Tools name fix * tools name fix * Match caps * Create great_library_librarian_talk.json * spaces in places * First greeting fix * Create great_library_librarian_talk_fluff.json * most senior * space * spawn Elvira * fix guard name * change spawn ids * fix spawn locations * Elvira fixes * fix greeting effect * Elvira isn't always bald * Updated goods comments * Guards have bookbags * move outside guards outside --- .../mapgen/campus/buildings/media_f0.json | 20 ++- data/json/npcs/campus/NPC_Elvira_Fish.json | 54 ++++++ .../npcs/campus/NPC_campus_guard_generic.json | 2 +- .../campus/generic_class_definitions.json | 4 + .../campus/great_library_librarian_goods.json | 50 ++++++ .../great_library_librarian_itemlist.json | 23 +++ .../campus/great_library_librarian_talk.json | 169 ++++++++++++++++++ .../great_library_librarian_talk_fluff.json | 94 ++++++++++ 8 files changed, 410 insertions(+), 6 deletions(-) create mode 100644 data/json/npcs/campus/NPC_Elvira_Fish.json create mode 100644 data/json/npcs/campus/great_library_librarian_goods.json create mode 100644 data/json/npcs/campus/great_library_librarian_itemlist.json create mode 100644 data/json/npcs/campus/great_library_librarian_talk.json create mode 100644 data/json/npcs/campus/great_library_librarian_talk_fluff.json diff --git a/data/json/mapgen/campus/buildings/media_f0.json b/data/json/mapgen/campus/buildings/media_f0.json index e15d7bfea4147..cc4ac3cf90120 100644 --- a/data/json/mapgen/campus/buildings/media_f0.json +++ b/data/json/mapgen/campus/buildings/media_f0.json @@ -15,7 +15,7 @@ "_b.?|,,,,,,,,,,,,,,,,,,,,,|[.b__________________", "bb[.|,,,,,,,,,,,,,,,,,,,,,|.?bbbbbbbbbbbbbbbbb__", "b?.?|,,,,,,,,,,,,,,,,,,,,,|.[?.[..?.??.?..?..b__", - "|||||,,,,,,,,,,,,,,,,,,,,,|||||||||[.|||||||.bbb", + "|||||||||||||||||||||||,,,|||||||||[.|||||||.bbb", "|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,||||,,,,,|.?.b", "|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|||.b", ":,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|.b", @@ -30,9 +30,9 @@ ":,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|||__", ":,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,||||,,,,,|____", "|,,,,,,,,,,,,,,,,,,,,,,,,,,,|||||||__|||||||____", - "||||||,,,,,,,,,,,,,,,,,,,,,,|_________________bb", - "b....|,,,,,,,,,,,,,,,,,,,,,||________________bb'", - "b.||||,,,,,,,,,,,,,,,,,,,,,|________________bb''", + "||||||||||||||||||||||||,,,,|_________________bb", + "b....|,,,,,,,,|,,,,,,,,|,,,||________________bb'", + "b.|||||||0||||||||0|||||,,,|________________bb''", "b.|,,,,,,,,,,,,,,,,,,,,,,,,|_______________bb'''", "b.|,,,,,,,,,,,,,,,,,,,,,,,,|_______________b''''", "b.|,,,,,,,,,,,,,,,,,,,,,,,,|_______________b''''", @@ -58,7 +58,17 @@ ], "terrain": { " ": "t_open_air" }, "furniture": { }, - "palettes": [ "campus_common" ] + "palettes": [ "campus_common" ], + "place_npcs": [ + { "class": "great_library_guard", "x": 13, "y": 1, "unique_id": "GREAT_LIBRARY_GUARD1" }, + { "class": "great_library_guard", "x": 18, "y": 1, "unique_id": "GREAT_LIBRARY_GUARD2" }, + { "class": "great_library_guard", "x": 18, "y": 5, "unique_id": "GREAT_LIBRARY_GUARD3" }, + { "class": "great_library_librarian", "x": 15, "y": 7 }, + { "class": "great_library_guard", "x": 52, "y": 4, "unique_id": "GREAT_LIBRARY_GUARD4" }, + { "class": "great_library_guard", "x": 73, "y": 3, "unique_id": "GREAT_LIBRARY_GUARD5" }, + { "class": "great_library_guard", "x": 89, "y": 3, "unique_id": "GREAT_LIBRARY_GUARD6" }, + { "class": "great_library_guard", "x": 88, "y": 19, "unique_id": "GREAT_LIBRARY_GUARD7" } + ] } } ] diff --git a/data/json/npcs/campus/NPC_Elvira_Fish.json b/data/json/npcs/campus/NPC_Elvira_Fish.json new file mode 100644 index 0000000000000..d667d1fecd7ff --- /dev/null +++ b/data/json/npcs/campus/NPC_Elvira_Fish.json @@ -0,0 +1,54 @@ +[ + { + "type": "npc", + "id": "great_library_librarian", + "name_unique": "Elvira Fish", + "//": "Appears in the Great Library as essentially a shopkeeper. Faction critical.", + "gender": "female", + "name_suffix": "Circulations", + "class": "NC_GREAT_LIBRARY_LIBRARIAN", + "attitude": 0, + "mission": 3, + "chat": "TALK_GREAT_LIBRARY_LIBRARIAN", + "faction": "the_great_library" + }, + { + "type": "npc_class", + "id": "NC_GREAT_LIBRARY_LIBRARIAN", + "name": { "str": "Circulations" }, + "job_description": "I'm a librarian.", + "common": false, + "sells_belongings": false, + "//": "Elvira is a young librarian, one of the few surviving librarians from before. She is also heir to the fabulous Fish fortune, but she threw that all away to pursue her passion for library science.", + "//2": "Elvira has a formal, professional tone but breaks into stutters when asked anything personal or uncomfortable. She will not lie.", + "//3": "Most of her dialogue goes in 'great_library_librarian_dialogue.json'. Dialogue that just does worldbuilding goes into 'great_library_librarian_dialogue_fluff.json'.", + "bonus_int": 4, + "shopkeeper_item_group": [ { "group": "GREAT_LIBRARY_Shop", "rigid": true } ], + "shopkeeper_consumption_rates": "elvira_shop_rates", + "worn_override": "NC_GREAT_LIBRARY_LIBRARIAN_worn", + "weapon_override": "NC_GREAT_LIBRARY_LIBRARIAN_carried", + "traits": [ + { "group": "Appearance_demographics" }, + { "trait": "LOVES_BOOKS" }, + { "trait": "TRUTHTELLER" }, + { "trait": "OPTIMISTIC" }, + { "trait": "STRONGBACK" }, + { "trait": "CLUMSY" }, + { "trait": "IGNORE_SOUND" }, + { "trait": "NO_BASH" }, + { "trait": "RETURN_TO_START_POS" } + ], + "skills": [ { "skill": "firstaid", "bonus": 1 }, { "skill": "speech", "bonus": 3 } ] + }, + { + "type": "effect_type", + "id": "u_Elvira_onetime_greeting", + "//": "12-hour period for the player to ask follow up questions about Elvira's initial greeting." + }, + { + "id": "elvira_shop_rates", + "copy-from": "basic_shop_rates", + "type": "shopkeeper_consumption_rates", + "extend": { "rates": [ { "item": "FMCNote", "rate": -1 } ] } + } +] diff --git a/data/json/npcs/campus/NPC_campus_guard_generic.json b/data/json/npcs/campus/NPC_campus_guard_generic.json index a7e10e28da628..2665380a76f48 100644 --- a/data/json/npcs/campus/NPC_campus_guard_generic.json +++ b/data/json/npcs/campus/NPC_campus_guard_generic.json @@ -1,7 +1,7 @@ [ { "type": "npc", - "id": "guard", + "id": "great_library_guard", "//": "A generic guard for the campus faction.", "name_suffix": "Guard", "class": "NC_CAMPUS_GUARD", diff --git a/data/json/npcs/campus/generic_class_definitions.json b/data/json/npcs/campus/generic_class_definitions.json index b44051255b3f7..2b67e7e9845c3 100644 --- a/data/json/npcs/campus/generic_class_definitions.json +++ b/data/json/npcs/campus/generic_class_definitions.json @@ -39,6 +39,10 @@ "prob": 100 }, { "distribution": [ { "item": "vest", "prob": 80 }, { "item": "vest_leather", "prob": 40 } ], "prob": 70 }, + { + "distribution": [ { "item": "backpack", "prob": 80 }, { "item": "backpack_leather", "prob": 40 } ], + "prob": 70 + }, { "distribution": [ { "item": "glasses_safety", "prob": 10 }, diff --git a/data/json/npcs/campus/great_library_librarian_goods.json b/data/json/npcs/campus/great_library_librarian_goods.json new file mode 100644 index 0000000000000..adbb73c76b0b8 --- /dev/null +++ b/data/json/npcs/campus/great_library_librarian_goods.json @@ -0,0 +1,50 @@ +[ + { + "//1": "This list tracks the things that Elvira will sell the player.", + "//2": "As a general rule of thumb, Elvira should offer any book or magazine for sale that can be easily replaced. She will never sell a rare or unique work.", + "//3": "Non-book resources should be at a minimum. Another NPC may deal in that in the future.", + "//4": "Elvira offers the following things:", + "//5": "- Books, magazines, manuals, games;", + "//6": "- Tools and resources useful for copying documents like paper and pens.", + "type": "item_group", + "id": "GREAT_LIBRARY_Shop", + "subtype": "collection", + "items": [ + { "group": "GREAT_LIBRARY_Shop_Supplies", "count": [ 10, 20 ] }, + { "group": "GREAT_LIBRARY_Shop_Books", "count": [ 40, 50 ] }, + { "group": "GREAT_LIBRARY_Shop_Tools", "count": [ 5, 8 ] } + ] + }, + { + "//": "Generic spare parts that can be used to make or repair written materials", + "type": "item_group", + "id": "GREAT_LIBRARY_Shop_Supplies", + "subtype": "distribution", + "items": [ + { "item": "duct_tape", "charges": [ 35, 50 ] }, + { "item": "superglue", "count": [ 0, 1 ] }, + { "item": "paper", "count": [ 150, 200 ] }, + { "item": "cardboard", "count": [ 10, 20 ] } + ] + }, + { + "//": "Books and games that could reasonably be found in a Community College library. No unique or rare books for sale", + "type": "item_group", + "id": "GREAT_LIBRARY_Shop_Books", + "subtype": "distribution", + "items": [ + { "group": "novels", "count": [ 9, 12 ] }, + { "group": "manuals_school", "count": [ 9, 12 ] }, + { "group": "textbooks_school", "count": [ 9, 12 ] }, + { "group": "literature", "count": [ 9, 12 ] }, + { "group": "games", "count": [ 5, 6 ] } + ] + }, + { + "//": "Tools needed to copy and repair books.", + "type": "item_group", + "id": "GREAT_LIBRARY_Shop_Tools", + "subtype": "collection", + "items": [ { "group": "pens", "count": [ 9, 12 ] }, { "item": "xacto", "count": [ 1, 2 ] } ] + } +] diff --git a/data/json/npcs/campus/great_library_librarian_itemlist.json b/data/json/npcs/campus/great_library_librarian_itemlist.json new file mode 100644 index 0000000000000..6c3b436c979a0 --- /dev/null +++ b/data/json/npcs/campus/great_library_librarian_itemlist.json @@ -0,0 +1,23 @@ +[ + { + "type": "item_group", + "id": "NC_GREAT_LIBRARY_LIBRARIAN_worn", + "subtype": "collection", + "items": [ + { "item": "panties" }, + { "item": "skirt" }, + { "item": "dress_shirt" }, + { "item": "heels" }, + { "item": "purse" }, + { "item": "diamond_ring" }, + { "item": "pearl_gold_earring" }, + { "item": "gold_bracelet" } + ] + }, + { + "type": "item_group", + "id": "NC_GREAT_LIBRARY_LIBRARIAN_carried", + "subtype": "collection", + "items": [ { "item": "magnifying_glass" } ] + } +] diff --git a/data/json/npcs/campus/great_library_librarian_talk.json b/data/json/npcs/campus/great_library_librarian_talk.json new file mode 100644 index 0000000000000..78844ce4ff781 --- /dev/null +++ b/data/json/npcs/campus/great_library_librarian_talk.json @@ -0,0 +1,169 @@ +[ + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN", + "type": "talk_topic", + "dynamic_line": { + "u_has_var": "u_met_Elvira", + "type": "general", + "context": "meeting", + "value": "yes", + "yes": [ + "*whispering. \"Welcome back to the Library.\"", + "*whispering. \"Hello again. Can I help you find something?\"", + "*whispering. \"Hello.\"" + ], + "no": "*waves and smiles. \"Welcome fellow reader.\"" + }, + "responses": [ + { + "text": "Hello, who are you? This is a library, is it?", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Intro", + "condition": { "not": { "u_has_var": "u_met_Elvira", "type": "general", "context": "meeting", "value": "yes" } }, + "effect": { "u_add_var": "u_met_Elvira", "type": "general", "context": "meeting", "value": "yes" } + }, + { + "text": "Oh sorry, I'm not interested right now.", + "topic": "TALK_DONE", + "condition": { "not": { "u_has_var": "u_met_Elvira", "type": "general", "context": "meeting", "value": "yes" } } + }, + { + "text": "I wanted to talk.", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk", + "condition": { "u_has_var": "u_met_Elvira", "type": "general", "context": "meeting", "value": "yes" } + }, + { + "text": "Let me see what you have.", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_DoneTrading", + "condition": { "u_has_var": "u_met_Elvira", "type": "general", "context": "meeting", "value": "yes" }, + "effect": "start_trade" + }, + { + "text": "Just saying hello.", + "topic": "TALK_DONE", + "condition": { "u_has_var": "u_met_Elvira", "type": "general", "context": "meeting", "value": "yes" } + } + ] + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_DoneTrading", + "type": "talk_topic", + "dynamic_line": [ "Always glad to help another reader.", "Never stop learning.", "I just love books." ], + "responses": [ + { "text": "About other things…", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk" }, + { + "text": "Let me see what you have.", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_DoneTrading", + "effect": "start_trade" + }, + { "text": "When will you have new material?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AskedRestock" }, + { "text": "That's all for now. Take care.", "topic": "TALK_DONE" } + ] + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_AskedRestock", + "type": "talk_topic", + "dynamic_line": [ + "It can be hard to predict the way things are now, but I am expecting new materials around .", + "I am expecting some new materials , hopefully some good escapism." + ], + "responses": [ + { "text": "Actually, I wanted to ask…", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk" }, + { "text": "Thanks, I will make sure to check back.", "topic": "TALK_DONE" } + ] + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_Intro", + "type": "talk_topic", + "dynamic_line": "Before you ask, we can't lend out books anymore. We've had too many stolen and destroyed. If you want to read something, either do it here or I will need to sell it to you for something useful, like a book. Oh, my name is Elvira Fish, I run Circulations here. I hope you learn something.", + "speaker_effect": [ + { + "sentinel": "has_onetime_greeting_effect", + "condition": { "not": { "u_has_effect": "u_Elvira_onetime_greeting" } }, + "effect": [ { "u_add_effect": "u_Elvira_onetime_greeting", "duration": "12 hours" } ] + } + ], + "responses": [ + { "text": "Can you answer some questions for me?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk" }, + { + "text": "Let me look at what you have.", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_DoneTrading", + "effect": "start_trade" + }, + { "text": "I just want to browse. See you.", "topic": "TALK_DONE" } + ] + }, + { + "id": [ + "TALK_GREAT_LIBRARY_LIBRARIAN_Talk", + "TALK_GREAT_LIBRARY_LIBRARIAN_AboutGreeting_End", + "TALK_GREAT_LIBRARY_LIBRARIAN_WhosInCharge" + ], + "type": "talk_topic", + "dynamic_line": [ "Of course, how can I help?", "I would be happy to assist.", "Of course, please ask.", "What questions do you have?" ], + "responses": [ + { + "text": "You can't lend out books? What kind of library is that?", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutGreeting", + "condition": { "u_has_effect": "u_Elvira_onetime_greeting" }, + "effect": { "u_lose_effect": "u_Elvira_onetime_greeting" } + }, + { "text": "What are you doing here?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Plans" }, + { "text": "You want even more books?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_MoreBooks" }, + { "text": "Who's in charge here?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_WhosInCharge" }, + { "text": "Is there any way I can join your group?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AskJoin" }, + { "text": "What's your story?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutMe" }, + { + "text": "Have you heard anything about the rest of the world?", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_OutsideWorld" + }, + { + "text": "Let me see what you have.", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_DoneTrading", + "effect": "start_trade" + }, + { "text": "Actually, I need to head out.", "topic": "TALK_DONE" } + ] + }, + { + "id": [ + "TALK_GREAT_LIBRARY_LIBRARIAN_OutsideWorld", + "TALK_GREAT_LIBRARY_LIBRARIAN_OutsideWorld1", + "TALK_GREAT_LIBRARY_LIBRARIAN_OutsideWorld2" + ], + "type": "talk_topic", + "dynamic_line": "Some, here and there. My responsibilities keep me here but I have spoken with traveling merchants. They thought we wanted guns and were confused that we wished to trade books for books. I must assume that most of the other survivors are more violent and less scholarly.", + "responses": [ + { + "text": "Are there any other settlements around?", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Robofac", + "condition": { + "and": [ + { + "not": { "u_has_var": "u_hub01_breadcrumb_accepted", "type": "general", "context": "free_merchants", "value": "yes" } + }, + { + "not": { "u_has_var": "completed_robofac_intercom_2", "type": "dialogue", "context": "intercom", "value": "yes" } + } + ] + } + }, + { + "text": "Are there any other settlements around?", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_OutsideWorld2", + "condition": { + "or": [ + { "u_has_var": "u_hub01_breadcrumb_accepted", "type": "general", "context": "free_merchants", "value": "yes" }, + { "u_has_var": "completed_robofac_intercom_2", "type": "dialogue", "context": "intercom", "value": "yes" } + ] + } + }, + { "text": "That's fine for now.", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk" } + ] + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_MoreBooks", + "type": "talk_topic", + "dynamic_line": "Yes we are. We still have some of our original collection, but far too much of it was stolen or destroyed, and of course it was far from complete even before. Some of us go out to try and rebuild the collection from towns nearby, but mostly we rely on people passing through like you. We especially want anything rare and hard to find.", + "responses": [ { "text": "I'll keep that in mind.", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk" } ] + } +] diff --git a/data/json/npcs/campus/great_library_librarian_talk_fluff.json b/data/json/npcs/campus/great_library_librarian_talk_fluff.json new file mode 100644 index 0000000000000..574e65eaafbe2 --- /dev/null +++ b/data/json/npcs/campus/great_library_librarian_talk_fluff.json @@ -0,0 +1,94 @@ +[ + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutGreeting", + "type": "talk_topic", + "dynamic_line": "*frowning. \"Listen, we are doing our best here. Most of our original staff is gone and people keep stealing and breaking things for no reason. We're just trying to protect some information for the future.\"", + "responses": [ + { "text": "Okay, I'm sorry.", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutGreeting_End" }, + { "text": "But why bother then?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutGreeting_Why" } + ] + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutGreeting_End", + "type": "talk_topic", + "dynamic_line": "*deep breath, tired smile. \"How else can I help you?\"" + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutGreeting_Why", + "type": "talk_topic", + "dynamic_line": "*frowning, grimacing. \"I don't know. It's. I can't talk about this right now.\"", + "responses": [ + { "text": "Of course, I'm sorry.", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutGreeting_End" }, + { "text": "I should probably go.", "topic": "TALK_DONE" } + ] + }, + { + "id": [ "TALK_GREAT_LIBRARY_LIBRARIAN_AboutMe", "TALK_GREAT_LIBRARY_LIBRARIAN_AboutMe_Basic" ], + "type": "talk_topic", + "dynamic_line": "Oh. Um. I guess I like stories. And quiet.", + "responses": [ + { "text": "How did you end up here?", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutMe_Basic" }, + { "text": "That's fine for now.", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk" } + ] + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_AboutMe_Basic", + "type": "talk_topic", + "dynamic_line": "Oh, well I took a job here about a year before , and I was living alone when things got bad and I thought I might be safer here with work friends. My friends Beatrice and Ross and I got some supplies ready and then more people started to join us. And then it got bad. But I think that has settled down some now." + }, + { + "id": [ + "TALK_GREAT_LIBRARY_LIBRARIAN_AskJoin", + "TALK_GREAT_LIBRARY_LIBRARIAN_AskJoin1", + "TALK_GREAT_LIBRARY_LIBRARIAN_AskJoin2" + ], + "type": "talk_topic", + "dynamic_line": "Oh. Um. I don't. I don't think that makes sense right now. I have enough help here, and we. Maybe when things are more settled but not now. But you might ask others if they need help.", + "responses": [ + { "text": "Another time, then.", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk" }, + { "text": "I'm useful! I have skills!", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AskJoin1" }, + { + "text": "Maybe I could change your mind…?~", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_AskJoin2", + "condition": { "u_has_item": "condom" } + } + ] + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_AskJoin1", + "type": "talk_topic", + "dynamic_line": "Um. Right, I guess you made it this far. But. Really I don't have something right now. But really if you could find some books to trade us that would be great. We really should be rebuilding the collection. Really. Um." + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_AskJoin2", + "type": "talk_topic", + "dynamic_line": "Um. Well. You shouldn't. I shouldn't. Um. I don't. Let's talk about something else." + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_OutsideWorld1", + "type": "talk_topic", + "dynamic_line": "Yes, so I hear. One trader I talked to said they have a whole market somewhere with all kinds of useful things. Not a lot of books though, it sounds like." + }, + { + "id": [ "TALK_GREAT_LIBRARY_LIBRARIAN_Plans", "TALK_GREAT_LIBRARY_LIBRARIAN_Plans2" ], + "type": "talk_topic", + "dynamic_line": "Trying to keep the library here in good order. She's seen some hard times recently and needs a lot of love. Past that, well…I guess it would be good to get the rest of the campus cleaned up. That's what Jack wants to do but we don't have any guns and we don't want to. I know Callista wants to get classes going again as soon as possible though I imagine we have some problems with the academic interests of the students still with us and the teachers we have left.", + "responses": [ + { + "text": "You're really just going to keep going like nothing happened?", + "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Plans2" + }, + { "text": "I hope it works out for you.", "topic": "TALK_GREAT_LIBRARY_LIBRARIAN_Talk" } + ] + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_Plans2", + "type": "talk_topic", + "dynamic_line": "*frowning. \"It's not. I'm not saying nothing happened. We lost a lot. I lost a lot. We just need to go forward. We need to put things back together and help people. That's why this place is here. What else would we do? We can't give up too." + }, + { + "id": "TALK_GREAT_LIBRARY_LIBRARIAN_WhosInCharge", + "type": "talk_topic", + "dynamic_line": "Oh, we did have a President, Mx. Rose. As things were starting to get bad they locked themself into the administrative building with all of the senior staff. It's a good thing too because that building is full of the dead now, just like the rest except the library here. For now everyone is still trying to operate under the old library structure, so I guess I'm in charge now as the most senior library staff left, though we have some survivors here from the other buildings from other divisions. Callista Rupp from Academics is here, she taught physics. I think she was at MIT for a while. And Jack Springer from Facilities is here too, he's probably the only really practical person here, very handy! It was his idea to board up the other buildings." + } +]