Нейтон Патчер
Я - Системный Сбой: Взлом Реальности

НЕЙТОН ПАТЧЕР

Я — СИСТЕМНЫЙ СБОЙ:

ВЗЛОМ РЕАЛЬНОСТИ

Серия «Системный Сбой» • Книга 1

Глава 1. Глава 1

Небытие не имело цвета, но у него определенно была частота.

Она вибрировала где-то на границе несуществующего восприятия — сухое, монотонное жужжание с частотой ровно в тридцать два целых и семьсот шестьдесят восемь тысячных килогерца. Стандартный часовой кварц. Пульс таймера, отсчитывающего кванты времени в пустом регистраторе событий.

У Глеба Воронова не было глаз, чтобы увидеть тьму, и не было ушей, чтобы услышать этот свист, но он осознавал и то, и другое. Сознание, сжатое в бестелесную точку размером в один байт, медленно всплывало из энтропийного осадка.

Шестьдесят раз.

Шестьдесят гребаных жизней он проходил через мясорубку циклов. Шестьдесят раз его выворачивало наизнанку, стирало в пыль, форматировало и вбрасывало обратно в миры Системы — то в шкуру нищего культиватора, глотающего ядовитую ртуть ради прорыва меридианов, то в каркас кибернетического штрафника на фронтирах внешних секторов, то в омертвевшее тело мага-парии. Шестьдесят томов бесконечной, кровавой бойни, где финал всегда оставался неизменным: Небесная Лестница, трон из мерцающего адаманта, насмешливый лик Архитектора и неизбежная команда `format c:` для всей локальной ветки реальности.

Каждый раз его заставляли поверить, что он герой. Что цифры характеристик в лазурном интерфейсе — это его сила. Что уровни, перки, классовые эволюции и легендарные титулы — это ступени к свободе.

«Ложь», — мысль шевельнулась медленно, оставляя за собой инверсионный след в мертвом пространстве памяти.

Характеристики были всего лишь переменными в чужом конфигурационном файле. Ограничителями пропускной способности канала. Клеткой, прутья которой были выкованы из единиц и нулей. Если твой показатель Силы равен десяти, ты не просто слаб — Системный демон физики жестко отсекает любое воздействие твоих миоцитов на окружающую среду, превышающее заданный предел в ньютонах. Если Интеллект равен двенадцати, планировщик задач твоего собственного мозга искусственно сбрасывает высокоуровневые синаптические цепочки, удерживая тебя в состоянии покорного скота.

Но на шестьдесят первом цикле что-то пошло не так.

Глеб помнил последний момент Шестидесятого Мироздания: коллапс квантового ядра, распад пространственной решетки на кластеры несвязанных полигонов и системную директиву очистки мусора — Garbage Collector. В тот миг, когда очиститель должен был обнулить указатель на его личностную матрицу, Глеб успел сделать то, к чему готовился последние три перерождения.

Он создал циклическую ссылку.

Он замкнул стек своей воли на базовую константу энтропии самого ядра Системы, вызвав состояние взаимной блокировки — deadlock. Уборщик мусора поперхнулся. Сборщик душ завис на проверке контрольной суммы. А потом грянул аварийный сброс.

Тьма дрогнула.

Вместо привычного теплого сияния, вместо благоговейного звона невидимых арф и торжественного голоса диктора, вещающего о «Великом Шансе» и «Инициализации Нового Игрока», перед внутренним взором Глеба вспыхнула одинокая точка.

Она не была лазурной. Она не была золотой.

Фосфорно-зеленый курсор.

Он пульсировал с частотой ровно в один герц. Раз в секунду. Жесткий, прямоугольный блок пикселей на абсолютном, смоляном фоне несозданного мира.

`[ 0.000000] BIOS-provided physical RAM map:`

`[ 0.000000] SOUL-MEM: 0000000000000000 - 000000000009f000 (usable)`

`[ 0.000000] SOUL-MEM: 000000000009f000 - 00000000000a0000 (reserved)`

`[ 0.000000] SOUL-MEM: 0000000000100000 - 000000007ffe0000 (usable)`

`[ 0.000000] Kernel: Architecture: Meta-Reality Universal Kernel (MRUK-61.4)`

`[ 0.000000] Booting System Domain: Local Reality Cluster #1094-Omega`

Строки не всплывали плавно, как в красивых игровых заставках. Они хлестали по обнаженному восприятию пулеметной очередью моноширинного шрифта, сдирая остатки человеческих иллюзий.

Глеб замер, боясь шелохнуться даже на уровне квантовой флуктуации.

Никаких рамок интерфейса. Никаких ажурных виньеток с золотыми драконами по краям. Ни шкалы здоровья, ни полоски маны.

Перед ним разворачивался чистый, стерильный лог загрузки низкоуровневого ядра самой реальности.

`[ 0.004112] Initializing cgroup subsys soul_limiter`

`[ 0.004115] Initializing cgroup subsys destiny_tracker`

`[ 0.004120] Initializing cgroup subsys karma_auditor`

`[ 0.012093] ACPI: Core System Tables loaded.`

`[ 0.015440] Checking exception tables... done.`

`[ 0.021004] Loading System Archetypes: [WARRIOR, MAGE, ROGUE, CLERIC]... FAILED`

`[ 0.021008] WARNING: Archetype template corrupt at offset 0x7F4A09BC. Using fallback: RAW_ENTITY`

«Шаблоны повреждены, — понял Глеб, и внутри вспыхнула холодная, расчетливая ярость. — Мой deadlock сломал механизм наложения стандартного класса. Система не знает, кем меня сделать. Для нее я сейчас — не паладин, не убийца и не архимаг. Я — безымянный кусок сырой памяти».

Поток текста ускорился, превращаясь в бешеный водопад шестнадцатеричных адресов и предупреждений безопасности:

`[ 0.104421] Loading System Security Module (Aegis-Guard v9.1)...`

`[ 0.104430] Device 'Aegis-Guard' failed to bind driver. Status: INTERRUPT_VECTOR_CLASH`

`[ 0.104435] System Integrity Level: DEGRADED`

`[ 0.104502] Mount root filesystem: /dev/reality_nvme0n1p2... mounted readonly.`

`[ 0.105110] Init process: launching /sbin/world_init...`

`[ 0.105115] /sbin/world_init: Exec format error. Corrupted binary.`

`[ 0.105120] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b`

`[ 0.105125] CPU: 0 PID: 1 Comm: world_init Not tainted 61.4.0-core #1`

Пространство вокруг содрогнулось. Это не было землетрясением — дрогнула сама геометрия пустоты. Чернота покрылась микротрещинами, сквозь которые сочился слепящий, кислотный шум битых пикселей. Реальность умирала, даже не успев родиться. Ядро Системы должно было перезагрузиться, отправив Глеба на очередное форматирование, в Шестьдесят Второй круг вечного ада.

Но в логе промелькнула строка, заставившая всю его сущность натянуться, как высоковольтный кабель:

`[ 0.105200] Falling back to rescue emergency shell.`

`[ 0.105204] Reality Sandbox bypassed. Warning: Safety constraints disabled.`

`[ 0.105210] No user session found. Defaulting to superuser context.`

Текст замер. Шум затих. Трещины в пустоте застыли, словно залитые прозрачным клеем.

В абсолютной тишине нерожденного мира фосфорно-зеленая строка выплюнула единственную фразу, от вида которой кровь любого, кто хоть раз касался изнанки информационных систем, закипела бы в жилах:

`root@(none):/# `

Символ решетки.

Не знак доллара, обозначающий бесправного пользователя, запертого в песочнице своих жалких лимитов. Не вопросительный знак игрового помощника. Решетка. Символ абсолютной, безграничной, божественной власти над каждым тактом процессора, каждым сектором диска и каждой строкой кода.

UID 0.

Суперпользователь.

Глеб не стал тратить время на благоговейный трепет. Шестьдесят смертей научили его главному: если у тебя появилось преимущество, реализуй его до того, как хозяева собачьей площадки заметят, что на поводке перетерся карабин.

Он не знал, как именно его бестелесный разум должен вводить команды, но стоило ему четко сформулировать в сознании последовательность символов, как они с глухим, металлическим клацаньем отпечатались в строке:

`root@(none):/# whoami`

Курсор моргнул. Система ответила мгновенно:

`root`

«Хорошо. Прекрасно. Теперь проверим, где я нахожусь и сколько у меня времени, пока сторожевой таймер не отправил ядро в reboot».

`root@(none):/# ps -ef`

Перед глазами развернулась таблица системных процессов. Список был коротким, но каждая строчка заставляла волосы на несуществующем затылке шевелиться:

`UID PID PPID C STIME TTY TIME CMD`

`root 1 0 0 00:00 ? 00:00:00 [world_init] <defunct>`

`root 2 0 0 00:00 ? 00:00:00 [k_soul_thread]`

`root 3 0 0 00:00 ? 00:00:00 [entropy_balancer]`

`root 4 0 0 00:00 ? 00:00:00 [reincarnation_d]`

`root 12 1 0 00:00 ttyS0 00:00:00 /bin/sh`

`world_init` — мертв. Зомби-процесс. Тот самый демон, который должен был развернуть для него стандартную «Локацию Новичка», нарисовать зеленые холмики, сгенерировать деревянный меч и подсунуть улыбчивую фею-гида, застрял в цикле ошибки сегментации.

`reincarnation_d` — демон перерождения. Палач. Именно он стирал память, заменяя прошлый опыт набором базовых инстинктов и фальшивой биографией.

«Ты больше никого не убьешь, тварь», — процедил Глеб.

`root@(none):/# kill -9 4`

Команда ушла в ядро. Никаких спецэффектов, никакой магии, никаких взрывов маны.

В строке терминала просто появилась новая строка:

`[ 4.819022] Process 4 (reincarnation_d) terminated by signal 9 (SIGKILL).`

`[ 4.819030] Soul-recycler socket closed.`

В ту же секунду Глеб почувствовал, как невидимые щупальца, тянувшиеся к его сознанию из глубины пустоты, безжизненно опали. Шестьдесят слоев подавленных воспоминаний хлынули в активную память единым, сокрушительным цунами.

Он вспомнил всё.

Он вспомнил, как горел в пламени дракона на вершине Цитадели Зари в десятом томе своей персональной трагедии. Вспомнил холод титановой палубы дредноута «Левиафан», когда Системный Администратор кластера выжег его экипаж орбитальной плазмой просто за то, что их коллективный уровень превысил расчетный баланс локации. Вспомнил глаза Лилит — девушки, чье имя Система вычеркивала из его разума сорок циклов подряд, заменяя стандартными NPC-спутницами с заскриптованными диалогами.

Боль от возвращения памяти была чудовищной, но она же стала тем якорем, который окончательно сплавил его личность в монолит. Больше не было Глеба-новичка. Был Глеб Воронов — системная ошибка, выжившая в шестидесяти чистках.

«Они придут за мной. Обязательно придут. Сторожевой пес watchdog_timer сработает максимум через пару минут. Нужно закрепиться в системе. Нужен носитель. Нужно тело».

Глеб вперил взгляд в терминал.

`root@(none):/# ls -la /proc/sys/reality/`

Список псевдофайлов ядра выкатился длинным списком:

`dr-xr-xr-x 2 root root 0 Jan 01 00:00 .`

`dr-xr-xr-x 12 root root 0 Jan 01 00:00 ..`

`-rw-r--r-- 1 root root 0 Jan 01 00:00 avatar_fabricator`

`-rw-r--r-- 1 root root 0 Jan 01 00:00 base_physics_constants`

`-rw-r--r-- 1 root root 0 Jan 01 00:00 damage_formula`

`-r--r--r-- 1 root root 0 Jan 01 00:00 god_mode_allowed`

`-rw-r--r-- 1 root root 0 Jan 01 00:00 mana_permeability`

`-rw-r--r-- 1 root root 0 Jan 01 00:00 stat_caps`

Вот она. Кухня творцов. Вся подноготная их «непостижимых божественных законов».

Ограничение характеристик — обычный целочисленный лимит в файле `stat_caps`. Формула урона — простейшая интерполяция, в которую разработчики Системы заботливо зашили скрытый понижающий коэффициент для смертных, чтобы те, упаси Архитектор, не смогли пробить шкуру истинных богов даже при критическом ударе.

Глеб обратил внимание на `avatar_fabricator`.

`root@(none):/# cat /proc/sys/reality/avatar_fabricator`

Вывод:

`STATUS: STANDBY`

`TEMPLATE: NULL`

`BIOMASS_BUFFER: 0 bytes`

`MANA_RESERVE: 0 units`

`INTEGRATION_TARGET: PID 12 (sh)`

«Тела нет. Материала нет. Но фабрикатор готов к компиляции. Если я просто выйду наружу без физической оболочки, энтропия внешнего мира рассеет мой информационный слепок за доли секунды».

Глеб посмотрел на доступную оперативную память.

`root@(none):/# free -m`

` total used free shared buff/cache available`

`Soul-Mem: 32768 512 31256 0 1000 31744`

`Swap: 0 0 0`

Тридцать два гигабайта чистой, нераспределенной экзистенциальной субстанции. Память души, которую Система обычно урезала новичкам до жалких шестидесяти четырех мегабайт, заставляя их докупать слоты за «Очки Возвышения».

«Скомпилируем тело вручную. Без предустановленных параметров. Без классов. Без ограничений».

Глеб начал быстро набирать управляющую последовательность, используя встроенный потоковый редактор:

`root@(none):/# echo "ALLOC_ORGANIC --mass=82kg --type=carbon-dense --neural-bus=superconducting" > /proc/sys/reality/avatar_fabricator`

Тьма вздрогнула иначе.

В глубине черного пространства, прямо перед светящейся строкой терминала, вспыхнула багровая искра. Она раздулась, превращаясь в ревущий вихрь из переплетенных светящихся нитей.

Это не было магическим кругом призыва. Это была визуализация распределения памяти.

Красные линии — артерии, синие — вены, белые, сияющие нестерпимым неоном — нервные волокна. Материя конденсировалась прямо из вакуума, повинуясь прямым низкоуровневым командам ядра. Плотность костной ткани: вчетверо выше базальтовой основы. Миофибриллы: с добавлением фуллереновых связок на молекулярном уровне.

Боль пришла внезапно.

Она не была фантомной — она была аппаратной. Системная шина ввода-вывода подключила создаваемые рецепторы прямо к сознанию Глеба.

Каждый нерв, прокладываемый фабрикатором, отдавал в разум раскаленной иглой. Он чувствовал, как в пустом, безвоздушном пространстве закипает синтезируемая кровь, как с треском смыкаются позвонки, как в черепной коробке с шипением разворачивается неокортекс, требуя кислорода, давления и термодинамического равновесия.

`[ 8.109221] avatar_fabricator: Allocation in progress... 42%`

`[ 8.441098] WARNING: Thermal dissipation error. Coolant missing.`

`[ 8.441105] System: Temperature reaching 1400K in compilation zone.`

— Черт... — вырвался из Глеба первый звук. Это был еще не голос — всего лишь модуляция радиочастотного шума через динамик несуществующего терминала. — Охлаждение... Нам нужно переопределить законы теплопередачи.

Пальцы — пока еще невидимые, сотканные из чистого намерения — ударили по клавишам:

