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. Отвечаю на один популярный вопрос: нет, эти формулы не новые и никто их не менял и ничего не добавлял. Т.е. они существуют в таком виде давно.
Администрация игры решила раскрыть основные боевые формулы. Точнее, наиболее сложные и противоречивые из них.
Простые принципы взаимодействия параметров и оберегов всем известны и описаны в 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. Отвечаю на один популярный вопрос: нет, эти формулы не новые и никто их не менял и ничего не добавлял. Т.е. они существуют в таком виде давно.