Шрифт:
И шагнул вперед.
Первый шаг.
Глава 2
«Системная тревога: неизвестный субъект»
Макс шел осторожно, будто наступал не на землю, а на гифку, зацикленную текстуру пола.
Плоскость под ногами выглядела убедительно ровной только до момента шага. Стоило сдвинуться — и в месте контакта пробегал едва заметный мерцательный сбой. То ли переход между шейдерами, то ли невидимая заплатка, которую система пыталась натянуть на дыру.
Каждый шаг ощущался с микроскопической задержкой. Как будто между его телом и миром стоял посредник — багнутый фильтр, не до конца уверенный, как должны вести себя ноги.
Он наступал не в мир, а в представление о мире, собранное из старых билдаутов, устаревших скриптов и копипасты.
Где-то метрах в пяти впереди трава превращалась в камень. Не логично, не с границей — просто резко. Зеленый лоск сменялся серым, как ошибка заливки в Photoshop.
Потом — грязь.
Комковатая, блестящая, как масло, слипающееся в текстурный шум.
Дальше — дерево. Одинокое, застывшее. Без анимации ветвей. Тень — отсутствует.
И снова — пустота. Не туман, не дымка. Просто место, где ничего не нарисовали.
Макс чувствовал: это не мир. Это — отладочная сцена.
Место, где всерьез никто не должен был ходить.
Разве что тестировщик — на минуту, проверить, не развалился ли билд.
Он огляделся.
Горизонт колыхался, как строчка в старом телеэфире. Прогрузка шла лениво, будто мир сам сомневался, стоит ли себя показывать.
И тут он увидел вспышку.
Слева, чуть ниже уровня глаз — что-то мигало.
Маяк. Или, скорее, значок. Пиктограмма.
Синий восклицательный знак висел над объектом, словно вырванный из UI и приклеенный к реальности на соплях. Невысокий — скорее даже не маяк, а артефакт внимания. Он узнал его: туториал. Первый триггер. Построенный, чтобы сказать тебе: «Вот, герой, здесь начинается обучение».
Макс хмыкнул. Конечно. Почему бы не начать с простого. Только что-то подсказывало: простого больше не будет.
Он медленно спустился, обходя зоны с мигающими тенями. Знак мигал все реже — как будто чувствовал приближение чужого. И… исчез.
На его месте стоял NPC.
Сложно было сказать, кто это. Человек? Нет. Скорее, макет. Модель, скомпилированная кем-то, кто не умел рисовать лица.
Лицо было плоским. Не в смысле 2D — в смысле эмоционально мертвым. Глаза не смотрели. Они… работали. Буквально: крутилось что-то внутри, как линзы в оптическом сканере.
На фигуре висел длинный кожаный плащ. Плотный, тускло-блестящий. И совершенно неподвижный. Ветер, который здесь повторялся каждые восемь секунд, проходил сквозь него, не оказывая никакого влияния.
Физики — ноль.
Анимаций — ноль.
Присутствие — только визуальное.
Макс остановился. Выдохнул. Поднял руку и помахал — словно проверяя, сработает ли скрипт.
— Эй, — произнес он. Голос вышел хрипловатым, но ровным. — Туториал, да? Обучение хочу пройти. Научите меня… чему угодно. Например, не вылетать с ошибкой.
NPC не шелохнулся. Ноль реакции. Только глаза — как и в прошлый раз — вошли в цикл.
Скан.
Проверка.
Повтор.
Сброс.
Заново.
Макс фыркнул.
Голову сдавило, как от напряжения перед BSOD.
Что-то не сходилось.
Макс стоял напротив NPC, будто перед древним автоматом с газировкой, который внезапно заговорил голосом техподдержки. Мир вокруг казался чуть стабильнее, чем пару минут назад — по крайней мере, текстуры под ногами не перетекали в геометрию пятого уровня. Хотя бы пока.
И тут появилось оно — как вспышка лампы дневного света:
[Запуск обучения…]
[Ошибка: класс не определен]
[Ошибка: у объекта нет имени]
[Ошибка: не задано тело]
Макс моргнул.
— Приятно, блин, познакомиться, — пробормотал он. — Я — nobody. С приветом из /Trash.
В воздухе перед ним дернулся интерфейс — как рыбка в пакете: прозрачный, искаженный, с дрожащими пикселями. На миг выплыла панель, будто сам мир попытался вспомнить, как быть игрой.