Нейтон Патчер
Когда хлеб объявили оружием: ЛитРПГ о войне без мечей

Глава 1 Мазь без флага

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

— Совпадение? — спросил Артём.

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

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

— Видимая репутация?

— Без изменений.

— Статус врага?

— Отсутствует.

— Нарушение городского закона?

— Не зафиксировано.

Артём молчал.

Строки висели перед ним аккуратно, без крови, без крика, без запаха дешёвой мази и мокрой кожи. В интерфейсе чужая беда выглядела чище, чем в жизни. Поставка трав: изменена. Аренда: пересчитана. Скидка: приостановлена. Ученичество: продлено. Каждое событие можно было объяснить отдельно. Вместе они складывались в ладонь, которая легла на горло лавки и пока только проверяла, сколько силы понадобится.

— Открой первичный слой репутации Талии, — сказал Артём.

Северьян провёл пальцами по доске. Над контрактной сеткой возник профиль NPC.

Талия РунПрофессия: лекарь частной практикиГородская репутация: положительнаяФракционная репутация: нейтральнаяСтатус угрозы: отсутствуетТорговые нарушения: отсутствуютБоевые действия против Коалиции: отсутствуют

Артём посмотрел на эти строки, потом на цепочку последствий.

— Получается, она чистая.

— По видимому слою — да.

— Но платит как нечистая.

Северьян едва заметно склонил голову.

— Точная формулировка.

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

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

— Вот она, — сказал Артём.

— Не санкция, — уточнил Северьян. — Поправка.

— Поправка на что?

— На нас.

Артём увеличил строку.

TradeAssociationScore: 0.04

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

— Дальше, — сказал Артём.

Северьян открыл поставку трав. Потом храмовую скидку. Потом ученичество Риана.

Везде находилась одна и та же еле заметная примесь.

TradeAssociationScore: 0.04RiskAdjustment: minorAccessPriority: reducedManualReview: enabled

— Они не бьют по ней напрямую, — сказал Артём.

— Прямой удар потребовал бы основания.

— Поэтому они меняют окружение.

— Да.

— Поставщик сам просит предоплату. Храм сам снимает скидку. Арендодатель сам повышает ставку. Травник сам задерживает ученика.

— Формально — да.

— А фактически?

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

HiddenSanctionMark: TraceTradeAssociationScore: 0.04PenaltyMultiplier: 1.02JustifiedHostilityScore: 0.00

Строки висели недолго. Потом дрогнули, словно кто-то с другой стороны попытался закрыть окно. Артём удержал его административным правом данжа. Свет в коридоре мигнул. На стене проснулась тонкая синяя трещина, потянулась от пола к потолку и погасла.

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

— Скрытая санкционная метка, — произнёс он.

Артём не отвёл взгляда от строки.

— Следовая.

— Этого достаточно. Метка есть.

— За мазь.

— За торговую связь с караваном, ассоциированным с вашей юрисдикцией.

— За мазь, — повторил Артём.

Северьян помолчал.

— Да. За мазь.

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

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

— Проверь караванщиков, — сказал Артём.

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

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

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

— Не говори так.

— Как?

— «Обслуживающие субъекты». Это лекарь. Мать. Лавка. Ребёнок, которому задержали ученичество.

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

— Для системы это субъекты.

— Для Коалиции тоже.

— Именно поэтому она эффективна.

Артём медленно выдохнул.

Ему хотелось открыть карту Веллара, найти арендодателя, храмового администратора, поставщика Брана, мастера Элвина и надавить в ответ. Не мечом. Контрактом. Ценой. Отказом в будущих поставках. Данж уже имел достаточно влияния, чтобы испортить жизнь нескольким мелким участникам цепочки.

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

— Нам нужен не ответный штраф, — сказал Артём. — Нам нужна причина.

— Причина уже видна.

— Нет. Видна нам. Этого мало.

Северьян развернул таблицу.

— Тогда нужен массив.

— Какой?

— Один случай можно списать на совпадение. Десять — на рыночный шум. Сто — на фракционную тенденцию. Тысяча — на архитектуру давления.

— Ты предлагаешь собрать тысячу таких случаев?

— Я предлагаю сначала понять, сколько их уже есть.

Артём посмотрел на профиль Талии.

— Без того, чтобы втягивать новых людей.

— Они уже втянуты, — сухо ответил Северьян. — Просто пока не знают.

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

Артём открыл широкий поиск по контрактным следам.

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

— Запрос большой.

— Выполняй.

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

Первые результаты появились почти сразу.

Кузнец Марн, починка колеса каравана: скидка на уголь снижена.

Пекарь Сольвей, продажа хлеба рабочим нижнего двора: складская проверка вне очереди.

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

Ночлежный дом «У тёплой балки», размещение двух раненых грузчиков: страховой депозит пересмотрен.

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

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

— Покажи общий слой, — сказал он.

Северьян объединил строки.

HiddenSanctionMark: Trace / DistributedAverage TradeAssociationScore: 0.03–0.07Average PenaltyMultiplier: 1.01–1.05Average JustifiedHostilityScore: 0.00–0.01Visible Faction Status Change: none

