Об игре
Новости
Войти
Регистрация
Рейтинг
Форум
0:07
2888
 online
Требуется авторизация
Вы не авторизованы
   Форумы-->Вопросы и помощь в игре-->
1|2

Авторатака берсерком ближайшего врага
для Жеррри2:
Просто это непонятно графически. У нас же поле дискретное, не по миллиметрам рассчитывается.

Так-то ясно, что по этой формуле мы хотим просуммировать квадраты разниц координат и извлечь из этой суммы корень, и получить диагональ.
Но берс-то бежит вперёд (то есть по 5 "наименьшим клеткам" в размере 1, а не диагональным изначально, но потом резко сворачивает к псу. И вот когда он резко сворачивает - здесь 3 клетки диагональных *1,41... -> в итоге путь до собаки 5 клеток + примерно 4,24. Да ну даже если и округлить вниз - получится 9, то есть как и по прямой до мага. То есть по параллелограмму берсу бежать удобнее и короче?

Я сейчас не про координаты, а как это выглядит на глаз на поле боя.
Может я тупой просто, но не могу это понять именно наглядно, а не просто арифметически.
для Silco:
Берс стоит на клетке (8:10)
Ближайшая клетка, с которой он может ударить рога (9:12)
Расстояние до клетки sqrt( (9-8)^2 + (12-10)^2 ) = sqrt(5);
Ближайшая клетка, скоторой может ударить нимфу (10:10)
Расстояние до клетки sqrt( (8-10)^2 + (10-10)^2 ) = sqrt(4) = 2;

2 < sqrt(5), поэтому бьет нимфу
для Жеррри2:
Так я изначально про то и говорил)
Я видел бой где берс побежал на всю дальность хода вместо того, чтобы ударить стек, который относительно рядом стоял, потому что расстояние до него по прямой было две клетки, и он побежал в обход на 6

_даже если дорогу перегораживают_
для Silco:
Так что видимо тут просто баг
Я тогда не понял, а в чем тут тогда баг?
для Жеррри2:
То есть, я правильно понимаю, что учитывается вовсе не кратчайший путь, как указано в описании существа (оно ведь не летает и не телепортируется, а именно бежит), а именно вот эта невидимая, мнимая диагональ.
И берс, как в том бой от Silco - тупо не учитывает сам путь, а бежит по этой виртуальной диагонали?
для нагибатор888:
Сразу отвечу, я точно не знаю. omni знает намного лучше. Я опираюсь на собственный (небольшой) опыт.

Мне кажется, что выбор точки удара под берсом выполняется следующим образом.
Берется местоположение берсерка (x,y) и все точки, до которых он доходит и может ударить врага (т.е. на этих координатах нет своих и чужих войск, камней и тп). И из этих точек выбирается точка для удара (xx, yy), для которой
sqrt((x-xx)^2+(y-yy)^2) минимально
Кстати, в тему придумал интересный эксперимент. Что будет, если до такой ближайшей клетки без руны энергии берсерк не добегает. Например, если в бою с нимфами была бы занята клетка (10:11). То, использовав руну, берсерк туда побежит (ну если он с руной туда дотянется) или рога ударит?
[Сообщение удалено смотрителем omni // ]
Сегодня/завтра проведу серию тестов и вернусь сюда с точными ответами
для Жеррри2:
Судя по примеру и формуле - побежит до нимфы.

Но это тестить нужно
ну да, все правильно

ищет ближайшую (геометрически) клетку с которой можно ударить - туда и идёт

https://skr.sh/sPee0lt2aSr
то есть в такой ситуации он игнорит крайних магов, и на ярости бежит мимо них к центральному
https://mirror.heroeswm.ru/forum_messages.php?tid=2969266&page=0#54132971
нашёл октябрьскую тему)
ещё из интересного:

https://skr.sh/sPeqWwb1Tjl
в такой ситуации у него есть две ближайшие клетки, и на каждой из них есть два доступных для удара стека

и он действительно можно побежать в любую из этих двух клеток и потом ударить любого из двух магов)

это конечно забавно с точки зрения реальной логики "ярости", но по алгоритму всё четко
https://skr.sh/sPe8kQTDToY
со стрелочками)
омни как всегда лучший
https://skr.sh/sPefoTEHhe4
нужно больше стрелочек!

16 равновероятных вариантов для берса)
для omni:
Спасибо! Максимально подробно и понятно теперь!

Лунник в знак благодарности отправлен:)
Пес ближе
Тема давно не обновлялась и считается устаревшей для дальнейшего обсуждения.

1|2
К списку тем
2007-2025, онлайн игры HeroesWM