aboutsummaryrefslogtreecommitdiff
path: root/data/mobs/examples/client.yaml
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-07-08 19:59:14 -0400
committerhistoria <[not public]>2026-07-08 19:59:14 -0400
commit09d325dcf5e779eab5550d3fd3377bde50101428 (patch)
treea433be903aabbf1d2eadce2aacdac12a9eb8dde0 /data/mobs/examples/client.yaml
parent9184377301c2604e003f36426788c032fb0ca524 (diff)
downloadthehouseoficarus-09d325dcf5e779eab5550d3fd3377bde50101428.tar.gz
feat: unify on use, on look, and on kill. all support same conditions/actions now.
Diffstat (limited to 'data/mobs/examples/client.yaml')
-rw-r--r--data/mobs/examples/client.yaml226
1 files changed, 79 insertions, 147 deletions
diff --git a/data/mobs/examples/client.yaml b/data/mobs/examples/client.yaml
index 2442a8a..da3aede 100644
--- a/data/mobs/examples/client.yaml
+++ b/data/mobs/examples/client.yaml
@@ -12,13 +12,13 @@ idle_descriptions:
talk:
nodes:
assign_task:
- action:
+ action: null
messages:
- '"Let me check what''s available..." The Client scrolls through their data pad.'
options:
- - text: '"Understood."'
- - goto: start
- text: '"What else do you have?"'
+ - text: '"Understood."'
+ - goto: start
+ text: '"What else do you have?"'
buy_acid:
action:
credits: -10
@@ -26,42 +26,12 @@ talk:
messages:
- '"Handle with care." The Client passes you a vial of corrosive acid.'
options:
- - condition:
- min_credits: 10
- goto: buy_acid
- text: '"Buy more."'
- - goto: supplies
- text: '"Thanks."'
- buy_auto_acid:
- action:
- reputation_cost: 200
- set_player_flags:
- assassin_unlocked_auto_acid_vial: true
- messages:
- - '"Auto-acid purchased. Acid vials will no longer be consumed."'
- options:
- - goto: rep_shop
- text: '"Thanks."'
- buy_auto_salt:
- action:
- reputation_cost: 200
- set_player_flags:
- assassin_unlocked_auto_salt: true
- messages:
- - '"Auto-salt purchased. You''ll no longer consume salt on finishing blows."'
- options:
- - goto: rep_shop
- text: '"Thanks."'
- buy_extend_unlock:
- action:
- reputation_cost: 100
- set_player_flags:
- assassin_unlocked_extend: true
- messages:
- - '"You can now extend tasks via our conversation."'
- options:
- - goto: rep_shop
- text: '"Thanks."'
+ - condition:
+ min_credits: 10
+ goto: buy_acid
+ text: '"Buy more."'
+ - goto: supplies
+ text: '"Thanks."'
buy_gloves:
action:
credits: -50
@@ -69,8 +39,8 @@ talk:
messages:
- '"These''ll keep the current from frying your hands." The Client tosses you a pair of thick rubber gloves.'
options:
- - goto: supplies
- text: '"Thanks."'
+ - goto: supplies
+ text: '"Thanks."'
buy_salt:
action:
credits: -5
@@ -78,22 +48,12 @@ talk:
messages:
- '"Here you go." The Client slides a packet of salt across the table.'
options:
- - condition:
- min_credits: 5
- goto: buy_salt
- text: '"Buy more."'
- - goto: supplies
- text: '"Thanks."'
- buy_superiors:
- action:
- reputation_cost: 300
- set_player_flags:
- assassin_unlocked_superiors: true
- messages:
- - '"Superior encounters unlocked. Watch yourself out there."'
- options:
- - goto: rep_shop
- text: '"Thanks."'
+ - condition:
+ min_credits: 5
+ goto: buy_salt
+ text: '"Buy more."'
+ - goto: supplies
+ text: '"Thanks."'
buy_visor:
action:
credits: -75
@@ -101,120 +61,92 @@ talk:
messages:
- '"Spectral frequency filter. Makes the invisible visible — and keeps their attacks from scrambling your brain."'
options:
- - goto: supplies
- text: '"Thanks."'
+ - goto: supplies
+ text: '"Thanks."'
current_task:
messages:
- '"Let me check your file." The Client pulls up your record.'
options:
- - text: '"Okay."'
+ - text: '"Okay."'
extend_confirm:
messages:
- '"Extending your task costs 30 Reputation and adds more kills. Want to proceed?"'
options:
- - goto: extend_done
- text: '"Yes, extend it."'
- - goto: start
- text: '"Never mind."'
+ - goto: extend_done
+ text: '"Yes, extend it."'
+ - goto: start
+ text: '"Never mind."'
extend_done:
- action:
+ action: null
messages:
- '"Done. I''ve added more targets to your contract."'
options:
- - text: '"Thanks."'
- rep_shop:
- messages:
- - '"Here''s what I''ve got. All purchases are permanent."'
- options:
- - condition:
- not: true
- player_flag: assassin_unlocked_auto_salt
- goto: buy_auto_salt
- text: '"Auto-finish: Salt (200 Rep) - Never consume salt on finishing blows."'
- - condition:
- not: true
- player_flag: assassin_unlocked_auto_acid_vial
- goto: buy_auto_acid
- text: '"Auto-finish: Acid Vial (200 Rep) - Never consume acid vials on finishing blows."'
- - condition:
- not: true
- player_flag: assassin_unlocked_superiors
- goto: buy_superiors
- text: '"Unlock Superior Mobs (300 Rep) - Rare superior variants may spawn."'
- - condition:
- not: true
- player_flag: assassin_unlocked_extend
- goto: buy_extend_unlock
- text: '"Unlock Extended Tasks (100 Rep) - Allows extending tasks."'
- - goto: start
- text: '"Back."'
+ - text: '"Thanks."'
skip_confirm:
messages:
- '"Skipping a task costs 30 Reputation and resets your streak. Are you sure?"'
options:
- - goto: skip_done
- text: '"Yes, skip it."'
- - goto: start
- text: '"Never mind."'
+ - goto: skip_done
+ text: '"Yes, skip it."'
+ - goto: start
+ text: '"Never mind."'
skip_done:
- action:
+ action: null
messages:
- '"Task cancelled. Your streak has been reset."'
options:
- - goto: assign_task
- text: '"Give me a new one."'
- - text: '"Goodbye."'
+ - goto: assign_task
+ text: '"Give me a new one."'
+ - text: '"Goodbye."'
start:
messages:
- The Client looks up from their data pad. "What do you need?"
options:
- - condition:
- not: true
- player_flag: assassin_task_mob
- goto: assign_task
- text: '"I need a job."'
- - condition:
- not: false
- player_flag: assassin_task_mob
- goto: current_task
- text: '"What''s my current task?"'
- - condition:
- not: false
- player_flag: assassin_task_mob
- goto: skip_confirm
- text: '"I want to skip my task."'
- - condition:
- all_of:
- - not: false
- player_flag: assassin_task_mob
- - player_flag: assassin_unlocked_extend
- value: true
- goto: extend_confirm
- text: '"I want to extend my task."'
- - goto: rep_shop
- text: '"I''d like to browse the Reputation Shop."'
- - goto: supplies
- text: '"I need supplies."'
- - text: '"Goodbye."'
+ - condition:
+ not: true
+ player_flag: assassin_task_mob
+ goto: assign_task
+ text: '"I need a job."'
+ - condition:
+ not: false
+ player_flag: assassin_task_mob
+ goto: current_task
+ text: '"What''s my current task?"'
+ - condition:
+ not: false
+ player_flag: assassin_task_mob
+ goto: skip_confirm
+ text: '"I want to skip my task."'
+ - condition:
+ all_of:
+ - not: false
+ player_flag: assassin_task_mob
+ - player_flag: assassin_unlocked_extend
+ value: true
+ goto: extend_confirm
+ text: '"I want to extend my task."'
+ - goto: supplies
+ text: '"I need supplies."'
+ - text: '"Goodbye."'
supplies:
messages:
- '"I stock everything you need for the job. Cheap, too."'
options:
- - condition:
- min_credits: 5
- goto: buy_salt
- text: '"Buy salt (5 credits each)."'
- - condition:
- min_credits: 10
- goto: buy_acid
- text: '"Buy acid vial (10 credits each)."'
- - condition:
- min_credits: 50
- goto: buy_gloves
- text: '"Buy insulated gloves (50 credits)."'
- - condition:
- min_credits: 75
- goto: buy_visor
- text: '"Buy spectral visor (75 credits)."'
- - goto: start
- text: '"Back."'
+ - condition:
+ min_credits: 5
+ goto: buy_salt
+ text: '"Buy salt (5 credits each)."'
+ - condition:
+ min_credits: 10
+ goto: buy_acid
+ text: '"Buy acid vial (10 credits each)."'
+ - condition:
+ min_credits: 50
+ goto: buy_gloves
+ text: '"Buy insulated gloves (50 credits)."'
+ - condition:
+ min_credits: 75
+ goto: buy_visor
+ text: '"Buy spectral visor (75 credits)."'
+ - goto: start
+ text: '"Back."'