NPC Mission Generators¶
Source: 2026-07-05 NPCs World Verbs Rewards Design Document · NPCs World Verbs Rewards and Living World
NPCs at harbour and destinations propose missions from jobs, not raw activity types.
Generator pipeline¶
Mission brief (NPC job + story wrapper)
↓
Session plan (learning engine: words + activity type)
↓
Scene spec / served job payload
↓
Play session (Godot UI + save)
How to choose a new NPC story¶
- Player enters scene
- Load child world state + location NPCs
- For each NPC check: required progression · availability · introduced · jobs off cooldown · activity fit · world objects
- If required story job exists → choose it
- Else choose best living world job
- Learning engine selects words/activity details
- Story wrapper attached → Godot displays problem → activity begins
Priority order¶
- Required main story job
- Unseen first-time NPC introduction
- Relationship progression job
- Learning need job
- Living world repeat job
- Optional collectible-eligible job
Main story always wins over random living world jobs.
Job pool example — Merchant¶
repair_box_labels
write_wet_labels
read_delivery_note
restore_shipping_manifest
organise_market_signs
prepare_whale_bay_order
fix_price_tags
label_new_supplies
Each job supports one or more activity types per Activity Selection Rules.
Generator inputs¶
- Current arc / chapter progress (First Arc)
- Skill assignments (teacher/parent) → Learning Engine
- World state (prop broken, light out, labels missing) → NPC and Job Data Model
- Relationship stage · cooldowns · recent job history
Outputs¶
Served job to Godot — see [[Godot Server Split - NPC Pipeline#Served job payload]]