О шансе попасть атакой

База знаний мира Alkar Lineage 2.

Сообщение Enceladus » 17 сен 2009, 12:37

Данные получены reverse engineering'ом краденого C4 сервера.

Сперва берём evasion цели и считаем modified_evasion:
modified_evasion = evasion * evasion_move_mode_multiplier + evasion_move_mode_adder
evasion_move_mode_multiplier и evasion_move_mode_adder - модификаторы evasion в зависимости от режима передвижения.
Всего существует 4 режима передвижения - бег (run), ходьба (walk), стояние на месте (stand), сидение на заднице (sit). Каждому из этих режимов соответствует своя пара evasion_move_mode_multiplier/evasion_move_mode_adder.
Начальные значения (для всех режимов):
evasion_move_mode_multiplier = 1
evasion_move_mode_adder = 0
Эти значения могут модифицироваться скиллами. Собственно, есть только 1 такой скилл - пассивка Acrobatic Move. Она добавляет некторое значение к evasion_move_mode_adder для режима run:
Acrobatic Move 1: +4
Acrobatic Move 2: +5
Acrobatic Move 3: +6

Теперь считаем advantage:
advantage = modified_evasion - accuracy
accuracy - параметр атакующего, конечно же.

Считаем base_hit_chance:
base_hit_chance = 5 + MAX(-26811.9 * (advantage - 23.59581247155212), 0)^(1/3)
MAX - функция, возвращающая значение своего максимального аргумента. В данном случае она будет неотрицательна.
Запись x^y означает "x в степени y". В данном случае - извлечение кубического корня из значения MAX.
В конце сообщения я дам таблицу зависимости base_hit_chance от advantage.

Считаем hit_loc_bonus.
Пространство вокруг цели можно условно разделить на 4 сектора по 90 градусов - front (спереди, "в лоб"), back (сзади, "в спину") и 2 side ("бока").
Иллюстрация (вид сверху):
Изображение
Значение hit_loc_bonus зависит от того, из какого сектора жертвы нападающий производит атаку.
Если нападающий стоит во front, то hit_loc_bonus = 1
Если нападающий стоит в side, то hit_loc_bonus = 1.2
Если нападающий стоит в back, то hit_loc_bonus = 1.3

Вычисляем hit_height_bonus
Пусть dz - разница высот, на которых стоят цель и атакующий персонаж (из координаты z цели вычитаем координату z атакующего).
Если dz <= -1100 то hit_height_bonus = 0
Если -1100 < dz <= -300 то hit_height_bonus = 1.375 + 0.00125 * dz
Если -300 < dz <= 100 то hit_height_bonus = 1
Если 100 < dz <= 500 то hit_height_bonus = 1.25 - 0.0025 * dz
Если 500 < dz то hit_height_bonus = 0
Иными словами, hit_height_bonus меняется от 0 до 1, то есть он может только уменьшить ваш шанс попасть. Атаковать цель сверху вниз можно гораздо успешнее, чем снизу вверх (сверху вниз можно стрелять гораздо дальше, чем с таким же шансом попасть снизу вверх).

Наконец, считаем final_chance:
final_chance = MIN(MAX(base_hit_chance * hit_loc_bonus * hit_height_bonus, 30), 98)
MIN - функция, возвращающая значение своего минимального аргумента.
Иными словами, шанс попасть атакой не может быть меньше 30% и больше 98%.

