«Я не как ты, с кодом ворочать, — объяснял Михалыч, разбирая на части странное устройство, напоминавшее паяльник, скрещенный с магическим жезлом. — Я чувствую, где система течёт. Где напряжение в сети слишком высокое, где логика зациклилась. Могу пошептаться с железками».
Он провел своим гаечным ключом по висящему проводу. Провод мягко засветился, и Леха увидел, как по нему побежали потоки данных — словно кровь по вене.
«Вот смотри, — Михалыч ткнул в один из участков. — Здесь, на райцентре, постоянный лаг. Каждые пятнадцать минут по местному времени всё на секунду замирает. Я поначалу думал, глюк видеокарты. Ан нет — это процесс какой-то тяжёлый на сервере запускается. Сборщик мусора, что ли?»
Леха с интересом наблюдал. Его сисадминский мозг жадно впитывал информацию. Мир Аэрты был не просто игрой; это была гигантская, разросшаяся система, работающая на каком-то неизвестном ему движке. И она была полна уязвимостей.
«А можно посмотреть логи?» — спросил Леха.
Михалыч хмыкнул. «Логи? Сынок, тут даже события нормально не логируются. Смотри сам».
Он повел Леху к дальней стене, где висел большой, треснувший экран. На нем мелькали хаотичные строки.
[WARNING]: NPC_ID_2341 пытается войти в несуществующую дверь.
[ERROR]: Физический движок не справился с коллайдером объекта "КАМЕНЬ_102". Объект удален.
[CRITICAL]: Обнаружена утечка памяти в секторе 7G. Требуется перезагрузка.
[INFO]: Погода изменена на "Солнечно". (Ошибка: Текстура дождя все равно загружена)
Леха почувствовал знакомое раздражение. Такой бардак в логах он бы не потерпел на своей работе. Он сконцентрировался и мысленно ввел команду:
«grep -i "critical\|error" /var/log/aerta/world.log | tail -n 20»
Экран мигнул, и строки отсортировались, оставив только критические ошибки и предупреждения. Михалыч свистнул.
«Вот это да... Уважаю. Я по полдня вручную их выискиваю».
Внезапно среди ошибок Леха заметил повторяющуюся строку:
[CRITICAL]: Процесс "OBSERVER" потребляет 98% ресурсов ЦП. Принудительное завершение невозможно.
«А это что?» — спросил он, показывая на строку.
Михалыч помрачнел. «А это, сынок, наш смотритель. Глаз Валерии, я полагаю. Он висит где-то на окраине Леса Безымянного, в особой зоне. Раз в сутки активируется и начинает сканировать мир. Ищет аномалии. Тех, кто слишком сильно выделяется. Вроде нас».
В этот момент вернулась Мариванна. Она принесла не только травы, но и странные, мерцающие ягоды.
«На, покушайте, — сказала она, раздавая им по горсти. — Это ягодки памяти. Местные говорят, они воспоминания укрепляют. А то я тут одного парня встретила... так на меня посмотрел, как мой Кolenka...»
Голос ее дрогнул. Она отвернулась, принимаясь наводить порядок в своем углу, заставленными склянками с зельями.
Леха посмотрел на ягоду в своей руке.
[ПРЕДМЕТ: ЯГОДА ПАМЯТИ]
[КАЧЕСТВО: ОБЫЧНОЕ]
[ЭФФЕКТ: ВОССТАНАВЛИВАЕТ 10 MP, НА 30 СЕКУНД ПОВЫШАЕТ ИНТЕЛЛЕКТ НА 2]
[ОСОБЫЙ ЭФФЕКТ: 5% ШАНС ВЫЗВАТЬ ФЛЕШБЭК]
Он съел ягоду. Эффект был мгновенным — ментальный туман, застилавший его сознание с момента попадания сюда, слегка рассеялся. И вдруг, совершенно неожиданно, перед его глазами промелькнул образ — он видел себя сидящим за монитором, а на стене висел календарь с датой, которая была всего неделей назад. Он почувствовал вкус настоящего кофе...
Эффект прошел. Леха снова был в низкополигональном убежище. Но щемящее чувство тоски по дому осталось.
«Сильный у вас дар, Мариванна, — тихо сказал Леха. — Вы не просто травы собираете. Вы... чувствуете душу системы. Ее боль».
Мариванна обернулась. В ее глазах стояли пиксельные слезы.
«Здесь всё болит, сынок. Каждый камень, каждое дерево. Они же живые, они же должны расти, цвести... а они застыли. Как на картинке. И люди здесь... все потерянные. Как я».
Михалыч тяжело вздохнул. «Вот и живём, латаем дыры. Я — железо, она — души, а ты... — он посмотрел на Леху, — ты, выходит, будешь логику чинить. Программист наш штатный».
Леха кивнул. Первый шок прошел. Теперь перед ним стояла задача. Сложная, безумная, но задача.
«Ладно, — сказал он, вставая. — Давайте составим план. Сначала — карта. Потом — ресурсы. Потом — поиск других, таких же, как мы. И главное... нужно понять, как работает этот «ОБСЕРВЕР». Пока он следит, любое наше действие может быть замечено».
Михалыч одобрительно хмыкнул. «Дельное предложение. Только с картой беда — она тут вся в багах. Целые районы накладываются друг на друга».
«Значит, сделаем свою, — решительно заявил Леха. — Через консоль. Команда «map» должна выводить координаты. А ты, Михалыч, сможешь ощущать, где зоны нестабильности».