Объсню своё мнение на примере языка программирования Visual Basic, которым владею на более-менее пользовательском уровне.
У нас в легенде существует слово "Рандом". В Visual Basic это звучит так: rnd("переменная"*100)+1
Дык, вот! :))
Спектакль следующий. Действующие лица:
rnd -Рандом (собственной персоной)
БЛОК - он же, возможность блокировать удар соперника/моба
УВОРОТ - он же, возможность увернуться от удара соперника/моба
КРИТ - он же, возможность нанести критический удар сопернику/мобу
В ПвЕ это работает так (ИМХО):
зашли в бой: rnd(БЛОК*100)+1(-+статы героя на второй параметр в скобках) + rnd(УВОРОТ*100)+1(-+статы героя на второй параметр в скобках) + rnd(КРИТ*100)+1 (-+статы героя на второй параметр в скобках)
Идёт бой (показатели брал из головы, сами понимаете, что рандом я просчитать не могу):
rnd(БЛОК*100)+1 = 20
rnd(УВОРОТ*100)+1 = 3
rnd(КРИТ*100)+1 = 3
Итого получаем, что есть 20% шанса заблочить, 3% увернуться, 3% нанести крит.
А теперь прикидываем статы моба в том же бою, по той же формуле:
rnd(БЛОК*100)+1 = 25
rnd(УВОРОТ*100)+1 = 7
rnd(КРИТ*100)+1 = 7
Ну, вот с дропом, таже фигня, приблизительно. только формула на одну "переменную" сложнее!
Надеюсь мысль уловили???!!!
З.Ы. А теперь усложняем формулу - ПвП! :)))
З.З.Ы. В ПвП урегулировать баланс (в данной ситуации) очень тяжело! Но, настроить баланс в ПвЕ, проще паренной репы! Только никто заниматься этим не будет. Да, и формула расчёта вероятности крита/блока/уворота (имею в виду ПвП, а не ПвЕ), я думаю, там гораздо сложнее. Точнее, не думаю, а уверен! Просто хотелось показать всем, как делается "сложный рандом".
З.З.З.Ы. Сорри, я пьян.... где лес помню, ядом уже обпился, а об стену головой сил нет биться.... по клаве с трудом попадаю. :)) Вот вам всем - "

"