Эту статью написал Ник, наш старший нарративный дизайнер.
За несколько дней до каждого крупного запуска наступает День списка изменений. Для непосвящённых: День списка изменений примерно настолько же волнительный, как Рождество и ваш День рождения вместе взятые, с условием, что вы знаете, что в качестве подарка получите только список данных (но при этом вы ну очень-очень любите данные). Список изменений – это кульминация предшествующих месяцев работы множества сотрудников GGG, сухая выжимка в нескольких сотнях предложений, не дающая истинного представления о том, сколько труда и любви вложено в каждое обновление. Но даже список изменений должен кто-то написать.
Этот кто-то – я, и объём работы, уходящий на список изменений каждого крупного обновления, существенный. Сегодня я проведу вас через весь процесс от начала до конца, чтобы вы могли заглянуть за кулисы и увидеть изнанку происходящего.
Шаг 1: Накопление
Вопреки распространённому заблуждению, списки изменений не генерируются автоматически. И не то чтобы целесообразно заставлять людей, работающих над программой, писать собственные списки изменений. Вместо этого все трудятся как обычно: создают модели монстров или правят баланс умений, или режут шансы выпадения сфер возвышения вдвое, и по мере “фиксации” своей работы в нашей системе контроля версий (её добавления к огромной коллекции игровых файлов), они в идеале пишут небольшое примечание, поясняющее, что именно было сделано. В работе над Path of Exile каждая мелочь, кем бы ни добавленная, фиксируется в большом репозитории файлов в сопровождении подобного примечания, и её можно просмотреть в нашей программе контроля версий. Выглядит это так:
Прежде чем я смогу приступить к написанию списка изменений, мне нужно перечитать все эти зафиксированные дополнения и правки, и вытащить нужные – детали, которые заметно меняют существующий контент или добавляют новые функции, о которых игроки захотят узнать. У нас четыре основных репозитория, и в типовом квартальном обновлении PoE там приблизительно
двадцать тысяч зафиксированных изменений (как минимум). Я беру нужные примечания и начинаю копировать их в документ в оригинальном виде. Может уйти несколько дней только на то, чтобы просмотреть все имеющиеся примечания. Как только я закончу, я пью чего-нибудь покрепче и стискиваю зубы перед следующим этапом.
Шаг 2: Транслитерация
Люди, работающие в GGG, очень умные и умелые, и я их очень люблю. Тем не менее, примечания к фиксируемым правкам они пишут абсолютно богомерзкие. Я их не виню – обычно им нет нужды раздумывать над примечаниями. Значительный объём выполняемой сотрудниками работы не попадает в список изменений из-за самого характера такой работы (как-то: новые микротранзакции или планомерные улучшения производительности, графики и звука). Поэтому 98% времени не важно, что их примечания бестолковые. Но я должен убедиться, что эта бессмыслица либо не попадёт в список изменений, либо перестанет быть бессмыслицей. Обретёт смысл.
У нас есть система отслеживания всей работы, которую необходимо выполнить, и фиксируемые изменения обычно привязаны к этой системе. Поэтому я гляжу на выбранные мною правки, нахожу “корень” (главный трекер в конкретной задаче) и просматриваю все изменения и комментарии в данной ветке, чтобы выяснить, какого лешего на самом деле означает примечание типа “Отрегулирован урон”.
Часто примечание бывает связано с тем, что игроки ещё не видели, и потому отправляется в категорию ненужного. Иногда речь идёт о чём-то важном, например существующем умении игрока или бое с боссом, и мне предстоит выяснить, что изменилось и как, и указать это как изменение в списке.
Замечу, что не каждый работник столь ужасен в написании примечаний, и у гейм-дизайнеров стало получаться гораздо лучше после того, как я начал угрожать переломать им шеи ударом карате за отсутствие деталей. К счастью, они не знают, что я чрезвычайно хилый и что руки у меня мягкие как зефир. Спасибо, ребята!
Однако иногда содержимое примечания не становится понятнее даже с информацией о задаче. Такое, в частности, бывает с вредными багами. В этом случае мне приходится непосредственно обращаться к тем, кто работал над проблемой, и просить объяснить, что именно они исправили или поменяли.
Весь этот этап занимает много времени и зачастую происходит параллельно с последующими шагами. К тому же я быстро начинаю скучать, так что именно на этом шаге я включаю в список изменений глупые шутки, чтобы развлечься. Не помогает.
Шаг 3: Детали
Даже в лучших примечаниях редко содержится специфическая информация, интересующая игроков. Поэтому в каждом обновлении я выясняю, какие умения, предметы, свойства и что угодно ещё претерпели изменения, и одно за другим перебираю их в игре, чтобы набросать изначальные и новые значения. Именно этого этапа я боюсь больше всего, в частности потому, что очень легко упустить что-нибудь вроде изменения затрат маны на 1 уровне камня, и ещё потому, что баланс зачастую правится непрерывно, поэтому всё мною записанное может поменяться на следующий день.
Делу не помогает тот факт, что названия многих вещей в игре не совпадают с их названиями в игровых файлах, а иногда в игровых файлах встречаются штуки, названия которых в игре носят другие штуки. Например, если я попытаюсь вызвать камень проклятия Беззащитность, то получу камень проклятия Отчаяние. Так что нередко я должен решить маленькую загадку, прежде чем получу “награду” в виде информации о балансе.
Шаг 4: Перевод и исправления
Ко времени публикации наши списки изменений обычно достигают длины от 7000 до 14000 слов, и почти наверняка будут пестрить опечатками, ошибками и устаревшей информацией. К счастью, у нас есть отдел контроля качества, который вручную проверяет все изменения, и команда переводчиков, которым так или иначе придётся прочитать весь список с целью перевода.
Как правило, несколько замечательных человек из отдела контроля качества просматривают список на предмет очевидных ошибок и упущений, и оставляют для меня примечания. Тем временем наши чудесные переводчики внимательно изучают каждый пункт и превращают его во что-то пригодное для своей аудитории. Вы знали, что списки изменений переводятся на восемь разных языков? Наши переводчики также исключительно хороши в проверке названий, расстановке пробелов, заглавных букв и всего прочего в несметном числе игровых терминов, и оставляют мне множество заметок, которые я прочитываю и вношу правки.
Шаг 5: ДЕНЬ СПИСКА ИЗМЕНЕНИЙ! Публикация и огорчение
Прежде чем мы сможем опубликовать список изменений, его нужно отформатировать. В день выхода списка изменений наш комьюнити-менеджер Наталья тратит на это несколько часов, потому что она мазохист. Зато конечный результат хорош, так что спасибо Наталье! Кроме того, веб-разработчик Риёко недавно сделала инструмент для облегчения форматирования, а также публикации масштабных списков с данными наподобие изменений свойств. Спасибо, Риёко!
Тем временем директор по связям с общественностью Бекс (“директор”, модно как!) проводит день в публикации тизеров, мемов и вообще в попытках утихомирить сообщество, как обезьянка, танцующая за барахло на базаре, только барахло – это “лайки” (Бекс по-прежнему обезьянка).
Когда с форматированием покончено, мы стараемся опубликовать список одновременно на всех языках и садимся отдыхать.
Шутка!
Из-за одного лишь объёма изменений в каждом обновлении (и
однозначно не из-за моей некомпетентности) мы обычно упускаем какие-нибудь детали, и игроки (и другие разработчики!) с удовольствием нам на это указывают. Так что зачастую остаток Дня списка изменений проходит в получении сообщений обо всём, что я забыл, а потом я сообщаю Наталье обо всём, что ей нужно обновить.
Шаг 6: Забыть
Написание списка изменений, подобно перелому костей или употреблению слишком большого количества мексиканской еды, травматично. Вскоре после публикации очередного крупного списка я забываю, насколько ужасными были последние несколько недель продирания через зафиксированные изменения, и продолжаю работать над другими вещами, в блаженном неведении о следующем Дне списка изменений, смутно вырисовывающемся на горизонте.
От начала и до конца на сверку, написание и публикацию крупного списка изменений к каждому дополнению уходит где-то порядка 80 часов, не считая труда других людей. Я занимаюсь ими со времён обновления 3.0.0, и таким образом выходит, что я полгода работы потратил только на приготовление списков изменений.
Вот так всё и делается. Теперь вы знаете, чего стоит каждый список. Теперь и вас будет тяготить это знание.
Я знаю, что без ответа остался один животрепещущий вопрос: КОГДАСПИСОКИЗМЕНЕНИЙ?
12 января. Вот когдасписокизменений.