- Логика на картах “Охота на маяк”
На картах “Охота на маяк” боты переключают внимание с одного маяка на другой только по истечении таймера полностью.
Но это ведь не логично! У самих игроков начинает авто-пинговать следующий маяк за 20сек. до истечения таймера текущего.
Предлагаю сделать тоже самое и ботам и более того, не просто сделать перенаправление на следующий маяк за 20сек. а усложнить эту логику тем
что бот будет рассчитывать свое время путешествия до следующего маяка. Объясню: если вы на фрегате а следующая цель захвата находится на расстоянии
более 8000м вы наверняка не успеете приехать к началу захвата если поедете четко по времени за 20сек до окончания таймера. Чтоб успеть вам надо обладать
скоростью не менее 400м/с, быть уже на нее разогнанным и развернутым в направлении точки движения. Поэтому вы едете заранее. Вот и бот должен рассчитывать
свою скорость корабля и расстояние до следующей цели и если потребуется выезжать немного раньше чем 20сек.
- Логика на картах “Контроль”
Всегда совершают одну и ту же ошибку - несутся сразу к точке как только заспавнились. Я предлагаю ввести функцию анализа окружения. Алгоритм простой: если бот
едет в сторону маяка где: а) никого нет, б) есть одна цель и вокруг нее никого нет - то бот продолжает движение и пробует сцепиться с противником 1 на 1 (в случае если там
1 противник). Если целей в точке куда бот движется больше одной он либо останавливается и ждет спавна другого бота либо начинает двигаться вместе с другим ботом в
случае если он сам заспавнился а один бот уже перед ним ожидает подкрепления. Этот анализ должен работать в течении всего времени движения бота к нужной ему точке
или цели. Потому как пока он движется ситуация может измениться. Первый вариант событий: Если бот изначально не видел противника в точке куда направлялся а уже
почти к самому своему пребытию обнаружил что противников там больше 1го то бот разворачивается и начинает ехать назад в сторону респа чтоб после появления
следующего бота направиться к нему и сократив с ним расстояния до минимального (до 1км) развернуться и ехать уже с ним к той точке куда изначально ехал. Второй
вариант: Если по прибытию к точке назначения бот обнаруживает что противников больше 1го но он видит в радиусе видимости в другом месте 1го противника (либо
вообще пустой маяк) и это расстояние короче чем путь к респу то он едет ко второй новой точке пути. Таким образом я пытаюсь им дать немного базовой логики того
как бы я играл сам: если я вижу что на маяке куда я двигался больше 1го врага я смотрю можно ли попробовать другой рядом закрутить - если и там тоже врагов больше
я начинаю смещаться ближе к респу чтоб соединиться с другими членами команды и уже вместе куда-то двинуться. Иногда боты остаются “дефать” маяки и отдаются
там если приходит несколько врагов. Вот в этой ситуации тоже неплохо было бы чтоб он сменил логику поведения и поехал отступать к респу либо попробовал захватить
другой маяк.
Пока я хотел бы увидеть эти улучшения. А в будущем станет понятно как еще больше разнообразить логику ботов. После этих улучшений потом станет понятно например
аспект выбора кораблей (сейчас они просто рандомно выбираются) и вообще как улучшить логику бота на конкретной роли (например на инже боты могли бы работать
интереснее). Если боты станут умнее то и не придется тарге умножать урон (насколько он там нее умножается я понятия не имею но это ощутимо мягко говоря).