Роадмап геймдизайнерской части: только то, что требует анализа, проработки и обсуждения. Уже принятые решения здесь не живут — они в journal-adr. Технический план реализации — Тех: 01. Roadmap реализации. Это разные документы, не путать.
Порядок работы: разобрать этот список → выбрать приоритетные темы → прорабатывать по одной, результат уносить в журнал решений и канон-доки.
Блок 0 — СТРУКТУРНАЯ РАЗВИЛКА → РЕШЕНО (2026-07-15)
Развилка закрыта. Выбран промежуточный вариант: гильдия — дом и хаб прокачки; забег — ядро и единственный «серьёзный» режим. Между забегами переносятся только «Сосуды» и их летопись подвигов; мощь/уровни — нет (не Darkest Dungeon / XCOM). Прочие активности награждают уникальностью через мету, не конкурируя с забегом. Полные формулировки — journal-adr решения 24–31.
Что ушло из этой развилки в проработку (валюта открытий, темп открытий, дерево прегенов, экран-хаб гильдии) — разобрано 2026-07-27, сессия «развитие гильдии». Канон — Run - Guild Development.
Блок 1 — большие темы, требующие отдельного захода
| Тема | Что надо сделать | Что блокирует / зачем |
|---|---|---|
| РАЗОБРАНО 2026-07-27 (журнал, сессия «развитие гильдии»): ростер 8→64, ветераны и гейт вершины, смертность от возвышения, валюта дома vs вехи для контента, книга гильдии, хаб из трёх разделов, наём с запросами. Канон — Run - Guild Development. Форма хаба разобрана 2026-07-30 (сессия «хаб гильдии»): двор, где люди стоят телами — Modes - Guild Courtyard | Осталась только балансировка чисел (пороги, цены, лестница гейта) и открытые пункты в конце канон-домов | |
| РАЗОБРАНО 2026-07-27 (журнал, сессия «прокачка „Сосуда“ в забеге»): опыт за бои и подвиги, ~2 уровня за акт, витрина из четырёх с рероллом за золото, три рода содержания (статы с минусами · Судьбы-квесты · Обеты), провал квеста сбрасывает прогресс но не слот, Обет нерушим. Канон — Run - Vessel Progression | Осталась балансировка чисел и награда «Удачливого» | |
| Цели боя (типы битв) | Спроектировать конкретные типы: «помочь», «продержаться», «все против всех» и др. Сколько их на старте. Условия победы/провала, награды | Требует шва в движке: условие победы как данные + третья сторона в бою. Решено вводить |
| Многофазовые сражения | Спроектировать: сколько фаз, окно между фазами (что можно менять), как считается сложность, как встраиваются текст-ивенты между фазами. Заметка Макса (2026-07-29): расстановку между фазами ограничить по времени — 30 сек | Решено вводить. Требует проработки перед реализацией. Возражение скрайба по таймеру: 30 сек давят на реакцию, а наша доктрина — «скилл в подготовке, не в реакции» (difficulty-skill). В коопе таймер оправдан как анти-AFK, но тогда порядка 90 сек; в соло — пауза без таймера. Требуют этих фаз в первую очередь боссы |
| Испытания: ревизия | Принцип закреплён (Журнал №67–68): испытание = квест игроку (ограничение состава / целевое условие), бой не меняет, видно при заходе в размещение. Осталось: список квестов, баланс наград/провалов, кооп-механизм принятия/реролла | Иначе получим «каждая партия одинакова» при любом объёме контента |
Блок 2 — механики, требующие решения
| Вопрос | Варианты / что решить | Где живёт |
|---|---|---|
| Ориентир сложности | Числовой показатель силы энкаунтера, намеренно не учитывающий сродства и расстановку (Legion TD 2, Recommended Value): подсказка новичку и скилл-разрыв для ветерана в одной цифре | Не обсуждалось |
| РЕШЕНО 2026-07-27/2: страховка = инструменты контроля (рероллы, широкий выбор) + гарантированная явная прогрессия «Сосудов», а НЕ пити-таймеры и скрытые веса. Осталось: нужны ли анти-дубли витрины сверх этого | difficulty-skill §4.5, vessel-progression | |
| «Шёпот толпы» | Разбор поражения репликами зрителей (юмор + лор). Источник реплик, доля «неверных» подсказок, поведение в коопе | Meta - Open Forks |
| ЗАКРЫТА 2026-07-29 (три захода): «Изморозь» (кап 20, тир 2, цена очистки 5/10/20); ступени 1–9 / 10–19 / 20 открывают эффекты, а сила растёт непрерывно со стаками (замедление 20→60%, рут 0.5→1.5 сек); Раскол только по верхней ступени и прерывает оглушение; там же +20% к дробящему; огонь ускоряет сход ×2; AP скейлит число стаков за удар. Осталось: замер сложения периодического рута от двух источников льда и требование к боевому тултипу — показывать итоговое значение, а не шаг | Effect - Frost | |
| ЗАКРЫТА 2026-07-29: ось — чужой ресурс (немота тира 2, разгон регена без потолка, отнятие ресурса как ситуативный по замыслу инструмент, пробитие магзащиты стаками). Осталось требование к UI: наличие ресурса у цели должно быть видно до боя, иначе дрейн читается как поломка | Combat - Effects §Аркана |
Блок 2.5 — темы к обсуждению (накидано Максом 2026-07-15)
Сырой бэклог тем. Каждую предстоит проработать отдельно; часть зависит от развилки в Блоке 0.
| Тема | Суть | Связи / вопросы |
|---|---|---|
| Последствия (Закалка/травмы) | Числа, ступени, обратимость, ощущение. Рамка задана (Журнал 29): строго механика в границах забега, снятие за деньги ИЛИ через N событий, в конце испаряются, героями не запоминаются | Дизайн есть в injuries-mettle; остался баланс |
РАЗОБРАНО 2026-07-29: Капитан = пул своих фич (одна стартовая из трёх, дальше по одной в начале каждого акта — реф благословения Neow в STS) + Экипаж (стартовый набор). Прокачка внутри забега, платится вехами; мета даёт только ширину пула. Отобрано восемнадцать фич по четырём архетипам (Торговец · Маг · Мистик · Полководец), десять идей отклонено с причинами. Канон — Vision - Guildmaster & Captain. Термины приняты 2026-07-29: ось умений — Command/«Приказ» (нумерованный, «Приказ #3 — Покупка Дирижабля»), ось состава — Crew/«Экипаж»; персона остаётся Captain, различают Капитанов прозвища (Captain <Имя>, the <Epithet>) | Осталось: сколько Капитанов на старте и какие архетипы, размер пула у каждого (скрайб: 6–8, чтобы выбор жил до последнего акта), сколько экипажей на Капитана, сами прозвища | |
| Треш-мементо | Сколько на старте, ограничения, как выдаются | Связь с испытаниями (треш = дешёвый способ закрыть условие) и с дефицитом |
| Наёмники | До 6 наёмников, путешествуют с гильдией, ещё более слабые треш-болванки. Для массовки, пафоса, синергий, нарратива. Опциональны, зарыты в мету. Уточнение 2026-07-29 (Макс): наёмники нужны и для «закрытия небольших зон» в отряде — то есть как затычки ролей, не только массовка | Риск: массовка размывает принцип «дефицит 4 «Сосудов» = глубина». Рекомендация скрайба: брать их не как свободную массу, а как часть Экипажа Капитана (Vision - Guildmaster & Captain) — тогда их число и состав задаёт дизайн старта, а не кошелёк игрока, и дефицит остаётся |
| РАЗНЕСЕНО 2026-07-29: пять набросков стали каталогом Экипажей в Vision - Guildmaster & Captain; термин «Командир» решено не вводить — это Капитаны. Экипажам ещё не назначены Приказы; набросок «Капитан (баффер-воин)» переименован в «Ветеран», чтобы не занимать канон-термин | см. строку «Капитан: как влияет» выше | |
| Построения (формации) | Расставил юнитов по правилам → небольшие плюшки. Расстановка становится менее удобной, но даёт нарративный кайф «мы — гильдия!» + усиление статов / крутые изменения AI | Перекликается с формациями из ресерча (Dwarves: пассивки за состав+позицию). Ложится на подпорки расстановки (Блок 2). Тонкий баланс: плюшка не должна ломать оптимальную расстановку |
| Движущаяся мета | «Отсчёт времени» гильдии: со временем меняются модификаторы забегов, мета. Опционально, за участие — небольшие бонусы. Форма от Макса (2026-07-29): модификаторы забега как в Age of Wonders, меняющие условия боя кардинально (больше ближников, больше целителей, всегда дождь) + баны как та же движущаяся мета; включённый модификатор даёт +30% меты, но выключить его до конца забега нельзя | Направление принято решениями 2026-07-15/72 (мета) и /18 (баны) — переоткрывать не надо, вопрос только «когда и в какой форме». Форма опознана: это Pact of Punishment из Hades — opt-in модификаторы с ранками, растящие награду; признанная лучшая практика против фиксированных пресетов сложности. Две оговорки скрайба: (1) «включил — не выключить» обязательно, иначе эксплойт «включаю на мусорных боях, вырубаю перед боссом»; (2) это не четвёртая ось сложности — модификаторы должны сесть на три уже существующие (Vision - Difficulty & Skill). Первый конкретный модификатор — The Lovers (Макс, 2026-07-29): в бой выходят двое вместо четырёх, но заметно усиленные. Переехал сюда из фич командира: это правило всего забега, а не свойство Капитана. Оговорка: он обнуляет половину позиционики (слоты контакта, фланги, удержание линии) и делает половину ростера ненужной — то есть годится как opt-in модификатор с повышенной наградой, но не как что-то, во что можно вкачаться посреди акта |
| Окно «Отряд» (2026-07-29) | Отдельный экран отряда; инвентарь переименовать — в нём стало слишком много всего | UI-задача, но с дизайн-следствием: сейчас «инвентарь» держит и предметы, и Знамёна, и мементо. Стыкуется с реворком UI-архитектуры |
| Простая диалоговая система (2026-07-29) | Текст с репликами персонажей и выбором. Нужна не «вообще», а конкретно: боссам (три сценария) и текстовым ивентам | У Разбойничьего Гнезда диалог влияет на исход (минута молчания → враг отступает, награда ниже) — значит система нужна не декоративная, а с таймером и последствиями. Плюс кооп-вопрос: чьё решение в диалоге считается |
| Названия энкаунтеров и голос разработчика (2026-07-29) | У каждого боя, даже обычного, есть название. Сначала показывается настоящим идентификатором (ENC_0x1A4 / enc.goblin.03), после 5 побед над этим энкаунтером открывается «название от разработчика». В демо — после 1 победы, с комментарием Макса «в полной версии открывается не так быстро, но пусть вы увидите, что тут будет». Нераскрытое имя — это строка на «системно-нарративном языке»: отдельная локаль наравне с EN и RU, «наш личный язык» (Макс). Направление и ключевые правила приняты, детали подачи — потом | Не новая система: это «Из мастерской» (ниже, 2026-07-27/24), перенесённая с карточек на бои — тот же автор, тот же механизм открытия. Принято: идентификатор вместо глифов-мусора · 5 побед — это долго намеренно, не для первого-второго забега · голос разработчика — личность, которой разрешено быть разной (саркастичной о действиях игрока, творящей о мире), при узнаваемом флёре. Системный язык как локаль снимает проблему «missing key»: sys-значение настоящее, проверка полноты ключей работает как обычно. proposed скрайба: код локали x-sys (приватная зона BCP 47) · включаемость целиком как открываемая тайна · шов в UI — Unity Localization берёт активную локаль, поэтому одна строка на sys требует явного запроса таблицы · открытое имя пусть намекает на состав («Трое и костёр»), тогда это награда знанием, а не косметика, и с Приказом «Картограф» не пересекается. Попадает в мета-нарратив: путь «сначала код, потом автор за кодом» — та же тема, что Система и консоль |
| Счётчики поведения игрока для голоса разработчика (2026-07-29) | Чтобы автор мог подколоть за сейвскам, игра должна его заметить. Сейвскам здесь — это: игрок выходит из боя посреди него, увидев проигрыш, откатывается и пробует снова (уточнение Макса). Значит счётчик — «незавершённый бой + повторный вход в тот же узел» | Шов кладём заранее. Сейв версионируется через [SaveSchema], и если счётчиков не заложить сейчас, потом это миграция схемы ради шутки. ТЗ — сейв-система |
| Компендиум контента | Внутриигровой кодекс всего контента: мементо, предметы, эффекты, враги, трейты — их комбинации, условия открытия, лор. Что показываем, что скрыто до открытия, как связано с ачивками/метой. + 2026-07-27/24: у каждой сущности есть закрытая врезка «Из мастерской» (геймдев-кухня), открываемая вехой по ней | Не сейчас, но нужен потом. Связан с мета-прогрессией (открытия) и с летописью/лором. Большой UI + данные. Живёт у игрока (главное меню), не в доме — 2026-07-27/22 |
| Зоны/биомы карты акта | Карта акта делится на цветные зоны-«карманы»: у зоны свой пул врагов (ложится на фракции), уклон наград, визуальный телеграф наперёд и опц. модификатор-твист. Ценность именно нам: питает лоадаут-петлю (готовишь состав против известной угрозы) + даёт кооп-выбор маршрута («идём через зону X или Y?»). Реф: мод Spire Biomes для STS. Никси предлагает (proposed): зона = регион из нескольких узлов, а НЕ свойство одного узла; MVP = 4–5 фракционных зон на готовом материале (тема состава + цвет + уклон наград), богатые «theme park»-зоны с новыми мобами/механиками — поздний инкремент | Зависит от структуры карты акта (длина, развилки — не определена, см. ниже «Карта и забег» → B1). Не путать с наземными зонами эффектов В БОЮ (Блок 3, «кросс-юнитные комбо + зоны» — то боевая механика). Стыкуется с типами узлов-ивентов (Блок 2.6) и уклоном наград. Реф: Spire Biomes (Steam Workshop) |
Блок 2.55 — боссы: чего они требуют от движка
Три босса фракций оформлены 2026-07-29 (Enemies - Bosses). Карточки — теория, и это не «нужен ассет»: они держатся на механиках, которых нет. Сводный реестр, чтобы цена была видна одним взглядом:
Каркас Стадий принят 2026-07-29: стадия — отдельный обычный бой, стадии связаны только сюжетно (формулировка Макса). Ядро симуляции не трогается; нужен лишь контейнер узла — последовательность боёв, текст между ними, условие выбора следующего. Канон — Enemies - Bosses. Реестр ниже пересчитан по коду, а не по догадке:
| Шов | Кому нужен | Состояние |
|---|---|---|
| всем трём | шов внутри боя вычеркнут 2026-07-29: многостадийность живёт над боем. Остаётся оркестрация узла, которая нужна карте и так | |
| Таймер фазы расстановки | всем трём | принят 2026-07-29, реализации нет. Только на узлах со стадиями; истечение = входим с унаследованной расстановкой. Требует кооп-правила «чей клик последний» |
| Зона размещения с квотой («по два „Сосуда“ в каждой») | Гоблинская Банда, стадия 1 | дешёвый, решение Макса 2026-07-29: зоны есть, нужны квота и валидация до боя. Переиспользуется уникальными построениями и Приказом «Авангард» |
| Зона размещения кольцом | Гоблинская Банда, стадия 2 | вердикт Макса: нужно настоящее кольцо. Тех-долг формы зон берётся сознательно |
не нужна боссам (снято 2026-07-29): големы — обычные враги команды босса. Справочно, если понадобится позже: Team — int с MaxTeams = 8, не хватает матрицы враждебности вместо Team != мой, условия победы по цели (CombatSimulation.cs:903) и починки Team == 0 ? left : right (FleeSteering.cs:98) | ||
| Подкрепление посреди боя (враг входит через X сек) | Разбойничье Гнездо | не обсуждалось; враги сейчас все на арене со старта |
| Исход боя как данные (кто именно погиб → ветка сценария) | Разбойничье Гнездо | не обсуждалось; сейчас исход — «победа/поражение» |
| Профиль команды игрока (главный тип урона, связки) для баффов врага | Дезертировавшая Армия | дешёвый: не боевой шов, а функция от ростера до первого тика. И при этом самый ценный — единственный способ бить по подготовке, а не по бою |
| Дезертировавшая Армия | вычеркнут 2026-07-29: «босс усилился» — это другая запись врага во второй стадии, то есть данные, а не машинерия «бой помнит прошлый бой» | |
| Вывод юнита из боя живым (телепорт Командира) | Дезертировавшая Армия | дешёвый: путь DeathSystem, только без смерти |
| Диалог с таймером (минута молчания меняет исход) | Разбойничье Гнездо | «простая диалоговая система» — идея Макса, дизайна нет |
| Барьеры — Стена | Гоблинская Банда | спроектировано (barriers), заход после позиционики |
| Форма зон размещения кроме прямоугольника (круг) + правило «не ближе X к своим» | Гоблинская Банда | тех-долг формы зон + новая валидация |
| Триггер по порогам HP (неуязвимость на каждой трети) | Дезертировавшая Армия | образец есть: PassiveThresholdPct * MaxHP в BulwarkComponent.cs:103 — компонент по образцу |
| Связка «стадия → атмосфера» (свет, цвет, музыка) | Дезертировавшая Армия | слои есть, дирижёра нет |
Вывод для планирования — ИСПРАВЛЕН 2026-07-29 после сверки с кодом. Прежняя формулировка («дешевле всех Гоблинская Банда, дороже всех Дезертировавшая Армия») была перевёрнута. Реально:
- Гоблинская Банда сильно подешевела после разбора 2026-07-29: разделение отряда решается зонами с квотой, третья сторона не нужна вовсе, кучность наказывается молнией вместо валидации. Осталась кольцевая зона (тех-долг формы) плюс барьеры-Стены в стадии 3.
- Дешевле и ценнее всех Дезертировавшая Армия. Профиль команды считается до тика, вывод юнита живым — существующий путь без смерти, порог HP имеет образец, перенос состояния закрыт каркасом. Осталась только атмосфера, а она полировка.
Боссы всё равно остаются приёмкой нескольких систем, а не контент-заходом — но порядок входа меняется: первой имеет смысл делать Армию, а не Банду.
Блок 2.6 — контент к созданию (не механики, а наполнение)
Задачи на авторинг конкретного контента. Требуют, чтобы соответствующие системы были готовы.
| Что | Объём | Зависит от |
|---|---|---|
| Улучшения мементо | Модель принята (6 = T1×3 + T2×3, 2026-07-17/1), но расписаны только 3 карточки из 21. Нужен контент-заход: по 6 улучшений на мементо, с тестом комбинируемости | Методичка готова (relic-upgrades); это дизайн, не редактура |
| Первые предметы | ~9 спроектировано (items-banners): 3 руны, 2 зелья, Плащ Фей, 3 стата | Дизайн есть (GDD-16); нужны ItemData-ассеты + движковые эффекты (Инвиз/Маскировка, руны-зачарование) |
| СНЯТО 2026-08-21/2 — механика убрана целиком, дизайн четырёх Знамён в Legacy | Вместо них — обычный Party Item: действует весь забег, копится без лимита слотов | |
| Типы ивентов на карте | определить, что дают Тренировка / Турнирное / Риск-ивент | Дизайн узлов (сейчас не определён) |
| Текстовые ивенты | 4-8 собственных | TextEventData + EventEffect готовы; loc-ключи обязательны |
| Одноразовые предметы-«усилители» (2026-07-29) | Новый тип: редкий предмет, используемый один раз за бой | Дизайн-дом — Content - Items & Banners; требует нового скоупа расходуемости и вопроса «кто и когда решает применить», ведь бой автономен |
| Уник-награда за сложный бой (2026-07-29) | Отсылка на гоблин-боблина (уникальный наёмник) или сумка хранения (+2 слота под мементо) — выбор игрока за сложный уникальный файт | Приятная развилка «нарратив против ёмкости»; сумка при этом трогает дефицит (ёмкость коллекции не смягчать — риск Legionbound), так что её размер — балансный вопрос, а не косметика |
| Визуал узлов карты (2026-07-29) | Магазин: 3–6 левитирующих предметов, которые игроки крутят в 3D как карточки, и кручение синхронизировано между игроками. Кемп: костёр с VFX пламени и дыма. Сундук: красивое открытие с эффектами | Дом — Vision - Visual Direction. Кооп-деталь про синхронное кручение — не косметика: это дешёвый со-присутственный момент, а их у нас мало (бой автономен) |
Блок 3 — отложено, но записано (чтобы не потерять)
| Идея | Откуда | Статус |
|---|---|---|
| Manual Action Charges — 1-3 заряда приказа за весь бой, из паузы, видимый счётчик | Hadean Tactics (хвалят, жалоб на душноту нет) | Макс: «звучит круто, но пока нет». Единственная форма микро, пережившая разбор. Вернуться, если бой окажется слишком пассивным |
| Обучение AI по реплею — плюс/минус на моменте боя, поведение корректируется дальше | Teamfight Manager 2 | Влияние на бой без слайдеров. Кандидат для массового игрока (AI-профили — для энтузиастов) |
| Роли игроков (Тактик / Поддержка / Разведчик) | Ранний набросок | Нужны ли вообще (Meta - Open Forks) |
| Эффекты: кросс-юнитные комбо + зоны | effects §На будущее | Ядро эффектов и сродства закрыты (Журнал 32–53). Отложено: комбо между разными юнитами/чужими статусами (проводимость чужого льда, детонация чужих поджогов) и наземные зоны (форма/стойкость/комбо TBD). Числа/капы/длительности — баланс Фазы 4+ |
| Подпорки позиционирования — точки интереса на арене, разброс скоростей и AoE как рычаг расстановки | Блок 2 (2026-07-15) | Приняты в план, отложены надолго (Журнал №71). Иначе свободная расстановка рискует выродиться в «танк вперёд» |
| Движущаяся мета — межактовые сдвиги правил (школы/сродства/глобальные моды) | Teamfight Manager; Блок 2 | Принята в план, отложена надолго (Журнал №72). Лекарство от «мета устаканилась» |
| Воскрешение-ритуал при перезапуске — вместо «нажал retry» простой кооп-QTE (кликер за X сек, всей командой), чтобы поражение ощущалось как командное усилие «поднять павших», а не клик кнопки | Идея Макса (2026-07-15); завязано на пул перезапусков (Журнал №65) | Кооп-момент (у нас их мало — бой автономен). Оговорки перед реализацией: (1) не на каждый ретрай — иначе рутина/налог (частая отладка билда), привязать к значимым воскрешениям / сделать коротким+скипаемым; (2) церемония, не гейт исхода — кликер всегда воскрешает (если пул есть), не «успел/не успел», иначе моторный скилл решает исход вопреки доктрине «скилл в подготовке, не реакции» (difficulty-skill); (3) соло-вариант или скип. Кооп → не раньше Фазы 6 |
Блок 4 — риски, которые надо не допустить
| Риск | Откуда | Как проявится у нас |
|---|---|---|
| AI тупит на глазах | GGM (главная жалоба ветеранов), TFM2 | Ошибка AI = кража победы, а не своя ошибка. Чинить нечем. Приоритет качества AI выше баланса |
| Расстановка не читается | Time Walker: «лучник всё равно прёт в центр» | Весь слой подготовки обесценивается за один бой |
| Автопилот на входе | Dwarves: первый час непроигрываем | Ставки должны быть с первого боя |
| OP-комбо обесценивают бой | Hadean: связка убивает босса за 2 хода | Расстановка и профили перестают значить что-либо |
| Мусор в пуле | The Last Flame | Мёртвое мементо отравляет драфт 1-из-3 |
Инвентаризация: все открытые вопросы по документации (2026-07-15)
Сведено из всей GDD/tech-документации и handoff. Блоки 1-4 выше — приоритетное; ниже — полный список, чтобы ничего не потерять. Пункты не дублируют блоки 1-4, где пересекаются — ссылаюсь.
Бой
Число ретраев зашито константой (=2)— решено 2026-07-15/65: пул 2 перезапуска на АКТ, не на бой; поражение при пустом пуле = конец забега. Реализационный долг (в коде счётчик на каждый бой) — тех-часть. Ничья = поражение остаётся под ревью.- Криты / уровни юнитов в бою — отложено; криты, если будут, детерминированные. GDD-8 §На будущее.
- Анти-хил (grievous wounds) — множитель −% к лечению как каунтер хил-комбо. Дизайн есть (входит в идентичность Яда, реш. №39; есть и как чистый дебафф — effects); ждёт реализации в движке. GDD-8/15.
Реген ресурса по времени и способы восстановления— закрыто 2026-07-27 (вечер) и добито 2026-07-28 (вечер, 2): гейт каста один — ресурсный, кулдаун у ресурсных активок нулевой, запас маны равен стоимости активки (полная шкала = ровно один каст), ману тратит ровно одна способность кита. Таблица темпа по всему ростеру — Combat - Stats §Восстановление ресурса.Полный список— закрыт (вердикт Макса 2026-07-30). Владельцев два и оба живые: enumEffectTagEffectTag.cs(докстринг на каждый тег — кто ставит и кто читает) и вики-справочник состояний Effects - State Tags. Новый тег добавляется вместе с носителем, а «финализировать список» заранее было требованием без адресата.Мульти-резолв контакта авто-атаки (— пункт был написан про поле, которого в коде нет. Механизм закрыт и работает иначе (уточнение Макса 2026-07-30): кадр контакта — это маркер-как-данные,_attackHitFrames)AnimationEventсfunctionName == "Marker", который читается в рантайме (ClipMarkers), а не колбэчит:Animator.fireEvents = false, тайминг остаётся целиком в симуляции (AttackTiming, замах отUnitVisual.AttackHitFrame). Единственное, что действительно не сделано — несколько контактов за один свинг:ClipMarkers.FirstMarkerTimeберёт первый маркер, остальные игнорирует. Это требование, а не гипотеза (Макс, 2026-07-30): «может быть несколько ударов в одной анимации, и это надо учитывать». Допущение «свинг = один контакт» зашито в пяти звеньях пайплайна и тянет за собой правку DPS-коридоров — реестр звеньев и четыре развилки к решению: Тех: Техдолг §3.9.
Мементо и юниты
Берсерк (The Draugr)— закрыт 2026-07-29: слот наполнен «Морозным драугром» из заметок Макса (брузер-контроль на холоде, дробящий двуручник, канал-добивание). Архетип «Берсерк» из ростера уходит — без Ярости он был просто брузером с большим уроном. Канон — The Draugr (Frostbound).- Прилив (The Tide) — луч по линии + пометка Макса «сплит на двух персонажей».
handoff. - Бард (The Cadence) — 2 активки при правиле «Обычная = 1 активка» + юнит без автоатаки; конфликт.
handoff. - Долг Ф1: 3 мементо отклоняются от карточек ГДД (споры не лечат, воспламенение без стаков, поджог плоский, шипы без роста радиуса) — привести к ГДД.
handoff. - Судьбы «Сосудов» — список, условия открытия, баланс (Фаза 4+). GDD-5.
- Взаимодействие Судьбы «Нестабильный» и Проклятых мементо с травмами (не складывать двойным счётом). GDD-9.
- Травмы/Закалка — числа, пороги, ступени, обратимость, детерминированные vs RNG триггеры, визуализация. GDD-9.
- Божественные мементо — источник (ивенты) не построен,
RunEffectsпусто. GDD-5, TECH-13. - Стартовые наборы и уникальные механики Капитанов — контент-дизайн. guildmaster.
Мета-прогрессия и экономика
Рарность: split KitPower + DropRarity— сверено с HEAD 2026-07-30: split в коде есть.ContentEnums.csдержит обе оси ортогонально (KitPower= Common/Cursed/Divine,DropRarity= Trash/Common/Unique с ramp 10/20/100% за бой/элиту/босса), цены поKitPower— вGameConfig. Ramp наград ничем не заблокирован; противоречие №4 в journal-adr снято.- Точные ×2/×3 у элиты и босса — TBD. GDD-12.
- Кооп-механизм принятия/реролла/отклонения испытания (голосование? хост?) — TBD. GDD-12.
- Кривая копий на уровень (3/6/9 vs мягче) и источник/частота копий — TBD. GDD-12.
- Тюнинг-риск испытаний — полоса «настоящий выбор, не lose-lose» на всех возвышениях. GDD-12.
- Механика модификаторов забега (Ascension/pact) —
RunModifierDataчерновик. TECH-13. GoldBountyу врагов — черновое поле, не проставлено. TECH-13.
Карта и забег
Когда игрок узнаёт испытание (A / B)— решено 2026-07-15/68: вариант B, раскрывается при заходе в стадию размещения.Скрытие состава врага — перепроверить— решено 2026-07-15/22 + /66: на узле только сложность, Вид в тултипе, состав скрыт. Контр-аргумент Legion TD 2 остаётся записанным в open-forks §D1, но развилка закрыта.B1: генерация карты из сида vs пролог-template— закрыто (вердикт Макса 2026-07-30): генерация из сида. Код развилку уже прошёл —MapGenerator.Generate(IRngService, MapGenConfig)строит граф акта детерминированно, ширина колонок и типы узлов катятся из того жеIRngService. Пролог по шаблону не вводим. Пункт числился блокером карты акта, пока карта работала.- Содержание узлов Тренировка / Турнирное / Риск-ивент — контент-дизайн. TECH-7, GDD-7.
- Точный повтор боя с тем же сидом (Shift+R) — обсуждается. GDD-11, TECH-11.
Магазин во второй половине акта— решено 2026-07-26/4: магазин живёт на этажах 2–6 и 9–12, обязательным узлом не назначается; сундук — только якорь на 8 и «?». Таблица спавна — events-minigames §Что где спавнится.
Кооп
Кластер заведён 2026-07-30: Coop - Overview и четыре дока при нём (presence, arbiters, Coop - Minigames & Roles, sync-model). Развилки коопа перечислены там же в §Открытые развилки кластера и здесь не дублируются.
- Роли игроков (Тактик/Поддержка/Разведчик) — нужны ли вообще; «Арканист» снят вместе с заклинаниями ГД. Развилка переехала в Coop - Minigames & Roles §Роли и семи-кооп (2026-07-30), там же вердикт скрайба «жёсткие роли — нет» и альтернатива (Обеты Гильдмастера).
Поведение ГД при выходе игрока-владельца— вопрос отпал: конструкт из вырезанных заклинаний Гильдмастера (управление ГД передавалось одному игроку). Ввода в бою нет, передавать нечего — см. legacy.- Mid-battle реконнект — снапшот состояния vs переигровка лога команд. TECH-7 §10. Дизайн-требование к нему уже есть: отстающий догоняет, а не тормозит группу (sync-model §Класс 1).
Контент / данные
Нейминг Party-предметов («Знамя»? «Талисман»?)— пересмотрено 2026-08-21/2: имяParty Item, отдельного слова у скоупа больше нет (прежнее решение «Знамя» от 2026-07-15 снято вместе с механикой).- Капабилити-как-эффект — рефактор при первом не-юнитовом источнике. TECH-13.
Формат id в старых доках (— миграция выполнена (сверено 2026-07-30): во всём vault старый формат остался ровно в одном месте — в этой самой строке.relic_flame_sword→relic.flame_sword)Структура— закрыто ТЗ сейвов (Тех: Сейв-система): иерархия профиль → гильдия → забег, конверт сRunStateв деталях (поля, версионирование сейва)schemaVersion, две шкалы версий,SlotOwner→LastOwnerKeyкак сессионная величина.- Контент-теги мементо vs
EffectTag— разграничить при авторинге. GDD-0.3. Миграция карточек врагов на Вид/Подвид— выполнено 2026-07-26 (журнал 2026-07-24 §Оси врага): поля, тела карточек, доки видов и папкаfactions/→species/.VfxCatalog— по образцуAudioCatalog, когда дойдём до VFX. TECH-13.
Прочее (AI, UI, скоуп)
- AI-движок: канон-док не написан — большой сырой пласт в черновике (Score min/max, заготовки, шаринг, Classic/Extra, компендиум, сравнение до 4 профилей, test-arena). GDD-0.3.
- AI-пресеты архетипов (D2) — один пресет на Мементо, нужны 2-3; дизайн Макса.
handoff. Экраны наград/ивентов собраны кодом, не UXML— переезд выполнен (сверено по коду 2026-07-30):RewardScreen.uxml,EventScreen.uxml,ShopScreen.uxml,OutcomeScreen.uxmlлежат вAssets/_Project/UI/Screens/. Пункт числил нарушением HARD-правила то, чего уже нет.- Процедурный лор — открытые вопросы: размер пула, флавор vs механика, портреты, имена «Сосудов». GDD-10.
- UI-ребиндинг и геймпад — не заложены. GDD-11, TECH-11.
- Форма зон расстановки (пока прямоугольники) и анти-оверлап при drop. TECH-10.
- Подсветка Extended-зон при drag. TECH-10.
- Скоуп фестиваля — подтвердить компактный срез vs полный акт. TECH impl-01.
UI-технология (всё на UITK vs гибрид), дизайн-система— закрыто (вердикт Макса 2026-07-30): гибрид. Экраны на UI Toolkit с MVVM, боевой HUD — uGUI (Image.Filledи родня); дизайн-система токенов существует и обязательна (Тех: Правила кода, скиллuitk). Развилка была закрыта практикой задолго до этой строки. Открытым остаётся только Figma-пайплайн — нужен ли он вообще при готовой системе токенов.- Steam Workshop / UGC — заложено швами, не реализовано. GDD-0.3, TECH-13.
2026-07-15 — Таймер боя и правило затягивания
Бой ведёт счётчик прошедшего времени (реализовано). Правило анти-затягивания решено, но отложено: 90 сек нормального темпа → ×2 ускорение → ещё +60 сек → ничья (для игроков = поражение). Числа — ориентир. Причина: сначала игровая петля и UI, само правило — отдельным заходом. Детали в combat-system «Таймер боя».
Долги кода, связанные с дизайном
— СНЯТА 2026-07-26. Таблицы нет, множителя вAffinityTable— снятьDamagePipelineнет, сродство на число урона не влияет. Взамен стоит guard-тестAffinity_NeverScalesDamage_ByCreatureType, который валится, если матрица вернётся. Попутно снят мёртвый проксиRuntimeUnit.CreatureType(жил только ради таблицы;UnitData.CreatureType— контентное поле — остался).— СНЯТО 2026-07-26 вместе со свойствомGuildmasterData._spellsещё в кодеSpells. Поле не читал никто, ассетов Гильдмастеров в проекте нет.Локализация текст-ивентов прямыми строками— уже закрыто в коде:TextEventDataотдаётTitleKey/BodyKeyпо конвенции{id}.title/{id}.body(сверено 2026-07-26).«Команда игроков» как константа— проверено и закрыто 2026-07-26. Аудио было чистым (AudioPresenterспрашивалILocalPlayer.Team), а вотCombatPresenterдержал собственное сериализованное поле_localViewerTeam— второго владельца того же факта. Поле снято, презентер получаетILocalPlayerчерез DI; «свой/чужой» решается одним методомIsAllyOfViewer, от него же теперь идут подпись болванчика и его тинт (раньше сравнивали с константой 0).
Важно: handoff датирован раньше нескольких коммитов. Пункты про рарность, хвост E3 (
AlliesInRadius) и teams-not-player-won, возможно, уже закрыты в git — сверять с актуальным HEAD, не брать из handoff вслепую.
Спроектировано, но не реализовано в коде (крупное)
Петля забега: карта акта (B1), главное меню (C1), магазин, пролог (B2), экран исхода боя, ramp редкости. Бой/контент: 6 мементо + уник, 9 из 13 врагов, AI-пресеты, ~8 предметов + баннеры. Механики: позиционика (слоты, фланги, агро танка), барьеры — Стена и Купол (дизайн + план, заход после позиционики), уникальные цели боя + союзные NPC, многофазовые бои, Судьбы, травмы/закалка, досье, мини-игры, испытания. Инфра: ES3 + Steam Cloud, арена через Addressables, вся сеть/кооп (Фаза 6).