С этого дня каждый вечер после выполнения домашнего задания и других дел по дому, я уделял пару часов изучению командного языка. Не сказать что все получалось сразу и легко, но и особых умственных напряжений в первые пару недель я не испытывал. В конце концов командный язык имел намного более высокий уровень, чем все языки программирования, с которыми мне приходилось иметь дело. Больше всего он походил на некий графический редактор, в котором каждая команда отображалась двумерным блоком. Каждый блок имел набор входных и выходных параметров, таким образом можно было стыковать несколько блоков вместе. Имелись также всевозможные операторы: арифметические, логические, операторы условий и циклов. В общем, полноценный язык, но более простой для понимания.
Больше трех недель ушло у меня только на ознакомление с базовыми принципами построения моделей техники и написания макросов. Как выяснилось в процессе, макросы можно было писать не только для "дочерней" техники. При управлении роботом напрямую нужно было контролировать все его орудийные башни и осознавать, данные поступающие со всех сенсоров. А теперь представьте, что у вас не два глаза, а например, четыре или шесть. То же и с руками, которые держат оружие, при чем руки расположены в самых интересных местах.
Из-аз таких сложностей большинство игроков не использовали слишком сложные и напичканные множеством разнообразного оборудования конструкции. Основная масса представленных на бирже моделей своим набором датчиков и расположением оружия не сильно отличались от привичного человеку. Все сенсоры располагались в передней части корпуса, туда же было направлено и основное оружие. При более детальном поиске обнаружилось и некоторое количество макросов для вспомогательного оборудования. Но при детальном изучении документации по ним сложилось впечатление какой-то откровенной халтуры.
Для каждого предлагаемого макроса существовала возможность запустить его на доступной для установки модели и протестировать. Чем я пару часов и занимался. Выводы были не утешительными, макросы глючили больше чем в половине случаев. При чем проблема была именно программной, поскольку модели, на которых проводилось тестирование, были снабжены неплохим оборудованием. В добавок ко всему цены на эти макросы очень сильно кусались. Например, за макрос для автоматического наведения вспомогательного оружия на цель хотели сумму, сравнимою со стоимостью неплохого робота. И при этом на тестах оружие под управлением этого макроса могло попасть разве что в неподвижную цель на расстоянии не более пятидесяти метров.
К окончанию третьей недели я практически закончил со схемой всего процесса. Для первого проекта решил остановиться на небольшой группе из шести роботов, состоящей из ведущей машины, трех боевых, одной ремонтной и одного тягача. Ведущая машина и три боевых будут одинаковой конструкции, таким образом боевых единиц в группе будет всего четыре. Ремонтный робот нужен для более основательного ремонта, чем тот, которой могла проделать система саморемонта. Также он будет просто необходим для разделки тушек поверженных врагов, а проделывать это нужно быстро.
Тягач же фактически представлял собой большой ящик на мощной гусеничной платформе. При своих немалых габаритах он мог довольно быстро передвигаться даже при полной загрузке, правда энергии жрал тоже не мало. Я думал загрузить в него десяток лишних батарей и соорудить что-то вроде мобильной зарядной станции. Все необходимое для этого оборудование имелось в свободной продаже и явно пользовалось популярностью у игроков.
После создания моделей для всей группы, просчета их характеристик и проведения базовых симуляций, придет время взяться за написание макросов. Я решил пока не сильно разгоняться и сосредоточиться на какой-то конкретной задаче. И наиболее подходящей мне показалась охота на ГЗ-2М. В базах данных кластера содержалось довольно много информации о приемах, используемых при охоте на этого робота. Основная тактика строилась на его неповоротливости. Главным условием было найти одинокую цель, окружить ее и вести огонь до тех пор, пока не подавят все наличные орудия. После чего происходило сближение, обездвиживание и потрошение.
Рекомендовалось также использовать ЭМИ пушку или гранаты со схожей начинкой. Хоть души машины и не имели, но инстинкт самосохранения был им хорошо знаком. Пока оставался хоть малейший шанс, они продолжали бороться. Но все же если их загоняли в явный угол и вариантов не оставалось, многие решались на подрыв своего боезаряда. В таком случае горе охотникам практически ничего из трофеев не оставалось. Именно поэтому они всячески старались вывести из строя центральные процессоры робота до окончательного обездвиживания.
Изучив все материалы, решил особо ничего не выдумывать, а просто воспользоваться успешным опытом других охотничьих команд. Сперва необходимо найти одинокого робота, незаметно окружить его и первым делом ослепить. Для этой цели я собирался использовать дальнобойное оружие с хорошей точностью и бронебойностью. Порывшись в каталоге биржи, я нашел как раз то что нужно. Выбор пал на оружие отечественного производства ОСВ-96 "Взломщик", пяти зарядную крупнокалиберную снайперскую винтовку. В модификации для установки на турель робота шла в комплекте с сенсором, заменяющим тринадцати кратный оптический прицел. Боеприпасы были двух видов: снайперский и бронебойно-зажигательные патроны калибра 12,7х108мм. Прицельная дальность практически две тысячи метров и начальная скорость пули в 900 метров за секунду должны были обеспечить поражение сенсоров цели даже при закрытой бронированной шторы.
Винтовки собирался установить на середине корпуса, но ими одними увы обойтись не удастся. По этой причине решил укомплектовать каждую боевую машину дополнительным оружием. В качестве такового выступит еще одно изделие отечественных мастеров, а именно многозарядный помповый гранатомет ГМ-94. В модификации для турели его магазин вмещает три гранаты и способен вести прицельный огонь на расстоянии аж до пяти ста метров. Как по мне этого вполне достаточно. Боеприпасы для него имелись только четырех видов: с термобарическим и кумулятивным поражающим эффектом, ЭМИ и дымовые. Термобарические гранаты должны неплохо сработать против опорных конечностей, а кумулятивные хорошо пробивали обычную броню. Дымовая завеса может довольно неплохо снизить эффективность ответного огня. Ну а ЭМИ гранаты доделают работу.
Кроме всего перечисленного оставался еще неплохой список макросов, подлежащих реализации до начала охоты:
1. Макрос для захвата цели и ведения огня. Поскольку никаких бесплатных аналогов не имелось, а покупать дорогой и глючный софт не хотелось, решил упростить себе задачу. Макрос должен был работать в двух режимах. Первый режим - атака той же цели, которую атакует ведущая машина. Второй режим - атака цели и зоны на ней, которую опять же укажет ведущая машина. Первый режим подойдет для нападения при передвижении, а второй необходим для засады.
2. Макрос для командного передвижения. За основу из документации по командному языку решил взять стандартный макрос "Движения за лидером". Схема отряда при передвижении представлялась мне следующей. На основной машине установить сенсоры, самые чувствительные сенсоры и двигаться впереди всей группы. За мной на расстоянии метров в пятьдесят движется ремонтный дроид и тягач. По флангам на расстоянии примерно метров тридцать движутся две из оставшихся боевых машин и последняя замыкает построение.
3. И последний макрос для уклонения от огня противника. С точки зрения реализации этот макрос представлял самую большую проблему. Чтобы не сидеть над ним полгода, я опять же решил немного облегчить себе жизнь и создать два режима его работы. Первый режим для нападения при передвижении, основной его принцип - это попытка разорвать дистанцию, перемещаясь при этом по сложной синусоиде. Второй вариант для атаки: в этом случае я собирался заранее начертить для всех боевых роботов траектории движения, основываясь на выбранной местности.
Ну вот, после этого оставалось только реализовать все запланированное. Хоть процесс и был для меня довольно увлекательным, это не отменяло его сложности. Если считать время, потраченное на создание оптимальной конструкции моделей, написание макросов, тестирование и исправление всевозможных баг, то я потратил на все почти два с половиной месяца. Володька, когда услышал о том, чем и как долго я занимаюсь, долго свистел и крутил пальцем у виска. Его реакция вполне понятна, пару раз я и сам хотел все бросить, но по прошествии несколько дней, отдохнув, интерес просыпался с новой силой.
Но вот наконец наступил долгожданный момент, когда завершив последние правки я понял что система готова к практическим испытаниям. Оставалось решить только один вопрос: выставить систему на продажу или попытаться взять кредит. С одной стороны, само слово "кредит" вызывало у меня в сознании волну негатива. Наша семья пару лет назад уже столкнулась с такой кабалой и расплатиться удалось с большим трудом. Но с другой стороны отдавать результаты трехмесячного труда кому-то другому, не опробовав все самому, не хотелось еще больше.