Таблица зависимости base_hit_chance (вторая колонка) от advantage (первая колонка):
Код: Выделить всё
-50    130.43
-49    129.86
-48    129.28
-47    128.70
-46    128.11
-45    127.52
-44    126.92
-43    126.32
-42    125.71
-41    125.09
-40    124.47
-39    123.84
-38    123.20
-37    122.56
-36    121.91
-35    121.25
-34    120.59
-33    119.91
-32    119.23
-31    118.54
-30    117.85
-29    117.14
-28    116.42
-27    115.70
-26    114.97
-25    114.22
-24    113.47
-23    112.70
-22    111.93
-21    111.14
-20    110.34
-19    109.53
-18    108.70
-17    107.87
-16    107.01
-15    106.15
-14    105.27
-13    104.37
-12    103.46
-11    102.53
-10    101.58
-9     100.61
-8     99.62
-7     98.61
-6     97.58
-5     96.53
-4     95.45
-3     94.34
-2     93.21
-1     92.04
0      90.85
1      89.62
2      88.35
3      87.04
4      85.69
5      84.30
6      82.85
7      81.34
8      79.78
9      78.15
10     76.43
11     74.64
12     72.74
13     70.74
14     68.60
15     66.31
16     63.83
17     61.13
18     58.14
19     54.76
20     50.85
21     46.13
22     39.98
23     30.19
24     5.00
25     5.00
26     5.00
27     5.00
28     5.00
29     5.00
30     5.00
31     5.00
32     5.00
33     5.00
34     5.00
35     5.00
36     5.00
37     5.00
38     5.00
39     5.00
40     5.00
41     5.00
42     5.00
43     5.00
44     5.00
45     5.00
46     5.00
47     5.00
48     5.00
49     5.00
50     5.00
Последний раз редактировалось Enceladus 17 сен 2009, 12:38, всего редактировалось 1 раз.
Глокая куздра штеко будланула бокра и курдячит бокрёнка.
Аватара пользователя
Enceladus
Diablo II Member of Fame
Diablo II Member of Fame
 
Автор темы
Сообщения: 2329
Зарегистрирован:
21 авг 2007, 06:38
Has thanked: 0 time
Have thanks: 60 times

Сообщение Macmep » 17 сен 2009, 12:38

Кому-то это важно или нужно?
♂DEEP♂DARK♂FANTASIES♂
♂DO♂YOU♂LIKE♂WHAT♂YOU♂SEE?♂
Аватара пользователя
Macmep
Нищеброд
Нищеброд
 
Сообщения: 11346
Зарегистрирован:
14 дек 2005, 08:50
Откуда: Днепр
Has thanked: 76 times
Have thanks: 301 times
Играю в: что смогу скачать

Сообщение Enceladus » 17 сен 2009, 12:40

Кому-то это важно или нужно?

Ламерам - нет, конечно же. :} Так что не трать тут своё время.
Глокая куздра штеко будланула бокра и курдячит бокрёнка.
Аватара пользователя
Enceladus
Diablo II Member of Fame
Diablo II Member of Fame
 
Автор темы
Сообщения: 2329
Зарегистрирован:
21 авг 2007, 06:38
Has thanked: 0 time
Have thanks: 60 times

Сообщение aXeSS » 17 сен 2009, 12:45

Эту бы энергию, да на изучение чего-то действительно полезного.
Аватара пользователя
aXeSS
Школота
Школота
 
Сообщения: 41
Зарегистрирован:
31 дек 2005, 13:27
Has thanked: 0 time
Have thanks: 0 time

Сообщение Enceladus » 17 сен 2009, 12:48

Эту бы энергию, да на изучение чего-то действительно полезного.

"Энергию"? :} Полчаса на реверс, 15 минут - на статью.
"Полезного"? Я ведь не знаю - что тебе полезно... Некоторые вот говорят, что полезно мочу пить.
Глокая куздра штеко будланула бокра и курдячит бокрёнка.
Аватара пользователя
Enceladus
Diablo II Member of Fame
Diablo II Member of Fame
 
Автор темы
Сообщения: 2329
Зарегистрирован:
21 авг 2007, 06:38
Has thanked: 0 time
Have thanks: 60 times

Сообщение Sandman » 17 сен 2009, 12:55

Macmep писал(а):Кому-то это важно или нужно?

Ну, вообще-то тебе бы стоило спросить этого кого-то перед тем, как писать своё сообщение, но в силу своей эгоистичности ты даже об этом не подумал, малыш.

aXeSS писал(а):Эту бы энергию, да на изучение чего-то действительно полезного.

Извини, я считаю, что ты слишком много энергии тратишь на написание бесполезных сообщений на форуме. Займись чем-то полезным.
PS: Ты не пьёшь мочу?
Спасибо за внимание, пардон за рак мозга.
Sandman - это чёс. Не воспринимай серьёзно.
Аватара пользователя
Sandman
Местный
Местный
 
