да никак, просто действие-противодействие на игрока или другого перса. В зависимости от сложности, ИИ будет ставить блоки, ударять в соответствии с наиболее полезным ударом итд итд . . . Если игрок ударяет рукой, например, то в зависимости от сложности ИИ будет делать серию дейсвтий. Не знай что сказать, почти все просто. Ложности лишь в криптинг-исполнении действий для ИИ, а также при дургих случаях, как например интерактивные объекты на карте боя итд. 2Д файтинги (где вид преимущественно с боку) отличаются простотой сборки и высокой по сравнению со свободными скоростью, за счет ограничения вида и зон действия. ТеккенТ, Стрит-Файтер, МорталКомбат - яркие представители. Я бы сказал что там вовсе нет интеллекта (нет сложный перемещений, мало интерактивности), но это не так.
Вычисления производятся в файтингах основываясь на принципе Действие ( или бездействие) - Ответ на действие.
Вот я высказался по поводу общих принципов ИИ в файтинг-играх основанных на 2Д (вид с боку) системе боя.
Сообщение отредактировал gforcer - Четверг, 18 Февраля 2010, 15:01
ну у противника же тоже в целом не мало ударов, и пользоваться наиболее полезным это как-то не правильно) а бить одни и теже ответы тоже как-то не интересно, пару раз поиграв становится не интересно т.к. знаешь что будед при твоём 1-ом ударе или бездействии..
Сообщение отредактировал CostUm - Четверг, 18 Февраля 2010, 15:16
CostUm, скажи прямо, пожалуйста, что тебе надо, обще-теоретические советы или практические советы, объяснения и примеры ?
Если у тебя мало опыта в подобном кодинге, тогда тебе надо сделать кучу нароботок, начиная от вычислений заканчивая сложными графическими приемами. В блитце, как и в большинстве других языков, есть два метода генерации случайных чисел, объяснять буду на примере BlitzBasic 1.99: RND(i,k) - функция возвращает случайное число, в проммежутке между I и K. I и K могут быть как целыми (int) так и дробными (float). В большинстве случаев генератору назначают случайное стартовое число методом милисекунд процессора (MilliSecs). Генератор для вычисления использует процессор.
Пример:
Code
Action=RND(1,5);Случайно назначаем переменной число
Select Action Case 1;Удар рукой ;Какие-то действия Case 2;Удар ногой ;Какие-то действия Case 3;Удар Головой ;Какие-то действия Case 4;Защекотать до серти ;Какие-то действия Case 5;Драпать ;Какие-то действия End Select