PDA

Просмотр полной версии : Некоторые боевые формулы



Support3
07.07.2017, 16:17
Уважаемые игроки RomeWar!

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

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

НО. Сами формулы объяснять не буду, если уделить им время и немного подумать, во всём можно разобраться самим.


Сработка ловкости против ловкости + обереги.

Статы.

“% увернуться_1” = (уровень цели)/(уровень бьющего) * ( 20 + (ловкость цели – ловкость бьющего)*2 + (уровень цели)/(уровень бьющего))

Если “% увернуться_1” > 100 – % увернуться ставится 100
Если “% увернуться_1” < 0 - % увернуться ставится 0

Оберег.

“% попасть_оберег_1” – оберег антиловкости бьющего + -(оберег –антиловкости цели)
Если “% попасть_оберег_1” < 0, то “% попасть_оберег” ставится 0
Если > 0, то “% попасть_оберег_2” = (“% попасть_оберег_1” * “% попасть_оберег_1”) / (150 * 150)

Шанс увернутся, с учетом оберега = (1 – “% попасть_оберег_2”) * “% увернуться_1”


Сработка удачи на ловкость + обереги.

Статы.

Если ловкость цели > ловкости бьющего,
То
“% попасть_удачей” = (уровень бьющего)/(уровень цели) * (20 + ((удача бьющего – удача цели)*1 – (ловкость цели – ловкость бьющего))*2 + (уровень бьющего)/(уровень цели))
Иначе
“% попасть_удачей” = (уровень бьющего)/(уровень цели) * (20 + (удача бьющего – удача цели)*2 + (уровень бьющего)/(уровень цели))

Если “% попасть_удачей” > 100, то “% попасть_удачей” ставится 100
Если “% попасть_удачей” < 1, то
“% попасть_удачей”: если удача бьющего > удачи цели -> Random(ГПСЧ) * (удача бьющего/ловкость цели)
Random(ГПСЧ): от 0 до 5

Оберег.

“% увернуться_оберег_1” – оберег антиудачи цели + -(оберег –антиудачи бьющего)
Если “% увернуться_оберег_1” < 0, то “% увернуться_оберег” ставится 0
Если > 0, то “% увернуться _оберег_2” = (“%увернуться _оберег_1” * “% увернуться _оберег_1”) / (150 * 150)

Шанс достать удачей, с учетом оберега = (1 – “% увернуться_оберег_2”) * % попасть_удачей ”


Сработка ярости на ловкость + обереги.

Статы.

Если ловкость цели > ловкости бьющего,
То
“% попасть_яростью” = (уровень бьющего)/(уровень цели) * (10 + ((ярость бьющего – ярости цели)/1 – (ловкость цели – ловкость бьющего))*2 + (уровень бьющего)/(уровень цели))
Иначе
“% попасть_яростью” = (уровень бьющего)/(уровень цели) * (10 + (ярость бьющего – ярость цели)*2 + (уровень бьющего)/(уровень цели))

Если “% попасть_яростью” > 100, то “% попасть_яростью” ставится 100
Если “% попасть_яростью” < 1, то
“% попасть_яростью”: если ярость бьющего > ярости цели -> Random(ГПСЧ) * (ярость бьющего/ловкость цели)
Random(ГПСЧ): от 0 до 5

Оберег.

“% увернуться_оберег_1” – оберег антиярости цели + -(оберег –антиярости бьющего)
Если “% увернуться_оберег_1” < 0, то “% увернуться_оберег” ставится 0
Если > 0, то “% увернуться _оберег_2” = (“%увернуться _оберег_1” * “% увернуться _оберег_1”) / (150 * 150)

Шанс достать яростью, с учетом оберега = (1 – “% увернуться_оберег_2”) * % попасть_яростью ”

Вероятности достать по удаче и по ярости рассчитываются независимо друг от друга.


Мастерство/сила.

"% сработки_мастерства" = [ ((мастерство боя бьющего + -(минус мастерство боя цели)) * (мастерство боя бьющего + -(минус мастерство боя цели))) / (150 * 150) ] * 100
Если ((мастерство боя бьющего + -(минус мастерство боя цели)) < 0, то "% сработки_мастерства" ставится 0
Если "% сработки_мастертсва" > 100, то "% сработки_мастерства" ставится 100

"минимальный урон" = "% сработки_мастерства" - 5%
"максимальный урон" = "% сработки_мастерства" + 5%

урон_силой = [ Random("минимальный урон","максимальный урон") / 100 ] * сила бьющего


Мастерство/оружие.

"сработка_оружия_1" = "максимальный урон оружия" - "минимальный урон оружия"

"% сработки_мастерства" = [ ((мастерство боя бьющего + -(минус мастерство боя цели)) * (мастерство боя бьющего + -(минус мастерство боя цели))) / (150 * 150) ] * 100
Если ((мастерство боя бьющего + -(минус мастерство боя цели)) < 0, то "% сработки_мастерства" ставится 0
Если "% сработки_мастертсва" > 100, то "% сработки_мастерства" ставится 100

"минимальный урон" = "% сработки_мастерства" - 5%
"максимальный урон" = "% сработки_мастерства" + 5%

"сработка_оружия_2" = [ Random("минимальный урон","максимальный урон") / 100 ] * "сработка_оружия_1"

урон_оружия = "максимальный урон оружия" + "сработка_оружия_2"


Броня.

"Броня_1" -> величина брони в точке удара

"% сработки_защиты" = [ ((защита цели + -(минус защита бьющего)) * (защита цели + -(минус защита бьющего))) / (150 * 150) ] * 100
Если ((защита цели + -(минус защита бьющего)) < 0, то "% сработки_защиты" ставится 0
Если "% сработки_защиты" > 100, то "% сработки_защиты" ставится 100

"минимальная защита" = "% сработки_защиты" - 5%
"максимальная защита" = "% сработки_защиты" + 5%

Сработка_брони = [ Random("минимальная защита","максимальная защита") / 100 ] * "Броня_1"

__________________________________________________ __________________________________________________ ______________________________________

PS. Отвечаю на один популярный вопрос: нет, эти формулы не новые и никто их не менял и ничего не добавлял. Т.е. они существуют в таком виде давно.

ГенералПанк
22.11.2017, 16:36
немного дополню, что касается сработки ярости и удачи на ловкость.
расчет их идет конечно независимо, но до той поры пока один из указанных статов не перебьет по количеству ловкость. т.е. если у игрока 1 удачи больше чем ловки игрока 2, то сработка ярости идет из расчета что ловка игрока 2 = 0 (аналогично и для удачи, если ярости больше чем ловкости соперника).
P.s. понимаю что вы все игроки тут умные и я вряд ли что новое вам сказал, но мне как ловкачу-новичку этот момент открылся на практике, может это уточнение кому-то пригодится.

Кот_Василий
22.11.2017, 17:35
Не считаем обереги. только статы.
Игрок Вася имеет 1000 ловкости, 0 ярости и 0 удачи.
Игрок Брен имеет 1050 ярости, 0 ловкости и 0 удачи.
Брен бьет Васю "яростным, достав противника".
Игрок Федя имеет 1050 ярости, 0 ловкости и 50 удачи.
Федя бьет Васю "удачным яростным, достав противника".

Evgen
24.11.2017, 10:08
Вопрос - почему все хотят убить Васю?!*1*