Initiative Theme

Обсуждение тактической арены RTA
Текущая турнирная версия: RTA 2.5.1
Ответить
Аватара пользователя
Imladris
Fairy Dragon
Ведущий Heroes V — Tournaments Host
Ведущий Heroes V — Tournaments Host
Сообщения: 817
Зарегистрирован: 30 май 2016, 20:49
Откуда: Тула

24 авг 2021, 18:22Сообщение

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

В этой теме мы поговорим о прикладной стороне инициативы, АТБ-шкалы и в особенности разберемся, как взаимодействовать с положением юнита на АТБ-шкале, функцией, просмотр которой доступен игрокам Random Tactical Arena, начиная с версии RTA 2.2.0.
Для игроков в оригинал или другие модификаций будут полезны большинство разделов для более глубокого понимания механики.
Раздел 1. Инициатива - цифра на экране

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

Пятые Герои разрушили систему "ходов" (turn) в тактической фазе. На смену четким и логичным фазам боев, в каждой из которых юнит ходил один раз, конкретно до или после других юнитов на поле боя, пришла недискретная на первый взгляд система с АТБ-шкалой.

Во многом именно это решение разработчиков на мой взгляд превратило "очередную" часть героев в самую тактически насыщенную. Можно много спорить о скучности и однообразности, медленности геймплея Пятерки на полных картах, но нельзя отрицать, что введение шкалы АТБ - качественный скачок тактической фазы. Не зря только в Пятерке Арены пользуются такой популярностью по отношению к оригиналу.

Что ж, мы получили систему, ходы в которой плавно текут туда-сюда, казалось бы, и что с того? Формализация.
Дело в том, что отсутствие "ходов" на деле не совсем правда. Нам на экран больше (или еще, см. HMM VI) не выводится назойливая табличка ХОД N, да и если такую табличку ввести, ценности от абсолютного номера хода мы получим весьма мало.
Однако по-прежнему в игре большинство "продолжительных" эффектов накладываются не на количество действий юнита, а на "единицы атб".

Итак, важнейший для нашего разговора термин:

Единица АТБ // Одна АТБ-шкала // Одна АТБ - расстояние, содержащееся между двумя подряд ходами одного и того же юнита с инициативой 10 (100 в RTA 2.0 и далее)

Далее я буду использовать умноженную на 10 инициативу от RHH, чтобы не запутаться.

Спойлер для тех, кто не знает, что это и почему
Инициатива в HoMM V - положительное рациональное число, хотя для игрока оно выводится в виде положительного целого числа.
После применения ускорения (+30% инициативы) на юнита, стартовая инициатива которого равна 11, мы получаем конечную цифру 11х1.3=14.3 инициативы. Игроку на экран выведется число 14, при дальнейших расчетах и оценке мы потеряем 0.3 единицы инициативы, что довольно существенно повлияет на качество наших оценок.
Чтобы исправить данный факт, всю инициативу в игре в RTA 2.0 умножили на 10. Это никак не отразилось на эффектах и порядке ходов, но сделало существенно (на порядок) более точным отображение инициативы на экране.


Почему удобно применять именно такое деление битвы?

Во-первых, банально - десятка удобна для расчетов.

Во-вторых, на поле всегда (кроме исключительных случаев, характерных для модов на героев) присутствует юнит, имеющий инициативу 100, - герой.

Инициатива героя: не выводится на экран, но равна 100. Единственное исключение из этого правила - Ора из Академии Волшебства.
Ора
Инициатива героя увеличивается на 0.05 за каждый уровень героя и к 20-ому уровню становится равной 110.
Вопреки распространенному заблуждению, Ора получает бонус к инициативе, а не положению на атб (что и следует из описания героя). Это значит, что после любого действия она обгонит героя, совершившего такое же действие на ее месте)
После того, как мы определились с тем, что такое единица атб, мы готовы к тому, чтобы детально рассмотреть движение юнитов по шкале. Следующие данные написаны для игроков, поэтому затрагивают только важные рядовые и несколько углубленные моменты, исключая, к примеру, ситуации, при которых окончание заклинания "Ускорение" перемещает юнита вперед по АТБ-шкале. Эти тонкости механики сейчас нам не интересны.
Раздел 2. Инициатива - скорость перемещения по шкале


Единицу атб проще всего представить себе как большой стадион для бега.
Стадион.jpg
Стадион.jpg (103.83 КБ) 547 просмотров
Точка "старта" и точка "финиша" совпадают. Все юниты бегают по кругу одну и ту же дистанцию, равную 1 атб.
Вы всегда можете заменять единицу атб на любую степень десятки, которая удобна вам для вычислений, заменять ее на "тысячу метров".