— Нет боевого основания, — сказал Артём.

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

— Хлеб — инфраструктура?

— Да.

— Вода?

— Да.

— Лечение?

— Да.

— Тогда для них жизнь рядом с нами уже преступление.

— Нет, — сказал Северьян. — Преступление требует обвинения. Здесь его избегают.

Артём усмехнулся без веселья.

— Удобно.

— Очень.

Он снова открыл профиль Талии. Скрытая метка дрожала на границе доступа.

HiddenSanctionMark: Trace

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

— Можно снять метку? — спросил Артём.

— Не нашими правами. Источник находится во внешнем фракционном контуре.

— Можно компенсировать последствия?

— Частично. Но прямая компенсация увеличит связь.

— То есть если мы поможем Талии, её сильнее свяжут с нами.

— Вероятно.

— Если не поможем, она платит одна.

— Да.

Северьян произнёс это без нажима. Просто как факт. Но именно эта сухость ударила сильнее любого обвинения. Мир, построенный на коэффициентах, всегда предлагал выбирать между плохим и хуже, а потом называл итог рациональным.

— Подготовь фонд локальных компенсаций, — сказал Артём.

— Это преждевременно.

— Подготовь.

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

— Я не спрашивал о выгоде.

— Но она определяет устойчивость решения.

Артём повернулся к нему.

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

Северьян замолчал, потом кивнул.

— Это уже политическая устойчивость.

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

— Талия Рун первая?

— Талия Рун первая обнаруженная. Не первая жертва.

Северьян записал.

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

Именно поэтому её было трудно ненавидеть. Меч можно увидеть. Цену — только оплатить.

— Сделай ещё один запрос, — сказал Артём.

— Какой?

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

Северьян впервые не ответил сразу.

— Такой запрос может быть заблокирован.

— Формулируй через аудит.

— Основание?

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

— Это может привлечь внимание.

— Оно уже здесь.

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

Потом интерфейс ответил.

Access level insufficient.

Северьян сухо сказал:

— Ожидаемо.

Артём не отвёл взгляда.

Под первой строкой появилась вторая.

Related sovereign audit rights detected.

Северьян замер.

— Неожиданно.

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

Faction Pressure Imbalance: monitoring only

Четвёртая появилась почти сразу.

ReputationDebt: below review threshold

Артём прочитал её дважды.

— Репутационный долг, — сказал он.

— Скрытый параметр поведения фракции, — произнёс Северьян. В его голосе впервые появилась настоящая осторожность. — Не отношения к нам. Не репутация Талии. Не статус каравана. Долг самой фракции за несоразмерное давление.

— Значит, предохранитель есть.

— Есть. Но ниже порога рассмотрения.

— Насколько ниже?

Северьян запросил значение. Система отказала. Он изменил формулировку. Снова отказ. Третий запрос прошёл частично.

ReputationDebt: insignificantInversionThreshold: unavailableReview probability: negligible

Незначительно.

Так Система называла чью-то сорванную поставку, чужую аренду, мальчика без ученичества, мазь, проданную не тем людям.

Артём почувствовал, как в нём на секунду вспыхнула опасная ясность.

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

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

И почти в тот же миг эта мысль стала грязной.

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

Северьян, разумеется, увидел только модель.

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

Артём не сразу ответил.

— Ты предлагаешь наживку.

— Я предлагаю проверку механики.

— Наживку из людей.

— Нейтральные контрагенты уже участвуют в экономике. Мы можем выбирать сделки с минимальным риском.

— Минимальный риск для кого?

Северьян замолчал.

Вот это и было главным вопросом. Для данжа риск был числом. Для Талии — письмом от мастера Элвина. Для Риана — местом ученика, которое вдруг стало «после стабилизации профиля домохозяйства». Для Коалиции — допустимым побочным эффектом мягкой коррекции. Для Артёма всё это уже начинало складываться в оружие, и именно поэтому ему нужно было остановиться до того, как оружие покажется красивым.

— Сначала помощь, — сказал он. — Потом аудит.

— Это замедлит накопление данных.

— Хорошо.

— Хорошо?

— Если данные требуют, чтобы люди страдали без защиты, значит, такие данные нам не подходят.

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

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

— Подготовь.

— И правила допуска.

— Подготовь.

— И защиту от ложных заявок.

— Подготовь.

— И бюджет.

— Особенно бюджет.

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

Артём открыл канал связи с караваном «Серый тягловый».

— Найдите Талию Рун, — сказал он. — Передайте, что данж готов оплатить юридическое возражение по аренде и поставить резерв трав без предоплаты. Не как благодарность. Как контракт защиты нейтрального лечения.

Караванный десятник ответил не сразу. На фоне слышались голоса, скрип телеги и чей-то кашель.

— Она может отказаться.

— Имеет право.

— Если согласится, её свяжут с вами сильнее.

— Поэтому сначала объясните риск.

— А если спросит, почему вы помогаете?

Артём посмотрел на строку ReputationDebt: insignificant.

