
Полная версия:
Игрушка жестокого мажора. Ты назвал меня мусором, а теперь без меня не победишь!
Вечер в комнате отдыха команды «Kings» был адом. Кондиционер гудел на пределе, охлаждая перегретые серверы и еще более перегретые эго игроков. Я сидела в углу, на жестком пластиковом стуле, перед своим ноутбуком. Экран светился синевой, отражаясь в моих глазах, воспаленных от слез, которых я не позволила себе пролить.
Денис подошел тихо, как призрак. Я ждала, что он тоже спросит про Максима. После столовой даже от знакомого голоса хотелось отвернуться. Но бывший про-игрок, теперь техподдержщик, смотрел на мой ноутбук, а не на куртку, и держал стакан воды.
— Ты в порядке? — спросил он, ставя передо мной стакан воды.
— Спроси у Интернета, — горько ответила я.
Денис молча положил рядом планшет. Экран светился уведомлениями. Видео Арины набрало сто тысяч просмотров за два часа. Заголовок: «Король и его игрушка: эксклюзивный контент».
Я открыла комментарии. Руки дрожали, но я заставила себя читать.
«Геймерша-шлюха»
«Стипендия за постель? Ну ну, наука развивается»
«Да она даже правила игры не знает, зачем она Максиму?»
«Удали её аккаунт, она позорит команду»
Воду, которую принёс Денис, пить расхотелось. Прочитала последнее «удали» и потянулась закрыть комментарии — потом заметила спор об уроне. Там хотя бы были числа. Увеличила окно кода поверх чата. Не спряталась совсем, только заслонила эти рожицы строками, которые можно было проверить.
Focus on the logic. Logic doesn't lie. People do.
Я начала искать баг в механике, которую обсуждали в комментариях. Там, среди мусора, кто-то верно заметил ошибку в расчетах урона критических ударов. Если этот баг исправить, баланс рухнет. Команда Максима проиграла бы следующий матч.
Я нашла решение. Красивое, элегантное, математически безупречное. Я могла бы написать патч. Могла бы спасти репутацию команды. Но я не могла.
Access denied.
Мой доступ к серверам был заблокирован после инцидента в столовой. Максим знал, что я найду способ ответить. Поэтому он закрыл двери. Я была загнана в угол собственным умом.
Дверь комнаты отдыха распахнулась. Максим вошел, не здороваясь. Его куртка пахла дождем и сигаретами. Он подошел к моему столу, глядя на экран ноутбука.
— Что ты делаешь? — спросил он холодно.
— Работаю, — соврала я, сворачивая окно с кодом. Слишком поздно. Он видел.
Максим поднял ноутбук со стола, не дав мне закрыть крышку. Я инстинктивно потянулась за ним, но он отступил назад, прижав технику к груди.
— Денис, — окликнул Максим. Техподдержщик вздрогнул. — Объясни своей помощнице, почему она анализирует чужой матч через твой личный аккаунт. Это нарушение протокола безопасности.
— Я... я просто проверял логи, — пробормотал Денис, опуская голову.
— Лжи мне еще раз, и ты вылетишь, — отрезал Максим. Он повернулся ко мне. Его лицо было бесстрастным, но челюсть сжалась так сильно, что под кожей проступили желваки. — Ты нарушила условия. Ты шпионишь.
— Шпионю?! — Впервые за весь день внутри что-то оборвалось. Ненависть, копившаяся с утра, выплеснулась наружу. Я встала, уперев руки в стол, и подалась к нему, хотя ростом была ниже на голову. — Ты трус, Максим! Ты прячешься за спинами фанатов! Ты позволяешь Арине делать из меня посмешище ради дешевых лайков, а сам боишься признаться, что без моего анализа ты будешь играть как слепой котенок!
Тишина стала оглушающей. Другие игроки замерли за своими мониторами. Денис побледнел.
Максим не ударил меня. Не повысил голос. Он просто смотрел на меня. Долго. Внимательно. Так, будто изучал новую сложную задачу, которую никак не мог решить.
Его глаза изменились. Гнев сменился чем-то другим. Интересом? Раздражением? Голодом?
— Ты права, — сказал он тихо.
Я моргнула, сбившись с ритма. Это не входило в сценарий наказания.
Максим поставил ноутбук обратно на стол. Медленно. Аккуратно.
— Значит, напиши разбор нашего проигрыша прошлой недели. До утра. Каждую секунду тайминга, каждую ошибку позиционирования. Если хоть одна цифра будет неверной, я передам комиссии запись того, как ты использовала служебные ресурсы для личных целей. Ты понимаешь?
— Да, — выдохнула я.
— Тогда работай. И перестань звонить родителям. Они уже видели новости. Им лучше не знать, что их дочь — игрушка капитана.
Он ушел, хлопнув дверью. Я осталась стоять, чувствуя, как ноги подгибаются. Телефон действительно вибрировал в кармане: мама, папа, бабушка. Десятки сообщений. Паника. Вопросы.
Я выключила звук. Села. Открыла документ.
Согласилась писать отчёт. В этом не было ничего добровольного, кроме того, как именно я его напишу. Маме отвечу позже — сейчас её голос окончательно добил бы меня. Открыла первый раунд и начала отмечать ошибки без скидок на капитана. Если ему нужен анализ, получит анализ. С моей фамилией под ним.
Ночь тянулась бесконечно. Кофе остыл, превращаясь в горькую жижу. Глаза болели от напряжения. Писала, стирала, переписывала. Ошибку в центре карты отметила первой, потом вернулась к заходу слева: там капитан торопился уже за две секунды до драки.
Под утро, когда небо за окном киберзала начало светлеть с серого на грязно-розовый, я закончила отчет. Пальцы немели. Я случайно кликнула мышкой не туда. Черновик с жесткой, личной критикой стиля игры самого Максима — его импульсивности, его зависимости от агрессивных рисков — улетел в общий чат команды.
Я замерла. Сердце пропустило удар.
Чат молчал три минуты. Потом четыре.
На пятой минуте пришло сообщение от пользователя King.
«Я прочитал. Ты права во всем. Приходи в зал в 6 утра.»
Сообщение просигналило, когда я уже ложилась спать. Перечитала его трижды: приказ, замаскированный под приглашение. Заснуть не получилось — вставала, пока за окном ещё темнело, и шла через пустой двор к корпусу, прокручивая в голове вопросы, которые так и не решилась задать.
Киберзал был погружен в полумрак. Горел только один монитор, отбрасывая синий свет на спинку кресла, в котором сидел Максим. Он не обернулся, когда я вошла.
— Арина удалит видео сегодня днем, — сказал он в темноту. Его голос звучал хрипло, невыспавшимся.
Я остановилась в паре метров от него.
— Почему?
— Потому что мне нужен кто-то, кто видит то, чего не вижу я.
Он наконец повернулся. В свете монитора его глаза выглядели не враждебно, а голодно. Пустыми и одновременно переполненными чем-то темным.
— Ты теперь моя тень, Полина. И тени нельзя бояться темноты.
Удалит видео. Эту фразу я повторила про себя, пока он говорил о тени. Уже тянулась проверить телефон, хотя до дня ещё далеко. Потом услышала «моя» — и руку опустила. Хорошо, Максим. Но чужую тень ты сейчас просишь считать лучше тебя.
Сердце колотилось где-то в горле, отдавая тупой болью в висках. Я стояла перед турникетом серверной комнаты IT-центра, чувствуя себя не студенткой-стипендиаткой, а воровкой, которая пытается проскользнуть на кухню после закрытия ресторана. В кармане куртки лежал мой студенческий ID — единственная вещь, дающая мне право дышать этим стерильным воздухом.
Я приложила карту к считывателю. Красная лампочка мигнула так агрессивно, будто плевалась ядом. Звук был сухим и окончательным: «Access Denied».
— Ты тут лишняя, детка, — раздался ленивый голос слева.
Охранник ткнул пальцем в терминал. Обгрызенный ноготь почти закрывал мою фамилию. Телефон он так и держал в другой руке; ради меня даже не отвлёкся от ленты. После видео Арины это казалось особенно гадким. Он видел красный отказ, я видела свою фамилию — и ни одному из нас не требовалось спрашивать, кто распорядился.
Мои щеки вспыхнули жаром стыда. Хотелось провалиться сквозь линолеум. Но внутри, под слоем паники, шевельнулось что-то холодное и колючее. Страх. Не за себя. За данные. Без архивов матчей я не смогу доказать свою правоту Максиму. А если не смогу — меня отчислят. Тихо, без скандала, просто аннулируют стипендию и выставят за дверь общежития через три дня.
Я сделала вид, что сдаюсь. Опустила голову, развернулась и побрела по коридору, шаркая кедами. Шаг за шагом удалялась от турникета, пока не свернула за широкую бетонную колонну технического блока. Здесь пахло пылью и перегретым пластиком. Я спряталась в тени, прижимаясь спиной к холодной стене, и начала считать ритм работы сканеров у входа. Каждый цикл проверки доступа длился ровно четыре секунды. Четыре секунды тишины между звуками сигнализации.
Физический вход невозможен. Нужен цифровой ключ. Или кто-то, у кого есть этот ключ.
Глава 5
Из темноты соседнего прохода, где обычно валялись старые мониторы и обрезки кабелей, бесшумно вынырнул силуэт. Сердце пропустило удар. Я инстинктивно сжала кулаки, готовясь защищаться, но фигура не двигалась угрожающе. Она просто стояла, скрестив руки на груди.
Денис. Техподдержка. Тихий парень в растянутой серой толстовке, которого никто не замечал, потому что он умел быть частью мебели.
Он посмотрел на мои пустые руки, потом на турникет, потом снова на меня. Его глаза были темными и внимательными, как у совы, высматривающей мышь.
— Если будешь стоять здесь дольше минуты, придёт дежурный админ, — сказал он тихо, почти шепотом. Голос был ровным, без интонаций. — У тебя есть тридцать секунд, чтобы сказать, зачем тебе лог-файлы матча "Kings" против "Vipers".
Я замерла. Он уже видел, как меня выставили от команды. Теперь угадал ещё и матч. Неужели прочитал мой отчёт?
В голове вспыхнула картинка: экран ноутбука Максима в комнате отдыха, таймер раунда, критическая ошибка в использовании ультимативной способности персонажа. Я увидела её раньше всех.
— На третьей минуте и двадцати двух секундах, — выпалила я, глядя ему прямо в лицо, — герой Максима использовал скилл слишком рано. Тайминг сбился из-за лага в сети, но система зарегистрировала ошибку как человеческую. Это стоило им победы.
Денис моргнул. Один раз. Медленно. Он отвел взгляд от моего лица и посмотрел куда-то в пол, словно проверяя свои собственные воспоминания. Тишина затянулась. Я чувствовала, как пот стекает по спине, холодный и липкий.
— Ты права, — наконец произнес он. В его голосе появилось что-то новое. Не уважение, нет. Скорее, интерес хищника, который нашел необычную добычу. — Но прямой доступ я тебе не дам. Меня уволят.
— Тогда зачем ты вообще здесь? — спросила я резко. Раздражение прорвалось сквозь страх.
— Потому что ты единственный человек в этом здании, кто видит игру, а не картинки, — ответил Денис. Он сделал шаг ближе, понизив голос еще сильнее. — Есть сделка. Мой старый тестовый терминал в подвале. Он изолирован от основной сети, но имеет локальный кэш данных последних турниров. Я могу дать тебе туда зайти удаленно... или физически, если будешь осторожна. Но взамен ты починишь скрипт автоматизации рутинных задач, который висит уже неделю. Мне надоело вручную пересобирать логи каждый вечер.
Локальный кэш. Я зацепилась за эти два слова. Не нужно лезть на главный сервер, просить Максима или ждать, пока он передумает. А скрипт я хотя бы смогу открыть. Денис ждал ответа, и я впервые испугалась не предложения, а того, что он сейчас его заберёт.
— Согласна, — сказала я мгновенно. Ни секунды колебаний.
Денис кивнул и развернулся, жестом показывая следовать за ним. Мы шли молча, вниз по лестнице, миновав этаж с лабораториями, где обычно гудели серверы. Подвал встретил нас гулом вентиляторов и запахом озона. Комната была тесной, заваленной коробками с запчастями. Посреди хаоса стоял стол с единственным компьютером, экран которого светился синим в полумраке.
Денис сел на стул и включил терминал. Экран ожил, требуя авторизацию. Поле для ввода пароля мигало красным.
— Двухфакторная, — пробормотал он, начиная нервно собирать провода вокруг себя. — Привязка к телефону админа. Я не могу обойти это быстро. Нам нужно уйти, пока не пришёл админ...
Его паника была заразной. Я почувствовала, как кровь отлила от лица. Нет. Так дело не кончится.
Я перехватила мышку. Пальцы сами нашли знакомое положение. Память тела работала быстрее головы. Этот старый интерфейс входа я разбирала на практикуме. Он иногда пропускал запрос на подтверждение, если последовательность клавиш была нарушена специфическим образом. Это был грязный хак, уровень "студента второго курса", но он работал.
Быстрые движения. Enter. Пробел. Shift+Tab.
Экран мигнул. Курсор завис. Потом поле пароля исчезло, оставив лишь стандартное приглашение командной строки.
Денис перестал перебирать провода. Я не смотрела на него: боялась, что приглашение командной строки исчезнет, если отведу глаза. Вошли. Неужели вошли? Хотелось улыбнуться, но сначала нужно было забрать логи, ради которых мы сюда спустились.
— Ты только что взломала защиту уровня безопасности "Альфа", — сказал он одними губами.
— Я использовала дыру в коде, которую забыли залатать, — поправила я, чувствуя, как дрожат руки. — Давай файлы.
Он молча пододвинул мне флешку. Я воткнула ее в порт, и на экране побежали строчки загрузки архивов. Секунды тянулись, как часы. Каждый писк вентилятора казался сигналом тревоги.
И вдруг дверь распахнулась.
Резко, с грохотом, ударившись о стену. Свет из коридора ворвался в подвал, слепя глаза. На пороге стояла Арина. Ее идеально уложенные волосы блестели, дорогое платье подчеркивало статус дочери спонсора лиги. В руках она держала телефон, экран которого светился уведомлениями.
Она остановилась, осмотрев комнату. Взгляд скользнул по Денису, замершему с проводом в руке, и по мне, сидящей за терминалом.
— Что происходит? — спросила она холодно. В ее голосе не было удивления. Только расчет.
Денис среагировал мгновенно. Он резко дернул шнур питания монитора. Экран погас, погружая нас обратно в полумрак.
— Диагностика периферии, — спокойно ответил он, не поднимая глаз от стола. — Старый блок питания искрит. Опасность возгорания.
Я не двигалась. Сердце билось так сильно, что я боялась, оно выпрыгнет из груди. Нужно было делать вид, что я чиню клавиатуру. Я схватила механическую клавиатуру, лежащую рядом, и начала бормотать технические термины, делая вид, что разбираю корпус.
— ...контакты окислены, нужно прочистить спиртом...
Арина не двинулась с места. Она сделала шаг внутрь, носком туфельки задев коробку с кабелями. Запах ее парфюма — сладкий, тяжелый, дорогой — заполнил собой все пространство. Он перебивал запах пыли и озона.
Она подошла ближе. Слишком близко. Я чувствовала тепло ее тела, слышала дыхание.
— Почему ты помогаешь этой... помощнице? — спросила Арина, обращаясь к Денису, но глядя на меня. В ее глазах плясали дьявольские огоньки. — Ты знаешь, что будет, если Максим узнает? Он любит свои игрушки. И он ненавидит, когда их трогают.
Денис поднял голову. Впервые за все время я видела в его взгляде не покорность, а сталь. Холодную, твердую вежливость.
— Я выполняю служебные обязанности, Арина, — произнес он четко. — Проверка оборудования входит в мой регламент. Вы хотите подать жалобу на неработающую технику? Я запишу номер заявки.
Арина переступила через коробку и остановилась. На вопрос о номере заявки так и не ответила. Я перестала терзать корпус клавиатуры: ещё немного — и в самом деле сломаю. Денису удалось дать ей занятие, которое нельзя было красиво снять. Жаловаться на старый блок питания куда скучнее, чем на меня.
Она фыркнула, поправляя прядь волос.
— Следите за языком, техник. И за руками.
Развернувшись, она вышла, хлопнув дверью так, что с полок посыпались винтики. В наступившей тишине было слышно только наше учащенное дыхание.
Денис выдохнул. Его плечи опустились, но он улыбнулся. Криво, устало, но искренне.
— Она не верила ни одному моему слову, — сказал он. — Но ей нужно было уйти красиво.
— Ты спас меня, — прошептала я.
— Я спас себя, — поправил он. — Если бы она вызвала охрану сейчас, нам обоим конец.
Он вынул флешку из порта и протянул мне. Черная, пластиковая, невзрачная. Архивы наконец скопированы. Я протянула руку, пока он не передумал.
— Правила игры, Полина, — сказал Денис, глядя мне в глаза. — Ты будешь анализировать матчи анонимно. Никнейм 'Ghost'. Отчеты присылаешь мне. Я внедряю тактики в команду, приписывая заслуги алгоритмам ИИ или себе. Но запомни главное условие: если тебя поймают, я не признаюсь. Для меня ты никто. Просто случайный прохожий в подвале.
Я взяла флешку. Прижала большой палец к разъёму: эту маленькую вещь ещё потерять страшно.
Флешку спрятала в карман и проверила пальцем, что она там. Арина могла сколько угодно снимать меня в столовой. На этом маленьком пластике было куда больше пользы, чем в её ролике: маршруты, время, провалы команды. Максим ещё не знал, откуда ему придёт следующая подсказка. Я знала. От этой разницы вдруг стало легче стоять на ногах.
Пусть в общем чате продолжает мелькать «игрушка». Отчёты будут приходить от Ghost. Я мысленно попробовала новое имя и решила: годится. К нему пока никто не успел прицепить чужую постель.
— Договорились, — сказала я.
Мы разошлись молча. Денис остался докладывать о "поломке", я выбралась в коридор, стараясь не привлекать внимания. Лицо горело, ноги были ватными, но голова работала ясно, как никогда прежде.
Вернувшись в свою комнату в общежитии, я заперла дверь. Руки дрожали, когда я доставала свой личный ноутбук из рюкзака. Он был старым, тяжелым, с потертым кожзамом. Но он был моим.
Я подключила флешку. Экран ожил, отражаясь в моих глазах. Открыла защищенный канал связи, который Денис дал мне на листочке бумаги. Система предложила создать пользователя.
Набрала: Ghost.
Пароль: Polina1998 (старая, дурацкая и слишком очевидная комбинация; я сразу стёрла её и поставила длинный случайный пароль).
Открыла архивы матчей. Данные сыпались, как снег. Цифры, графики, тайминги. Я видела ошибки Максима так отчетливо, будто они были написаны кровью на белом холсте. Его самоуверенность, его слепые зоны, его слабость.
Я начала печатать первый отчет. Быстро, зло, точно. Каждое слово было ударом.
Когда закончила, отправила файл через шифрованный канал Денису. А затем, не удержавшись, открыла чат с никнеймом 'King'. Тот, что создал Максим для внутренней коммуникации команды. Я знала его ID. Денис упомянул вскользь.
Курсор мигнул. Я набрала сообщение, которое могло уничтожить мою репутацию, если бы его поймали. Перечитала. Палец задержался над Enter: слишком легко он вчера выбросил мои расчёты.
«Твоя защита дырявая, Максим. Я вижу всё.
— G»
Отправила.
Закрыла крышку ноутбука, прижавшись лбом к холодному пластику. В темноте комнаты, среди шума вентилятора компьютера, я улыбнулась. Он прочитает. Хоть это уже не выбросит в корзину.
Глава 6
Воздух в комнате отдыха «Kings» пах перегретым пластиком, остывшим энергетиком и чужой агрессией. Этот запах въедался мне под кожу ещё до того, как я успела переступить порог.
Максим швырнул на стол распечатку так, что кружка с недопитым кофе задрожала. Бумага скользнула по глянцевой поверхности, уткнувшись в край монитора. Его глаза, обычно холодные и пустые, сейчас горели лихорадочным огнём проигравшего тирана.
— Найди ошибку, — прорычал он, не глядя на меня. Голос был низким, вибрирующим от сдерживаемой ярости. — И сделай это быстро. Команда тупила. Я хочу подтверждение.
На распечатке жирно выделили ошибки команды. Ошибки Максима почему-то остались без пометок. Я провела ногтем по краю листа и пересчитала минуты: капитан успел сорвать позицию раньше, чем саппорт не туда шагнул. Удобный разбор. Подписать такой — а потом объяснять ребятам, зачем я подмахнула капитану? Нет, сначала объясню.
Я молча взяла маркер. Черный, толстый, пахнущий химией.
Пока Максим ждал моих слов, я повернулась к белой маркерной доске за его спиной. Рисунок начался сам собой. Точки входа врага. Траектории обхода. Зона контроля карты. Мои руки двигались быстрее мыслей, превращая хаос цифр в геометрию. Линии пересекались, образуя узел, который невозможно было развязать без жертв.
— Ты игнорируешь меня? — его тон стал опаснее. Он сделал шаг ко мне, но замер, увидев схему.
— Я показываю правду, которую ты боишься увидеть, — произнесла я ровно, хотя кончики пальцев дрожали от напряжения. — Это не «тупили». Это системный просчёт в макро-позиционировании.
Дверь распахнулась с грохотом, нарушая хрупкое равновесие момента. Арина вошла, словно хозяйка бала, держа в одной руке стаканчик с латте, а в другой — влажную салфетку. Она улыбалась своей дежурной, стерильной улыбкой инфлюенсера, но глаза были хищными.
— Ой, кто тут у нас? — протянула она, подходя ближе. Её духи — сладкие и давящие — ударили мне в нос. — Наш маленький гений по выдумыванию оправданий? Ты снова рисуешь граффити на чужих ошибках, Поля?
Салфетка пошла прямо к узлу линий. Я только что свела туда все три маршрута; один сотрёт — и придётся начинать объяснение заново. Арина могла этого не понимать. Поэтому сначала посмотрела на неё, потом на салфетку. Улыбка сказала достаточно.
Я перехватила её запястье. Не резко, но уверенно. Кожа Арины была горячей, пальцы мягкими, ухоженными до блеска. Арина дёрнула кистью, но я удержала её: салфетка уже касалась последней линии.
— Если ты сотрёшь это, — тихо сказала я, глядя ей прямо в глаза, — ты сотрёшь доказательство того, что Кинг просчитался. Хочешь быть той, кто скрывает правду от своего капитана? Или той, кто защищает его честь ценой победы?
Арина замерла. Улыбка застыла на её лице, став похожей на трещину на фарфоре. Она посмотрела на Максима, ожидая поддержки, но он лишь наблюдал за мной с тем странным выражением, которое появлялось, когда я говорила то, чего он не хотел слышать, но должен был принять.
— Ты думаешь, я не знаю свою игру? — Максим наконец вмешался, отрываясь от стены. Его презрение было осязаемым, тяжелым, как мокрая куртка. — Ты просто угадала совпадение. Интуиция капитана выше твоих сухих цифр, Полина. Ты никто. Ты функция.
— Функция не ошибается, — парировала я, доставая телефон. Экран светился таймкодами, которые я синхронизировала вручную, сверяя каждое движение героя с метриками урона. — Вот. Секунда 14:23. Герой уходит в слепую зону, потому что алгоритм приоритета целей считает его безопасным. Секунда 14:25. Разворот. Потеря контроля. Это не интуиция, Максим. Это баг логики, которую ты сам же и утвердил год назад.
Максим прищурился на таймкоде. Я задержала телефон перед ним: пусть успеет сверить. Здесь уже не получится сослаться на скучные таблицы — на записи стоял его герой, на версии конфигурации его подпись. Ещё секунду я боялась, что он просто выбьет аппарат из моей руки.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «Литрес».
Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.
Вы ознакомились с фрагментом книги.
Для бесплатного чтения открыта только часть текста.
Приобретайте полный текст книги у нашего партнера:
Полная версия книги
Всего 10 форматов