Факт остается фактом. Бегут все - по кругу, начиная и заканчивая в одной точке.

Для удобства будем называть "старт" - 0 АТБ (сокращение от "положение в 0.00 на АТБ-шкале)
"финиш" - 1 АТБ (сокращение от "положение в 1.00 на АТБ-шкале), тогда
положение юнита на АТБ-шкале - расстояние, которое отделяет существо от точки 0 на АТБ-шкале. Заключено в интервале [0;1], кроме исключительных ситуаций, о которых мы возможно поговорим в более углубленном разделе.
стартовая АТБ
Как только бой начался, юниты располагаются не у самого "старта", а случайным образом растасованы по небольшому участку дистанции. В оригинальной игре юнит стартует свой первый "круг" из положения, принадлежащего интервалу [0; 0.25] АТБ, в RTA 2.0 и дальше [0;0.15]
Небольшое заскриптованное изменение АТБ в самом начале боя - переведение юнитов с "расширенного" разброса в "узкий", рташный, этого не надо бояться.
Наш забег - игра нечестная, в которой не все равны, а некоторым еще помогают с помощью магии!
Ход юнита - момент, в который существо достигает финиша и оказывается в положении 1.00 на АТБ-шкале, без исключений.

Положение юнитов на АТБ изменяется каждый раз, когда существо заканчивает ход. В случайный момент времени в случайном бою юниты могут расположиться на шкале вот так:
Скрин-АТБ.png
Скрин-АТБ.png (22.96 КБ) 545 просмотров
Для простоты дальнейших действий переведем действие на стадион, где под рев трибун продолжим постигать игру:
Бег по кругу.png
Бег по кругу.png (943.41 КБ) 546 просмотров
Вот большинстве случаев вот в таком виде картинка представала для всех игроков, пока нельзя было посмотреть точное положение юнита на шкале. Всегда можно было что-то оценить, а героев, например, точно посчитать, однако сложные, не рядовые положения всегда были загадкой, и действовать приходилось исходя из оценок, а не расчетов.
Как мы видим, Паладин лидирует в гонке и, если не случится ничего страшного, придет к "финишу" и получит право хода первым. За ним ходить будет Инквизитор, а затем - Вармонгер.
Для игроков версии 2.2.0 и позже картинка обрастает новыми данными
Положение на дорожке + скорость.png
Положение на дорожке + скорость.png (929.54 КБ) 541 просмотр
(без фона указано положение юнита на АТБ, на фоне - его инициатива)
Линиями разных цветов я отметил путь, который необходимо пройти юниту до финиша. Он не называется как-то кратко и общепризнанно, но именно с помощью него мы выполняем дальнейшие расчеты.

Обратим внимание на Инквизитора.

За время, прошедшее с его прошлого хода, Инк прошел аж 0.43 атб, почти половину и уже готов вырваться на финишную прямую.
Как не сложно догадаться
До следующего хода юнита осталось 1 - (положение юнита на атб) единиц атб

Применяя формулу к Инквизитора, до его следующего хода осталось пройти:
1 - 0.43 = 0.57 АТБ
Расстояние до финиша пусть и легко переходит в расстояние до старта - положение на атб - мы буквально смотрим "с другой стороны", но оно обычно не используется в рядовых разговорах и применяется лишь для расчетов, так как принято мерять положение от нуля.

Ровно здесь придется вернуться к самому началу и заметить одну огромную зияющую дыру во всем полотне текста. То, что мы упустили, о чем умолчали и что перепрыгнули, чтобы вернуться позже. Определив все смежные термины, мы оставили без внимания само понятие "инициатива". Вот как раз сейчас пора устранить этот пробел.

Инициатива - скорость, с которой юнит перемещается по АТБ-шкале.

Теперь, когда мы знаем, где найти расстояние и откуда посмотреть скорость, школьная математика подсказывает нам, что найти время - не составляет никакого труда.

Время, необходимое юниту до совершения своего хода = (1-положение на атб)/инициативу

Для тренировки определим время, которое необходимо каждому юниту на картинке, чтобы получить право хода
1. Паладин: (1-0.87)/110 = 0.001181
2. Инквизитор: (1-0.43)/100= 0.0057
3. Вармонгер: (1-0.15)/80 = 0.0106
Мы овладели базовым навыком - научились считать время до хода юнита.
Определяя порядок ходов чего угодно, мы смотрим только на время.

В данном примере юниты, имеющие большее положение на атб (меньший числитель) имели большую инициативу (больший знаменатель), что гарантирует нам тот же порядок на шкале, как и на стадионе. Но так будет не всегда.
Попробуем воспроизвести порядок юнитов на атб, имея их положение и инициативу
Фурия: 0.5 атб, 140 ини
Ассасин: 0.7 атб, 110 ини
Минотавр: 0.75 атб, 80 ини

Юниты на АТБ-шкале (той, что внизу экране) располагаются по времени, оставшемуся до хода.
считаем.

Фурия: (1-0.5)/140 = 0.00357
Ассасин: (1-0.7)/110 = 0.00272
Минотавр: (1-0.75)/80 = 0.0031

Значит на АТБ-шкале "левее всех" будет находиться ассасин, затем минотавр и потом фурия
В принципе, когда нам уже известно положение юнитов на шкале, дальнейшие вычисления не составляют никакого труда и даже бесполезны. Наша задача не оценить текущую ситуацию, а суметь спрогнозировать, как АТБ будет выглядеть после каких-то действий.

АТБ-шкала - совершенно не статичная вещь, которая изменяется с каждым действием игрока. Огромное количество различных эффектов влияют на то, в каком положении окажется существо, как быстро оно получит ход (еще говорят: заполнит АТБ).

Все эти эффекты можно разделить на две группы, принципиально по-разному влияющие на порядок ходов:

1. Ускорители

2. Толкатели
Раздел 3. Чтобы узнать, как будет выглядеть АТБ, нужно каждый день...
Большое количество эффектов в бою изменяют порядок хода юнитов, приближая ход одних существ и отдаляя наступление хода других.
Как мы уже выяснили ранее, время наступления хода зависит только от двух параметров: положения на атб и инициативы.
В соответствии с этим все эффекты, меняющие порядок ходов, на самом деле влияют на один из этих параметров. Никаким другим способам взаимодействия просто неоткуда взяться.
Рассмотрим по порядку каждый из двух типов эффектов, научимся его считать и предсказывать
Раздел 3.1. Ускорители
Будем называть ускорителями любой эффект, положительно или негативно влияющий на инициативу отряда.

Например:
Ускорение
Молитва
Аура вожака
специализация Орнеллы
специализация Оры
Замедление
Крик баньши
Специализация Раилага
(формально последние эффекты являются "замедлителями", но работают точно так же как ускорители и потому в отдельную категорию не выделены и представляют собой лишь ускоритель с обратным знаком)

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

Это важная мысль, которая не сразу укладывается в голове игрока: ускорители действуют отложенно, они раскрываются с течением времени. Поэтому после применения ускорения, например, на фурию, которая уже находится в положении 0.85, вы получили меньший бонус, чем если бы положили на ассасина, который сейчас в 0.2.
Поэтому не стоит ругаться и кричать, если вы применили ускоритель, а юнит не "прыгнул" на АТБ-шкале.
Посчитаем пользу от ускорения на фурию из прошлого примера
Будем считать пользу, приобретенную только на текущую атб, полагая
Инициатива фурии до ускорения: 160
Положение фурии на АТБ: 0.85
Навык магии света: искусный
Ускорение: +30% к инициативе

1 случай) Ускорение на фурию положено не было. Время, которое требуется до хода юнита, составляет (1-0.85)/160 = 0.0009375
2 случай) Ускорение на фурию положили. Время, которое потребуется до хода юнита, составляет (1-0.85)/(160*1.3)=0.15/208=0.00072
Фурия на текущем ходу получила буст к инициативе всего на 15% своего пути, использовала допинг лишь в конце дистанции.
Как ни сложно догадаться, из-за линейности функции, если бы фурия получила ускорение сразу после своего хода (допустим расстояние между ходом ускоряемого и ускорятеля равна нулю), время, которое она сэкономила, было бы равно
(0.0009357-0.00072)/0.15=0.001438
вместо 0.0002157