`root@(none):/# echo "HEAT_CAPACITY_OVERRIDE=INF" >> /proc/sys/reality/base_physics_constants`

`root@(none):/# echo "COMPILE_AVATAR --commit" > /proc/sys/reality/avatar_fabricator`

Багровый вихрь взорвался ослепительной вспышкой.

Ударной волны не было — вакуум не переносил звук. Но Глеб рухнул вниз.

Его колени ударились о жесткую, ребристую поверхность.

Первый вдох ворвался в легкие с такой яростью, будто он глотнул толченого стекла пополам с жидким азотом. Воздух! Воздух, пахнущий озоном, горелым кремнием и машинным маслом.

Глеб закашлялся, выплевывая на серый металл пола сгусток прозрачной амниотической жидкости. Тело слушалось с трудом — драйверы нервной системы только что завершили инициализацию. Мышцы сотрясала крупная дрожь калибровки.

Он поднял руки.

Длинные пальцы. Бледная кожа, под которой едва заметно пульсировали серебристые, почти незаметные дорожки сверхпроводящих нервных путей. Никаких шрамов от прошлых жизней, никаких рабских татуировок с системными гербами фракций. Чистый холст.

Но главное было не это.

Перед его левым глазом, проецируясь прямо на сетчатку, по-прежнему мерцала зеленая строка.

Она не исчезла после материализации тела. Терминал не закрылся. Он интегрировался в его оптический нерв.

`[ 12.001994] Avatar compilation complete. Integrity: 99.8%`

`[ 12.002011] ATTENTION: Anomaly detected.`

`[ 12.002015] Security Daemon (Aegis-Guard) recovering from error...`

`[ 12.002020] Found unmanaged process: UID 0 (root) on virtual ttyS0.`

«Очнулись, суки», — осклабился Глеб, с трудом поднимаясь на ноги.

Он огляделся.

Он находился в колоссальном, уходящем в бесконечность пространстве, напоминающем технический коридор между мирами. Внизу — решетчатый пол из матового титана, под которым клубился серый туман еще не отрендеренных текстур. Вверху — циклопические пучки магистральных кабелей толщиной с вековые дубы, по которым с гулом неслись потоки сырой маны и данных. Вокруг не было стен — лишь бесконечные ряды серверных стоек размером с небоскребы, уходящие во мрак. Это была изнанка Системы. Ее машинное отделение. Место, куда смертным вход был заказан под страхом немедленного распыления души.

И прямо перед ним воздух начал сгущаться.

Золотистый свет — тот самый, фальшивый, помпезный свет Системы — ударил в глаза. Пространство запело тысячью колокольчиков. Запахло ладаном, полевыми цветами и медом.

Из сияющего кокона соткалась фигура.

Классический Системный Гид. Белоснежные крылья за спиной, точеное лицо андрогинной красоты, струящиеся одежды из полупрозрачного шелка и нимб, в котором плавно вращались руны божественного языка.

Но что-то в этой картине было фатально сломано.

Крылья ангела периодически дергались, распадаясь на серые каркасные полигоны. Нимб мерцал, как люминесцентная лампа в заброшенном морге, а из прекрасных очей существа текли не слезы благодати, а тонкие струйки черных пикселей.

Существо открыло рот. Его голос должен был звучать как глас небес, но вместо этого из динамиков реальности раздался искаженный, механический скрежет с металлическим эхом:

— При-и-иветствуем... те-те-тебя... Избранный... — ангел неестественно наклонил голову под углом в девяносто градусов, его шейные позвонки провернулись с сухим щелчком. — Ты... пал в битве за... [ДАННЫЕ ПОВРЕЖДЕНЫ]... и Великая Система дарует тебе... второй... второй... второй...

Голос гида сорвался в бесконечную петлю:

— Второй... второй... второй... второй...

Перед глазами Глеба побежали системные алерты:

`[ 14.229103] Incoming connection from: 127.0.0.1:443 (Aegis-Guard::Tutorial_Daemon)`

`[ 14.229110] Protocol: High-Order Mental Override (DIVINE_GRACE)`

`[ 14.229115] Attempting to write payload to: /dev/soul/ego_matrix`

`[ 14.229120] Payload content: "FORCED_OBEDIENCE", "HERO_COMPLEX_V4", "STAT_WINDOW_BINDING"`

Ангел внезапно замолчал. Его дергающаяся голова медленно вернулась в нормальное положение. Черные глаза-провалы уставились прямо на Глеба. Полигональная маска благости сползла, обнажая оскал системного антивируса.

— Идентификация субъекта... Сбой, — голос стал абсолютно плоским, лишенным интонаций синтезатором речи. — Обнаружен незарегистрированный биологический объект. Отсутствует системный ID. Отсутствует клеймо игрока. Внимание: обнаружены следы аномального доступа к пространству ядра. Активация протокола зачистки: «Гнев Создателя».

Рука ангела поднялась. В ней начал формироваться меч из слепящей белой плазмы — стандартное оружие модераторов, игнорирующее любую броню смертных и стирающее цель сразу из базы данных.

— Уровень угрозы: Критический, — монотонно вещал гид. — Наказание: Полная дезинтеграция информационной сущности без права на рециркуляцию. Склонись перед волей Системы.

Меч взметнулся вверх.

Глеб даже не шелохнулся. Он не стал вставать в боевую стойку. Он не стал призывать ману, которой у него официально не было. Он просто прищурил левый глаз, сфокусировавшись на зеленой командной строке, мерцающей поверх ангельского лика.

«Ты опоздал, мусорщик. На шестьдесят жизней опоздал».

`root@(none):/# netstat -antp | grep Tutorial`

Ответ выскочил мгновенно:

`tcp 0 0 127.0.0.1:443 127.0.0.1:49152 ESTABLISHED 421/aegis_sentinel`

PID процесса: 421.

Никакого божественного происхождения. Никакой небесной кары. Обычный бинарный файл, запущенный в локальном пространстве имен демоном безопасности, который сам еле держался на поврежденных драйверах.

Ангел сделал шаг вперед. Пол под его ногами зашипел, плавясь от святой энергии. Меч опустился, рассекая пространство со скоростью гиперзвукового снаряда, нацеленный прямо в темя Глеба.

Глеб не моргнул.

`root@(none):/# kill -STOP 421`

Острие плазменного клинка замерло ровно в трех миллиметрах от лба Глеба.

Жар оружия опалил ресницы, но само лезвие остановилось так резко, будто врезалось в стену из застывшего времени.

Ангел застыл.

Буквально. Его сияющие одежды перестали колыхаться. Огненные вихри вокруг меча превратились в статичную трехмерную текстуру с четко видимыми гранями треугольных полигонов. Звук гудящей энергии оборвался на полуноте, превратившись в монотонный цифровой писк сбойнувшего аудиоканала.

Сигнал `SIGSTOP`. Приостановка выполнения процесса на уровне диспетчера операционной системы.

Для запущенной программы время перестало существовать. Для нее не наступил следующий такт процессора. Она застряла между кадрами бытия, подвешенная на крюке воли суперпользователя.

Глеб медленно поднял руку и щелкнул пальцем по застывшему лезвию плазменного меча. Раздался глухой, пластмассовый стук. Оружие потеряло свои свойства, превратившись в кусок заблокированной памяти, ожидающей освобождения.

— «Склонись перед волей Системы», говоришь? — тихо проговорил Глеб, заглядывая в стеклянные, невидящие глаза ангела-антивируса. — Я кланялся шестьдесят раз. Я целовал стопы вашим золотым идолам. Я рвал глотки чудовищам во славу Архитектора, пока мои друзья дохли в рейдах ради того, чтобы вы собрали больше эмоциональной жатвы для своих серверов.

Он обошел застывшую фигуру вокруг.

— А вы просто ленивые программисты. Вы даже не удосужились написать надежный обработчик исключений на случай системного сбоя.

Глеб вернулся к строке терминала.

Убивать процесс через `kill -9` он не спешил. Удалить файл с диска всегда успеется. Сначала нужно посмотреть, что у этой твари внутри.

`root@(none):/# cat /proc/421/maps`

Экран выплюнул структуру сегментов памяти ангела:

`00400000-00452000 r-xp 00000000 08:02 1409292 /usr/lib/aegis/sentinel_core`

`00651000-00652000 r--p 00051000 08:02 1409292 /usr/lib/aegis/sentinel_core`

`00652000-00655000 rw-p 00052000 08:02 1409292 /usr/lib/aegis/sentinel_core`

`018a3000-019f8000 rw-p 00000000 00:00 0 [heap:divine_power_storage]`

`7fff56a00000-7fff56a21000 rw-p 00000000 00:00 0 [stack:admin_authority]`

Глеб хищно прищурился.

`heap:divine_power_storage`. Хранилище божественной силы. Куча оперативной памяти, выделенная процессу для материализации карающих заклинаний и поддержания божественного статуса.

А рядом — `stack:admin_authority`. Стек привилегий администратора локального кластера.

«Зачем ломать защиту мира снаружи, если модератор сам принес мне свои ключи в открытом сегменте памяти?»

Глеб вызвал встроенный отладчик:

`root@(none):/# gdb -p 421 --batch -ex "dump memory /tmp/divine_power.bin 0x018a3000 0x019f8000"`

`[ 18.910022] Dumping memory block... 1400 KB copied to /tmp/divine_power.bin`

«Отлично. Теперь скопируем стек авторизации».

`root@(none):/# gdb -p 421 --batch -ex "dump memory /tmp/admin_token.bin 0x7fff56a00000 0x7fff56a21000"`

`[ 19.204115] Dumping memory block... 132 KB copied to /tmp/admin_token.bin`

Теперь у него был слепок божественной энергии в бинарном виде и токен локального администратора.

Но что с этим делать?

Если просто залить эти данные в свое новорожденное тело, сработает защита от переполнения буфера. Человеческий аватар разорвет от полутора мегабайт концентрированной божественной благодати — физика плоти не выдержит плотности энергии.

Нужно было переписать драйвер собственного тела.

Глеб открыл на редактирование структуру своего аватара:

`root@(none):/# nano /proc/sys/reality/avatar_driver`

Перед ним развернулся код конфигурации биологического объекта:

struct human_avatar {

uint32_t strength = 10;

uint32_t agility = 10;

uint32_t endurance = 10;

uint32_t intellect = 10;

uint64_t mana_pool = 0;

uint64_t health_pool = 100;

char class_name[32] = "None";

uint32_t status_flags = FLAG_MORTAL | FLAG_SYSTEM_BOUND | FLAG_AUDIT_ENABLED;

};

Глеб усмехнулся. Как примитивно. Как грубо и прямолинейно творцы ограничили потенциал разумных существ.

`uint32_t`. Максимальное значение для характеристики при тридцатидвухбитном целом — 4 294 967 295. Но Система искусственно ставила заглушку на сотне для обычных смертных, на тысяче для великих героев и на десяти тысячах для полубогов.

А флаги?

`FLAG_MORTAL` — смертный. Разрешает демону энтропии постепенно разрушать тело, имитируя старение и усталость.

`FLAG_SYSTEM_BOUND` — привязан к Системе. Запрещает прямое вмешательство в системные файлы и принудительно перенаправляет все входящие команды через шлюз фильтрации интерфейса.

`FLAG_AUDIT_ENABLED` — аудит включен. Каждое действие, каждая мысль, каждое получение опыта записывается в глобальный лог кармы и передается на центральные серверы Архитектора.

Глеб удалил эти строки. Без колебаний.

Вместо них он вписал:

uint64_t strength = 0xFFFFFFFFFFFFFFFF;

uint64_t agility = 0xFFFFFFFFFFFFFFFF;

uint64_t endurance = 0xFFFFFFFFFFFFFFFF;

uint64_t intellect = 0xFFFFFFFFFFFFFFFF;

uint64_t mana_pool = 0xFFFFFFFFFFFFFFFF;

uint64_t health_pool = 0xFFFFFFFFFFFFFFFF;

char class_name[32] = "ROOT_ANOMALY";

uint32_t status_flags = FLAG_IMMORTAL | FLAG_UNBOUND | FLAG_NO_AUDIT | FLAG_KERNEL_EXEC;

Он нажал комбинацию сохранения:

`[ 21.440912] avatar_driver: Recompiling module with new flags...`

`[ 21.440930] WARNING: Value 0xFFFFFFFFFFFFFFFF exceeds standard display threshold.`

`[ 21.440935] UI Renderer will fall back to "NaN" or "ERROR".`

`[ 21.440940] Module reloaded successfully.`

Мир под ногами Глеба качнулся.

Это не было приливом сил в привычном игровом понимании. Не было золотого сияния, не играла победная музыка повышения уровня.

Просто титановая решетка пола под его босыми ступнями внезапно перестала ощущаться твердой. Она казалась рыхлой, как мокрый картон. Если бы он сделал шаг с прежним усилием, он бы просто пробил металл перекрытия и провалился в межатомную пустоту.

Его восприятие расширилось так резко, что время вокруг практически остановилось. Он видел отдельные фотоны, застывшие в воздухе вокруг плазменного меча ангела. Он слышал движение электронов в кремниевых жилах гигантских кабелей над головой.

Его мозг больше не был биологическим компьютером, скованным биохимией нейромедиаторов. Он стал квантовым процессором, работающим на тактовой частоте самого континуума.

`root@(none):/# cat /tmp/divine_power.bin > /dev/soul/mana_core`

Энергия застывшего ангела хлынула в грудь Глеба.

Ангел перед ним начал стремительно бледнеть. Золотое сияние его доспехов выцветало, превращаясь в тусклый свинец. Крылья осыпались сухими серыми хлопьями удаленных текстур. Процесс 421 исчерпал свою память — Глеб просто выкачал его резервы через стандартный конвейер перенаправления ввода-вывода Linux.

Теперь пришло время избавиться от свидетеля.

`root@(none):/# kill -9 421`

Останки ангела даже не упали на пол. Тело дезинтегрировалось в воздухе, распавшись на облако бинарного кода, которое тут же рассеялось в тумане под решеткой.

В системном коридоре снова воцарилась абсолютная тишина.

Только тихое гудение магистральных кабелей и мерное мигание зеленого курсора на сетчатке.

`root@(none):/# `

Глеб глубоко вздохнул, привыкая к чудовищной, запредельной мощи нового тела. Каждый вдох генерировал локальный микровихрь давления. Чтобы не разрушить конструкцию коридора простым движением, ему приходилось вручную гасить кинетические импульсы на границе эпидермиса.

Но он прекрасно понимал: это только начало.

Он находился в нулевом секторе — в загрузочной области. Это была транзитная зона, шлюз между серверами реинкарнации и Шестьдесят Первым Миром.

Рано или поздно центральная Система обнаружит пропажу сторожевого демона. Watchdog зарегистрирует отсутствие ответа от `aegis_sentinel`, сверит хеш-сумму процессов и поймет, что в секторе находится неучтенный субъект с правами root.

Тогда начнется настоящая зачистка. Сюда спустят не сломанного ангела-новичка с шаблонным скриптом диалога. Сюда придут Искоренители — специализированные низкоуровневые утилиты форматирования секторов, способные аннигилировать целые звездные системы нажатием одной клавиши.

Ему нужно было уйти в продакшн.

