Подробные изменения: - Расширен основной gameplay loop: джетпак, новые платформы, оборудование, враги, прогрессия сложности и ограничения взаимодействий игрока. - Добавлены Bootstrap-сервисы запуска приложения, защита, фокус окна, управление курсором и настройки сервисов через DI. - Добавлена COM-интеграция с технической схемой Input System, обработкой кнопок/ADC, подсветкой и консольной диагностикой. - Добавлен отдельный debug/logging модуль с каналами, обработчиками консоли и файловым выводом. - Добавлены asmdef, link.xml, EditMode/PlayMode тесты и обновлена дорожная карта проекта. Проверки: - dotnet build .\\DanroJump.Runtime.csproj --no-restore - dotnet build .\\DanroJump.Tests.EditMode.csproj --no-restore - dotnet build .\\DanroJump.Tests.PlayMode.csproj --no-restore
11 KiB
11 KiB
Roadmap
Документ описывает актуальную дорожную карту Danro Jump по состоянию на 2026-06-08.
Статусы:
- ✅ реализовано и уже есть в проекте
- 🟡 частично реализовано или требует проверки на целевом автомате
- ⚪ запланировано
Что уже есть в игре
В текущей рабочей версии уже собран не только прототип, а довольно широкий вертикальный платформерный контур:
- ✅ 🎬 сцены
Bootstrap,MainMenu,Gameи служебный startup-контур через Bootstrap-сцену - ✅ 🛡️ startup protection через внешний launcher, управление фокусом окна и видимостью курсора
- ✅ 📱 главное меню на UI Toolkit с правилами, настройками, фокусом клавиатуры/геймпада и переходом в игру
- ✅ 🕹️ gameplay loop вертикального платформера: игрок, камера, прыжки, смерть, respawn, game over и возврат в меню
- ✅ 📊 gameplay-сессия: очки, монеты, жизни, смерти, текущая высота и сохранение рекорда высоты
- ✅ 🖥️ игровой HUD для счёта, высоты, рекорда, жизней, монет, смертей и состояния сессии
- ✅ 🧩 сцены и gameplay связаны через
Extenject,ProjectContext,SceneFlowServiceи scene installers - ✅ 📈 ScriptableObject-прогрессия сложности по этапам от
InitialдоImpossible - ✅ 🎲 weighted-спавн платформ, оборудования, коллектаблов и противников
- ✅ 🧱 платформы: обычные, пустые, движущиеся, хрупкие и движущиеся хрупкие
- ✅ 🚪 кастомный one-way collider для платформ
- ✅ 🛠️ оборудование платформ:
JumpPad,Spring,SpeedBoost,Hazard,Jetpack - ✅ 🚀 джетпак с подъёмом игрока, блокировкой взаимодействия с окружением, прикреплением, отсоединением, физическим падением и VFX
- ✅ 💎 коллектаблы: очки/кристаллы, монеты и bounce-boost
- ✅ 👾 противники: базовая модель врага, патрульный враг, bat-prefab и procedural enemy spawner
- ✅ 🔌 COM-система: serial-транспорт, авторизация, роли устройств, кредиты, входные биты, ADC-значения, статусы призовых ячеек и команды открытия
- ✅ 🎮 кастомное устройство Input System для COM-контроллера: 24 технические кнопки и 2 ADC-оси
- ✅ 💡 аппаратная подсветка выделена в отдельную систему: board effects, hat blink, prize showcase idle/highlight
- ✅ ⚙️ сервисные настройки через
ServiceSettingsDatabase, Addressables/fallback, JSON-сохранение, scene injection и UI-настройки - ✅ 📝 debug-модуль: каналы логирования, вывод в Unity Console, расширяемые handlers и файловый handler
- ✅ 🧪 тестовая база: EditMode-тесты для COM input, настроек, scene flow, progression, startup protection и PlayMode-тесты игрока
- ✅ 📦 runtime/editor/test asmdef,
link.xmlдля COM reflection и подготовка к IL2CPP/production-сборке
Этап 1. Стабилизация основного gameplay loop
- ✅ 🧱 Настроить коллизии игрока, платформ, оборудования, коллектаблов и противников без базовых спорных edge-case ситуаций
- ✅ 💀 Зафиксировать правила смерти, respawn, блокировки respawn при game over и возврата в меню
- ✅ 📊 Добавить счёт, монеты, высоту, рекорд, жизни, смерти и состояния игровой сессии
- ✅ 🖥️ Подключить UI Toolkit HUD к runtime-сессии
- ✅ 🚀 Стабилизировать джетпак: подбор, замена, отсоединение, падение и удаление после выхода за камеру
- ✅ 🧪 Добавить EditMode/PlayMode-проверки для ключевых gameplay-ситуаций
- 🟡 🧯 Провести длительные ручные прогоны gameplay loop с реальной скоростью, большим числом платформ и несколькими подряд джетпаками
Этап 2. Развитие контента платформера
- ✅ 🧱 Подготовить несколько типов платформ с разным поведением
- ✅ 🛠️ Расширить набор оборудования платформ: ускорители, ловушки, бонусы и временные эффекты
- ✅ 👾 Реализовать первых рабочих противников с поведением, столкновениями и реакциями игрока
- ✅ 💎 Реализовать базовые подбираемые предметы: очки/кристаллы, монеты и bounce-boost
- ✅ 📈 Настроить этапы прогрессии как балансируемые наборы контента
- 🟡 ✨ Добавить и отполировать визуальные и звуковые реакции на прыжки, подбор предметов, урон, смерть, бонусы и работу оборудования
- ⚪ 🎨 Расширить набор игровых тем, анимаций, VFX и SFX для ощущения готового продукта
Этап 3. Экономика, призы и правила сессии
- 🟡 🎟️ Модель игровой сессии частично готова: есть жизни, стоимость/continue-настройки и кредиты COM, но нет полного платежного сценария автомата
- 🟡 🏆 Условия выдачи призов пока представлены настройками и аппаратным шлюзом, но не связаны с финальной игровой прогрессией
- 🟡 🎁 Аппаратная модель призовой витрины частично готова: статусы ячеек, ready boxes, open/force open и события открытия
- ⚪ 📲 Реализовать базовый контур выдачи призов через
QR-коды - ⚪ 💾 Добавить сохранение локальной статистики, истории сессий, результатов выдачи призов и спорных ситуаций
- 🟡 🛡️ Startup protection реализован, но защита от повторной выдачи призов и некорректного завершения призовой сессии ещё требует отдельной логики
Этап 4. Сервисный режим и настройки персонала
- 🟡 🧰 Сервисные настройки уже доступны через меню/модальные окна, но отдельный полноценный сервисный экран или сервисная сцена ещё не выделены
- ✅ ⚙️ Добавить настройку стоимости игры, сложности, призовых параметров, жизней, continue и служебных параметров
- 🟡 🔌 Диагностика COM частично есть через debug-каналы, авторизацию, роли, raw/input/ADC-логи; нужен отдельный UI-экран диагностики
- 🟡 🧪 Добавить ручные тесты выдачи призов, подсветки, витрины, hopper/coin-сценариев и QR-сценариев
- ✅ 💾 Реализовать сохранение и загрузку сервисных настроек без пересборки проекта
- 🟡 🔐 Startup protection есть, но роли/пароль/ограничение доступа к служебным настройкам ещё не выделены как отдельный сервисный контур
Этап 5. Аппаратная интеграция и эксплуатационная готовность
- 🟡 🔌 COM-система интегрирована с реальным протоколом на уровне транспорта, ролей, входов, ADC, кредитов, витрины и подсветки; нужна проверка полного сценария на целевом автомате
- 🟡 🧯 Обработка ошибок связи, таймаутов и reconnect частично реализована, но graceful shutdown фоновых COM-задач и длительные стресс-прогоны ещё нужны
- 🟡 🔗 Игровые события частично связаны с аппаратным контуром через кредиты, ввод, витрину и подсветку; призовая экономика ещё не завершена
- ✅ 📝 Подготовлено централизованное debug-логирование с каналами, Unity Console и файловым handler
- ✅ 📦 Проект подготовлен к production/IL2CPP-направлению: asmdef, Bootstrap-сцена, startup protection,
link.xmlдля COM reflection - ⚪ 🏁 Провести длительные прогоны на целевом устройстве: утечки, перегрев, стабильность COM, восстановление после отключения устройств и поведение после аварийного закрытия
Ближайший фокус
- Завершить аппаратно-призовой сценарий: стоимость игры, списание кредитов, выдача малого/большого приза, журнал выдач.
- Сделать отдельный сервисный экран диагностики: COM-порты, роли устройств, input/ADC, hopper, подсветка, ячейки витрины.
- Довести визуал и звук gameplay: реакции на подборы, урон, смерть, бонусы, джетпак и противников.
- Расширить PlayMode-тесты: сцены
Bootstrap -> MainMenu -> Game, настройки, COM input bridge, джетпак и game over. - Провести длительные ручные и аппаратные прогоны на целевом автомате.