Кузнец отступил. Один шаг. Еще один. Медленно, как будто сам удивлялся, что может это делать. А потом — моргнул, словно понял что-то, и исчез. Телепорт. Аварийный выход, который раньше был просто строчкой кода в документации.
Макс остался один.
Он посмотрел наверх. Небо было мертвым. Фоновая текстура, серо-фиолетовая, не имеющая глубины. В нем не было ни солнца, ни света. Только таймер.
23:58:44.
Система не кричала. Она не угрожала. Просто включила отсчет.
Макс сел. Прямо на землю. Которая, строго говоря, не была землей. Просто поверхность. Плоскость. Слой под текстурой.
Он уставился на цифры. 24 часа. Система дала ему сутки. Не как игроку. Как багу. Как вирусу. Чтобы исчезнуть. Чтобы быть стертым.
Он провел рукой по колену. Не чувствовал ткани. Ни температуры, ни давления. Но чувствовал себя.
— Ну и что ты будешь делать? — спросил он. Не систему. Не бога. Себя. Просто чтобы услышать голос.
Тишина. И таймер.
Что делает сбой, когда понимает, что он — сбой?
Когда осознает, что весь мир работает над его уничтожением?
Он встал. Медленно, как будто тело снова нужно было загрузить в память.
Потянулся. Позвоночник щелкнул — или это щелкнул код.
И шагнул вперед.
Первый шаг.
Глава 2
«Системная тревога: неизвестный субъект»
Макс шел осторожно, будто наступал не на землю, а на гифку, зацикленную текстуру пола.
Плоскость под ногами выглядела убедительно ровной только до момента шага. Стоило сдвинуться — и в месте контакта пробегал едва заметный мерцательный сбой. То ли переход между шейдерами, то ли невидимая заплатка, которую система пыталась натянуть на дыру.
Каждый шаг ощущался с микроскопической задержкой. Как будто между его телом и миром стоял посредник — багнутый фильтр, не до конца уверенный, как должны вести себя ноги.
Он наступал не в мир, а в представление о мире, собранное из старых билдаутов, устаревших скриптов и копипасты.
Где-то метрах в пяти впереди трава превращалась в камень. Не логично, не с границей — просто резко. Зеленый лоск сменялся серым, как ошибка заливки в Photoshop.
Потом — грязь.
Комковатая, блестящая, как масло, слипающееся в текстурный шум.
Дальше — дерево. Одинокое, застывшее. Без анимации ветвей. Тень — отсутствует.
И снова — пустота. Не туман, не дымка. Просто место, где ничего не нарисовали.
Макс чувствовал: это не мир. Это — отладочная сцена.
Место, где всерьез никто не должен был ходить.
Разве что тестировщик — на минуту, проверить, не развалился ли билд.
Он огляделся.
Горизонт колыхался, как строчка в старом телеэфире. Прогрузка шла лениво, будто мир сам сомневался, стоит ли себя показывать.
И тут он увидел вспышку.
Слева, чуть ниже уровня глаз — что-то мигало.
Маяк. Или, скорее, значок. Пиктограмма.
Синий восклицательный знак висел над объектом, словно вырванный из UI и приклеенный к реальности на соплях. Невысокий — скорее даже не маяк, а артефакт внимания. Он узнал его: туториал. Первый триггер. Построенный, чтобы сказать тебе: «Вот, герой, здесь начинается обучение».
Макс хмыкнул. Конечно. Почему бы не начать с простого. Только что-то подсказывало: простого больше не будет.
Он медленно спустился, обходя зоны с мигающими тенями. Знак мигал все реже — как будто чувствовал приближение чужого. И… исчез.
На его месте стоял NPC.
Сложно было сказать, кто это. Человек? Нет. Скорее, макет. Модель, скомпилированная кем-то, кто не умел рисовать лица.
Лицо было плоским. Не в смысле 2D — в смысле эмоционально мертвым. Глаза не смотрели. Они… работали. Буквально: крутилось что-то внутри, как линзы в оптическом сканере.
На фигуре висел длинный кожаный плащ. Плотный, тускло-блестящий. И совершенно неподвижный. Ветер, который здесь повторялся каждые восемь секунд, проходил сквозь него, не оказывая никакого влияния.
Физики — ноль.
Анимаций — ноль.
Присутствие — только визуальное.
Макс остановился. Выдохнул. Поднял руку и помахал — словно проверяя, сработает ли скрипт.
— Эй, — произнес он. Голос вышел хрипловатым, но ровным. — Туториал, да? Обучение хочу пройти. Научите меня… чему угодно. Например, не вылетать с ошибкой.
NPC не шелохнулся. Ноль реакции. Только глаза — как и в прошлый раз — вошли в цикл.
Скан.
Проверка.
Повтор.
Сброс.
Заново.
Макс фыркнул.
Голову сдавило, как от напряжения перед BSOD.
Что-то не сходилось.
Макс стоял напротив NPC, будто перед древним автоматом с газировкой, который внезапно заговорил голосом техподдержки. Мир вокруг казался чуть стабильнее, чем пару минут назад — по крайней мере, текстуры под ногами не перетекали в геометрию пятого уровня. Хотя бы пока.
И тут появилось оно — как вспышка лампы дневного света:
[Запуск обучения…]
[Ошибка: класс не определен]
[Ошибка: у объекта нет имени]
[Ошибка: не задано тело]
Макс моргнул.
— Приятно, блин, познакомиться, — пробормотал он. — Я — nobody. С приветом из /Trash.
В воздухе перед ним дернулся интерфейс — как рыбка в пакете: прозрачный, искаженный, с дрожащими пикселями. На миг выплыла панель, будто сам мир попытался вспомнить, как быть игрой.
Всплыла подсказка:
[Используйте «E», чтобы поговорить с Наставником.]
Макс хмыкнул:
— Уже лучше, — и ткнул пальцем в воздух.
NPC отозвался. Посмотрел прямо. В глаза. В первый раз. Без эмоций, без ожиданий. Как камера наблюдения.
— Здравствуйте, [NAME]. Я обучу вас азам управления в [GAMENAME].
Макс вздохнул и кивнул, будто это был кастинг, на который он все-таки пришел:
— Ну давай. Поехали.
NPC дрогнул.
— Для передвижения используйте клавиши — [ERR_MOVEMENT_KEYS_NOT_FOUND]…
— Ага, — поддержал Макс.
— Чтобы атаковать — [DATA MISSING].
— Супер.
— Выберите класс: [CLASS?]
Макс задумался на секунду.
— А можно… «тот, кто просто хотел выжить»?
Молчание.
— Обработка…
NPC замер. На лице появилась пауза — цифровая. Как будто замер он не от глубины вопроса, а от недостающей строчки кода. В уголке экрана на долю секунды мелькнул текст: Exception: UndefinedThoughtLine 0×13…
И потом — все.
Он просто исчез. Без анимации. Без перехода. Будто в редакторе нажали Delete.
Макс остался стоять один. Перед ним — пустота, где еще секунду назад стояла фигурка «Наставника». Воздух дрожал, но не от напряжения. От того, что кто-то не закончил рендер.
Он вдохнул — рефлекторно. Потому что именно так делают люди, которым только что сообщили, что даже обучение для них — недоступно.
— Ну, допустим, — проговорил он, — значит, будем учиться как в девяностых. Сами. Без гайдов.
Интерфейс больше не предлагал подсказок. Только пустое сообщение внизу экрана:
[Ошибка инициализации сценария. Код ответа: 418. Объект не является чашкой чая.]
Макс рассмеялся. И пошел дальше. Потому что — а что еще делать, когда ты nobody, и даже Наставник тебя дропнул?
На небе раздался писк.
Не громкий. Едва уловимый — как будто старенький динамик в наушниках словил обратную связь и сейчас собирается лопнуть. Высокочастотная нота, пронизывающая кости. Макс дернулся, словно по затылку провели холодной ложкой. Писк был не просто звуком — он был сигналом. Присутствием. Командой «внимание».
А потом появился голос.
Низкий, сухой. Не громкий — но с тем самым оттенком, который слышен даже сквозь щит, даже если ты стоишь к нему спиной. Как в игре, где голос за кадром всегда знает, где ты.
— Обнаружено несоответствие.
— Нарушение шаблона.
Макс поднял голову.
— Ну здрасьте, — выдохнул он, ни на кого конкретного не глядя.