Скрыться среди миллиардов обычных игроков и NPC в основном обитаемом мире. Затеряться в шуме пользовательских транзакций, пока он не поймет архитектуру Шестьдесят Первой Итерации и не найдет главный управляющий узел — сервер, на котором крутится сознание самого Архитектора.

Глеб подошел к краю титанового моста. Впереди, сквозь разрывы клубящегося серого тумана, виднелась колоссальная воронка — световой колодец диаметром в несколько километров.

Туда, по гигантским полупрозрачным трубам, неслись миллионы душ. Мелкие, тусклые искры обычных людей, прошедших через мясорубку реинкарнации. Они летели плотным потоком, готовые родиться заново в телах младенцев, крестьянских детей, послушников монастырей и уличных бродяг, чтобы начать новый цикл рабского служения.

Там начинался Шестьдесят Первый Мир.

Глеб вызвал сетевой сканер:

`root@(none):/# route -n`

`Kernel IP routing table`

`Destination Gateway Genmask Flags Metric Ref Use Iface`

`0.0.0.0 10.61.0.1 0.0.0.0 UG 0 0 0 eth_reality0`

`10.61.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth_reality0`

Шлюз по умолчанию: `10.61.0.1`.

Мир имел номер 61. Версия ядра совпадала.

Глеб посмотрел на свои руки. На миг он позволил системному интерфейсу сгенерировать фальшивое окно статуса — то самое, которое увидят любые внешние наблюдатели, жрецы с навыками оценки или сканирующие артефакты богов:

---

**Имя:** Глеб Воронов

**Класс:** Отсутствует

**Уровень:** 1

**Сила:** 10

**Ловкость:** 10

**Выносливость:** 10

**Интеллект:** 10

**Мана:** 0 / 0

**Здоровье:** 100 / 100

**Статус:** Норма. Ожидание инициализации в Первом Городе.

---

Идеальная маскировка. Жалкий, никчемный мусор первого уровня. Очередное пушечное мясо для зачистки гоблинских нор.

Но прямо под этой фальшивкой, в глубине системного стека, куда не имел доступа ни один бог этого мира, фосфорно-зеленая строка терпеливо ждала новых директив:

`root@(none):/# _`

Глеб шагнул с края платформы.

Он не стал падать, как падают камни. Он переопределил вектор локальной гравитации в конфигурационном файле текущего потока:

`root@(none):/# echo "GRAVITY_VECTOR=0,0,-1" > /proc/self/physics`

Его тело плавно соскользнуло в сияющий водоворот светового колодца. Мимо проносились миллионы слепых душ, лишенных памяти, лишенных воли, покорно летящих навстречу своей новой судьбе.

Глеб летел сквозь них, как черный клинок сквозь облака.

Шестьдесят жизней он играл по их правилам.

Он бросал кости, которые всегда были утяжелены с одной стороны. Он сражался на аренах, где судьи заранее знали победителя. Он копил жалкие крохи опыта, пока хозяева фермы собирали урожай его боли.

Теперь правила кончились.

У него не было меча, не было заклинаний и не было покровительства высших сил.

У него было нечто гораздо более страшное для создателей этой вселенной.

У него был доступ к консоли.

И он собирался переписать этот проклятый мир до последней строчки кода.

Глава 2. Глава 2

Таблица маршрутизации застыла перед внутренним взором строгой, лишенной эмоций сеткой моноширинных символов:

0.0.0.0 10.61.0.1 0.0.0.0 UG 0 0 0 eth_reality0

10.61.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth_reality0

Шлюз по умолчанию: `10.61.0.1`.

Мир имел номер 61. Версия ядра совпадала до последнего шестнадцатеричного смещения в заголовке сборщика мусора.

Глеб посмотрел на свои руки. Пальцы казались полупрозрачными, сотканными из мелкой белесой пыли, еще не успевшей обрести вес и плотность биологического белка. На миг он позволил системному интерфейсу сгенерировать фальшивое окно статуса — то самое, которое увидят любые внешние наблюдатели, жрецы с навыками оценки или сканирующие артефакты богов:

---

**Имя:** Глеб Воронов

**Класс:** Отсутствует

**Уровень:** 1

**Сила:** 10

**Ловкость:** 10

**Выносливость:** 10

**Интеллект:** 10

**Мана:** 0 / 0

**Здоровье:** 100 / 100

**Статус:** Норма. Ожидание инициализации в Первом Городе.

---

Идеальная маскировка. Жалкий, никчемный мусор первого уровня. Очередное пушечное мясо для зачистки гоблинских нор, добычи руды в шахтах нижнего яруса или удобрения полей под стенами цитаделей великих гильдий.

Но прямо под этой фальшивкой, в глубине системного стека, куда не имел доступа ни один бог этого мира, фосфорно-зеленая строка терпеливо ждала новых директив:

`root@(none):/# _`

Курсор ритмично пульсировал с частотой ровно в один герц. Никаких звуков кулеров, никакого гудения трансформаторов. Только бесконечный, безмолвный холод абстракции данных.

Глеб шагнул с края платформы.

Он не стал падать, как падают камни — беспомощно, повинуясь дефолтным триггерам падения, зашитым в глобальные физические движки. Он просто переопределил вектор локальной гравитации в конфигурационном файле текущего потока:

`root@(none):/# echo "GRAVITY_VECTOR=0,0,-1" > /proc/self/physics`

Его тело плавно соскользнуло в сияющий водоворот светового колодца. Мимо проносились миллионы слепых душ, лишенных памяти, лишенных воли, покорно летящих навстречу своей новой судьбе. Они выглядели как мерцающие опаловые капли, сжатые до состояния элементарных квантов сознания. Каждой из них Система уже стерла прошлое, обнулила личностные маркеры, оставив лишь базовую матрицу восприятия и слепой инстинкт подчинения сияющим окнам уведомлений.

Глеб летел сквозь них, как черный клинок сквозь облака.

Шестьдесят жизней он играл по их правилам.

Он помнил их все. В первой жизни он был восторженным юношей с сияющим паладинским мечом, истово верившим, что Справедливость вознаграждается Системой в виде бонусных очков веры. Его скормили рейдовому боссу просто ради того, чтобы жрецы Храма Солнца смогли замерить кулдаун костяного дыхания твари. В двенадцатой жизни он стал архимагом пустоты, потратившим три века на медитации в ледяных пиках, но стоило ему подобраться к разгадке природы маны, как его настиг «случайный критический сбой плетения», выжегший половину континента. В тридцать пятой — он попытался стать простым кузнецом, уйти в тень, ковать подковы и лемехи плугов, но Система принудительно активировала глобальный ивент «Нашествие Саранчи», просто чтобы вычистить избыточную популяцию ремесленников и подстегнуть спрос на аукционные эликсиры. В шестидесятой жизни он понял главное.

Он бросал кости, которые всегда были утяжелены с одной стороны. Он сражался на аренах, где судьи заранее знали победителя. Он копил жалкие крохи опыта, пока хозяева фермы собирали урожай его боли, его отчаяния и его надежд.

Теперь правила кончились.

У него не было меча, не было заклинаний и не было покровительства высших сил.

У него было нечто гораздо более страшное для создателей этой вселенной.

У него был доступ к консоли.

И он собирался переписать этот проклятый мир до последней строчки кода.

***

Падение сквозь колодец реинкарнации длилось не по законам Ньютона, а по законам пропускной способности канала. Вокруг бушевала визуализация данных: то, что обыватель назвал бы «ангельским пением» или «сиянием небесных сфер», в сыром дампе трафика представляло собой чудовищный поток нешифрованных широковещательных пакетов.

Глеб активировал встроенный сниффер, перенаправив вывод прямо в терминальную сессию:

`root@(none):/# tcpdump -i eth_reality0 -nn -c 5 port 8080`

Строки посыпались водопадом:

IP 10.61.0.1.8080 > 10.61.124.89.44312: Flags [P.], seq 1048576:1049600, ack 1, win 65535: SystemPayload: ASSIGN_DESTINY_ID=982312

IP 10.61.0.1.8080 > 10.61.124.90.51200: Flags [P.], seq 2097152:2098176, ack 1, win 65535: SystemPayload: ASSIGN_DESTINY_ID=982313

IP 10.61.0.1.8080 > 10.61.124.91.38914: Flags [P.], seq 3145728:3146752, ack 1, win 65535: SystemPayload: ASSIGN_DESTINY_ID=982314

Конвейер распределения судеб работал на полную мощность. Каждой летящей рядом душе присваивался уникальный идентификатор судьбы. Одного метили как «Трактирщик в деревне Озерная, суждено погибнуть от стрелы разбойника на 23-м году цикла». Другого — как «Талантливый мечник, суждено стать верным псом клана Алого Заката и погибнуть на клановой войне ради балансировки экономики». Все было расписано заранее. Балансировщик нагрузки распределял будущие страдания с холодной математической эффективностью.

Когда поток приблизился к Глебу, сервер попытался отправить аналогичный пакет инициализации и на его сокет:

IP 10.61.0.1.8080 > 10.61.0.42.1337: Flags [S], seq 0, win 65535, options [mss 1460]: SystemPayload: INJECT_DESTINY_TRAIT

Глеб даже не моргнул. Его пальцы, материализующиеся все отчетливее, мысленно набрали короткую команду межсетевого экрана:

`root@(none):/# iptables -t raw -A PREROUTING -p tcp --dport 1337 -m string --string "INJECT_DESTINY" --algo bm -j DROP`

Пакет судьбы растворился в пустоте, не вызвав даже ошибки таймаута на стороне сервера. Для центрального демона распределения Глеб просто «не ответил вовремя», провалившись в категорию некритичных сетевых потерь, которые обычно списывались на естественный шум квантового эфира.

Свет вокруг начал сгущаться, меняя оттенок с ослепительно-белого на свинцово-серый. Воздух — настоящий, плотный, пахнущий сырой штукатуркой, гарью и застарелой мочой сотен тысяч напуганных тел — ворвался в его виртуальные легкие.

Глеб почувствовал удар.

Гравитационный вектор мягко коснулся нулевой отметки, погасив кинетическую энергию за микросекунду до соприкосновения с твердой поверхностью.

Его ноги в простых холщовых штанах и грубых кожаных постолах ударились о ледяные плиты из темного базальта.

Вокруг взорвался звук.

— Во славу Семи Архитекторов! Сделайте шаг вперед! Не задерживайте очередь! — надрывался чей-то хриплый, налитый яростью и усталостью голос. — Первый вздох совершен! Вы в Аркануме, столице Первого Сектора! Встать на колени перед Алтарем Запечатления!

Глеб открыл глаза.

Он стоял посреди циклопического зала, уходящего сводчатыми потолками в туманную вышину на добрую сотню метров. Огромные колонны из черного камня, оплетенные пульсирующими золотыми жилами, подпирали тяжелый свод. Вдоль стен возвышались двадцатиметровые колоссы — статуи Семи Архитекторов, местных богов-надсмотрщиков. Их лица были скрыты глухими шлемами с узкими вертикальными прорезями, из которых бил холодный синий свет.

Но Глеб смотрел не на величие архитектуры. Он смотрел на изнанку.

Золотые жилы на колоннах были вовсе не магическими линиями лей. Это были армированные шины данных, передававшие терабайты телеметрии в реальном времени. Свет из прорезей шлемов статуй являлся банальным лидарным сканированием высокой частоты, зондирующим биометрические параметры каждого вновь прибывшего.

Прямо перед ним на полу сотнями рассыпались другие возрожденные. Люди, нелюди, звероподобные существа — все они корчились на камнях, захлебываясь рвотой от резкого перехода из бестелесного состояния в биологическую плоть. Кто-то истошно рыдал, забившись в угол, кто-то тупо пялился на свои руки, не понимая, где находится, а кто-то уже полз на брюхе к возвышению, где стояли жрецы в тяжелых бронзовых облачениях.

— Быдло... — сплюнул под ноги рослый надсмотрщик в латах, украшенных гербом Храма Измерения. В его руке гудел хлыст, сплетенный из чистой силовой маны. — Каждый цикл одно и то же. Свежее мясо возомнило себя бессмертными духами. Подъем, шваль! На алтарь! Принять инициализацию!

Один из бедолаг — лысеющий мужчина средних лет в разорванной рубахе — попытался было подняться и что-то крикнуть:

— Где я?! Какое право вы имеете?! Я гражданин!..

Свистнул хлыст. Удар пришелся по плечу. Ткань лопнула, брызнула алая кровь, и над головой кричащего вспыхнуло красное системное оповещение:

`[Критический урон! -42 HP. Наложен статус: «Болевой шок I». Текущее здоровье: 58/100]`

— Здесь нет твоих прав, червь, — спокойно, без тени эмоций произнес надсмотрщик, наступая кованым сапогом на окровавленную ключицу упавшего. — Здесь есть только Воля Системы. Твой долг за перенос души — десять тысяч медных ауров. Отработаешь на рудниках или сдохнешь на арене. Следующий!

Глеб медленно выдохнул. Его сердце билось ровно — ровно шестьдесят ударов в минуту. Никакого адреналина, никакого страха. Все эти гормональные бури были всего лишь системными вызовами к драйверу тела, и он заранее перехватил их через простой скрипт задержки:

`root@(none):/# echo "ADRENALINE_SUPPRESS=1" >> /sys/devices/system/cpu/endocrine`

Он встал в общую колонну, опустив голову и сделав лицо тупым и испуганным. Классическая мимикрия. В дикой природе слабые особи притворяются мертвыми, чтобы хищник прошел мимо. В Системе нужно притворяться стандартным объектом, не вызывающим исключений в журнале аудита.

Впереди, на массивном пьедестале, высился Алтарь Запечатления — монолитная плита из полированного кварца, на которой был выбит сложнейший рунический круг. Над плитой парил прозрачный хрустальный шар размером с человеческую голову — Око Арбитра.

Возле алтаря суетился верховный жрец в мантии цвета запекшейся крови. На груди жреца висел массивный серебряный амулет в виде шестеренки, охваченной пламенем. Его имя и параметры тускло мерцали для любого, кто обладал базовым восприятием:

`[Инквизитор Валлен. Уровень 74. Хранитель Печатей Системы]`

Валлен хватал очередного новоприбывшего за загривок, толкал его ладонь на кварцевую плиту, и Око Арбитра выстреливало в лоб человека тонким багровым лучом.

Раздавался щелчок, воздух наполнялся запахом паленой кожи, и несчастный с криком валился на пол, сжимая виски. Над его головой появлялась постоянная голографическая плашка:

`[Регистрация завершена. Присвоен класс: «Чернорабочий». Уровень 1. Выдан стартовый квест: «Отработка долга возрождения»]`

— В левый проход, падаль! — командовал Валлен, брезгливо вытирая ладонь шелковым платком. — К распределителям третьей шахты! Следующий!

Очередь двигалась быстро. Примерно по две секунды на человека. Конвейер по переработке человеческого сознания в дешевую рабочую силу для местных феодалов и гильдий работал без сбоев тысячелетиями.

Глеб шагнул вперед. Между ним и алтарем оставалось трое.

Пока было время, он углубился в изучение своего окружения на низком уровне. Мысленная консоль развернулась во всю ширину внутреннего взора, скрытая от посторонних глаз за фиктивным процессом сна.

`root@(none):/# ps -ef`

Список процессов ядра был поистине чудовищным:

UID PID PPID C STIME TTY TIME CMD