— Потому что она продала мазь, а не присягу.

Связь погасла.

Северьян убрал часть окон, но скрытый слой оставил. Перед Артёмом всё ещё висели четыре строки, с которых начиналась новая война.

HiddenSanctionMark: TraceTradeAssociationScore: 0.04PenaltyMultiplier: 1.02JustifiedHostilityScore: 0.00

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

Артём понял: Коалиция давно перестала управлять репутацией как отношением. Она превратила её в стоимость жизни. И если эту стоимость нельзя было увидеть на вывеске, значит, первым оружием должен был стать свет.

Нужно было заставить скрытую цену проявиться.

Вечером Веллар закрыл ворота под мелкий дождь.

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

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

«Прошу указать основание изменения коэффициента торговой устойчивости».

Потом остановилась.

Перо оставило на бумаге тёмную точку.

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

Колокольчик над дверью дрогнул.

Талия подняла голову.

На пороге стояла Мера из «Серого тяглового». Бледная, усталая, с новой повязкой на голени. За спиной у неё виднелись двое караванщиков с закрытыми дорожными плащами.

— Лавка закрыта, — сказала Талия.

— Я знаю.

— Рана открылась?

— Нет. Данж прислал сообщение.

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

— Данж?

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

Талия смотрела на неё долго.

— Очень щедро — сначала принести риск, потом предупредить, что помощь тоже риск.

Мера не стала спорить.

— Да.

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

— Он знает про Риана?

— Да.

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

— Я не хочу быть знаменем, — сказала Талия.

— Он сказал, что вы имеете право отказаться.

— А если соглашусь?

— Тогда вам объяснят условия. И риск.

Талия усмехнулась.

— Риск мне уже объяснили. Без слов.

Мера опустила глаза на листы.

— Он ещё сказал фразу. Передать дословно.

— Какую?

— «Она продала мазь, а не присягу».

Талия отвернулась к окну.

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

Она взяла чистый лист.

— Контракт я прочитаю. Не подпишу сразу.

— Так ему и передать?

— Нет. Передай, что лекарь не лечит вслепую. Сначала смотрит рану.

Мера кивнула.

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

В столице Коалиции дождя не было.

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

Кассиан Рев стоял у длинного стола и читал отчёт.

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

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

Нейтральный лекарь: Талия РунСделка: базовые лечебные мази, перевязочные материалыПокупатель: караван, ассоциированный с Восточным проваломПрямая военная применимость: отсутствуетРиск связности: низкийРекомендация: наблюдение / мягкая коррекция доверия

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

Кассиан дочитал до конца.

— Лавка маленькая, — сказал аналитик. — Сделка незначительная. Можно оставить без реакции.

Кассиан поднял на него глаза.

— Нельзя.

Аналитик выпрямился.

— Прямой угрозы нет.

— Прямая угроза — последняя стадия небрежности.

— Это мазь.

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

Аналитик молчал.

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

— Нейтралитет, — сказал Кассиан, — чаще всего начинается с фразы «мы просто лечим».

— Прикажете наложить открытую метку?

Кассиан повернулся так резко, что аналитик замолчал на половине дыхания.

— Нет.

Он положил отчёт на стол.

— Открытая метка сделает её жертвой. Запрет сделает её символом. Нам не нужны ни жертвы, ни символы. Нам нужно, чтобы следующий лекарь сам задумался, прежде чем обслуживать этот маршрут.

Аналитик кивнул, уже понимая.

— Мягкая коррекция доверия?

Кассиан взял перо. Чёрное, с металлическим наконечником, без украшений. В нижней части отчёта была строка решения.

Он не написал «наказать».

Не написал «запретить».

Не написал «объявить врагом».

Он вывел ровные слова:

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

Печать Комиссариата легла на строку тихо.

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

Её включили в контур.

Глава 2 Невидимый штраф

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

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

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

— Это ошибка, — сказала она.

Голос вышел ровным. Лучше, чем могла бы выйти рука: пальцы всё-таки сдвинули квитанцию, и на строке «Арендная корректировка» остановился ноготь.

Два процента.

Не разорение. Не изгнание. Не запрет.

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

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

— У меня договор до конца сезона.

— Договор остаётся.

— Цена изменилась.

— Коэффициент изменился. Цена следует за ним.

Талия подняла глаза.

Писарь сглотнул. На шее у него дёрнулась тонкая жилка.

— Я только доставляю.

— Кто пересчитал коэффициент?

— Реестр.

— Реестр сам проснулся утром и решил, что моя лавка стала на два процента опаснее?

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

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

Талия не обернулась.

— Передайте Реестру, что лавка открыта для проверки. Журнал продаж на месте. Составы мазей на месте. Лицензия лекаря на стене.

— Проверки нет.

— Тогда почему я плачу больше?

Писарь чуть прижал папку к груди.

— В квитанции указано.

Она снова посмотрела на лист.

«Причина: мягкое отклонение торговой связности».

