Александр Бурнашев
РЕЗОНАНС: Изломанный мир

Разница между сбоем и судьбой —

только в том, успеешь ли ты

нажать Esc.

Глава 0. Пролог

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

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

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

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

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

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

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

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

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

— У кого-то фризы? — спросил один из гильдии.

— Нет, — ответил он, хотя фриз был — просто не в игре, а в нём самом. Странное узнавание, похожее на дежавю, только наоборот: не «я это уже видел», а «это видит меня».

Он списал на усталость. Продолжил идти.

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

Экран моргнул.

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

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

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

Открыл глаза.

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

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

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

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

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

Это была не игра.

Он остался сидеть ещё немного — не потому, что не мог подняться, а потому, что встать значило признать: подниматься придётся уже здесь, а не в кресле у себя дома. Тарелка с недоеденным ужином, наверное, всё ещё стояла на столе. Кто-то из гильдии, наверное, сейчас писал в чат что-то вроде «он опять завис» — и был бы, по-своему, прав.

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

Он не знал ещё, что дорога туда — не та, которую он помнил.

Глава 1. Серые пределы

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

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

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

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

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

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

— Из порченых мест идёшь? — спросил он вместо приветствия.

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

— Не знаю, — сказал он честно. — Я не отсюда.

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

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

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

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

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

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

— Вот здесь, — сказал он, показывая, стараясь, чтобы это не прозвучало как поучение. — Этот завиток. Ты повторяешь его дважды подряд. Может, если один раз?

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

— Так делали всегда, — сказала она вместо этого, уже тише. — Ещё до меня. Мать так учила.

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

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

Знак держался неделю. Впервые за всё время.

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

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

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

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

Глава 2. Лишний завиток

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

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

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

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

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

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

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

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

— А смысл в этом какой? Ну, чинишь ты эти их программы. Кому от этого легче?

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

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

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

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

Это тоже было своего рода разговором. Он это оценил.

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

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

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

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