Gamedev Artyom Kaleev
21 986

«Всё равно что наблюдать за зверем»: геймдизайнер разбирает поведение Тирана из RE2

Сочетая скрипты и настоящие действия.

В закладки
Аудио

В ремейке Resident Evil 2 Тиран преследует игрока практически везде и всюду. Но на первый взгляд не совсем ясно, как работает механизм его поведения: телепортируется он или всё же нет, на какие вещи обращает больше внимания и так далее.

Журналист Eurogamer поговорил с выпускником курса геймдизайна Николасом Шабо, который провёл исследование относительно поведения Мистера Х. Выяснились интересные подробности.

Шабо хотел понять, как Capcom удалось создать такой искусственный интеллект, свобода перемещения которого сопоставима со свободой игрока. Как Тиран мог идти в любом направлении, при этом реагируя на действия игрока, даже если тот находится вдали от него?

Я знал, что с Мистером Х было что-то странное — потому что иногда его шаги становились странными. Они учащались, замедлялись и на миг прекращались вовсе. Единственный способ узнать правду — это заставить камеру увидеть то, что обычно не видно.

Николас Шабо
геймдизайнер

С помощью мода, позволяющего менять положение камеры, геймдизайнер выяснил много интересных вещей. Во-первых, Мистер Х не телепортируется, как предполагали многие игроки. Лишь пару раз за кампанию он моментально попадает в те места, где должен оказаться по сценарию — но в остальном же передвигается на своих двоих.

Однако один нюанс всё же есть. В те моменты, когда Тиран начинает искать игрока, он ускоряется в четыре-пять раз, просматривая все комнаты по пути.

Как и многие другие игры, Resident Evil 2 высвобождает из памяти те части локации, которые либо слишком далеки от игрока, либо находятся вне его поля зрения. Именно в таких сегментах скорость Тирана увеличивается: по факту, он просто «скользит» по полицейскому участку, так как у него нет необходимости попадать в дверные проёмы.

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

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

Николас Шабо
геймдизайнер

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

Когда игрок поднимает ручку от домкрата в комнате записей, Мистер Х по скрипту врывается в комнату. Но он не телепортируется — в момент срабатывания триггера он внезапно узнает, где находится игрок, и стремительно движется в его сторону, даже если тот не издавал звуков. Это объясняет, почему Capcom оставила в комнате гранату — чтобы защититься от атаки в случае отсутствия других средств обороны.

Но в моменте, когда главный герой попадает в комнату для пресс-конференций, Тиран всё же «обманывает» игру. Так, если он находится не в коридоре, который предшествует комнатам допроса, Мистер Х телепортируется к стенке и начинает ждать срабатывания триггера — где бы он ни был до этого. Он разбивает стену лишь тогда, когда игрок подходит к ней с другой стороны.

Чтобы зафиксировать поведение Тирана, Шабо пришлось постараться. В Resident Evil 2 очень чувствительная камера — комнаты подгружались и пропадали при малейшем движении мыши. Поэтому, например, иногда видно, как у Мистера Х пропадает голова или тело целиком.

Чтобы записать отрывки выше, Шабо очень долго искал нужные ракурсы, с которых будет видно всё — и Тирана, и главного героя.

Это всё равно что наблюдать за зверем издалека. Всё, что мне нужно было делать — следить за Мистером Х и пробовать некоторые вещи. Выходить из комнаты (вслепую, так как я не мог особо двигать камерой), стрелять и бегать вокруг. И ещё находить новые углы для наблюдения, чтобы запечатлеть специфическое поведение — например, в моменте с ручкой от домкрата.

Николас Шабо
геймдизайнер

Подводя итоги, Шабо посчитал, что Мистер Х всё же хорошо сбалансирован. Увидеть то, как он носится по локации, поначалу было сюрпризом — но со временем геймдизайнер понял, что без этого никак.

С его стандартной скоростью ему бы пришлось ловить игрока слишком долго. Он мог просматривать одни и те же три-четыре комнаты в восточном крыле здания — а игрок к этому моменту бы уже закончил задачи с ключами.

Николас Шабо
геймдизайнер

Всё же перед разработчиками стояла задача сделать из него постоянную угрозу для игрока, а не обычного моба, который параллельно блуждал по зданию.

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