Слова выглядели безобидно. Даже вежливо. Никто не писал «наказание». Никто не писал «враг». Никто не писал «вы продали мазь тем, кому не следовало продавать». Просто торговая связность стала мягко отклонённой, и мир вокруг лавки аккуратно подвинул цену.

— Мне нужно будет подать возражение, — сказала Талия.

— Конечно.

Писарь слишком быстро кивнул. Слишком охотно.

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

— Бланк возражения.

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

Талия посмотрела на писаря так долго, что он отвёл глаза.

— Вы принесли мне подорожание и платную возможность спросить, почему оно произошло.

— Порядок единый для всех арендаторов с изменённым коэффициентом.

— Скольких вы сегодня обошли?

Он не ответил.

Этого оказалось достаточно.

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

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

Писарь выдохнул почти незаметно.

— Вы можете подать возражение в течение трёх рабочих дней.

— А если возражение примут?

— Тогда коэффициент будет пересмотрен.

— А переплату вернут?

Он замолчал.

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

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

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

— Это из-за тех людей? — спросил он.

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

— Но они были ранены.

— Именно.

Риан подошёл к прилавку и посмотрел на ящик.

— Мастер Элвин ещё не передумал?

Талия закрыла ящик на ключ.

— Пока нет.

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

— Я могу работать в лавке ещё сезон.

— Ты пойдёшь учиться.

— Если они не возьмут?

— Возьмут.

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

Талия подошла к двери и перевернула табличку на «Открыто».

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

— Да вы издеваетесь.

Терминал не ответил. Терминалы не спорили. Они просто показывали цену.

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

Брам повернулся к служителю портала.

— Вчера было меньше.

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

— Коэффициент маршрута обновлён, — сказал он.

— С чего?

— Риск связности.

— Я везу муку.

— Я вижу.

— Мука теперь кусается?

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

— Тут нет расшифровки. Хотите — оформляйте запрос.

— С пошлиной?

— Сервисный сбор.

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

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

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

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

Никого не объявили врагом.

Никто не вытащил меч.

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

Артём Соколов увидел это не глазами.

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

Сегодня её след начал темнеть по краям.

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

Он провёл ладонью через один из контрактных следов.

Линия каравана развернулась веером.

Лечебная лавка Талии Рун. Портальный узел Веллара. Угольный двор. Хлебный склад. Гильдия лекарей. Храмовый отдел малых благословений. Учебный реестр ремесленников.

Слишком много точек для одного случайного изменения.

— Северьян, — сказал Артём.

Из бокового прохода вышел казначей данжа.

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

— Я уже поднял сопутствующие отклонения, — сказал он. — Семь подтверждённых микросмещений, четыре вероятных, одиннадцать ожидающих проверки.

— Говори нормально.

— Нормально для кого?

Артём повернул к нему карту.

— Для человека, которому нужно понять, кого ударили.

Северьян сдержанно склонил голову. Для системного NPC это было почти извинением, но только почти.

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

— Общий видимый статус Талии?

— Нейтральный.

— Репутация с Коалицией?

— Без изменений.

— Городская репутация?

— Без изменений.

— Локальные штрафы?

— Формально отсутствуют.

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

Только вокруг дома висели новые веса.

Аренда тяжелее. Травы тяжелее. Вода тяжелее. Обучение дальше. Портал дороже для тех, кто оказался рядом.

— Это не санкция, — сказал Северьян. — Если пользоваться публичной терминологией.

— А если пользоваться реальностью?

— Тогда санкция.

На верхнем слое интерфейса появилась строка:

FactionRep_TaliaRun: Neutral / Stable

Артём коснулся её и провалился ниже.

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

TradeAssociationScore: 0.041HumanitarianNeutralityScore: 0.93VisiblePenalty: NoneLocalCostShift: +2.0%SupplyTrustDelay: 1 cycleApprenticeshipReview: Manual

Северьян поставил свои доски на стойку.

— Видите красоту?

— Не называй это красотой.

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

— Семейного риска?

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

Артём медленно повернулся к нему.

— Она продала мазь раненым караванщикам.

— Да.

— Сын даже не был в лавке.

— Системе не требуется его присутствие. Достаточно связности.

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

— Покажи караван, — сказал он.

Северьян поднял руку.

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

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

— И через пару таких рейсов караван сам станет нежелательным.

— Вернее, дорогим. Нежелательность — слово эмоциональное. Дороговизна — расчётное.

Артём провёл пальцами по линии портального тарифа. Перед ним раскрылась цена Брама Железная Ось. Повышение было смешным. Слишком маленьким, чтобы Брам отказался. Достаточным, чтобы изменить его будущий выбор.

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

— И чтобы от привычки отказались без приказа, — добавил Северьян. — Никаких следов принуждения. Только рациональный рынок.

На дальнем краю зала открылась гостевая дверь.

Без запроса.

Сигнал безопасности вспыхнул, но не красным, а жёлтым: приглашение было старым, одноразовым, выданным ещё для аудита складских маршрутов и не отозванным после прошлого спора. Артём не любил такие дырки. Нокс Рифт любил их как родных.

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

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

— Ты как вошёл? — спросил Артём.

