Статус: Draft


Сырые заметки, альтернативные формулировки и идеи «на будущее». Не являются утверждённым дизайном. Когда идея оформляется — она переезжает в соответствующий канон-документ, а здесь остаётся только ссылка.


Статы боевых юнитов

➡️ Перенесено в канон. Дизайн-описание — 8. Статы (характеристики юнитов); техническая спецификация (30 статов, EN+RU, операции, клампы) — Тех: 11. Стат-система. Сырой список отсюда удалён, чтобы не расходился с каноном.


Судьбы и перки «Сосудов»

➡️ Перенесено в канон5. Реликвии § «Сосуды». Там же примеры Судеб (Элита / Учёный / Нестабильный) и модель перков.


Теги геройских реликвий (для удобства)

маг, физ, урон, постепенный урон, берст урон, выживаемость, исцеление, контроль и т.п.

Для классификации/поиска реликвий в компендиуме и UI. Связано с EffectTag боевой модели, но это контент-теги реликвии, а не теги эффекта — уточнить при авторинге (Фаза 4).


Настройка AI (шаблоны)

⚙️ Это сырой источник для AI-движка Фазы 3 (Filter / Score / Override). Канон-док по AI появится в Фазе 3; пока копим требования здесь.

настраивается конкретная геройская реликвия или заклинание. в бою нельзя. только вне боя. есть 2-3 заготовки от разрабов для каждой геройской реликвии и возможность создать свои заготовки, что должны сохраняться между забегами

геройская реликвия может содержать в себе настройки конкретно для персонажа, а может ещё и для заклинаний (игрок сам выбирает), также экспортнуть можно как всё, только спеллы из профиля и только логика без спеллов и т.д.

можно сохранять настройки для заклинаний в отдельности

в заготовках своих ты можешь выбрать для какого героя (героев) оно должно отображаться в первую очередь — или они являются универсальными.

заготовками можно делиться (как файлами или, если игроки находятся в забеге в лобби — даже вызывать интерфейс в духе “Х игрок передаёт вам 3 реликвии? Добавить? Добавить все / Добавить выбранные / Отказаться”)


Настройка AI: профили и Score

некоторые параметры — абсолютные (он всегда делает), некоторые — Score (например для оценки цели). нужен ai в котором игрок сможет посмотреть Score на каждую цель в бою (ага, на вражеского снайпера 200 скор по моим настройкам). некоторые Score можно сделать абсолютными по желанию игрока.

score можно настраивать минимальный и максимальный для некоторых ситуаций. Например, отступление в зависимости от расстояния врага. Минимум — 100 (т.е. зашёл за Х — сразу 100), максимум — 200 (чтобы перебить какой-то AI например). Должны быть заготовки для score, чтобы игроку не пришлось настраивать всё по цифрам самому.

0. Score действий

что делать? (бить, бежать, кастовать 1 скилл или 2, просто стоять и т.п.)

нельзя перебивать каст автоатаки или заклинания в процессе каста

лучше делать касты сами по себе мгновенными, но если между ними делать паузы — лучше добавить не “время каста” а “время отдыха” после автоатаки, каста и т.п.

1. Отступление при лоу хп

отступление при Х хп (можно настроить — от % или числа) от противников, пока не наберётся Y хп (можно тоже настроить)

2. Фокус цели (отдельно для автоатак и каждого направленного заклинания)

Можно выбрать противника по макс. хп, текущему хп (наибольшее, наименьшее), по дальности, по уровню защиты физ и маг брони, выбрать конкретных юнитов для фокуса, по наличию Х эффекта)

надо мочь настраивать параметры для фокус цели. надо чтобы можно было выбрать конкретный “список таргетов”, выбрать чтобы цели из списка — он к ним или специально подходил, или бил тех, кого видит, либо чтобы мог подойти, если недалеко

“бей ближайшего врага без эффекта заморозки с наименьшей маг бронёй и большим количеством макс хп, но в первую очередь игрока”.

как-то продумать логику так, чтобы игрок смог настраивать то, что хотел, выбирать какие аспекты — самые важные, а какие — более второстепенные.

3. Условия каста заклинаний

например, кастовать умение, чтобы оно задело наибольшее кол-во целей, но минимум 2. кастовать в любом случае, если меньше 10% хп. кастовать умение, если ресурса (маны, например или ярости) — более 50%

или бежать кастовать умение по цели (даже если вне радиуса), если у него меньше 20% хп, или кастовать если меньше 50% хп и он в радиусе только на цели из Х списка.

