Пропустить нельзя пофиксить: баги в играх и почему их не избежать

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 0

Баги это дефекты и сбои, влияющие на пользовательский опыт, без которых редко обходится любой программный продукт. Чего уж греха таить, даже в играх VOKI Games встречаются эти мелкие вредители, несмотря на многоэтапное тестирование профессионалами. 

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

Что такое баги в игре: цели тестирования продукта

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

Выявление «жучков», а именно так переводится английское слово bugs, – основная цель тестирования продукта. Оно проводится не только перед релизом игры, а и при мажорных (с серьезными изменениями) и даже минорных (с незначительными исправлениями и дополнениями) обновлениях, чтобы команда разработчиков могла найти баги, проанализировать их и устранить (т.е. пофиксить).

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

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 1

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

Тестирование игр: особенности работы тестировщиков

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

  • логическое мышление;
  • внимательность и усидчивость;
  • хорошая память;
  • адаптируемость к задачам;
  • мультифункциональность. 

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

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

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 2

Как искать баги в мобильных играх

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

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

В помощь тестерам – многочисленные сценарии, воспроизводящие разные условия работы. К примеру, для зависимых от интернета игр тестирование проводится в стрессовых условиях. Тестировщики следят за тем, что происходит при проседании скорости, переподключении к сети, ее недоступности на протяжении определенного времени. Так происходит и с другими аспектами развлекательного ПО. 

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 3

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

Одну и ту же игру могут тестировать месяцами и даже годами, если речь идет об огромном проекте. Чаще на тесты отводят 1–2 месяца, этого вполне достаточно для устранения основных уязвимостей и выпуска игры. 

Уровни и категории багов

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

  1. Блокирующая (Blocker). Самая страшная для геймдева недоработка, которая полностью «ломает» игру, приводит ее в нерабочее состояние. В документации обозначается как S1 и обязательна для исправления до продолжения тестов. 
  2. Критическая (Critical). На уровне S2 ошибки по-прежнему имеют наивысший приоритет для команды, поскольку затрагивают целый сегмент. Эффекты таких ошибок самые разные – сбои игровой логики, отсутствие защиты игровых данных, разрушение целого пласта функциональности. 
  3. Значительная (Major). Нуждается в исправлении, но тестирование можно продолжать через другие входные точки. Зачастую статус S3 присваивается ошибкам, при которых часть основной игровой логики работает неправильно. К примеру, нанесение урона лечит противника, оппонент не умирает после окончания шкалы здоровья и так далее. 
  4. Незначительная (Minor). При таких ошибках логика игры не нарушена, но есть проблемы с дизайном. Чаще всего баги S4 относятся к нарушениям интерфейса пользователя. 
  5. Тривиальная (Trivial). Наиболее незначительная недоработка, которая относится к категории S5. Она не влияет на финальный продукт и чаще всего касается сторонних сервисов либо внутренней механики. Пользователи вообще не сталкиваются с ошибкой, поэтому такие баги слабо фиксятся. 

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

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 4

Кроме уровня серьезности, баги делятся на категории по типу ошибки:

  • графические – связаны с изображением на экране, в том числе отсутствием текстур, обрезкой областей картинки и другими «артефактами»;
  • аудиальные – неправильная озвучка, нарушение уровней громкости, сбои звуков;
  • дизайн уровней – в указанную категорию входят проблемы с геометрией, невидимые стены, провалы в полигонах;
  • искусственный интеллект – персонажи неправильно реагируют на команды, в игре нарушен баланс сил, отсутствует вход в области, предусмотренные геймплеем;
  • физика – отсутствует модель повреждений, нарушены законы гравитации, некорректно отображаются движения;
  • стабильность – приложение «фризит» и «крашится», уровни и области не прогружаются, игра зависает;
  • производительность – в этот раздел входят баги, связанные с проседанием частоты кадров – ФПС (англ. FPS – frame per second) на мощных устройствах, долгой загрузкой областей, периодической подгрузкой данных;
  • нетворкинг – все ошибки, связанные с сетевым соединением. Это и регулярные разрывы связи с сервером, и высокие пинги, и лаги при стандартных игровых действиях. 

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

Пользователи = тестировщики: как недоработки попадают в массы

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

  1. Тестировщики работают по сценарию. У каждого испытателя есть чек-лист, по которому он ищет ошибки и фиксирует их в специальных ячейках. Таким образом, тестирование стандартизировано и многие ситуации, в которых может оказаться рядовой игрок, попросту не возникают. 
  2. Баги чинит команда. Тестировщики только документируют недостатки игры и передают их в виде отчетов. Фактически задачей тестеров является проверка работы команды, определение направлений работы и анализ рисков на случай, если баг останется в коде. 
  3. Разработчики идут на компромисс. Блокирующие и критические ошибки фиксятся в приоритетном порядке, но проблемы с текстурами, моделями и интерфейсом второстепенны. Команде лучше проработать фичи и улучшить сильные стороны, чем заниматься правкой малозначительных, с их точки зрения, багов. Поэтому в релиз часто пускают игру с забавными или раздражающими ошибками. 

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

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

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 5

Самые скандальные баги геймдева

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

Cyberpunk 2077. Да, тот самый «шедевр» с Киану Ривзом в мире будущего точно может претендовать на верхние строчки в рейтингах забагованности. Кроме некритичных, но забавных сбоев текстур, механики поведения персонажей и непрорисованных спрайтов, сразу после релиза возникли более серьезные проблемы.

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 6

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

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 7

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

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

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 8

Gothic 3. Легендарная RPG, завершающая трилогию, получила шикарный мир и скрупулезно проработанных персонажей с потрясающими квестами. Но вот про оптимизацию разработчики начисто забыли, что и привело к техническому провалу. Игра постоянно вылетала и тормозила, из начальной локации из-за пустот в текстурах могли выйти только единицы, а игровая механика была абсолютно сырой. И хотя разработчикам удалось довести продукт до нормального состояния патчами, до сих пор фанаты серии полируют ее любительскими заплатками. 

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 9

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

Баги, плавно переходящие в фичи

Итог подведем своеобразно – баги могут стать фичами. Серьезно, это хоть и не происходит повсеместно, все равно имеет место в геймдеве. Стоит вспомнить хотя бы баг с поведением полицейских в Grand Theft Auto, которые не объезжали игрока, а старались проехать сквозь него. Копы-психопаты понравились разработчикам и юзерам, прочно войдя в последующие игры серии. 

Легендарная «распрыжка» тоже изначально была багом, который появился в Quake. Ее оставили и в других играх (к примеру, Counter-Strike), поскольку запустить режим быстрого движения могли далеко не все игроки, а сам по себе он не был убер-плюшкой. То же касается и рокетджампа, который был замечен случайно, когда игрок выстрелил ракетой себе под ноги. Так родилась обновленная механика, до сих пор юзаемая прогеймерами. 

Пропустить нельзя пофиксить: баги в играх и почему их не избежать Фото 10

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

Подписывайтесь на наши страницы в Facebook и Instagram, чтобы первыми узнавать интересные факты о разработке мобильного ПО 🙂