Каждый шаг ощущался с микроскопической задержкой. Как будто между его телом и миром стоял посредник багнутый фильтр, не до конца уверенный, как должны вести себя ноги.
Он наступал не в мир, а в представление о мире, собранное из старых билдаутов, устаревших скриптов и копипасты.
Где-то метрах в пяти впереди трава превращалась в камень. Не логично, не с границей просто резко. Зеленый лоск сменялся серым, как ошибка заливки в 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, и даже Наставник тебя дропнул?
На небе раздался писк.
Не громкий. Едва уловимый как будто старенький динамик в наушниках словил обратную связь и сейчас собирается лопнуть. Высокочастотная нота, пронизывающая кости. Макс дернулся, словно по затылку провели холодной ложкой. Писк был не просто звуком он был сигналом. Присутствием. Командой «внимание».