Skip to content

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

  1. Player enters scene
  2. Load child world state + location NPCs
  3. For each NPC check: required progression · availability · introduced · jobs off cooldown · activity fit · world objects
  4. If required story job exists → choose it
  5. Else choose best living world job
  6. Learning engine selects words/activity details
  7. Story wrapper attached → Godot displays problem → activity begins

Priority order

  1. Required main story job
  2. Unseen first-time NPC introduction
  3. Relationship progression job
  4. Learning need job
  5. Living world repeat job
  6. 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]]