Админская свалка

Глава 1 «Удалить нельзя воскресить»

Где-то между ферзем и форс-мажором была кнопка «удалить». Кто-то ее нажал.

Но, видимо, с ошибкой.

* * *

Макс открыл глаза не сразу.

Скорее — почувствовал, как открываются. Не сам — его. Так, будто команду отдали не мышцей, а скриптом. Как будто кто-то где-то дал сигнал: «А теперь — зрение». С задержкой. С дрожащим курсором. С тревожным ощущением, что эта анимация давно не поддерживается.

Свет был серым. Не пасмурным — текстурно серым. Как старая текстура неба, которую кто-то наложил по умолчанию, забыв покрасить. Прямоугольные облака. Отсутствие источника. Полутон, с которым даже погода казалась placeholder’ом.

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

Ветер налетел резко. Моментально. Слишком моментально.

— Ага, — пробормотал Макс, — зациклило.

Это был даже не ветер — эффект. Loop. Static pattern override. Кто-то забыл поставить рандом. Одни и те же листья подлетали, кружили по точке G(54;27), ударялись о забор и исчезали в левом нижнем углу экрана. Через секунду — снова.

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

Все как в последний день. В тот самый. Когда он…

Пик.

Голова дернулась сама. В воздухе — всплыла строка.

[Сессия восстановлена]

Пользователь: [DEL_USER_01]

Местоположение: /Assets/Trash_Builds/QuarantineZone_01

Класс: Не определен

Файл поврежден. Повторный запуск невозможен.

— Ну ты глянь, — хмыкнул он. — Даже в аду мне не дали нормальный билд.

Он огляделся. Место казалось… заготовкой. Как будто это должна была быть локация, но автор умер в процессе. Поля были, но без текстур. Дома — серые боксы. Надписи «TODO: REPLACE WITH MODEL» на стенах. Одинокое дерево — вечно застывшее в фазе «ветер_слабый».

Крысы в углу стояли в Т-позе. Он вздрогнул.

— Карантин, — пробормотал. — Это ведь…

Он вспомнил.

Проект. «Элизиум Онлайн». Его студия. Последний билд. Их уволили. Он нажрался. Влез в админку. Начал ковырять систему. Хотел создать персонажа, чтобы потом поиздеваться. Папка «Карантин». Экспериментальные классы. Забагованная зона, которую никто не активировал. Он вколотил туда билд, вписал свои параметры. Забыл выйти.

— Но я же… умер, — сказал он вслух.

Пауза.

— Я точно умер. Газ. Ванна. Новости.

Тело не дергалось. Оно слушало. Как будто не было необходимости в проверке.

— Это не реальность, — сказал он. — И не симуляция. Это… остаток.

Он поднялся.

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

Он шел. Мимо сломанных объектов, фантомных квестов. Брошенных флагов триггеров. Плакат: «Добро пожаловать в…». Без названия. Курсор мерцал на пустом месте.

— Кто меня восстановил? — спросил он.

Ответа не было.

Но он чувствовал: кто-то пытался. Как если бы система не знала, куда его отправить — и просто открыла то, что осталось. Самую старую, самую сброшенную сборку. Не потому что «так надо», а потому что больше негде было разместить это.

Макса.

DEL_USER_01.

Он.

В теле персонажа. Без роли. Без класса. Без задачи.

Он коснулся груди. Ни интерфейса, ни статы. Только ощущение чего-то… искаженного. Как будто под кожей не органы, а блоки кода.

Он сел на обломок текстуры, похожий на лавочку.

— Вот теперь, — сказал он, — у нас действительно начинается тестирование.

Макс медленно выдохнул. Или ему показалось, что выдохнул.

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

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

Это не лобби, — сказал он вслух. — Это карантин.

Он не искал в этих словах пафоса. Он знал. Это не была метафора. Он чувствовал под кожей структуру этой зоны — не как игрок, даже не как разработчик. Как… кто-то третий. Кто просочился между статусами. Кто оказался в папке, которую никогда не открывают.

Перед ним висела карта. Или что-то вроде карты. Она дергалась, перерисовывалась, при каждом моргании немного менялась — линии смещались, зоны мерцали, имена городов исчезали, появлялись значки неизвестных биомов, которые исчезали через секунду. В центре — «Ты здесь». И под ним — [Unknown Marker].

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