во многих местах надо мочь чтобы игрок смог выбирать как % так и целочисленное (хп, ресурс и т.д.)

4. Позиционирование

состоит из базовой цели (идти к или даже просто “стоять”) и доп. условий

например, отступление если кто-то подходит из врагов ближе чем на Х. Или даже из союзников

держится всегда с союзником Х в радиусе Y (надо мин. разницу задать чтобы не было “гистерезиса”)

поддержка — автоматически смещается к лоу хп целям и т.п.

это скорее “передвижение”, надо продумать какие режимы передвижения будут

Структура AI: Filter / Score / Override

  • Filter — «Кого вообще можно рассматривать?» (только враги / только живые / в радиусе Х / без эффекта Х / из списка / HP < X)
  • Score — «Кто из допустимых целей лучше?» (чем ближе — лучше; чем ниже HP — лучше; ниже броня — лучше; цель из списка — +Score; босс — +Score)
  • Override — «Что перебивает обычный выбор?» (self HP < 10% → отступать; союзник HP < 15% → хилить; враг HP < 5% и в радиусе → добить; опасный враг ближе Х → отойти; способность задевает 4+ целей → кастовать)

для аое выбираем не цель, а точку применения (оптимизировать, чтобы не перебирать слишком много точек: сначала точки с юнитами, середина между 2 целями, центр кластера и т.д.)

Оптимизация AI

кэшировать списки команд (скомпилировать AI-профиль); логику прогонять раз в ~0.1 сек (10 Гц) — проверка условий для смены текущих состояний/действий.


Уровни AI-настройки (Classic / Extra)

всего 2 мода, зависит от выбранного хостом для игры. ai профили могут быть разного уровня (classic и extra). Экстра-настройки (созданные в экстра) нельзя юзать если игра в классик-моде.

Если выбран для игры экстра-мод, а у игрока симпл-мод — у игрока UI симпл-мода. Нельзя “перепрыгивать” вверх, но уходить вниз — вполне. Игрок может менять свои настройки отображения во время игры (в мп — не выше уровня настройки AI созданной игры).

Когда игрок хочет поменять ai — появляется окошко симпл-мода (только рекоменд. 2-3 профиля от разрабов) на большую часть экрана + небольшая кнопка снизу “творить и созидать” (переводит в классик/экстра-мод). Классик — не столь большая свобода; экстра — большая свобода, но сложный, открывается лишь если хотя бы раз пройти с классик-модом.

надо продумать, что будет доступно в классике, а что — в экстра.


Компендиум

должен быть компендиум со всеми героями, их заклинаниями и т.д. из меню игрок может это отсортировать, найти интересное ему и именно для него начать делать ai-профиль, если захочет.


Повтор боя и сравнение профилей

надо заложить в архитектуру возможность записать бой: прокручивать, ускорять, ставить на паузу, просматривать игровую статистику (урон за бой, дпс, Score на целях для Х заклинания и т.п.).

должна быть возможность проверять эффективность боя при разных профилях (до 4 шт). Например, игрок проиграл, смотрит повтор, хочет понять как сделать профили лучше — настраивает несколько разных профилей (1 — оригинал, 2 — изменить ai мага и менчика, 3 — изменить ai всех, 4 — изменить ai мага по особенному) и “прогоняет” как пройдёт бой с такими разными профилями.

Технически опирается на детерминизм симуляции (лог команд + сид). См. Тех: 7. Флоу забега §6.


Полигон для проверки AI (test-arena)

выбрать противников, карты, доп. условия. сохранять “префаб юнита” (например гоблина с х2 хп или игрового персонажа с такими-то перками/предметами). создавать кастомные битвы для быстрой проверки (арена с заготовленными настройками/противниками, например где у всех 0.1% от макс. хп).

Соберём вместе с test-arena (lite) Фазы 3 — там впервые появляется AI, которое надо отлаживать глазами.


Поддержка Steam Workshop

пользователи могут создавать своих персонажей, выкладывать свои AI-профили, кастомные битвы. См. Тех: 8. Steam Workshop и UGC.


Статистика и баланс

статистика с игры + таблицы для баланса (релики, спеллы; дпс/хил/выживаемость — парсинг для реликов и спеллов). что ещё потребуется — уточнить.


UI и визуал (заметки)

  • UI Toolkit для сложных экранов; uGUI / world-space — для боевого HUD (или всё на UI Toolkit?). Сделать дизайн-систему.
  • Claude designer + Figma для UI Toolkit — возможно ли, норм ли идея?