diff --git a/data/json/items/generic.json b/data/json/items/generic.json index 4f624aa79ec34..a42ec10e6fa61 100644 --- a/data/json/items/generic.json +++ b/data/json/items/generic.json @@ -1413,6 +1413,18 @@ "to_hit": -1, "flags": [ "NANOFAB_TEMPLATE", "TRADER_AVOID" ] }, + { + "type": "GENERIC", + "id": "template_photonics", + "copy-from": "standard_template_construct", + "color": "yellow", + "name": "nanofabricator template (silicon photonics)", + "description": "A state-of-the-art optical storage system, containing the instruction set required for the fabrication of complex silicon photonic circuitry. The data within was once clearly worth millions, but now, you are not sure if it's anything more than a fancy, high-tech paperweight.", + "price": 200000000, + "//": "actually worth millions", + "price_postapoc": 350, + "flags": [ "TRADER_AVOID" ] + }, { "type": "GENERIC", "id": "antenna", diff --git a/data/json/mapgen/robofaq_locs/robofac_mission_chunks.json b/data/json/mapgen/robofaq_locs/robofac_mission_chunks.json index 1fdb8538b94cb..470c03333ad5a 100644 --- a/data/json/mapgen/robofaq_locs/robofac_mission_chunks.json +++ b/data/json/mapgen/robofaq_locs/robofac_mission_chunks.json @@ -1,46 +1,59 @@ -{ - "type": "mapgen", - "method": "json", - "nested_mapgen_id": "robofac_mi2_convoy_ambush_chunk", - "object": { - "mapgensize": [ 24, 24 ], - "rows": [ - " ", - " ", - " ######### ## ", - " A #### ", - " # # # # ", - " # ## # #### ", - " ####### ### ", - " ### # ", - " # ", - " # ", - " ## # ", - " # ", - " ### ## ", - " ## # # ", - " ## ## ", - " # ### ## # ", - " M ######## ", - " @ #### ", - " #### ", - " ## ##########", - " #### ", - " A ## ", - " ##### ", - " " - ], - "terrain": { "@": "t_pavement", "A": "t_pavement", "M": "t_pavement", "#": "t_pavement" }, - "furniture": { "#": "f_wreckage" }, - "place_vehicles": [ - { "vehicle": "humvee", "x": 18, "y": 15, "fuel": 0, "status": 1, "chance": 100 }, - { "vehicle": "humvee", "x": 16, "y": 4, "fuel": 0, "status": 1, "chance": 100 }, - { "vehicle": "aapc-mg", "x": 10, "y": 10, "fuel": 0, "status": 1, "chance": 100 } - ], - "items": { "@": { "item": "lab_torso", "chance": 100 } }, - "item": { "@": [ { "item": "rmi2_corpse" } ] }, - "place_loot": [ { "item": "223_casing", "charges": [ 1, 1 ], "x": [ 0, 23 ], "y": [ 0, 23 ], "chance": 100, "repeat": [ 20, 60 ] } ], - "monster": { "M": { "monster": "mon_zombie_armored" }, "A": { "monster": "mon_zombie_soldier_acid_1" } }, - "place_monsters": [ { "monster": "GROUP_MIL_STRONG", "x": [ 1, 22 ], "y": [ 1, 22 ], "density": 1.6 } ] +[ + { + "type": "mapgen", + "method": "json", + "nested_mapgen_id": "robofac_mi2_convoy_ambush_chunk", + "object": { + "mapgensize": [ 24, 24 ], + "rows": [ + " ", + " ", + " ######### ## ", + " A #### ", + " # # # # ", + " # ## # #### ", + " ####### ### ", + " ### # ", + " # ", + " # ", + " ## # ", + " # ", + " ### ## ", + " ## # # ", + " ## ## ", + " # ### ## # ", + " M ######## ", + " @ #### ", + " #### ", + " ## ##########", + " #### ", + " A ## ", + " ##### ", + " " + ], + "terrain": { "@": "t_pavement", "A": "t_pavement", "M": "t_pavement", "#": "t_pavement" }, + "furniture": { "#": "f_wreckage" }, + "place_vehicles": [ + { "vehicle": "humvee", "x": 18, "y": 15, "fuel": 0, "status": 1, "chance": 100 }, + { "vehicle": "humvee", "x": 16, "y": 4, "fuel": 0, "status": 1, "chance": 100 }, + { "vehicle": "aapc-mg", "x": 10, "y": 10, "fuel": 0, "status": 1, "chance": 100 } + ], + "items": { "@": { "item": "lab_torso", "chance": 100 } }, + "item": { "@": [ { "item": "rmi2_corpse" } ] }, + "place_loot": [ { "item": "223_casing", "charges": [ 1, 1 ], "x": [ 0, 23 ], "y": [ 0, 23 ], "chance": 100, "repeat": [ 20, 60 ] } ], + "monster": { "M": { "monster": "mon_zombie_armored" }, "A": { "monster": "mon_zombie_soldier_acid_1" } }, + "place_monsters": [ { "monster": "GROUP_MIL_STRONG", "x": [ 1, 22 ], "y": [ 1, 22 ], "density": 1.6 } ] + } + }, + { + "type": "mapgen", + "method": "json", + "nested_mapgen_id": "robofac_mi3_photonics_chunk", + "object": { + "mapgensize": [ 1, 1 ], + "rows": [ "T" ], + "terrain": { "T": "t_metal_floor" }, + "item": { "T": { "item": "template_photonics", "chance": 100 } } + } } -} +] diff --git a/data/json/npcs/robofac/NPC_ROBOFAC_INTERCOM.json b/data/json/npcs/robofac/NPC_ROBOFAC_INTERCOM.json index aa5204cb0e126..5895e05190356 100644 --- a/data/json/npcs/robofac/NPC_ROBOFAC_INTERCOM.json +++ b/data/json/npcs/robofac/NPC_ROBOFAC_INTERCOM.json @@ -128,6 +128,7 @@ "effect": [ { "u_buy_item": "RobofacCoin", "count": 2 } ] }, "origins": [ "ORIGIN_SECONDARY" ], + "followup": "MISSION_ROBOFAC_INTERCOM_3", "dialogue": { "describe": "...", "offer": "When the portal storms started, the Government issued an evacuation order for critical XEDRA personnel and sent convoys to retrieve them, with our head of AI research among the recalled. We recently discovered that he died when the convoy transferring him was ambushed in the initial chaos, but his corpse and memory bionic might remain intact enough for us to extract valuable knowledge. We want you to travel to the location, make a copy of his Bionic Memory Unit, and return it to us.", @@ -140,6 +141,40 @@ "failure": "Simply useless..." } }, + { + "id": "MISSION_ROBOFAC_INTERCOM_3", + "type": "mission_definition", + "name": "Light retrieval", + "description": "Reach the collapsed tower basement, and search the ruins for a photonic circuitry template. The intercom warned you about heavy enemy prescence, and of the existence of a hazardous enviroment.", + "goal": "MGOAL_FIND_ITEM", + "difficulty": 5, + "item": "template_photonics", + "value": 0, + "start": { + "assign_mission_target": { + "om_terrain": "office_tower_collapse_b_a0", + "om_special": "office_tower_collapsed", + "reveal_radius": 1, + "random": true, + "search_range": 180, + "z": -1 + }, + "update_mapgen": [ { "place_nested": [ { "chunks": [ "robofac_mi3_photonics_chunk" ], "x": 10, "y": 22 } ] } ] + }, + "end": { "effect": [ { "u_buy_item": "RobofacCoin", "count": 4 } ] }, + "origins": [ "ORIGIN_SECONDARY" ], + "dialogue": { + "describe": "...", + "offer": "Our facility once sourced advanced photonic circuitry from a nearby robotics manufacturer. Their building suffered major damage during the portal storms, and collapsed almost entirely. However, preliminary scouting reveals that the basement prototyping lab likely remains intact.\n\nthe intercom: We ask you to investigate the ruins, and if possible, retrieve a template for the fabrication of said photonic circuitry.", + "accepted": "We expect your success, mercenary.", + "rejected": "Return if you change your mind.", + "advice": "The scout drone also revealed extensive heat signatures and high concentrations of toxic compounds within the ruins, plan accordingly. We are willing to sell you some protective gear at a discount, if you require it.", + "inquire": "Have you retrieved the blueprints?", + "success": "You have our thanks and payment.", + "success_lie": "What good does this do us?", + "failure": "Simply useless..." + } + }, { "id": "TALK_ROBOFAC_INTERCOM", "type": "talk_topic", @@ -213,6 +248,18 @@ "condition": { "u_has_var": "completed_robofac_intercom_1", "type": "dialogue", "context": "intercom", "value": "yes" }, "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_ASK" }, + { + "text": "So, about that protective gear?", + "condition": { + "and": [ + { "u_has_mission": "MISSION_ROBOFAC_INTERCOM_3" }, + { + "not": { "npc_has_var": "npc_bought_protective_gear", "type": "dialogue", "context": "intercom", "value": "yes" } + } + ] + }, + "topic": "TALK_ROBOFAC_INTERCOM_BUY_PROTECTIVE_GEAR" + }, { "truefalsetext": { "condition": { "npc_has_var": "npc_intercom_trade", "type": "dialogue", "context": "intercom", "value": "yes" }, @@ -249,6 +296,26 @@ "dynamic_line": "It was a modified Wraitheon chassis, with a custom AI. We hoped it would interact with the outside world for us, but you know how well it went... Shame about what happened, with the evisceration and all...", "responses": [ { "text": "...", "topic": "TALK_ROBOFAC_INTERCOM" } ] }, + { + "id": "TALK_ROBOFAC_INTERCOM_BUY_PROTECTIVE_GEAR", + "type": "talk_topic", + "dynamic_line": "Given the current context, we are willing to sell you a set of our protective gear: gas mask, suit and gear, at a considerable discount. We will sell it for two of our coins.\n\nthe intercom: Hmm wait, we might not have your size...", + "responses": [ + { + "text": "[ 2 Hub 01 Gold Coins ] Deal!", + "condition": { "u_has_item": "RobofacCoin" }, + "effect": [ + { "u_sell_item": "RobofacCoin", "count": 2 }, + { "u_buy_item": "mask_gas" }, + { "u_buy_item": "robofac_enviro_suit" }, + { "u_buy_item": "gasfilter_m", "count": 100 }, + { "npc_add_var": "npc_bought_protective_gear", "type": "dialogue", "context": "intercom", "value": "yes" } + ], + "topic": "TALK_ROBOFAC_INTERCOM" + }, + { "text": "I have to give it a thought.", "topic": "TALK_ROBOFAC_INTERCOM" } + ] + }, { "id": "TALK_ROBOFAC_INTERCOM_PLEAD", "type": "talk_topic",