Для входа на форум нажмите здесь

Вернуться   GoHa.Ru > Форумы > Новые Игры > Tom Clancy's The Division 2 > Новости The Division

Ответ
 
Опции темы
Старый 02.08.2019, 20:20   Plem - куратор темы     #1 
Plem
 Альбомы пользователя
Plem вне форума

 Аватар для Plem

Ответить с цитированием
Info
Сообщений: 368
Всего лайков: 109
Регистрация: 29.07.2018
Игра: Guild Wars 2
Сервер: Aurora Glade
Ник: Plem.7356
Гилд.: [TALL]
GoHa.Ru III Степени
История о том, как фиксят баги

Сложный и запутанный процесс


Примечание:
Редакция GoHa.Ru посчитала целесообразным рассказать вам о том, насколько комплексным бывает процесс устранения ошибок в играх на примере одного бага в Tom Clancy’s The Division 2, описанного командой разработчиков. А именно - на примере проблемы с Медицинским ульем.


Источник: The Division Development Team

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

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

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

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

Сообщество начало присылать нам видеоролики, на которых видно проблему, что очень помогло нам. Мы видели, как игроки пытались использовать улей. Это позволило нам очертить некоторые ситуации, в которых можно было воспроизвести проблему. Например, игроки колошматили по кнопкам навыков в попытках полечиться, когда они замечали, что умирают, возможно, чтобы вовремя выстрелить из химустановки с «помощником» (прим. переводчика - «Помощник» запускает снаряд, который при взрыве создает облако вещества, восстанавливающего броню. Попадая на вас или ваших союзников, этот порошок моментально восстанавливает часть брони. Порошок, осевший на землю, постепенно восстанавливает броню. Таким образом, вы можете быстро подлечить напарников или постепенно – себя). Мы увидели, что это может привести к тому, что Медицинскому улью не удавалось автоматически выпасть - если кратко, игра пыталась «нажать кнопку» по реализации навыка, но вы можете использовать только один навык одновременно. Таким образом игрок, стучащий по выбранному навыку, блокировал возможность использования второго навыка, и поэтому улей не срабатывал. Мы рассмотрели различные состояния, в которых может оказаться игрок, и убедились, что улей автоматически выпадет и сделает свое дело, несмотря ни на что. Это оказалось исправление широкого действия, которого помогло изрядному количеству игроков.

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

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

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

Оказалось, что улей в большинстве случаев работает так, как и было задумано, но он не никак не сообщает игроку о том, что он был уничтожен NPC, пока вы возрождались. Люди думали, что он на месте, когда его там уже не было. Вы не можете видеть индикатор здоровья улья, когда находитесь в лежачем положении из-за ранений, пользовательский интерфейс никак не отображает его поломку, поэтому все это выглядит как настоящий баг. Улей должен быть в прямой видимости от людей, которых он должен оживить. Статусы, такие как шок, мешают процессу. Итак, помимо того, что происходит «под капотом», есть и проблемы «на поверхности».

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

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

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

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

/Команда разработчиков The Division

Последний раз редактировалось Plem; 03.08.2019 в 09:31.
Старый 02.08.2019, 23:07   #2 
_Orion_
Гигант мысли _Orion_ вне форума

 Аватар для _Orion_

Ответить с цитированием
Info
Сообщений: 270
Всего лайков: 17
Регистрация: 31.07.2014
Re: История о том, как фиксят баги

Цитата:
Сообщение от Plem Посмотреть сообщение
Люди думали, что он на месте, когда его там уже было.
Уже не было?
Интересно про баги, но это же часть их работы. Неужели негатива испугались из-за того, что слишком медленно чинят игру?
Старый 03.08.2019, 00:44   #3 
Sliz
Знаток Sliz вне форума

 Аватар для Sliz

Ответить с цитированием
Info
Сообщений: 2,385
Всего лайков: 125
Регистрация: 10.05.2013
GoHa.Ru II Степени
Re: История о том, как фиксят баги

Улей - это один большой мемчик второй части. С ним постоянно что-нибудь да происходит.
Старый 03.08.2019, 02:46   #4 
L1TR
Мастер L1TR вне форума

Ответить с цитированием
Info
Сообщений: 5,017
Всего лайков: 267
Регистрация: 20.07.2010
GoHa.Ru - СтарожилПобедитель конкурса
Награжден за: За 5 найденных пилозубов в конкурсе по Horizon Zero Dawn
Цитата:
Сообщение от Sliz Посмотреть сообщение
Улей - это один большой мемчик второй части. С ним постоянно что-нибудь да происходит.
Мне кажется, они его никогда не починят
Старый 03.08.2019, 02:48   #5 
Winterhearted
Бойовий троль Winterhearted вне форума

 Аватар для Winterhearted

