Предыдущая глава |
↓ Содержание ↓
↑ Свернуть ↑
| Следующая глава |
Этап 2. Расчёт вероятности успеха.
После вычисления эффективного умения на его основе рассчитывается вероятность успеха по формуле:
Вероятность_успеха = f(Умение)
где:
f() — некая зашитая в программу функция.
При этом в случае успеха дополнительно проверяется, что успех будет критический. Вероятность этого события, если успех уже имел место, приблизительно 5%. Точное значение и его зависимость от уровня эффективного умения неизвестны. Величина получена нами в результате наблюдений за событиями в игре, и она приблизительна. Также на эту величину влияют некоторые ваши умения и заклинания.
В случае провала также дополнительно проверяется, что произошёл критический провал. Вероятность этого события также приблизительно 5%, и на эту величину также оказывают влияния некоторые умения с заклинаниями. Кроме того, высокие значения эффективного умений снижают риск критического провала, поскольку при этом снижается вероятность исходного провала, необходимого, что была проверка на критический провал.
Критический провал или успех дополнительно влияют на результат. В случае критического успеха при ударе мечом вы нанесёте противника дополнительный урон, а критический провал при сотворении заклинаний приводит к магическому искажению. Критический провал при ударе мечом может привести к тому, что вы потеряете равновесие и в следующие несколько секунд будете уязвимы для атаки. Одним словом, критический успех всегда хорошо, критический провал всегда плохо. После переноса это осталось в силе.
Примечание: Функция, связывающая между собой значение умения и вероятность успеха, постоянно менялась во время бета-теста и поэтому известна нам лишь постольку-поскольку, кроме того, после перехода не факт, что она точно описывает происходящее. Тем не менее, похоже, нейронная сеть матрицы неплохо справлялась со своей работой, и функция перед запуском игру уже достаточно хорошо моделировала реальный мир. По крайней мере, мы не нашли серьёзных отклонений от неё при наших испытаниях. В связи с этим мы выкладываем здесь нарытые нами во время бета-теста материалы в виде таблиц и графика.
Ниже приведена зависимость вероятности успеха от значения эффективного умения, представленная в виде графика. Помните, что неточная величина и в реальности она может немного отличаться.
Как видно из приведённого рисунка, вероятность успех нигде не обращается в ноль или становиться равной 100% (автоматический успех). Что происходит при значении эффективного умения меньше нуля или больше 100 точно неизвестно, но, по-видимому, вероятность также не обращается в ноль или не становится 100%.
При значении эффективного умения равным 50 вероятность успеха становиться равно 50%, и вблизи этого значения вероятность растёт успеха на 2% за каждую единицу умения.
Случай, если вам будет интересно оценить, каковы ваши шансы на успех в том или ином деле, внизу приведены таблицы с вероятностями успехов, провалов, а также критических успехов и провалов. Внимание, в таблице приведены абсолютные величины вероятностей критических успехов и провалов, без требования того, чтобы предварительно произошёл обычный успех или провал. Соответственно, их величина меньше 5%.
Умение 0 5 10 15 20 25 30 35
Шанс успеха 1% 1,9% 2,7% 3,7% 6% 9,5% 14,5% 21,6%
Шанс провала 99% 98,1% 97,3% 96,3% 94% 90,5% 85,5% 78,4%
Шанс критического успеха 0,05% 0,1% 0,14% 0,19% 0,3% 0,48% 0,73% 1,1%
Шанс критического провала 5% 4,9% 4,9% 4,8% 4,7% 4,5% 4,3% 3,9%
Умение 40 45 50 55 60 65 70 75
Шанс успеха 30,2% 40% 50% 60% 69,8% 78,4% 85,5% 90,5%
Шанс провала 69,8% 60% 50% 40% 30,2% 21,6% 14,5% 9,5%
Шанс критического успеха 1,5% 2% 2,5% 3% 3,5% 3,9% 4,3% 4,5%
Шанс критического провала 3,5% 3% 2,5% 2% 1,5% 1,1% 0,73% 0,48%
Умение 80 85 90 95 100
Шанс успеха 94% 96,3% 97,3% 98,1% 99%
Шанс провала 6% 3,7% 2,7% 1,9% 1%
Шанс критического успеха 4,7% 4,8% 4,9% 4,9% 5%
Шанс критического провала 0,3% 0,19% 0,14% 0,1% 0,05%
Этап 3. Определение успешности действия.
Вычисляется случайное число от нуля до единицы и сравнивается с вероятностью успеха. Если сгенерированное число меньше или равно вероятности успеха, то вы успешно выполнили действие, иначе вы в этот раз оплошали. После этого проходит проверка, что произошёл критический успех или провал.
Этап 4. Определение степени успеха или провала.
Как и в реальной жизни, в игре немаловажно не только успешное выполнение действия, но и насколько хорошо вы его выполнили (или насколько сильно вы провалились). Расчёт степени успеха, со слов техподдержки, происходит по нижеприведённому алгоритму.
Вначале на основе сгенерённого ранее случайного числа вычисляется, какому пороговому уровню умения оно соответствует. Для нахождения порогового уровня умения используется обратная функция к связывающей между собой умение и вероятность успеха из этапа 2. Например, в случае, если сгенерировалось число 0,5, то это соответствует порогу умению 50, а если было сгенерировано число 0,027, то это соответствуют пороговому уровню умения 10. Если пороговый уровень умения получается меньше нуля, то в дальнейших вычислениях оно принимается равным нулю.
Далее из вашего уровня умения вычитается пороговый уровень, получаемый из случайного числа, после чего полученную разность делят на 10. Если результат больше единицы, то полученное значение берётся в качестве степени вашего успеха, иначе в качестве степени вашего успеха берётся единица. На последнем этапе в случае критического успеха к результату добавляется +2.
Пример 1. Ваше умение составляет 62, и генератор случайных чисел выкинул 0,216. Как видно из вышеприведённой таблицы, вероятность 0,216 соответствует пороговому значению умения 35.
(62-35)/10 = 27/10 =2,7
Результат больше единицы, значит, степень вашего успеха равна 2,7.
Пример 2. Ваше умение составляет 3, но вам сегодня везёт, и генератор случайных чисел выкинул 0,001, так что вы всё же выполнили действие, причём у вас критический успех. Посчитаем теперь насколько удачно.
Случайное число 0,001 соответствует отрицательному значению умения, поэтому по вышеупомянутому правилу пороговое значение умения берётся равным нулю.
(3-0)/10 = 3/10 = 0,3
Поскольку результат меньше единицы, то за степень успеха берётся значение 1, но поскольку у вас был критический успех, то к единице добавляется ещё 2. Финальная степень успеха равна 3.
Примечание: В случае отрицательных или же положительных, но меньше 10 значений умения степень успеха, если вам всё же удалось его совершить, всегда минимальное значение 1 (если, конечно, у вас не был критический успех). Нельзя преуспеть слишком хорошо, если вы недостаточно подготовлены.
Степень провала вычисляется аналогично, но если пороговый уровень умения получается больше сотни, то во всех вычислениях он принимается равным 100.
Примечание: Некоторые таланты увеличивают степень успеха, не меня при этом шансы на сам успех. Например, ???. Также на степень успеха ряда заклинаний влияет ???.
Расчёт нанесённого урона при ударе
Расчёт нанесённого вами или по вам урона проводится в несколько этапов. Вначале определяется сила вашего удара, исходя из средней её величины, далее из неё вычитается уровень брони цели, по которой наносится удар, с коэффициентами, зависящими от пробивной силы удара и прочности брони. На последнем этапа результат перемножается на коэффициент, зависящий от сопротивления или уязвимости цели и от интенсивности наносимого удара, так же итоговый урон домножается на коэффициент, зависящий от места на теле, куда вы попали. Эта формула используется как для расчёта физического урона нанесённого, нанесённого оружием, так и для расчёта урона от сверхъестественных вещей, наподобие магии.
Примечание: Насколько можно судить, в целом эта формула остаётся верной и годится для оценки того, насколько большие повреждения вы сможете нанести своему противнику. Впрочем, не стоит забывать, что сейчас это не игра, и мир стал гораздо сложнее и многограннее. Вы можете заманить противника в местность, где ему будет неудобно сражаться, например, из-за тесноты при больших его габаритах, от дистанционных атак можно спрятаться за плотным кустарником, которое их частично ослабит, а при неизбежном взрыве, например, от летящего фаербола, лучше броситься на землю, если, конечно, поблизости нет лучшего укрытия. Всего этого раньше нельзя было делать, учтите это.
Перейдём собственно к расчёту наносимого урона.
Этап 1. Расчёт силы наносимого удара в случае, если у вас отсутствуют умения Хороший удар, Хороший выстрел проводится по следующей формуле:
Сила_нанесённого_удара = random*Сила_удара
где:
Сила_удара — сила вашей атаки, согласно описанию удара в интерфейсе (повреждения, наносимые мечом или заклинанием);
random — случайная функция, исходную перемножающая силу удара на коэффициент, лежащий в диапазоне от 0,5 до 1,5 (это максимальное и минимальное значение random, гораздо чаще она принимает значение от 0,667 до 1,333).
Примечание: При критическом успехе при ударе Сила_нанесённого_удара = 1,5*Сила_удара, то есть берётся максимально значение функции random.
Когда же у вас наличествуют умения Хороший удар, Хороший выстрел или ???, то случайная функция рассчитывается дважды и берётся наибольший возможный коэффициент из двух. В этом случае расчёт производится по следующей формуле:
Сила_нанесённого_удара = max(random;random)*Сила_удара
где:
max(Число1;Число2) — функция, принимающая значение максимального из двух чисел.
Примечание: Умение, наподобие Хорошего удара, помимо всего остального, защищают вас от неудачного удара, значительно снижая его вероятность, что весьма кстати, когда сражаешься с хорошо бронированным противником.
Подробнее о функции random написано ниже.
Этап 2. Поглощение части урона или целиком бронёй.
Поглощение бронёй урона, помимо уровня брони участка, по которому пришёлся удар, зависит ещё от пробивной силы удара и прочность брони. Для начала рассчитывается эффективная броня:
Эффективная_броня = К(Пробивная_сила;Прочность_брони)*Броня
где:
Броня — уровень вашей брони;
K(пробивная_сила;прочность_брони) — функция зависящая от пробивной_силы удара и прочность_брони.
После сравнивается эффективная броня и сила нанесённого удара. Если значение эффективной брони больше или равно силе нанесённого удара, то урон от удара целиком поглощается бронёй. Иначе из силы удара вычитается значение эффективной брони. Расчёт в этом случае производится по следующей формуле:
Прошедший_броню_удар = Сила_нанесённого_удара — Эффективная_броня
Остановимся теперь подробнее на расчёте эффективной брони. В этом случае возможны три варианта.
Вариант 1. Прочность_брони > Пробивная_сила или же они равны друг другу, и при этом пробивная сила удара больше нуля.
В этом случае K = 1 и значение эффективной брони при ударе просто-напросто равно значению вашей брони.
Вариант 2. Пробивная_сила > Прочность_брони.
В этом случае K = 1/2(Пробивная_сила — Прочность-брони), или, по-простому, эффективность брони падает в два раза за каждую единицу разницы между пробивной силой удара и прочностью брони (в 2 раза за разницу в единицу, в 4 раза за разницу в двойку, в 8 раз за разницу в тройку и так далее).
Вариант 3. Пробивная_сила < 0.
В последнем варианте эффективность брони возрастает и K = 2-Пробивная_сила. Если у вашего удара пробивная сила -1, то эффективная броня противника становиться в два раза больше, чем его обычная броня.
Отрицательная пробивная сила удара встречается у некоторых примитивных видов оружия, простых магических ударов или при сражении голыми руками в случае, если у вас отсутствуют умения, компенсирующие этот недостаток. Постарайтесь не сражаться подобными средствами с противником с хорошей бронёй. Вы просто-напросто не сумеете нанести ему значимый урон.
Броня может состоять из нескольких слоёв. Наиболее распространённым примером являются дополнительно защищающие цель магические щиты, помимо них у некоторых рас есть природная, естественная броня. Кроме того, теперь, когда этот мир стал настоящим, вы можете надеть друг на друга несколько бронированных костюмов, например, разместить под латами ещё кольчугу. Сейчас это не запрещается правилами игрового мира. В случае нескольких защит эффективная броня от разных слоёв ранее суммировалась с учётом индивидуальной прочности каждой брони отдельно и пробивной силой исходного удара. Маловероятно, что здесь что-либо изменилось, хотя могут быть и нюансы. Например, после прохождения отдельных видов брони пробивная сила некоторых ударов может немного уменьшиться, хотя трудно сказать, действительно ли это так.
Примечание: Броня, помимо уровня защиты и прочности может обладать рядом специальных свойств, перечисленных в её описании и влияющей на её эффективность. Например, кольчуга хуже защищает от протыкающего удара кинжалом или стрел. Эти особенности также необходимо учитывать.
Ниже в таблице приведены значения коэффициента, на которой перемножается броня, для различных значений пробивной силы удара и твёрдости брони.
Пробивная сила меньше нуля Пробивная сила меньше или равна Прочности брони Пробивная сила — Прочность брони
-1 -0,5 0,5 1 1,5 2 3 4
K=2 K=1,4 K=1 K=1/1,4 K=1/2 K=1/2,8 K=1/4 K=1/8 K=1/16
Примечание: Как видно из таблицы, эффективная броня быстро падает при значительном превышении пробивной силы над прочностью брони противника. Пользуйтесь этим при сражении и при первой же возможности проапргрейдите своё вооружение, оно того стоит.
Этап 3. Учёт сопротивляемости и уязвимости цели.
На предпоследнем этапе расчёта урона учитывается сопротивляемость или уязвимость цели к наносимому типу повреждения. Например, огненные создания могут быть малочувствительны к атакам, основанным на огне, а многие создания практически невозможно ранить обычным железом. Бывает и наоборот. Некоторые существа особенно чувствительны к некоторым видам повреждения.
Помимо сопротивляемости с уязвимостью цели в расчёте урона также участвует интенсивность атаки, играющая по отношению к сопротивляемости такую же роль, которая играла пробивная сила удара по отношению к броне. Проиллюстрируем работу интенсивности на примере. Например, вы атакуете огнём жаропрочную цель. В обычном случае урон не очень высок. Но теперь вы используете более интенсивное, высокотемпературное пламя. При его новой температуре начинают гореть даже жаропрочные материалы и урон резко возрастает. Или яд. Более слабый яд может практически не оказать влияния на организм, устойчивый к нему, но более сильные яды одолеют даже такое существо.
Расчёт осуществляется по следующей формуле:
Нанесённый_удар = K1 * Прошедший_броню_удар
где K1 — коэффициент, зависящий от сопротивления цели и интенсивности удара.
Как и на предыдущем этапе возможны три варианта расчёта K1, в зависимости от соотношений между собой интенсивности и сопротивляемости, а также наличие уязвимости.
Предыдущая глава |
↓ Содержание ↓
↑ Свернуть ↑
| Следующая глава |