{
  "schemaVersion": 1,
  "dialogues": [
    {
      "id": "dlg_npc_gatekeeper_bubbles",
      "name": "Bubbles",
      "description": "",
      "dialogueNodes": [
        {
          "id": "intro",
          "conditions": [
            {
              "text": "Halt. State your business and your favorite soup.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "I seek passage.",
              "nextId": "hat_policy",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I brought soup.",
              "nextId": "soup_oracle",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I am here for goose diplomacy.",
              "nextId": "goose_union",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 1
        },
        {
          "id": "hat_policy",
          "conditions": [
            {
              "text": "No entry without a hat. Helmets count if they look surprised.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Can I borrow your hat?",
              "nextId": "tiny_horse",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "What if I balance a spoon on my head?",
              "nextId": "spoon_duel",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Fine, I will become the hat.",
              "nextId": "dramatic_exit",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 2
        },
        {
          "id": "goose_union",
          "conditions": [
            {
              "text": "The geese demand crumbs, jazz, and one small parade.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "I can offer jazz hands.",
              "nextId": "negotiation",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I only have interpretive whistling.",
              "nextId": "interpret_sign",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "What if we unionize the spoons first?",
              "nextId": "spoon_duel",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 3
        },
        {
          "id": "soup_oracle",
          "conditions": [
            {
              "text": "The soup foretells rain, mildly inconvenient socks, and destiny.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Can destiny be postponed until Tuesday?",
              "nextId": "poetry_tax",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I would like a refund on the prophecy.",
              "nextId": "mystery_button",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Tell me more about the socks.",
              "nextId": "secret_menu",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 4
        },
        {
          "id": "interpret_sign",
          "conditions": [
            {
              "text": "Your whistling says 'peace' in three dialects and one kazoo.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Excellent. Open the gate?",
              "nextId": "beep_translation",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Add dramatic twirling.",
              "nextId": "dramatic_exit",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 5
        },
        {
          "id": "tiny_horse",
          "conditions": [
            {
              "text": "I cannot lend my hat. It is currently piloting a tiny horse.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Then I challenge the horse to debate.",
              "nextId": "negotiation",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I respect the chain of command.",
              "nextId": "ending",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 6
        },
        {
          "id": "spoon_duel",
          "conditions": [
            {
              "text": "Spoon duel accepted. First to make soup noises wins.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Glorp.",
              "nextId": "beep_translation",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I withdraw and blame gravity.",
              "nextId": "dramatic_exit",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 7
        },
        {
          "id": "poetry_tax",
          "conditions": [
            {
              "text": "Before passage, pay the poetry tax: one haiku about onions.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Layered tears at dawn, onion moon in my satchel, soup remembers me.",
              "nextId": "ending",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Roses are red, onions are spherical.",
              "nextId": "dramatic_exit",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 8
        },
        {
          "id": "mystery_button",
          "conditions": [
            {
              "text": "You pressed the mystery button. A nearby shrub applauds politely.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Press it again for scientific reasons.",
              "nextId": "elevator_to_nowhere",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Pretend this never happened.",
              "nextId": "ending",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 9
        },
        {
          "id": "elevator_to_nowhere",
          "conditions": [
            {
              "text": "A tiny elevator arrives, goes nowhere, and dings triumphantly.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Ride anyway.",
              "nextId": "secret_menu",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Decline with dignity.",
              "nextId": "dramatic_exit",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 10
        },
        {
          "id": "negotiation",
          "conditions": [
            {
              "text": "The geese accept your terms: two crumbs now, jazz later.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Deal. Also I moonwalk.",
              "nextId": "beep_translation",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Counteroffer: one crumb and a respectful nod.",
              "nextId": "dramatic_exit",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 11
        },
        {
          "id": "dramatic_exit",
          "conditions": [
            {
              "text": "You spin, your cloak flaps heroically, and a pigeon rates it 7/10.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": "ending"
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [],
          "order": 12
        },
        {
          "id": "secret_menu",
          "conditions": [
            {
              "text": "Secret menu unlocked: Invisible Stew, Crunchless Croutons, and Air Pie.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [
            {
              "text": "Order Air Pie.",
              "nextId": "beep_translation",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Panic and ask for normal bread.",
              "nextId": "ending",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 13
        },
        {
          "id": "beep_translation",
          "conditions": [
            {
              "text": "A nearby machine beeps. Bubbles translates: 'Access granted, mostly.'",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": "ending"
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [],
          "order": 14
        },
        {
          "id": "ending",
          "conditions": [
            {
              "text": "Bubbles salutes. 'You may pass. Try not to negotiate with furniture.'",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [
            {
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "choices": [],
          "order": 15
        }
      ]
    },
    {
      "id": "dlg_npc_mysterious_stranger",
      "name": "The Mysterious Stranger",
      "description": "",
      "dialogueNodes": [
        {
          "id": "intro",
          "conditions": [
            {
              "text": "Hello, traveler. What brings you here?",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I’m just passing through.",
              "nextId": "passing_through",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I need answers.",
              "nextId": "seeking_answers",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 1
        },
        {
          "id": "passing_through",
          "conditions": [
            {
              "text": "Ah, the road is long. Take this map.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "Thanks, I’ll keep it.",
              "nextId": "map_received",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I don’t need it.",
              "nextId": "refuse_map",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 2
        },
        {
          "id": "seeking_answers",
          "conditions": [
            {
              "text": "Answers are dangerous. Are you sure?",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "Yes, I’m ready.",
              "nextId": "ready_answers",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "Maybe later.",
              "nextId": "defer_answers",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 3
        },
        {
          "id": "map_received",
          "conditions": [
            {
              "text": "The map shows a hidden cave. Be cautious.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I’ll explore it.",
              "nextId": "explore_cave",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I’ll keep it safe.",
              "nextId": "safe_map",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 4
        },
        {
          "id": "refuse_map",
          "conditions": [
            {
              "text": "Suit yourself. The road is treacherous.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I’ll manage.",
              "nextId": "end_1",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 5
        },
        {
          "id": "ready_answers",
          "conditions": [
            {
              "text": "The truth is a burden. Are you certain?",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I accept the risk.",
              "nextId": "truth_accepted",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I’ll think about it.",
              "nextId": "think_truth",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 6
        },
        {
          "id": "defer_answers",
          "conditions": [
            {
              "text": "Come back when you’re ready.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I’ll return.",
              "nextId": "end_2",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 7
        },
        {
          "id": "explore_cave",
          "conditions": [
            {
              "text": "The cave is dark and dangerous. Proceed?",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I’ll face it.",
              "nextId": "cave_adventure",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            },
            {
              "text": "I’ll turn back.",
              "nextId": "end_3",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 8
        },
        {
          "id": "safe_map",
          "conditions": [
            {
              "text": "The map remains with you. Good luck.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "Thank you.",
              "nextId": "end_4",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 9
        },
        {
          "id": "truth_accepted",
          "conditions": [
            {
              "text": "The world is not as it seems. Beware.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I’m prepared.",
              "nextId": "end_5",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 10
        },
        {
          "id": "think_truth",
          "conditions": [
            {
              "text": "Take your time. The path is yours.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I’ll decide later.",
              "nextId": "end_6",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 11
        },
        {
          "id": "cave_adventure",
          "conditions": [
            {
              "text": "You find a hidden treasure! Congratulations.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [
            {
              "text": "I’ll take it.",
              "nextId": "end_7",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "reactionType": "none",
              "reactionValue": ""
            }
          ],
          "order": 12
        },
        {
          "id": "end_1",
          "conditions": [
            {
              "text": "Safe travels, wanderer.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [],
          "order": 13
        },
        {
          "id": "end_2",
          "conditions": [
            {
              "text": "I will be here when you return.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [],
          "order": 14
        },
        {
          "id": "end_3",
          "conditions": [
            {
              "text": "Caution is often wisdom.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [],
          "order": 15
        },
        {
          "id": "end_4",
          "conditions": [
            {
              "text": "May the map guide your steps.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [],
          "order": 16
        },
        {
          "id": "end_5",
          "conditions": [
            {
              "text": "Then walk forward with open eyes.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [],
          "order": 17
        },
        {
          "id": "end_6",
          "conditions": [
            {
              "text": "Reflection is its own kind of courage.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [],
          "order": 18
        },
        {
          "id": "end_7",
          "conditions": [
            {
              "text": "Your legend begins here.",
              "conditionType": "always",
              "conditionValue": "",
              "conditionStepId": "",
              "conditionNot": false,
              "nextId": ""
            }
          ],
          "reactions": [],
          "choices": [],
          "order": 19
        }
      ]
    }
  ]
}
