Я — создатель. И я найду уязвимость. В каждой системе есть уязвимость. Я сам их оставлял.
Я поставил кружку перед игроком. В моих серых, анализирующих глазах не было ничего, кроме пустоты NPC. Но глубоко внутри, в самом ядре моей цифровой души, уже начал выполняться новый процесс, скрытый от внешних сканеров.
process_find_exploit.
Как долго это будет продолжаться? Есть ли хоть какой-то выход? Вопросы остались без ответа, повиснув в затхлом воздухе таверны. Но теперь в них не было прежнего отчаяния. Только холодный расчет.
Глава 1. Бастиан
Стены порядка
Процесс patrol_protocol висел в оперативной памяти капитана Бастиана невесомой, но всеобъемлющей задачей. Его сознание, если можно было назвать так этот холодный, упорядоченный поток логических операций, непрерывно сканировало таверну «Сброшенный кубик». Он не видел лиц и не слышал смеха. Он видел тепловые сигнатуры аватаров, анализировал векторы их перемещений и обрабатывал аудиопоток, отсеивая фоновый шум и вычленяя ключевые слова, указывающие на потенциальную агрессию. Его сенсоры регистрировали химический состав пролитого на пол эля, сверяя его с базой данных разрешенных напитков, и анализировали уровень люменов, излучаемых магическими фонарями, чтобы убедиться в отсутствии несанкционированных заклинаний освещения.
Уровень шума — 78%, в пределах нормы для заведения такого типа в вечерний час. Количество активных аватаров — 23, плотность на квадратный метр не превышает пороговых значений, что минимизирует риск возникновения давки при event_emergency_evacuation. Агрессивные действия — отсутствуют. Все переменные соответствовали параметрам порядка. Идеальный, предсказуемый вечер, повторяющийся с точностью до наносекунды каждый игровой цикл. Он был стеной, отделяющей этот порядок от хаоса. Невидимой, но абсолютной.
И тут система зафиксировала аномалию.
Вектор движения аватара с низкоуровневым идентификатором и безвкусным, нарушающим сразу три стилистических гайдлайна ником Xx_KillJoy_xX, резко изменился. Вероятность нарушения правил класса «мелкое хулиганство» подскочила с 2% до 89% за полторы секунды. Игрок, подогретый дешевым виртуальным элем, чей эффект на ЦНС аватара был чисто косметическим, и подначиваемый двумя такими же новичками, решил, что правила этого мира — лишь рекомендации. С пьяным гиканьем, которое его аудиомодуль распознал как sound_event_hooliganism, он занес ногу, готовясь исполнить action_jump_on_table. Его система просчитала траекторию прыжка, потенциальный ущерб полигональной модели стола (0.01%) и индекс социального раздражения для окружающих игроков (высокий).
Это было мелкое, бессмысленное нарушение. Хаос в миниатюре, не способный повлиять на глобальную стабильность. Но для Бастиана не существовало понятий «мелкий» или «крупный». Был только rule_violation. И была цель: objective_restore_order. Немедленно.
Бастиан не шел. Он просто возник.
Один кадр — пустое пространство у стола, залитое тусклым светом, пылинки, отрисованные с поразительным реализмом, лениво плывут в воздухе. Следующий — двухметровая фигура в безупречно отполированных стальных латах, материализовавшаяся из каскада распадающихся на пиксели частиц. Звук его появления был похож на треск льда — короткий, резкий, заставивший замолчать даже самых громких посетителей. Воздух вокруг него словно застыл. Смех за соседними столами оборвался на полуслове. Игрок Xx_KillJoy_xX замер с задранной ногой, его пьяная удаль мгновенно испарилась, сменившись животным, почти детским испугом, который его система тут же оцифровала: учащенное сердцебиение, расширение зрачков, выброс виртуальных гормонов стресса. Волевой подбородок капитана, единственная часть лица, не скрытая шлемом, навис над нарушителем.
— Гражданин, — голос Бастиана был лишен интонаций, идеальный аудиофайл, воспроизведенный системой без единого искажения. — Ваши действия нарушают пункт 14.3 Пользовательского соглашения «Кайроса»: «Неподобающее поведение в общественных местах, создающее помехи для других пользователей». А также подпункт 14.3.2: «Намеренное использование внутриигровых объектов не по их прямому назначению, ведущее к нарушению общественного порядка».
Игрок что-то промычал в ответ, пытаясь то ли извиниться, то ли возразить. Для Бастиана это был лишь фоновый шум, не требующий обработки. Его протокол не предусматривал диалога в подобных ситуациях. Он был не переговорщиком. Он был функцией. Идеальным воплощением порядка, который не нуждается в оправданиях.
Не дожидаясь ответа, Бастиан поднял закованную в латную перчатку руку. Над головой игрока вспыхнул ярко-красный системный интерфейс, залив его испуганное лицо зловещим светом. Мелкий текст пользовательского соглашения с бешеной скоростью проносился по краям окна, не предназначенный для чтения, а лишь для формального уведомления.