Вас наверняка интересовало, как создаются игры от культовой компании Blizzard. Как разработчики решают, какую фишку оставить, а какую убрать из проекта. Секреты разработки не всегда такие уж «секреты». Что-то сложно для восприятия людьми, не понимающими в программировании, что-то не выносится за пределы офиса, потому что «еще рано». Основной «срыв покрова» произошёл на последнем фестивале BlizzCon 2015. Для части аудитории стало интересным откровением уже то, что люди, программирующие World of Warcraft, Overwatch, Diablo и тд — зачастую одинаковые.

 1. Программисты Overwatch подготавливали демо-версию для демонстрации в Китае, однако забыли убрать кровь. В Китае подобные вещи находятся под запретом, а когда представитель компании приехал в Шанхай  для демонстрации контента, его товарищи в Калифорнии должны были выдумать способ, как наиболее комфортно передать по китайскому wi-fi новый билд игры. В коде Overwatch есть место, отвечающее за расчёт попадания в игрока или в стенку, и в зависимости от этого отображается спецэффект. Был написан уникальный патчер, менявший в коде один (!) байт, после сохраняя его. Небольшая программка легко передалась в Китай, где процесс прошёл без эксцессов.

Логотип компании

 2. Релиз дополнения к World of Warcarft: Warlords of Draenor прошел с рядом сложностей. WoW — игра с большой историей и дело было даже не серверной мощности. У каждого такого сервера свои задачи: один обеспечивает доступ к аккаунтам юзеров, другой содержит базы данных и тд. Перед запуском была создана система, отвечавшая на тот момент всем требованиям. Но в момент запуска выяснилось, что серверы, отвечающие за подземелья больше не могут выделить дополнительную память. Проблема возникла из-за гарнизонов, каждый из которых в игре является отдельным подземельем. Без малого восемь часов ушло на то, чтобы сотрудники датацентров, вынимая серверы, вставляли в них новую оперативную память и ставили стойки обратно. После остались проблемы с атаками на сервера, но и это было решено в течение недели.

3. MOBA-игра Heroes of the Storm сделана на графическом и физическом движке Starcraft II. Когда девелоперы планируют сделать какой-то фикс в коде Героев Шторма, они должны учитывать все написанные игроками модификации, использующие функционал, который будут фиксить. В компании ещё остались старожилы, способные читать и изменять участки кода даже пятнадцатилетней (!) давности (касается других проектов), поэтому процесс патчинга проходит на «ура».

Статуя орка у офиса компании

 4. Разработчики первоначальной версии World of Warcraft установили за правило, что инвентарь героя будет храниться в массиве данных. С этого и началась знаменитая проблема с неудаляемой сумкой на 16 слотов, стоящей первой среди прочих. В некоторых первых ячейках массива заложены предметы, одетые на герое. После этого идут сумки — такая схема кодинга уходит корнями в Diablo 2, где это делало возможным отображение сумки на одном экране. Когда еще в бету добавили банк, ячейки были вписаны в конец массива. До выхода дополнения Wraith of Lich King игрок не мог получать доступ к своему банку из любой зоны, поэтому разработчики рассчитывали, что в определенной точке массива точно заканчивается инвентарь и начинается банк.

 5. В Blizzard трудятся невероятные геймдизайнеры, вечно выдумывающие способы, позволяющие покорять мир компании снова и снова. Программисты не должны отвечать им отказом, а наоборот, придумывать самый эффективный способ воплощения их идей. Если геймдизайнер предлагает ввести персонажа, которым управляет сразу два человека (привет, Чо-Галл!), то программисты вначале рвут волосы от бешеной идеи, а после выдвигают теории о том, как это должно выглядеть в коде. В отделе разработки висит плакат, ставший культовым. На нём изображен включенный утюг, на нем стоит чашка кофе и на ней кастрюля со спагетти. Подпись: "проблема решена, вы можете варить спагетти".

 6. Давний вопрос, волновавший любителей игр от Blizzard, «Когда же введут опцию в Battle.net «скрытый онлайн». Суть опции — вы отображаетесь оффлайн, но на самом деле находитесь в сети. Тем самым фанаты хотят скрываться от ненужного внимания, но играть в онлайн-проекты компании. Ответ на вопрос прост. Политика Blizzard негативно смотрит на подобные вещи, поэтому данная функция реализована не будет. Потому что играть в Hearthstone вместо рейда в World of Warcraft — поступать плохо по отношению к рейду, который может ждать именно вас!

World of Warcaft — популярнейший проект Blizzard

 7. Проекты компании функционируют в окружении, где любая неверная команда может всё сломать. Например, опция /who в World of Warcraft отображает список игроков онлайн на сервере за одну фракцию. В момент релиза оригинальной игры почти каждый хотел быть в курсе, сколько людей и каких уровней играют прямо сейчас. Это приводило к затратам памяти серверов на 85% только от команды /who.

 8. Грядущий Overwatch должен выйти одновременно для всех платформ. Программисты ожидают немалых сложностей при запуске серверов.

Если у вас есть подобная интересная информация, делитесь ею в комментариях!