- Длительность забега: 10–25 минут.
- Поражение: смерть / провал условия (ядро уничтожено, время вышло) → экран итогов → база/хаб.
- Мета-прогрессия: разблокировки пассивок, оружия, персонажей (валюта забега + постоянная).
- Соло: один игрок, один поток правил.
- Кооп: та же арена; прогрессия в мете — настраиваемо (общая / личная / смешанная).
- Мало уникального арта: 1–3 пресета арен, примитивы врагов.
- Аффиксы, волны, «недельные» модификаторы — данные + процедурная логика; позже — LLM под хостом.
- Телеметрия для ИИ: волна, DPS, смерти, выбранные апгрейды, время сессии.
Код и роли ИИ (волны, анализ игрока, мультиплеер): см. ARENA_ARCHITECTURE_AND_AI.md.
Проект D:\Git\GameDev-Last-War — крупный продакшен: Clean Architecture, VContainer, MessagePipe, R3, UniTask, ECS (Entities) для тяжёлых визуальных частей, gRPC / MagicOnion, PlayFab, SQLite, логирование Serilog/ZLogger, тесты на NSubstitute.
Для лёгкого roguelite-примера в CoreAI не обязательно тянуть весь стек: достаточно повторить идею слоёв (Domain → UseCases → Presentation) и DI, а сеть/бэкенд добавить по необходимости.
- Подключить CoreAI: UPM
com.nexoider.coreai(Assets/CoreAIв монорепозитории; внешний проект — Git URL?path=Assets/CoreAI) — оркестрация ИИ, песочница Lua, события; при необходимости скопировать хостCoreAiUnity(тесты, промпты в Resources, сцена_mainCoreAI). - Подключить VContainer + MessagePipe + R3 в пример (как в Last-War, но минимальный набор).
- Сцена
RogueliteBootstrapсExampleRogueliteEntry+ позжеLifetimeScope. - Прототип петли: спавн волны → урон → лут-валюта забега → экран смерти → хаб с разблокировками (без сети).
- Кооп: выбрать стек (Netcode for GameObjects или другой) и вынести авторитет смены правил на хост.