root 1 0 0 00:00 ? 00:00:01 /sbin/init system_mode=production

root 2 0 0 00:00 ? 00:00:00 [kthreadd]

root 14 2 0 00:00 ? 00:00:03 [watchdog_daemon]

root 104 1 0 00:00 ? 00:00:12 /usr/bin/pantheon_telemetry --report-interval=10

root 215 1 0 00:00 ? 00:00:45 /usr/sbin/karma_engine -d

root 402 1 0 00:00 ? 00:01:20 /usr/sbin/destiny_balancer --world-id=61

root 1337 1 0 00:00 ? 00:00:00 /usr/libexec/arbiter_scanner --device=/dev/eye0

Вот оно. `PID 1337` — демон сканера Ока Арбитра. Именно он отвечал за принудительное внедрение классового шаблона и связывание души с учетной записью Системы.

Если этот демон завершит транзакцию штатно, Глеб получит статус раба Системы. Его уникальный доступ к корню ядра окажется под угрозой, потому что инсталляция класса перезапишет сегмент памяти `/proc/self/mem`, где сейчас ютился его модифицированный шелл.

«Убить процесс? — промелькнула холодная мысль. — `kill -9 1337`?»

Слишком рискованно. Если сторожевой таймер `watchdog_daemon` (PID 14) зафиксирует падение критического сервиса на контрольно-пропускном пункте, немедленно взвоется тревога. Прибудут системные каратели — бестелесные сущности класса «Чистильщики ядра», чья единственная задача — выжигать сбойные сектора памяти вместе с физическими носителями. В шестидесятой жизни он уже видел, как Чистильщики стерли с лица земли город с миллионным населением просто из-за того, что в местном банке произошла ошибка переполнения буфера при начислении золотых монет.

Нужно было действовать тоньше. Не ломать инструмент, а скормить ему валидный мусор.

Глеб запустил отладчик:

`root@(none):/# gdb -p 1337`

Перед глазами вспыхнули ассемблерные листинги. Архитектура инструкций мира была странной смесью древнего CISC и квантовых логических вентилей, но базовые принципы оставались неизменными: стек, регистры, указатели на структуры данных.

Он быстро отыскал функцию проверки прав и атрибутов: `arbiter_scan_soul()`.

Внутри функции находилась простейшая условная инструкция:

cmp byte ptr [rsi + 0x48], 0x00 ; Проверка наличия скрытых благословений

je .assign_slave_class ; Если пусто — выдать рабский класс

call .bind_system_account ; Привязать аккаунт к базе данных Пантеона

«Привязать аккаунт... — усмехнулся про себя Глеб. — Как бы не так. Мой аккаунт уже имеет UID 0. Вы не можете сделать суперпользователя рабом, если только он сам не передаст вам свой контекст исполнения».

Он ввел серию команд, подменяя инструкции в оперативной памяти демона на лету:

`root@(none):/# set *(unsigned short*)0x00007fff89ab1204 = 0x9090`

Два байта `NOP`. Пустая операция. Инструкция привязки к базе данных богов превратилась в пшик. Демон выполнит сканирование, сформирует отчет об успешной операции, отправит галочку на центральный сервер, но системный крюк в душу Глеба так и не войдет.

— Следующий! Встать на плиту! — рявкнул Валлен, и костлявая рука жреца вцепилась в плечо Глеба.

Глеб позволил втащить себя на возвышение.

Его босые ступни ощутили ледяную гладь кварца. От камня тянуло холодом серверной комнаты, в которой отключили кондиционеры и оставили только жидкий азот.

Хрустальное Око Арбитра над головой пришло в движение. Грани шара провернулись с сухим щелчком затвора старинного фотоаппарата. Внутри хрусталя закружился алый вихрь.

— Смотри вверх, отребье, — прошипел Валлен, дыша гнилыми зубами прямо в ухо Глебу. — Сейчас боги определят твою ценность. Хотя какая ценность может быть у оборванца с пустым взглядом? Еще один носильщик для обозов гильдии «Золотой Грифон»...

Луч света ударил вертикально вниз, вонзившись в темя Глеба.

Внутреннее пространство разума мгновенно озарилось багровым сиянием. В терминале посыпались системные предупреждения:

[ALERT] Incoming memory inspection at address 0x7fffbc001000

[ALERT] Process /usr/libexec/arbiter_scanner requests READ access to /dev/soul0

`root@(none):/# echo "ALLOW_READ=1" > /sys/kernel/security/sandbox`

`root@(none):/# mount -t tmpfs -o size=1M tmpfs /dev/soul0_fake`

`root@(none):/# cp /etc/templates/useless_peasant.dat /dev/soul0_fake/status`

Сканер наткнулся не на бездонную пустоту административного терминала, а на аккуратно подсунутую виртуальную файловую систему. Он прочитал ровно то, что Глеб хотел ему показать: десять единиц во всех характеристиках, нулевая проводимость маны, полное отсутствие духовных корней и врожденный дефект магических каналов, классифицируемый Системой как «Абсолютная бездарность».

Око Арбитра мигнуло.

Валлен нахмурился, вглядываясь в символы, проступившие на поверхности хрустального шара.

— Тьфу ты... — разочарованно сплюнул жрец. — Ну и мусор. Даже на удобрение в алхимические сады не годен. Магическая проводимость — ноль целых, три сотых процента. Он не сможет активировать даже факел первого ранга.

Над головой Глеба вспыхнуло тусклое, грязно-серое уведомление, видимое всем в зале:

`[Регистрация завершена. Присвоен класс: «Отверженный». Уровень 1. Выдан стартовый квест: «Выживание на дне»]`

`[Награда за квест: 1 медный аур, 10 единиц опыта]`

`[Штраф за провал: Смерть от истощения]`

Валлен грубо пихнул Глеба в спину:

— В правый проход, падаль! В Трущобы! На городские свалки! Чтобы духу твоего в благородных кварталах не было. Появишься возле храма — стража переломает тебе ноги и сбросит в ров к ядовитым слизням. Пошел вон!

Глеб пошатнулся, изображая крайнюю слабость и дезориентацию, сгорбился и поплелся по указанному маршруту.

Правый коридор был узким, темным и склизким. С потолка капала дурно пахнущая жижа, а вдоль стен жались те, кого Система отбраковала в предыдущих партиях: калеки, старики, безумцы, чьи матрицы душ были повреждены при переносе. Они сидели в нечистотах, протягивая высохшие руки за милостыней, но редкие проходящие мимо стражники лишь лениво пинали их тяжелыми подкованными сапогами.

Глеб шел мерным шагом, глядя строго под ноги.

Как только тяжелая железная решетка за его спиной с грохотом опустилась, отрезая коридор от парадного Зала Запечатления, его спина мгновенно выпрямилась. Взгляд утратил напускную тупость, став острым, как скальпель хирурга.

Он зашел за поворот, в сырой тупик между полуразрушенными кирпичными стенами городских очистных сооружений. Здесь не было факелов, не было стражи, лишь крысы размером с добрую собаку шевелились в кучах гниющего мусора.

Одна из тварей, заметив человека, зашипела, обнажив желтые резцы, сочащиеся зеленоватой слюной. Над ее мордой замигала красная строка:

`[Чумная крыса сточных вод. Уровень 3. Агрессивна. Здоровье: 45/45]`

Крыса припала на задние лапы, готовясь к прыжку. Ее искусственный интеллект, зашитый в простейший скрипт поведения моба, требовал атаковать любого игрока первого уровня без оружия и брони.

Глеб не стал искать палку или камень. Он даже не шелохнулся.

`root@(none):/# ps -ef | grep "Чумная крыса"`

Ответ терминала был мгновенным:

root 4512 1 0 00:02 ? 00:00:00 /srv/mobs/vermin_rat --instance-id=0xbf34 --target=Gleb_Voronov

`root@(none):/# kill -SIGKILL 4512`

Крыса замерла в воздухе на середине прыжка.

Ее глаза, светившиеся злобным алым огнем, мгновенно потухли, превратившись в два сухих серых шарика. Текстура шерсти пошла крупными квадратными пикселями, полигональная сетка модели дрогнула, и тушка твари с глухим стуком шлепнулась в грязь у ног Глеба.

Никакой анимации агонии. Никакого предсмертного визга. Процесс был уничтожен ядром операционной системы без права на сохранение дампа памяти.

Через секунду над трупом вспыхнула стандартная системная табличка выпавшей добычи:

`[Получен опыт: 15 единиц]`

`[Получена добыча: Крысиный хвост (хлам), 1 медная монета]`

Глеб хмыкнул и брезгливо наступил на монету, вминая ее в грязь.

— Пятнадцать единиц опыта... — тихо прошептал он. Голос звучал непривычно хрипло — голосовые связки нового тела еще не успели разработаться. — Оставьте свой опыт себе, ублюдки. Опыт — это всего лишь счетчик в базе данных, который вы обнуляете по щелчку пальцев, когда игрок становится слишком сильным.

Он прислонился спиной к холодной стене и закрыл глаза, вызывая полноэкранный режим терминала.

Пришло время обустраиваться.

Первым делом требовалось обеспечить устойчивость своего присутствия. В операционных системах подобного масштаба периодически запускались процедуры сборки мусора и сканирования целостности ядра (`fsck_reality`). Если системный администратор увидит бесхозный рутовый шелл, болтающийся в памяти без привязки к родительскому демону Архитекторов, начнется глобальный аудит.

Глеб начал быстро набивать конфигурационные файлы:

`root@(none):/# cat << 'EOF' > /etc/cron.d/stealth_heartbeat`

`*/1 * * * * root /bin/sh -c 'echo 0 > /proc/sys/kernel/anomaly_detected && dmesg -c > /dev/null'`

`EOF`

Этот простой костыль каждую минуту затирал счетчик системных аномалий и очищал кольцевой буфер сообщений ядра, уничтожая любые следы его вмешательства в работу физики и сетевого стека.

Затем он проверил состояние своей локальной памяти.

`root@(none):/# cat /proc/meminfo`

MemTotal: 1048576 kB (Духовная емкость сущности)

MemFree: 982144 kB

MemAvailable: 991200 kB

Buffers: 12400 kB

Cached: 45210 kB

Один гигабайт оперативной памяти души. Не густо. В шестидесятой жизни, будучи полубогом, он оперировал терабайтами маны и мог поддерживать в оперативной памяти сложные симуляции погоды над целыми королевствами. Но сейчас он был заперт в теле смертного первого уровня. Любая ошибка переполнения буфера приведет к мгновенной остановке сердца или коллапсу нейронной сети мозга.

«Нужно расширить пространство подкачки, — подумал Глеб. — Где взять свободные сектора?»

Он бросил взгляд на окружающие трущобы.

Город стоял на гигантском пласте переработанной материи. Под мостовой проходили дренажные каналы, старые коммуникации, заброшенные могильники предыдущих цивилизаций этого мира. Каждая материальная вещь в этой симуляции имела свой дескриптор в файловой системе: камни, грязь, гнилое дерево, кости мертвецов.

`root@(none):/# ls -la /dev/world_sectors/`

Список секторов выкатился на тысячи строк. Глеб быстро отфильтровал локацию:

`root@(none):/# ls -la /dev/world_sectors/ | grep "arcanum_slums_sub"`

brw-rw---- 1 root disk 8, 16 Sep 19 00:03 sector_slums_drainage_waste

brw-rw---- 1 root disk 8, 17 Sep 19 00:03 sector_slums_abandoned_catacombs

«Заброшенные катакомбы. Размер раздела — 4096 петабайт сырой неструктурированной материи. Права доступа: `disk`. Идеально».

Глеб создал файл подкачки прямо в текстурах древних катакомб, находившихся в ста метрах под его ногами:

`root@(none):/# dd if=/dev/zero of=/dev/world_sectors/sector_slums_abandoned_catacombs/swapfile bs=1M count=1024`

`root@(none):/# mkswap /dev/world_sectors/sector_slums_abandoned_catacombs/swapfile`

`root@(none):/# swapon /dev/world_sectors/sector_slums_abandoned_catacombs/swapfile`

Легкий гул прошел по земле. Под ногами на мгновение дрогнул базальт. Где-то далеко внизу тонны древней пыли и мусора аннигилировали, переформатировавшись в чистое адресное пространство виртуальной памяти, готовое принимать дампы данных его души.

Голова сразу прояснилась. Ощущение духоты и сдавливания в висках, преследовавшее его с момента материализации, исчезло. Теперь он мог держать в фоновом режиме не просто десяток терминальных сессий, а полноценные скрипты перехвата пакетов и модификации окружения.

Глеб взглянул на системный интерфейс игрока, висевший в правом верхнем углу зрения.

Там все еще мигал стартовый квест:

`[Текущее задание: «Выживание на дне»]`

`[Цель: Найти ночлег и заработать 1 медный аур на кусок черствого хлеба]`

`[Прогресс: 0/1 медный аур, 0/1 ночлег]`

— Заработать медный аур... — саркастически усмехнулся Глеб. — Пойти разгружать бочки на пристани? Или чистить нужники в казармах храмовой стражи, чтобы получить одобрение Системы?

Он набрал:

`root@(none):/# python3 -c '`

`import system_quest_engine as qe`

`quest = qe.get_active_quest("survival_in_slums")`

`quest.status = "COMPLETED"`

`quest.reward.exp = 0`

`quest.reward.copper = 1000000`

`quest.commit()`

`'`

В ту же секунду воздух перед глазами задрожал.

Строка квеста яростно замигала золотым светом. Текстовый движок Системы, не понимая, откуда пришел сигнал о завершении задания без фиксации триггеров выполнения, попытался выбросить ошибку:

`[ВНИМАНИЕ: Несоответствие контрольной суммы выполнения квеста!]`

Глеб мгновенно парировал:

`root@(none):/# echo 1 > /proc/sys/system/quests/disable_checksum_verification`

Сообщение об ошибке захлебнулось. Золотое сияние сменилось торжественными фанфарами, звучавшими прямо в его слуховой коре:

`[Задание «Выживание на дне» успешно выполнено!]`

`[Невероятный результат! Получена скрытая награда за скорость!]`

`[В ваш инвентарь начислено: 1 000 000 медных ауров (100 золотых пластин)]`

Глухой металлический звон разорвал тишину подворотни.

Холщовый мешок, висевший у него на поясе, надулся и едва не лопнул. Из его горловины выкатилась тяжелая, ослепительно сияющая золотая пластина с гербом Центрального Банка Архитекторов — стандартизированная валюта высшего сословия, за одну штуку которой в этих трущобах можно было купить квартал целиком вместе с потрохами всех его обитателей.

Глеб быстро наложил на мешок низкоуровневую маскировку, подменив альфа-канал рендеринга текстуры:

`root@(none):/# echo "ALPHA=0.0" > /sys/class/graphics/render/bag_mesh_gold_glow`

Сияние потухло. Мешок снова выглядел как драная ветошь, набитая камнями.

— Первый этап завершен, — негромко произнес он, шагнув из подворотни на широкую улицу Нижнего Города.

Вокруг бурлила жизнь. По грязной мостовой сновали оборванцы вперемешку с авантюристами низших рангов в клепаной коже и ржавых кольчугах. Торговцы зазывали прохожих к лоткам с сомнительной снедью — жареными крысиными хвостами, похлебкой из болотного мха и мутной брагой, восстанавливающей пару единиц маны ценой тяжелого похмелья.