— Через дверь. Самый недооценённый эксплойт в любой крепости.

Северьян повернул к нему лицо.

— Ваш пропуск истёк.

— Тогда ваша дверь романтична и не умеет отпускать прошлое.

— Я могу исправить.

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

Артём не стал тратить время.

— Говори.

Нокс подошёл к карте, присвистнул и ткнул пальцем в серую прожилку вокруг лавки Талии.

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

— Почему не подняли шум?

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

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

Северьян слегка наклонил голову.

— Ваша циничность статистически полезна.

— Спасибо, бухгалтерская нежить, я старался.

— Я не нежить.

— Никто не идеален.

Артём увеличил карту до уровня отдельных сделок.

— Мне нужны подтверждённые случаи. Не слухи.

Нокс усмехнулся.

— У меня есть лучше. Платёжные хвосты.

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

— Смотри. Игрок-грузчик «ЛисНаСкладе» перенёс десять ящиков инструментов для нейтрального подрядчика, который раньше работал с вашим данжем. Через полдня у него вырос депозит на городское хранение. Не сильно. На один процент. Он решил, что это из-за веса. Второе. Девочка-алхимик продала противоожоговый состав вашим шахтёрам через перекупщика. Ей не заблокировали аукцион, но лот стал показываться ниже в городской выдаче. Третье. Игрок-ремесленник сделал дешёвые гвозди для ремонта внешнего моста у вас на границе. Потом у него три раза подряд сорвался заказ от коалиционного дома с формулировкой «низкая предсказуемость поставщика».

— Это всё после связи с нами?

— После связи с вами, с вашими поставщиками, с вашими бывшими поставщиками и с людьми, которые стояли рядом с вашими бывшими поставщиками в неправильном порядке. Система связности любит длинные пальцы.

Артём открыл первый хвост. Потом второй. Потом третий.

По отдельности — мусор.

Вместе — схема.

У каждого случая был свой бытовой облик. Мука. Гвозди. Мазь. Уголь. Освящённая вода. Ученичество. Скидка. Депозит. Проверка. Никто не нёс оружие. Никто не подписывал военный контракт. Никто не клялся Суверенному Данжу.

И всё же после каждой маленькой нормальной сделки включался невидимый пересчёт.

— Мне нужен базовый контроль, — сказал Артём. — Аналогичные NPC без связи с нами. Те же кварталы, те же профессии, те же объёмы сделок.

— Уже начал, — ответил Северьян.

Нокс фыркнул.

— Конечно, начал. У вас тут каменный человек-таблица.

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

— Туше.

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

Разница была слишком чистой.

— Вероятность случайности? — спросил он.

Северьян ответил без паузы:

— Ниже допустимого шума. Но выше порога системного обвинения.

— То есть мы видим, но не можем ударить этим по Коалиции.

— Пока это выглядит как набор локальных экономических решений.

— Они знают.

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

Нокс перестал улыбаться.

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

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

Артём закрыл слой.

— Я иду к ней.

— Нерационально, — сказал Северьян.

— Объясни.

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

Нокс скосил на него глаза.

— Ты только что сказал: «пусть лекарь немного повисит, данные чище»?

— Я сказал: прямое вмешательство исказит наблюдение.

— Да. Бухгалтерская версия звучит хуже.

Артём повернулся к Северьяну.

— Подготовь компенсационный контракт.

— Это преждевременно.

— Подготовь.

— В какой формулировке?

Артём посмотрел на лавку Талии, уменьшенную до светящейся точки.

— Не милостыня. Не покупка молчания. Не плата за ущерб, который мы ещё не можем доказать. Контракт защиты поставок. Мы оплачиваем резерв трав, портальную доставку и юридическое сопровождение возражения по аренде.

— Это признаёт связь.

— Связь уже наказали. Теперь пусть связь хотя бы защищает.

Северьян записал.

— Формулировка красивая. Финансово неэффективная.

— Запомни её. Она нам ещё пригодится.

Талия в это время разбирала новый заказ трав.

Вернее, пыталась разобрать.

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

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

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

Колокольчик над дверью звякнул.

Талия подняла голову.

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

Талия вытерла руки о фартук.

— Если вы ранены, садитесь. Если пришли извиняться, стойте.

Риан замер у окна.

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

— Я пришёл исправить часть вреда.

— Вреда?

Она достала из ящика арендную квитанцию и положила перед ним.

— Вот вред. Два процента. Очень маленький вред. Его можно положить в карман и не заметить, пока карман не оторвётся.

Артём взял квитанцию, прочитал.

— У вас ещё задержали поставку трав.

— Вы хорошо осведомлены.

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

Риан резко поднял голову.

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

— Вы принесли это мне как новости или как список достижений?

Артём положил квитанцию обратно.

— Как доказательство, что дело не в аренде.

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

Риан опустил глаза.

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

— Я могу оплатить разницу, — сказал Артём.

Талия тихо рассмеялась.

Не весело. Сухо.

— Конечно можете.

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

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

Артём не взял монеты.

— Я не предлагаю милостыню.

