#1 4ertik 22.10.2021, 09:00
Что пошло не так и как это пытались исправить


В конце прошлого месяца студия ArenaNet хотела запустить в MMORPG Guild Wars 2 первое бета-тестирование системы реструктуризации миров, которая должна кардинально изменить положение дел в режиме WvW. Однако команда столкнулась с целым рядом проблем и тест пришлось остановить. Сегодня разработчики готовы поделиться событиями того дня, а также готовящимися исправлениями и датой проведения следующего тестирования.

В пятницу, 24 сентября, в 20:00 по московскому времени разработчики включили функцию реструктуризации мира во время еженедельного сброса европейского региона World vs World. Она была успешно активирована для Европы на игровых серверах , но почти сразу же команда ArenaNet начала получать сообщения о том, что некоторые игроки были помещены в неправильные команды. Основная проблема заключалась в том, что у некоторых игроков были устаревшие данные, которые не обновлялись до того, как они попытались присоединиться к WvW. Когда затронутый игрок пытался войти в WvW, его игровой клиент использовал эти неверные данные, в результате чего игрока помещали на неправильную карту и даже назначали неправильный цвет команды. Вместе с проблемой, из-за которой пользовательский интерфейс не отображал правильные названия команд, это создавало массовую путаницу.

Несомненно, бета-тест вызвал большой ажиотаж. Вместе с пятничным сбросом это означало, что явка была невероятно высокой. В итоге начались большие очереди на карты. Естественно, чтобы немного скрасить время в ожидании, игроки отправились в Edge of the Mists. Пока разработчики были заняты устранением первой проблемы, упомянутой выше, они получили сообщение от ведущего инженера по серверам Роберта Некорчука (Robert Neckorcuk). Он предупредил их о том, что для инстансов карты Edge of the Mists использовалось ненормально большое количество ресурсов сервера. Примерно в 30 раз больше обычного.

Однако это произошло не из-за возросшей активности игроков - в игре было что-то более коварное. Команда наблюдала создание новых инстансов Edge of the Mists, несмотря на то, что на ранее созданных картах оставалось достаточно места для игроков. Другими словами, было создано слишком много экземпляров локации по сравнению с количеством активных игроков, что потребляло значительную часть ресурсов сервера. Это привело к некоторому эффекту, который необходимо было отслеживать и устранять вручную. Тот факт, что разработчики не знали, почему создаются новые инстансы, вызывал беспокойство и определенно подрывал их уверенность в том, что они смогут решать проблемы с бета-версией на лету. Примерно в то же время еще один из инженеров сообщил о третьей проблеме.




При выходе нового контента или проведении бета-событий ArenaNet старается добавить дополнительные логи. Они представляют собой записи событий, происходящих в системе. Их можно использовать, чтобы убедиться, что система работает должным образом. Также они могут дать представление о любых проблемах, с которыми сталкиваются разработчики, и помочь в выявлении возможных исправлений. У студии есть целые серверы, предназначенные для управления всеми журналами логов, генерируемыми в игре. Что ж, в этот день эти серверы встретили своего соперника. BattleSrv (новый сервер реструктуризации миров) выдавал ошибку с такой высокой скоростью, что это начало нагружать инфраструктуру ведения журналов. Эти серверы журналов критически важны для работы Guild Wars 2, так что ситуация была довольно сложной.

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

Вариант А заключался в том, чтобы реализовать несколько краткосрочных мер по смягчению последствий в попытке сохранить работоспособность бета-версии. Это включало бы развертывание «пустой сборки» в живой игре, что потребовало бы от игроков выхода из системы и загрузки небольшого обновления клиента. Такое решение заставит обновить данные любого игрока, затронутого проблемой устаревших данных, что, в свою очередь, назначит их в правильную команду. Несмотря на то, что это могло бы исправить проблему, у разработчиков не было возможности проверить данный вариант перед тем, как попытаться его сделать. Кроме того, отсутствовали какие-либо гарантии, что другие проблемы не будут проявляться в течение недели бета-тестирования, когда новые игроки зайдут на WvW для участия. Разработчикам также, вероятно, потребовалось бы выполнить подобное обновление «пустой сборки» после сброса NA серверов всего через несколько часов. В этом сценарии им также пришлось бы отключить карту Edge of the Mists на всю бета-неделю, чтобы уменьшить проблему использования сервера. Команде удалось найти решение ситуации с логами, но для внедрения изменений потребовалось бы некоторое время, в течение которого серверы журналов продолжали бы подвергаться нагрузке.




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

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

