Назад к списку

Помощь в прицеливании при игре в Witchfire

В разрабатываемом сейчас студией The Astronauts шутере от первого лица Witchfire есть настоящая чёрная магия. Как она работает и почему? Почему в игре есть помощи в прицеливании? И как он работает при игре на мышке и клавиатуре?


Ответить на первый вопрос просто - помощь в прицеливании была добавлена в шутер, чтобы сделать возможной игру на контроллере. Играть на контроллере в игры этого жанра очень сложно, и делать это мышкой гораздо проще (вот почему уже более 50 лет мышь остаётся лучшим девайсом).


Самая первая компьютерная мышь. Они, конечно, немного эволюционировали, но идея осталась прежней.


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

Но зачем нужна помощь в прицеливании при использовании мыши и клавиатуры?

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

  • "Липкая стрельба", при которой прицел замедляется, когда проходит по модельке жертвы;
  • "Магнитные пули", которые будут попадать во врага, если вы чуть-чуть промахнулись.


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

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

Однако это не все. В некоторых играх, к которым относится и Witchfire, "магнитные пули" также работают при игре мышью и клавиатурой.

Для этого есть две причины:

  1. Есть разница между кликами в меню Windows или работой в Photoshop и быстрыми хедшотами промеж глаз анимированных противников, которые к тому же ещё и постоянно движутся. Разработчики отдельно отмечают, что в PVP "магнитные пули" не нужны, так как живые противники никогда не двигаются так быстро и непредсказуемо, как некоторые "боссы" в однопользовательских шутерах. Без использования "магнитных пуль", противников в PVE пришлось бы сделать более статичными, а авторы Witchfire этого не хотят.
  2. Гораздо более важно то, что отсутствие "магнитных пуль" часто вызывают ошибки в играх. Например, вы можете прицелиться и выстрелить в край вражеской головы, но выстрел зарегистрируется как промах. При этом игроку будет казаться, что он всё сделал правильно. А код игры посчитает это промахом, так как пуля прошла в тысячной доли миллиметра от головы. Если бы вы играли в каком-нибудь диком разрешении 1Mx1M и сделали бы скриншот в момент выстрела, увеличив всё это в сотни тысяч раз вы увидели бы, что пуля прошла мимо. Но в 1920×1080 человек такого увидеть не может.


Можно сказать: "А зачем эти магниты? Просто сделайте пули больше". Да, это могло бы сработать, но тогда появится другая проблема. Если вы будете стрелять в противника, который пытается спрятаться за стеной, большие пули будут цеплять эту стену, а не его!

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

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


Wanted: Weapons of Faith, одна из немногих игр, где огибающие укрытия пули действительно имели смысл.


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

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

Существует гораздо более простой способ, и это то, что используется в Witchfire:



Как видите, "магнитные пули" привязаны к пистолету, а не к врагам. Есть пять кругов, и вот, как они действуют:

Два внешних - для "липкой стрельбы". Как только больший круг касается модельки врага, кроссхейр начинает замедляться. Максимальная скорость замедления включается тогда, когда противника касается другой, меньший круг.

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

Внутри есть два других круга: темно-синий побольше и светло-синий поменьше. Как только больший круг коснется врага, место попадания вашей пули сместится ближе к краю этого круга. Если вы выстрелите в этот момент, то всё равно промахнётесь, хотя пуля пройдёт ближе.

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

Наконец, самый маленький белый круг. Он используется для определения приоритетности критических ударов (например, выстрелов в голову) над обычными попаданиями в тело. Если вы целитесь в тело, но критическая область (например, голова) находится в этот момент внутри белого круга, пуля будет отправлена в эту область, а не в тело. Это помогает избежать моментов, когда, например, вы пытаетесь попасть в голову, но противник в этот момент махнул рукой, и пуля попала в кончик пальца.


Красный крест внутри всех этих кругов точно показывает, куда попадёт пуля:


Вот как все это работает (пройдите по ссылке выше и выберите "Полный экран", чтобы лучше увидеть поведение красного креста). Обратите внимание, как красный крест динамически меняет положение в зависимости от того, какой круг содержит какую часть тела. Сначала он прилипает к голове, хотя теоретически перекрестие всё ещё не точно наведено на неё, а затем прилипает к телу, даже если перекрестие вообще ушло чуть дальше.

Клип также подчеркивает еще одно преимущество прицеливания: возможность избегать проблем с одеждой противников. Мол, плащ не должен быть чем-то, чему можно нанести вред, верно? Это просто плащ. Но если вы стреляете куда-то, что выглядит как часть врага, и нет никакого ущерба, это кажется странным. Вы чувствуете себя обманутым за то, что попадание не засчитали. С помощью прицеливания, попадание всё равно засчитается, хотя плащ и не является чем-то, связанным со здоровьем противника.

Всё просто? Да, но нет, считают разработчики.

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

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



Вопрос недели: будет ли в Witchfire магическое оружие и заклинания? Ответ: ДА!



© 2019 The Frags