17.07.2012 10:50
 0 просмотров  43924  45

Руководство по механике турнира на выживание

Автор: demonero


Вступление

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

Так чем же на самом деле является данный турнир? Прежде всего, он проверяет, насколько хорошо игроки могут предугадать действия мобов, хорошо спланировать стратегию, внимательно сыграть на протяжении всей попытки. Опытные игроки используют различные фичи, которые помогают им добиться более высоких результатов. Собственно о них и пойдет речь в данной статье. У каждой фракции есть множество своих особенностей. Поскольку автор не имеет знакомства со всеми фракциями относительно ТНВ, в статье будут рассмотрены несколько основополагающих концепций, применимых для любой фракции.


• Сдвиги


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

Рассмотрим механику сдвига подробнее.

Для начала разберемся в координатной шкале поля битвы (рис 1).



Рис 1 - Координатная шкала поля битвы.

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

Механику сдвига существ можно описать такими правилами:

• При занятии клетки выхода нейтрального существа, оно выходит на самую близкую свободную клетку. Самой близкой клеткой считается та, до которой самое короткое расстояние от изначального места выхода существа. Расстояние до клетки в общем случае рассчитывается по теореме Пифагора:



Где - координаты изначальной точки выхода существа, – координаты предполагаемой точки выхода.

• при наличии нескольких самых близких свободных клеток, выход существа происходит на клетку с наименьшей координатой.

• при наличии нескольких самых близких свободных клеток с наименьшей координатой , выход происходит на клетку с наименьшей координатой.

Рассмотрим механику действия сдвигов на примерах:


• Пример сдвига 1 (рис 2).

Адский пес стоит на месте выхода гоблинов, черт на клетку выше собаки. Как видно- самое короткое расстояние до соседней пустой клетки для гоблинов составляет 1 клетка. Потенциальных клеток выхода 2, они обведены красными кружочками. Выбор идет в пользу клетки с наименьшей координатой Х. Таким образом выбрана самая левая клетка из предполагаемых для выхода. Гоблины вышли на клетку ниже собак.



Рис 2 – Пример сдвига 1.

• Пример сдвига 2 (рис 3). Здесь также есть две потенциальных ближайших клетки для выхода. Они обведены красными кружками. Расстояние до каждой из клеток рассчитывается по теореме Пифагора и составляет 1.41 клетки. Выбор идет в пользу клетки с наименьшей координатой Х. Таким образом гоблины выходят на левую клетку.



Рис 3 – Пример сдвига 2.

• Пример сдвига 3 (рис 4). На данной картинке изображен сдвиг 2-х одноклеточных существ под удар церов, фей, танцев. Рассмотрим по - отдельности механику выталкивания левого стека зомби, а потом верхнего.

Левый стек имеет 2 потенциальных точки выхода. В этом легко убедиться, подсчитав дистанцию до этих точек по теореме Пифагора. В данном случае дистанция=2.83 и является самой короткой из всех возможных для выхода зомби. Видим, что у обеих точек одинаковая координата Х. В этом случае приоритет выхода отдается клетке с минимальной координатой У. Потому левый стек зомби выходит вверх.

Верхний стек зомби имеет также 2 потенциальных точки выхода с дистанцией=2.83. Приоритет отдается в пользу клетки с наименьшей координатой Х. Потому верхний зомби вышел на левую доступную клетку.



Рис 4 – Пример сдвига 3.

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

• Пример сдвига 4 (рис 5). В данном примере показано выталкивание четырехклеточного существа. Расстояние до самого короткого места выхода составляет 2.24 клетки. Потенциальная клетка выхода одна, именно на нее ящер и выходит.



Рис 5 – Пример сдвига 4



• АТВ добив

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

Эта техника основывается на фундаментальном правиле.

Существа во всех «волнах» располагаются в точке 50 метров; причем «волна» появляется в момент хода первого стека войск игрока: startATB = 50

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

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

Вариантов и способов АТВ добива существует великое множество, однако всех их можно приблизительно объединить в три группы. Ниже приведено их описание:

1. Ваш стек ходит два раза подряд (между его ходами ни один из ваших стеков не ходит). Тут вроде бы все ясно, волна выходит с ходом вашего первого стека. Соответственно он сходит с самой хорошей позиции на новой волне, так как начнет волну. Минус этого варианта в том, что если ваш добивающий стек сморалит, то ему потребуется в 2 раза меньше времени, чтобы дойти до отметки >=100 атв метров (отметки хода). Значит, остальные стеки продвинутся в 2 раза меньше ожидаемого вперед по атв шкале. Это плохо тем, что остальные стеки могут и не сходить на следующей волне.

2.

2.1. У вас есть 2 отряда с одинаковой инициативой, один из которых станет добивающим (например черти- адские псы, фурии - фурии, орки - волки). Тогда настройка добива идет по такому правилу: один из этих отрядов посылаем в ожидание, так чтобы его отделяло от своего одноинициативного собрата ожидание. Между добивающим и вторым отрядом по линейке инициативы не должно попасть ни одно из ваших существ. Этого следует добиваться, чередуя щит и ожидание вашими стеками. При таком добиве вы будете точно уверены, что ваш добивающий отряд начнет следующую волну в районе отметки 50 атв метров, то есть где-то там, где выйдет новая волна.