Он шагнул к кусту. Рука прошла сквозь. Коллизии не было. Вообще. Как будто никто не планировал, что сюда кто-то придет. Макс вгляделся в эту текстуру и на секунду ощутил не страх, не тревогу — а глубокое, щемящее чувство… несозданности. Это место не просто заброшено. Оно не родилось.

Деревья стояли в тишине. Но их было слишком мало. И слишком плоские. Не просто плоские — у них даже с обратной стороны не было картинки. Когда он обошел одно, оно превратилось в серую заготовку. Фейк. Проп. Театральная декорация в забытой сцене.

И тогда он поднял голову.

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

Привет, старая знакомая, — пробормотал он. — Еще летаешь?

Туман впереди был фиолетовым. Странным. Слишком плотным, чтобы быть визуальным эффектом, и слишком живым, чтобы быть ошибкой. Он дышал. Он двигался. Иногда в нем проскакивали фигуры — неразличимые. Как будто кто-то пытался прорваться сквозь багнутую мембрану реальности.

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

Он повернулся. Сделал шаг. И тут:

[Обнаружено несоответствие]

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

«Ты не должен здесь быть.»

Он замер.

О, — сказал он, — ну, наконец.

И тишина снова упала сверху. Как будто ничего не было. Как будто это было воображение. Или первая ласточка.

Он улыбнулся. Потому что теперь все было ясно: его заметили.

Объект нарушает правила.

Инициализация наблюдателя…

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

Макс даже не вздрогнул. Он стоял, чувствуя, как по позвоночнику, как по коду, прокатывается пульсация: невидимая камера поворачивается к нему. Фокус. Идентификация.

Ты кто такой? — спросил он. Не громко. Но в голосе не было растерянности. Он знал, что его слышат.

Пауза.

Я Куратор, — ответил голос.

Не человеческий. И не искусственный — в том смысле, как понимают ИИ в фильмах. Он был… сухим. Как справка. Как юридическая формулировка. Голос правила, читающий приговор вслух, даже если слушать некому.

А я — баг? — уточнил Макс, скосив взгляд в небо, которого не было.

Ты — обломок удаленного билда. Системный сбой, не подлежащий восстановлению. Но ты не исчез. Поэтому ты — моя головная боль.

Макс рассмеялся. Не так, как смеются в кино. Просто выдохнул с хрипотцой, склонив голову набок, будто это был корпоративный звонок с клиентом.

Значит, я снова на работе, — сказал он.

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

'Если я ферзь, то шах мне дали еще до загрузки.

Вопрос только в том — чей это ход.'

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

И — ничего.

Никакого меню. Ни инвентаря, ни карты, ни логов.

Только одна панель, простейшая. Та, которую открывает система, когда все остальное сломано.

[СОСТОЯНИЕ]

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

Он прочитал:

Состояние: аномальное

Уровень:

Класс:?

Доступ: спорный

Права: аварийные

Реальность: неизвестно

Он присвистнул. Медленно, уважительно.

Аварийные права? Значит, я могу хотя бы… вызвать техподдержку?

Ты — и есть авария, — отозвался Куратор.

На фоне что-то шелестнуло. Мир слегка вздрогнул. Или это у Макса мурашки побежали, что в этом месте одно и то же.

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

Ты сам сюда попал? — спросил Куратор.

Макс не ответил сразу. Он провел рукой по плите. Та была гладкой. Слишком гладкой. Без шершавости, без зазубрин. Это была текстура. Просто текстура. Ни единого пикселя случайности.

Я не уверен, — честно признался он. — Сначала был вечер. Пиво. Тестовый билд. Потом утро. Потом — ничего.

Куратор молчал.

Ты не похож на стандартную ИИ-поддержку, — сказал Макс. — Ты кто? Подпрограмма? Архивный модуль?

Я — инструмент наблюдения. Меня запускают, когда мир не справляется.

Он кивнул. Да, это подходило.

Он — сбой. А тот — инструмент, призванный на него смотреть.

Макс встал. Медленно. Под ногами все еще была плита. Все еще не проваливалась. Значит, шахматная доска держится. Пока.

И что теперь?

Ты будешь отслеживаться. Твои действия будут записаны. При достижении критической аномальности будет инициирована чистка.

