На Blizzcon 2016 был проведен еще один круглый стол с инженерами Blizzard, посвященный не только
World of Warcraft, но всем играм компании. Он тоже не транслировался для обладателей виртуального билета. MMO-Champion смогли заснять все вживую, поэтому мы можем познакомиться с некоторыми интересными моментами из жизни разработчиков.
Heroes of the Storm- Работать над Heroes of the Storm очень интересно, поскольку команда разработчиков любит воплощать в жизнь невозможные вещи.
- Когда разработчики трудились над Чо'Галлом? кто-то предложил идею позволить герою самому носить своего коня на плече, а не ездить на нем. Процесс езды подразумевает наличие транспорта, который воспроизводит анимацию бега, под персонажем, который в это время демонстрирует анимацию сидения? — это было довольно сложно изменить, особенно за оставшуюся до Blizzcon неделю. В итоге Чо'Галлу просто добавили невидимого коня, заменили анимацию сидения на бег и добавили модель скакуна на плечо. Позже они вернулись к этой идее и улучшили код.
- То же самое можно увидеть у Рагнароса, который при движении оставляет за собой следы от специального маунта.
Hearthstone- Разработчики решили использовать Unity в качества движка из-за соображений скорости. Сервер представляет собой написанную на C++ программу.
- Дизайнеры прописывают скрипты для карт с помощью своей собственной системы и все это происходит в серверной части. Все правила действуют на сервере, игровому клиенту лишь "показывают", что происходит.
- Для реализации Йогг-Сарона разработчикам пришлось использовать C++, а не собственный язык скриптов, чтобы решить множество возникших проблем, вроде неработающих секретов и карт с выбором эффекта.
- Данные о том, что происходит, просто отправляются в клиент и нигде не записываются, поэтому сервер не может воспроизвести то, что с вами случилось, если вы потеряли соединение. При повторном подключении клиент просто получает информацию о текущем положении дел.
- Разработчики стараются оптимизировать разные вещи для мобильной версии игры, в частности загрузку файлов XML и изображений.
OverwatchЛучший момент матча- Первая версия лучшего момента матча во время беты просто показывала как много вы сделали убийств. В лучший момент попадали те, кто сделал больше всего убийств за 8 секунд.
- Изначально разработчики подумывали показывать свой лучший момент матча каждому игроку, но один общий оказался гораздо лучше.
- Во второй версии этой системы учитывались действия игрока, например прерывание чужой суперспособности или сохранение жизни другого игрока, а не только убийства.
- Сейчас система также учитывает насколько опасный момент вы прервали. Например, если в поле зрения суперспособнсоти Маккри находилось много игроков, то, прервав эту способность, вы получите много очков — чем больше жизней спасено, тем больше очков вы получите.
- Сейчас имеется несколько категорий со своими уровнями значимости, поэтому учитываются не только просто убийства. Разработчики продолжают улучшать эту систему и по сей день.
World of WarcraftВыход Legion- Примерно за год до выхода Legion дизайнер игры рассказал об идее переноса множества игроков из Даларана на Расколотые Острова с помощью заклинания Кадгара. В то время одновременный перенос кучи игроков казался не очень хорошей идеей, но разработчики обратились за помощью к новой команде автоматизации, чтобы узнать, какими возможностями они обладают. После многочисленных тестов они смогли ответить на некоторые важные вопросы и реализовать эту идею, какой она и предстала перед игроками. В день выхода игроки начали получать задание еще за 15 минут до полуночи, что позволяло им перенестись в новый Даларан.
- Идея дробления мира на осколки появилась во время размышления над проблемой стабильности игры в первые дни, когда множество игроков находятся в одном месте. Разработчики решили разделять игроков на части, достаточно большие, чтобы все не казалось пустынным, но не слишком огромными, чтобы не было проблем с производительностью и некоторыми другими связанными с этим вещами. Эта система была добавлена в игру еще на вторжениях Легиона.
Игровые миры- Изначально игровые миры работали на отдельных серверах.
- Некоторые из игровых миров были сильно населены, а другие меньше, поэтому на некоторых серверах аппаратные возможности использовались целиком, а на некоторых почти не использовались.
- Разработчики "объединили" все сервера вместе, позволив населенным серверам использовать больше ресурсов, а ресурсам менее населенных не простаивать без дела. Инженерам пришлось очень серьезно потрудиться над этой задачей.
ПрочееРабота в Blizzard- Команда разработчиков отдает предпочтение тем людям, у которых есть завершенные проекты. У всех есть прикольные идеи, но более ценны те, кто смог их реализовать.
- Также они смотрят на вашу любовь к работе и то, как вы это демонстрируете. Это заметно, например по тому, чем вы занимаетесь в свободное время.
- Вы можете заниматься проектами по тематике подходящими для той команды, в которой вам хочется трудиться. Это поможет вам показать свое умение завершать проекты, свою любовь к делу и привлечет внимание людей, которые уже трудятся в ней. например, один из нынешних разработчиков игрового процесса Hearthstone подал заявку в Blizzard, имея за спиной множество законченных проектов. Кроме того он опробовал множество игр в жанре TCG.
Мобильные приложения- Изначально у Blizzard была отдельная команда для разработки мобильных приложений, которая трудилась над такими вещами, как например, Мобильная Оружейная. Постепенно эти люди переходили в команду разработчиков Hearthstone, пока она совсем не опустела.
- Разработкой приложения Компаньон на Unity занимались инженеры из команды WoW, часто обращаясь за советами к разработчикам Hearthstone.
Открытый исходный код- Blizzard используют сотни проектов с открытым исходным кодом. Часть из них можно найти здесь.
- Правда они вносят не так много нового, как могли бы, но стараются улучшить эту ситуацию.
Тестирование- С самого начала работы над Overwatch разработчики сильно стараются повысить долю автоматизации в процессе тестирования игры.
- Разработчики хотели получить возможность проводить точные стресс-тесты, прежде чем выпускать обновление, чтобы узнать, как различные перегрузки скажутся на производительности игры и ее новых функциях. Такая возможность сейчас у них есть.
- Для WoW большей частью используется функциональное тестирование: люди пользуются методом черного ящика, чтобы обнаруживать проблемы, без автоматизации. Также в случае проблем с производительностью используется бот, который телепортируется по разным местам, измеряя частоту смены кадров. Кроме того для WoW применяется проверочное тестирование сборки.
- Разработчики проводили масштабное тестирование запуска Legion, заставляя множество клиентов подключаться к игре.
- Ребята из команды контроля качества посещают все встречи и собрания разработчиков, чтобы быть в курсе всех вносимых изменений и новинок. В идеале к выпуску новинки у них уже должен быть план на тесты.
- Некоторые новинки бывают такими большими, что для их тестирования привлекаются команды из других игр, если те не заняты.