/DEV: ЖИЗНЬ ОБНОВЛЕНИЯ

Как создаются обновления для League of Legends?

В прошлом месяце команда Ущелья призывателей – то есть большая группа разработчиков, куда входит “команда балансировки” – в реальном времени писала в твиттер о том, как продвигается работа над изменениями баланса для обновления 9.13. Сегодня мы еще раз вспомним некоторые из их твитов и соберем все подробности воедино, чтобы рассказать вам, как создаются обновления.

Но прежде чем вы узнаете, почему был ослаблен ваш любимый чемпион, давайте поговорим кое о чем действительно интересном… о планировании.

Для всего должен быть план… ну, почти

Работа над каждым обновлением начинается со “спринтового планирования” – собрания, где дизайнеры определяют задачи среднего размера, над которыми они будут работать в этом цикле. Сюда входят правки предметов (например, Клинка ярости Гинсу), полезные изменения чемпионов (вроде пассивного эффекта абсолютного умения Блицкранка) и поддержка грядущих или недавно выпущенных чемпионов. Мы также обсуждаем планы на будущие крупные изменения игрового процесса – например, предсезон 2020. Здесь не обсуждаются простые правки вроде увеличения/уменьшения показателей – этими вещами мы занимаемся уже в конце цикла обновления.

02abc_n1kqkdup5o6pcrbyyx7j.png
Составление планов на обновление 9.13! #lifeofapatch /// Ритуал команды УП №3: спринтовое планирование (проводится каждые две недели). Мы планируем свою работу перед каждым новым циклом в Лиге, используя систему, которая позволяет отслеживать рабочую нагрузку каждого члена команды. #lifeofapatch

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

  1. Есть ли в игре неотложная проблема, которую нельзя исправить мелкими изменениями и которая потребует длительного тестирования?
  2. Есть ли у нас работа, начатая ранее, которую мы собираемся продолжить?
  3. Нужно ли в игре что-то, что можно закончить за 6-8 недель?

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

Обсудив эти вопросы в цикле обновления 9.13, мы решили сосредоточиться на Свейне, Жезле веков, Пайке одиночной линии, Удире, Иллаой, Мордекайзере (потенциальные дополнительные правки) и изменениях предсезона.

Выбор направления

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

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

03_zprnxmucxsy9bclzkydx.png
Во время блиц-собраний команде нужно постоянно следить за тем, чтобы не зависнуть на какой-то одной теме навечно. Поэтому они устанавливают ограничения по времени и устраивают голосования, чтобы решить, выделить ли еще две минуты на обсуждение конкретной темы. #lifeofapatch /// Рассказав об изменениях всей группе, команда пробует предложенные идеи во время ежедневных тестов, чтобы понять, какие из них стоит включить в обновление. #lifeofapatch

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

04_k83vxzbca6fl4fx33sh7.png
Сейчас буду играть против @RiotBlaustoise на средней линии. Он берет Акали, а я – Нико. Посмотрим, как он справится. #lifeofapatch /// То чувство, когда @RiotBlaustoise убивает меня один на один, а затем вскакивает из-за стола и бежит ко мне, чтобы дэбнуть

Если вам интересно, то вот как проходила работа над некоторыми изменениями для обновления 9.13 – от спринтового планирования до конца цикла.

Новый вызов!

Команда Ущелья призывателей иногда зовет на помощь команду, занимающуюся чемпионами, для работы над крупными изменениями персонажей – то есть правками, которые сложнее обычных усилений или ослаблений, но не дотягивают до уровня полноценных переработок (хороший пример – изменения Атрокса в обновлении 9.9). Такое случается, когда для решения проблем чемпиона недостаточно подкрутить цифры или внести изменения, повышающие удобство игры. Обычно в подобных случаях существует множество возможных путей, но не изучив их, нельзя узнать, какой лучше. Поэтому работа над такими изменениями обычно длится много недель.

В обновлении 9.13 RiotRepertoir начал долгосрочную работу над изменениями Акали.

14_Akali_Changes_r8ikbzkxlbt1ztn3ik40.png
Так как у нас сейчас в разгаре #lifeofapatch, вот изменения Акали, над которыми я начал работать на этой неделе. Здесь также есть скриншоты из рабочей переписки с описаниями, которое я отправил коллегам (не обращайте внимания на опечатки). 1) Текущие данные о балансе 2) Мысли о дизайне 3) Изменения – ничего из этого еще не утверждено, а числа не финальные.

Вот письмо целиком, вот – отзыв Riot Blaustoise, а вот – текущий список изменений.

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

15_Loc_Lock_jbii95hiucmtaye6ojxm.png
Сегодня последний день для внесения текстовых изменений (мы утверждаем описания, чтобы их успели перевести по всему миру). Обычно это значит, что больше никаких изменений механик не предвидится. Впрочем, числа еще могут поменяться. Вот как выглядит список правок для Иллаой: #lifeofapatch

Изменения Иллаой уже в игре, но если вам интересно, весь список доступен здесь.

Пожалуйста, усильте моего чемпиона

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

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

Напомним, как выглядят эти границы:

Уровень игры

Ослабляем, если выполнено ЛЮБОЕ условие

Усиливаем, если выполнены ВСЕ условия

Обычный

Золото I и ниже