Как в старые добрые — «вы не вписываетесь в концепт»?

Как в текущие. Концепта нет. Но сбои остаются сбоями.

Макс огляделся. Мир был мертв. И при этом — жив. Как симуляция, которая продолжает пульсировать, даже если игрок ушел.

Ну что, Куратор, — сказал он. — Значит, я жив. Пока. Значит, будет игра.

И пошел.

Впереди был фиолетовый туман.

Граница. Или портал.

И за ним — неизвестная часть доски.

Он провел пальцем по воздуху. Медленно, как будто нащупывал нечто невидимое.

И — почувствовал.

Не ветер. Не температуру. Сопротивление.

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

— Пока не больно, — пробормотал Макс. — Пока работает…

Он хотел верить, что это хорошо. Что еще есть время. Но…

Шаги.

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

Он обернулся.

Пусто.

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

Он поднялся. Привычным движением — встал на одно колено, уперся рукой в землю. Только… земли не было.

Была поверхность — текстурированная. Серая, бесплодная, не дающая ни пыли, ни давления, ни отклика.

Он наклонился, схватил ближайшую ветку.

Хруст.

Но — без веса.

Она треснула и растворилась в воздухе. Как объект, которому забыли прописать физику.

Макс посмотрел на свою ладонь. Провел пальцем по запястью. Кожа… не его.

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

Он рассмеялся. Тихо. Слишком тихо для живого.

Ты точно хочешь знать, что будет дальше? — спросил он у мира. У себя. У кода.

Нет, — отозвался голос системы. Спокойный. Без эмоций. Просто логика, читающая скрипт. — Но теперь ты часть процесса.

Он закрыл глаза. Сделал вдох.

Игра началась.

Но доска — сломана.

И кто тут игрок, а кто фигура — уже неважно.

Первыми его выдали не действия. Не сбои. Не всплески.

Табличка.

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

И в этот момент небо задергалось.

Нет, не визуально. Код.

Логика мира — заскрипела, как заедающий жесткий диск.

И выстрелила:

[ВНИМАНИЕ: ОБЪЕКТ НЕСАНКЦИОНИРОВАН]

Класс угрозы: не определен

Причина: невозможно прочитать сигнатуру игрока

Статус: потенциальный читер / экспериментальная сущность

Рекомендация: эвакуация NPC, принудительное удаление

Таймер: 23:59:59

Макс моргнул.

Ну здрасьте, — сказал он.

И в этот момент все началось.

Персонаж стоял неподвижно.

Его поза была до боли знакома — нейтральная стойка, разработанная аниматорами лет десять назад. Макс узнал ее сразу. Руки вдоль тела, чуть согнутые локти, легкий наклон головы. Тот самый застывший образ, в котором NPC встречают игрока в лобби, пока не получат команду.

Но теперь все изменилось. Лицо осталось прежним — кукольное, застывшее, с выражением «по умолчанию». Но глаза… глаза ожили.

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

Система перезапускала алгоритм распознавания угроз. Впервые. Потому что никогда не была готова к такому. Этот NPC не должен был чувствовать страха. У него просто не было скрипта на страх.

Но он испугался.

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

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

Макс остался один.

Он посмотрел наверх. Небо было мертвым. Фоновая текстура, серо-фиолетовая, не имеющая глубины. В нем не было ни солнца, ни света. Только таймер.

23:58:44.

Система не кричала. Она не угрожала. Просто включила отсчет.

Макс сел. Прямо на землю. Которая, строго говоря, не была землей. Просто поверхность. Плоскость. Слой под текстурой.

Он уставился на цифры. 24 часа. Система дала ему сутки. Не как игроку. Как багу. Как вирусу. Чтобы исчезнуть. Чтобы быть стертым.

Он провел рукой по колену. Не чувствовал ткани. Ни температуры, ни давления. Но чувствовал себя.

Ну и что ты будешь делать? — спросил он. Не систему. Не бога. Себя. Просто чтобы услышать голос.

Тишина. И таймер.

Что делает сбой, когда понимает, что он — сбой?

Когда осознает, что весь мир работает над его уничтожением?

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

Потянулся. Позвоночник щелкнул — или это щелкнул код.

И шагнул вперед.

Первый шаг.

Загрузка...