Полная механика боя Итак, определимся с ещё более математической частью игры - что и как считается в этой игре, чтобы вы увидели циферки о том, выиграли вы или проиграли. Здесь я более-менее подробно опишу, что и как считается.
Для начала вспомним, какие условия для выигрыша боя и как он протекает:
Бой длится или 6 раундов, или до нанесения одним из "бодающихся" урона, оставляющего противнику 1 ХП.
Первый удар каждого раунда принадлежит нападающему
Каждый раунд идёт по схеме:
* вероятность попадания
(если проходит удар, то)
* вероятность крита
* количество урона
* количество заблокированного урона
* вероятность второго удара
Вероятность попадания
шанс попадания = сила нападающего/(сила нападающего + ловкость защищающегося)
Другими словами, если у вас ловкость равна силе противника, то с вероятностью в 50% он не попадёт по вам. И увеличение ловкости (при более чем в 2 раза меньшей цене, чем сила) понижает вероятность попадания линейно.
Вероятность критического урона
вероятность крита = мастерство нападающего/(мастерство нападающего + ловкость защищающегося)*Random(1;100)
Иначе говоря, вероятность крита - это почти то же, что и просто попадание, только со случайным фактором, развивающимся линейно от 1% до 100%. Опять таки, повышение ловкости снижает вероятность того, что по вам кританут.
Количество урона
количество урона = Random(сила нападающего/2;сила нападающего*3/2)
В случае критического попадания:
количество урона=количество урона*2
Количество заблокированного урона
количество урона = Random(защита защищающегося/2;защита защищающегося)
***************************
Таким образом, бой выглядит примерно так:
Раунд 1. Ход 1:
считаем вероятность попадания, если попадаем, считаем урон, который можем нанести, будет он критическим или нет. Далее, считаем урон, который блокируется защищающимся. Если разница между наносимым уроном и блокированным уроном положительна, то считаем, что этот урон нанесён противнику.
Если количество ХП защищающегося в этом раунде больше нанесённого урона, проходит проверка на второй удар противником. Для него опять работает схема на проверку попадания и урона, проверка на ХП. Далее, при наличии кулона три копыта проводится проверка на третий удар. Также при каждом ударе и защите учитываются кулоны два копыта, антимаг, какдамс, ловкий пупс и толстое пузо. Идёт проверка на ХП защищающегося в этом ранду и далее, если оно больше 1, идёт его ход по такой же схеме.
Если все 5 раундов количество ХП противников не опустилось до 1 и ниже (при нанесении урона большего, чем количество оставшихся ХП, ХП приравнивается к 1 и бой считается оконченным в пользу того, у кого ХП больше 1), то считается общее количество нанесённого урона и победившим считается тот, кто нанёс больший урон