Админская свалка — страница 5 из 34

Где-то впереди, на горизонте, маячил город. Сначала — просто абстрактная масса. Потом — контуры зданий, башни, то ли жилые, то ли охранные. И дым. Прямо по канону: темные столбы, поднимающиеся к тусклому небу. Атмосферный фильтр недогрузился, так что небо было серым, как недопропеченный металл.

Системного предупреждения не появилось. Ни таблички, ни блокировки зоны, ни стандартного диалога о «порогах уровня». Ничего. Чисто. Подозрительно чисто. Как будто никто не думал, что игрок сюда дойдет.

Макс ускорил шаг.

С приближением к городу началась деградация — не резкая, а ползучая, как гниль под обоями. Дорога сначала сместилась на пару пикселей вбок, потом внезапно стала асфальтом, потом снова гравием. Объекты дергались. Один дом на горизонте циклично пропадал и возвращался. А за ним — ничего. Черная пустота, даже не «небо», а неинициализированное пространство.

Здания в передней линии выглядели как будто намазанные. Контуры плыли, стены искрились глитчем. Некоторые двери не имели проема, другие — вели в небо. Никакой логики, только следы генератора уровней, сошедшего с ума. Над одним из фасадов висела реклама — «WELC_ME TO C_ITY_ LACK LA». Шрифт — не тот. Цвета — перепутаны. Привет из тестового билда.

Вдоль дороги начали появляться фрагменты текстур — отдельные куски, как вырезанные из разных эпох. Один фонарь напоминал стимпанковский, другой — футуристическую панель. Все это склеилось в нечто, что можно было бы назвать «архитектурной шизофренией», если бы у Макса были силы шутить.

Он приблизился к воротам — медленно, будто подходил не к городу, а к фальшивке, слепленной из картонных декораций и багов. Табличка — старая, ржавая, как в заброшенной MMORPG пятнадцатилетней давности — висела криво, будто прибита не гвоздями, а ошибками рендеринга.

Черный Лаг, — гласил шрифт, который успевал моргнуть дважды, прежде чем застыть.

Макс шагнул вперед. Всего один шаг. И сразу же:

[НЕАВТОРИЗОВАННЫЙ ОБЪЕКТ ПЫТАЕТСЯ ПОЛУЧИТЬ ДОСТУП]

Воздух зазвенел. Не звуком — частотой. Как если бы весь мир вздрогнул от внутреннего конфликта.

Город перед ним — треснул. Не физически. Логически.

Здания дернулись, дернулись еще — и зависли. Фасады застыли в недорендеренном виде: куски карт, глюканувшие текстуры, огрызки недописанных теней.

NPC, стоявшие у ворот, замерли. Один — в позе приветствия. Второй — с приоткрытым ртом. Диалоговая строка так и не загрузилась.

Макс сделал второй шаг. И тогда…

Трещина прошла по небу. В буквальном смысле.

Небо не выдержало. Оно дрогнуло, отозвалось внутренним писком, как если бы его строили из стекла, и теперь оно трещало.

[СБОЙ СЦЕНАРИЯ]

[АКТИВАЦИЯ ПРОТОКОЛА: ЭВАКУАЦИЯ]

[ОБЪЕКТ: DEL_USER_01 — ТЕЛЕПОРТИРОВАН]

Он не почувствовал удара. Не было вспышки, не было телепорта как эффекта. Просто — реальность сменилась. Мгновенно. Как будто кто-то нажал Alt+Tab между мирами.

Приземление не было падением.

Это было… смещение. Как если бы его перенесли не в пространство, а в мысль, которую кто-то забыл додумать.

Пол — не земля. Скорее, сборная солянка из забытых текстур: зеленый квадрат травы соседствовал с кирпичом, кирпич — с глянцевым полом из какого-то офиса, а по краям торчали полигоны, которых не должно было быть. Место, где карта начиналась, но никогда не заканчивалась.

Макс встал. Пошатнулся. Воздух гудел — негромко, но на той частоте, от которой сводит челюсть.

Ошибка.

Она была повсюду.

Шум неба — это не ветер. Это цифровой треск. Как будто в облаках крутилась скомканная аудиозапись, бесконечно проигрывая начало сбоя. А вокруг — тишина. Даже тишина отрендерена была плохо. Без глубины. Без амбиента. Плоская. Как фон в студии, в которой забыли включить микрофоны.

Он оглянулся.

Сзади — ничего. Не в смысле пустоты, а в смысле… не прописано. Прозрачная граница рендеринга, за которой лежало ничто. Даже интерфейс, будто стесняясь, не показывал карту. Только одна строка, зависшая в углу, серым на черном:

[Свалка Миров / отстойник данных]

— Ну… добро пожаловать, — пробормотал Макс.

И сел. Потому что ничего другого мир пока не предлагал.

Макс поднялся, смахнул с плеча невидимую пыль — скорее по привычке, чем по необходимости — и пошел.

Мир не сопротивлялся. Но и не помогал.

Каждый шаг — как бросок кости: под ногой могла оказаться трава, могла — плитка, а могла и черная дыра, отрисованная в половину полигона. Справа торчала часть лестницы. Без дома. Лестница, ведущая в небо — и остановленная на середине движения, как ошибка в синтаксисе.

Слева — фрагмент леса. Прямо посреди пустоты: пять деревьев, три куста, один гриб. Все они слегка подрагивали, будто не до конца были уверены, что существуют.

Макс прошел мимо кусочка комнаты — старинной, с обоями и половичком. Удивительно уютной, если бы не тот факт, что она заканчивалась сразу за креслом. Как вырванный кадр из чужой памяти.

