# Roadmap Документ описывает актуальную дорожную карту `Danro Jump` по состоянию на 2026-06-15. Статусы: - ✅ реализовано и уже есть в проекте - 🟡 частично реализовано или требует проверки на целевом автомате - ⚪ запланировано ## Что уже реализовано В текущей рабочей версии завершены основные подсистемы: gameplay loop, экономика, призовой flow, сервисное меню, аппаратная интеграция, базовый QR-контур призов, runtime-аудиосистема и базовая защита призовой сессии. - ✅ QR-призы: для `PrizeRewardKind.QRCode` создаётся QR-код со ссылкой Telegram по `prizes.phoneNumber`, используется шаблон `prizes.qrMessageTemplate`, QR-блок показывается только на экране QR-приза. - ✅ Сервисное редактирование QR-сообщения: действие `btn.qr_settings` открывает ввод шаблона через сервисное меню и поддерживает управление клавиатурой/дискретным джойстиком с одной кнопкой. - ✅ Runtime-аудиосистема: добавлены аудиосервис, настройки, микшер и базовые placeholder-клипы для игровых, UI- и призовых событий. - ✅ Защита призовой сессии: добавлен runtime-журнал призовых сессий, блокировка повторного старта выдачи в рамках одной игровой сессии, persistent recovery между перезапусками и сводка в сервисной статистике. - ✅ Стабилизация: свежие EditMode/PlayMode-проверки проходили без игровых ошибок, выполнен Windows64 Development build. - ✅ Текущее визуальное состояние модальных окон главного меню зафиксировано как правильный baseline. Без отдельного запроса не менять их внешний вид, размеры, цвета, фокусные состояния, текстуры и раскладку. Ниже перечислены оставшиеся незавершённые задачи по каждому этапу. ## Этап 1. Стабилизация основного gameplay loop - 🟡 🧯 Провести длительные ручные прогоны gameplay loop с реальной скоростью, большим числом платформ и несколькими подряд джетпаками ## Этап 2. Развитие контента платформера - 🟡 ✨ Звуковой слой уже подготовлен; дальше нужно заменить placeholder-клипы на финальные SFX, настроить уровни микшера и добавить VFX-реакции на прыжки, подбор предметов, урон, смерть, бонусы и работу оборудования - ⚪ 🎨 Расширить набор игровых тем, анимаций и VFX для ощущения готового продукта ## Этап 3. Экономика, призы и правила сессии - 🟡 📲 Базовый контур выдачи призов через QR-коды реализован: генерация QR, экран показа, связь с призовой логикой и редактирование шаблона Telegram-сообщения через сервисное меню работают; широкая кастомизация сценариев и визуала ещё впереди - 🟡 💾 Статистика и история сессий: сервисная статистика уже показывает сводку по настройкам, стоимости старта и runtime-журналу призовых сессий; полная долговременная история, результаты аппаратной выдачи и спорные ситуации пока не реализованы - ✅ 🛡️ Защита от повторной выдачи призов: runtime-журнал, блокировка повторного старта одной игровой сессии, persistent recovery после перезапуска и фиксация аварийно оборванной выдачи уже реализованы; следующий шаг здесь — связать это с подтверждением фактической hardware-выдачи ## Этап 4. Сервисный режим и настройки персонала - 🟡 🔐 Startup protection есть, но роли/пароль/ограничение доступа к служебным настройкам ещё не выделены как отдельный сервисный контур - ✅ 🪟 Модальные окна главного меню визуально доведены до текущего целевого состояния; дальнейшие изменения здесь делать только точечно и только после отдельного подтверждения ## Этап 5. Аппаратная интеграция и эксплуатационная готовность - 🟡 🔌 COM-система интегрирована с реальным протоколом на уровне транспорта, ролей, входов, ADC, денежного баланса, витрины и подсветки; нужна проверка полного сценария на целевом автомате - 🟡 🧯 Обработка ошибок связи, таймаутов и reconnect частично реализована, но graceful shutdown фоновых COM-задач и длительные стресс-прогоны ещё нужны - 🟡 🔗 Игровые события связаны с аппаратным контуром через денежный баланс, ввод, витрину и подсветку; призовая экономика завершена на уровне решения о призе, QR-контур подключён, но hardware-выдача и подтверждение фактической выдачи ещё требуют отдельной интеграции - ⚪ 🏁 Провести длительные прогоны на целевом устройстве: утечки, перегрев, стабильность COM, восстановление после отключения устройств и поведение после аварийного закрытия ## Приоритетный план ### Приоритет 1. Надёжность призовой выдачи и эксплуатационная статистика 1. ✅ Добавить persistent recovery для призовых сессий: активная/выданная/ошибочная призовая сессия сохраняется между перезапусками, незавершённая выдача после аварийного закрытия автоматически переводится в ошибку recovery, а повторная выдача той же игровой сессии остаётся заблокированной. 2. Расширить статистику сервисного экрана: долговременная история игровых сессий, результаты выдачи призов, QR-показы, ошибки, спорные состояния, сбои связи и эксплуатационные счётчики. 3. Подключить фактическое подтверждение hardware-выдачи призов: связать решение о призе, состояние автомата, ошибки выдачи и журнал призовой сессии. 4. Расширить QR-контур без смены источника контакта: оставить `prizes.phoneNumber` единственным контактом владельца, но добавить настройку визуала QR-экрана, ограничений и поведения при ошибках. ### Приоритет 2. Feedback-система, тесты и полировка 1. Довести аудио до финального состояния: заменить placeholder-клипы, отстроить громкости микшера, добавить пользовательские/сервисные настройки громкости и проверить поведение на целевом автомате. 2. Подготовить VFX-слой по аналогии с аудио: единые события для прыжков, подборов, монет, урона, смерти, бонусов, джетпака, врагов, UI-кнопок, выдачи призов, ошибок и QR-сценариев. 3. Расширить тестовое покрытие по всем аспектам игры: gameplay, баланс, старт/continue, настройки, сервисные кнопки, модальные окна, scene flow, COM input, призовой flow, QR, защиту от повторной выдачи, game over, джетпак, врагов и аварийные сценарии. 4. Полировать визуал, звук и ощущения gameplay, не меняя текущий визуальный baseline модальных окон главного меню без отдельного запроса. ### Пониженный приоритет 1. Отдельный большой экран диагностики COM пока не делать. На текущем этапе достаточно debug-каналов, служебных действий и точечных модальных окон. Отдельную диагностику стоит выделять позже, если появится реальная эксплуатационная необходимость или требования целевого автомата. 2. Провести длительные ручные и аппаратные прогоны на целевом автомате после завершения QR-сценариев и защиты призовой сессии.