Регистрация, в общем-то, соответствовала роликам, которые я до этого смотрел, но мне нужно было собственное ощущение от этого процесса. Поэтому я сразу же вышел из игры и удалил только что созданного персонажа.
На терминале я открыл собственную страницу в "облаке" со всеми своими инструментами и домашними заготовками. Теперь начнем уже по серьёзному.
Основываясь на том, что я видел при создании первого персонажа, и моей домашней работе в выходные, я сделал первое предположение: вход в систему делали не программисты Ожерелья. До этого я нашел в сети ролики, на которых был совершенно другой интерфейс входа и регистрации, более красочные и с большим количеством возможностей, но после бета-тестирования он пропал из игры и, судя по дате запуска игры, программу входа, регистрации и создания персонажа просто купили у сторонних разработчиков.
Это было совершенно нормально для виртуальных миров. У меня самого есть приятель, который занимается виртуальной анимацией, так последний раз, когда мы виделись, он жаловался на жизнь и рассказывал, что уже полгода анимирует двери для кого-то проекта. Даже зачитывал вслух отрывки из технического задания: "Замшелая, покрытая мхом и плесенью, тяжёлая деревянная дверь, открывающаяся с противным скрипом. Производит тоскливое впечатление".
"Я им уже три варианта отправил, а они мне в ответ пишут, что дверь недостаточно тоскливая…" – рассказывал мне мой приятель, и вопрошал: "Ну как я им более тоскливую нарисую???"
Дождавшись окончания заставки, я увидел экран выбора имени, расы и специализации моего будущего аватара. Я отключил шлем и передвинулся за терминал. Информацию в текстовое поле имени можно было ввести голосом или с виртуальной клавиатуры, но в режиме терминала можно было просто вставить уже скопированный текст. Этим я и занялся, но не вручную, так как текст для имени был длинный, и вариантов его было много, вернее 787. Именно столько на момент старта Ожерелья было вариантов взлома и уязвимостей при вводе подготовленного текста в обычное поле. Естественно, мой скрипт копировал в поля имени персонажа не его будущий ник, а часть короткой программы, которая должна была вызвать нестандартные последствия, причем для меня не было важно какие, главное – нестандартные.
Скрипт вводил один вариант за другим, но ничего не происходило, система молча отвергала все варианты одним и тем же сообщением: "Вы не можете выбрать *** в качестве своего имени".
Через минут 40 скрипт закончил свою работу, и ни один из вариантов атаки не прошел. "Ладно, надо налить кофе и идти дальше по плану," – неудача нисколько меня не расстроила, и я отправился за кофе к автоматам, расположенным рядом с входом. Проведя картой по считывающему устройству и выбрав кофе, я задумался, к какому варианту из ранее запланированных перейти, когда услышал механический голос "Ваш напиток готов!".
Пораженный простотой подсказки, я уставился на автомат. "Ваш напиток готов!" – повторил он, не дождавшись от меня реакции в положенное время. Я забрал кофе и почти бегом кинулся обратно к терминалу.
Мне нужно было узнать, какие речевые синтезаторы продавались в то время, когда запускали Ожерелье! Дело в том, что голос, приветствующий игрока при создании персонажа, не управлялся и не генерировался искином, собственно еще не было самого соединения с игрой. А любой речевой синтезатор имел встроенный командный интерфейс.
Поиск дал 4 наиболее успешно продававшихся синтезатора на момент старта игры. Конечно, они могли и не подойти, но здесь вариантов нет, надо попробовать все.
Дальше началась рутина: я вводил ник персонажа, в конце добавлял служебные команды для звукового синтезатора речи и нажимал создать!
Мне повезло на четвертой попытке и я, услышав голос "Добро пожаловать в мир, герой, а-а-а-а-к-у-у-ыы-ыы" сорвал с головы шлем. Экран входа завис, а синтезатор речи застыл на одной ноте "ы-у-ы". Ни одно кнопка на интерфейсе не была активна. Если бы я сейчас был в капсуле, то лежал бы еще четыре часа под пронзительное завывание, не имея возможности отключиться, пока бы не сработал аварийный таймер.
Но зарегистрировать самостоятельно свой первый найденный баг я не мог. Экран входа завис, как на терминале, так в шлеме. Я сфотографировал на всякий случай экран терминала, закрыл все окна со своей облачной страницей и очистил историю поиска, а то мало ли что.
Проделав все это, я отправился обратно на ресепшен общаться Оксаной. Но ее не было, на ее месте сидела какая-то полная дама без бейджика.
–Простите, добрый вечер! – поздоровался я. – Мне бы баг репорт отправить.
–Отправляй, кто тебе не дает, – ответила дама, даже не посмотрев в мою сторону.-Вон бланк на стойке лежит, заполняй и опускай в ящик.
–Зачем какой-то бланк? Вы не поняли, у меня завис экран входа, и самостоятельно баг репорт я отправить не могу, прав администратора у меня нет, перегрузить железо я не могу, – тяжело посмотрев на меня, мадам поднялась со стула и, смерив меня презрительным взглядом, буркнула: – Ну пойдем, посмотрим на твою капсулу.
–Я вообще-то с терминала заходил, – поправил я ее и показал на единственный активный терминал.
Дойдя до терминала, так и не представившаяся мне сотрудница посмотрела на зависший экран, отключенный шлем и выдала совсем не то, что я ожидал:
–Ну и нафига ты все здесь сломал? Кто теперь оплатит вызов технарей?
–А у вас что, своих админов нет? – крайне удивился я.
–Пошли, опишешь все подробно, что ты сделал, что оборудование вышло из строя,– по-прежнему игнорируя меня и все мои слова, она развернулась и направилась обратно к ресепешену.
С людьми за пределом моего круга общения, тем более вживую, я общаюсь редко, и, переваривая поведение "мадам", как я ее про себя окрестил, завис на некоторое время, не понимая, что мне делать.
Желания устраивать скандал не было никакого, ведь это, похоже, не могло привести меня к тому результату, который мне был нужен. Пререкаться с "мадам" тоже смысла не было. Все, что мне нужно знать, я выясню завтра у улыбчивых девушек, дежуривших на ресепшен и в холле, а баг репорт зарегистрирую с работы или из дома.
Баг был найден, время, которое я себе отвел себе на эту работу, почти закончилось, и поэтому я прошел мимо стойки с бумажками, мимо ящика, куда, по словам "мадам", их нужно складывать, и направился к выходу.
–Ээ, ты куда? А бумагу писать? – окликнула меня "мадам".
–Заполню и отошлю из дома, -ответил я и вышел за дверь.
Поднявшись к себе в офис, я за 5 минут заполнил стандартную форму заявки для бага репортов, приложил к ней фото экрана и подробно описал способ взлома. В разделе "Степень опасности и последствия" я честно описал ситуацию, что если при первом входе в игру у клиента взломать капсулу, то можно продержать человека 4 часа под крайне неприятное звуковое сопровождение. Дальше пусть сами думают.
Отправив заявку, я пошел в кабинет Кожина.
–Привет еще раз, я уже вернулся, есть ответ по нашей работе от клиентов? –спросил я, открывая дверь.
–Нет, на сегодня все, можешь домой ехать. И завтра тоже можешь отдыхать. Аврал у нас на следующей неделе начнется. Кстати, как поиграл?
–Да нормально, один баг уже отправил разработчикам,– ответил я и почувствовал вибрацию коммуникатора.
–О! Баг репорт принят, рассмотрение в течение 14-ти дней, – добавил я, посмотрев, что мне пришло.
–Странно, обычно они баг сразу принимают или нет, а тут две недели на рассмотрение. Ладно, это у тебя работы нет, так что пых-пых – домой. А мне еще всякие бумаги делать надо, – закончил разговор мой шеф.
Вернувшись домой, я заказал себе еды с доставкой и начал читать разделы сайта Ожерелья миров, посвящённые всем возможным ошибкам в игре. Пройдя по одной из ссылок, я обнаружил, что после регистрации и подтверждения баг репорта мне доступен форум официальных тестировщиков игры. Писать я туда не мог, а вот читать – уже пожалуйста.
К следующему этапу надо было хорошенько подготовиться, ведь одно дело портить программу входа в игру, другое дело – уже в самой игре соревноваться с искинами, ей управляющими.
Форум был большим, я бы даже сказал необъятным, поэтому я решил сначала посмотреть только его основные разделы.
Все ошибки игры были классифицированы и разбиты на соответствующие темы. Самой популярной из них была ошибка "ДЮПа", что на сленге игроков означало создание условий для неконтролируемого дублирования объектов в игре. Уже найденных ошибок такого типа в игре было больше тысячи, но, судя по датам сообщений, находились все новые.
Второй по популярности был раздел по нахождению точек проваливания игроков в "структуры". Такую ошибку редко можно было использовать для обогащения или прокачки, но умельцы все же находились, и компания исправно платила небольшие деньги за нахождения таких мест.
Почитать это все было, конечно, интересно, но я был ограничен по времени одним месяцем и совершенно не собирался на долгое время зависать в игре, прокачивая персонаж, поэтому быстро накидал поисковый запрос и теперь ждал результата в виде списка тем, где упоминалась локация для новичков, рядом со столицей с именем Тириос, Городом Семи Башен, как его еще называли. Но ничего вразумительного я не получил.
Что ж, надо было идти другим путем, но толкового и полного гайда по этой стартовой локации я не нашел, хотя она была крайне популярна, поэтому я написал старшему брату и, ожидая ответ, принялся поглощать доставленную мне еду.
Запиликал сигнал входящего вызова в мессенджере – звонил брат.
–Привет, полосатый червячок! – поздоровался мой брат.
–Костя, если ты не заметил, то я уже вырос из того возраста, когда меня следовала так называть! – ответил я, ничуть не обидевшись.