5.4 KiB
id, title, summary, priority, area, owner, created, updated, execution_time, depends_on, canonical_docs, related_files
| id | title | summary | priority | area | owner | created | updated | execution_time | depends_on | canonical_docs | related_files | |||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TASK-0001 | Зафиксировать MVP-архитектуру диаблоида на FishNet | Описать каноническую архитектуру MVP, включая разделение player/world, authority, сетевые границы, детерминизм и связи между подсистемами. | Highest | architecture | unassigned | 2026-03-30 | 2026-03-30 | 1d |
|
|
TASK-0001 - Зафиксировать MVP-архитектуру диаблоида на FishNet
Status
Статус задачи ведется в docs/tasks/Index.md и является каноническим там.
Допустимые значения статуса:
BackLogToDoInProgressReviewDone
Why
Без общей архитектуры легко получить несовместимые решения между генерацией мира, сетевым кодом, сохранениями, персонажами, инвентарем и AI. Эта задача должна зафиксировать правила MVP до начала активной реализации.
Expected Outcome
Появляется документ или набор canonical notes, где определены: модель мира и игрока, границы ответственности сервера и клиента, правила детерминизма по seed, формат идентификаторов чанков и сущностей, а также зависимости между будущими системами.
Current Context
В проекте есть воксельный генератор мира в Assets/Scripts/VoxelWorld/* и легаси код в Assets/Scripts/WorldGen/*. Фокус проекта смещен на воксельный генератор, поэтому архитектурные решения должны опираться на него.
Source Of Truth
docs/tasks/Index.md- код в
Assets/Scripts/VoxelWorld/* - явные решения человека по MVP после создания этой задачи
Read First
docs/tasks/Index.mdAssets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.csAssets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.csAssets/Scripts/Player/SimplePlayerInputMover.cs
Scope In
- зафиксировать high-level архитектуру MVP
- описать authority model для FishNet
- определить канонические идентификаторы игрока, мира, чанка, врага и предмета
- определить границы между runtime world data, player save data и session state
Scope Out
- полноценная реализация подсистем
- контентная балансировка
Constraints
- сохраняйте воксельный worldgen как стартовую точку, если человек явно не меняет направление
- предпочитайте минимальную архитектуру, достаточную для MVP
- все последующие задачи должны опираться на решения из этой задачи
If You Find Drift
- если текущий код worldgen конфликтует с новой сетевой моделью, фиксируйте конфликт отдельно
- не ломайте существующий editor tooling без отдельного решения
Suggested Approach
- Описать целевой gameplay loop MVP и обязательные подсистемы.
- Зафиксировать границы server authority, client prediction и persistence.
- Связать решения с конкретными task-файлами и артефактами кода.
Acceptance Criteria
- есть каноническое описание архитектуры MVP с понятными границами подсистем
- определено, где живут данные мира, игрока, сессии и чанка
- определено, какие части обязаны быть детерминированными по seed
Verification
- вычитка документа на непротиворечивость с
Index.md - проверка, что все downstream task-файлы опираются на решения из этой задачи
Risks / Open Questions
- без раннего решения по authority возможно придется переписывать боевую систему и AI
Human Decisions Needed
- none currently
Decision Log
2026-03-30- архитектурную задачу вынесли в отдельный highest-priority task перед реализацией сетевых и боевых систем.
Handoff Notes
После фиксации архитектуры обновить canonical_docs в downstream task-файлах, если появится новый канонический документ.