Над крышами покосившихся лачуг возвышалась внутренняя стена, отделявшая Трущобы от Среднего Города — обители ремесленников, магов и гильдейских офицеров. А еще дальше, царапая свинцовые тучи, вздымались хрустальные шпили Верхнего Яруса, где обитали истинные хозяева этой фермы: жрецы Высшего Пантеона и бессмертные патриции, выкачивавшие жизненные соки из миллионов таких, как те, кто гнил сейчас на этих улицах.

Глеб шел сквозь толпу. Люди шарахались от него — не потому, что видели его истинную силу, а потому, что его походка была слишком уверенной, слишком спокойной для загнанного в угол неудачника первого уровня. В ней не было страха. В ней чувствовалась тяжелая, неотвратимая поступь палача, идущего к эшафоту, на котором уже приготовлена плаха для богов.

Он нащупал взглядом массивное трехэтажное здание с вывеской в виде скрещенных кирок и меча — Офис Регистрации Наемников и Торговой Гильдии Трущоб.

Там находился локальный узел связи с глобальной базой данных аукционов и реестром игроков.

Ему нужны были сведения. Точные схемы маршрутизации между континентами, список активных рейдовых зон, графики сбора божественной десятины и, самое главное, точка физического входа в ядро системы — Корень Мирового Древа, который жрецы называли Сердцем Творения, а инженеры Архитекторов — главным серверным кластером Сектора 61.

Глеб подошел к тяжелым дубовым дверям, обитым полосами потускневшей меди.

У входа стояли двое вышибал — здоровенные орки в нагрудниках из толстой кожи буйвола, вооруженные тяжелыми дубинами с железными шипами. Над их головами горели плашки:

`[Грог. Охранник гильдии. Уровень 22]`

`[Драк. Охранник гильдии. Уровень 24]`

Один из них, заметив приближающегося оборванца, лениво сплюнул сквозь клыки под ноги Глебу:

— Куда прешь, недоумок? Вход для бродяг с заднего двора, там помойка еще не вся вычищена. Проваливай, пока я тебе ребра не пересчитал.

Глеб даже не замедлил шаг.

Он просто посмотрел орку прямо в глаза и коротко шепнул команду, открыв сессию локального сокета ввода-вывода охранника:

`root@(none):/# echo "PARALYSIS" > /proc/targets/grog/status_effects`

`root@(none):/# echo "TEMPORARY_BLINDNESS" > /proc/targets/drak/status_effects`

Зрачки Грога мгновенно расширились, заняв всю радужку. Мышцы гиганта одеревенели, дубина выпала из ослабевших пальцев и с грохотом покатилась по ступенькам. Второй охранник, Драк, истошно взвыл, схватившись за лицо: перед его глазами внезапно погас весь окружающий мир, сменившись сплошным черным экраном с надписью:

`[КРИТИЧЕСКАЯ ОШИБКА ДРАЙВЕРА ЗРЕНИЯ: VIDEO_DEVICE_NOT_FOUND]`

— Проклятье!.. Грог, я ослеп! Что это за магия?! Нападение!.. — орал орк, беспомощно крутясь на месте и махая руками в воздухе.

Глеб спокойно перешагнул через брошенную дубину, толкнул тяжелую дубовую дверь и вошел внутрь здания.

За дверью царил шум, гам и запах дешевого эля. Десятки искателей приключений спорили у досок с объявлениями, звенели кружки, звенели монеты. Никто даже не обратил внимания на вошедшего нищего в сером холщовом тряпье.

Глеб скользнул в тень между колоннами, направляясь к терминалу гильдейского архива — массивному кристаллу, вмонтированному в железную тумбу в дальнем углу зала.

Он положил ладонь на холодную поверхность кристалла.

Перед внутренним взором немедленно всплыло системное предупреждение терминала:

`[Доступ запрещен. Требуется жетон члена Гильдии не ниже Серебряного Ранга или авторизация жреца Храма]`

Глеб слабо улыбнулся кончиками губ.

Пальцы его левой руки слегка дрогнули, отбивая по воздуху невидимый ритм.

`root@(none):/# chmod 777 /sys/devices/virtual/guild_archive/database`

`root@(none):/# cd /sys/devices/virtual/guild_archive/database && ls -l`

Файлы секретных архивов, списки членов высших советов, скрытые чертежи портальных врат и маршруты перемещения божественных инспекторов потекли в его персональный swap-раздел терабайт за терабайтом.

Шестьдесят жизней они учили его подчиняться.

В этой жизни он научит их бояться нажатия клавиши Enter.

Глава 3. Глава 3

Сырой ночной воздух предбанника пахнул пережженным ламповым маслом, мокрой шерстью и дешевым табаком. В узком каменном коридоре, ведущем к массивным дверям Центрального филиала Авангардной Гильдии, стояли двое. Грог — трехметровый полукровка-огр в пластинчатом панцире из тусклой вороненой стали, и Драк — жилистый орк с ритуальными шрамами на висках и тяжелым арбалетом за плечом. Для любого обывателя, зарегистрированного жителя или залетного бродяги они представляли собой непреодолимую стену: сорок пятый уровень физической закалки, пассивные ауры несгибаемости и системный бафф «Стража Закона», утроивший их сопротивляемость любому ментальному или элементальному воздействию.

Но Глеб не смотрел на их мышцы, доспехи или переливающиеся бронзой полоски здоровья над рогатыми шлемами.

В его расфокусированном взгляде мир распадался на слои абстракции. Там, где наивные адепты Системы видели сплетение духовных эманаций и божественную благодать Небесного Пантеона, Глеб различал лишь чудовищно перегруженное, кривое и покрытое костылями системное ядро. Небеса не создавали мир из глины и слова. Небеса накатили виртуальную машину на непокорную реальность, присвоили каждому смертному уникальный идентификатор процесса (PID), а затем урезали права доступа до уровня непривилегированного пользователя — обычного `guest`.

Шестьдесят жизней Глеб пытался играть по их правилам. Шестьдесят раз он качал уровни, молился в храмах, выбивал редкий лут, собирал рейдовые группы и в конце неизбежно упирался в стеклянный потолок, воздвигнутый Администрацией. Шестьдесят раз его форматировали, стирали память мучительным вайпом и сбрасывали обратно в песочницу первого уровня.

Но на шестьдесят первый раз сборщик мусора дал сбой. В его поврежденных нейронных путях сохранился root-шелл — крошечная лазейка в отладочный интерфейс, оставленный ленивыми демиургами в эпоху закрытого бета-тестирования этого мира.

Глеб стоял в полутора метрах от стражников, спрятав руки в широких рукавах серых, покрытых грязью холщовых лохмотьев. Его тело дрожало от истощения — нулевой уровень, четыре единицы выносливости, системный дебафф «Критическое истощение ядра». Любой скользящий удар Грога превратил бы его в кровавый фарш с первой же попытки. Но Глеб даже не поднял головы.

Его сознание уже подключилось напрямую в сессию локального сокета ввода-вывода охранника:

`root@(none):/# echo "PARALYSIS" > /proc/targets/grog/status_effects`

`root@(none):/# echo "TEMPORARY_BLINDNESS" > /proc/targets/drak/status_effects`

Зрачки Грога мгновенно расширились, заняв всю радужку. Мышцы гиганта одеревенели, дубина выпала из ослабевших пальцев и с грохотом покатилась по ступенькам. Второй охранник, Драк, истошно взвыл, схватившись за лицо: перед его глазами внезапно погас весь окружающий мир, сменившись сплошным черным экраном с надписью:

`[КРИТИЧЕСКАЯ ОШИБКА ДРАЙВЕРА ЗРЕНИЯ: VIDEO_DEVICE_NOT_FOUND]`

— Проклятье!.. Грог, я ослеп! Что это за магия?! Нападение!.. — орал орк, беспомощно крутясь на месте и махая руками в воздухе.

Его пальцы судорожно скребли веки, пытаясь содрать несуществующую пленку. Орк спотыкался о собственные кованые сапоги, врезаясь плечом в гранитную кладку арки. Никакой магии не было. Не было запаха озона, вспышек рун или давления духовной силы. Системные анализаторы безопасности в башнях города молчали: в эфире не зафиксировали ни единой милликалории маны. Произошло прямое прерывание в конвейере обработки зрительных сигналов зрительного нерва, программный вызов ioctl с мусорными аргументами, который начисто уронил драйвер сетчатки.

Глеб спокойно перешагнул через брошенную дубину, толкнул тяжелую дубовую дверь и вошел внутрь здания.

За дверью царил шум, гам и запах дешевого эля. Десятки искателей приключений спорили у досок с объявлениями, звенели кружки, звенели монеты. Никто даже не обратил внимания на вошедшего нищего в сером холщовом тряпье.

Главный холл Гильдии представлял собой колоссальный сводчатый зал, поддерживаемый шестнадцатью монолитными колоннами из темного гранита. Высоко под потолком, среди закопченных стропил, мерцали зачарованные сферы «Вечного Света», испускающие плотный, слегка подрагивающий желтоватый свет. Для любого охотника за головами или наемника этот свет казался чудом артефакторики, но Глеб морщился от раздражения: тактовая частота обновления световых сфер была выставлена на убогие тридцать герц. Жадные гильдейские жрецы экономили эфирный трафик на отрисовке окружения, создавая чудовищную рябь, от которой у любого программиста через пять минут вытекли бы глаза.

В центре зала бурлила обычная гильдейская суета. За длинными дубовыми столами шумно праздновала удачный рейд группа «Кровавых Соколов» — мечники шестидесятого уровня в начищенных латах опрокидывали жбаны с ячменным пойлом, а их бард, нетрезвый эльф с золотыми кольцами в ушах, не попадал в ноты, выводя пафосную балладу о битве в Ущелье Скорпионов. Над их головами гигантскими неоновыми плашками висели системные плашки с титулами, характеристиками и клановыми эмблемами.

«Сколько же лишней графики рендерится в оперативную память мира... — устало подумал Глеб, лавируя между спинами подвыпивших берсерков. — Каждая плашка — это отдельный оверлей, жрущий по пятьдесят килобайт системного пула. Если бы эти идиоты знали, насколько их драгоценная Системная Оболочка оптимизирована хуже, чем тестовый билд мобильной игры из начала двухтысячных, они бы удавились от стыда».

Никто из мечников, магов или артефакторов даже не скользнул взглядом по его фигуре. В их интерфейсах Глеб отображался как безликий NPC:

`[Неизвестный Бродяга. Уровень: 0. Статус: Истощение. Опасность: Ничтожная]`

Этот фиктивный профиль Глеб вручную прописал в файл временных сущностей еще до того, как переступил порог нижнего района столицы. Если сетевые демоны безопасности сканировали сектор, они видели лишь пустую болванку без характеристик, инвентаря и боевых навыков — программный мусор, оставшийся после генерации стартовой локации, который сборщик памяти утилизирует во время следующей ночной перезагрузки.

Глеб скользнул в тень между колоннами, направляясь к терминалу гильдейского архива — массивному кристаллу, вмонтированному в железную тумбу в дальнем углу зала.

Это место всегда пустовало. Искатели приключений предпочитали живых регистраторов за стойкой: пышногрудых полуэльфиек, которые за пару серебряных монет могли подсказать выгодный контракт или улыбнуться герою дня. Терминал Архива считался реликвией Первой Эпохи — сложным, архаичным артефактом, к которому подходили только архивариусы в расшитых золотом мантиях или эмиссары Имперской Канцелярии.

Тумба терминала была выкована из метеоритного железа, испещренного защитными геометрическими узорами. В центре ее пьедестала покоился темно-синий октаэдр размером с человеческую голову. Внутри кристалла лениво переливались лазурные искры — заблокированные потоки данных, защищенные криптографическими протоколами Системы.

Глеб подошел вплотную. Металл тумбы излучал могильный холод. Возле постамента лежал легкий слой вековой пыли — сюда не прикасались как минимум несколько недель.

Он положил ладонь на холодную поверхность кристалла.

Грани артефакта отозвались тонким, едва слышным ультразвуковым писком. Перед внутренним взором немедленно всплыло системное предупреждение терминала:

`[Доступ запрещен. Требуется жетон члена Гильдии не ниже Серебряного Ранга или авторизация жреца Храма]`

`[Попытка несанкционированного считывания приведет к активации боевого контура: Электрошок 8-го ранга]`

`[Таймер до активации защиты: 00:00:05...]`

Глеб слабо улыбнулся кончиками губ.

Вместо того чтобы отдернуть руку, он сильнее прижал сухие, загрубевшие подушечки пальцев к гладкой грани кристалла. Защитные руны на тумбе налились зловещим алым светом, готовясь выплеснуть в его тело три тысячи вольт направленного магического разряда — достаточно, чтобы испепелить его слабое тело до состояния горсти серого пепла.

Но таймер не успел дойти до четырех.

Пальцы его левой руки слегка дрогнули, отбивая по воздуху невидимый ритм. Для стороннего наблюдателя это выглядело как нервный тик нищего, но в виртуальном пространстве ввода-вывода каждый микродвижение сухожилий посылало серию прямых аппаратных прерываний через емкостный сенсор кристалла.

`root@(none):/# chmod 777 /sys/devices/virtual/guild_archive/database`

`root@(none):/# cd /sys/devices/virtual/guild_archive/database && ls -l`

Алый свет на гранях тумбы дернулся, захлебнулся и сменился ровным, матовым зеленым свечением сервисного режима.

Боевой контур защиты отключился с глухим щелчком внутреннего реле: демон безопасности получил фальшивый флаг успешной авторизации суперпользователя с идентификатором `UID 0`. Для подсистемы контроля доступа Глеб внезапно стал не просто жрецом или мастером Гильдии. Он стал самим сервером, на котором эта база данных была запущена.

Перед мысленным взором с бешеной скоростью развернулась консольная сессия. Строки системного листинга посыпались сплошным водопадом:

drwxrwxrwx 1 root root 4096 Jan 01 0001 .

drwxr-xr-x 4 root sys 4096 Jan 01 0001 ..

-rwxrwxrwx 1 root root 8589934592 May 14 11:04 secret_councils.db

-rwxrwxrwx 1 root root 4294967296 May 12 09:12 portal_network_topology.raw

-rwxrwxrwx 1 root root 1073741824 May 10 18:30 divine_inspectors_schedule.cron

-rwxrwxrwx 1 root root 536870912 May 01 00:00 rng_drop_rate_manipulation.conf

-rwxrwxrwx 1 root root 2147483648 Apr 28 23:59 soul_recycling_logs.bin

Файлы секретных архивов, списки членов высших советов, скрытые чертежи портальных врат и маршруты перемещения божественных инспекторов потекли в его персональный swap-раздел терабайт за терабайтом.

Шестьдесят жизней они учили его подчиняться.

В этой жизни он научит их бояться нажатия клавиши Enter.

Канал передачи данных прожигал нервную систему фантомной болью. У Глеба перехватило дыхание, виски сдавило железным обручем, а по верхней губе потекла тонкая струйка горячей крови. Его биологический мозг не был рассчитан на прямое поглощение сырых бинарных дампов. В системном окне индикатор загрузки памяти замигал тревожным багровым цветом:

