Форум HeroesWorld-а - Показать сообщение отдельно - Алгоритм на поле боя ИИ
Показать сообщение отдельно
#8
Старый 17.01.2020, 18:54
  #8
^
Tarmo
 
Аватар для Tarmo
📖
Регистрация: 29.05.2018
Адрес: Спб
Сообщения: 57
1448
Отправить сообщение для  Tarmo с помощью ICQ
Регистрация: 29.05.2018
Адрес: Спб
Сообщения: 57
1448
Отправить сообщение для  Tarmo с помощью ICQ
По умолчанию
Re: Алгоритм на поле боя ИИ

Формула определения Велью стека не верная не много или криво записана, вот точная формула

FV_юнита=floor((sqrt( Fight_Value+(Fight_Value*(Атака_Героя+ Бонус_Атаки )/20)*(Fight_Value+(Fight_Value*Защита_Героя+Бонусы_ Защиты/20) ))

И если выражение Fv_юнита* Сумма_Юнитов > 2*Fight_Value * N верно, то АИ будет бить по мейн стекам, если не верна, то будет избегать их и бить по единичкам.
floor - округление полученного числа в меньшую сторону.
Где бонусы это сумма бонусов за родную землю(+0 или +1) и бонус юниту от героя спеца по этому юниту в единицах. К примеру Галтран +1 на 1 уровне даст скелетам. Fight_Value велью юнита.

Данной формулой можно пользоваться при нападении на Черные Башни с черным или Золотым драконом.

Так же более общая формула для смешанной армии для определения в какой момент алгоритм Аи изменяется в бою

Σ(Ni*floor(sqrt(V(vi,ha,b1)*V(ai,hd,b1))) > 2*vj*Nj,
где V(vi,ha,b1)=FV_юнита.
Если формула не верна то АИ будет стараться закрывать стрелков, бить по тем кто меньше ответный удар нанесет, держаться на расстоянии от удара мейн стека, бить по существу с которого снят ответный удар, и который ранен. И вообще много разных коэффициентов, в общем урон будет по Велью_Юнита*Урон/ХП_Юнита
__________________
isq 742235848
isq 742235848
Tarmo вне форума
Ответить с цитированием