Талантливейший художник из Нью-Йорка стал первым, кто придумал и реализовал свою масштабную игру – ТURBO HOOD. А мы ему в этом помогли. В статье рассказываем, как это было.

Два года назад мы заколлабились с Алексеем Машковым, невероятным художником и тату-мастером из Нью-Йорка, чтобы реализовать его сумасшедшую (в самом хорошем смысле) идею.
Создать игру со своей уникальной вселенной, в которой можно делать всё, что душе угодно. Соединить три разных жанра с разными механиками, интегрировать туда сюжетные видео с разными пасхалками и эстетикой культуры 90-х. Никаких правил, никаких пожеланий клиента, полная свобода.
Вот, что об этом говорит сам Алексей
Эта идея была у меня с раннего детства, но мне пришлось отложить ее, пока я не оказался в Нью-Йорке. Этот город сам по себе очень напоминает игровое пространство, сумасшествие во всей своей красе. И как только у меня появилось свободное время на создание нового арта, я вспомнил свою давнюю мечту. К тому же, к этому моменту у меня уже была команда, с которой мы работали над другими Digital проектами.
Суть игры
Люди начинают болеть неизвестной болезнью. Основной симптом — это черная слизь, которая начинает вытекать из рта и разливается везде.
Главный герой узнает об этом из новостей в магазине. Когда он выходит на улицу, его застает врасплох полный апокалипсис.
Теперь перед ним стоит задача — разобраться, что происходит.
Игра разделена на три уровня сложности. Коротенько и без спойлеров рассказываем, в чём суть.
Первый уровень
Игроку предстоит пробраться сквозь кучу мобов, ковидстеров, пьяных панкушных чик, Бритни-пауков, а в заключении — победить мак-босса.
Сюжет игры раскрывается через кат-сцены, которые рассказывают о событиях, происходящих в городе.

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

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

Самая сложная задача заключалась в том, чтобы уместить множество графических, видео- и аудиоматериалов в наши уровни так, чтобы игра не требовала много ресурсов. Все элементы нарисованы вручную и строго последовательно. Бэкграунд живой, включает множество видео и аудио. Наша цель была избежать просадки производительности и чрезмерного потребления ресурсов. Сложную графику удалось оптимизировать с помощью хитрых приемов, и в результате каждый уровень стал настоящим шедевром, сохранив легкость и производительность.
Результаты
– Успешный PR-ход и рост узнаваемости: получилось создать нечто уникальное в тату-индустрии и выпустить игру с персонажами своих работ.
– Игра «Turbo-Hoo» способствовала увеличению числа подписчиков и росту популярности автора.
– Этот проект стал отражением творческого мира художника и позволил воплотить идеи, которые были бы невозможны в рамках иных проектов. Он послужил источником вдохновения для создания новых персонажей и способствовал развитию цифрового искусства автора.
– Новый мерч Алексея, полностью основанный на вселенной игры, нашел отклик у аудитории, и люди с радостью его приобретают.
Мы отвечали за разработку, ребята из p.motion за анимацию, а Алексей взял на себя художественную часть игры
Нам нужно было подобрать игровой движок, который поддерживает HTML5, JavaScript. Так выбор пал на Phaser.js.
В тот момент мы ещё не знали, что его будет недостаточно из-за мощности браузера. Но обо всём по порядку.
Столкнулись с бесконечным количеством вещей, которые не знали, как решить
Когда запускается браузерная игра, движок единожды рендерит всю сцену и отдаёт виде канваса. Всё, что в нём находится, хранится в оперативной памяти. Тут-то мы и столкнулись с большой проблемой – несколько сотен мегабайт данных нужно хранить в оперативной памяти, и очень быстро их обрабатывать.
Как надо игра запускалось только в Chrome, потому что он может использовать аппаратное ускорение. Что нельзя сказать о том же Safari, у него с аппаратным ускорением все сложнее. А перед нами стояла задача сделать так, чтобы игра была максимально доступна для всех.
Начали думать, как эту проблему решить
Сначала загрузили уровни на разные страницы – при переходе между уровнями мы собирали только ту часть ассетов и тот скрипт, который относился к конкретному уровню. Но проблему это не решило – игра продолжала падать на Safari.
Мы поделили первый уровень игры на три части, но мощности, чтобы его отрендорить, всё равно не хватало.
Угорели по Тодду Говарду и сделали загрузку везде, где можно
Все знают эти мемы про Starfield, где загрузка на каждом шагу? Мы сделали то же самое:)
И получилось круто – то, что изначально было проблемой, стало костылем для создания фишки игры, потому что загрузочные экраны – это отдельный арт, который хочется рассматривать в деталях.

Больше о трудностях и концепции рассказываем в интервью
Отзыв
Работа с командой We Wizards оставила исключительно положительное впечатление; было бы странно говорить иначе, учитывая достигнутый результат.
Ребята не только качественно реализовали мои запросы, но и активно участвовали в разработке схем взаимодействия персонажей/поверхностей/слоев в игре. Я неоднократно получал от них ценные рекомендации и ясные объяснения по поводу функционирования различных механизмов.
Я уверен, что наш продукт обладает значительной конкурентоспособностью на рынке игровой индустрии, и я определенно планирую продолжать его развитие в будущем.
Алексей Машков
Технологии
HTML5, JavaScript, Phaser.js.
FIN!
Спасибо всем, кто дочитал до конца! Поиграть в игру можно здесь. А вот наш тг-канал.