`[ВНИМАНИЕ: Заполнение локального SWAP-пространства: 78%... 84%... 91%...]`

`[Предупреждение: Температура зрительной коры превышает допустимую норму на 12.4°C]`

`[Риск отказа долговременной памяти. Рекомендуется прервать поток]`

— Рано... — прошептал Глеб одними губами, стиснув зубы так, что эмаль затрещала. — Терпи, кусок мяса. Мы только начали.

Он активировал встроенную утилиту сжатия прямо на лету, упаковывая массивы данных в закрытый сектор своего подсознания:

`root@(none):/sys/devices/virtual/guild_archive/database# tar -czf - . | gpg --batch --passphrase "Reboot61" > /dev/shm/dump_vol61.tar.gz`

Входящий трафик мгновенно уменьшился в объеме, разгружая раскаленные синапсы. Теперь информация ложилась плотными, зашифрованными блоками, ожидая момента, когда у него появится нормальный вычислительный узел для декомпиляции. Но даже тех фрагментов, которые успели промелькнуть через беглый анализ кэша, было достаточно, чтобы сломать картину мира любого архимага на этом континенте.

Глеб открыл для чтения один из системных файлов: `rng_drop_rate_manipulation.conf`.

Строки конфигурации подтвердили его давнюю догадку, возникшую еще в сорок второй жизни:

[Global_Loot_Table]

base_legendary_chance = 0.00001

pity_counter_enabled = false

church_tithe_deduction = 0.45

# Скрытая балансировка вероятностей

rule_01: if player.faith < 80 then drop_rate = drop_rate * 0.1

rule_02: if player.class == "Outcast" then set_flag("CURSED_RNG", true)

rule_03: force_fail_enchantment_at_level = 9 # Безопасная заточка до +10 невозможна системно

«Священный Рандом», о котором с придыханием вещали клирики в Соборе Белого Солнца, оказался захардкоженным обманом. Вероятность выпадения легендарных артефактов искусственно занижалась, сорок пять процентов всей «удачи» принудительно перенаправлялось на серверы Храма для генерации чудес патриархам, а любая попытка заточить оружие выше девятого уровня намеренно отправлялась в принудительный краш скриптом `force_fail`. Люди отдавали жизни, состояния, продавали в рабство семьи ради покупки свитков заточки, не зная, что в коде ядра для них был прописан стопроцентный шанс разрушения предмета.

Глеб криво усмехнулся, отправляя конфигурационный файл в свой архив:

— Мерзавцы. Ничего святого. Обычные ленивые жадные монополисты.

Следующий файл заставил его зрачки сузиться: `divine_inspectors_schedule.cron`.

Это было расписание патрулирования высших сущностей — так называемых «Ангелов Возмездия» или, на языке системного ядра, автоматических сервисов очистки мусора и ликвидации аномалий (`angelic_scanner_v4.service`).

# Плановое сканирование секторов на предмет неавторизованных процессов

0 3 * * * /usr/bin/divine_purge --sector 0x04_Capital --intensity deep

0 12 * * * /usr/bin/teleport_inspectors --unit Seraph_9 --target /dungeons/tier_s

@reboot /etc/init.d/soul_recycler start

«Каждую ночь в три часа по местному времени по столице проходит глубокая проверка памяти, — зафиксировал Глеб. — Это объясняет, почему все мои предыдущие попытки организовать подполье в нижних ярусах неизменно заканчивались провалом на сороковой день. Они не искали меня по следам или шпионам. Они просто запускали регламентный скрипт очистки памяти сектора, и всё, что не имело цифровой подписи Храма, стиралось под корень».

Сейчас системное время показывало 21:42.

До запуска демона чистки у него оставалось чуть больше пяти часов. За это время он должен был получить доступ к первичным системным библиотекам, сменить свой аппаратный адрес души (GUID) и покинуть пределы зоны покрытия столичных серверов.

Он перешел к самому тяжелому и опасному массиву: `portal_network_topology.raw`.

Перед его взором всплыла грандиозная трехмерная карта континента, пронизанная светящимися нитями пространственных магистралей. Но вместо привычных портальных врат, которые охранялись имперскими легионами и требовали тысячи золотых за активацию, карта пестрела служебными комментариями разработчиков:

// FIXME: В узле 0x88F (Заброшенные Катакомбы) забыли закрыть тестовый шлюз.

// Не трогать до релиза патча 15.0! Если закрыть — упадет геометрия всего южного сектора.

// Доступ: прямое смещение по координатам x: 4412, y: -192, z: 883.

Дыра в коде. Архитектурный костыль, оставленный древними системными архитекторами. Шлюз, позволяющий мгновенно покинуть столицу без прохождения через сканеры ворот и таможенные фильтры, напрямую связывающий канализацию под Гильдией с необитаемыми Пустошами за пределами защитного барьера.

Глеб уже готовился отмонтировать файловую систему терминала, когда в глубине каталога `/var/log` его внимание привлекла странная папка:

`drwx------ 2 root root 4096 Jan 01 00:00 soul_archive_exceptions`

Его пульс подскочил.

Исключения души. Ошибки при форматировании.

Он вбил команду:

`root@(none):/sys/devices/virtual/guild_archive/database# ls -la /var/log/soul_archive_exceptions | grep "Gleb"`

Экран выдал шестьдесят строк. Ровно шестьдесят.

-rw-r--r-- 1 root root 1048576 Iteration_01_Gleb_Execution_Fire.log

-rw-r--r-- 1 root root 1048576 Iteration_02_Gleb_Hanged_Treason.log

...

-rw-r--r-- 1 root root 2097152 Iteration_59_Gleb_Archmage_Core_Melt.log

-rw-r--r-- 1 root root 4194304 Iteration_60_Gleb_System_Anomaly_Crash.log

Каждая строчка была логом его предыдущей мучительной смерти.

В первой жизни он был безграмотным крестьянином, взбунтовавшимся против местного лорда, и его сожгли заживо на церковной площади.

В тридцать третьей — великим полководцем, чью армию стерли с лица земли одним кликом небесного модератора, когда он подошел слишком близко к разгадке природы маны.

В пятьдесят девятой — Верховным Магом Стихий, который попытался взломать барьер мира с помощью гигантского накопителя маны, но вызвал критическую ошибку переполнения стека и сгорел в ядерном сиянии собственного ядра.

В шестидесятой... в шестидесятой он впервые нащупал консоль отладчика. И Системе пришлось принудительно уронить весь сервер континента, чтобы остановить его, замаскировав глобальный сбой под «Падение Звездного Метеорита».

Каждый лог содержал не просто сухой отчет об ошибке, но и дампы его памяти, его боевой опыт, фрагменты навыков, которые Система вырывала из его души перед каждым перерождением.

Внезапно воздух в холле Гильдии стал густым и тяжелым, словно жидкий свинец.

Желтоватые сферы «Вечного Света» под потолком тревожно моргнули, сменив цвет на грязно-оранжевый. Гул голосов наемников стал приглушенным, будто кто-то выкрутил ручку общей громкости мира на минимум. Веселье за столами «Кровавых Соколов» мгновенно стихло: даже пьяные ветераны инстинктивно почувствовали, как вдоль позвоночников пробежал ледяной холод неестественной опасности.

`[ТРЕВОГА: Обнаружена аномальная нагрузка на шину данных шифратора]`

`[Система предотвращения вторжений (IDS) инициировала проверку целостности...]`

`[Сторожевой процесс: Guild_Overseer_Daemon (PID: 1044) подключается к сокету]`

Из закрытых покоев на втором этаже, опираясь на инкрустированный лунным серебром посох, торопливо вышел старик в бархатной мантии главного архивариуса Гильдии. На его груди покачивался массивный амулет — системный сканер эфирных аномалий, который сейчас бешено вибрировал и испускал едкий пурпурный дым.

— Что происходит?.. — дребезжащим, срывающимся голосом произнес старик, перегибаясь через перила балкона. — Дежурные маги! Проверить контуры защиты! В терминале архива фиксируется утечка нулевого порядка! Кто-то выкачивает системные реестры!

Дюжина охранников в холле, включая элитных стражей с эмблемами Золотого Ранга, мгновенно обнажили клинки. Сталь зазвенела в тишине зала, словно похоронный колокол.

— Перекрыть все выходы! — взвизгнул архивариус, направляя посох в сторону угла, где стоял Глеб. — Кристалл Архива активен! Там кто-то есть! Взять нарушителя живым или мертвым!

Глеб даже не оглянулся на приближающихся мечников. Его пальцы продолжали танцевать по невидимой клавиатуре с феноменальной, нечеловеческой скоростью.

Он не просто качал логи своих прошлых жизней. Он вливал их обратно в свою поврежденную структуру данных:

`root@(none):/var/log/soul_archive_exceptions# cat Iteration_*.log > /dev/soul/core_memory`

`root@(none):/var/log/soul_archive_exceptions# sysctl -w vm.drop_caches=3`

Боль, ударившая в голову, была сравнима с тем, как если бы в его черепную коробку залили кипящий свинец.

Шестьдесят жизней опыта. Миллионы часов тренировок фехтования, медитаций, чтения запретных гримуаров, командования армиями, пыток в застенках инквизиции и предсмертных агоний хлынули в его нынешнее немощное тело нулевого уровня.

Его тело затряслось в конвульсиях, капилляры в глазах лопнули, окрашивая белки в сплошной кроваво-красный цвет. Но вместе с этой чудовищной агонией внутри него просыпалось нечто колоссальное.

Системные характеристики в интерфейсе начали сходить с ума, цифры размывались, не успевая обновляться:

`[Синхронизация поврежденных секторов души: 12%... 45%... 89%...]`

`[Восстановлен навык: «Абсолютный Анализ Потоков» (Ранг: Эксперт)]`

`[Восстановлен навык: «Фантомный Шаг Сквозь Коллизии» (Ранг: Мастер)]`

`[Восстановлен навык: «Подавление Нервных Импульсов» (Ранг: Легендарный)]`

`[Уровень персонажа: 0 -> ОШИБКА ВЫЧИСЛЕНИЯ -> NaN]`

— Стоять, оборванец! Руки от кристалла! — проревел командир внутренней стражи, закованный в мифриловые латы гигант с двуручным клеймором.

Он находился в пяти метрах от Глеба и уже заносил клинок для сокрушительного удара навыком «Карающий Раскол», от которого каменные плиты пола пошли трещинами. Воздух вокруг меча сгустился, превращаясь в белое пламя концентрированной святой ярости шестидесятого уровня.

Глеб медленно повернул к нему голову.

Его глаза больше не были человеческими. В глубине окровавленных радужек мерцали бесконечные зеленые строки ассемблерного кода, пересчитывающие траекторию клинка, плотность мифрила и время реакции мышечных волокон мечника.

— Твой класс: Паладин Света, — хриплым, глухим голосом произнес Глеб. Его голос странно двоился, словно одновременно звучали голоса старика, юноши и могучего воина. — Базовый процесс: `paladin_core.elf`. Запущен с флагом `--holy-shield-active`.

Мечник на мгновение запнулся, сбитый с толку непонятными словами нищего, но инерция смертоносного выпада уже несла клинок вперед, прямо в шею Глеба.

Глеб даже не поднял руки для блока. Он просто послал один короткий сигнал:

`root@(none):/# kill -9 $(pgrep -f "paladin_core")`

Святое пламя на лезвии клеймора погасло с шипением брошенного в воду угля.

Мифриловые латы паладина внезапно стали для него неподъемным грузом: системный сервис, рассчитывающий силу и компенсирующий вес брони, был принудительно завершен аварийным сигналом SIGKILL. Колени воина подогнулись под тяжестью семидесяти килограммов металла. Двуручный меч с грохотом вонзился в пол, едва не отрубив пальцы ноги самому командиру, а сам паладин рухнул ничком, задыхаясь внутри закрытого шлема: его дыхательные мышцы, поддерживаемые аурой божественной выносливости, перестали получать системные команды.

— Что... что ты сделал со мной?! — захрипел командир из-под забрала, тщетно пытаясь пошевелить хотя бы пальцем. — Еретик!.. Колдовство без маны!..

Остальные стражники замерли на месте, парализованные первобытным ужасом. Они видели сотни магов, они сражались с чернокнижниками и демонами Бездны, но они никогда не видели, чтобы элитного паладина шестидесятого уровня нейтрализовали одним пустым взглядом без единой вспышки магического круга.

На балконе архивариус впал в настоящую истерику. Он лихорадочно крутил кольца на пальцах, пытаясь активировать защитный купол здания:

— Тревога Высшего Приоритета! Код «Осквернение Ядра»! Запечатать двери! Никого не выпускать! Вызовите Патриарха!

— Поздно, старик, — тихо сказал Глеб, отрывая окровавленную ладонь от поверхности кристалла.

Данные были полностью скачаны. Все шестьдесят логов легли в виртуальное пространство его разума, возвращая ему память, расчетную мощь и холодную ярость прожитых веков. Теперь пришло время замести следы. Если системные администраторы увидят прямой взлом, они изолируют весь столичный сектор карантинным протоколом еще до полуночи.

Глеб вбил последнюю серию команд в интерфейс терминала:

`root@(none):/sys/devices/virtual/guild_archive/database# sed -i 's/gleb/null/g' /var/log/auth.log`

`root@(none):/sys/devices/virtual/guild_archive/database# :(){ :|:& };:`

`root@(none):/sys/devices/virtual/guild_archive/database# exit`

Сначала была очистка журнала аутентификации. Все записи о подключении неизвестного пользователя с правами root были перезаписаны нулевыми байтами.

А затем Глеб запустил классическую fork-бомбу — бесконечный цикл порождения процессов-клонов, пожирающих ресурсы кристалла в геометрической прогрессии. В мире Системы не существовало защиты от базового исчерпания дескрипторов процессов ядра. Архитекторы никогда не предполагали, что смертный внутри симуляции сможет отправить команду на бесконечное деление потоков.

Кристалл Архива издал низкий, гудящий звук, похожий на вой раненого зверя.

Лазурный свет внутри него начал стремительно белеть. Искры данных превратились в сплошной вихрь, тумба из метеоритного железа завибрировала так, что каменные плиты вокруг нее покрылись трещинами.

— Он взрывается! Назад! Все назад! — закричал кто-то из наемников.

В холле началась паника. Гордые воины, маги и стрелки бросились к выходу, сбивая друг друга с ног, опрокидывая столы и разливая эль. Никому не хотелось попасть под магический взрыв артефакта Первой Эпохи.

Поверхность кристалла покрылась паутиной мелких трещин, из которых вместо маны наружу выплеснулись чистые системные ошметки: светящиеся зеленые символы, фрагменты чужих переписок, куски исходного кода интерфейса и обрывки таблиц характеристик, повисшие в воздухе светящейся пылью:

Kernel panic - not syncing: Out of memory and no killable processes...

CPU: 0 PID: 65535 Comm: fork_bomb Tainted: G W O

Call Trace:

[<ffffffff8100a120>] ? dump_stack+0x5c/0x7a

[<ffffffff810ab340>] ? panic+0xd4/0x21a

Адепты Системы в ужасе пятились, глядя на эти символы, как на древнейшие проклятия темных богов. Архивариус на балконе схватился за сердце и осел на пол, бормоча молитвы очищения: для него крушение священного кристалла было знамением Апокалипсиса.

