Имбовость бладсикера
Имеем флаг блейдмейла — 1 штука, когти сикера — 2 штуки, навороченная тест-дота 6.83d — одна штука. Мешаем, но не взбалтываем.
Лина кастует волну 2го уровня по сикеру. До этого сикер прожал когти на себя и на лину, а также активировал блейдмейл.
Лине пришлось вытерпеть урона:
Сикеру пришлось вытерпеть урона:
Почему?
Пусть КА — когти на лине, а КБ — на блудсикере.
Сикер получает 135 урона. Срабатывают КА, ставят флаг «это когти», умножают урон и выписывают ему еще 54 урона полезной нагрузки. Т.к. флаг когтей установлен, КБ игнорируют этот дополнительный урон, и сразу переходят к умножению входящего урона — и дают еще 54 урона.
Теперь вспомним, что мы до сих пор не получили ни одной единицы этих уронов — всё происходит еще до реального получения урона (и смерти юнита, если он смертелен). Блейдмейл видит, что по сикеру хотят нанести 54 урона, 54 и 135 урона, и начинает их отражать.
Отражение когтей проходит без проблем — они четко говорят, что мы когти, и не увеличивают друг друга. Но вот 135 урона от волны, отраженные блейдмелом, нужно докрутить! И снова КА и КБ увеличивают этот урон на 40%, создавая еще 2 события увеличения урона.
В итоге сикер возвращает 40*4 = 260% полученного урона, если накинуть на себя и цель когти. Естественно, урон не должен превышать 196%, т.к. увеличения мультипликативны, но кого это волнует, если это дота фрога, не так ли?
Лина кастует волну 2го уровня по сикеру. До этого сикер прожал когти на себя и на лину, а также активировал блейдмейл.
Лине пришлось вытерпеть урона:
Сикеру пришлось вытерпеть урона:
Почему?
События развивались следующим образом
Пусть КА — когти на лине, а КБ — на блудсикере.
Сикер получает 135 урона. Срабатывают КА, ставят флаг «это когти», умножают урон и выписывают ему еще 54 урона полезной нагрузки. Т.к. флаг когтей установлен, КБ игнорируют этот дополнительный урон, и сразу переходят к умножению входящего урона — и дают еще 54 урона.
Теперь вспомним, что мы до сих пор не получили ни одной единицы этих уронов — всё происходит еще до реального получения урона (и смерти юнита, если он смертелен). Блейдмейл видит, что по сикеру хотят нанести 54 урона, 54 и 135 урона, и начинает их отражать.
Отражение когтей проходит без проблем — они четко говорят, что мы когти, и не увеличивают друг друга. Но вот 135 урона от волны, отраженные блейдмелом, нужно докрутить! И снова КА и КБ увеличивают этот урон на 40%, создавая еще 2 события увеличения урона.
В итоге сикер возвращает 40*4 = 260% полученного урона, если накинуть на себя и цель когти. Естественно, урон не должен превышать 196%, т.к. увеличения мультипликативны, но кого это волнует, если это дота фрога, не так ли?
5 комментариев
Упаковать все с условиями что бы работало корректно.
ну или проверять все что бы сравнивало входящий и исходящий урон.