Сообщения: 1025
Зарегистрирован:
17 окт 2002, 20:12
Откуда: Украина, Киев
Has thanked: 0 time
Have thanks: 6 times

Сообщение Macmep » 17 сен 2009, 12:56

Enceladus писал(а):
Эту бы энергию, да на изучение чего-то действительно полезного.

"Энергию"? :} Полчаса на реверс, 15 минут - на статью.
"Полезного"? Я ведь не знаю - что тебе полезно... Некоторые вот говорят, что полезно мочу пить.

Твоя статья , явный конкурент моче , я это гарантирую :lol:
Sandman
вуф-вуф
♂DEEP♂DARK♂FANTASIES♂
♂DO♂YOU♂LIKE♂WHAT♂YOU♂SEE?♂
Аватара пользователя
Macmep
Нищеброд
Нищеброд
 
Сообщения: 11346
Зарегистрирован:
14 дек 2005, 08:50
Откуда: Днепр
Has thanked: 76 times
Have thanks: 301 times
Играю в: что смогу скачать

Сообщение antifreez3 » 17 сен 2009, 13:04

сверху вниз можно стрелять гораздо дальше, чем с таким же шансом попасть снизу вверх


Стреляя скажем со стены замка,range выстрела будет выше 900?Не совсем понял эту часть.
http://games.alkar.net/phpBB/memberlist.php?mode=viewprofile&u=90823
I remeber <3
Аватара пользователя
antifreez3
Путешественник
Путешественник
 
Сообщения: 266
Зарегистрирован:
21 июл 2009, 03:24
Has thanked: 0 time
Have thanks: 0 time

Сообщение aXeSS » 17 сен 2009, 13:09

Sandman писал(а):Извини, я считаю, что ты слишком много энергии тратишь на написание бесполезных сообщений на форуме. Займись чем-то полезным.
PS: Ты не пьёшь мочу?

Ага. Дата моего предидущего сообщения - Пн июн 01, 2009 18:48, вся энергия прямо в форум идет :lol:
Неа.

З.Ы: просто такая бредовая тема ,что не сдержался и откомментил. Это как записатся на футбол, и начать заниматься рассчетами траекторий полета мяча с учетом всех влияющих на него факторов, вместо того, чтобы улучшать свои навыки игры в футбол.
Аватара пользователя
aXeSS
Школота
Школота
 
Сообщения: 41
Зарегистрирован:
31 дек 2005, 13:27
Has thanked: 0 time
Have thanks: 0 time

Сообщение Enceladus » 17 сен 2009, 13:09

Стреляя скажем со стены замка,range выстрела будет выше 900?Не совсем понял эту часть.

Ну смотри, если стрелять сверху вниз, то шанс попасть начнёт падать только начиная с разницы высот в 300. И нулём он гарантированно станет начиная с разницы высот в 1100.
А если стрелять снизу вверх, то шанс начнёт падать уже при разнице высот в 100. При разнице высот от 500 и более он уже гарантированно будет нулевым.
Глокая куздра штеко будланула бокра и курдячит бокрёнка.
Аватара пользователя
Enceladus
Diablo II Member of Fame
Diablo II Member of Fame
 
Автор темы
Сообщения: 2329
Зарегистрирован:
21 авг 2007, 06:38
Has thanked: 0 time
Have thanks: 60 times

Сообщение Sandman » 17 сен 2009, 13:24

aXeSS писал(а):Это как записатся на футбол, и начать заниматься рассчетами траекторий полета мяча с учетом всех влияющих на него факторов, вместо того, чтобы улучшать свои навыки игры в футбол.

Ты не прав. В случае реального футбола игрок не в состоянии оценить ту кучу сил, которая действует на мяч, а игра - это система простая. Там параметров немного, симуляция скудненькая. К тому же ты как-то странно для себя трактуешь эту тему. Автор ведь не сказал, чтобы все бросали тренироваться играть. Но в этой теме можно узнать что-то реально интересное и применимое на практике. Как, например, приколы с разностью высот.
Спасибо за внимание, пардон за рак мозга.
Sandman - это чёс. Не воспринимай серьёзно.
Аватара пользователя
Sandman
Местный
Местный
 
