Поясняю за ии в гонках
мужики, поздравляю с пятницей!
Играя в motoGP на своей нинтендо вии я задумался о том, как легко сделать ии других водителей для гонок, и задумался о том какие ваще существуют способы проработки ии для гонок и какие они бывают. И щас я вам расскажу чо я узнал
1. начнем с самого простейшего. Это так называемые СПЛАЙНЫ. Короче это просто кривая линия длинной во всю трассу которая дает понять боту где он может ехать, где не может, и она специально так выверена разработчиками с помощью магии математики чтобы бот без затруднений ехал на максимальной скорости. Такой простейший принцип поведения ботов можно встретить в стареньких игрушках типо Ridge Racer, Daytona USA и в motoGP
2. вторым по развитии вид ии в гоночках идут «резиночные» боты. По сути они работают так же как предыдущие но в случае если игрок вырывается на первое место машинка просто усиливается и приклеивается к машинке игрока шарите да, резиночные типо поняли? Выкупили? Типо резинкой привязана))) таких игр не мало ваще, это используется в аркадка и такую концепцию можно встретить наверное во всех нфсках, марио карте, the crew, burnout paradise
3. дальше будем рассматривать более четный ии, это по сути физический водитель которым управляет бот, и нажимает на те же кнопки что и игрок, но математически высчитывает на сколько давить на газ и под каким градусом поворачивать руль, скажите круто да. Такой вид ии можно увидеть в Wreckfest, iRacing, Assetto Corsa
4. если вы еще читаете этот пост то представляю вам следующую ступень развития ии гонок которая называется FSM (Finite State Machine). В ядре это такой же умный болванчик как прошлый, машиной управляет бот, и нажимает на те же кнопки что и игрок, но сильно прокаченый в плане приеме решений. У бота есть разные состояния (вам не интересно какие) и условия для них, и все работает по принципу «если условие А то действие Б». со временем эту систему прокачали до целых деревьев поведения. Логика сводится к тому что боту дали больше контекста, и он каждый кадр обрабатывает всю свою иерархию. Это можно встретить в ф1 23\24, grid, motorstorm
5. ну и в конце самый проработанный и самый интересный ии. Это ии которому дали миллион раз покататься по трассе, и за каждое быстрое движение ему давали награду, и давали штраф за аварии. В процессе машинного обучения он доходит до того что проходит гонку не просто быстрее всех киберспортсменов, а открывает такие срезы о которых не знал даже разработчик. Эту систему щас активно пиарит сони в своем гранд туризма 7, бота зовут софи кстати.
Кстати я не люблю гонки всем пока
upd: так же сущевствует некий костыль, который я не могу отнести к конкретной модели поведения, по этому вынесу ее за список. говорю я именно про телепортирование ботов.
Иногда случается так, что бот вылетает за трассу и пока игрок не видит, игра его телепортирует на координату чтобы исправить недочет. хотя в основном это используется как помощь резинке, когда игрок сильно выезжает вперед и игра понимает что боты не успевают, она просто тепает их к игроку