[
  {
    "id": "EOC_INTERCOM_SPAWN_ARMOR_SET",
    "type": "effect_on_condition",
    "condition": { "expects_vars": [ "armor_type" ] },
    "effect": [
      {
        "if": { "compare_string": [ "robofac_armor_pieces_rig", { "context_val": "armor_type" } ] },
        "then": [ { "u_spawn_item": "robofac_armor_rig" }, { "u_spawn_item": "robofac_head_rig" } ]
      },
      {
        "if": { "compare_string": [ "robofac_armor_pieces_basic", { "context_val": "armor_type" } ] },
        "then": [
          { "u_spawn_item": "robofac_basic_mantle" },
          { "u_spawn_item": "robofac_basic_skirt" },
          { "u_spawn_item": "robofac_basic_vambraces" },
          { "u_spawn_item": "robofac_basic_greaves" },
          { "u_spawn_item": "robofac_basic_helmet" }
        ]
      },
      {
        "if": { "compare_string": [ "robofac_armor_pieces_nomex", { "context_val": "armor_type" } ] },
        "then": [
          { "u_spawn_item": "robofac_nomex_mantle" },
          { "u_spawn_item": "robofac_nomex_skirt" },
          { "u_spawn_item": "robofac_nomex_vambraces" },
          { "u_spawn_item": "robofac_nomex_greaves" },
          { "u_spawn_item": "robofac_nomex_helmet" }
        ]
      },
      {
        "if": { "compare_string": [ "robofac_armor_pieces_kevlar", { "context_val": "armor_type" } ] },
        "then": [
          { "u_spawn_item": "robofac_kevlar_mantle" },
          { "u_spawn_item": "robofac_kevlar_skirt" },
          { "u_spawn_item": "robofac_kevlar_vambraces" },
          { "u_spawn_item": "robofac_kevlar_greaves" },
          { "u_spawn_item": "robofac_kevlar_helmet" }
        ]
      },
      {
        "if": { "compare_string": [ "robofac_armor_pieces_rubber", { "context_val": "armor_type" } ] },
        "then": [
          { "u_spawn_item": "robofac_rubber_skirt" },
          { "u_spawn_item": "robofac_rubber_vambraces" },
          { "u_spawn_item": "robofac_rubber_greaves" },
          { "u_spawn_item": "robofac_rubber_mantle" },
          { "u_spawn_item": "robofac_rubber_helmet" }
        ]
      },
      {
        "if": { "compare_string": [ "robofac_armor_pieces_military", { "context_val": "armor_type" } ] },
        "then": [
          { "u_spawn_item": "robofac_military_skirt" },
          { "u_spawn_item": "robofac_military_vambraces" },
          { "u_spawn_item": "robofac_military_greaves" },
          { "u_spawn_item": "robofac_military_mantle" },
          { "u_spawn_item": "robofac_military_helmet" }
        ]
      }
    ]
  },
  {
    "id": [
      "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_1_STARTED",
      "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_2_STARTED",
      "TALK_ROBOFAC_INTERCOM_ARMOR_STARTED",
      "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU",
      "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_LONG",
      "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_SHORT",
      "TALK_ROBOFAC_INTERCOM_RIFLE_STARTED"
    ],
    "//": "Overall menu for all Robofac projects",
    "type": "talk_topic",
    "dynamic_line": "What project would you like to know about?",
    "responses": [
      {
        "text": "Have you decoded the disk?",
        "condition": {
          "and": [ { "math": [ "hub01_uhmwpe_researched != 1" ] }, { "math": [ "has_var(u_dialogue_hub_rnd_u_gave_armor_disk)" ] } ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_BREAKTHROUGH"
      },
      {
        "text": "[6 HGC] I'd like to buy the rest of the armor set now.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "RobofacCoin", "count": 6 } },
            { "math": [ "has_var(u_dialogue_hub_rnd_u_can_buy_armor)" ] }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 6, "popup": true },
          {
            "run_eocs": "EOC_INTERCOM_SPAWN_ARMOR_SET",
            "variables": { "armor_type": "robofac_armor_pieces_military" }
          },
          { "u_lose_var": "dialogue_hub_rnd_u_can_buy_armor" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_SERVICES"
      },
      {
        "text": "I'd like to request a Hybrid Weapons Platform.",
        "condition": {
          "and": [
            { "math": [ "has_var(u_dialogue_robofac_merc_1_robofac_merc_1_HWP)" ] },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_project_ongoing)" ] }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_RIFLE_REQUEST"
      },
      {
        "text": "How goes work on the HWP?",
        "condition": { "math": [ "has_var(u_timer_hub_rnd_u_waiting_on_gun)" ] },
        "topic": "TALK_ROBOFAC_INTERCOM_RIFLE_BREAKTHROUGH"
      },
      {
        "text": "I'd like to request a set of armor.",
        "condition": {
          "and": [
            { "math": [ "has_var(u_dialogue_robofac_merc_1_robofac_merc_1_HWP)" ] },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_project_ongoing)" ] }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_REQUEST"
      },
      {
        "text": "How is my ordered armor going?",
        "condition": { "math": [ "has_var(u_dialogue_hub_rnd_u_armor_type)" ] },
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_FINISHED"
      },
      {
        "text": "I would like you to upgrade my modular defense system.",
        "condition": {
          "and": [
            { "math": [ "has_var(u_dialogue_hub_rnd_u_completed_anchor_pt_1)" ] },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_project_ongoing)" ] }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_2"
      },
      {
        "text": "My phase immersion suit has taken a serious beating.  Could someone repair it for me?",
        "condition": {
          "and": [
            { "u_has_items": { "item": "phase_immersion_suit", "count": 1 } },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_project_ongoing)" ] }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_PHASE_REPAIR"
      },
      {
        "text": "My RM13 combat armor has taken some damage.  Could someone repair it for me?",
        "condition": {
          "and": [
            { "u_has_items": { "item": "rm13_armor", "count": 1 } },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_project_ongoing)" ] }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_RM13_REPAIR"
      },
      {
        "text": "I salvaged this combat exoskeleton.  Do you think you could repair it?",
        "condition": {
          "and": [
            { "u_has_items": { "item": "combat_exoskeleton_light_salvaged", "count": 1 } },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_project_ongoing)" ] }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_EXOSKELETON_REPAIR"
      },
      {
        "text": "How are my armor repairs coming?",
        "condition": {
          "or": [
            { "compare_string": [ "combat_exoskeleton_light_salvaged", { "u_val": "dialogue_hub_rnd_u_current_project" } ] },
            { "compare_string": [ "phase_immersion_suit", { "u_val": "dialogue_hub_rnd_u_current_project" } ] },
            { "compare_string": [ "rm13_armor", { "u_val": "dialogue_hub_rnd_u_current_project" } ] }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_REPAIR"
      },
      {
        "text": "I've found this piece of XEDRA tech; it seems to offer some kind of protection.  I'm curious what you all can make of it.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "dimensional_anchor", "count": 1 } },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_project_ongoing)" ] },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_completed_anchor_pt_1)" ] }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_1"
      },
      {
        "text": "Any progress on the anchor?",
        "condition": { "compare_string": [ "anchor_pt_1", { "u_val": "dialogue_hub_rnd_u_current_project" } ] },
        "topic": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_1_COMPLETE"
      },
      {
        "text": "Any progress on the Hub anchor?",
        "condition": { "compare_string": [ "anchor_pt_2", { "u_val": "dialogue_hub_rnd_u_current_project" } ] },
        "topic": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_2_COMPLETE"
      },
      {
        "text": "I've found a rifle chambered for a caliber I don't recognize.  Do you think you could make an HWP adapter for it?",
        "condition": {
          "and": [
            { "math": [ "hub01_hwp_exotic_researched != 1" ] },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_project_ongoing)" ] },
            { "math": [ "has_var(u_dialogue_hub_rnd_u_has_researched_gun)" ] },
            {
              "or": [ { "u_has_items": { "item": "pamd68", "count": 1 } }, { "u_has_items": { "item": "pamd71z", "count": 1 } } ]
            }
          ]
        },
        "topic": "TALK_ROBOFAC_INTERCOM_HWP_EXODII"
      },
      {
        "text": "Have you finished work on that exotic conversion kit?",
        "condition": { "compare_string": [ "hwp_exodii", { "u_val": "dialogue_hub_rnd_u_current_project" } ] },
        "topic": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_COMPLETE"
      },
      { "text": "<done_conversation_section>", "topic": "TALK_ROBOFAC_INTERCOM_SERVICES" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_NO",
    "type": "talk_topic",
    "dynamic_line": "At the moment, no.  While you are no doubt proficient, distribution of prototype equipment is so far restricted to trusted field agents.  Were someone else from the organization to vouch for your competency, we may consider extending access."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_GUN_YES",
    "//": "quick access to prototype menu through the merc vouching",
    "type": "talk_topic",
    "dynamic_line": "Yes, Foster gave you quite a recommendation.  Very well - I will authorize you access to our prototype fabrication services for agents in the field.  This includes the Hybrid Weapons Platform, alongside the ability to order spare or replacement parts for your field gear.",
    "speaker_effect": { "effect": [ { "u_add_var": "dialogue_intercom_u_hub_prototypes", "value": "yes" } ] },
    "responses": [
      {
        "text": "Great.  What exactly is this 'Hybrid Weapons Platform', anyway?",
        "topic": "TALK_ROBOFAC_INTERCOM_RIFLE_REQUEST"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_RIFLE_BREAKTHROUGH",
    "//": "getting an HWP",
    "type": "talk_topic",
    "dynamic_line": {
      "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_gun) >= time('7 d')" ],
      "yes": "The Platform is complete.  As a reminder, the HWP will not function as a weapon without a conversion kit installed.  Transferring the requested items now.\"\n\nThe tray shakes as several heavy objects are dropped into it, and it slides open.  Inside: the Hybrid Weapons Platform.  On its own, it doesn't look like much; it resembles the body of a service rifle without a stock or barrel, colored in sleek black with blue highlights around the magazine well.  Small yellow arrows and inscriptions are present at certain points, highlighting the fasteners used to assemble the thing in earnest.  Accompanying the Platform itself is a series of four bundles of parts for it, each held together using velcro strips and tagged by caliber.  A drawstring nylon bag, embroidered with the Hub's logo and filled with proprietary tools, completes the whole package.\n\nAll in all, not a bad deal.\n\n\"Should you require magazines of any given caliber, we are willing to provide them through standard requisitions.  We hope you find its performance to be satisfactory.",
      "no": "Work is still ongoing.  These things can take time."
    },
    "responses": [
      {
        "text": "Thanks.",
        "condition": { "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_gun) >= time('7 d')" ] },
        "effect": [
          { "u_add_var": "dialogue_hub_rnd_u_has_researched_gun", "value": "yes" },
          { "u_lose_var": "dialogue_hub_rnd_u_project_ongoing" },
          { "u_lose_var": "timer_hub_rnd_u_waiting_on_gun" },
          { "u_spawn_item": "robofac_gun" },
          { "u_spawn_item": "robofac_gun_ar" },
          { "u_spawn_item": "robofac_gun_smg" },
          { "u_spawn_item": "robofac_gun_dmr" },
          { "u_spawn_item": "robofac_gun_shotgun" },
          { "u_spawn_item": "robofac_gun_kit" },
          { "u_spawn_item": "robofac40", "count": 2 },
          { "u_spawn_item": "robofac60", "count": 2 },
          { "u_spawn_item": "robofac20", "count": 2 },
          { "u_spawn_item": "robofac10", "count": 2 }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_SERVICES"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": [
      "TALK_ROBOFAC_INTERCOM_RIFLE_REQUEST",
      "TALK_ROBOFAC_INTERCOM_RIFLE_ADAPTERS",
      "TALK_ROBOFAC_INTERCOM_RIFLE_TIMEGATE",
      "TALK_ROBOFAC_INTERCOM_RIFLE_BENEFITS"
    ],
    "//": "buying an HWP",
    "type": "talk_topic",
    "dynamic_line": "I'll spare you the marketing pitch.  The Hybrid Weapons Platform - or more commonly the HWP - is a weapons platform capable of supporting multiple calibers via the use of quick-release adapters.  On its own, the platform does nothing; each adapter, however, allows it to chamber and fire a different type of round.\"\n\n\"Each new HWP is printed to order.  Materials will require eight HGC up front, and fabrication will take seven days.",
    "responses": [
      {
        "text": "[8 HGC] A week is fine.",
        "condition": { "u_has_items": { "item": "RobofacCoin", "count": 8 } },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 8, "popup": true },
          { "u_add_faction_trust": 2 },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_gun = time('now')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_RIFLE_STARTED"
      },
      {
        "text": "Tell me about the adapters.  Does it come with any?",
        "topic": "TALK_ROBOFAC_INTERCOM_RIFLE_ADAPTERS"
      },
      {
        "text": "A week feels like an eternity these days.  Why the wait?",
        "topic": "TALK_ROBOFAC_INTERCOM_RIFLE_TIMEGATE"
      },
      {
        "text": "Why should I use this over something like a rifle that doesn't need proprietary parts?",
        "topic": "TALK_ROBOFAC_INTERCOM_RIFLE_BENEFITS"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_RIFLE_ADAPTERS",
    "type": "talk_topic",
    "dynamic_line": "Adapters are standalone conversion kits, and can be swapped in the field without any tools, though it will take a minute or so.  The factory standard includes adapters for the following calibers… 5.56 NATO, 7.62 NATO, 9mm Parabellum, and 12-gauge shotshell.  Two loaded magazines are also provided for each of these calibers, and additional empty magazines can be purchased through trade.  A maintenance kit with the necessary tools to service the Platform is also provided."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_RIFLE_TIMEGATE",
    "type": "talk_topic",
    "dynamic_line": "As before, each Platform is made to order.  This is a slow process for several reasons.  First, the parts must be printed to spec; this takes a great degree of precision, and so the process is lengthy.  The remainder of the week is spent running reliability tests as each conversion kit finishes production.  I understand that it isn't an ideal option, but I believe the quality of the product is worth that investment."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_RIFLE_BENEFITS",
    "type": "talk_topic",
    "dynamic_line": "I believe the answer to that question to be twofold.  First, a maintenance kit is included with each new Platform that includes the tools required to service it, including a diagram of the weapon's construction.  Second, even if you would prefer to use the weapon only for a specific purpose, we are able to manufacture and provide high-capacity drum magazines far exceeding the capacity of widely-available analogues.  We expect this to be a significant boon to your ability to use the Platform in a variety of environments and situations, as high-capacity magazines can be difficult or dangerous to find in the new world."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_RIFLE_STARTED",
    "type": "talk_topic",
    "dynamic_line": "Excellent.  Report back in seven days' time, and your Platform will be ready."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ARMOR_STARTED",
    "type": "talk_topic",
    "dynamic_line": "Excellent.  We will begin work shortly.  Report back in 24 hours for pickup."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ARMOR_BREAKTHROUGH",
    "//": "armor reward blurb after waiting",
    "type": "talk_topic",
    "dynamic_line": {
      "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_armor) >= time('1 d')" ],
      "yes": "Yes we have!  The disk contained the configuration necessary to print our armors with a much more resilient composite than was previously available to us, without sacrificing any maneuverability.  As a form of payment, we are willing to provide you with the first functional models of the armor at a good price - six HGC.  While that may seem steep, the materials used are very high-end, and six coins just barely covers the production cost alone.  If you are unwilling or incapable of filling that price now, the offer will remain available indefinitely - just let us know when you'd like it.\n\n\"Should you find anything else of interest in the world, please bring it to us.  We would be happy to collaborate like this again in the future.",
      "no": "Not yet.  The contents are very strongly encrypted, so simply pulling the data is impossible.  Work is underway to deduce the correct access key, but even with our facilities, it will take some time."
    },
    "speaker_effect": {
      "condition": { "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_armor) >= time('1 d')" ] },
      "effect": [
        { "u_lose_var": "dialogue_hub_rnd_u_project_ongoing" },
        { "u_add_var": "dialogue_hub_rnd_u_can_buy_armor", "value": "yes" },
        { "math": [ "hub01_uhmwpe_researched = 1" ] }
      ]
    },
    "responses": [
      {
        "text": "[6 HGC] Let's see what this armor is capable of.",
        "condition": {
          "and": [
            { "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_armor) >= time('1 d')" ] },
            { "u_has_items": { "item": "RobofacCoin", "count": 6 } }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 6, "popup": true },
          {
            "run_eocs": "EOC_INTERCOM_SPAWN_ARMOR_SET",
            "variables": { "armor_type": "robofac_armor_pieces_military" }
          }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_SERVICES"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ARMOR_REQUEST",
    "//": "buying armor",
    "type": "talk_topic",
    "dynamic_line": "Understood.  The parts will finish fabrication in 24 hours, once you hand over the stipulated HGC.  Depending on our currently available selection, the price will range from 2 to 4 HGC for non-specialty equipment.",
    "responses": [
      {
        "text": "[3 HGC] I'd like to request a replacement Modular Defense System.",
        "condition": { "u_has_items": { "item": "RobofacCoin", "count": 3 } },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 3, "popup": true },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_armor_type", "value": "robofac_armor_pieces_rig" },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_STARTED"
      },
      {
        "text": "[2 HGC] I'd like to request a set of prototype armor.",
        "condition": { "u_has_items": { "item": "RobofacCoin", "count": 2 } },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 2, "popup": true },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_armor_type", "value": "robofac_armor_pieces_basic" },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_STARTED"
      },
      {
        "text": "[4 HGC] I'd like to request a set of turnout armor.",
        "condition": { "u_has_items": { "item": "RobofacCoin", "count": 4 } },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 4, "popup": true },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_armor_type", "value": "robofac_armor_pieces_nomex" },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_STARTED"
      },
      {
        "text": "[4 HGC] I'd like to request a set of ballistic armor.",
        "condition": { "u_has_items": { "item": "RobofacCoin", "count": 4 } },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 4, "popup": true },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_armor_type", "value": "robofac_armor_pieces_kevlar" },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_STARTED"
      },
      {
        "text": "[4 HGC] I'd like to request a set of kinetic armor.",
        "condition": { "u_has_items": { "item": "RobofacCoin", "count": 4 } },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 4, "popup": true },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_armor_type", "value": "robofac_armor_pieces_rubber" },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_STARTED"
      },
      {
        "text": "[12 HGC] I'd like to request a set of soldier armor.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "RobofacCoin", "count": 12 } },
            { "math": [ "!has_var(u_dialogue_hub_rnd_u_can_buy_armor)" ] },
            { "math": [ "hub01_uhmwpe_researched == 1" ] }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 12, "popup": true },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_armor_type", "value": "robofac_armor_pieces_military" },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_ARMOR_STARTED"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ARMOR_FINISHED",
    "type": "talk_topic",
    "dynamic_line": {
      "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('1 d')" ],
      "yes": "Yes, we've finished printing the requested armor pieces.  Transferring to you now.",
      "no": "The parts are still being printed.  Please be patient."
    },
    "responses": [
      {
        "text": "Sweet, thanks.",
        "condition": { "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('1 d')" ] },
        "effect": [
          {
            "run_eocs": "EOC_INTERCOM_SPAWN_ARMOR_SET",
            "variables": { "armor_type": { "u_val": "dialogue_hub_rnd_u_armor_type" } }
          },
          { "u_lose_var": "dialogue_hub_rnd_u_project_ongoing" },
          { "u_lose_var": "dialogue_hub_rnd_u_armor_type" },
          { "u_lose_var": "timer_hub_rnd_u_waiting_on_hub" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_SERVICES"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_REPAIR",
    "type": "talk_topic",
    "dynamic_line": {
      "math": [ "u_timer_hub_rnd_u_waiting_on_hub < time('now')" ],
      "yes": "The repairs and tuneup are complete.  Should be good as new or better.",
      "no": "Work is still ongoing.  These things can take time."
    },
    "responses": [
      {
        "text": "Thanks.",
        "condition": { "math": [ "u_timer_hub_rnd_u_waiting_on_hub < time('now')" ] },
        "effect": [
          {
            "if": { "compare_string": [ "phase_immersion_suit", { "u_val": "dialogue_hub_rnd_u_current_project" } ] },
            "then": [ { "npc_add_var": "phase_suit_reverse_engineered", "value": "yes" }, { "u_spawn_item": "phase_immersion_suit" } ]
          },
          {
            "if": { "compare_string": [ "rm13_armor", { "u_val": "dialogue_hub_rnd_u_current_project" } ] },
            "then": [ { "npc_add_var": "rm13_reverse_engineered", "value": "yes" }, { "u_spawn_item": "rm13_armor" } ]
          },
          {
            "if": { "compare_string": [ "combat_exoskeleton_light_salvaged", { "u_val": "dialogue_hub_rnd_u_current_project" } ] },
            "then": [
              { "npc_add_var": "combat_exoskeleton_reverse_engineered", "value": "yes" },
              { "u_spawn_item": "combat_exoskeleton_light" }
            ]
          },
          { "u_lose_var": "dialogue_hub_rnd_u_current_project" },
          { "u_lose_var": "dialogue_hub_rnd_u_project_ongoing" },
          { "u_lose_var": "timer_hub_rnd_u_waiting_on_hub" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_SERVICES"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_PHASE_REPAIR",
    "type": "talk_topic",
    "dynamic_line": [
      {
        "math": [ "has_var(n_phase_suit_reverse_engineered)" ],
        "yes": "Certainly; for a fee of ten coins, repairs and adjustments could be completed in two weeks.  We'll also pull suit metrics and haptic data to better understand the situation on the ground.  I'd ask you to make sure everything has been removed from the suit before giving it to us.",
        "no": "&The camera starts scanning the armor, after a moment the intercom cracks back to life.  \"This technology is currently not within our database, we can probably repair it but we'll need to reverse-engineer it first.  We estimate the repairs to take around a month and a half, and they'll have an increased fee of 12 coins.  Please make sure everything has been removed from the suit before giving it to us.\""
      }
    ],
    "responses": [
      {
        "text": "[10 HGC] Alright.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "RobofacCoin", "count": 10 } },
            { "math": [ "has_var(n_phase_suit_reverse_engineered)" ] }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 10, "popup": true },
          { "u_consume_item": "phase_immersion_suit", "count": 1, "popup": true },
          { "u_add_faction_trust": 1 },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now') + time('14 day')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "phase_immersion_suit" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_SHORT"
      },
      {
        "text": "[12 HGC] Fine.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "RobofacCoin", "count": 12 } },
            { "math": [ "!has_var(n_phase_suit_reverse_engineered)" ] }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 12, "popup": true },
          { "u_consume_item": "phase_immersion_suit", "count": 1, "popup": true },
          { "u_add_faction_trust": 1 },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now') + time('44 day')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "phase_immersion_suit" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_LONG"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_RM13_REPAIR",
    "type": "talk_topic",
    "dynamic_line": [
      {
        "math": [ "has_var(n_rm13_reverse_engineered)" ],
        "yes": "Yes, that is within our capabilities.  For ten coins, repairs and adjustments can be completed by tomorrow; we will recharge the internal battery as well.  Please note that if you have made any modifications to the armor, it will be reverted to factory standard as part of the repairs.",
        "no": "&The camera starts scanning the armor, after a moment the intercom cracks back to life.  \"This technology is currently not within our database, we can probably repair it but we'll need to reverse-engineer it first.  We estimate the repairs to take around a month and a half, and they'll have an increased fee of 12 coins.  Please make sure everything has been removed from the suit before giving it to us.\""
      }
    ],
    "responses": [
      {
        "text": "[10 HGC] Alright.",
        "condition": {
          "and": [ { "u_has_items": { "item": "RobofacCoin", "count": 10 } }, { "math": [ "has_var(n_rm13_reverse_engineered)" ] } ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 10, "popup": true },
          { "u_consume_item": "rm13_armor", "count": 1, "popup": true },
          { "u_add_faction_trust": 1 },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now') + time('14 day')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "rm13_armor" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_SHORT"
      },
      {
        "text": "[12 HGC] Fine.",
        "condition": {
          "and": [ { "u_has_items": { "item": "RobofacCoin", "count": 12 } }, { "math": [ "!has_var(n_rm13_reverse_engineered)" ] } ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 12, "popup": true },
          { "u_consume_item": "rm13_armor", "count": 1, "popup": true },
          { "u_add_faction_trust": 1 },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now') + time('44 day')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "rm13_armor" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_LONG"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_EXOSKELETON_REPAIR",
    "type": "talk_topic",
    "dynamic_line": [
      {
        "math": [ "has_var(n_combat_exoskeleton_reverse_engineered)" ],
        "yes": "Certainly, it'll cost you 10 coins and should be ready in two weeks.  Remember to take off any attachments and batteries before turning it in.",
        "no": "One moment,\" the respondent audibly leaves for a moment and after a short period the intercom cracks with life.  \"We have never attempted repairs on a military exoskeleton, we will have to reverse-engineer it first, expect this to take around a month and a half, it will also cost you 12 coins.  Please make sure to take off any attachments and batteries before turning it in."
      }
    ],
    "responses": [
      {
        "text": "[10 HGC] Alright.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "RobofacCoin", "count": 10 } },
            { "math": [ "has_var(n_combat_exoskeleton_reverse_engineered)" ] }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 10, "popup": true },
          { "u_consume_item": "combat_exoskeleton_light_salvaged", "count": 1, "popup": true },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now') + time('14 day')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "combat_exoskeleton_light_salvaged" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_SHORT"
      },
      {
        "text": "[12 HGC] Fine.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "RobofacCoin", "count": 12 } },
            { "math": [ "!has_var(n_combat_exoskeleton_reverse_engineered)" ] }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 12, "popup": true },
          { "u_consume_item": "combat_exoskeleton_light_salvaged", "count": 1, "popup": true },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now') + time('44 day')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "combat_exoskeleton_light_salvaged" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_LONG"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_SHORT",
    "type": "talk_topic",
    "dynamic_line": "We will begin work shortly.  Report back in two weeks for pickup."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_REPAIR_STARTED_LONG",
    "type": "talk_topic",
    "dynamic_line": "We will begin work shortly.  Report back in around one and a half months for pickup."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_1",
    "//": "creating better MDS",
    "type": "talk_topic",
    "dynamic_line": "Interesting.  If you could provide us the item, we could direct research on it for a standard work week for a fee of two HGC; after that, we will let you know if any progress has been made and return the item as-is.  Please remove any batteries or other attachments before providing it.",
    "responses": [
      {
        "text": "[2 HGC, anchor] See you in five days.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "RobofacCoin", "count": 2 } },
            { "u_has_items": { "item": "dimensional_anchor", "count": 1 } }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 2, "popup": true },
          { "u_consume_item": "dimensional_anchor", "count": 1, "popup": true },
          { "u_add_faction_trust": 1 },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "anchor_pt_1" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_1_STARTED"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_1_COMPLETE",
    "//": "creating better MDS",
    "type": "talk_topic",
    "dynamic_line": {
      "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('5 d')" ],
      "yes": "We've made some notable progress.  The anchor itself appears to provide some degree of protection from extradimensional phenomena, and we believe that we can integrate it into our current modular armor system.  This will, however, make it heavier and less portable.  The armor will remain wearable outside of metal armor, although it will be a more snug fit than the anchor alone would have been.\"\n\n\"We are returning the anchor now.",
      "no": "Work is still ongoing.  These things can take time."
    },
    "responses": [
      {
        "text": "Interesting.",
        "condition": { "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('5 d')" ] },
        "effect": [
          { "u_lose_var": "dialogue_hub_rnd_u_current_project" },
          { "u_lose_var": "dialogue_hub_rnd_u_project_ongoing" },
          { "u_lose_var": "timer_hub_rnd_u_waiting_on_hub" },
          { "u_add_var": "dialogue_hub_rnd_u_completed_anchor_pt_1", "value": "yes" },
          { "u_spawn_item": "dimensional_anchor" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_SERVICES"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_2",
    "//": "creating better MDS",
    "type": "talk_topic",
    "dynamic_line": "Very well; we will need one coin for materials costs, as well as the anchor itself and the modular defense system you wish to combine it with.  As usual, I encourage you to remove everything from the pockets before handing them over for processing.  We'll need one day for construction and one day to verify efficacy.",
    "responses": [
      {
        "text": "[1 HGC, anchor, MDS] I'll see you in two days.",
        "condition": {
          "and": [
            { "u_has_items": { "item": "RobofacCoin", "count": 1 } },
            { "u_has_items": { "item": "dimensional_anchor", "count": 1 } },
            { "u_has_items": { "item": "robofac_armor_rig", "count": 1 } }
          ]
        },
        "effect": [
          { "u_consume_item": "RobofacCoin", "count": 1, "popup": true },
          { "u_consume_item": "dimensional_anchor", "count": 1, "popup": true },
          { "u_consume_item": "robofac_armor_rig", "count": 1, "popup": true },
          { "u_add_faction_trust": 1 },
          { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] },
          { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
          { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "anchor_pt_2" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_2_STARTED"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_2_COMPLETE",
    "//": "creating better MDS",
    "type": "talk_topic",
    "dynamic_line": {
      "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('2 d')" ],
      "yes": "The anchor has been integrated into the harness.  Thank you as always for your contributions to our research and technology.",
      "no": "Work is still ongoing.  These things can take time."
    },
    "responses": [
      {
        "text": "Thanks.",
        "condition": { "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('2 d')" ] },
        "effect": [
          { "u_lose_var": "dialogue_hub_rnd_u_current_project" },
          { "u_lose_var": "dialogue_hub_rnd_u_project_ongoing" },
          { "u_lose_var": "timer_hub_rnd_u_waiting_on_hub" },
          { "u_spawn_item": "robofac_armor_anchor" }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_SERVICES"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_1_STARTED",
    "type": "talk_topic",
    "dynamic_line": "Lovely.  Research will begin within the next few hours."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_ANCHOR_PT_2_STARTED",
    "type": "talk_topic",
    "dynamic_line": "The combination should be a fairly simple matter.  Return in two days to pick up the finished product."
  },
  {
    "id": [ "TALK_ROBOFAC_INTERCOM_HWP_EXODII", "TALK_ROBOFAC_INTERCOM_HWP_EXODII_1", "TALK_ROBOFAC_INTERCOM_HWP_EXODII_2" ],
    "//": "creating EXODII barrel",
    "type": "talk_topic",
    "dynamic_line": "Excuse me for a moment.\"  The intercom turns off abruptly.  It comes back on after roughly a minute, and when it speaks again, another voice is on the other side, speaking carefully.\n\n\"Yes… the Exodii.  We have yet to make contact, but we are keenly interested in their capabilities and technology.  If you were to provide us with, say, five rounds, in addition to the rifle itself and a magazine suitable for it, we believe we would be able to replicate the parts.  We expect it to take three days of research.\"\n\n\"Please note that the requested materials will not be returned, as they are likely to be damaged during research.",
    "responses": [
      {
        "text": "[5 12.3ln, PA md. 68 magazine, PA md. 68] Is this what you need?",
        "condition": {
          "and": [
            { "u_has_items": { "item": "pamd68", "count": 1 } },
            { "u_has_items": { "item": "exodiiBRmag", "count": 1 } },
            { "u_has_items": { "item": "123ln", "count": 5 } }
          ]
        },
        "effect": [
          { "u_consume_item": "pamd68", "count": 1, "popup": true },
          { "u_consume_item": "exodiiBRmag", "count": 1, "popup": true },
          { "u_consume_item": "123ln", "count": 5, "popup": true }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_STARTED"
      },
      {
        "text": "[5 12.3ln, PS md. 71z magazine, PS md. 71z] Is this what you need?",
        "condition": {
          "and": [
            { "u_has_items": { "item": "pamd71z", "count": 1 } },
            { "u_has_items": { "item": "exodiiminimag", "count": 1 } },
            { "u_has_items": { "item": "123ln", "count": 5 } }
          ]
        },
        "effect": [
          { "u_consume_item": "pamd71z", "count": 1, "popup": true },
          { "u_consume_item": "exodiiminimag", "count": 1, "popup": true },
          { "u_consume_item": "123ln", "count": 5, "popup": true }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_STARTED"
      },
      {
        "text": "Why not contact them directly?",
        "condition": { "math": [ "!has_var(u_general_meeting_u_met_Rubik)" ] },
        "topic": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_1"
      },
      {
        "text": "I've met them already.  They seem friendly; if you'd like to reach out to them yourself, I'm sure that they could help.",
        "condition": { "math": [ "has_var(u_general_meeting_u_met_Rubik)" ] },
        "topic": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_2"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_1",
    "type": "talk_topic",
    "dynamic_line": "While the Exodii seem benign, our experience with extradimensional life thus far has been… unpleasant, shall we say, given the current state of the world.  We find it wise to approach with an abundance of caution.  We are incapable of knowing the true agenda and capabilities of this group, and we believe that understanding some degree of how they operate will allow us to make contact in a more educated way."
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_2",
    "//": "this is a lie. if the hub has done any kind of surveillance at all, they'd know that the Exodii would consider melchior a heavy threat, and they are unwilling to approach until they're certain that they could effectively conceal its presence.",
    "type": "talk_topic",
    "dynamic_line": "Have you, now?  We are pleased to hear.  However, we still believe that approaching with an excess of wariness is a wise choice.  We feel that it would behoove us to understand more about this group before we approach directly, and so for the time being, understanding more about their general-use technology is our preferred course of action."
  },
  {
    "id": [ "TALK_ROBOFAC_INTERCOM_HWP_EXODII_STARTED" ],
    "//": "creating EXODII barrel",
    "type": "talk_topic",
    "dynamic_line": "Brilliant!!  Just brilliant.  Thank you very much.  Please contact us again in three days.  Thank you!\"\n\nThe voice abruptly disconnects.  When the intercom comes back on, it's the original voice again.  \"Was there anything else?",
    "speaker_effect": {
      "effect": [
        { "u_add_faction_trust": 1 },
        { "math": [ "u_timer_hub_rnd_u_waiting_on_hub = time('now')" ] },
        { "u_add_var": "dialogue_hub_rnd_u_project_ongoing", "value": "yes" },
        { "u_add_var": "dialogue_hub_rnd_u_current_project", "value": "hwp_exodii" }
      ],
      "sentinel": "started_exodii_gun_research"
    },
    "responses": [
      { "text": "You seem very… excited about this.", "topic": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_STARTED_1" },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_STARTED_1",
    "//": "this is a half-truth. while the Hub does have an interest in understanding or reversing the Cataclysm, their primary intent here is specifically to understand the Exodii better.",
    "type": "talk_topic",
    "dynamic_line": "The Cataclysm has illuminated hitherto unknown facts about our universe.  The opportunity to research - and perhaps understand - technology from not only another world, but another dimension entirely, is an exceptionally promising field of study.  Now more than ever is our continued delving into this field of study paramount; while our focus has shifted rather abruptly, we believe that if there is ever any chance of understanding or even reversing <the_cataclysm>, it would come from studies like this.",
    "responses": [
      { "text": "<done_conversation_section>", "topic": "TALK_ROBOFAC_INTERCOM_SERVICES" },
      { "text": "I'll check in later.", "topic": "TALK_DONE" }
    ]
  },
  {
    "id": "TALK_ROBOFAC_INTERCOM_HWP_EXODII_COMPLETE",
    "//": "creating EXODII barrel",
    "type": "talk_topic",
    "dynamic_line": {
      "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('3 d')" ],
      "yes": "The project was a success!  The ammo is fairly rudimentary, but ultimately proved simple to manufacture, and has lent itself well to large magazines.  We will transfer a copy of the conversion kit in a moment; it is capable of accepting specialized magazines that we have just begun to produce ourselves.  Thank you for allowing us this opportunity.",
      "no": "Work is still ongoing.  These things can take time."
    },
    "speaker_effect": {
      "condition": { "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('3 d')" ] },
      "effect": [ { "math": [ "hub01_hwp_exotic_researched = 1" ] } ]
    },
    "responses": [
      {
        "text": "Thanks.",
        "condition": { "math": [ "time_since(u_timer_hub_rnd_u_waiting_on_hub) >= time('3 d')" ] },
        "effect": [
          { "u_lose_var": "dialogue_hub_rnd_u_current_project" },
          { "u_lose_var": "dialogue_hub_rnd_u_project_ongoing" },
          { "u_lose_var": "timer_hub_rnd_u_waiting_on_hub" },
          { "u_spawn_item": "robofac_gun_exodii" },
          { "u_spawn_item": "robofac60_123ln", "count": 2 }
        ],
        "topic": "TALK_ROBOFAC_INTERCOM_SERVICES"
      },
      { "text": "What about another project?", "topic": "TALK_ROBOFAC_INTERCOM_PROTOTYPE_MENU" }
    ]
  }
]