— Все, кто предлагает милостыню, сначала говорят именно это.

— Тогда назовите форму сами.

Она прищурилась.

— Что?

— Вы не хотите компенсацию за честную работу. Хорошо. Что вам нужно, чтобы лавка продолжила работать и ваш сын не платил за вчерашнюю мазь?

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

— Мне нужны поставки без предоплаты, — сказала она. — Или запас трав на месяц. Не как подарок. Как товарный резерв, который я выкуплю по старой цене, когда продажи вернутся.

— Принято.

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

— Принято.

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

Риан перестал строгать бирку.

Артём посмотрел на него, потом снова на Талию.

— Принято.

— И ещё.

Она положила ладонь на прилавок рядом с монетами.

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

Системный контракт, тонкой линией висевший рядом с Артёмом, мигнул. Где-то далеко, в ядре данжа, Северьян наверняка увидел новый пункт и счёл его неудобным.

Артём произнёс:

— Принято.

Контракт раскрылся между ними не бумажным листом, а световой пластиной. Талия читала медленно. Каждую строку. Риан поднялся и подошёл ближе, но не вмешивался.

Контракт защиты поставок: Лечебная лавка Талии РунПредмет: резерв базовых лекарственных трав, сопровождение арендного возражения, независимое письмо в учебный реестрФорма: товарный резерв с отложенным выкупом по исходной ценеПубличное раскрытие имени: только по отдельному согласиюВоенная применимость: отсутствуетHumanitarianNeutralityScore: 0.96

Талия задержалась на последней строке.

— Это что?

— Системная оценка нейтральности.

— Мазь стала нейтральной только теперь, когда это написала Система?

— Нет. Но теперь это сложнее отрицать.

Она смотрела на световую пластину, как на инструмент, который может и лечить, и резать — в зависимости от руки.

— Вы правда думаете, что сможете доказать невидимое?

— Невидимое уже берёт с вас деньги.

— Деньги легче доказать, чем намерение.

— Тогда начнём с денег.

Талия взяла перо. На секунду пальцы зависли над строкой подписи.

— Если после этого станет хуже?

Артём не сказал, что не станет. Хорошая ложь могла бы успокоить Риана, но плохие системы держались именно на красивых обещаниях, которые никто не мог проверить.

— Тогда связь должна защищать сильнее, чем наказывает.

— Должна?

— Сделаем так, чтобы могла.

Талия подписала.

Контракт принял подпись без торжественного звука. Просто поглотил чернильный след и добавил к нему системный вес. В тот же миг на карте Артёма лавка Талии стала ярче. Не безопасной. Но видимой.

А вместе с видимостью пришёл новый расчёт.

TradeAssociationScore: 0.041 0.063HumanitarianNeutralityScore: 0.96LocalRiskExposure: IncreasedProtectionCoverage: Partial

Талия заметила изменение по его лицу.

— Хуже?

— Риск связи вырос.

— Потому что вы помогли?

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

Она убрала копию контракта в ящик.

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

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

Артём не забыл.

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

В ядре данжа Нокс уже сидел на краю контрактной стойки, за что Северьян смотрел на него как на пятно плесени на налоговом отчёте.

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

— Частично.

— Частично спасли или частично подняли?

— Да.

Нокс усмехнулся.

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

Северьян развернул новую доску.

— После заключения контракта появились дополнительные параметры. Не публичные.

— Покажи.

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

HiddenSanctionMark: Trace / DistributedSourceFaction: Coalition-aligned Compliance LayerVisibility: MaskedDirectHostility: NoneEconomicPressureChannels: 7 confirmedPenaltyMultiplier: 1.020 — 1.047JustifiedHostilityScore: 0.000 — 0.006

Артём медленно прочитал каждую строку.

— Источник указан?

— Не фракция напрямую, — сказал Северьян. — «Коалиционно-совместимый комплаенс-слой». Удобное отдаление. Не приказ Кассиана. Не решение Совета. Алгоритм совместимости.

Нокс спрыгнул со стойки.

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

— Перчатка с печатью Коалиции, — сказал Артём.

— С печатью? Нет. С запахом.

Северьян вывел рядом контрольные случаи. Невидимая модель стала плотнее. Перевозчик Брам. Кузнец Марн. Пекарь Сольвей. Игрок-грузчик. Алхимик. Ремесленник гвоздей. У каждого была собственная серая рамка. У каждого — маленький TradeAssociationScore. У каждого — почти нулевой JustifiedHostilityScore.

Артём смотрел на числа, и в первые секунды они складывались в оружие.

Вот она, слабость.

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

— Северьян, ищи накопительный параметр по санкционирующей стороне.

— Уже.

— Не по жертвам. По источнику давления.

— Я понял.

— Всё, что связано с необоснованным PenaltyMultiplier.

— Запрос требует основания.

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

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

Нокс перестал улыбаться.

— Ты роешь не туда, где обычно роют игроки.

— Игроки смотрят свои штрафы, — сказал Артём. — Я смотрю долг того, кто штрафует.

— Такого параметра может не быть.

