Диалоги как данные + интерактивные точки (v2 трек 9)
Перенос диалоговой архитектуры v1 в ядро v2: граф — данные (узлы/
выборы/условия/эффекты, validateDialogue для агентной валидации),
рантайм DialogueRunner — семантика v1 (текстовый узел ждёт игрока,
узел-действие проваливается сам, do[] только эмитится), отрисовка —
игра (DialogueView). Точки взаимодействия — чистые данные + nearest.

Демка: страж у дома и табличка, клавиша E, HTML-оверлей диалога,
2 графа с эффектами setFlags/setVars и тостами; мост interact/
interactInfo/dialogueOpen/dialogueInfo/dialoguePick/dialogueAdvance.
Гейт dialogue.mjs — 15 проверок (подсказка, панель по зонам кадра,
выборы, эффекты, закрытие). 136 юнит-тестов.

Co-Authored-By: Claude Code <noreply@anthropic.com>
1 parent 01a1509 commit d37364392ebe620065dfd4a3b49baac33a5862a2
@Eugene Sukhodolskiy Eugene Sukhodolskiy authored 2 days ago
Showing 12 changed files
View
docs/plan.md
View
v2/CLAUDE.md
View
v2/apps/demo/index.html
View
v2/apps/demo/src/main.ts
View
v2/apps/demo/tools/checks/dialogue.mjs 0 → 100644
View
v2/packages/engine/src/dialogue/__tests__/graph.test.ts 0 → 100644
View
v2/packages/engine/src/dialogue/__tests__/runner.test.ts 0 → 100644
View
v2/packages/engine/src/dialogue/graph.ts 0 → 100644
View
v2/packages/engine/src/dialogue/runner.ts 0 → 100644
View
v2/packages/engine/src/index.ts
View
v2/packages/engine/src/interaction/__tests__/interactables.test.ts 0 → 100644
View
v2/packages/engine/src/interaction/interactables.ts 0 → 100644