Частота побед выше 54,5%; при этом частота блокировок ниже СЧБ.

ДО

Частота побед выше 52,5%; при этом частота блокировок превышает СЧБ минимум в 5 раз.

Частота побед ниже 49%.
Высокий

От Платины IV до ранга грандмастера

Частота побед выше 54%; при этом частота блокировок ниже СЧБ.


ДО

Частота побед выше 52%; при этом частота блокировок превышает СЧБ минимум в 5 раз.

Частота побед ниже 49%.

Элитный

Ранг претендента

Частота блокировок выше 45%.Присутствие ниже 5%.
Профессиональный

5 лучших профессиональных лиг

Присутствие в текущем цикле выше 90%.

ИЛИ

Присутствие на протяжении 2 циклов подряд выше 80%.

Присутствие ниже 5%.

Статистика по обновлению 9.12:

ПОСМОТРЕТЬ ВСЕ ИЗОБРАЖЕНИЯ (4)

Основываясь на этих данных, мы подготовили список усилений и ослаблений для чемпионов и предметов в обновлении 9.13.

Усиления:

  • Сайлас
  • Синдра
  • Орн
  • Тристана
  • Знамение Рандуина

Ослабления:

  • Сивир
  • Карма
  • Сона
  • Седжуани
  • Похититель сущности
17_rrjhj7jldwz5hsuvv70v.png
О нет, они ослабляют МОИХ чемпионов #lifeofapatch /// РЕШИЛИ ОСЛАБИТЬ СОНУ ТТ

То чувство, когда подшучиваешь над игроками, потому что их чемпионов собираются ослабить, а в следующем обновлении ослабляют твою любимицу.

Данные помогают нам быть объективными в большинстве случаев, однако иногда команда принимает субъективные решения на основе коллективного опыта, даже если статистика не поддерживает эти изменения напрямую. Главный пример в этом обновлении – Сона. Она пользуется большой популярностью на всех уровнях игры, но недостаточной, чтобы было сразу понятно, что ее следует ослабить. Тем не менее команда решила, что стиль игры, которым славится Сона, негативно влияет на Лигу, так что ее надо менять, невзирая на данные.

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

В данном случае мы ослабили Похититель сущности, потому что после пары усилений и возникновения стиля игры, где игроки берут Грань Бесконечности, Похититель сущности и руну “Смертельный темп”, эффективность предмета возросла выше ожидаемого.

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

Пожалуйста, усильте моего чемпиона сильно-сильно!

Когда мы определились с тем, каких чемпионов (и какие предметы) усиливать и ослаблять, приходит черед решать, как это сделать.

Работая над ослаблениями, мы задаемся вопросами: “Что не так с этим чемпионом?” и “Достаточно ли сильно выражены его слабые стороны?” Седжуани – пример чемпиона, который превысил допустимый предел только на профессиональном уровне, так что нам нужно было найти причину, по которой Седжуани ценят профессионалы. Они рано покупают Доспех Вармога, поэтому мы уменьшили прирост здоровья, – это снизит силу Седжуани на профессиональной сцене, но почти не затронет ее эффективность в одиночной очереди. (Профессионалов редко останавливает изменение основных показателей, но если это повлияет на то, за что они ценят чемпиона, нужный эффект будет достигнут.)

18_Sejuani_oo5fm9ivd6lpyz338g28.jpg

Что касается усилений, мы спрашиваем себя: “На каком уровне игры этот чемпион показывает худшие результаты?” Как правило, если чемпион получает усиление, это значит, что у него низкая или средняя эффективность на большинстве уровней, а на определенных – и вовсе ужасная. Хороший пример тому – Синдра. Она неплохо показывает себя на профессиональной сцене, но при этом страдает в одиночной очереди. Мы знаем, что Синдра любит доминировать в мете, особенно у профессионалов, поэтому решили не перебарщивать с усилением. Мы увеличили ее прирост маны, чтобы повысить ее силу на всех уровнях игры, особенно там, где у игроков чаще всего возникают проблемы с ресурсами.

Усиливая или ослабляя чемпиона, мы ставим перед собой цель: насколько должна измениться его частота побед в одиночной очереди. (Если же мы ослабляем чемпиона для профессионалов, то наша цель – лишь вернуть его в установленные границы.) В случае с Синдрой мы ожидали 0,5-1-процентное увеличение частоты побед, и это еще одна причина, почему мы выбрали прирост маны – обычно он мало влияет на частоту побед.

С другой стороны, если нам нужно более значительное изменение частоты побед (>2%), мы усиливаем или ослабляем раннюю стадию игры чемпиона – это больше всего влияет на его эффективность в одиночной очереди. Например, отняв у стрелка 3 силы атаки, мы серьезно понизим его силу. Аналогичным образом, если уменьшить базовый урон умения на низких уровнях, это сильнее отразится на частоте побед чемпиона, чем если бы мы уменьшили урон того же умения на высоких уровнях – или умения, уровень которого повышается позже.

А что дальше?

А дальше обновление появляется в игре… ну, почти. Далее пишется описание изменений – мы собираем все правки воедино, добавляем пояснения и отправляем все это в регионы на перевод. После этого мы готовим все к релизу, ненадолго отключаем серверы, жмем большую зеленую кнопку – и обновление появляется в игре!

А потом все начинается сначала.