Английская версия справочникаРусская версия справочника

Свежие комментарии

Май 2017
Пн Вт Ср Чт Пт Сб Вс
« Янв    
1234567
891011121314
15161718192021
22232425262728
293031  

Архивы

ГЕРБ сайта
Яндекс.Метрика

Введите свой email адрес:

Подписаться на обновления по RSS
Добро пожаловать на HandBookHMM.ru!
Вашему вниманию предлагается проект, целью которого является знакомство и изучение замечательного мира Героев Меча и Магии первой и второй частей. На сайте представлены справочники по всем частям Heroes и King’s Bounty! Возможно, именно здесь Вы найдете информацию, которую так долго искали. Мы всегда рады новым игрокам, ценителям и любителям классических игр!

Каким образом заклинания попадают в магическую гильдию?

Автор AlexSPl

Каким образом заклинания попадают в магическую гильдию?.

Как известно, магическая гильдия любого города может иметь максимум 5 этажей, или уровней. Вероятность выпадения чиселКаждый построенный этаж открывает доступ к новым заклинаниям соответствующего уровня. 1-й и 2-й этажи гильдии магов открывают доступ к 3 заклинаниям 1-го уровня и 3 заклинаниям 2-го уровня соответственно. На 3-м и 4-м этажах можно выучить 2 заклинания 3-го и 4-го уровня соответственно. 5-й этаж даёт только 1 заклинание. Исключением является город Чародеев, где можно возвести Библиотеку, которая откроет доступ к одному дополнительному заклинанию на каждом этаже гильдии.

На самом деле, на каждом этаже магической гильдии хранится ровно 4 заклинания. Даже на 5-м. Заклинания попадают на полки гильдии случайным образом при старте карты. Герой получает доступ только к первым трём заклинаниям 1-го и 2-го уровня (ко всем четырём с отстроенной Библиотекой), к первым двум заклинаниям 3-го и 4-го уровня (к первым трём из четырёх с Библиотекой) и к первому заклинанию 5-го уровня (к первым двум из четырёх с Библиотекой).


Генерация заклинаний проходит в два этапа для всех городов на карте в порядке возрастания их номеров (ID). На первом этапе на полки гильдии попадают т.н. обязательные заклинания. Давайте посмотрим, что конкретно происходит на этом этапе.

Этап 1

1. Если город является городом Некромантов и, кроме того, принадлежит компьютерному игроку, то на полки магической гильдии такого города попадает одно из заклинаний первой группы: Death Ripple (с вероятностью 50/101), Death Wave (с вероятностью 51/101).

2. Далее, независимо от типа города и его принадлежности (человек/компьютерный игрок), на полки гильдии попадает одно из заклинаний второй группы: Dispel Magic (25/101), Mass Dispel (25/101), Anti-Magic (25/101), Cure (26/101).

3. Аналогично пункту 2, на полки гильдии магов попадает одно из заклинаний третьей группы: Magic Arrow (20/101), Lightning Bolt (20/101), Fireball (20/101), Cold Ray (20/101), Cold Ring (21/101).

На этом «обязательные» заклинания заканчиваются, и мы переходим ко второму этапу.

Этап 2

На этом этапе заклинания попадают на полки магической гильдии последовательно, начиная с первой полки (слота) первого этажа и заканчивая четвёртой полкой последнего, пятого этажа гильдии магов. Разумеется, полки, уже занятые «обязательными» заклинаниями, пропускаются.

1. Для определения заклинания, которое попадёт на полку магической гильдии, бросается 65-гранная игральная кость (по общему числу заклинаний в игре) c гранями от 0 до 64. Выпавшая грань определяет номер заклинания, которое будет претендовать на то, чтобы занять своё место на полке текущего этажа гильдии магов. Если уровень заклинания-кандидата отличен от требуемого, т.е. не соответствует текущему этажу гильдии, игральная кость перебрасывается до тех пор, пока уровень заклинания не будет соответствовать текущему этажу.

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

Далее, каждому заклинанию поставлен в соответствие набор из 6 чисел, каждое из которых определяет частоту появления заклинания в магической гильдии одного из 6 типов городов. Назовём каждое такое число весом заклинания для определённого города. Так, первое число есть вес заклинания для города Рыцарей, второе — для города Варваров и т.д. Веса заклинаний в оригинальной игре не отличаются большим разнообразием и принимают только два значения: 0 или 10. Однако никто не запрещает их изменить, например, при создании модификации.

3. На этом шаге бросается 11-гранная игральная кость с гранями от 0 до 10. Если выпавшая грань оказывается больше веса заклинания, кандидат отсеивается и происходит возврат к шагу 1. Заклинания с весом 10, разумеется, отсеяны быть не могут. Заклинания с весом 0 проходят дальше с вероятностью 1/11, т.е. только в том случае, если выпадает грань 0. Вообще, вероятность того, что заклинание-кандидат будет отсеяно на этом шаге, равна 1 — (W + 1)/11 = (10 — W)/11, где W — вес заклинания.

Примером заклинаний с весом 0 являются Holy Word и Holy Shout для города Некромантов; Death Ripple и Death Wave для всех городов, кроме города Некромантов; «Вызов элементалов» для всех типов городов. Веса заклинаний можно посмотреть под спойлером в конце данного сообщения.

4. Заметьте, что до сих пор нигде не проверялось, а не является ли заклинание-кандидат двойником одного из тех заклинаний, что уже находятся на полках текущего этажа магической гильдии. Проблема двойников в Героях 2 решается весьма оригинально :)

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

Во-вторых, именно на этом этапе, после всех вычислений, выполненных ранее, наконец происходит проверка на двойников. Если заклинание-кандидат уже присутствует на полках, происходит возврат к шагу 1, а счётчик неудачных попыток увеличивается на 1.

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

5. Для городов компьютерного игрока выполняется дополнительный шаг. Заклинанию-кандидату ставится в соответствие некоторое число. Назовём его «силой» заклинания (Power): Power = k * Alpha + 50, где k = 1 для следующих заклинаний: Teleport, Cure, Mass Cure, Dispel Magic, Mass Dispel, а также для всех походных заклинаний; k = 4 для всех остальных заклинаний; Alpha — эффективность заклинания c точки зрения AI (см. «Технические подробности»). Есть одно исключение: сила заклинания Dimension Door всегда равна 1500.

Итак, зачем нужна эта «сила» (Power)? Ответ прост: комп — читер :) Смотрите сами: кидается 1500-гранная игральная кость с гранями от 1 до 1500, и если выпавшая грань оказывается больше значения Power, заклинание-кандидат отсеивается, и происходит возврат к шагу 1 в надежде на более хорошую генерацию. Таким образом, комп старается сгенерить в своей магической гильдии лучшие заклинания.

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

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *