115 lines
5.4 KiB
Markdown
115 lines
5.4 KiB
Markdown
# Roadmap OpenWC
|
||
|
||
> Этот документ объясняет стратегию на высоком уровне. Исполняемый порядок, текущий статус, checklist и доказательства завершения ведутся только в [`../targets/README.md`](../targets/README.md). При расхождении `targets/` имеет приоритет.
|
||
|
||
Полный roadmap с точки зрения разработки, contracts, subsystem dependencies и gates находится в [`../targets/DEVELOPMENT_ROADMAP.md`](../targets/DEVELOPMENT_ROADMAP.md).
|
||
|
||
## Стратегия
|
||
|
||
Работа идёт вертикальными срезами. Каждый срез включает data, domain, adapter, presentation, editor support, diagnostics и tests. Горизонтальная реализация всех opcodes или всех editor-панелей без пользовательского результата не считается milestone.
|
||
|
||
## M0 — Архитектурный фундамент
|
||
|
||
- Утвердить документы и ADR workflow.
|
||
- Ввести module boundaries и dependency checks.
|
||
- Выделить input, camera, movement, terrain query и character presentation из тестового контроллера.
|
||
- Заменить зависимость streamer от Camera3D на `StreamingFocus`.
|
||
- Зафиксировать coordinate mapper и golden points.
|
||
|
||
Готово, когда render sandbox сохраняет текущее качество, а domain тестируется без scene tree.
|
||
|
||
## M1 — Content Project и Editor shell
|
||
|
||
- `addons/openwc_editor` с workspace и docks.
|
||
- Content Project schema, stable IDs, save/load/migration.
|
||
- Selection, command history, autosave/recovery.
|
||
- Validation dock и headless validation.
|
||
- Read-only asset/content browser.
|
||
|
||
Готово, когда небольшой synthetic project можно создать, изменить, undo, перезапустить Editor и получить идентичное состояние.
|
||
|
||
## M2 — Server inspector и adapters
|
||
|
||
- TrinityCore/AzerothCore connection profiles.
|
||
- Schema detection и capabilities.
|
||
- Read-only snapshots creatures, gameobjects, spawns и quests.
|
||
- Канонические модели, semantic diff и ID allocation.
|
||
- SQL change-set dry-run на disposable DB.
|
||
|
||
Готово, когда одна сущность round-trip проходит оба поддерживаемых adapter profile без молчаливой потери данных.
|
||
|
||
## M3 — World Editor MVP
|
||
|
||
- Map viewport и coordinate overlays.
|
||
- Server spawn visualization.
|
||
- Selection, transform gizmo, placement и paths.
|
||
- NPC inspector, validation и undo/redo.
|
||
- Change set и dev apply.
|
||
|
||
Готово, когда NPC размещается в Editor и появляется на тестовом core в ожидаемой позиции.
|
||
|
||
## M4 — Quest vertical slice
|
||
|
||
- Quest form и chain graph.
|
||
- Kill/collect/explore objectives, giver/ender, rewards и localization.
|
||
- Dependency/reachability/economy validation.
|
||
- Dev deploy и integrated playtest launcher.
|
||
|
||
Готово, когда созданный в Editor квест полностью проходится клиентом.
|
||
|
||
## M5 — Playable network client
|
||
|
||
- Auth, realm, character selection и world session.
|
||
- Entity/update fields и world spawn.
|
||
- Movement prediction/reconciliation.
|
||
- Basic HUD, targeting, chat и disconnect recovery.
|
||
|
||
Готово, когда клиент стабильно входит в мир, перемещается и видит синхронизированные entities.
|
||
|
||
## M6 — Core gameplay
|
||
|
||
- Combat/spells/auras/death.
|
||
- Inventory/equipment/loot/vendors.
|
||
- Quest runtime и world map/minimap.
|
||
- Character visuals и animation coverage.
|
||
- Lua/FrameXML foundation.
|
||
|
||
Готово, когда базовый leveling loop проходит без внешнего клиента.
|
||
|
||
## M7 — Dungeon authoring
|
||
|
||
- DungeonPackage, encounters, triggers, doors и spawn groups.
|
||
- SmartAI/script skeleton generation.
|
||
- Encounter graph validation и tuning profiles.
|
||
- Group/instance/loot/lockout runtime.
|
||
|
||
Готово, когда custom dungeon собирается, разворачивается и проходится группой на test core.
|
||
|
||
## M8 — Compatibility и completeness
|
||
|
||
- Feature matrix WoW 3.3.5a.
|
||
- Addon compatibility tiers.
|
||
- Social, PvP, professions, economy services, vehicles и cinematics.
|
||
- Core revision matrix, migration и release packaging.
|
||
- Performance, accessibility, localization и soak hardening.
|
||
|
||
## Приоритет backlog
|
||
|
||
При равной ценности порядок такой:
|
||
|
||
1. безопасность данных и воспроизводимость;
|
||
2. корректность протокола и authoritative state;
|
||
3. пользовательский vertical slice;
|
||
4. diagnostics и testability;
|
||
5. frame pacing;
|
||
6. визуальная точность и polish.
|
||
|
||
## Не делать раньше времени
|
||
|
||
- прямую запись в production DB;
|
||
- универсальный visual scripting для любой C++ механики;
|
||
- массовую реализацию Lua API без работающего UI slice;
|
||
- большой rewrite существующего renderer;
|
||
- multi-expansion abstraction до устойчивого профиля 3.3.5a;
|
||
- proprietary asset packaging в репозитории.
|