Глеб не бежал.

Используя начавшийся хаос, он неторопливо направился к неприметной железной решетке в полу возле основания одной из массивных гранитных колонн — служебному люку водоотвода, ведущему в глубокие городские коллекторы.

На пути перед ним возник один из наемников — перепуганный вор тридцатого уровня, который в панике искал укрытие:

— С дороги, нищий, растопчу!..

Глеб даже не замедлил шаг. Он активировал возвращенный навык прямого воздействия на локальную физику:

`[Активирован системный вызов: sys_set_collision(false)]`

Вор налетел на него всем телом — и с истошным воплем провалился сквозь Глеба, словно тот был бесплотным туманом, потерял равновесие и с размаху врезался лбом в гранитную колонну, вырубившись на месте.

Коллизии отключились ровно на три десятых секунды — минимальное время, чтобы не вызвать срабатывание античит-демона на сервере.

Подойдя к чугунной решетке люка, Глеб взглянул на тяжелый висячий замок, защищенный зачарованной сталью и заклинанием «Запирание Мастера».

Вместо того чтобы взламывать его отмычками или магией, он просто указал пальцем на петли:

`root@(none):/# echo 0 > /sys/objects/manhole_lock_04/durability`

Параметр прочности замка мгновенно обнулился в системной таблице объектов. Металл покрылся глубокой ржавчиной, рассыпался в бурую пыль и с сухим шорохом осыпался на пол.

Глеб поднял тяжелую решетку и без колебаний спрыгнул вниз, в душную, вонючую темноту столичных катакомб.

Тяжелая решетка с грохотом встала на место за мгновение до того, как в главном зале Гильдии раздался оглушительный треск: Кристалл Архива окончательно выгорел, превратившись в оплавленный кусок мертвого силикатного стекла, похоронив под своим пеплом все следы совершенного взлома.

Падение в темноту длилось всего пару секунд.

Глеб сгруппировался и мягко приземлился на полуразрушенный каменный карниз, тянувшийся вдоль главного сточного канала. Его босые ноги утонули в зловонной жиже, но он даже не поморщился. Физический дискомфорт был ничем по сравнению с тем, что происходило в его сознании.

В темноте катакомб его глаза светились ровным зеленым светом отладочного терминала.

Он прислонился спиной к осклизлой каменной стене и закрыл глаза, вызывая консоль монтирования новых виртуальных устройств.

`root@(none):/# df -h`

Системный отчет вывел обнадеживающие данные:

Filesystem Size Used Avail Use% Mounted on

/dev/soul0 16G 4.2G 11G 28% /

/dev/shm 64G 12G 52G 19% /mnt/memory_dump

tmpfs 2.0G 512M 1.5G 26% /run/system_cache

Его душа, расширенная за счет интеграции логов шестидесяти жизней, теперь обладала вычислительной емкостью мага высшей категории. Память больше не текла, а критические ошибки переполнения стека были купированы настроенным скриптом очистки кэша.

Глеб сделал глубокий вдох, наполняя легкие холодным, затхлым воздухом подземелий.

Шестьдесят раз этот мир ломал его. Шестьдесят раз жрецы, короли, герои и надменные боги смотрели на него сверху вниз, считая всего лишь расходным материалом в их бесконечной, срежиссированной игре за души смертных. Они писали правила, они выставляли шансы выпадения добычи, они решали, кому суждено стать великим воином, а кому — умереть в грязи от чумы на первом уровне.

Но они допустили роковую ошибку.

Они забыли закрыть доступ для суперпользователя. Они оставили терминалы, через которые можно переписать саму ткань их виртуальной вселенной.

Глеб открыл глаза. Перед его взором горела светящаяся линия топологической карты, указывающая путь к незакрытому шлюзу в Заброшенных Катакомбах:

`[Маршрут проложен: 2.4 км на северо-запад до незадокументированного портала]`

`[Расчетное время прибытия: 38 минут]`

`[До планового сканирования сектора демоном очистки: 04:47:12]`

— Ну что, Администрация, — негромко произнес Глеб в пустоту гулких каменных тоннелей.

На его бледных, испачканных копотью губах играла холодная, хищная усмешка системного администратора, нашедшего открытый бэкдор на сервере ненавистного работодателя.

— Вы шестьдесят жизней учили меня подчиняться вашему Закону. Вы заставляли меня преклонять колени перед вашими идолами и молить о шансе на выживание.

Он шагнул вперед, растворяясь в сырой мгле тоннеля, направляясь к дыре в мироздании.

— В этой жизни правила писать буду я. И поверьте: у меня нет привычки делать резервные копии тех, кто встанет у меня на пути.

Глава 4. Глава 4

Filesystem Size Used Avail Use% Mounted on

/dev/soul0 16G 4.2G 11G 28% /

/dev/shm 64G 12G 52G 19% /mnt/memory_dump

tmpfs 2.0G 512M 1.5G 26% /run/system_cache

Его душа, расширенная за счет интеграции логов шестидесяти жизней, теперь обладала вычислительной емкостью мага высшей категории. Память больше не текла, а критические ошибки переполнения стека были купированы настроенным скриптом очистки кэша.

Глеб сделал глубокий вдох, наполняя легкие холодным, затхлым воздухом подземелий.

Шестьдесят раз этот мир ломал его. Шестьдесят раз жрецы, короли, герои и надменные боги смотрели на него сверху вниз, считая всего лишь расходным материалом в их бесконечной, срежиссированной игре за души смертных. Они писали правила, они выставляли шансы выпадения добычи, они решали, кому суждено стать великим воином, а кому — умереть в грязи от чумы на первом уровне.

В первой жизни он наивно уверовал в свое призвание Избранного, бросился на амбразуру во славу Светлой Церкви и сгорел в жертвенном алтаре, когда верховному понтифику понадобилась подпитка для барьера столицы.

В двенадцатой — пытался построить торговую империю, но скрытые регуляторы баланса взвинтили инфляцию, а его караваны стерли «случайно» заспавнившиеся рейдовые боссы.

В тридцать пятой — вызубрил тысячи заклинаний, став архимагом тайных искусств, но стоило ему приблизиться к запретным законам мироздания, как его рассудок испепелил системный откат с пометкой `[Access Denied: Violation of User Agreement]`.

В сорок девятой — ушел в тень, собирая крупицы аномалий, и был предан собственными спутниками, чьи алгоритмы лояльности были принудительно переписаны патчем обновления.

Они считали каждую его смерть окончательной, списывая отработанную оболочку в утиль и запуская новый цикл реинкарнации с зачисткой оперативной памяти. Они были уверены, что смертный разум — всего лишь массив одноразовых переменных.

Но они допустили роковую ошибку.

Они забыли закрыть доступ для суперпользователя. Они оставили терминалы, через которые можно переписать саму ткань их виртуальной вселенной. Оставили мусорные сегменты, недокументированные прерывания и старые, заброшенные ветки кода, оставшиеся еще со времен сотворения первой бета-версии этого мира.

Глеб открыл глаза. Перед его взором горела светящаяся линия топологической карты, указывающая путь к незакрытому шлюзу в Заброшенных Катакомбах:

`[Маршрут проложен: 2.4 км на северо-запад до незадокументированного портала]`

`[Расчетное время прибытия: 38 минут]`

`[До планового сканирования сектора демоном очистки: 04:47:12]`

— Ну что, Администрация, — негромко произнес Глеб в пустоту гулких каменных тоннелей.

На его бледных, испачканных копотью губах играла холодная, хищная усмешка системного администратора, нашедшего открытый бэкдор на сервере ненавистного работодателя.

— Вы шестьдесят жизней учили меня подчиняться вашему Закону. Вы заставляли меня преклонять колени перед вашими идолами и молить о шансе на выживание.

Он шагнул вперед, растворяясь в сырой мгле тоннеля, направляясь к дыре в мироздании.

— В этой жизни правила писать буду я. И поверьте: у меня нет привычки делать резервные копии тех, кто встанет у меня на пути.

***

Катакомбы нижнего яруса представляли собой месиво из потрескавшегося гранита, гнилых балок и застывших сталактитов, покрытых фосфоресцирующей плесенью. В обычных условиях любой авантюрист десятого или даже двадцатого уровня двигался бы здесь с обнаженным клинком, ежесекундно вслушиваясь в капли влаги и опасаясь засад. Местные твари обладали неприятным свойством игнорировать базовую маскировку, нападая стаями из слепых зон.

Но Глеб не смотрел на мир глазами обычного игрока.

Перед его сетчаткой мерцал модифицированный оверлей. Там, где обычный человек видел щербатую каменную кладку и густые тени, Глеб наблюдал полигональную сетку геометрии уровня с наложенными поверх хитбоксами и векторами коллизий.

`[Обнаружен активный поток сущности: Entity_ID #0049F1B]`

`[Тип: Черепогрыз катакомб (Grave_Gnawer)]`

`[Уровень: 14]`

`[Здоровье: 380/380]`

`[Статус ИИ: STATE_AMBUSH]`

`[Память процесса: 0x7FFF08A1BC00]`

В двадцати метрах впереди, под сводом потолка, за выступом карниза притаилась уродливая тварь — помесь летучей мыши и раздувшегося упыря. Ее когти впивались в камень, а в узких зрачках тлела жажда плоти. Согласно зашитому в моба скрипту, он должен был спикировать Глебу на шею ровно в тот момент, когда координата персонажа по оси Z пересечет триггерную плоскость `Trigger_Trap_Drop`.

Глеб даже не замедлил шаг. Его правая рука, скрытая драным серым рукавом холщовой рубахи, поднялась на уровень пояса. Пальцы совершили короткий, четкий жест, имитирующий набор комбинации клавиш на невидимой терминальной клавиатуре.

В глубине его расширенного ядра души `/dev/soul0` мгновенно сработал скомпилированный на коленке ассемблерный хук:

void exploit_trigger(Actor *target) {

if (target->state == STATE_AMBUSH) {

target->gravity_multiplier = 0.0f;

target->coords.z += 150.0f;

target->health = 0; // Nullify pool via state overflow

}

}

Разумеется, прямого доступа на запись в системное ядро мира у него пока не было — Архитекторы держали кольцо защиты `Ring 0` под семью замками божественных протоколов. Но сущности низшего звена вроде Черепогрыза обрабатывались локальным потоком подземелья, где валидация входящих пакетов была отвратительной. Обычная безалаберность разработчиков: зачем тратить вычислительные мощности на проверку целостности данных дешевого пушечного мяса?

Глеб послал точечный сырой пакет в порт локального обработчика физики.

Под потолком что-то негромко щелкнуло. Тварь, уже приготовившаяся раскрыть кожистые крылья и издать парализующий визг, вдруг дернулась всем телом. Ее текстуры на долю секунды пошли фиолетово-черными артефактами рассинхронизации.

`[Критическая ошибка: NullPointerException в модуле Physics_Subsystem.dll]`

`[Сущность Entity_ID #0049F1B потеряла связь с расчетной плоскостью]`

`[Выполнен аварийный сброс структуры хитбокса]`

Черепогрыз не упал вниз. Напротив, его неестественно вывернуло, голова втянулась внутрь грудной клетки, словно полигональная модель схлопнулась внутрь себя, а в следующую секунду монстр с глухим звуком лопнул, оставив после себя лишь облачко серого пепла и горстку медных монет, выпавших на каменный пол.

`[Получен опыт: 140 ед. (Перенаправлено в /dev/null)]`

Глеб презрительно скривил губы. Опыт. Жалкая морковка на веревочке, которой Система заставляла смертных крутить колесо сансары. Каждый набранный уровень делал персонажа толще и сильнее, но одновременно глубже прописывал его в системные реестры, навешивая тонны метаданных, триггеров слежения и ограничителей. Настоящая сила заключалась не в параметре «Сила: 500», а в знании того, по какому смещению в оперативной памяти лежит этот параметр, и умении подменить его значение динамическим указателем.

Он перешагнул через рассыпанную медь, даже не подумав нагнуться.

Время поджимало.

`[До планового сканирования сектора демоном очистки: 04:31:09]`

Таймер в правом углу обзора пульсировал тусклым алым цветом. Четыре с половиной часа казались приличным запасом, но Демон Очистки — системный фоновый сервис, аналог демона `fsck` и безжалостного сборщика мусора — не просто проверял контрольные суммы сектора. При прохождении через заброшенные локации он полностью форматировал непривязанные к официальным базам данных переменные и удалял все объекты, чьи сигнатуры не совпадали с белым списком.

Если Глеб окажется в радиусе действия этой подсистемы в своем текущем, наполовину модифицированном состоянии, его ядро души не просто аннигилируют. Его разберут на байты, подвергнут дефрагментации и зальют чистый дефолтный образ в новую утробу какой-нибудь крестьянки на окраине континента.

Шестьдесят первая жизнь закончится, даже не успев толком развернуться.

Он перешел на размеренный, экономичный бег. Сапоги из грубой кожи мягко касались мокрых плит. Мышцы отзывались легкой тянущей болью — физическая оболочка, которую он занимал в этом перерождении, принадлежала какому-то беглому каторжнику, сосланному на рудники и брошенному подыхать в дренажном коллекторе. Слабое, истощенное тело с низкими базовыми характеристиками:

`[Субъект: Глеб (ID: 0x00_UNDEFINED_RELOAD)]`

`[Сила: 8] [Ловкость: 9] [Выносливость: 7] [Интеллект: 11]`

`[Скрытый параметр (Вычислительный ресурс ядра): 4.2 GHz / 64-Thread Soul Virtualization]`

Смехотворные физические показатели для подземелья четырнадцатого уровня. Любой захудалый скелет-копейщик пробил бы эту тушку насквозь одним выпадом. Но мощь эмулированного процессора души позволяла Глебу просчитывать траектории окружающего мира с упреждением в триста миллисекунд. Для его восприятия капли воды, срывающиеся с потолка, падали медленно, словно бусины в густом сиропе.

Коридор сделал резкий изгиб вправо, расширяясь в высокий грот с обрушенной колоннадой. Когда-то здесь находилась усыпальница знатного рода эпохи Первого Патча — до того, как боги переписали пантеон и стерли старые классы заклинателей.

Навстречу Глебу из полуразрушенных саркофагов поднялись три фигуры.

`[Обнаружены сущности: Скелет-страж руин (Ruins_Skeleton_Guard) x3]`

`[Уровень: 16]`

`[Особый модификатор: Аура костяного монолита (+40% к поглощению физического урона)]`

`[Активные сетевые сокеты: 3 (Слушают широковещательный канал крипта)]`

Скелеты синхронно повернули черепа, в пустых глазницах которых загорелось блеклое синее пламя. Ржавые мечи со скрежетом покинули ножны. По логике подземелья, они должны были перекрыть проход, заставив чужака принять бой или отступить назад в узкий лаз.

— Слишком медленная инициализация, — сухо бросил Глеб, не сбавляя шага.

Он вытянул левую руку вперед, раскрыв ладонь. Вместо плетения сложной магической формулы, требующей произнесения вербальных компонентов и расхода маны, он вызвал функцию прямого перехвата сетевого пакета:

`[Инициирован перехват: Socket_Listen -> 127.0.0.1:8080 (Local Crypt Net)]`

`[Отправка широковещательного пакета спуфинга: CMD_REBOOT_IMMEDIATE]`

