Создать книгу

← Все примеры · Баг в титрах · глава 9 из 14

Скачать пример: EPUBFB2PDF
Читает голос вашего устройства. Студийная аудиокнига — скоро.

Глава 9. Босс-файт не по сценарию

Рука Скрыт коснулась размытого силуэта — и мир лопнул. Глыба даже не успел крикнуть.

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

Арена.

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

— Где мы? — ДД уже стояла, сжимая две колбы. Розовые волосы дыбом.

— В жопе, — сказал Глыба. — В главной жопе этого мира.

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

Разработчик.

1

— Entity «Developer» loaded, — произнесла Система. — Build: deprecated. Status: active. Warning: narrative armor engaged.

— Какая броня? — ДД швырнула колбу.

Огненный шар сорвался с её руки, расцвёл в воздухе и... исчез. Просто исчез. Даже звука не было. Только строчка в воздухе: «Error 418: Iʼm a teapot. Damage redirected.»

— Какого...

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

— Он вернул урон, — тихо сказала Скрыт. — Не отразил. Вернул.

Опора уже листал что-то в воздухе, шевеля губами.

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

— Опора! — рявкнул Глыба. — Короче!

— Мы не можем его ударить. Он не регистрирует наши атаки как валидные. Потому что мы — не часть его скрипта.

Разработчик поднял руку. В ладони зажглась строка: «NullReferenceException: object reference not set». Он метнул её в Опору.

— Барьер!

2

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

— Он патчит мою защиту! — голос Опоры сорвался в фальцет. — Он применяет хотфиксы прямо во время боя!

— Читер! — заорала ДД. — Админский абуз! Я жалобу напишу!

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

Он взмахнул рукой.

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

— Рассредоточились! — Глыба дёрнулся вправо. Шип ударил в плечо.

«Броня: -0. ХП: -0. Статус: narrative_damage_received.»

— Что за...

3

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

— Он не атакует нас по-честному, — сказала Скрыт. — Он пишет сценарий, в котором мы проигрываем.

— И мы проигрываем, — сказал Глыба. — Уже.

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

— У него нет хитбокса, — сказала ДД. — Вообще.

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

Над головой Разработчика висела полоска. Только это была не ХП-шкала. Строка состояния. Одна-единственная. «Статус: Сюжетная броня. Нарратив: неизбежное поражение игроков».

— Это финальный босс-файт, — сказал Глыба. — И мы в нём статисты.

4

Разработчик поднял обе руки. С них сорвались сразу десятки строк. «Segmentation fault», «Buffer overflow», «Stack overflow». Они летели, как копья. Опора выставил три барьера. Первый вспыхнул и погас. Второй обновился. Третий — его тут же переписали.

— Не могу! — Опора попятился. — Он правит быстрее меня!

Строка ударила его в грудь. Никакой крови. Просто надпись: «Ошибка компиляции: персонаж не определён». Опора упал на колени. Его руки начали мерцать.

— Я... теряю текстуры...

— Держись! — ДД подбежала, схватила его за плечо. — Не смей исчезать!

Глыба смотрел на Разработчика. На его курсоры-глаза. На его тело из удалённого кода. На броню, которую нельзя пробить.

Потому что битва уже написана.

И тут он понял. Не как в дурацких книгах — «и в этот момент он понял». Нет. Просто факт. Холодный, как отладочная консоль.

Артефакт Тавтологий. На стриме они зачитали строки с него — и активировали перенос. Строки. Слова. А если...

— ДД! — рявкнул он. — То заклинание! Которое на стриме!

— Что?!

— Артефакт! Мы читали его! Помнишь слова?

5

ДД моргнула.

— Ну... «Инитиум финис эст»? Начало — это конец?

— Именно! — Глыба вскочил. — Мы читали его вперёд. И попали сюда. А что, если прочесть...

— ...задом наперёд, — закончила Скрыт. — Ты гений, Глыба.

— Знаю. Но зацените идею.

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

— В круг! — скомандовал Глыба. — Быстро! И синхронно! Как на стриме!

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

— Три... Два...

Разработчик взревел. Нет — издал звук. Как модем. Как диалап. Как всё, что исчезло, но осталось в кэше.

— Один!

И они произнесли. Четыре голоса слились в один:

— Тсэ синиф муитини!

Мир схлопнулся.

Ни тьмы. Ни света. Просто — ничего. Пустота. А потом — строка.

«Compiling...»

Медленно. Как на древнем компьютере.

«Recompiling...»

«Recompiling done. New world generated.»

6

Глыба открыл глаза. И увидел потолок. Обычный. Белый. С трещиной в левом углу. Он знал эту трещину. Он смотрел на неё каждый вечер перед сном.

Он сел. Диван. Тот самый. Обшарпанный, с продавленной подушкой. Стол. Ноутбук. Кружка с остывшим кофе. Запах старой квартиры. Пыль на мониторе.

Он был дома.

— Получилось, — прошептал он. Голос звучал как обычно. Не оркский. Человеческий.

Он поднял руку. Пять пальцев. Обычных. Не зелёных. Не здоровенных.

— Мы выбрались.

В наушниках на столе что-то зашипело. Он потянулся к ним — и замер.

Перед глазами всплыла строка.

HP: 78/100.

— Что?

Он моргнул. Строка не исчезла.

Status: Alive. Quest: ???

— Нет. Нет-нет-нет.

Он вскочил. Ноутбук. Включить. Проверить.

Экран загорелся. Там был рабочий стол. Обычные иконки. Браузер. Игры. Папка «Работа». Всё нормально. Всё как всегда.

Кроме одного.

В правом нижнем углу висело окно. Маленькое. Как из старой версии Windows.

Чат группы «Вечный ран» — онлайн.

Четыре ника. Глыба. Опора. ДД. Скрыт.

И сообщение.

Опора: Вы это видите?

ДД: АААААААААА

Скрыт: Да.

7

Глыба медленно сел обратно на диван.

— Мы всё ещё там, — сказал он вслух.

HP: 78/100.

Он смотрел на монитор. А из монитора на него смотрел он сам. Только в другом окне.

И на том «нём» в другом окне был интерфейс.

И в том интерфейсе — ещё одно окно.

И в том окне — ещё один он.

Бесконечная рекурсия.

8

Понравилось?

Напишем такую же историю, но свою: с вашими героями, событиями и финалом.

Хочу такую же, но свою