Алгоритм подбора игроков, использованный в первой бета-версии, обеспечил невероятно равномерное распределение игроков и гильдий по командам. В текущей системе можно видеть разницу в активности игроков между мирами до 50%. В первой бета-версии самая большая разница между двумя командами составляла всего 2%. Это огромное улучшение, ведь создание сбалансированных матчей - основная цель системы реструктуризации мира.




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

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

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





#2 Crabzburger 22.10.2021, 10:48
Такое впечатление, что Арена набрала студентов и доверила им переработаь ВвВ, но что-то пошло не так и о боже.... оказалось, что ПО сервера может выдавать ошибки и записывать их в логи...
#3 Altwazar 22.10.2021, 11:47
Originally Posted by Crabzburger:
Такое впечатление, что Арена набрала студентов и доверила им переработаь ВвВ, но что-то пошло не так и о боже.... оказалось, что ПО сервера может выдавать ошибки и записывать их в логи...
Часть игры часа три была не доступна, вот и решили подробно объяснить игрокам ситуацию, почему они не откатили и не вернули всё назад сразу.
#4 Nopz 22.10.2021, 12:55
Originally Posted by Crabzburger:
Такое впечатление, что Арена набрала студентов и доверила им переработаь ВвВ, но что-то пошло не так и о боже.... оказалось, что ПО сервера может выдавать ошибки и записывать их в логи...
ой да ладно вам, тут фирмы куда более финансово обеспеченные серваки после минипатча поднять не могут и время серверное скачет
#5 Кот в Кроссовках 22.10.2021, 13:08
Мне кажется, что в последнее время средний уровень технических специалистов в игрострое, да и не только, сильно просел вниз. Не хочу заводить шарманку про раньше было лучше, но мне кажется, что это связано с распространением современных языков программирования, которые имеют гораздо более низкий порог вхождения, и, соответственно, специалисты в целом гораздо хуже представляют как та или иная технология работает, что называется, под капотом. Отсюда и проблемы с технической частью.
#6 Altwazar 22.10.2021, 13:26
Originally Posted by Nopz:
ой да ладно вам, тут фирмы куда более финансово обеспеченные серваки после минипатча поднять не могут и время серверное скачет
У тех просто технодемка под видом релиза. Три часа простоя даже для части игры - довольно странная ситуация.
#7 Sliz 22.10.2021, 16:17
Originally Posted by Altwazar:
Три часа простоя даже для части игры - довольно странная ситуация.
Где-то ржет как лошадь одна Банжи...
#8 Reitan 22.10.2021, 21:07
Originally Posted by Altwazar:
Часть игры часа три была не доступна, вот и решили подробно объяснить игрокам ситуацию, почему они не откатили и не вернули всё назад сразу.
ну ваще все было доступно. просто были достойные Мистов странности, типа зеркал ВвВ-карт, непонятной принадлежности объектов и т.п.

но народа бегало дофига и всем было весело махаться в этом хаосе :D
#9 Xarr 22.10.2021, 21:46
Originally Posted by Кот в Кроссовках:
Мне кажется, что в последнее время средний уровень технических специалистов в игрострое, да и не только, сильно просел вниз. Не хочу заводить шарманку про раньше было лучше, но мне кажется, что это связано с распространением современных языков программирования, которые имеют гораздо более низкий порог вхождения, и, соответственно, специалисты в целом гораздо хуже представляют как та или иная технология работает, что называется, под капотом. Отсюда и проблемы с технической частью.
Боже, убей всех идиотов...
#10 Кот в Кроссовках 23.10.2021, 10:44
Originally Posted by Xarr:
Боже, убей всех идиотов...
Не упоминайте Господа Бога всуе!
Tags