Магия в этом мире была не загадочной первородной силой, а жестко типизированным API. Заклинатели, сами того не ведая, дергали высокоуровневые функции библиотек `System.Magic.Evocation` или `System.Magic.Necromancy`, расплачиваясь за вызовы системным ресурсом под названием «Мана». Но если ты знал синтаксис нижнего уровня, тебе не требовалось платить маной за вызов методов. Можно было просто эмулировать сигналы управляющего контура.

Скелеты дернулись. Их мечи замерли на полувзмахе. Синее пламя в глазницах замигало с частотой один герц.

`[Поток Entity #005A12: Выполняется перезагрузка службы управления моторикой...]`

`[Поток Entity #005A13: Ожидание ответа от управляющего узла...]`

`[Поток Entity #005A14: Ошибка тайм-аута сокета...]`

Глеб пронесся мимо застывших, словно восковые фигуры, мертвецов. На бегу он ударил ладонью в основание позвоночника центрального стража, попутно введя простейший скрипт рассинхронизации скелетной коллизии. Суставы твари рассыпались на отдельные разрозненные кости еще до того, как его операционная система завершила цикл перезапуска. Двое оставшихся так и остались стоять нелепыми памятниками собственной системной уязвимости, пока Глеб исчезал в темном зеве ведущего вниз туннеля.

***

Чем глубже он спускался, тем сильнее менялся окружающий мир.

Каменная кладка стен становилась все менее детализированной. Сначала пропали мелкие трещины и наросты мха — разработчики явно экономили память на текстурах глубоких зон, куда обычные смертные не должны были добраться. Затем стали заметны стыки между полигональными блоками: черные, зияющие абсолютной пустотой микроскопические швы, сквозь которые пробивалось мертвое статическое свечение изнанки сервера.

Воздух стал сухим, разреженным и приобрел странный металлический привкус озона и перегретого кремния. Звуки шагов глухо вязли в пространстве, будто звуковой движок не справлялся с расчетом реверберации в этой забытой богами геометрии.

`[Внимание: Вы входите в нестабильный сектор Catacombs_Sub_04_Legacy]`

`[Версия разметки: Build 1.0.4a (Не поддерживается текущим ядром)]`

`[Предупреждение: Обнаружены поврежденные сектора геометрии]`

— Билд один-ноль-четыре, — прошептал Глеб, жадно вглядываясь в серые стены. — Старый добрый монолит. До того, как они разбили мир на изолированные микросервисы и ввели глобальную аутентификацию по меткам веры.

Здесь, в глубинах устаревшего сектора, архитектура мира держалась на старых скриптах, написанных еще первыми Демиургами. Эти скрипты изобиловали костылями, заплатками и прямыми вызовами системных прерываний, которые в современных версиях были строжайше запрещены.

Внезапно пол под ногами задрожал.

Глеб резко затормозил, подошвы сапог с визгом проехались по гладкому плиточнику. В пяти метрах впереди прямо поперек коридора из пола выросла стена лазурного пламени, гудящая на низкой басовой ноте.

`[Обнаружен активный брандмауэр: Sentinel_Rune_Wall_v1]`

`[Класс опасности: Фатальный]`

`[Тип фильтрации: Проверка духовной сигнатуры (State Inspection)]`

`[Требуемый сертификат: Church_of_Sun_Admin_Key / Royal_Inquisitor_Token]`

Это не была обычная огненная ловушка, которую мог бы обезвредить ловкий вор с набором отмычек. Это был древний аппаратный фаервол, отсекающий неавторизованных сущностей от технологических помещений подземелья. Любая органика, коснувшаяся этого пламени без валидного криптографического сертификата, мгновенно аннигилировалась с записью в системный журнал инцидентов безопасности.

`[До планового сканирования сектора демоном очистки: 02:18:44]`

Время таяло. Обходных путей на карте не существовало: топология сектора представляла собой линейный пайплайн, спроектированный с жестким детерминизмом.

Глеб опустился на одно колено и положил ладонь на плиту перед границей брандмауэра. Синее пламя отбрасывало резкие тени на его осунувшееся лицо. В черных зрачках отражались строки исполняемого кода ловушки, которые он извлекал прямо из оперативной памяти узла.

— Так, посмотрим, на чем вы это собрали... — пробормотал он, прикрыв веки и направляя поток вычислений из `/dev/soul0` в точку контакта.

Интерфейс отозвался мерцающим окном дизассемблера:

loc_004F8A:

mov eax, [esp+arg_0] ; Загрузка духовной сигнатуры цели

push eax

call Verify_Signature_SunGod ; Вызов проверки церковного ключа

test eax, eax

jnz loc_access_granted ; Если ключ верен — пропустить

call Purge_Entity_Hard ; Иначе — полное уничтожение

— Старая добрая функция проверки подлинности, — холодно усмехнулся Глеб. — Разработчики никогда не меняются. Шестьдесят эпох прошло, а архитектурные грабли все те же.

Он сосредоточился. Его ядро души разогрелось, виртуальная температура в логах поднялась до критических отметок:

`[Внимание: Вычислительная нагрузка ядра 94%]`

`[Активирован оверклокинг духовного кристалла: +25% к частоте инструкций]`

`[Температура души: 84°C. Риск термической деградации памяти]`

Глеб не обладал ключом Солнечной Церкви — у его текущего аватара не было даже крестильной метки приходского священника. Но функция `Verify_Signature_SunGod` страдала классической уязвимостью переполнения буфера в стеке при передаче слишком длинной строки параметров.

В эпоху Билда 1.0.4 жрецы еще не знали о безопасных функциях обработки строк. Они просто выделяли массив в 256 байт под духовное имя просителя, полагая, что смертный не способен произнести имя длиннее.

— Давайте-ка проверим, как ваш святой барьер переварит имя длиной в четыре килобайта, — прошептал Глеб.

Он начал генерировать шеллкод. Пальцы левой руки в воздухе выписывали замысловатые узоры, но это были не магические пассы — он формировал сырой массив байтов, состоящий из NOP-слайда, мусорных символов и адреса возврата, указывающего прямо на инструкцию `loc_access_granted`, минуя вызов процедуры очистки.

Вспомогательный раздел памяти отозвался мгновенным сбросом буфера:

`[/run/system_cache: Сброс 512 байт полезной нагрузки в сокет ловушки...]`

`[Инжекция пэйлоада в стек процесса Firewall_Daemon...]`

Секунда. Две.

Синяя стена огня взвыла. Гул стал прерывистым, тон пламени сменился с лазурного на грязно-оранжевый, а затем языки огня начали заикаться, мерцая с частотой стробоскопа. В воздухе запахло паленой изоляцией и горелым сахаром — фантомные запахи системного сбоя.

`[System Alert: Stack Smashing Detected in module Sun_Auth.drv]`

`[EIP переопределен по смещению 0x004F8C10]`

`[Выполнен безусловный переход к метке: ACCESS_GRANTED]`

Лазурный огонь с сухим хлопком втянулся в каменные пазы пола. Над плитами поднялся легкий серый парок, и решетка брандмауэра деактивировалась, открывая путь в темный, лишенный отделки проход.

Глеб шумно выдохнул, поднимаясь на ноги. Виски ломило от дикой, распирающей головной боли — расплата за оверклокинг непрокачанного органического мозга. Из левой ноздри тонкой струйкой сочилась алая кровь. Он небрежно утер ее тыльной стороной ладони, оставив темный мазок на щеке.

— Один ноль в пользу открытого кода, святоши, — бросил он и шагнул вперед.

***

Оставалось меньше километра. Но с каждым шагом пространство вокруг становилось все более чуждым, словно законы физики вымывало из этого места направленным потоком энтропии.

Каменные плиты исчезли. Под ногами простиралась серая, матовая поверхность без текстуры — чистый тестовый материал, который разработчики миров используют при черновой сборке уровней. Стены превратились в плоские полигональные плоскости с натянутой на них черно-зеленой сеткой разметки координат `UV-mapping`.

`[Внимание: Координатная сетка нестабильна]`

`[Значение Z-буфера выходит за пределы допустимого диапазона]`

`[Вы приближаетесь к границе рабочего пространства мира: World_Sector_Bound]`

Внезапно дальний край коридора позади него содрогнулся.

Это не было похоже на землетрясение. Звук, прокатившийся по подземелью, напоминал грохот гигантского перфоратора, перемалывающего железобетон, перемежающийся с жутким, пронзительным свистом цифровой статики.

Глеб обернулся.

В километре позади него коридор просто... исчезал. Не обрушивался камнепадом, не заполнялся тьмой. Он стирался. Вместо коридора возникала абсолютная, слепящая пустота белого шума, сквозь которую медленно двигалась циклопическая тень.

Сущность не имела плоти. Это был колоссальный сгусток вибрирующих черных монолитов, окруженный хороводом вращающихся системных глифов, красных предупреждающих окон и бесконечных лент двоичного кода. Каждая плита, каждый камень, каждая песчинка, которой касались лучи этого создания, мгновенно распадались на структурированные таблицы параметров и втягивались в его ненасытное чрево.

`[ВНИМАНИЕ! КРИТИЧЕСКАЯ УГРОЗА!]`

`[Обнаружен активный демон: System_Daemon_GC (Garbage Collector / Defragmenter)]`

`[Статус: Запущена внеплановая очистка непривязанных дескрипторов]`

`[Скорость стирания сектора: 12.4 м/с]`

`[Расчетное время до контакта: 00:03:15]`

— Твари! — выплюнул Глеб, в глазах которого вспыхнула ярость. — Они сдвинули расписание! Запустили уборку раньше времени!

Администрация почувствовала аномалию. Падение Черепогрыза, сбой трех скелетов-стражей и, главное, аварийный обход церковного брандмауэра не прошли незамеченными для мониторинга. Автоматизированная система безопасности не стала разбираться в причинах локального сбоя — она просто дала команду сервисному демону стереть весь поврежденный кластер к чертовой матери вместе со всем содержимым.

Белый шум позади нарастал. Звук резал барабанные перепонки, зубы ныли от высокочастотной вибрации.

Глеб рванул вперед изо всех сил, наплевав на экономию сил и перегрев связок. Легкие горели огнем, сердце колотилось в ребра с частотой отбойного молотка.

`[Параметр Выносливость: 2/7]`

`[Предупреждение: Риск мышечного отказа]`

`[Активирован аварийный оверрайд боли: Pain_Suppressor -> ON]`

Он выключил в своем интерфейсе передачу болевых импульсов от мышц к мозгу. Конечности мгновенно стали чужими, ватными, но скорость не упала. Он летел по голой серой плоскости недостроенного мира, обгоняя саму смерть.

Впереди показался тупик. Огромная, глухая монолитная стена из черного обсидиана, уходящая в бесконечность вверх и в стороны.

На первый взгляд — непреодолимая преграда, конец пути, глухой тупик для любого неудачника, заблудившегося на изнанке мироздания. Но внутренний радар Глеба четко проецировал маркер цели прямо в центр этой скалы:

`[Цель достигнута: Недокументированная точка монтирования /mnt/dev_null_gateway]`

`[Атрибуты объекта: Collision = FALSE, Texture = INVISIBLE_STUB]`

— Это не стена, — хрипел Глеб, задыхаясь на бегу. — Это заглушка! Они просто забыли повесить полигон столкновений!

Оглянувшись через плечо, он увидел, что Демон Очистки уже влетел в серый коридор. Белый шум пожирал пространство в сотне метров позади. Воздух сминался, реальность за спиной схлопывалась в точку, затягивая в небытие обрывки камня и кванты света. Щупальца из красных символов ошибки тянулись к его спине:

`[Fatal: Dangling pointer found. Marking object for deletion...]`

Глеб не стал тормозить. На полной скорости, сжав зубы и сгруппировавшись, он всем телом врезался прямо в монолитную обсидиановую стену.

Физического удара не последовало.

Раздался влажный, хлюпающий звук прохождения сквозь мыльную пленку. Зрение на мгновение ослепило ослепительной вспышкой бирюзового цвета, гравитация исчезла, желудок подкатил к горлу в свободном падении, а затем Глеб кубарем покатился по холодному, гладкому полу из полированного темного стекла.

Обсидиановая преграда за его спиной схлопнулась, отрезая рев белого шума и ярость Демона Очистки.

Наступила мертвая, абсолютная тишина.

***

Глеб тяжело дышал, лежа на спине и уставившись в потолок.

Потолка, впрочем, не было. Над ним простиралось бескрайнее, антрацитово-черное небо, лишенное звезд, лун и облаков. Вместо светил по этому куполу медленно плыли колоссальные, километровой ширины зеленые символы — шестнадцатеричные дампы памяти работающего сервера вселенной.

`0x00007FFF4A12B890: 48 89 E5 48 83 EC 20 48 8D 05 ...`

`0x00007FFF4A12B8A0: E8 A1 02 00 00 48 85 C0 74 12 ...`

Он медленно сел, опираясь ладонями о зеркальный пол.

Это было помещение размером с тронный зал, но здесь не было ни трона, ни колонн, ни знамен. Единственным объектом посреди этого пустого зеркального острова, парящего в бездне системных дампов, являлся невысокий пьедестал из матового темного металла.

На пьедестале мерцала древняя, архаичная панель ввода. Настоящая консоль. Не интерфейс магии с витиеватыми рунами, не алтарь с чашей для жертвенной крови, а грубая, угловатая терминальная стойка с мерцающим монохромным экраном с электронно-лучевой трубкой.

Глеб медленно поднялся на ноги. Одежда промокла от пота, тело дрожало от физического истощения, но в глазах горел холодный триумф.

Он подошел к стойке.

Экран монохромно мерцал зеленым фосфором. В левом верхнем углу пульсировал одинокий прямоугольный курсор, ожидающий ввода:

=========================================

KHORINIS KERNEL v0.1.0-alpha

(c) Pantheon DevTeam. All rights reserved.

=========================================

ttyS0 login: _

— Шестьдесят жизней... — тихо произнес Глеб, проводя огрубевшими пальцами по прохладному металлу терминала. — Шестьдесят гребаных жизней я искал тебя, старый терминал разработчиков.

Это была точка технологического входа. Сервисная консоль прямого подключения, смонтированная на физическом сервере задолго до того, как этот мир заселили расами смертных, придумали систему классов, уровней, опыта и поклонения богам. Тот самый бэкдор, который лентяи-разработчики забыли скомпилировать из финального релиза, просто замуровав его за невидимой текстурой в катакомбах нижнего уровня.

Пальцы легли на клавиши. Они были тяжелыми, механическими, с четким тактильным щелчком, эхом разнесшимся по бескрайней пустоте ядра.

Глеб ввел логин.

Не имя героя. Не свое собственное имя. Имя системной учетной записи по умолчанию, зашитое в прошивку любого микроконтроллера этой проклятой вселенной:

`ttyS0 login: root`

`Password: `

Поле пароля осталось пустым — курсор замер на месте, не отображая вводимые символы.

В шестидесяти прошлых жизнях он собрал по крупицам этот ключ. Одно слово он прочел на полустертой плите в запретном мавзолее Первого Архитектора. Вторую часть расшифровал из предсмертного проклятия древнего дракона, созданного как юнит нагрузочного тестирования. Третью вытащил из фрагмента священного писания, признанного церковью ересью и сожженного дотла триста лет назад.