Сообщения: 1025
Зарегистрирован:
17 окт 2002, 20:12
Откуда: Украина, Киев
Has thanked: 0 time
Have thanks: 6 times

Сообщение ШАХ » 17 сен 2009, 13:35

Enceladus писал(а):
Кому-то это важно или нужно?

Ламерам - нет, конечно же. :} Так что не трать тут своё время.


Ну написал ты тут свой набор букв.Пусть будет так.Кому интересно-тот,естественно,сядет потратит также 15 минут на изучение материала и достанет для себя оттуда полезную информацию.
Написал,но зачем же агрить на себя весь форум подобными фразами :"ламер" и т.п.Да ради Бога,пусть ты умник из умников и знаешь больше,чем кто либо живущих на этой земле,но зачем же все-таки так вести себя.?не пойму.Как по мне,то ты не умник,а тупо Бык
И даже тень великана падает к ногам карлика
Аватара пользователя
ШАХ
Путешественник
Путешественник
 
Сообщения: 278
Зарегистрирован:
12 май 2006, 16:09
Откуда: ЕкатеринославЪ
Has thanked: 1 time
Have thanks: 3 times

Сообщение Sandman » 17 сен 2009, 13:38

ШАХ писал(а):
Enceladus писал(а):
Кому-то это важно или нужно?

Ламерам - нет, конечно же. :} Так что не трать тут своё время.


Ну написал ты тут свой набор букв.Пусть будет так.Кому интересно-тот,естественно,сядет потратит также 15 минут на изучение материала и достанет для себя оттуда полезную информацию.
Написал,но зачем же агрить на себя весь форум подобными фразами :"ламер" и т.п.Да ради Бога,пусть ты умник из умников и знаешь больше,чем кто либо живущих на этой земле,но зачем же все-таки так вести себя.?не пойму.Как по мне,то ты не умник,а тупо Бык

Шах, многие люди принимают лишнее на свой счёт. Ты вот тоже такой. Ответ был дан Мастеру. А Мастер тот ещё шалунишка, ты же знаешь. Не стоит так близко к сердцу принимать. Конечно же, речь шла не о таком папе, как ты. ^_^
Спасибо за внимание, пардон за рак мозга.
Sandman - это чёс. Не воспринимай серьёзно.
Аватара пользователя
Sandman
Местный
Местный
 
Сообщения: 1025
Зарегистрирован:
17 окт 2002, 20:12
Откуда: Украина, Киев
Has thanked: 0 time
Have thanks: 6 times

Сообщение Enceladus » 17 сен 2009, 13:39

ШАХ, я в который раз убеждаюсь, что ты не умеешь читать.
Глокая куздра штеко будланула бокра и курдячит бокрёнка.
Аватара пользователя
Enceladus
Diablo II Member of Fame
Diablo II Member of Fame
 
Автор темы
Сообщения: 2329
Зарегистрирован:
21 авг 2007, 06:38
Has thanked: 0 time
Have thanks: 60 times

Сообщение ШАХ » 17 сен 2009, 13:43

Enceladus писал(а):ШАХ, я в который раз убеждаюсь, что ты не умеешь читать.

Я констатирую факт.Вы с другом тролите весь форум,это,кажется,всем понятно!Разве нет?Иначе к чему была создана тема в разделе "Сплетни"?
Разве не с целью доказать -показать кто умнее?
Или фраза :
Enceladus писал(а):Ламерам - нет, конечно же. :} Так что не трать тут своё время.
совсем не об этом?
И даже тень великана падает к ногам карлика
Аватара пользователя
ШАХ
Путешественник
Путешественник
 
Сообщения: 278
Зарегистрирован:
12 май 2006, 16:09
Откуда: ЕкатеринославЪ
Has thanked: 1 time
Have thanks: 3 times

След.

Вернуться в База знаний

Кто сейчас на конференции

Посетителей: 4, из них зарегистрированных: 0, скрытых: 0 и гостей: 4 (находятся на конференции)
Этот раздел просматривают: нет зарегистрированных пользователей и гости: 4