Ответить с цитированием
Info
Сообщений: 7,526
Всего лайков: 513
Регистрация: 10.11.2014
Медаль "500 лайков"
Награжден за: 500 лайков!
Re: История о том, как фиксят баги

Кривой движок, который мигрировал из первой части. Баги будут всегда.
Старый 03.08.2019, 09:32   #6 
Sliz
Знаток Sliz вне форума

 Аватар для Sliz

Ответить с цитированием
Info
Сообщений: 2,385
Всего лайков: 125
Регистрация: 10.05.2013
GoHa.Ru II Степени
Re: История о том, как фиксят баги

Цитата:
Сообщение от L1TR Посмотреть сообщение
Мне кажется, они его никогда не починят
Ну, это такой долгострой, и как мне кажется, признак хорошей игры. В ней есть нечто незыблемое, монолитное, некий внутренний стержень, манифестацией которого является улей. Даже когда игра будет закрываться, когда будут выключаться сервера, и свет в помещениях потухнет, где-то в темноте будет мерцать одинокий дисплей - это последний оставшийся разраб, с красными глазами, сигаретой и кофе, будет судорожно копаться в коде Улья.
Сначала он воскрешал с вероятностью 50\50.
Потом он стал промахиваться своими дротиками мимо персонажей, воскрешая их "По-Поттеровски" - на 3\4
Потом он стал разваливаться от малейшего чиха.
Потом он стал агрить на себя всех мобов на карте.
Сейчас он стал воскрешать настолько медленно и со вкусом, что враги успевают бросить в тебя гранату, зажигалку, облить пеной, поджечь, подбежать к трупу и вы...ть его в сракотан, засунув туда же кувалду и сплясав на останках - а Улей будет методично пытаться плюнуть в тебя дротиком с видом нетторропливвого финского мудрецаааа.
Ждем дальнейших увлекательнейших изменений.
__________________
1 пользователь оценил это сообщение: Показать
Старый 03.08.2019, 09:32   Plem - куратор темы     #7 
Plem
 Альбомы пользователя
Plem вне форума

 Аватар для Plem

Ответить с цитированием
Info
Сообщений: 368
Всего лайков: 109
Регистрация: 29.07.2018
Игра: Guild Wars 2
Сервер: Aurora Glade
Ник: Plem.7356
Гилд.: [TALL]
GoHa.Ru III Степени
Re: История о том, как фиксят баги

Цитата:
Сообщение от _Orion_ Посмотреть сообщение
Уже не было?
Конечно. Спасибо
Старый 03.08.2019, 09:49   #8 
GreenBrother
GreenBrother вне форума

 Аватар для GreenBrother

Ответить с цитированием
Info
Сообщений: 4,434
Всего лайков: 86
Регистрация: 24.05.2007
Игра: Warframe
Ник: DarinTomey
GoHa.Ru I Степени
Re: История о том, как фиксят баги

Цитата:
Сообщение от Winterhearted Посмотреть сообщение
Кривой движок, который мигрировал из первой части. Баги будут всегда.
Угу, а давайте напишем о том, в чём не разбираемся, чтобы потроллить на грани фола .
Если смотреть на баги движка первой версии и сравнивать с багами второй версии, то ВНЕЗАПНО! можно заметить, что баги не повторились. Зато успешно повторяется хождение по граблям, как в первой части (в том числе и с типичными багами при апдейтах) - такое впечатление, что совсем другая команда пилит вторую часть, которая совсем не изучала опыт первой.

Добавлено через 1 минуту
Цитата:
Сообщение от Sliz Посмотреть сообщение
Сейчас он стал воскрешать настолько медленно и со вкусом
Ну чего ты начинаешь, всего примерно в 3 раза медленнее, чем до этого
__________________
Когда вашего персонажа в очередной раз жахнут Дубиной Аццкого Замеса Из Волшебного Дерева С Гвозями +5 к дамагу, ваш персонаж упадет головой вверх, и если будет, ночь, он увидит звезды. Мигающие переливающиеся сияющие громады, кружевные облака звездной пыли, ледяные болиды холодных комет и раскаленные скопления межзвездного газа. Тогда то ваш персонаж и поймет, что пока он машет дрыном на грешной земле, настоящая магия проходит мимо него. Тогда то и настанет время качать клиент EVE Online...
Стырено из подписи razoron.

Последний раз редактировалось GreenBrother; 03.08.2019 в 09:49. Причина: Добавлено сообщение
Старый 03.08.2019, 16:47   #9 
Winterhearted
Бойовий троль Winterhearted вне форума

 Аватар для Winterhearted

