21.05.2014 00:00
 2 просмотров  10651  19

Удача и БД


Автор: tentorium



По крайней мере, со времен Heroes 3 SoD, а скорее всего и раньше, в среде поклонников "Героев" не прекращаются споры о том, каковы есть и каковы должны быть бои в "Героях". На что они должны быть больше похожи, на шахматы или на покер?

Сторонники первой точки зрения выбирают WT – версию игры без морали и удачи, а второй - обычное SoD.

В наших родных "Героях Войны и Денег", как неотъемлемый элемент игры, присутствуют удача и боевой дух, и вроде бы они должны вносить элемент неожиданности, делать игру больше похожей на покер и меньше на шахматы.

Однако, как выясняется позже, выпадение удачи не совсем случайно.

Админы поделились заветной формулой:


luck^(1+[количество удачных срабатываний]-[количество несработавших моментов]*luck/(1-luck))


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

Представим, что мы хотим использовать знание этой формулы на практике, в конкретном бою. В приложении к статье приведено и это, но не будем же мы каждый раз заглядывать в таблицу. А если нас интересует вероятность выпадения лака/ БД на 28 ходу, тогда как? Есть методика, с помощью которой, ничего не считая и никуда не заглядывая, мы можем на каждом ходу для каждого стека сказать вероятность выпадения у него удачи/БД.

Минус методики в том, что она работает только для показателей удачи/БД равных двум или пяти. И если для показателя пять и так большинство все знают, то для показателя два подобные исследования не встречались.

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

Перепишем формулу удачи, подставив в неё Luck=0.2 и упростив получим:


Здесь a - количество срабатываний удачи/БД на стеке, b - количество несрабатываний. Эта формула примечательна тем, что получившиеся значения вероятностей принимают дискретный набор значений вида 0.2^(N/4), где N натуральное число или ноль. Первое множество значений таких выражений может быть вычислено.

Итак, суть методики для Luck=0.2.

Берем шахматную доску. Там как раз восемь строк по восемь клеток. В нижней строке записываем вероятности:


6% 9% 13% 20% 30% 45% 67% 100%

Выбираем шахматные фигурки, обозначающие ваши стеки. Например:

Пешка- дьяволята, конь –прыгуны, 2 слона – 2 стека искусительниц (разного цвета чтоб не путаться), ладья – кони, ферзь –пещерки и король – дьяволы.

В начале боя все ставим на следующие 7 линий в столбец над 0.2. То есть в начале боя первым ходом у всех шанс на лак/БД равен 0,2. Затем наш стек ходит. Если лак/БД не сработал, перемещаем соответствующую фигурку на одну клетку вперед, если сработал – на четыре клетки назад. И все!

В любой момент боя смотрим в нижней строке вероятность лака БД/ любого стека (хоть на 20 ходу) и точную вероятность (с точностью до округления). Единственное, что может оказаться, что нам надо переместиться за край доски влево. Такое бывает крайне редко при нескольких удачах / БД подряд. В принципе, можно дорисовать клетки слева и записать там:


0.8% 1.2% 1.8% 2.6%

Но на практике такое практически не случается. Можно грубо считать в этом случае, что больше на стеке удачи/ БД в бою не будет.

Что касается Luck=0.5, там тоже применима такая методика с вероятностями. Формула:


1/512 1/256 1/128 1/64 1/32 1/16 0,125 0,25 0,5 1

Теперь еще проще: при срабатывании - на единицу влево, при несрабатывании - на единицу вправо. Начинаем с позиции 0,5, и на практике примерно на ней и будем весь бой.

Теперь рассмотрим другие значения показателя удачи.


Удача = 1.

Формула:


Предложенная методика применима и здесь. Берем строку вероятностей:


10% 13% 17% 22% 28% 36% 46% 60% 77% 100%

В начале боя все стеки в позиции 10%. Не сработала удача, перемещаются вправо, сработала - на девять влево. Вылезли за пределы строки влево - скорее всего, больше удачи не ждем. Имеет смысл смотреть только до первого срабатывания.


Удача = 3.

Формула:


А вот тут наша методика неприменима. Можно сказать о вероятности удачи на первых ходах (они прямо не выписаны в статье "Ордена мира"):


30% 50% 84% 100%

Первым ходом вероятность удачи на стеке 30%. Если первым ходом вероятность не сработала, то вторым - 50%. Если не сработала первым и вторым ходами, то третьим вероятность составляет 84%. Ну, а если вероятность выпадения удачи не сработала три первых хода, то на четвертый ход наверняка выпадут лак/БД.


Удача = 4.

Формула:


Методика не работает. Выпишем для первой удачи:


40% 73% 100%

Первым ходом выпадает 40% лака. Если удача не сработала, то на втором ходу вероятность составляет 73%. Если удача не выпала два раза, то на третий раз точно выпадет лак/БД.

Все это более обстоятельно разобрано в статье "Ордена мира".

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



Удачи в турнирах!