Помните, чем раньше вы заботитесь о инициативе своего юнита, тем больше пользы он получает!

Итак, как считать время после ускорителя?
1. Посмотрите на текущее положение юнита (только в меню юнита или кликнув по нему правой кнопкой мыши. Данные на самой атб отстают".
2. Вычтите положение из единицы.
3. Посчитайте, какой инициатива станет после применения эффекта.
4. Поделите "расстояние" на "скорость"

Часто вам нужно узнать конкретно "до" или "после" другого юнита походит наш после модификации. Сравниваем время. Чем оно меньше, тем быстрее наступление хода.

Профит, вы великолепны!
Задачка со звездочкой
Обгонит ли кентавр паладина, если
Сейчас ход вожака, который подходит к кентавру. Кентавр находится в положении 0.2
Когда кентавр будет в положении 0.4, вожак умрет
Инициатива кентавра без ауры: 105
Положение паладина: 0.23
Инициатива паладина: 100
Подсказка: "сложное" движение можно разбивать на совокупность "простых".
Для "заморозки" из повелителя холода можно принимать инициативу юнита равной нулю на время, указанное в сроках действия эффекта.
Раздел 3.2. Толкатели
Толкатель - любой положительный или негативный эффект, изменяющий конкретно положение юнита на АТБ
Например:
Подгонка вожака
Воодушевление
Подгонка героя орка
Призыв осиного роя
Пугалка
Глушка
Повелитель бурь
Оборона
Оборона героя
Ожидание
Отвлечение
Чародейство
искусное ослепление (начиная с версии RTA 2.2 откидывает в 0 по АТБ)
Данные эффекты действуют непосредственно на положение юнита на АТБ-шкале, сокращая или увеличивая расстояние до "финиша", оставляя скорость юнита без изменений.
Посмотрим на практике
20 вожаков подгоняют кентавра. обгонит ли он вражеского стрелка, если.
Положение кентавра: 0.4
Инициатива кентавра: 110
Положение стрелка: 0.5
Инициатива стрелка: 130
1. 20 вожаков подгоняют юнита на 0.20 АТБ (по 1% АТБ за каждого вожака)
2. После подгонки АТБ кентавра становится равным 0.6
3. Время, необходимое кентавру = (1-0.6)/110=0.003636
4. Время, необходимое стрелку = (1-0.5)/130=0.003846
Ответ: да, обгонит
Учитывая, что перк в повелителе молний откидывает юнита на половину накопленного хода по шкале, выясним, какой инициативе нет возможности выбраться из этого "капкана" и походить снова
Герой: инициатива 100
Чародейство: искусное
Инициатива существа: ?
Положение существа на АТБ: 0.5 (для данного примера, для других случаев посчитайте отдельно)
1. Герой, совершающий каст, отправляется в позицию 0.3 на атб
2. С инициативой равной 100, он походит снова через 0.007
3. Юнит, получивший молнию, отправляется в позицию 0.25
4. Чтобы обогнать героя 0.75/x < 0.007
Его инициатива должна быть выше 107.14 ини.

Итак, чтобы посчитать время после воздействия "толкателя"
1. Прибавьте/вычтите из текущего положения на АТБ эффект перка
2. Вычтите из единицы получившееся число
3. Поделите получившееся на инициативу
Раздел 4. Тонкости. глушка, пугалка, отвлечение, отрицательная АТБ
из-за дискретного обновления ини герой после отвлечения находится в отрицательном положении на атб ровно то расстояние, которое заключено между его кастом и ходом следующего юнита
Раздел в разработке.
Глоссарий
1. Единица АТБ // Одна АТБ-шкала // Одна АТБ - расстояние, содержащееся между двумя подряд ходами одного и того же юнита с инициативой 10 (100 в RTA 2.0 и далее)
2. Ход юнита - момент, в который существо достигает финиша и оказывается в положении 1.00 на АТБ-шкале
3. Инициатива - скорость, с которой юнит перемещается по АТБ-шкале.
4. Ускоритель - положительный или негативный эффект, влияющий непосредственно на инициативу юнита
5. Толкатель - любой положительный или негативный эффект, изменяющий конкретно положение юнита на АТБ
Данная тема находится в разработке и будет пополняться новыми данными. Об обновлении поста будет сообщаться дополнительно.
Ave RedHeavenHero
"Имладрис хорошо рассуждает на стриме, мне нравится ход мыслей, весьма недурно для РТА-ника, даже использует вейты и тактическую оборону" (цэ) Nargott

Аватара пользователя
Levis
Archangel
Ведущий Heroes V — Tournaments Host
Ведущий Heroes V — Tournaments Host
Сообщения: 285
Зарегистрирован: 2 дек 2016, 18:52
Откуда: Минск
Контактная информация:

14 сен 2021, 13:14Сообщение

Прочитал пост, очень хорошая работа, автор шарит.
Плюсики не нажимал, букав и так слишком много.
На самом деле и вправду отличная работа, давно надо было кому-нибудь это сделать.
Летос = Левис

Ответить