Ответить с цитированием
Info
Сообщений: 7,526
Всего лайков: 513
Регистрация: 10.11.2014
Медаль "500 лайков"
Награжден за: 500 лайков!
Re: История о том, как фиксят баги

Цитата:
Сообщение от GreenBrother Посмотреть сообщение
Угу, а давайте напишем о том, в чём не разбираемся, чтобы потроллить на грани фола .
Если смотреть на баги движка первой версии и сравнивать с багами второй версии, то ВНЕЗАПНО! можно заметить, что баги не повторились. Зато успешно повторяется хождение по граблям, как в первой части (в том числе и с типичными багами при апдейтах) - такое впечатление, что совсем другая команда пилит вторую часть, которая совсем не изучала опыт первой.
Ты сейчас рассуждаешь как игрок, а я как разработчик. Баги будут повторяться один в один, если просто код копировать, чего в данном случае не происходило. А вот постоянные проблемы с тем, что крайне сложно заскриптовать скиллы без того, чтобы постоянно вылазили кейсы, в которых скиллы бегают - это очень похоже на проблему движка. И да, писать разработчику с 10+ лет экспириенса о том, что он не разбирается - это сильно. А про какие-то грани фола, так вообще синдромом вахтёра попахивает.
Старый 03.08.2019, 22:29   #10 
GreenBrother
GreenBrother вне форума

 Аватар для GreenBrother

Ответить с цитированием
Info
Сообщений: 4,434
Всего лайков: 86
Регистрация: 24.05.2007
Игра: Warframe
Ник: DarinTomey
GoHa.Ru I Степени
Re: История о том, как фиксят баги

Цитата:
Сообщение от Winterhearted Посмотреть сообщение
А вот постоянные проблемы с тем, что крайне сложно заскриптовать скиллы без того, чтобы постоянно вылазили кейсы, в которых скиллы бегают - это очень похоже на проблему движка.
Разработчик с 10-летним опытом, а ты работаешь только с проектами, которые на 100% покрыты документацией и всевозможными тестами? Если да, то мне стоит только пустить слезу о том, насколько у людей бывает всё чётко организовано, потому что за мои примерно тоже 10+ лет разработки 100% покрытия документацией и тестами проекта у меня не было никогда. Как я подозреваю, у юбиков такая же херня, но они как минимум стараются, за что им респект как от игрока, так и от разработчика .
__________________
Когда вашего персонажа в очередной раз жахнут Дубиной Аццкого Замеса Из Волшебного Дерева С Гвозями +5 к дамагу, ваш персонаж упадет головой вверх, и если будет, ночь, он увидит звезды. Мигающие переливающиеся сияющие громады, кружевные облака звездной пыли, ледяные болиды холодных комет и раскаленные скопления межзвездного газа. Тогда то ваш персонаж и поймет, что пока он машет дрыном на грешной земле, настоящая магия проходит мимо него. Тогда то и настанет время качать клиент EVE Online...
Стырено из подписи razoron.
Старый 03.08.2019, 22:38   #11 
Winterhearted
Бойовий троль Winterhearted вне форума

 Аватар для Winterhearted

Ответить с цитированием
Info
Сообщений: 7,526
Всего лайков: 513
Регистрация: 10.11.2014
Медаль "500 лайков"
Награжден за: 500 лайков!
Re: История о том, как фиксят баги

Цитата:
Сообщение от GreenBrother Посмотреть сообщение
100% покрытия документацией и тестами проекта
Это утопия. Но у них же не 100500 скиллов, так что именно для этой части можно было написать нормальное задокументированное API, особено когда они знали по опыту прошлой части, что постоянные проблемы с этим.
Цитата:
Медицинский улей зависит от всей системы, связанной с возрождением. Изучая проблемы, о которых нам сообщалось, мы обнаружили большое множество недочетов в других системах, которые взаимодействуют в процессе функционирования данного навыка. Опора на разные бэкенд-системы позволила легко создать новый навык, но это привело к тому, что стало сложнее найти первоисточник проблем. Всякий раз, когда менялась какая-то одна система, на которую опирался Медицинский улей, его работа могла стать нестабильной. Информирование об изменениях, подобных этому, может быть непростым делом в команде, состоящей из сотен людей, разбросанных по всему миру, которые работают над различными аспектами игры.
Удачи пацанам в нелегком деле фикса багов со скиллами, при таком бардаке она очень пригодится.
Ответ

Метки
action, massive entertainment, mmo, tom clancy’s the division 2, ubisoft

Вернуться   GoHa.Ru > Форумы > Новые Игры > Tom Clancy's The Division 2 > Новости The Division
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


(c) GoHa.Ru 2003-2019
Рейтинг@Mail.ru