— Тогда его отсутствие тоже ответ.

Система выдала первую строку:

Access denied.

Северьян не шелохнулся.

— Ожидаемо.

Следом появилась вторая:

Related audit rights detected.

Нокс тихо присвистнул.

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

Faction Conduct Ledger: Restricted

Артём приблизил текст.

— Реестр поведения фракции.

— Не долг, — сказал Северьян. — Но близко.

— Открывай связанные переменные.

— Доступ частичный.

— Частичного хватит.

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

Penalty-Justification Delta: accumulatingFaction Pressure Imbalance: below review thresholdReputationDebt: value hidden

Артём не сразу сказал что-либо.

Слово висело в воздухе.

ReputationDebt.

Нокс первым нарушил тишину.

— Вот это уже не рыночный шум.

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

— Значение скрыто, но наличие подтверждено. Фракция накапливает долг за давление, если штраф превышает обоснованность враждебности.

— Коалиция знает? — спросил Артём.

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

Нокс покачал головой.

— Поэтому они режут по два процента. Не десять. Не двадцать. Мелочь не будит судью.

— Мелочь будит статистику, — сказал Артём.

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

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

ReputationDebt: <0.01% of Review Threshold

Почти ноль.

Но не ноль.

Артём поймал себя на том, что смотрит на эту величину слишком долго.

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

Потом перед глазами встала лавка Талии. Монеты на прилавке. Риан у окна. Синей коры не хватало.

Северьян сказал:

— Если масштабировать контакты, параметр можно вырастить.

Нокс повернулся к нему.

— Ты умеешь звучать как похоронщик, продающий абонемент.

— Я умею считать.

— Это не оправдание. Хотя обычно прибыльное.

Артём закрыл строку ReputationDebt, но она осталась перед ним внутренним следом.

— Пока ничего не масштабируем.

Северьян поднял глаза.

— Мы получили подтверждение уязвимости.

— Мы получили подтверждение, что Талия была первой строкой.

— Не первой. Первой обнаруженной.

— Тем более.

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

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

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

Письмо пришло от оператора капсульной инфраструктуры.

Тема: «Рекомендация по снижению стимульной нагрузки».

Она открыла.

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

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

Лена перечитала строку.

Субъекта.

Не пациента. Не клиента. Не Артёма.

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

Ниже стояли пункты.

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

Всё выглядело как забота. Ни один пункт не звучал как запрет. Артёму не закрывали доступ. Не отключали его от мира. Не признавали недееспособным. Просто предлагали сделать его присутствие немного тише.

Лена поставила стакан на подоконник, так и не попробовав кофе.

Под письмом была кнопка: «Согласовать рекомендованный режим».

Рядом — «Запросить разъяснение».

Она нажала вторую.

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

Лена тихо выругалась.

Пять дней на вопрос.

Ноль дней на их право действовать.

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

Лена скопировала три абзаца в отдельный файл и подписала: «карта давления».

Потом добавила ещё строку: «Они не отключают. Они делают его дороже для самого себя».

На экране рядом с коридором сменился статус капсульной палаты Артёма: «Стабильно».

Лена смотрела на это слово с такой же злостью, с какой Талия смотрела на «мягкое отклонение торговой связности».

Стабильно не значило хорошо.

Стабильно значило: система довольна тем, как ты лежишь.

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

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

«Оператор предлагает мягкое снижение стимулов. Обосновывают твоей активностью в конфликтных фракционных взаимодействиях. Формулировки опасные. Не соглашалась. Запросила разъяснение. Они оставили себе право временных мер».

Артём перечитал.

Конфликтные фракционные взаимодействия.

Лекарь продала мазь. Караван купил хлеб. Кузнец починил колесо. Пекарь получил проверку. Риану задержали ученичество. И где-то за пределами игры оператор капсулы уже готовил снижение стимулов, как будто тело Артёма тоже было торговым маршрутом, на котором можно поднять тариф.

Он отправил короткий ответ:

«Не подписывай. Собери связь с игровыми событиями. Особенно формулировки про репутационную среду».

Ответ Лены пришёл почти сразу:

«Уже собираю. И перестань писать так, будто ты дело, а не человек».

Артём закрыл канал.

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

— Продолжим, — сказал он.

Голос прозвучал ровно.

Северьян кивнул.

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

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

— Удивительно грубо и почти точно, — сказал Северьян.

Артём вывел рядом два профиля Талии.

Первый — публичный.

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

Второй — скрытый.

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

— Они построили второй портрет человека, — сказал Артём. — Первый для неё. Второй для тех, кто решает её жизнь.

Нокс медленно кивнул.

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

— Хорошая система давления заставляет жертву сомневаться в арифметике, — сказал Северьян.

Артём посмотрел на него.

— Это твоя фраза?

— Нет. Вывод из наблюдений.

— Запиши.

— В доказательный реестр?

— В отдельный. Без названия пока.

Северьян сделал пометку.

Артём снова открыл ReputationDebt. Значение скрывалось, но после полного связывания случаев Система дала ещё один обрывок.

