AI в Сталкере

02.11.2009 21:47
Читаю про AI в Сталкере.

У меня вопрос только один: кто там дурак — геймдизайнер, который дал программистам задание сделать независимый от игрока мир «и чтобы боты могли сами разгадать тайну Зоны» или руководство проекта, которое не уследило за этим и дали возможность программистам долго и безуспешно придумывать «честный» AI?

Я был очень счастлив, когда я прошёлся за сталкером с одного уровня на другой, смотрел, как он ищет артефакты, находит их, потом возвращается на уровень к торговцу, подходит, торгует, выбирает новое задание и идёт дальше – жаль, что это не вошло в оригинальную игру.

То, что программисты честно взялись за интересную задачу, не задавая вопросов — вполне понятно. Оставленные без присмотра программисты и не такое натворить могут.

А разгадка проста: AI в играх не должен быть правдивым, а всего-навсего должен выглядеть правдоподобным.

Разница, на самом-то деле, огромна.

Вы, например, Fallout 2 помните? Вас не смущает, что на выходе из деревни вы видите чувака, которого придется месить в конце на базе, а после нахождения GECK-а внезапно всю деревню похищают? Или, например, на вас нападают рейнджеры, если вы плохой?

Первое — скриптованная сцена, второе — триггер, расставленный гемдизайнером. Что удивительно — главный злодей не решает сам выйти из базы, пройтись по миру и «случайно» встретиться с вами, рейнджеры не читают газет, из которых узнают, что вы поплохели, и не идут сами охотиться на вас.

Тем не менее, мир целостен, и игрок понимает «я плохой — на меня нападают хорошие», в то время, как это простая проверка «если карма меньше Х», безо всяких нейронных сетей и прочего говна. У игрока не возникает вопросов «а существует ли этот случайный корован после того, как я уйду с карты?». Нет, не существует.

Написать хороший, пусть даже «устойчивый к случайностям» сценарий в разы проще, чем пытаться делать настоящий AI.

Конкретно применительно к Сталкеру я бы сделал все проще: нагенерил несколько типовых сценок, типа «спасение NPC от волков», «спасение тебя NPC-ём», «смерть NPC», а потом бы «скармливал» игроку, до смерти NPC:

Берем несколько («пять», больше игрок просто не запомнит) случайных NPC, сводим их с игроком. Сводим их тупо, безо всяких «а на самом деле NPC в другой зоне, хотя игрок про это не знает». (Вообще, делать что-то, о чем игрок не знает и никогда не увидит — чрезвычайно тупое занятие). Сводим через какие-то промежутки времени («каждые 20 минут»).

NPC умер, желательно в присутствии игрока — замечательно, факт смерти отметили, перестаем подсовывать игроку этого NPC, вводим следующего.

Игрок не только не заметит подвоха, но и будет рад: кругом — знакомые лица.

Когда я в первый раз играл в «Сталкера», я специально искал следы умного AI. Кончилось все тем, что я несколько раз видел NPC с одним и тем же именем в разных зонах. И, собственно, всё.

Подобный эффект достигается, кстати, безо всяких AI, если дать NPC повторяющиеся имена. И я не шучу.

«Честный» интеллект хорош для игры, типа Sims 3 — когда персонажи живут на экране, а игрок за ними наблюдает. Тогда это «в тему». Тем не менее, AI в Sims не сложнее амебы, а игра все равно в топах по продажам.

Что лишний раз доказывает.