Ниже приведен один из таких примеров (рис 6). В качестве равноинициативных стеков были выбраны 2 стека вампиров. Количество существ в стеке не играет никакой роли. На рисунке в качестве добивающего отряда выступает стек из 11 вампиров.



Рис 6 – Пример добива по правилу 2.1.


Возникает вопрос- как увидеть, что добив настроен корректно? На следующей картинке (рис 7) изображено положение стеков на шкале инициативы при попытке ожидания вампиром.



Рис 7 – Проверка правильности добива по правилу 2.1.

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



Рис 8 – Результат добива по правилу 2.1.

На новой волне вышли лучники (ини=9). Видим, что вампиры ходят раньше их. Результат добива успешен.

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

2.2. У вас разноинициативные отряды. Тогда первым делом выбираете добивающий отряд. При настройке добива ваша задача создать как можно большее расстояние по атв шкале между добивающим отрядом и вашим, следующим после него. Это проще всего достигается таким способом: добивающим стеком становимся в защиту, остальными стеками ожидаем до того момента пока при попытке ожидания ваши стеки не будут ходить после добивающего. В этом случае становимся в защиту. Смысл этой операции прост: увеличить атв- расстояние между добивающим стеком и остальными. Если все хорошо, то скорее всего вы увидите, что при попытке ожидания добивающим стеком, он ходит раньше остальных ваших стеков.

Попробуем настроить этот добив на практике (рис 9). В качестве добивающего стека возьмем стек скелетов. Ниже показаны ключевые моменты настройки добива.



Рис 9 – Пример настройки добива по правилу 2.2.

Планируя сделать в качестве добивающего отряда отряд скелетов, засекаем его положение на атв- шкале. После этого убеждаемся, что перед ним ходят все ваши стеки (если у вас много времени можно им для начала встать в щит). После этого пробуем стеками ожидать. Если они при ожидании ходят раньше скелетов (голубая линия), то встаем в ожидание. Если они при ожидании ходят позже скелетов (красная линия), встаем в щит. На рис. 10, при попытке ожидания, зомби ходят позже скелетов, потому встаем ими в щит. В результате на момент хода скелетов получаем такую ситуацию:



Рис 10 – Пример настройки добива по правилу 2.2.

Скелеты при попытке ожидания ходят раньше всех наших стеков. В данном случае спокойно добиваем волну.

Примечание: в качестве добивающего стека лучше брать самое инициативное существо, поскольку при настройке добива ваши более инициативные стеки могут его “испортить”. Думаю, на практике вы с этим не раз столкнетесь, однако сильно не беспокойтесь, добив все равно будет, хотя попыткой ожидания вы его не идентифицируете.

Результат добива по правилу 2.2 приведен на рисунке 11.



Рис 11 – Результат добива по правилу 2.2.

Скелеты на новой волне ходят раньше гарг (ини=9) и головорезов (ини=8).


3) Новая волна выходит всегда в момент хода вашего первого существа на линейке инициативы. Если вы сможете сделать так, чтобы добивающий волну отряд при ожидании ходил до всех ваших существ, это гарантирует ему хорошее положение на линейке инициативы на новой волне. Если вы рисковый человек, можете делать так, чтобы ваш самый инициативный отряд ходил 2 раза подряд (между его ходами никто из ваших отрядов не ходил), но при таком добивании опасайтесь шального боевого духа у добивающего отряда.



• Дискретность АТВ-шкалы

Думаю эльфы, темные эльфы, демоны не раз замечали, играя в ТНВ, что иногда ваши инициативные отряды(танцы, фуры, кони) могут на начале волны ходить 2 раза до отрядов врага. При этом в одних случаях они ходят, а в других, казалось бы, совершенно идентичных- нет. В таких ситуациях инициатива вашего ходящего стека немного меньше удвоенной инициативы выходящего моба.


Почему так выходит?

Ответ кроется в дискретности АТВ шкалы. На самом деле, на новой волне, первый ходящий ваш стек не обязательно находится на отметке 100 АТВ метров. Он может находиться на отметке (100, 100+INI) метров, где INI – инициатива вашего стека. Все потому, что непрерывная шкала требует куда больших ресурсов для вычислений. Потому администрацией была введена дискретная шкала, дискретность которой заключается в снятии положений стека каждую АТВ- секунду.

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


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

INIотр=(50.1+ceil(50/INIвр. отр.)*INIвр. отр.)/(1 + ceil(50/INIвр. отр.))


INIотр – минимально требуемая инициатива вашего стека.

INIвр.отр. – инициатива вражеского отряда, относительно которой вы хотите рассчитать инициативу вашего отряда.

сeil – функция округления до целого вверх.


Это не гарантирует стопроцентный шанс двойного хода, но является нижней границей для такого события.

Соответственно верхняя граница равна INIотр=2*INIвр. отр.

Для удобства полученные результаты занесены в таблицу 1.


Инициатива вражеского отряда
Минимально требуемая инициатива вашего отряда
Требуемая инициатива вашего отряда для точного двойного хода
6 10,5 12
7 11,8 14
8 13,3 16
9 14,9 18
10 16,7 20
11 17,6 22
12 18,4 24
13 20,5 26
14 21,3 28
15 22,1 30

Таблица 1 – Количество инициативы необходимое для двойного хода вашего отряда при начале новой волны.

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

Исходные данные такие: Отряд начинает волну, это значит, что он находится на атв шкале на отметке в диапазоне [100;100+INIotr-0.1] метров.

Итак, максимальное его положение на атв шкале, из-за ее дискретности, 100+ INIотр -0.1 метров. Инициатива отряда = INIотр.

Враг, имея инициативу INIвр.отр, начинает волну с отметки 50 метров на атв шкале.

Составим уравнение движений нашего и вражеского отрядов. После своего первого хода наш отряд начнет бежать новый круг с отметки INIотр -0.1 метров:


INIотр -0.1 + INIотр*t = 50 + INIвр.отр*t


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

t = ceil(50/INIвр.отр), округление к большему идет из-за дискретности шкалы, время не может быть нецелым числом.


Итак, получаем такое уравнение:

INIотр*(1+t)= 50+0.1+ INIвр.отр*t


Или:


INIотр = (50+0.1+ INIвр.отр*t)/( 1+t)= |t= ceil(50/INIвр.отр)| = INIотр=(50.1+ceil(50/INIвр.отр.)*INIвр.отр.)/(1 + ceil(50/INIвр.отр.))



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



Комментарии
21 / 17.07.2012 12:30 / -resta- [13] ?
Норм статья)
22 / 17.07.2012 12:44 / Эфиальт [14] ?
это я предложил  тему для статейки))
23 / 17.07.2012 15:12 / Михаил5555 [15] ?
Да, хороший мануал. Но для полного мануала нужно ещё добавить просчёт БД с учётом этих просчётов.
24 / 17.07.2012 15:20 / Я_ЛЭ [7] ?
Цитата: Steff
Думаю полезно будет новичкам, которые ставят целью зарабатывать монеты на ТнВ, для начала хотяб в 10% попадая.
Новички это и не осилят,а если и осилят,то и половины не поймут.
25 / 17.07.2012 15:27 / Михаил5555 [15] ?
Цитата: Я_ЛЭ
Новички это и не осилят,а если и осилят,то и половины не поймут.
Если желание будет, то поймут.
26 / 17.07.2012 15:51 / Налирт [10] ?
в принципе чего-то понял,но не всё,нужно будет ещё раза три прочитать как-нибудь :)
27 / 17.07.2012 16:47 / Геофизик [16] ?
Цитата: Я_ЛЭ
Новички это и не осилят,а если и осилят,то и половины не поймут.
и что тут не понятного? всё простейшее, формулу понимать не надо у вас есть таблица
28 / 17.07.2012 17:17 / васечек [13] ?
спс, одна из немногих статей которые можно прочитать полностью.
29 / 17.07.2012 21:41 / rok-diavol [14] ?
Прочел. вдумался, осознал. Применять - чтойта ленива слишком так заморачиваться))
30 / 18.07.2012 19:23 / BAP91r [12] ?
Хм.. статейка-то как раз вовремя.. знали про степняков?
31 / 20.07.2012 10:06 / _АпАсНыЙ_ [10] ?
спс
32 / 21.07.2012 01:14 / Божественный [9] ?
а можно еще написать статью об ударах мобов? от чего зависит куда встанут?
33 / 21.07.2012 12:56 / Chitinets [14] ?
я прочитал и ничего не понял, теперь у меня комплекс неполноценности  
34 / 22.07.2012 10:11 / new_champion [11] ?
но с теоремой ты загнул, не проще написать что стеки стремятся к начальной точке
35 / 22.07.2012 11:25 / new_champion [11] ?
а так в целом я ничего не понял возможно нужно ещё читать но зато статью нолдора про круги понял очень хорошо.
36 / 18.08.2012 18:21 / re-KPYT [12] ?
Ну наконец-то что-то вразумительное. Где-то был звук про атв-дыры, а растолковать никто ничего не мог.

Спасибо, очень познавательно.
37 / 19.08.2012 11:59 / я-и-тока-я2 [14] ?
автор молодец!
38 / 19.08.2012 23:24 / РЫЦАРЬ-СМЕРТЬ1 [8] ?
Наконец все расписали ясно и понятно автору лайк)
39 / 22.08.2012 12:54 / _эхо_ [11] ?
ребята, про выталкивание я чуток понял, но про авт шкалу нифига не понял:( и у нолдора тоже читал..либо я какой-то не такой, или вы криво пишите
40 / 26.09.2012 18:35 / Ничто-Не-Вечно [12] ?
Цитата: _эхо_
ребята, про выталкивание я чуток понял, но про авт шкалу нифига не понял:( и у нолдора тоже читал..либо я какой-то не такой, или вы криво пишите
ты какой то не такой.

Возможность комментировать доступна после регистрации