Комментарии
1 / 21.05.2014 13:18 / Alex2011 [11] ?
Спасибо, было интересно
2 / 21.05.2014 17:22 / хо0ох [14] ?
это не всегда верно, играл некром 4 удачи, даже на 4-м ходу не выпала, так что все подсчёты верны не для всех случаев
3 / 21.05.2014 17:31 / ГРАД [19] ?
Цитата: хо0ох
играл некром 4 удачи, даже на 4-м ходу не выпала
4000 золота за ссылку
4 / 21.05.2014 17:46 / Кардинал [14] ?
Может ошибаюсь, но это разве не копия статьи Нолди?
5 / 21.05.2014 18:35 / mini-G [15] ?
а разве расчет лака/БД не для каждого стека отдельно?
6 / 21.05.2014 22:22 / jonnyfast [16] ?
Цитата: Кардинал
Может ошибаюсь, но это разве не копия статьи Нолди?

хуже. Статья в справке Эйнвилла. А это недоразумение статьей назвать нельзя - набор букв
7 / 22.05.2014 11:02 / лапушарик [14] ?
непонятно мне... какова цель, задача и вывод относительно них?
8 / 22.05.2014 11:38 / McSteve [10] ?
хо0ох, читай внимательно.
9 / 23.05.2014 02:20 / Андвари [5] ?
Чего понаписали, формулы, дели 10 на удачу или БД, получишь число на каком ходу в среднем(!!!) они прискачут стеку. И убивает, когда рандомным вещам, пытаются формулы прикрутить.
Вы СЭ до 11БУ, когда у них лес появляется, спросите, они вам все распишут про удачу Без всяких формул, одними эмоциями.
10 / 23.05.2014 15:11 / Страус [16] ?
Никуда не заглядывая? С шахматной доской сидишь за ноутом, а никуда типа не заглядываешь:) Намного проще самому в меру своих способностей сообразить скриптик. Я когда-то делал такое. Табличка существ, параметр морали вводишь в окно и с самого начала боя тыкаешь,  выпала у стека мораль или нет. Не сложнее доски, но универсально.
Кстати, есть и еще один важный момент лака/бд, который проявляется на высоких уровнях преимущественно. Это изменение параметра удачи/бд. Тут можно даже покопаться не в анализе формул, а в их поиске: как все работает?

И таки лучше бы скрипт народу дал, чем рекомендацию с доской сидеть)
11 / 23.05.2014 17:15 / _-_SCORPION_-_ [13] ?
Большое спасибоо
оно очень надо
12 / 23.05.2014 17:57 / мастервинду [10] ?
13 / 24.05.2014 11:23 / _-_SCORPION_-_ [13] ?
ещё вопрос

а счётчки одни у всей армии или у каждого отряда свой?

и что будет со счётчиком БД если допустим при ожидании или обороне?
14 / 24.05.2014 11:36 / BRIZ-ing [8] ?
"Первым ходом выпадает 40% лака. Если удача не сработала, то на втором ходу вероятность составляет 73%. Если удача не выпала два раза, то на третий раз точно выпадет лак/БД."
Господи, а промах по привидениям, наверное, по этой же формуле считается.
15 / 24.05.2014 15:32 / _-_SCORPION_-_ [13] ?
Цитата: BRIZ-ing
Господи, а промах по привидениям, наверное, по этой же формуле считается.

Там шанс 50% если не попал то станет 75% если два раза не попал то будет 100%  и в обратную сторону также
16 / 26.05.2014 12:28 / tentorium [14] ?
Цитата: mini-G
хуже. Статья в справке Эйнвилла. А это недоразумение статьей назвать нельзя - набор букв
Суть статьи сказать тем кто не в курсе, что вероятности неплохо бы считать на каждом ходу для каждого стека. Почти уверен, и вы этото не делаете, особенно для удачи 1. Для удачи 2 это можно красиво визуализировать, о чем и статья. Если у вас есть скрипт который сам считает для каждого стека  на каждом ходу и не надо в ходе боя ничего вносит в прогу, поделитесь пожалуйста, иначе лучше пользоваться шахматной доской имхо
17 / 01.06.2014 12:20 / Бездарный перс [11] ?
Цитата: _-_SCORPION_-_
Там шанс 50% если не попал то станет 75% если два раза не попал то будет 100% и в обратную сторону также
50%, 50%, 100%. Откуда 75, простите? Рулетчики тоже так набирают "наиболее вероятные числа" из пыли, затем без штанов сидят.
18 / 06.04.2016 12:46 / Свиррепый Бамбр [16] ?
Статья фуфло. У меня при 3 удачи и бд  не было ни того ни другого 8 ходов
19 / 23.12.2016 13:43 / Свиррепый Бамбр [16] ?
http://www.heroeswm.ru/war.php?lt=-1&warid=811197080

Это пример как при 3 удачи, она сработала только на 7й ход.
Смотрим на минотавра...
первые 2 хода он сделал с удачей, потом 6 раз без неё.

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