Свалка будто забыла про него.
Она больше не пыталась его удалить. Но и не звала обратно. Не запускала ивенты, не активировала спаун-зоны, не подкидывала монстров для разминки.
Он ел, когда вспоминал, что голод — это параметр, не чувство. Спал — по остаточной логике. Двигался, потому что стоять было опаснее: местность под ним могла оказаться недозагруженной.
Он не выбирал маршрут. Он был маршрутом.
Иногда в его инвентаре появлялись фразы. Он не помнил, чтобы произносил их. Не писал. Не сохранял. Они просто… всплывали. Как автокэш в консоли администратора.
«Сегодня тишина была громче, чем лаг.»
«Карта не загружается — возможно, потому что я уже на краю.»
«Никто не приходит туда, где не начинается квест.»
И Квак. Конечно же, Квак.
Питомец вел себя иначе. Он больше не шарахался от графических артефактов, не пугался прыжков геометрии, не царапал землю при резкой смене освещения.
Теперь он предвидел баги.
Однажды Макс шел по известному участку — старый маршрут, проверенный, с метками. Квак вдруг дернулся, остановился, фыркнул и отступил. Через пару секунд из земли вылез дефрагментатор — с перевернутыми координатами и без ориентации по оси Z. Он закрутился, вспыхнул и самоуничтожился, даже не заметив Макса.
— Ты теперь кто у нас? — пробормотал тот. — Бродячий патч?
Квак не ответил. Он вообще стал молчалив. Только время от времени медленно поднимал голову, будто улавливал сигналы, которые человек не слышит.
Макс перестал считать дни.
Раньше он вырезал палочки на стене укрытия — той самой странной конструкции, которую нельзя было назвать ни домом, ни базой, ни убежищем. Он строил ее не из блоков, а из моментов, из тихих действий, из желания просто не провалиться сквозь мир.
Теперь палочки исчезали. То ли от влаги, то ли от изменений патча. А может, сам мир понемногу стирал все, что не обновляется.
Вместо дней Макс стал считать… тишину.
Он сидел у багового костра — не того, что дает плюс к восстановлению, а того, который вспыхивал только в случае логической ошибки взаимодействия частиц. Искры там были не настоящие, но грели. Или он себе это внушил.
Квак ловил эти искры лапой. А потом замер. Медленно обернулся. Уставился в темноту.
— Что там? — спросил Макс, но уже знал ответ.
В темноте было ничего. Именно это и пугало.
Он попытался вызвать лог. Не интерфейс, не команду — именно лог, тот самый, который вел артефакт. В старые дни, когда дни еще считались, он появлялся сразу: [log::новая запись] — с датой, координатами, иногда даже с иронией.
Сейчас — ничего.
Только три строчки, всплывшие тускло, как ошибки на забытой консоли:
[log::статус: неактивен]
[обновление: не запланировано]
[поток событий: отсутствует]
Макс застыл. Не как персонаж. Как мысль, не исполненная, не привязанная ни к одному вызову. Как баг, про который забыли и не удалили.
Он чувствовал течение времени — но в логах оно не отражалось.
Он видел, как Квак двигается рывками, будто кто-то забыл включить интерполяцию. Питомец вел себя все страннее — словно баги не приходили, а уже были здесь, просто замаскированы под будущее.
Макс наклонился ближе к баговому костру. И вдруг понял:
"Если лог молчит — значит, меня не пишут.
А если не пишут… значит, я не нужен?"
Он нащупал в кармане артефакт.
Тот самый — с фрагментом интерфейса, глючный якорь, некогда обнаруженный у северной триггерной зоны. В слотах он отображался как:
[item::ярлык_неизвестен]
[status::unsaved]
Он часто держал его в руках, но не понимал зачем. Как будто предмет ждал чего-то — команды, сигнала, может, признания. В последние дни артефакт начал обновляться сам.
Теперь там мигала строка:
[unsaved_entity]
[temp_file::retained]
— Я… временный файл? — выдохнул он.
Артефакт вспыхнул мягко. Без угрозы. Без запроса.
Как будто подтвердил.
Макс провел рядом рукой. Интерфейс дрогнул. Символы сдвинулись, и появились новые строчки:
🟠 [Артефакт: запись активна]
🟢 [Наблюдение установлено / Объект: М_##]
— Кто ты? — спросил он.
Никакого ответа. Но строка осталась. Не исчезла.
И артефакт продолжал мигать.
…Он смотрел, как Квак обнюхивает невидимую границу мира. Ту, что когда-то моргала опасностью, а теперь просто не обновлялась. Как будто за ней не было ничего. Или что-то, на что у скриптов не хватало фантазии.
Макс хрустнул пальцами, вытер ладони о штаны и сел ближе к костру. Искры с багами танцевали над огнем, срываясь в воздух и разваливаясь на пиксели. Тихо. Даже слишком.
Он вытащил артефакт. Тот равнодушно мигал, мол, делай, что хочешь.
— А что, если… — сказал он в пустоту, — если не сбегать? А сохраниться?
Квак чихнул, как будто идея ему понравилась. Или пыль попала.
Макс усмехнулся. Он не был игроком — и фиг с ним. Но если он и дальше будет вот так торчать между строк, то рано или поздно его просто сотрут. Без логов. Без багрепорта. Без следа.
Он не хотел уйти красиво. Он хотел остаться криво.
И если для этого надо выдрать у мира контрольную точку — он пойдет и найдет ее. Где бы она ни была: в сбойной капсуле, в архивном интерфейсе, в забытом секторе с заглушенными координатами.
Он встанет, пройдет туда, ткнет пальцем — и скажет:
— Вот тут. Вот здесь. Сохраняй.
Он поднялся.
— Пошли, Квак. Пора искать мою чекпоинт.
И мир, кажется, на секунду дрогнул.
Глава 9«Где точка сохранения?»
Макс сидел на гравийном склоне, уткнувшись лбом в колени. Сквозь треск в ухе доносился тихий вой системы — то ли радиошум, то ли остаточное эхо чьей-то неудавшейся команды. За спиной хрустел Квак, будто пытался разгрести обломки. Впереди тянулся пустой ландшафт, исполосованный серыми прожилками багов. Глючный горизонт плавал, как мятая пленка.
Он не знал, куда идти. Впервые за все время.
Не потому что не было пути — вон, дорожка влево, остатки платформы вправо, снизу из разлома клубился пар. Просто… все казалось одинаково бессмысленным. Как двигаться, если ты не зафиксирован? Если каждый шаг может быть последним, и никто не скажет: «Ты дошел»?
Он провел ладонью по интерфейсу — пустота. Панель откликнулась через секунду, дернулась, мигнула белым и исчезла, как будто передумала существовать. Лог молчал.
Он никогда раньше не думал об этом прямо. О том, что здесь — в этой корявой, зависающей, местами живой, местами дохлой системе — просто некуда сохраниться.
В обычной игре он бы давно ткнул F5, или нырнул в сейв-зону. Даже в самых хардкорных симуляторах были какие-то чекпойнты, механизмы отката, автофикс — что-то, что говорит тебе: ты теперь здесь.
А здесь — ничего. Он смотрел на собственные руки, потрескавшуюся текстуру куртки, баг в углу зрения — и понимал: если он сейчас исчезнет, ничего не останется.
Ни строки. Ни картинки. Ни ошибки.
Он наклонился вперед, пытаясь вспомнить — а была ли вообще хоть раз команда «сохранить»? Может, где-то мелькала в панели, может, в глубинах интерфейса… Но нет. Только фрагменты. Только баги, которые запоминали не его, а сам сбой.
— Как вообще выглядит «точка сохранения» в этом месте? — пробормотал он вслух. Голос дрожал.
Квак пискнул где-то сбоку, но ответа не дал. Он тоже не знал.
Макс потер виски. Пытаясь думать. Не действовать — думать. Странное, почти забытое состояние.
Что нужно, чтобы сохраниться? Не технически, не как в меню. А по-настоящему. Чтобы остаться в системе, даже если она тебя не признает.
Может, объект? Файл? Папка, в которую можно записать себя? Может, какое-то устройство? Или команда?
А если команда — то где ее искать?
Он попытался представить: если бы система действительно захотела сохранить его, как она бы это сделала? Создала бы копию? Архив? Снапшот?
Снапшот кого?
Себя. Вот в чем проблема. Он не зарегистрирован. Не подтвержден. Не описан. Система не знает, кто он такой. Нет ни логина, ни ID, ни даже статуса. Только тень.
Значит, чтобы сохраниться… нужно сначала быть кем-то.
— Вот дерьмо, — прошептал он. — Мне даже некуда сохраняться.
И вдруг понял: не просто нет кнопки «Сохранить».
Нет ячейки.
Он не вписан.
Он резко поднялся. Прислушался. Воздух вокруг будто ждал, будто завис в паузе между кадрами.
Квак подпрыгнул и ткнулся носом в левый ботинок. Потом еще раз.
— Что, ты что-то знаешь? — Макс хрипло усмехнулся. — Или просто хочешь, чтобы я не ныл?
Квак пискнул. Потом развернулся — и медленно пошел вперед, петляя между глюками, будто чуял маршрут, о котором не может сказать вслух.
Макс посмотрел ему вслед. И пошел за ним.
Перед ним простирался лес. Ну, как лес… С натяжкой. Скорее, заготовка под лес. То, что в редакторе уровней подписывают как forest_placeholder_v3_finalfinal_fix2. Текстуры — недогружены, деревья местами прорисованы до половины, в кронах зияли квадраты «ошибка материала», а туман гулял независимо от физики — по синусоиде, как пьяный питон.
Макс постоял на краю локации, оглядел полупрозрачные ели, одну из которых явно кто-то масштабировал через ж…один осмысленный параметр, и шагнул вперед.
— Если где и прятать интерфейсный хлам, то в такой дыре. Раньше сюда бы тестеров послали. А сейчас — меня.
Квак, как всегда, возник сзади — молча, как баг в протоколе спауна. Ни шороха, ни вспышки, ни характерного системного «вжух». Просто появился. Макс вздрогнул, обернулся на полшага, но уже знал, кто это. Или что.
— Сопровождение начато, — сообщил Квак.
Голос — ровный, сухой, как if-else без отступов. Не механический — скорее, недописанный. Как будто кто-то сгенерировал текст в TTS-движке, но на середине отменил рендер.