Отвечая «Да» Вы подтверждаете, что Вам есть 18 лет
Врата были украшены барельефом. Изрыгающие пламя демоны без глаз на угловатых, покрытых странными наростами лицах. Сгорбленные человекоподобные фигуры с непропорционально длинными руками. Крылатые львы. Обнаженная дева баюкала на руках отрубленную голову. Рядом существо с головой птицы, слово сошедшее с картины Босха, держало в когтях сердце, вырванное из груди скованного цепями пленника. Крылатый змей покоился в ветвях дерева по соседству с висельниками.
Черное дерево и сверкающая в пламени факелов бронза скрывали за собой ответы на все вопросы. И все же, я не решался сделать шаг. Просто стоял и продолжал любоваться отблесками огня и игрой теней. Все-таки ray tracing и DLSS способны творить чудеса.
Я отложил геймпад в сторону.
* * *
С чего начиналась “Wrath of Erra” – интервью с Максимом Ворониным
Не будет преувеличением, если я скажу, что “Гнев Эрры” взорвал мир. На момент написания этой статьи число проданных экземпляров достигло отметки в 7 миллионов – а ведь с момента релиза прошло каких-то полтора месяца. Игра от никому не известных отечественных инди-разработчиков заставила именитые ААА-проекты глотать пыль далеко позади. Ранее нам уже удалось пообщаться с главой Akkadian Games Андреем Комаровым, сегодня же в гостях у GamesPhreak человек, который стоял у истоков проекта и заложил фундамент этого оглушительного успеха, но из-за трагического стечения обстоятельств был вынужден покинуть команду. Итак, встречайте: гейм-дизайнер и программист Максим Воронин.
GP: Здравствуйте, Максим! Прежде всего, огромное спасибо, что нашли время побеседовать с нами! Расскажите, как начался Ваш путь как разработчика игр?
Максим: Свою первую игру я создал, когда мне было лет шесть. Это был шутер от первого лица. Прототипом одного из боссов был мальчик с моего двора, с которым мы пару раз дрались, а пройдя игру до конца можно было завоевать любовь прекрасной принцессы — естественно, принцессой была девочка, которая мне нравилась. В шесть лет я еще не умел программировать, да и своего компьютера у меня не было, поэтому игра существовала целиком в моей голове, но она была проработана очень детально. Я рисовал в тетрадке планы уровней, делал эскизы оружия и врагов.
Лет в двенадцать у меня появился компьютер. Я много играл, делал моды для игр, даже написал пару игр с нуля, правда, довольно примитивных. По настоящему все началось в институте, когда я нашел единомышленников. Нас было четверо, четыре гика, помешанных на желании перевернуть игровую индустрию. Дана была гением 3D-моделирования, Вася и я занимались всем понемногу, попеременно то программированием, то дизайном уровней, то сюжетом, то музыкой. Андрею с самого начала отводилась больше менеджерская и коммерческая роль, он занимался раскруткой, вел наш твиттер и все такое. Мы выпустили нашу первую игру — шутер с элементами хоррора. Игра была бесплатной, получила очень положительные отзывы и мы решили замахнуться на что-то большее.
GP: И этим чем-то стала “Wrath of Erra”.
Максим: Мы хотели создать что-то действительно крутое. А крутыми для нас были три вещи. Первое — это игры в духе Ведьмака, Dragon Age или Mass Effect, с живыми персонажами, в которых хочется верить, и миром, в котором хочется жить. Однако мы понимали, что с нашими ограниченными ресурсами нам не было под силу создать что-то подобное.
Другим столпом игровой индустрии для нас была Dark Souls. Отчасти из-за атмосферы, отчасти из-за сложности — Вася как-то сказал, что “лишь угроза смерти заставляет тебя чувствовать жизнь”. По мне так это чушь, но с играми это работало. Вот только мы не хотели просто делать еще один soulslike-клон. Мы должны были принести какую-то изюминку. И эта изюминка появилась благодаря нашему третьему источнику вдохновения — серии Silent Hill. Вторая часть, наверное, одна из моих самых любимых игр, но вдохновила нас другая игра — Silent Hill: Shattered Memories. Есть в этой игре такая фишка: ты проходишь психологические тесты, и в зависимости от результатов игра меняется. Игра как-бы подстраивается под тебя, меняется дизайн монстров, облик персонажей и так далее. Я хотел сделать что-то подобное, но круче. Хотел, чтобы игра понимала, что пугает тебя больше всего, и подстраивалась под тебя. Создавала бы именно те ситуации, которые приводят тебя — лично тебя — в ужас.
GP: То есть, игра измеряла бы уровень страха игрока? Но каким образом?
Максим: В принципе, это не есть новая и уникальная идея. Такие игры были и до нас, но там применялась специальная периферия, специальные устройства — отслеживание движений глаз, пульса и т.п. То есть, мало было продать человеку игру, надо было еще продать все эти девайсы. Маленькой студии сделать это было нереально.
Поэтому мы пошли другим путем. Мы решили использовать те данные, которые у нас есть: как игрок управляет своим персонажем, куда он смотрит, бьет или бежит, и все такое. Разумеется, это на порядки усложняло нашу задачу. Это было настолько сложно, что никто в здравом уме не взялся бы за это. Но мы взялись.
Каким-то образом Андрей смог заинтересовать этой концепцией зарубежного издателя, и деньги полились рекой. Мы сняли офис, наняли еще людей, и работа закипела.
GP: Как эта фишка реализована технически?
Максим: Поначалу мы использовали нейронные сети и сложные алгоритмы. И поначалу у нас не получалось ровным счетом ничего. А ведь это был наш главный selling point. Дошло до того, что издатель пригрозил прекратить финансирование, если мы в течение трех недель не покажем рабочее демо.
Мы были в жутком цейтноте. Работали по 16 часов в сутки. Понимаете, для нас это было больше, чем работой. Это была наша страсть. Наша мечта. И мечта могла погибнуть. Мы не могли допустить этого.
Вот тут-то моя психика и дала сбой.
Думаю, стресс и недостаток сна не были первопричиной, скорее, они послужили катализатором разрушительным процессам в моем мозгу. Впервые это случилось, когда я поздно ночью возвращался домой из офиса, чтобы без сил рухнуть на кровать и ухватить несколько часов сна. Я проходил мимо длинной траншеи — меняли трубы, и мое внимание привлекло какое-то свечение.
Я подошел к краю, и холод прошелся по моему телу. У траншеи не было дна, не было видно и труб. Вместо них я видел локацию из нашей игры — Подземный Город, перекрученные металлические конструкции, уходящие в бездну. По ним перемещались жуткие существа без голов, но со множеством лиц на гипертрофированных туловищах.
Я отшатнулся. Закрыл глаза. Открыл.
Земля и трубы. Видение исчезло. Я плотнее закутался в куртку и поспешил домой. Галлюцинация от недостатка сна — сказал я себе. Дома я выключил будильник на телефоне, а потом и сам телефон, решив как следует выспаться.
Увы, выспаться мне не дали. Меня разбудил перфоратор. Злой на соседей, я кое-как умылся и принял душ. Голова раскалывалась. Звук не прекращался. Казалось, что сверлили прямо над ухом — в любой комнате звук был одинаково громким и раздражающим.
— Головы себе просверлите, клоуны! — закричал я.
Громкость вдруг стала нарастать, и по стене и потолку побежали трещины. А потом стена рухнула, и в комнату ворвались они.
Клоуны. Клоуны с перфораторами.
Вам, возможно, сейчас смешно, но мне было не до смеха. В ярких одеждах, с красными носами на уродливых, покрытых белым гримом рожах. Они носились по комнате и сверлили стены и мои вещи, мерзко кривляясь и хохоча. Я рванул на кухню и взял самый большой нож.
В левом верхнем углу моего поля зрения появилась красная полоска здоровья, рядом с ней — зеленая полоска выносливости. Один из клоунов — пузатый, с белым жабо на шее — задел меня сверлом, и плечо пронзила боль. Красная полоска уменьшилась. Я не попал по нему ножом, зато мой хук слева пришелся прямо в цель. Его голова оторвалась — вместе с жабо — и стала летать по комнате, смеясь и показывая язык.
Я увернулся от выпада другого противника и ударил в ответ. Второй раз, третий. Я попытался ударить в четвертый раз, но не смог — полоска выносливости была пуста. Клоун повалил меня на пол и вогнал сверло мне в грудь. Все потемнело, и я увидел красную надпись на черном фоне. “Иркалла ждет”.
Я открыл глаза и осмотрелся. На обоях и мебели были следы от моего ножа. Разбитый телевизор валялся на полу. Компьютер каким-то чудом остался цел.
Некоторое время я приходил в себя. Мне следовало бы показаться врачам. Тогда может и не случилось бы всего, что случилось потом. Но я этого не сделал. Я просто оделся и пошел на работу.
А на работе странности продолжились. Нет, галлюцинаций больше не было, было другое. Я вдруг понял, как нам реализовать нашу фишку. Вот только обычные языки программирования для этого не подходили. Нужны были совершенно иные концепции. То, что возникло в моей голове, нельзя было воплотить с помощью переменных, функций, классов и прочего. Так что я, ни много, ни мало, создал свой собственный язык программирования и начал писать на нем.
“Wrath of Erra” основана на шумеро-аккадской мифологии, точнее, на очень вольной интерпретации мифа об Эрре. Поэтому я решил, что мой язык должен использовать шумеро-аккадскую клинопись. Эти символы есть в Юникоде, но с клавиатуры их так просто не ввести, так что в качестве компромисса я использовал транслитерацию. Это как писать “privet” вместо “привет”. “AŠ” вместо 𒀸, “DIŠ” вместо 𒁹.
Я писал код, толком не отдавая себя отчета в том, что именно я делаю. Я не понимал и половины того, что пишу. Вместо функций я оперировал понятиями каких-то “сфер”, “печатей”, “мертвых имен”. Но вот что самое странное. Я понятия не имею как, но оно работало. Работало настолько хорошо, что одна из наших тестировщиц в слезах написала заявление на увольнение, и больше мы ее не видели — настолько ее напугала игра.
И, честно говоря, меня вся эта ситуация тоже чертовски пугала. Я ведь не знал древнешумерского языка, так что мой код должен был быть — с лингвистической точки зрения — бессмыслицей. Но он ей не был. Сейчас покажу.
(примечание GP — Максим вставляет в наш с ним чат последовательность символов)
Максим: dAMAR.UTU
Эта последовательность символов встречалась в моем коде чаще всего. И когда я загуглил ее, мне стало очень не по себе. Эта последовательность имела смысл.
GP: А как Ваши коллеги отнеслись к столь необычной реализации? Собственный язык программирования, использующий шумерские символы, это ведь, мягко говоря, необычно?
Максим: Думаю, Андрей уже тогда усомнился в моей вменяемости. Никто, кроме меня, не мог работать с этим кодом. Но демо для издателя прошло блестяще, компания и наша мечта были спасены. Андрей конечно хотел, чтобы я переписал код, или хотя-бы объяснил другим членам команды, как он работает. Мне пришлось сказать, что переписывание займет годы. А когда я попытался объяснить ту малую толику, которую понимал сам, у ребят просто взорвался мозг. Так что меня стали считать эдаким сумасшедшим гением, и перестали лезть в мой код.
Разработка игры продолжалась, близилась дата релиза, мы все снова жутко перерабатывали, я почти не спал. И, в конце концов, произошло то, о чем читатели и так уже знают.
GP: Максим, для Вас это болезненные воспоминания, поэтому не буду настаивать, но я думаю, что наши читатели будут благодарны, если Вы поведаете им свою версию этой истории.
Максим: В общем, мне становилось хуже. Как вы знаете, мы играем за воплощение божества по имени Мардук, который лишился своих сил из-за другого божества — Эрры, он же Нергал. Герой должен пройти серию испытаний, открыть бронзовые врата и встретиться в финальной битве с Эррой-Нергалом. Победит Мардук — человечество будет жить, победит Эрра — всем суждено умереть.
В общем, мне начало казаться, что это я являюсь воплощением Мардука в реальном мире, и что моя цель — путем работы над игрой не дать Эрре уничтожить мир. Типичный бред величия.
В тот роковой день я проснулся очень рано. Снился странный сон. Не помню подробностей, но вроде бы я шел по мосту над алой пропастью. Слева к мосту подошел великан и прочитал рифмованные строки, отдающие чем-то советским, какими-то пионерскими стихами. Потом справа подошел другой великан и прочитал другие строки. А я должен был что-то ответить, но не успел, потому что проснулся.
Пока я ехал на работу, я думал вот о чем. Если я — воплощение Мардука, значит где-то в мире есть воплощение Эрры. И он работает против меня, хочет свести на нет все мои усилия. Скоро релиз игры, а значит, я должен выяснить кто мой противник, и устранить его.
Это было 27 апреля, день рождения Даны. Я доедал кусок торта у себя за столом, и что-то вдруг привлекло мое внимание, что-то в облике Васи. Я присмотрелся и увидел три вещи.
Вася, как и я, слушал black metal. Где-то дома у меня валяется майка группы Marduk. Вася же был в майке группы Behemoth. Если вам это ни о чем не говорит, то объясню. Дело в лидере этой группы. Адам Дарский, более известен под сценических псеводонимом Нергал. Во-вторых, хоть мы и угостились тортом, Вася жевал шоколадный батончик. И ладно бы это был Snickers, но нет. Это был Mars. А Марс — как известно, планета Нергала. Был и третий признак, и вот он уже не оставлял никаких сомнений. Он работал с моим кодом. Я подошел ближе и ужаснулся. “Работа” заключалась в том, что он заменял везде в коде последовательность dAMAR.UTU на dGÌR-UNUG-GAL.
Я подошел к столу с остатками торта. Нож лежал там же. Я знал, что нужно сделать. Но когда я обернулся, Вася уже стоял прямо передо мной, тоже с ножом в руке. Он ударил первым.
Дальше помню плохо. Везде была кровь, девчонки визжали. Нас разняли. Ну а потом была больница, диагноз параноидальная шизофрения, годы под препаратами. Игру мы, естественно, тогда не выпустили. Были какие-то проблемы с моей частью кода, а починить его было некому. Почему-то обиднее всего было именно это. Что все это было зря.
GP: И все же, годы спустя, игра вышла. И не просто вышла, а взорвала индустрию. Скажите, что Вы сейчас чувствуете по этому поводу?
Максим: Радость, облегчение, и немного зависть. Когда меня в конце концов выписали, Андрей предлагал мне вернуться к работе, но… Я просто не мог. Дело было даже не столько в воспоминаниях и эмоциях, с которыми у меня теперь связана эта игра, сколько в лекарствах. Под препаратами я не мог работать. Не мог нормально думать. Ну а возвращаться к моему “шумерскому коду” я просто боялся. Боялся, что он снова переключит что-то в моей голове, вернет меня в безумие.
GP:35 А Вы сами играли в игру?
Максим: Да. Почти прошел. Сохранился прямо перед бронзовыми вратами. Не решаюсь войти, как бы смешно это не звучало. Никому ведь еще не удалось получить истинную концовку, только плохую, когда Эрра говорит, что не считает тебя достойным битвы, и уходит с арены, а потом по экрану ползут титры.
GP: Стало быть, Вы тоже не знаете, какие условия нужно выполнить, чтобы Эрра согласился вступить в бой?
Максим: Не знаю. Увы.
GP: Что ж, спасибо что уделили нам время, и спасибо за столь откровенный рассказ. Уверен, наши читатели…
***
Перечитывая свое интервью, я вдруг впервые за долгое время задумался о том, как там Вася. Он был моим другом, но по какой-то непонятной мне самому причине, я ни разу не поинтересовался как сложилась его судьба. Может, какая-то часть меня по прежнему считала его воплощением зла. Я открыл мессенджер и написал Андрею.
“Привет. Давно хотел спросить. Как дела у Васи?”
Некоторое время я любовался на надпись “Андрей Комаров печатает”. Надпись появлялась и исчезала. Куда дольше, чем обычно. Наконец, одно слово.
“Позвоню?”— Ну, валяй.
— Ты лекарства принимаешь сейчас какие-нибудь?
— Эмм… Откуда такой вопрос?
Я не принимал лекарства. Слез с них пару недель назад. Сначала снижал дозу, потом слез окончательно. Все, разумеется, по согласованию с врачом.
— Макс, не знаю как сказать, но… Вася, его нет.
Я опасался чего-то подобного. Черт, я даже ни разу не поговорил с ним после “инцидента”.
— Как это случилось?
— Нет, нет, Макс, ты не понял. Васи никогда не было.
Что?
— Подожди, подожди. Стоп. Мы вчетвером основали Akkadian Games…
— Втроем.
Так вот откуда вопрос про лекарства. Черт, черт, черт. Я так хотел вернуться к программированию, я не хочу всю оставшуюся жизнь работать курьером.
— Стой. Но как же тогда… Кого я покромсал на дне рожденья Даны?
— Себя.
Мы помолчали.
— Если что-нибудь нужно…
— Нет нет, не беспокойся. Я… схожу к врачу. Спасибо, что помог мне разобраться.
— Если что, звони в любое время…
— Спасибо.
— Напиши, что врач скажет.
Неожиданно для себя я решил спросить его.
— Слушай, а как добиться истинной концовки?
После паузы Андрей лишь пожал плечами.
— Понятия не имею. За это отвечает твой код. Мы давно оставили попытки в нем что-то понять.
Я сбросил звонок. Пошел на кухню. Достал таблетки. Постоял. Положил обратно. Я никак не мог выбросить из головы одну мысль. В политеистических религиях не редкость, когда мелкие божества со временем превращаются в проявления или альтернативные имена главных божеств. Шумеро-аккадский пантеон не был исключением. Лугальгирра стал отождествляться с Эррой, сам же Эрра — с Нергалом. Но было и кое-что другое. На закате Вавилона жрецы создали текст, в котором уже главные божества были представлены как аспекты Мардука. Энлиль был Мардуком власти, Набу — Мардуком торговли, Нергал — Мардуком войны.
Я вернулся за компьютер и открыл браузер. Читал до поздней ночи. От статей по шумерам перешел к индуизму, лез во все более и более глубокие дебри, пока, наконец, не уснул прямо за столом. И мне снова приснился тот самый сон.
Я шел по мосту, перекинутому через океан крови. Справа от меня сквозь алые волны шагал великан. Приблизившись, он произнес:
И тут раздался какой-то дикий рев, гул и скрежет, от которого моя голова едва не взорвалась. Я обнаружил, что из моих ушей течет кровь. Так вот как звучит его Истинное Имя. Те имена, что Википедии — лишь тени, отражения. Проекции трехмерных объектов в двухмерном пространстве.
Слева приблизился другой великан. Открыв огромный рот, он сказал:
Не дай оружию ржаветь
Пусть тишина лишь будет впредь
И дай напиться семерым
Пусть в небо устремится дым
Потворствуй гневу своему
Сотри, сожги, продли чуму
И стар, и мал от крови ал
Пускай зовут тебя…
И снова шум пронзил каждую клетку моего тела.
Я должен был дать ответ, выбрать одно из двух имен. И я сделал свой выбор.
Когда я проснулся, за окном занялся рассвет. На кухню, выпить воды. А потом обратно в комнату. Взять в руки геймпад.
Тяжело навалившись на огромные створки, я открыл врата. Мой противник стоял передо мной. У него было мое лицо. Не лицо моего персонажа — мое настоящее лицо.
— Ты пришел. — сказал он.
Его образ стал расти. Он заполнил собой весь экран, а потом и вовсе вышел за его пределы. Он занял собой все мое поле зрения, и я перестал понимать, где заканчиваюсь я и начинается он. А потом понял: мы — единое целое, и так было всегда.
Я видел все и я был везде. За мгновение я мог перенестись в любую точку пространства. Я мог заглянуть в сердце любому жителю планеты. Я мог спасти их, дать им новую жизнь, новый смысл, и я мог их уничтожить. Я вглядывался в каждое сердце, и ни в одном из них не видел ничего, кроме черноты.
Вот она. Истинная концовка.
В правой руке я сжимал изогнутый меч, а в левой — булаву с навершием в виде головы льва. Сине-зеленая планета была прямо передо мной, другая планета — красная — висела над моим правым плечом. Я взмахнул правой рукой, и шар разделился на две половинки. Я взмахнул левой рукой, и обе половинки превратились в пыль.
Не будет преувеличением, если я скажу, что гнев Эрры взорвал мир.
Развернувшись, я зашагал прочь, во тьму за пределами небесных сфер. И звезды гасли там, куда падала моя тень.
𒀭𒄊𒀕𒃲