Debt Accrual Condition: unjustified adverse modificationReview Trigger: threshold not metCurrent Relevance: negligible

Незначительно.

Так называлась боль, если смотреть на неё с высоты фракционного баланса.

Талия платила больше. Брам ругался у портала. Марн покупал уголь без скидки. Сольвей терпела проверку склада. Риан ждал ручного решения по ученичеству. А где-то в глубине мира это было «незначительно».

— Нужен способ фиксировать каждый малый вред так, чтобы он не растворялся, — сказал Артём.

— Реестр микросанкций, — предложил Северьян.

— Нет. Слово «санкция» они оспорят.

Нокс поднял палец.

— «Ненормальные ценовые отклонения после нейтральных сделок».

— Слишком длинно, — сказал Северьян.

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

Артём задумался.

— «Реестр невидимых штрафов».

Нокс усмехнулся.

— Звучит как то, за что меня забанят на форуме.

— Значит, подходит.

Северьян открыл новый контрактный раздел.

— Реестр требует источники данных.

— Контракты данжа. Добровольные сообщения участников. Сравнение с контрольными субъектами. История тарифов. Поставочные условия. Отказы и задержки.

— Публичность?

Артём вспомнил условие Талии.

— Только агрегированные данные без имён, пока участник не даст согласие.

Северьян замер на половине записи.

— Это уменьшит доказательную силу.

— Увеличит шанс, что люди вообще придут.

— Системе важнее персональные логи.

— Людям важнее не стать мишенью.

Нокс тихо сказал:

— А вот это уже новый рынок.

Артём посмотрел на него.

— Не рынок.

— Всё рынок, если достаточно долго живёт. Вопрос только, что ты разрешишь продавать. Страх? Защиту? Данные? Молчание? Доступ к правде?

— Пока мы ничего не продаём.

— Пока.

Слово осталось в зале, как заноза.

К вечеру Реестр невидимых штрафов получил первые одиннадцать записей.

Не публичных. Не обвинительных. Сырых.

Талия Рун: арендная корректировка, поставочная предоплата, лицензионная задержка, учебная проверка.

Брам Железная Ось: портальный тариф.

Марн-кузнец: отмена угольной скидки.

Сольвей-пекарь: складская проверка.

Игрок-грузчик: депозит хранения.

Алхимик: снижение видимости лота.

Ремесленник гвоздей: срыв коалиционного заказа.

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

Система аккуратно принимала записи.

Каждая строка была мала.

Каждая почти ничего не значила.

И после каждой в закрытом слое Коалиции едва заметно менялся параметр, который Система всё ещё не хотела показывать полностью.

ReputationDebt: <0.01%

На третьем пересчёте Артём заметил микросдвиг в округлении. Не значение. Тень значения.

Северьян заметил тоже.

— Рост подтверждён.

Нокс потёр лицо ладонями.

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

Артём не ответил сразу.

Потому что Нокс был прав.

Не полностью. Но достаточно, чтобы фраза зацепилась.

— Поэтому сначала защита, — сказал Артём. — Потом масштаб.

Северьян поднял одну бровь.

— Масштаб без защиты эффективнее для роста долга.

— Я знаю.

— Тогда вы сознательно выбираете более медленную стратегию.

— Да.

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

— Надолго тебя хватит?

— Проверим.

— Плохой ответ.

— Честный.

В этот момент пришло новое уведомление.

Не из лавки. Не из портала. Не из гильдии.

Из учебного реестра Веллара.

Заявка Риана Руна, сына лекаря Талии Рун, получила новый статус.

ApprenticeshipReview: Suspended pending household association clarity

Ручная проверка стала приостановкой.

Талия ещё не видела уведомление. Или уже видела и стояла в лавке перед сыном, выбирая слова, которые не сломают ему лицо.

Артём медленно закрыл все лишние окна. Оставил только строку по Риану.

Внизу, почти незаметно, Система добавила ещё одну служебную отметку:

Adverse modification detectedJustifiedHostilityScore: 0.000ReputationDebt relevance: negligible

Незначительно.

Артём коснулся строки, и впервые скрытый параметр не отказал полностью.

Он открылся на долю, как глаз под тяжёлым веком.

ReputationDebt: 0.006% of InversionThreshold

Почти ничто.

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

Но теперь это было число.

А число можно было растить.

Можно было доказывать.

Можно было обратить против тех, кто привык делать наказание невидимым.

Артём смотрел на 0.006% и не позволял себе радоваться.

За этой дробью стоял мальчик, которому только что объяснили, что мазь его матери стала семейной неясностью.

Система вывела последнюю строку без запроса:

Faction Conduct Review unavailable until threshold proximity increases

Северьян тихо произнёс:

— Порог существует.

Нокс добавил:

— И дорога к нему вымощена чужими счетами.

Артём закрыл интерфейс.

— Тогда начнём с того, что оплатим не счета. Защитим людей.

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

На другом конце Веллара Талия Рун получила уведомление об ученичестве сына.

Она не заплакала. Не разбила банку. Не сорвала вывеску.

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

Рядом должно было хватить места для чужих.