Патч судного дня
Лес был свёрстан криворуким джуном в три часа ночи на энергетиках и отчаянии. Текстуры травы не прогрузились, и под ногами расстилался ковёр из серых квадратов. Каждый шаг сопровождался тихим, монотонным клик-клик-клик, как мышка в пустом офисе.
Гравитация работала через раз. Белоснежка делала шаг и три секунды парила в воздухе, прежде чем приземлиться. Шаг. Три секунды. Шаг. Три секунды. Ворчун сзади выдал что-то ёмкое и непечатное.
— Пинг, — коротко объяснил Умник, не отрываясь от КПК (самодельного устройства размером с кирпич, собранного из запчастей непонятного происхождения). — У нас пинг четыреста миллисекунд. Реальность не успевает обрабатывать запросы.
Белоснежка шла впереди, сжимая в руке Зеркало. Гномы плелись следом. Умник размахивал киркой, постукивая по воздуху в случайных точках пространства. Иногда куда-то попадал, и из воздуха выпадала золотая монетка. Чихун превратился в оружие массового поражения. Когда он останавливался и морщил нос, все инстинктивно приседали, зажав уши. Простак постоянно спотыкался и падал лицом в провалы текстур.
Замыкал колонну Соня. Вернее — иногда замыкал. Большую часть времени он застывал с открытым ртом, потом резко телепортировался на пару метров вперёд и выдавал обрывок фразы, которую начал несколько секунд назад:
— Я хо... спа... ть... буферизация... я хочу...
— ЗАТКНИСЬ, — хором сказали Ворчун и Весельчак.
Соня завис. Телепортировался. Открыл рот.
Зеркало прокладывало маршрут, на его треснутом экране мигала стрелка навигатора, уверенно ведущая через самые густые зоны битых пикселей. Слишком уверенно.
— Зеркало? — обратилась к нему Белоснежка, перешагивая через дерево, зависшее над землей.
— Ты ведёшь нас через зоны с максимальным количеством глюков.
— Я оптимизирую маршрут! — В голосе появилась нотка «самый неубедительный человек в комнате». — С наименьшим сопротивлением трафика! Обходные дороги перегружены, пришлось...
— Что? Нет! — Возмутилось Зеркало. — Я бы никогда! Как ты можешь обвинять меня в…
— Заткнись, или я тебя выключу.
Зеркало замолчало, и Белоснежка засунула его в сумку.
— Датчики показывают аномально высокий уровень кода в воздухе, — сказал Умник, не отрываясь от КПК. — Это не природа. Это игровая локация.
На 83-м этаже Башни Grimm Inc. Кот в Сапогах (ныне Смотритель Нарративов) изучал отчёт с тем же выражением, с каким смотрят на свой сгоревший офис: пожарным звонить уже поздно, и страховка не оформлена.
ВОВЛЕЧЁННОСТЬ ПОЛЬЗОВАТЕЛЕЙ: ↓ 34% РЕЙТИНГ ОДОБРЕНИЯ ЗЛОДЕЯ: ↓ 52% СООТВЕТСТВИЕ ШТАМПАМ: ERROR
— Она идёт, — сказал кто-то из аналитиков.
— Птицы в радиусе двух километров от неё...
— Я. Вижу. — Кот развернулся. — Мне нужно решение, а не репортаж о катастрофе. Репортажи я смотрю в новостях.
Тишина. Только вой системы охлаждения и чей-то нервный кашель. Кот подошёл к терминалу. Открыл папку. Пролистал. Остановился.
— Он же... процедурно-генерируемый, — начал аналитик. — Мы никогда не...
HUNTER_v3 Текстура: Брутальная щетина Оружие: Арбалет [автонаведение: сюжетные_дыры] Моральный компас: [ОТКЛЮЧЕН] Диалоговые скрипты: загружены
Кот нажал Enter. Достал таблетку от язвы. Запил холодным кофе.
В лесу, за много километров от Башни Grimm Inc., воздух перед бандой Белоснежки сгустился и пошёл рябью, как над асфальтом в жару. Потом пространство разорвалось, и посреди поляны завис огромный яркий баннер:
[ ГОРЯЧИЕ ЕГЕРИ УЖЕ В ТВОЁМ РАЙОНЕ! ]
Из баннера, стряхивая с плеч цифровой шум, вышел Егерь. Кожаный прикид, сапоги, арбалет за плечом, трёхдневная щетина. Двигался он с лёгкой задержкой, каждое движение на долю секунды отставало от намерения. Шаг. Пауза. Шаг. Пауза.
Гномы не двигались. Даже Соня перестал буферизоваться.
— Вы обвиняетесь, — произнёс Егерь голосом из склеенных аудиосэмплов разной громкости и тональности, — в нарушении Пользовательского Соглашения. Пункт двенадцать. «Отказ от смерти в драматически обоснованный момент».
Весельчак медленно повернулся к Умнику:
— Ясно. Просто хотел убедиться.
Он раскрутил алебарду и рванул вперед с диким воплем:
— СЛОМАЮ НАХРЕН, КЛОУН КОЖАНЫЙ!
Алебарда прошла Егеря насквозь с тихим щелчком и полным отсутствием последствий. Даже цифр урона над головой не появилось. Только короткое сообщение:
— Режим бога, — побледнел Умник.
Чихун сморщил нос, набрал воздуха:
— Может, я... апч... АПЧХИИИИ!
Звуковая волна ударила Егеря. Он стал пиксельным, но даже не упал. Просто моргнул, как будто перезагрузился, и вернулся в прежнее разрешение. Достал стрелу из колчана, вложил в арбалет, прицелился в Белоснежку и выстрелил.
— Физический урон не работает! — крикнула Белоснежка, увернувшись от выстрела. — Умник! Какой у него IP?!
— Динамический! Постоянно меняется! Я не могу его засечь! У него VPN, прокси, файрвол — всё!
Егерь повернулся к Белоснежке. Его глаза вспыхнули ярче. Он поднял арбалет, и в этот момент Белоснежка поняла, что надо делать. Она побежала вперёд.
— Белоснежка, — Умник повысил голос, — это плохая...
— Все хорошие идеи сначала выглядят плохо.
Белоснежка подбежала к Егерю и обняла его. Крепко. По-настоящему. Как в классической диснеевской сцене, от которой сводит скулы.
Её персональная ошибка в коде существования, нестабильность и хаос вступили в прямой контакт с кодом Егеря.
Реальность взвизгнула. Егерь затрясся. Его тело начало мигать, как неисправная лампочка. Лицо меняло аватарки с бешеной скоростью: улыбающийся смайлик, череп, логотип Grimm Inc, порно-баннер, кадр из новостей, опять череп, ошибка 404, синий экран смерти.
— Умрите во имя... — начал Егерь, и в его голосе появилась первая нотка нестабильности, — ...скидки пятьдесят процентов... на...
— У тебя текстуры поехали, сладкий, — прошептала Белоснежка.
— Протокол ликвидации... доставка курьером... вторник... ОШИБКА...
— Умри... бесплатно... только для вас... КРИТИЧЕСКАЯ ОШИБКА В СТРОКЕ 447...
Егерь взорвался спамом. Тысячи бумажных листовок завалили поляну.
«МОНЕТЫ ГНОМАМ БЕЗ ПАСПОРТА И СПРАВОК»
«ЗЛЫЕ МАЧЕХИ ХОТЯТ ПОЗНАКОМИТЬСЯ. 18+»
Поляна утопала в выгодных предложениях без СМС и регистрации.
Ворчун содрал с лица прилипшее объявление. Прочитал и украдкой засунул в карман.
— Это всё, — подтвердила Белоснежка.
Умник стоял над тем местом, где только что был Егерь. Среди полигонов и битых пикселей лежал жёсткий диск. Старый, ободранный, с царапинами и надписью от руки: «Love_Core.dll».
Гномы занялись останками Егеря. Весельчак водрузил его голову на себя как шлем, и тот немедленно выдал: «Хочешь увеличить размер кирки? Кликни здесь!» Весельчак кликнул по воздуху. Ничего не произошло. Кликнул снова.
— Хватит, — сказал Умник, подключая жёсткий диск к КПК.
Экран мигнул. Загорелся. Побежали строки:
ДЕШИФРОВАНИЕ...
████████░░ 80%
██████████ 100%
ПРОЕКТ: СТЕКЛЯННЫЙ ГРОБ 2.0
СТАТУС: 87% ЗАВЕРШЕНО
ЦЕЛЬ: БЕЛОСНЕЖКА
МЕТОД: Косметическая лоботомия
+ Вирусная кампания
+ Перезапись личности
ОЖИДАЕМОЕ ЗАВЕРШЕНИЕ: 72 ЧАСА— «Косметическая лоботомия», — медленно произнёс Умник. — Интересная формулировка.
— Что это значит? — спросил Простак.
— Что ей хотят выжечь мозги и сделать рекламным лицом шампуня.
Белоснежка не слушала. Она отошла на несколько шагов и достала Зеркало. Оно молчало. Притворялось спящим. А Зеркало молчало только тогда, когда ему было что скрывать.
— Ты знало. — Голос Белоснежки был ровным и спокойным. — Маршрут через зоны с максимальными глюками. Промедление на каждом повороте. Ты не прокладывало путь — ты тянуло время.
— Я оптимизировало сценарий, — сказало Зеркало наконец. — Экшен поднимает рейтинги. Ты должна быть бла...
Белоснежка порылась в сумке. Достала осколок стекла и медленно провела краем по рамке Зеркала.
— Ещё один «оптимизированный» сюрприз — и я сделаю тебе даунгрейд до калькулятора.
— Это угрозы! Это нарушение Соглашения о добровольном использовании, пункт семь, подпункт...
Зеркало заткнулось, и Белоснежка снова убрала его. Если бы она стояла чуть под другим углом. Если бы присмотрелась на долю секунды дольше. Она бы увидела, как в глубине Зеркала что-то быстро-быстро моргает.
ВХОДЯЩИЙ ЗВОНОК: МАЧЕХА Принять? [Д/Н]
Глюки заканчивались и начиналась другая тишина. Мёртвая, стерильная, как в операционной после уборки. Никакого треска люминесцентных ламп, именно полное отсутствие звука.
Вдали виднелся силуэт замка Мачехи похожий на шприц, воткнутый в холм под углом. Весельчак смотрел на него задумчиво:
— Красиво. В смысле — страшно.
— Одно и то же, — буркнул Ворчун.
Чихун сморщил нос (все напряглись):
— А если мы... апч... просто... апч... убьем её?
— Кого? Мачеху? — переспросил Весельчак.
— Она главная злодейка. У неё сюжетная броня. Несколько жизней. Резервные копии. Система не даст ей умереть раньше кульминации. А то и развязки.
— Значит, мы обречены? — спросил Простак.
— Не обречены, — ответила Белоснежка, поднимаясь. — Просто нужно изменить правила.
Белоснежка улыбнулась. Устало и зло.
За их спинами дерево за деревом исчезал лес . Не взрывался, не горел — просто сменялся чёрным фоном. Как будто кто-то снимал декорации, и рабочие сцены не торопились.
На небе появился прогресс-бар.
LOADING LEVEL 3 Progress: ████░░░░░░ 40%
— Это сколько нам ждать? — спросил Весельчак, разглядывая полоску загрузки.
Они сидели на границе исчезнувшего леса и смотрели, как мир догружается. Замок-шприц на горизонте не мигал, не исчезал — просто стоял. Терпеливо и неподвижно, как счёт, который рано или поздно придётся оплатить.
Progress: ████░░░░░░ 41%