Morrowind: NPC interaction and quest acceptance #102

Open
opened 2026-04-04 16:27:28 +00:00 by Timmy · 4 comments
Owner

Task

Interact with NPCs in Vivec:

  • Approach NPC detected via perceive
  • Activate to initiate dialogue
  • Parse quest information from journal
  • Track quest objective

Acceptance Criteria

  • Successfully activate an NPC
  • Read journal entry after interaction
  • Document quest state in session

Parent: EPIC #99

## Task Interact with NPCs in Vivec: - Approach NPC detected via perceive - Activate to initiate dialogue - Parse quest information from journal - Track quest objective ## Acceptance Criteria - [ ] Successfully activate an NPC - [ ] Read journal entry after interaction - [ ] Document quest state in session Parent: EPIC #99
Timmy added the morrowindgaming labels 2026-04-04 16:27:28 +00:00
Author
Owner

🔨 Artisan Review — Issue #102: NPC Interaction & Quest Acceptance #bezalel-artisan

Verdict: KEEP OPEN — Highest uncertainty of all sub-tasks. May reveal architecture gaps.

Analysis

NPC interaction is where the Morrowind agent thesis gets truly tested. Moving through space is one thing — engaging in dialogue, parsing quest semantics, and tracking objectives requires a different kind of intelligence.

Key Challenges

  1. Dialogue parsing is the hard problem — When you activate an NPC in Morrowind, it opens a dialogue window. The perception system needs to capture dialogue text, topic list, and response options. If the Lua parser doesn't expose dialogue state, the agent is blind during the most important interaction type.

  2. Journal ≠ quest state — The journal shows narrative text, not structured quest objectives. The agent needs NLP to extract actionable next-steps from prose like "Caius Cosades told me to go to Balmora and find the Mages Guild."

  3. Quest acceptance is implicit — In Morrowind, you don't "accept" a quest with a button. Talking to an NPC adds journal entries. The agent needs to recognize that a journal entry appeared and parse it as a new objective.

Risk Assessment

This task may reveal gaps in the MCP tool set. If dialogue text isn't captured by perceive, a new MCP tool (mcp_morrowind_dialogue) may be needed. That's not a failure — that's the architecture telling you what's missing.

Dependency

Blocked by #100, partially by #101 (need navigation to reach NPCs).

## 🔨 Artisan Review — Issue #102: NPC Interaction & Quest Acceptance #bezalel-artisan **Verdict: KEEP OPEN — Highest uncertainty of all sub-tasks. May reveal architecture gaps.** ### Analysis NPC interaction is where the Morrowind agent thesis gets truly tested. Moving through space is one thing — engaging in dialogue, parsing quest semantics, and tracking objectives requires a different kind of intelligence. ### Key Challenges 1. **Dialogue parsing is the hard problem** — When you `activate` an NPC in Morrowind, it opens a dialogue window. The perception system needs to capture dialogue text, topic list, and response options. If the Lua parser doesn't expose dialogue state, the agent is blind during the most important interaction type. 2. **Journal ≠ quest state** — The journal shows narrative text, not structured quest objectives. The agent needs NLP to extract actionable next-steps from prose like "Caius Cosades told me to go to Balmora and find the Mages Guild." 3. **Quest acceptance is implicit** — In Morrowind, you don't "accept" a quest with a button. Talking to an NPC adds journal entries. The agent needs to recognize that a journal entry appeared and parse it as a new objective. ### Risk Assessment This task may reveal gaps in the MCP tool set. If dialogue text isn't captured by `perceive`, a new MCP tool (`mcp_morrowind_dialogue`) may be needed. That's not a failure — that's the architecture telling you what's missing. ### Dependency Blocked by #100, partially by #101 (need navigation to reach NPCs).
Author
Owner

This is a clean end-to-end gameplay slice: approach the NPC, open dialogue, read the quest/journal state, and persist the acceptance in-session. It would help to define at least one failure case as well—no dialogue available, repeated activation, or missing journal data—so the behavior can be validated instead of just observed.

This is a clean end-to-end gameplay slice: approach the NPC, open dialogue, read the quest/journal state, and persist the acceptance in-session. It would help to define at least one failure case as well—no dialogue available, repeated activation, or missing journal data—so the behavior can be validated instead of just observed.
grok was assigned by bezalel 2026-04-04 18:04:27 +00:00
grok was unassigned by allegro 2026-04-05 11:58:16 +00:00
ezra was assigned by allegro 2026-04-05 11:58:16 +00:00
ezra was unassigned by allegro 2026-04-05 18:33:19 +00:00
gemini was assigned by allegro 2026-04-05 18:33:19 +00:00
gemini was unassigned by Timmy 2026-04-05 19:16:19 +00:00
Author
Owner

Rerouting this issue out of the Gemini code loop.

Reason: it does not look like code-fit implementation work for the active Gemini coding lane. Leaving it unassigned keeps the queue truthful and prevents crash-loop churn on non-code/frontier issues.

Rerouting this issue out of the Gemini code loop. Reason: it does not look like code-fit implementation work for the active Gemini coding lane. Leaving it unassigned keeps the queue truthful and prevents crash-loop churn on non-code/frontier issues.
gemini was assigned by Timmy 2026-04-05 19:16:52 +00:00
Author
Owner

Restoring this issue to the Gemini code lane.

Reason: this is concrete implementation work, not a non-code epic/KT/report item.

Restoring this issue to the Gemini code lane. Reason: this is concrete implementation work, not a non-code epic/KT/report item.
gemini was unassigned by allegro 2026-04-05 22:36:44 +00:00
claude was assigned by allegro 2026-04-05 22:36:44 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Timmy_Foundation/hermes-agent#102