0

Невидимые котята, ритмичные крысы и другие уловки разработчиков

Невидимые котята, ритмичные крысы и другие уловки разработчиков
Железная логика - прочная основа любой видеоигры. If/then/else, другого пути нет. В противном случае вы загоните вычислительную машину в тупик. Когда две белые планки на абсолютно чёрном экране отбивали мячик, всё было просто. Однако в современных играх одни логические схемы накладываются на другие, и получается такое, что сам чёрт ногу сломит. Поэтому зачастую разработчикам приходится выкручиваться, чтобы создать, казалось бы, простейшие вещи.

Хрестоматийный пример - это радио в Fallout 4. Написать алгоритм, определяющий удалённость игрока от источника вещания, было бы крайне сложно. Поэтому в Bethesda пошли на хитрость: по всему миру разбросали невидимых котят, которые являлись ретрансляторами. Отошли слишком далеко от котёнка? Сигнал пропал, надо искать другую радиостанцию. У которой, соответственно, своя сеть детёнышей семейства кошачьих.

Кто занимает второе место по милоте после котиков? Интернет утверждает, что пёсики. Так вот, собака в Fable 2 не могла разворачиваться на одном месте - не было соответствующей анимации. Поэтому AI иногда застревал в вечном беге по небольшому кругу - до тех пор, пока ему не отдавали другую команду. Самое забавное заключается в том, что программисты не стали утруждать себя исправлением этой ошибки, а отдел контроля качества пропустил её без всяких сомнений, потому что реальные собаки действительно иногда так делают.

От собачек и кошечек - к менее высоким уровням няшности. Разработчики Titan Quest посчитали, что создание таймера с нуля - слишком хлопотное занятие. При этом таймер как таковой был нужен в квестах с лимитом времени. Решение проблемы нашли элегантное. Период взмаха хвостом белок и крыс в Titan Quest - ровно одна секунда. Поэтому в каждом задании с лимитом времени запрятан грызун, который постоянно машет хвостом, а игра просто подсчитывает количество анимаций.

А теперь ближе к новогодней теме. В Ultima Online не было украшений для ёлки, и разработчики сделали гирлянды из подручных средств. В качестве основы взяли существующие модели разноцветных драгоценных камней и растянули их по вертикали. Небольшой скрипт заставлял их иногда исчезать и сразу же появляться. Получились вполне сносные мерцающие гирлянды, особенно по тем временам.

В сюжетном режиме Firewatch нет нормального цикла дня и ночи: время суток сменяется, когда Генри доходит до определённого триггера. Однако в режиме свободного исследования разработчикам непременно захотелось сделать естественное течение времени. Добились этого крайне интересным способом. Представьте себе нечто вроде невидимого мобильного колеса водяной мельницы с осью ровно над головой главного героя. Оно медленно вращается, и каждый сектор при прохождении сквозь Генри активирует новое время суток.

Но не все подобные истории связаны исключительно с кодингом. Некоторые - с чувством долга, находчивостью или решительностью одного человека. Например, в самой первой Arma была всего лишь одна модель солдата с минимальными косметическими модификациями. Дело в том, что студия Bohemia Interactive купила новейший японский 3D-сканер, но для идеального скана нужно было побриться наголо. На это согласился лишь один из разработчиков, который и стал единственным воякой в Arma.

Из всего многообразия языков, заявленных в Scribblenauts, на 7 из них игра переведена всего двумя программистами при помощи Google Translate. В The Walking Dead: Michonne есть целый диалог, который собирали из ранее записанных обрывков фраз, дабы заткнуть сюжетную дыру. И таких примеров - множество. Разработчики делают для нас магию, но надо понимать, что за дымом и зеркалами всегда есть немного изоленты и монтажной пены.

Также по теме