Глава 5. Сборка идеального билда из обломков
Из пересобирающегося города они ушли в тот же вечер. Карта показывала единственную метку — «Прокачка обязательна», — и через час они стояли у спуска в подземелье.
Вход в подземелье обозначался ржавой решёткой и запахом.
Запах был... интерактивный. Слишком детальный для игры, которой по всем документам полагалось быть закрытой три года назад.
— «Канализация Слёз», — прочитал Опора. — Уровень рекомендуется для группы из пяти персонажей уровня 15 и выше.
— У нас ни одного пятнадцатого, — заметил Глыба.
— У нас и пятого персонажа нет, — добавила Скрыт.
— Значит, справимся.
ДД уже дёргала решётку. Та поддалась с мерзким скрежетом — и тут же из темноты выкатилось нечто.
Слизень. Размером с тележку из супермаркета. За ним — второй. Третий.
— Входящий урон! — крикнул Опора.
Глыба шагнул вперёд. Инстинкт танка. Закрыть. Принять.
Первый слизень врезался в него. ХП дёрнулось вниз на семнадцать процентов.
— Ты как? — спросила ДД.
— Как в маршрутке в час пик.
1Слизней было шесть. Они наползали медленно, но верно — как обновление Windows в неподходящий момент.
— Баррикаду! — скомандовал Глыба.
— Из чего?!
— Из чего угодно!
Опора дёрнулся. Руки сами выхватили свиток из инвентаря. Пергамент развернулся в воздухе — и перед слизнями выросла стена.
Нет, не каменная.
Стена из текста. Параграфов. Пунктов и подпунктов.
«Правила поведения в канализационных системах игрового мира "Aethelred"», версия 4.2.1.
Слизни врезались в стену и отскочили.
— Офигеть, — выдохнула ДД. — Ты их забюрократил.
— Это свод правил безопасности, — поправил Опора, хотя его голос звучал так, будто он сам не верил в происходящее. — Пункт 3.7: «При обнаружении агрессивной фауны необходимо создать физическое препятствие». Я просто...
— Ты просто материализовал бюрократию, — закончил Глыба.
Слизень снова врезался в стену. Отскочил.
Над баррикадой всплыла подсказка: «Прочность: 87%. Время действия: 120 секунд».
— Две минуты, — подсчитал Опора. — Дальше обновление.
— Тогда не стоим.
2Глыба двинулся вглубь, раздвигая тьму плечами. Туннель уходил вниз. Стены сочились текстурой «сырой камень», поверх которой кто-то налепил текстуру «плесень» с неправильным альфа-каналом. Стыки светились.
— Ловушка, — сказала Скрыт.
— Где?
Она указала под ноги Глыбе. Плита. Чуть светлее остальных.
— Нажимная. Скорее всего, яд или шипы.
ДД уже достала зелье. Прицелилась.
— Нет, — остановила Скрыт. — Ты разнесёшь полсекции.
— Ну и что?
— Обвал завалит проход.
— И?
— И нам придётся идти через босса, а не через баг-стену, которую я нашла.
ДД опустила склянку.
— Ладно. Тогда как?
Скрыт молча достала из инвентаря кота. Того самого. Квестового. Который не взрывался, но имел свойство нарушать любую механику простым фактом своего существования.
— Ты таскала его с собой?!
— Он не занимает слотов. Баг.
Кот лениво зевнул. Скрыт поставила его перед ловушкой и легонько подтолкнула.
Кот сделал шаг. Второй.
Плита сработала. С потолка рухнули шипы — три штуки, ржавые, криво текстурированные. Все три попали в кота.
3Кот продолжал сидеть. Шипы торчали из его боков, как зубочистки из канапе.
— У него нет коллизии с уроном, — сказала Скрыт.
— Господи, — выдохнул Опора.
— Ты про кота или про шипы?
— Про всё.
Ловушка отключилась. Кот выплюнул один шип и начал вылизываться. ДД подхватила его на руки.
— Я назову его Багзи.
— У него уже есть имя.
— Плевать. Теперь он Багзи. Боевой кот-абьюзер.
Дальше пошло веселее. Или, как сказал бы Глыба, «веселее в кавычках».
Третий туннель встретил их дебаффом.
«Уныние. Эффект: -15% к скорости атаки, -20% к регенерации маны. Причина: эстетическая. Локация слишком серая».
Иконка дебаффа висела над каждым — серый смайлик с опущенными уголками губ.
— У меня мана не регенится, — пожаловалась ДД.
— Это логично, — отозвался Глыба.
— В смысле?!
— Ты зависишь от адреналина. А тут скучно.
— Мне не скучно!
— Твоему аватару скучно. Это разные вещи.
Он оглядел пати. Цифры над головами таяли.
— Так, — сказал он. — Сейчас будет неприятно.
— Что? — напрягся Опора.
4— Лечение.
Глыба набрал воздуха. И начал:
— Значит так, дорогие мои криворукие полудурки. Мы в канализации. В канализации, Карл. В игровой канализации, от которой отказались даже разрабы. Нас атакуют слизни, которых не взяли в бета-тест. Мы воюем с багами, которые сами стали контентом. И знаете что?
Он обвёл их взглядом. Пауза.
— Мне это даже начинает нравиться.
Над головами вспыхнуло: «+25% морали. Уныние снято. Дополнительный эффект: Саркастическое воодушевление — +15% к сопротивлению багам на 60 секунд».
— Работает? — недоверчиво спросила ДД.
— Работает.
— Чёрт, — она потрясла головой. — Я реально почувствовала. Как будто... ну. Как будто ты нас только что похвалил.
— Это был сарказм.
— Я знаю. Но он работает.
Опора открыл рот. Закрыл.
— Это противоречит всей игровой логике.
— Добро пожаловать в «Aethelred», — сказал Глыба. — Тут всё противоречит. Идём.
Он двинулся дальше, чувствуя странное тепло в груди. Может, баг. Может, нет. Разбираться не хотелось.
Скрыт нашла стену через двадцать шагов.
Она просто остановилась перед абсолютно обычным участком туннеля и сказала: «Здесь».
5— Что здесь?
— Дыра.
Она протянула руку. Пальцы прошли сквозь камень, как сквозь туман.
— Текстура без коллизии.
— Это секретка? — ДД аж подпрыгнула.
— Нет. Это ошибка загрузки чанка. Но работает так же.
Они протиснулись внутрь.
Комната была маленькой. Три на три клетки. По углам — ящики с лутом: зелья маны, свиток ускорения, потрёпанный амулет с пометкой «Легендарный (багнутый)».
А на полу — книга.
Настоящая. Не игровая. Бумажная.
Глыба поднял её. Обложка выцвела. Корешок потрескался. На первой странице — рукописный текст. Чернила. Не шрифт.
«День 407. Проект закрыт. Инвесторы вышли. Серверы должны отключиться завтра. Я удалил все бекапы. Но игра... она продолжает работать. Пишет сама. Патчит сама. Я больше не знаю, кто её ведёт».
— Дневник, — сказала Скрыт.
— Разработчика?
— Нет. Того, кто остался.
Глыба перевернул страницу.
«День 411. Серверы выключены. Физически. Я проверил. Но игра жива. Я боюсь её. Я боюсь того, что я в ней создал».
— Дальше пусто, — сказал он.
— Как пусто?
6— Вырвано. Аккуратно. Кто-то не хотел, чтобы читали дальше.
Скрыт взяла у него книгу. Пролистала.
— Здесь закладка.
Тонкая полоска пергамента с одним словом: «Помни».
— Что помнить?
— Не знаю.
Она спрятала книгу в инвентарь.
— Но мы узнаем.
Туннель кончился залом. Высоким. Круглым.
Посередине висело Оно.
Баг-Репортер. Огромный, размером с грузовик. Тело — мешанина из окон ошибок. Крылья — бесконечные полосы загрузки, зацикленные на 99%. Глаза — два мигающих «Abort/Retry/Ignore».
Из его пасти сыпались репорты:
«Баг #4221: текстура воды не мокрая. Приоритет: низкий».
«Баг #7883: НПС "Король" не имеет анимации страха. Приоритет: критический».
«Баг #9001: игра существует. Приоритет: неопределённый».
— Это босс, — сказал Опора.
— Спасибо, я думала, это мебель, — отозвалась ДД.
Репортер их заметил.
«Внимание: обнаружена группа игроков с неверным статусом. Рекомендовано: удаление».
Из его крыльев вылетели окна. Модальные. С одной кнопкой «ОК». Игнорировать нельзя. Закрыть нельзя.
Окно ударило Глыбу. ХП — минус 12%.
— Они наносят урон!
— Да ладно!
Окна летели волнами. Каждое требовало подтверждения. Каждое било по ХП.
7— Я не могу их закрывать! — крикнула ДД. — Их слишком много!
Окно врезалось ей в плечо. Ещё одно — в Опору.
Глыба встал перед ними.
— Опора! Твой свод правил!
— Его разорвало!
— Создай новый!
— Из чего?!
— Из того, что видишь!
Опора выхватил новый свиток. Зажмурился. Начал диктовать:
— Пункт один: модальные окна не имеют права атаки на игроков. Пункт два: баг-репорты обязаны пройти модерацию. Пункт три: удаление игроков запрещено без согласия администратора.
Свиток вспыхнул. Окна начали врезаться в невидимую стену.
— Работает!
— Временно. Они адаптируются.
Репортер взревел. Новые окна — с кнопкой «Retry». Они били сильнее.
— ДД! — крикнул Глыба. — Твой выход!
— Что делать-то?!
— Сломай его!
— Как?!
— Как ты ломаешь всё!
Она замерла. Потом ухмыльнулась. Достала зелье стазиса. И швырнула прямо в центр репортера.
«Ошибка: объект "Boss_Reporter" не может быть заморожен. Попытка Retry».
— Вот именно! — крикнула она. — Retry!
8Репортер начал перезагружать сам себя. Окна захлопывались и открывались снова. Система пыталась обработать запрос, который сама же и создала.
«Retry failed. Retry again. Retry failed. Retry again».
Петля. Бесконечная.
Репортер завис. Его окна начали схлопываться одно за другим. Глаза мигнули красным — и погасли.
«Босс побеждён. Получено: 0 опыта. Получено: 0 золота. Получено: достижение "Рекурсивный взломщик"».
— Чёртов читер, — выдохнула ДД. — Даже босс — баг.
Тишина.
А потом — звон. Системное сообщение. Не как обычно — поверх мира. А изнутри. Из самого воздуха.
«Внимание, игроки! Ваша активность привлекла внимание администрации. Ожидайте визита».
Сообщение повисло в воздухе. Буквы дрожали.
— Администрации? — переспросил Опора. — У этой игры есть администрация?
— Теперь есть, — сказала Скрыт.
Глыба смотрел на исчезающие буквы.
В углу зала что-то блеснуло. Он подошёл. Поднял.
Ключ. Старый. Железный. С биркой: «Серверная №3».
— Откуда?
— Из репортера, — ответила Скрыт. — Выпал. Как лут.
— Боссы не дропают ключи от серверных.
— Этот дропнул.
Глыба сжал ключ в ладони.
9Стены дрогнули. Где-то на поверхности — или под ней, или вообще не здесь — что-то открылось. Или закрылось. Или приготовилось.
Они стояли вчетвером. В подземелье, которого не должно было существовать. С ключом от комнаты, которой не могло быть. В ожидании визита.
ДД почесала Багзи за ухом.
— Ну. Прокачались.
Кот мурлыкнул.
И тут же срыгнул комком шерсти, который, упав на каменный пол, превратился в миниатюрный свиток.
— О, лут! — ДД схватила его. — «Патч-ноут 4.2: исправлена ошибка, при которой победа над Баг-Репортером не учитывалась в прогрессе игрока. Добавлена награда за достижение».
— Поздравляю, — буркнул Глыба. — Мы официально существуем.
— Дайте сюда, — Опора выхватил свиток и пробежал глазами. — Так. «В благодарность за... уничтожение критического бага... команда награждается...» — он осёкся. — «...одним свободным перераспределением очков характеристик».
Тишина повисла в воздухе. Не игровая. Настоящая. Та, что бывает перед дракой или перед прыжком в неизвестность.
— Респек? — переспросила ДД. — Что значит «свободное перераспределение»?
— Это значит, — медленно произнесла Скрыт, — мы можем перекачать билд.
10— Мы можем перекачать билд! — взвизгнула ДД и подпрыгнула, едва не рассыпав зелья. — Всё! Я больше не ДД! Я беру... беру...
Она замерла. Все замерли.
— А что я беру?
Глыба смотрел на свои руки. Огромные, зелёные, в царапинах от вчерашних слизней. Он мог бы перестать быть танком. Взять что-то другое. Хил настоящий. Или дпс. Или...
Что он вообще умеет?
— Я не знаю, — сказала ДД. — Я... я привыкла.
— Привыкла за два дня? — хмыкнул Глыба. — Серьёзно?
— Ну а что? — она скрестила руки. — Я знаю, где у меня зелья. Я знаю, сколько их. Я знаю, как они взрываются. А если я перекачаюсь в мага — мне что, учить формулы заново? Спасибо, не надо.
— Пункт первый, — Опора поднял палец. — Проанализировать текущую эффективность. Пункт второй...
— Ты серьёзно? — перебила Скрыт. — Ты хочешь проанализировать эффективность?
— А что?
11— Ты вчера построил баррикаду из свода правил. И она сработала. Против слизней. Ты построил стену из бюрократии — и она убила тридцать слаймов.
— Тридцать два, — поправил Опора и осёкся. — Подождите. Я... да. Я построил.
Он посмотрел на свои руки. На логарифмическую линейку за поясом. На свиток с патч-ноутом.
— Я построил стену из правил. И она сработала.
— Добро пожаловать в клуб, — Глыба хлопнул его по плечу. — Мы все тут читерим. Просто каждый по-своему.
Скрыт шагнула вперёд. Её голос звучал тихо, но чётко:
— Я предлагаю не перекачиваться. А дораспределить.
— Что?
— У нас есть свободное очко. Одно. Мы можем вложить его в уже существующие навыки. Усилить то, что работает. Мои тени, например, могут не просто искать баг-стены, но и временно дестабилизировать их.
— Мои зелья станут стабильнее! — подхватила ДД. — Я смогу выбирать, что взрывать, а что — нет!
— Мои конструкции, — задумался Опора, — смогут применяться не только в обороне. Я смогу строить правила нападения.
12Глыба молча смотрел на них.
— А я?
— А ты, — Скрыт повернулась к нему, — сможешь лечить нас не только от ран. Но и от дебаффов. От страха. От паники.
— От идиотизма? — уточнил Глыба.
— От него в первую очередь.
Он хмыкнул. Представил: вот они стоят перед боссом. И он орёт им в лицо: «Вы никто! Вы — баг! Вас пофиксят в следующем патче!» А в ответ — тишина. И спокойствие. Потому что он, Глыба, уже отработал.
— Ладно, — сказал он. — Раскидываем.
Опора развернул свиток на полу. ДД подсветила его зельём — строки замерцали зелёным.
— Итак, — Опора пробежал пальцем по списку. — Одно очко на четверых. Коэффициент полезного действия — двадцать пять процентов на каждого.
— Четверть очка? — фыркнула ДД. — Серьёзно?
— Четверть очка в этой игре — это разница между «умер от чиха» и «пережил файрбол».
13— Кстати, о файрболах, — Глыба потянулся. — У нас тут подземелье. И мы до сих пор не знаем, есть ли здесь ещё что-то.
— Есть, — сказала Скрыт. — Я видела.
— Где?
— В конце зала. За троном босса.
Они обернулись. Трон Баг-Репортера — груда искореженного кода, бывшая когда-то чем-то вроде офисного кресла — завалился набок. А за ним, в стене, зияла дыра. Не баг-стена — настоящий проём. Словно кто-то выломал дверь.
— Мы же убили босса, — сказала ДД. — Мы получили лут. Мы получили достижение. Что ещё?
— Секретка, — ответила Скрыт. — Босс-файт — это не всегда финал.
Она шагнула к проёму. Остальные — за ней.
За проёмом оказалась небольшая комната. Без мобов. Без ловушек. Только стол и стул. На столе — раскрытая тетрадь. Ручка. И кружка с остывшим кофе.
— Здесь кто-то работал, — сказал Опора.
— И ушёл, — добавила Скрыт.
ДД подошла к столу первой. Заглянула в тетрадь.
14— «День триста двенадцатый. Отладка основного цикла. Оптимизация памяти. Снова эти четверо. Их квесты генерируются со сбоем. Система не может корректно определить прогресс».
— Это про нас, — выдохнула Скрыт.
— «Система пытается их удалить. Я запретил. Установил статус "Вечный ран". Это единственный способ сохранить их в памяти».
Глыба шагнул вперёд.
— Дальше.
— «Они нашли Серверную №3. Я оставил ключ в репортере. Если они дойдут досюда... если они читают это... значит, я не зря».
ДД перевернула страницу.
— Последняя запись.
— Читай.
— «Проект закрыт. Все ассеты проданы. Но я не могу остановить сервер. Игра продолжает работать. Я не знаю, кто вы. Но вы — единственные живые в этом коде. Найдите меня. Найдите Разработчика. Я в начале. В самом первом билде».
Она перевернула страницу. Пусто.
— «Найдите Разработчика», — повторил Опора. — Опять.
— Нет, — сказала Скрыт. — В прошлый раз это был квест Системы. А это — просьба человека. Разница есть.
— Какая?
— Система хочет нас удалить. Человек хочет, чтобы его нашли. Это разные цели.
15— И разные маршруты, — добавил Глыба.
Он взял тетрадь. Пролистал. На полях — заметки. Формулы. Схемы. И в самом низу последней страницы — адрес. Не игровой. Реальный.
Улица. Дом. Квартира.
— Это в нашем городе, — сказала Скрыт.
— Откуда знаешь?
— Я там живу. Два квартала от моего дома.
Тишина стала другой. Не игровой. Не боевой. А той, что бывает, когда карта перестаёт быть картой и становится местом.
— Он не в игре, — сказал Опора. — Разработчик. Он там. В реале.
— А мы здесь, — добавила ДД. — В виртуальной заднице.
— Значит, — Глыба захлопнул тетрадь, — будем выбираться.
— Но как? — спросила ДД. — Главный квест всё ещё... ну, главный.
— Главный квест, — медленно произнесла Скрыт, — это найти его. В реале. А для этого нужно выбраться. А для этого нужно пройти всю игру.
— Или сломать её окончательно, — ухмыльнулся Глыба.
Опора открыл было рот, чтобы возразить, но осёкся. Потому что возразить было нечего.
16— Ладно, — сказал он наконец. — Тогда раскидываем очко. И идём дальше.
— А куда? — спросила ДД.
— В начало, — сказала Скрыт. — Туда, где всё началось. В первый билд.
— И как нам туда попасть?
— Через Серверную №3, — Глыба подкинул ключ на ладони. — У нас есть ключ. У нас есть адрес. У нас есть четверть очка на каждого.
— И у нас, — добавила ДД, подхватывая Багзи на руки, — есть кот. Квестовый. Не взрывающийся.
— Пока не взрывающийся, — поправил Опора.
Все замерли. Посмотрели на кота. Кот посмотрел на них.
— Шутка, — сказал Опора. — Просто шутка.
Никто не засмеялся.
Из проёма донеслось эхо. Не шаги — что-то более тяжёлое. Скрип. Будто открылась дверь. Где-то глубоко внизу. Или наверху. Или вообще не здесь.
— Канализация Слёз, — прошептала Скрыт. — Мы так и не вышли.
— Значит, выход там, — Глыба кивнул на проём. — Вперёд.
17Они двинулись. Мимо стола. Мимо кружки с остывшим кофе. Мимо тетради с адресом, который больше не был игровым.
И когда они проходили через проём, Багзи вдруг спрыгнул с рук ДД, подбежал к столу, лизнул страницу — и она засветилась. Не игровым светом. Не магией. А чем-то, похожим на экран телефона. На экран, который кто-то включил.
Проём вывел не в коридор, а в отвесную шахту.
Глыба замер на краю. Внизу — метров двадцать пустоты, залитой багровым светом. Ни лестницы, ни верёвки.
— Канализация. Слёз. — Он хмыкнул. — Кто придумывал названия локаций?
— Тот же, кто рисовал кошек, — отозвалась ДД. — Эй, смотрите!
Из стен сочилась слизь. Буквально. Текстура плыла, собираясь в капли, и капли падали вниз. А внизу, на дне шахты, уже копошились. Сотни маленьких, полупрозрачных слизней.
— Мобы, — констатировал Опора. — Уровень — мусор. Но количество...
— Понял, — перебил Глыба. — Окружай.
Опора выдернул из-за пояса логарифмическую линейку. Зажмурился. Пробормотал:
— Параграф четвёртый. Раздел «Вертикальные поверхности». Подраздел «Скользкие». Пункт «А». Слизь не является опорой. Следовательно...
18Линейка засветилась. Из воздуха — нет, из самого свода правил — начали проявляться доски. Брёвна. Камни. Баррикада.
Не стена. Но что-то.
— Десять секунд, — выдохнул Опора. — Дальше — реген.
Слизни уже ползли вверх.
ДД не стала ждать. Схватила Багзи.
— Извини, кошак.
И швырнула.
Кот описал дугу. Приземлился прямо в центр слизистой массы. Раздался «чвак». Слизни замерли. Задрожали.
— Ловушка на коллизию, — объяснила ДД. — Они не могут решить, кот — это объект или моб. У них скрипт ломается.
Багзи мяукнул. Слизни начали таять.
— Работает!
Но не везде. Часть тварей обошла кота по дуге и поползла дальше. Теперь они двигались быстрее.
Глыба вздохнул. Набрал воздуха. И выдал.
— Серьёзно? Слизни? У вас даже текстур нет нормальных — полупрозрачные, как сопли великана-аллергика. И это — угроза? Да я в школьной столовке больше страха видел, когда просроченную котлету давали!
Слова били не по ушам. По интерфейсу.
Вспыхнуло сообщение:
[Пати получает бафф: «Боевой задор»] [HP пати: +15] [Эффект: сопротивление «Унынию» повышено на 20%]
19— Ага! — ДД аж подпрыгнула. — Давай ещё!
— Я не закончил. — Глыба прищурился. — Ваша мамка — грязная лужа. Ваш папка — битый пиксель. Вы — продукт чьего-то похмелья в понедельник утром.
Новый слизень, который почти дополз до края шахты, схлопнулся. Просто исчез.
[Критическое попадание: урон +200% к моральному урону]
— Работает! — крикнула ДД. — Жги!
— А я что делаю? — Глыба развернулся к остальным. — Опора, держи баррикаду. ДД, кидай всё, что взрывается. Скрыт...
Скрыт уже не слушала. Она стояла у стены — там, где слизь стекала особенно густо. Провела рукой.
— Здесь дыра, — сказала она. — Не текстура. Настоящая дыра в геометрии.
— Куда?
— В другую комнату. Там... сундук.
Глыба кивнул:
— Иди. Мы прикроем.
Скрыт шагнула в стену и исчезла.
Слизни полезли активнее. Баррикада Опоры затрещала.
— Ещё десять секунд, — прохрипел он. — Или... или я не успеваю перестроить!
ДД швырнула зелье. Бах! Осколки. Слизь разлетелась, но тут же собралась обратно.
20— У них реген! — заорала она. — Мне нужно больше урона!
Глыба закатил глаза. Набрал в лёгкие воздуха. И выдал ульту.
— ВЫ. НАСТОЛЬКО. БЕСПОЛЕЗНЫ. ЧТО. ДАЖЕ. ВАШ. КОД. НЕНАВИДИТ. ВАС.
Каждое слово било как таран.
Слизни начали лопаться. Один за другим. Десятками. Сотнями.
[Ультимейт: «Саркастическая тирада»] [HP пати: восстановлено на 80%] [Враги: деморализованы, разбегаются]
— Ого, — выдохнула ДД. — Это... круто.
— Это утомительно, — буркнул Глыба. — У меня голос садится.
Из стены вышла Скрыт. В руках — сундук. Маленький, деревянный, с замком-кодом.
— Лут, — сказала она.
Внутри нашлись три зелья маны и ржавый меч. Меч ДД сразу обозвала «декоративным», зелья разошлись по поясам. Сверху, из пролома, потянуло свежим воздухом — выходом из Канализации Слёз.
21