Николас Шабо
геймдизайнер

Геймдизайнер предложил некоторые свои идеи для улучшения опыта взаимодействия с Тираном. Например, на высоких уровнях сложности Шабо бы убрал сейв-румы.

Граница между ужасом и фрустрацием, конечно, станет немного тоньше. Но безопасными комнатами можно легко злоупотреблять. Неловко видеть, как Мистер Х пытается проникнуть внутрь, но невидимая сила мешает ему это сделать.

Николас Шабо
геймдизайнер

#residentevil #геймдизайн #разбор

{ "author_name": "Artyom Kaleev", "author_type": "editor", "tags": ["\u0440\u0430\u0437\u0431\u043e\u0440","residentevil","\u0433\u0435\u0439\u043c\u0434\u0438\u0437\u0430\u0439\u043d"], "comments": 39, "likes": 163, "favorites": 120, "is_advertisement": false, "subsite_label": "gamedev", "id": 42159, "is_wide": true, "is_ugc": false, "date": "Thu, 07 Mar 2019 21:04:59 +0300" }
{ "id": 42159, "author_id": 17412, "diff_limit": 1000, "urls": {"diff":"\/comments\/42159\/get","add":"\/comments\/42159\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/42159"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64954, "last_count_and_date": null }

39 комментариев 39 комм.

Популярные

По порядку

Написать комментарий...
2

давайте мемасики с Рикардо

Ответить
13

но я это все равно лучшим считаю)
https://www.youtube.com/watch?v=P5SZcgyH6Hg

Ответить
1

такого не видел еще)

Ответить
0

Еще

Ответить
2

Подойдёт?

Ответить
4

На мой взгляд у Тирана есть ровно две проблемы.

1) Во-первых очень быстро становится понятно что он сознательно не зажимает игрока в угол. Если вы видите максимально неудобную для обороны комнату с одним входом, без препятствий посередине, в которой Тиран очевидно вас легко убьет, значит данная комната 100% безопасна и он НИКОГДА в неё не войдет. Это ощущается в игре очень сильно и это её существенно портит. Это при том, что РЕ-2 - "вкусная" игра, которая обычно не боится наказывать игрока за неосторожные действия.

2) Во-вторых очень быстро становится понятно что Тиран ходит теми же маршрутами, что и я, а потому открытие новых проходов фактически облегчает ему задачу. Это довольно странно как с геймплейной (нафига мне оно нада?), так и с сюжетной точки зрения: я точно знаю что Тиран просто бессмысленно ходит по участку, нафига он вообще нужен Амбрелле? Ведь его цель не я, а вирус. Но он же не ищет вирус, он шастает за мной и ждёт пока я его приведу к вирусу. А если меня сожрут - он провалит своё задание. Не знаю как можно было бы решить эту проблему.

Ответить
40

Лол нет, прачечная на втором этаже для которой нужен бубновый ключ или комната коллекций где стоит статуя с обломаной рукой на том же этаже - обе тупиковые комнаты без каких либо декораций в центре, куда Тиран заходит с лёгкой руки и устраивает тебе анал-карнавал, при чём прачечная вообще мизерная комната и если Тиран зажал тебя в ней то земля тебе пухом. И нет, он не ходит теми же маршрутами что и ты, ибо лично из своего опыта кучу примеров могу дать как он ходил абсолютно по разному, если не делаешь никаких действий которые его "тригерят" то он начинает бегать по всему участку в поисках игрока и передвижения его чистое RNG

Ответить
2

Ммм странно. Я честное слово при прохождении игры последовательное применял тактику "Тиран не входит в маленькую комнатку" и это работало.

Про "тот же маршрут". Я имею ввиду что Тиран просто бродит по уже открытым зонам участка и ищет игрока, никакой другой деятельностью он не занимается, что несколько противоречит его задаче по поиску вируса.

Ответить
16

Он не заходит только в сейв комнаты, и некоторые комнаты с сюжетными головоломками (часовая башня и офис старс)

Ответить
3

В комнату для допросов он тоже не заходит.

Ответить
0

Ведь его цель не я, а вирус. Но он же не ищет вирус, он шастает за мной и ждёт пока я его приведу к вирусу

Внимательно читай документы, разбросанные в игре. Репортер Бен из сценария Леона написал, что Тиран был послан для уничтожения живых свидетелей произошедшего. Это в оригинале он за вирусом гонялся

Ответить
0

Ээээ вот оно как. Понятно.

Ответить
14

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

Ответить
12

Уже было. У него два ИИ, один точно знает где ты, другой мешает ему тебя найти. Если у тебя подключен микрофон то игра подключится к нему и чужой сможет услышать звуки что ты издаёшь ирл.

Ответить
3

"Alien.. запрашивает доступ к вашему микрону, контактной книге и домашнему адресу"

Ответить
15

Вот ЭТО зверь

Ответить
5

Лично ему поебать

Ответить
13

Не телепортируется, просто очень быстро перемещается? Напоминает анекдот!
– Гоги, ты что, дрочишь?!
– Нэт, бистро мою...

Ответить
8

Тиран - просто мальчик, по сравнению с Пирамидхедом, ИМХО!

Ответить
3

не вижу вообще никакой разницы между "телепортируется" и "быстро перемещается". и то и то позволяет ему быстро приблизится к игроку.

Ответить
6

Так полагаю технически разная реализация.

В случае "телепортации" Тиран просто беспорядочно "сбрасывался" на границу активности игрока, вылезая из любого глухого тупика как черт из табакерки, в то время как благодаря вот такой реализации какую мы визим в игре он все перемещается более физически корректно (т.к. практически не спавнится из неоткуда, и если он появился где-то, то значит что действительно дошел туда пешком).

Но по факту для игрока это мало что меняет, да.

Ответить
2

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

Ответить
1

Разве что за зверем с аутизмом.

Ответить
3

Когда играл я заметил, как он действительно ищет игрока. Чтобы решить какую-либо задачу в участке просто заводил Тирана в другое крыло, а потом быстро возвращался в другое обходным путём, где уже все спокойно делал. Теряя из виду, он тратит время на поиски, пока не зашумишь. Сбалансированный ИИ. Да, можно было бы на хардкоре сделать ему возможность заходить в Save Room, но тогда теряется одно из важных вещей в хоррорах, островки безопасности. Как вариант, уменьшить количество Save Room-ов. Но это уже другая история.

Ответить
3

Лол за Клер я заманил его на улицу за ворота на кладбище кинул в него шумовую гранату и убежал. Потом вообще его не видел он на кладбище бедняга застрял видимо. Появился только после скрипта с вертолетом.

Ответить
1

Интересно, а можно его как нибудь запереть, например заманить наверх библиотеки, а потом подвинуть обратно шкафы?

Ответить
2

шкафы обратно не двигаются, это ж резидент

Ответить
1

Он там стены руками пробивает, что ему этот шкаф был бы (хотя всё равно нельзя).

Ответить
1

Как мне было обидно, когда у меня Тиран всё же не разрушил стену возле допросной. Я смотрел одного летсплейщика и у него уже увидел эту сцену до того, как сам дошёл до этого сегмента игры.
И вот в своём прохождении, со всех ног убегая от преследования, я чуть ли не в последний момент залетел в допросную, взял там всё необходимое и минуты 2 потом тупо стоял и прислушивался к тому, где он там ходит 😅 Затем вышел из комнаты и, всё ещё слыша его шаги где-то сверху, в полном напряжении прошёл мимо той самой стены... Каково было моё удивление, когда она осталась нетронутой, а шаги сверху никуда не делись. Это меня тогда очень сильно впечатлило 👍, хотя я и немножко расстроился, что сам воочию не увидел этого в своём прохождении.

Ответить
–5

Я читаю статью про логику поведения горстки пикселей. Так вот ты какой - киберпанк 2019.
:-(

Ответить
1

От горстки молекул слышу :)

Ответить
0

Да сколько можно

Ответить
0

Как-то его слишком уж цинично разорвали пополам в прохождении за Клер.

Ответить
0

Да я сразу понял,что тиран тут,такое же читерство,как и чужой,поэтому с ним было не интересно

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]
В Steam появилась функция продажи
подержанных цифровых копий игр
Подписаться на push-уведомления