На эту заметку ссылаются:

  • Три вида геймдизайнеров
    CMEPTb
    Всё выше описанное тем не менее не отменяет того факта, что сделать умный АИ — чрезвычайно заманчиво. Благо — возможности проца позволяют. Можно сосредоточиться на создании контента, а экшен будет получаться сам.

    Вобщем-то первыми это поняли в валве с их режисером (или как он там называется).

    Автор ответил:
    Режиссер очень, очень легко пишется. Что не отменяет его гениальности, да.

    И был он в L2D =)

    Rageous
    Программистов оставили в покое. Рай на земле. Я бы сам рад года 3–4 пописать такой ИИ :)
    Просто у тебя и у них разные цели. Они надеялись сделать Игру Которая Перевернёт Мир и откроет такие возможности, о которых даже они не догадывались. Вроде как dz с его фантомом. А ты говоришь просто о качественной игрушке. Если даже честная физика в HL2 сделала difference, то что бы мог сделать честный AI?

    Автор ответил:
    Хавок сто лет был до HL2.
    А HL2 — просто обычный качественный шутер, и всё.
    > Вобщем-то первыми это поняли в валве с их режисером (или как он там называется).

    первая халва — это труЪ, а остальные их поделки… ну не знаю, видно, что старались, но получилась хуйня по-моему. Вторую проходил по инерции после первой, хотя и плеваться начал где-то с середины, первый эпизод — какой-то вообще невнятный высерок, а второй я так и ниасилил. Но валве всё равно молодцы, раз умудряются это впаривать.
    Тот же крайзис мне гораздо больше доставил.

    Теперь по сабжу. Мне таки тоже кажется, что главное в играх — это чтобы в них было интересно играть (удивительно, да?) Потому мне эта последняя мода на унылые песочницы вроде far cry 2 и сталкера довольно омерзительна. Какой там AI, сколько там квадратных километров диких байтов — насрать, если там делать нечего. Вообще считаю первый «far cry» примером идеального соотношения свободы и рельс в шутерах.

    А в игре, кстати, имена повторяются среди NPC. Становится заметно, если положить несколько отрядов каких-нибудь зомби. Выглядит как-то ограниченно.

    Или, к примеру, в «Чистом небе» было 2 NPC с одинаковыми именами. Первый был трупом, а второй раздавал квесты.

    ну вот в гта 4, например, очень много контента, который 99% игроков никогда не увидит.

    с одной стороны это расточительство, с другой стороны получилась очень роскошная крутотень.

    применительно к сталкеру — срежиссированные сцены — это, конечно, фундамент любого «живого мира», и именно про них нужно было задуматься в первую очередь. Тем не менее то что там описано в цитате про ходить за нпс и смотреть, как он выполняет квесты — это потенциально тоже очень сильная вещь. «жаль, что это не вошло в оригинальную игру»

    Автор ответил:
    Ага. Игроки просто мечтают смотреть, как кто-то проходит игру за них.

    В ГТА с контентом все ок, там другая проблема — не совсем понятно, куда развивать серию помимо core gameplay. Кстати, в одной игре из серии машины просто пропадали, если персонаж отворачивался к ним спиной. И ниче, почти никто не замечал несуразности.

    Если спросить игроков, они скажут, что не мечтают смотреть в игре телевизор, играть в дартс и слушать как нпс пиздят по мобильникам

    проходить игру за игроков, конечно, ненужно. Квесты, которые выполняют нпс, должны быть генерируемыми, а не сюжетными.
    удивительным образом получится «синглплеерное ммо», с тем отличием, что синглплеерное ммо может играть с каждым игроком в поддавки.

    собственно говоря, все игры «с песочницей» (elder scrolls, тот же gta и проч.) — это как раз и есть такое синглммо. весьма популярно, насколько могу судить

    Автор ответил:
    Все как раз наоборот: GTA усиленно создает ВИДИМОСТЬ. Интеллект у прохожих ровно один, причем простой. Если ты последишь за прохожим — ты очень удивишься. Кстати, почему-то никто не следит за прохожими — наверное, это не так интересно.

    Elder scrolls — да, пыталась заставить NPC спать в темное время суток и прочие глупые вещи, что часто приводило в очень смешным ситуациям и глючному говну.

    И, разумеется, это все очень сильно заскриптовано и никаким принятием решений от NPC не пахнет.

    Что касается Сталкера, то разговор идет о каком-то безумном количестве проебанного времени на ненужный функционал, если брать GTA, то там с контентом все нормально, то есть это не игра, где нельзя кататься на машинках, зато вон такой красивый дартс есть!

    гта создает ВИДИМОСТЬ, да

    я вспомнил про гта не потому что там АИ у нпс, а потому что там «безумное количество проебанного времени на „ненужный“ функционал», ну или, вернее, контент.

    т.е. он не то чтобы ненужный, но явно, явно избыточный: ну никто никогда, кроме последних обезумевших фанов, не будет просматривать до конца все передачи на всех телеканалах, слушать все токшоу на всех радиостанциях, смотреть все выступления во всех кабаре и т.д.

    С Elder Scrolls бог бы с ними (хотя надо сказать, что если бы нпс просто стояли столбами или нарезали круги по комнатам, было бы не лучше, чем со всеми существующими багами скриптов) — а вот мне вспомниается первая готика, которая была, в отличие от всего дальнейшего говна, приличной игрой.

    Готика — это кажетс первая игра вообще, в которой появились расписания у нпс. нпс дрыхли по ночам, вставали с рассветом, жарили мясо на огне, ели ит.п. РАЗУМЕЕТСЯ это были скрипты. Но важно не то, как это было реализовано, а то, что за нпс, оказывается, могло и может быть интересно наблюдать.

    Конечно, аи нпсей в игре типа сталкера не может быть полностью честным. Конечно, судьбы всех персонажей, которых игрок в данный момент не видит должны как-то приблизительно моделироваться а не «честно просчитываться». Конечно, если хочется сделать интересный встерчи с персонажами, и заствить игрока «следить за их судьбой», то в первую очередь нужно сделать системы срежессированных энкаунтеров.

    Это все ТАК.

    Тем не менее, если бы в игре был АИ, позволяющий нпс существовать в мире с какой-то видимой разумностью, если бы можно было встретить случайно в поле бота, который бы отсреливал монстров, собирал лут, выполнял квесты, запоминал игрока, сражался с дургими ботами у нас на глазах и т.п. — это было бы ОЧЕНЬ КРУТО.

    Если бы мы могли ходить за таким ботом и смотреть, как он существует — это было бы, да, новое слово в видеоиграх вообще (может быть в каких-нибудь играх в жанре элиты что-то такое сделано, я не уверен, в вангерах там или в ренжерах).

    Игроки бы, кстати, при всей кажущеся бусполезности фичи, были бы в от нее в восторге.

    Ну и есть такое ПОДОЗРЕНИЕ, что подобная фича открыла бы путь для геймлея, который ни я, ни вы сейчас предвидеть не можем.

    «Скрещение стратегии и рпг в открытом мире», о котором грезили на рубеже тысячелетия или что-то такое.

    Автор ответил:
    Добавление новой мини-игры — это нулевой риск: это просто, понятно, почти не сказывается на бюджете. Если GTA это делает — значит, у них все хорошо и есть лишние ресурсы.

    Что касается AI, то дешевле и проще посадить живых игроков и назвать это ММО. =)

    но это все разговор ни о чем, конечно.

    конкретная ситуация оценивается однозначно: ребята разработчики просто не поняли чего хотят, не расчитали усилий и просрали кучу времени и ресурсов на ничто — тут я не спорю, и вы правы

    (в ММО не сделаешь того, что можно сделать в сингле. просто потому что живого пользователя разработчикам приходится уважать. Не получится сделать глобальное реалистичное пвп или игру про грабить караваны. С ботами однако можно делать ВСЕ ЧТО УГОДНО. Риск зашкаливающий, конечно, но ЕСЛИ КТО-ТО СДЕЛАЕТ, то я скажу ему спасибо)

    Автор ответил:
    Напоминаю, что делать с ботами все, что угодно, можно было 10 лет назад в fallout-е.
    я понимаю, что ПУСТЬ СНАЧАЛА СДЕЛАЮТ В БЛИЗЗАРДЕ, а там посмотрим, но нужно же как то все-таки м е ч т а т ь. Двигатель прогресса это ведь.
    LXj
    Собственно, раздражает если я выхожу из зоны, возвращаюсь через полчаса -- а там совсем ничего не изменилось после моего ухода, и понятно, что зона всё это время была заморожена, то это раздражает. Достаточно от этого эффекта избавиться, чтобы игрок не терял immersion
    > Кстати, в одной игре из серии машины просто пропадали, если персонаж отворачивался к ним спиной.
    Это было во всех 3д играх третьей серии GTA III, GTA VC (из-за ограничений памяти), GTA SA (реже — из-за багов).

    Автор ответил:
    FANBOY ALERT.
    И в ГТА и Готике такое скриптовое поведение и разнообразие анимаций и т.п. — лишь для того, чтобы создать (более качественную) иллюзию разнообразия живого, А НЕ САМ ЖИВОЙ МИР.
    Правдоподобность — первый закон игровой робототехники.
    Второй — «красиво отдаваться» (цитата, по-моему, от нивальских программеров AI). И с этим как раз у Сталкера всё хорошо. Даже если сравнивать с Borderlands (да и с любым другим шутером в открытой местности), боты действительно умны, бросают гранаты куда надо, умело заходят с тыла, при этом не «читерят» и под редким снайперским огнём иногда честно начинают отступать «не туда», не поняв, где я сижу.

    Автор ответил:
    Я в какой-то другой Сталкер играл, видимо. В моем Сталкере AI был скопипащен и очень легко дурился. (http://nudnik.ru/entry/3294)
    Чтобы аргументированно спорить, надо обновить впечатления, с 2007 как-то всё подзабылось. Возможно, это в купе с достаточно высокой скоростью и моей криворукостью у них был хороший AI, не знаю. В любом случае фишку с «дефенсивным», ныкающимся AI при случае спизжу, спасибо: в реализации просто и, судя по всему, должно быть эффективно.
    Про снайпера, кстати, обратная сторона монеты есть в Borderlands. Понятно, что когда можно всю базу перестрелять из тёплого укрытия, это немного имба; но хотя бы иногда давать такую приятную возможность стоит. А тут в любом паке противников обязательно найдётся несколько берсерков, из-за чего после первых нескольких выстрелов бой превращается в CQC и приходится вытаскивать револьвер.
    Не, в целом это правильно, но _иногда_ надо давать порезвиться.

    Автор ответил:
    В Borderlands очень грамотное разделение мобов, да. Еще бы несколько типов не помешало, ибо приедаются. Но все равно — очень хорошо.
    Дмитрий Смирнов 2.0 RC
    > Если бы мы могли ходить за таким ботом и смотреть, как он существует — это было бы, да, новое слово в видеоиграх вообще (может быть в каких-нибудь играх в жанре элиты что-то такое сделано, я не уверен, в вангерах там или в ренжерах).
    Да, очень, очень интересное занятие. Спорим, пойти на улице в реальной жизни за человеком и проследить, куда он идет и то может быть интереснее. К тому же, адреналину больше.

    Автор ответил:
    За бабами — интереснее всего.
    > FANBOY ALERT.
    So true…
    Да уж, играть в сингле в «типа ММО» ещё глупее, чем просто играть в ММО. Однако вопрос: а можно ли само ММО улучшить такими методами? Пусть нпс реагируют на окружающее. Пусть задания, которые они дают, зависят от состояния окружающего мира. Или всё же ситуация, когда квест «Разагадать Тайну Жизни и спасти Вселенную» выполняется десять тысяч раз в день, является нормальной? Мне кажется, GOAP и графы решений могут тут работать для привнесения хотя бы ограниченного разнообразия в динамику мира.
    Плюс отдельные пассажи в интервью напомнили мне собственные же недавние сетования о судьбах ММО: http://bekabaka.livejournal.com/7245.html. Там конечно немножко про «нейросети», но вопрос ведь в общем-то не в технологии.

    Автор ответил:
    >Или всё же ситуация, когда квест «Разагадать Тайну Жизни и спасти Вселенную» выполняется десять тысяч раз в день, является нормальной?

    Абсолютно нормальной. Все игроки хотят иметь одинаковые возможности и одинаковый контент. Я вчера начал играть в игру и меня не волнует, что кто-то месяц назад разгадал Тайну. По тем же причинам всякие честно захватываемые врагом столицы лучше не делать: я нашел свободные 30 минут в день и пришел квесты делать, а какие-то долбоебы все испортили.

    На кой хрен реально нужена реалистичность? Главное — правдоподобность. Из всего пула радиостанций любой GTA я слушаю одну-две, но у каждого они свои. Плюс главное — ощущать свободу выбора и возможность воспользоваться.
    > У игрока не возникает вопросов «а существует ли этот случайный корован после того, как я уйду с карты?»

    Ещё как возникают. Особенно, если охранник корована подобрал ваш alien blaster и отобрать его не удалось.

    > нагенерил несколько типовых сценок, … а потом бы «скармливал» игроку, до смерти NPC

    До деинсталяции игры, т.е. пару часов. Потому что мало кто осилит сделать столько «сценок», чтобы они не надоели игроку.

    > «пять», больше игрок просто не запомнит

    Ахаха, я просто хренею с наших ленивых, циничных снобов-геймдизайнеров. «не запомнит», ололо. «Пятьдесят»! Меньше игроку просто вызовут тошноту за два вечера.

    > Вообще, делать что-то, о чем игрок не знает и никогда не увидит

    Он узнает и оценит.

    > AI в Sims не сложнее амебы, а игра все равно в топах по продажам.

    Симс — совершенно особенная игра, её ЦА не волновали, не волнуют и не будут никогда волновать тупость АИ и убогость графики.

    > Кстати, в одной игре из серии машины просто пропадали, если персонаж отворачивался к ним спиной

    Отлично помню вопли в клубах времён первой части «ну ёбаный в рот, где бля моя тачка? тут же была только что! Нуфпизду, давайте лучше в контру!»

    Автор, вылезайте из своего геймдизайнерского мирка в реальную жизнь. В играх есть тысячи вещей, котрые раздражают. Те, кто додумается избавиться от этих мелочей сорвут банк.

    Чтобы комментировать, надо войти или сначала зарегистрироваться.
    А если у вас есть OpenID, это еще проще: