aboutsummaryrefslogtreecommitdiff
path: root/data/behaviors
diff options
context:
space:
mode:
Diffstat (limited to 'data/behaviors')
-rw-r--r--data/behaviors/client_talk.yaml217
-rw-r--r--data/behaviors/general_store.yaml49
-rw-r--r--data/behaviors/stall_guard_talk.yaml36
-rw-r--r--data/behaviors/weapons_shop.yaml43
4 files changed, 345 insertions, 0 deletions
diff --git a/data/behaviors/client_talk.yaml b/data/behaviors/client_talk.yaml
new file mode 100644
index 0000000..84e4f6a
--- /dev/null
+++ b/data/behaviors/client_talk.yaml
@@ -0,0 +1,217 @@
+id: client_talk
+type: talk
+nodes:
+ start:
+ message: "The Client looks up from their data pad. \"What do you need?\""
+ options:
+ - text: "\"I need a job.\""
+ goto: assign_task
+ condition:
+ player_flag: assassin_task_mob
+ not: true
+ - text: "\"What's my current task?\""
+ goto: current_task
+ condition:
+ player_flag: assassin_task_mob
+ not: false
+ - text: "\"I want to skip my task.\""
+ goto: skip_confirm
+ condition:
+ player_flag: assassin_task_mob
+ not: false
+ - text: "\"I want to extend my task.\""
+ goto: extend_confirm
+ condition:
+ all_of:
+ - player_flag: assassin_task_mob
+ not: false
+ - player_flag: assassin_unlocked_extend
+ value: true
+ - text: "\"I'd like to browse the Reputation Shop.\""
+ goto: rep_shop
+ - text: "\"I need supplies.\""
+ goto: supplies
+ - text: "\"Goodbye.\""
+ end: true
+
+ assign_task:
+ message: "\"Let me check what's available...\" The Client scrolls through their data pad."
+ action:
+ assign_task: true
+ options:
+ - text: "\"Understood.\""
+ end: true
+ - text: "\"What else do you have?\""
+ goto: start
+
+ current_task:
+ message: "\"Let me check your file.\" The Client pulls up your record."
+ options:
+ - text: "\"Okay.\""
+ end: true
+
+ skip_confirm:
+ message: "\"Skipping a task costs 30 Reputation and resets your streak. Are you sure?\""
+ options:
+ - text: "\"Yes, skip it.\""
+ goto: skip_done
+ - text: "\"Never mind.\""
+ goto: start
+
+ skip_done:
+ message: "\"Task cancelled. Your streak has been reset.\""
+ action:
+ skip_task: true
+ options:
+ - text: "\"Give me a new one.\""
+ goto: assign_task
+ - text: "\"Goodbye.\""
+ end: true
+
+ extend_confirm:
+ message: "\"Extending your task costs 30 Reputation and adds more kills. Want to proceed?\""
+ options:
+ - text: "\"Yes, extend it.\""
+ goto: extend_done
+ - text: "\"Never mind.\""
+ goto: start
+
+ extend_done:
+ message: "\"Done. I've added more targets to your contract.\""
+ action:
+ extend_task: true
+ options:
+ - text: "\"Thanks.\""
+ end: true
+
+ rep_shop:
+ message: "\"Here's what I've got. All purchases are permanent.\""
+ options:
+ - text: "\"Auto-finish: Salt (200 Rep) - Never consume salt on finishing blows.\""
+ goto: buy_auto_salt
+ condition:
+ player_flag: assassin_unlocked_auto_salt
+ not: true
+ - text: "\"Auto-finish: Acid Vial (200 Rep) - Never consume acid vials on finishing blows.\""
+ goto: buy_auto_acid
+ condition:
+ player_flag: assassin_unlocked_auto_acid_vial
+ not: true
+ - text: "\"Unlock Superior Mobs (300 Rep) - Rare superior variants may spawn.\""
+ goto: buy_superiors
+ condition:
+ player_flag: assassin_unlocked_superiors
+ not: true
+ - text: "\"Unlock Extended Tasks (100 Rep) - Allows extending tasks.\""
+ goto: buy_extend_unlock
+ condition:
+ player_flag: assassin_unlocked_extend
+ not: true
+ - text: "\"Back.\""
+ goto: start
+
+ buy_auto_salt:
+ message: "\"Auto-salt purchased. You'll no longer consume salt on finishing blows.\""
+ action:
+ reputation_cost: 200
+ set_player_flags:
+ assassin_unlocked_auto_salt: true
+ options:
+ - text: "\"Thanks.\""
+ goto: rep_shop
+
+ buy_auto_acid:
+ message: "\"Auto-acid purchased. Acid vials will no longer be consumed.\""
+ action:
+ reputation_cost: 200
+ set_player_flags:
+ assassin_unlocked_auto_acid_vial: true
+ options:
+ - text: "\"Thanks.\""
+ goto: rep_shop
+
+ buy_superiors:
+ message: "\"Superior encounters unlocked. Watch yourself out there.\""
+ action:
+ reputation_cost: 300
+ set_player_flags:
+ assassin_unlocked_superiors: true
+ options:
+ - text: "\"Thanks.\""
+ goto: rep_shop
+
+ buy_extend_unlock:
+ message: "\"You can now extend tasks via our conversation.\""
+ action:
+ reputation_cost: 100
+ set_player_flags:
+ assassin_unlocked_extend: true
+ options:
+ - text: "\"Thanks.\""
+ goto: rep_shop
+
+ supplies:
+ message: "\"I stock everything you need for the job. Cheap, too.\""
+ options:
+ - text: "\"Buy salt (5 credits each).\""
+ goto: buy_salt
+ condition:
+ min_credits: 5
+ - text: "\"Buy acid vial (10 credits each).\""
+ goto: buy_acid
+ condition:
+ min_credits: 10
+ - text: "\"Buy insulated gloves (50 credits).\""
+ goto: buy_gloves
+ condition:
+ min_credits: 50
+ - text: "\"Buy spectral visor (75 credits).\""
+ goto: buy_visor
+ condition:
+ min_credits: 75
+ - text: "\"Back.\""
+ goto: start
+
+ buy_salt:
+ message: "\"Here you go.\" The Client slides a packet of salt across the table."
+ action:
+ give_item: salt
+ cost: 5
+ options:
+ - text: "\"Buy more.\""
+ goto: buy_salt
+ condition:
+ min_credits: 5
+ - text: "\"Thanks.\""
+ goto: supplies
+
+ buy_acid:
+ message: "\"Handle with care.\" The Client passes you a vial of corrosive acid."
+ action:
+ give_item: acid_vial
+ cost: 10
+ options:
+ - text: "\"Buy more.\""
+ goto: buy_acid
+ condition:
+ min_credits: 10
+ - text: "\"Thanks.\""
+ goto: supplies
+
+ buy_gloves:
+ message: "\"These'll keep the current from frying your hands.\" The Client tosses you a pair of thick rubber gloves."
+ action:
+ give_item: insulated_gloves
+ cost: 50
+ options:
+ - text: "\"Thanks.\""
+ goto: supplies
+
+ buy_visor:
+ message: "\"Spectral frequency filter. Makes the invisible visible — and keeps their attacks from scrambling your brain.\""
+ action:
+ give_item: spectral_visor
+ cost: 75
+ options:
+ - text: "\"Thanks.\""
+ goto: supplies
diff --git a/data/behaviors/general_store.yaml b/data/behaviors/general_store.yaml
new file mode 100644
index 0000000..657e842
--- /dev/null
+++ b/data/behaviors/general_store.yaml
@@ -0,0 +1,49 @@
+id: general_store
+type: talk
+nodes:
+ start:
+ message: "\"Welcome to the General Store! Need any supplies?\""
+ options:
+ - text: "\"I'd like to browse.\""
+ goto: shop
+ - text: "\"Goodbye.\""
+ end: true
+ shop:
+ message: "\"Take your time. What can I get you?\""
+ action:
+ shop:
+ message: "What would you like to buy or sell?"
+ items:
+ - item_id: fishing_rod
+ buy_price: 10
+ sell_price: 2
+ - item_id: fishing_bait
+ buy_price: 2
+ sell_price: 0
+ - item_id: matches
+ buy_price: 10
+ sell_price: 2
+ - item_id: firesteel
+ buy_price: 40
+ sell_price: 10
+ - item_id: lighter
+ buy_price: 30
+ sell_price: 7
+ - item_id: hammer
+ buy_price: 20
+ sell_price: 5
+ - item_id: knife
+ buy_price: 10
+ sell_price: 2
+ - item_id: chisel
+ buy_price: 10
+ sell_price: 2
+ - item_id: bread
+ buy_price: 10
+ sell_price: 2
+ - item_id: bowstring
+ buy_price: 20
+ sell_price: 5
+ options:
+ - text: "\"I'm done.\""
+ goto: start
diff --git a/data/behaviors/stall_guard_talk.yaml b/data/behaviors/stall_guard_talk.yaml
new file mode 100644
index 0000000..c9434af
--- /dev/null
+++ b/data/behaviors/stall_guard_talk.yaml
@@ -0,0 +1,36 @@
+id: stall_guard_talk
+type: talk
+nodes:
+ start:
+ message: "Caught you red-handed! You have three options, thief."
+ options:
+ - text: "\"I'll pay a fine. (500 credits)\""
+ goto: bribe
+ condition:
+ min_credits: 500
+ - text: "\"Take me to jail.\""
+ goto: jail
+ - text: "\"You'll have to catch me first!\""
+ goto: fight
+ bribe:
+ message: "Smart choice. Hand over 500 credits and we'll forget this happened."
+ action:
+ cost: 500
+ options:
+ - text: "\"Fine, take it.\""
+ end: true
+ jail:
+ message: "Off to the detention cell with you!"
+ action:
+ teleport: 162
+ options:
+ - text: "(You are dragged away)"
+ end: true
+ fight:
+ message: "Then defend yourself!"
+ action:
+ set_flags:
+ guard_hostile: true
+ options:
+ - text: "(The guard attacks!)"
+ end: true \ No newline at end of file
diff --git a/data/behaviors/weapons_shop.yaml b/data/behaviors/weapons_shop.yaml
new file mode 100644
index 0000000..d12a4e6
--- /dev/null
+++ b/data/behaviors/weapons_shop.yaml
@@ -0,0 +1,43 @@
+id: weapons_shop
+type: talk
+nodes:
+ start:
+ message: "\"Welcome to the Smithy! Finest weapons and armor on the asteroid.\""
+ options:
+ - text: "\"Show me what you've got.\""
+ goto: shop
+ - text: "\"Nothing right now.\""
+ end: true
+ shop:
+ message: "\"Here's the current inventory. All quality guaranteed.\""
+ action:
+ shop:
+ message: "The Smithy — buy or sell weapons and armor."
+ items:
+ - item_id: bronze_sword
+ buy_price: 25
+ sell_price: 6
+ - item_id: iron_sword
+ buy_price: 60
+ sell_price: 15
+ - item_id: bronze_axe
+ buy_price: 20
+ sell_price: 5
+ - item_id: iron_axe
+ buy_price: 50
+ sell_price: 12
+ - item_id: bronze_pickaxe
+ buy_price: 20
+ sell_price: 5
+ - item_id: iron_pickaxe
+ buy_price: 50
+ sell_price: 12
+ - item_id: bronze_med_helm
+ buy_price: 16
+ sell_price: 4
+ - item_id: iron_med_helm
+ buy_price: 40
+ sell_price: 10
+ options:
+ - text: "\"That's all for now.\""
+ goto: start \ No newline at end of file