На холме — возвышение. Вроде бы когда-то это была арена: трибуны, полукруглая платформа, металлические столбы. Сейчас — лишь обломки. И один силуэт.

NPC.

Он стоял странно — как будто его заспаунили впопыхах и забыли проверить позу. Пальцы рук слиплись, текстура лица глючила: вместо глаз — две размытые тени, а рот то открывался, то закрывался, независимо от слов.

Хотя слов не было.

Макс подошел ближе.

— Привет? — осторожно произнес он.

Тот не ответил. Только медленно протянул руку.

В ней — предмет. Без модели. Без описания. Просто черный прямоугольник, колышущийся, как жирная пиксельная капля.

В интерфейсе всплыло:

[НЕИЗВЕСТНЫЙ ОБЪЕКТ]

Описание: недоступно.

Привязка: отсутствует.

Источник: не определен.

— Ну ты и кладоискатель, — пробормотал Макс, забирая артефакт.

NPC не шелохнулся. Только начал плавно опускать руку… и завис. Насовсем.

Макс посмотрел на добычу.

— Спасибо, что не взорвался. Уже неплохо.

Он пригляделся к находке. Предмет не имел формы — даже не был «вещью» в привычном смысле. Скорее — намерением что-то сгенерировать, но брошенным на полпути.

Название в интерфейсе мигало:

[???]

Он вызвал окно информации.

Описание — пусто.

Редкость — нулевая.

Слот — не назначен.

И только в самом низу мелькала тонкая строчка, словно просочившаяся сквозь защиту движка:

object.class= NULL; object.intended_use = «undecided»

— Ага, — кивнул Макс. — Классический черный ящик.

Он ткнул в иконку. Интерфейс занервничал. Зашумел фон. Воздух дрогнул, как над раскаленным асфальтом.

Появилось сообщение:

Ошибка: предмет не может быть интерпретирован.

Все равно сохранить? [Y/N]

Макс медленно улыбнулся.

— Конечно, сохранить. Вы что, сдурели? Я же в отстойнике. Это как уйти с блошиного рынка без демонической шкатулки.

Он нажал «Y».

На мгновение все вокруг почернело. Потом — вернулось. Предмет пропал из рук, но остался в инвентаре. Где занял отдельную ячейку. Красную.

Без кнопок взаимодействия. Без возможности выбросить.

Он постоял. Прислушался. Фоновые шумы будто стали чуть тише. Или наоборот — настороженнее. Как будто Свалка Миров заметила, что кто-то решил забрать то, что давно считалось забытым.

Макс закрыл инвентарь. Красная ячейка с предметом без имени продолжала мигать. Ни вспышек, ни тревоги — просто ровный, уверенный пульс, как сердце чего-то, что не должно было жить.

Он огляделся. Пейзаж по-прежнему оставался мозаикой из чужих уровней: полустена комнаты, выросшая прямо из земли, гниющий фрагмент арены, заваленный трофейными мешками, и кусок леса, где деревья упирались в небо под не тем углом. В небе по-прежнему дрожал серый шум.

И тут…

Гул.

Сначала — низкий. Почти внутренний.

Затем — уверенный. Как будто кто-то под землей начал движение. Или… в коде.

Макс замер. Это не был системный отклик. Не надпись, не протокол, не тревога из мира админов. Это было что-то иное. Слишком тяжелое, чтобы быть скриптом. Слишком живое, чтобы быть безопасным.

Он инстинктивно шагнул назад — и провалился в пол. Не сразу, не резко — текстура под ногами вдруг отступила, как ткань, которую не успели сшить. Он ухнул внутрь полуразрушенного пола, будто мир сам предложил укрытие.

Стал частью бага.

Вокруг — ни света, ни формы. Только плоские полигоны, не загруженные до конца. Макс затаился между ними, ощущая, как над поверхностью проходит волна чего-то огромного. Оно не топало. Не шло. Оно… вспоминало.

Гул усилился. Появился стук. Не четкий, не ритмичный. Похожий на биение по битому диску — хаотичный, нервный. Но каждый удар приближался.

Он не знал, что это. Но точно — не Система.

На экране, в углу интерфейса, все еще тикал таймер.

23:41:07

23:41:06

23:41:05

Макс сжал кулак.

— Добро пожаловать в Черный Лаг, — прошептал он. — Похоже, теперь у меня сосед.

Глава 4«Ты не герой, ты баг»

Он не знал, что именно вызвало это — может быть, наклон головы. Может, жест руки. Или просто система решила, что пора.

Экран всплыл перед глазами без предупреждения — как будто кто-то легким щелчком включил прожектор в давно забытом подвале. Никаких визуальных эффектов, никаких звуков. Просто: теперь ты видишь.

Макс дернулся, инстинктивно пытаясь отступить — но, конечно, ничего не изменилось. Интерфейс висел перед ним, не моргая. Прозрачный прямоугольник, стилизованный под классическое меню игрока. Слишком классическое. Даже подозрительно.

— Вот только этого мне не хватало, — пробормотал он. — Меню смерти в мире, где я уже умер.

Панель медленно загорелась.

[СТАТУС ПОЛЬЗОВАТЕЛЯ]

Имя: [USER_01]

Уровень: —

Класс: [НЕВЕРИФИЦИРОВАННЫЙ]

— Ну хоть не «Мудак первого ранга», — кивнул он. — Уже спасибо, Система. Прогресс.

Он прокрутил интерфейс вниз. Страница со скиллами выглядела как свалка идей, выброшенных еще до альфа-теста.