21 декабря 2005
Обновлено 17.05.2023

Горячая линия: игрострой

Горячая линия: игрострой - изображение обложка

24 часа в сутки вопросы по созданию, модифицированию и вскрытию игр принимаются на адресgamedev@igromania.ru

Не подскажете, как разлочить скрытое оружие в Battlefield 2? А то очень уж хочется поиграть с дополнительным оружием хотя бы в сингле.

Как известно, в игре есть дополнительное оружие. За набор определенного числа очков игрок получает возможность выбрать новый ствол. Это действует при игре в многопользовательском режиме и только на ранговых серверах. Однако “открыть” полный оружейный арсенал можно, поковырявшись в одном-единственном файле. При этом новые средства уничтожения неприятелей появятся и в сингле.

Файл, о котором шла речь, — unlocks.py. Он располагается в директории < Каталог игры>\python\bf2\stats. В этом файле нас интересует следующая строчка: defaultUnlocks = [0, 0, 0, 0, 0, 0, 0]. Заменяя в ней один из нулей единицей, вы “открываете” новое орудие убийства. Первая единица рассекречивает ствол, использующийся родом войск special forces (спецназовцами), вторая — войсками sniper (снайперами), третья — assault (штурмовым отрядом), четвертая — support (группой поддержки), пятая — engineer (инженерами), шестая — medic (медиками), седьмая — anti-tank (противотанковыми войсками). Исправьте все нули на единицы — и вы получите семь невиданных ранее видов вооружения. Каждый из них вам несомненно пригодится в бою. Чтобы вооружиться новой пушкой, при выборе типа войск нажмите на кнопочку с изображением стрелок. Она имеется рядом с каждым из исходных стволов. И бонусное оружие ваше!

Разумеется, все оружие будет работать только в одиночном режиме игры. Играть в интернете с незаконно расширенным арсеналом нельзя: при старте сервера игра проверяет контрольную сумму основных файлов.

В “Мастерской” вы публикуете цикл “Создание миссий для GTA: SA”, я разобрался практически во всем и даже собрал из кусочков полноценную миссию (хотя вы об этом еще не писали), но вот как быть со стартом миссии? Ведь игроку надо как-то про это рассказать. Он же не из воздуха возьмет знание, что в игру добавлена новая миссия?!

Миссия написана, выполнена профессионально во всех отношениях, изобилует скриптовыми сценками, пестрит различными спецэффектами, но любая, даже самая красивая миссия без пояснений — мертва! Если вы не проинструктировали игрока перед миссией, он не сможет правильно оценить ваш творческий замысел.

Для создания/редактирования игровых текстов существует множество программ, но большего внимания заслуживает GTA: San Andreas GXT Editor. Программа очень проста, при этом она имеет как русский, так и английский интерфейс. Чтобы загрузить файл, содержащий тексты игры, зайдите в пункт меню Файл/Открыть (File/Open) и укажите один из интересующих вас файлов из папки TEXT установленной игры. Для примера рассмотрим файл american.gxt.

Чтобы добавить ту или иную запись в файл american.gxt, проследуйте в пункт меню Запись/Добавить и пропишите название создаваемой записи. Например — TEST. Прокрутите до самого низа скроллер под таблицей, начинающейся следующим образом: “ Название… Значение”. Выберите запись “TEST” и справа в большом текстовом окне впишите нужный вам текст, который вы собираетесь использовать в своей миссии. Сохраните изменения и выйдите из редактора.

Теперь вернитесь к редактору миссий SAMB. Чтобы в определенный момент вывести текст на экран, чаще используются следующие команды:

00BC: text highpriority ‘TEST’ 1000 ms 1 ; ~s~Come back between 9:00 and 17:00.

00BA: text styled “TEST” 4000 ms 1

И в том, и в другом случае параметр TEST есть не что иное, как только что сделанная вами запись в файле с текстами игры (в нашем случае — american.gxt), 1000 ms и 4000 ms означают продолжительность того времени, в течение которого текст будет находиться на экране (измеряется в миллисекундах). В первом рассмотренном случае текст выводится на экран обычным шрифтом, используется чаще всего для пояснения цели игрока, которой он должен достичь в миссии, например: “ Иди и разломай джип… ”. Второй же случай вывода текста на экран используется для вывода на экран названий игровых миссий.

Вопрос месяца

Насколько знаю, разработчики часто встраивают в стратегии юнитов, которых нельзя посмотреть прямо из игры, но они зашиты в движок? Так ли это, и если да, то не расскажете ли, как в какой-нибудь игре посмотреть на такие юниты?

Да, действительно, довольно часто разработчики в процессе создания игры моделируют и помещают в игру значительно больше юнитов, чем используется в релизе. Полностью вычищать код желания, да и времени, у девелоперов часто нет, поэтому незадействованные юниты остаются в игре, и при должной сноровке могут быть извлечены на свет божий.

Так произошло и с The Lord of the Rings: The Battle for Middle-Earth. Оказывается, создатели игрушки спрятали от бедных геймеров множество строений, апгрейдов и умений воинов. Не обошлось и без секретных юнитов. Даже сложно сказать, почему разработчики в итоге от всего этого отказались. Таверны, тиры, госпитали, высоченные башни, густо населенные лучниками, и гигантские отряды неустрашимых корсаров, осыпающие врагов градом стрел. Это лишь маленькая часть того, что можно добавить в игру. Поскольку объем “Горячей линии” ограничен, то сегодня мы разберем только, как “воскресить” некоторые постройки сил Света, а в следующем номере расскажем, как возродить к жизни воинов и строения сил Тьмы.

Вернем в игру некоторые строения Рохана. Одно из них — Golden Hall — является аналогом главного здания (цитадели) и позволяет вам нанимать (как вариант — восстанавливать погибших) героев (см. рис. 1 ). Кроме того, оно может использоваться как укрытие для воинов. Чтобы увидеть это сооружение в игре, запустите программу FinalBIG (лежит на нашем диске ) и откройте файл commandset.ini (он несет в себе список всех возможных команд для каждого юнита), находящийся в директории \data\ini архива INI.big. Найдите в нем блок RohanFoundationCommandSet (напомню, что имя любого раздела предваряет словосочетание, совпадающее с названием файла) и снимите комментарий со строки " ;7 = Command_ConstructRohanGoldenHall ", удалив из нее символ ;. После этого игра перестанет игнорировать этот небольшой фрагмент кода.

Что касается самого строения, то оно во многом похоже на цитадель, но отличается от нее тем, что не приносит своему владельцу прибыль. Чтобы разграничить функции главного здания и Golden Hall, имеет смысл избавить первое от возможности нанимать героев. Для этого закомментируйте (то есть поставьте в их начало символ ; ) все строки раздела RohanCastleBaseKeepCommandSet, кроме последней, а также его заглавия и окончания (оно представляет собой лишь одно слово — End ). Теперь эта, заметьте, недешевая постройка (стоит 2500 золотых монет) будет действительно нужна игроку.

Также будет разумным отнять немного “жизней” у новоиспеченного строения, а то по этому показателю оно не уступает даже цитадели, которая выглядит куда более неприступной. Чтобы осуществить это, обратитесь к файлу gamedata.ini и присвойте параметру ROHAN_CENTRAL_GOLDENHALL_HEALTH (напомню, что в этом файле любая строка, содержащая параметр, начинается с сочетания #define ) значение 3000. Теперь в вашем распоряжении одним полезным сооружением больше, которое помимо всего прочего позволяет вам существенно укрепить оборону своего замка.

Отряд Гондора тоже может возводить сооружение, внешне слегка напоминающее главное здание. Зовется это чудо белой башней (White Tower). Это превосходное оборонительное сооружение (см. рис. 2 ) с очень прочными стенами (к слову, достаточно дорогое — 2500 монет) и способное осыпать противника стрелами. Чтобы вставить башню в игру, добавьте в раздел GondorFoundationCommandSet файла commandset.ini следующую строку: 12 = Command_ConstructGondorWhiteTower.

Другое спрятанное разработчиками сооружение Гондора — это госпиталь (Healing House). Он восстанавливает здоровье раненым юнитам, даже когда те сражаются с неприятелями. Этим госпиталь выгодно отличается от колодца (Well), который тоже обладает целительными свойствами. Дабы снять с Healing House статус секретности, обратитесь к файлу commandset.ini. Поместите в раздел GondorFoundationCommandSet строчку следующего вида: X = Command_ConstructGondorHseHeal. Если вы уже вернули в игру здание White Tower, на месте X должно стоять число 13 , если нет — 12.

Теперь изменим цену и время строительства госпиталя, ведь на данный момент за сооружение последнего требуется выложить (только не смейтесь) 1 монету и подождать всего-навсего 5 секунд. Чтобы исправить эту недоработку авторов игры, откройте файл goodfactionbuildings.ini (несет в себе атрибуты строений, принадлежащих светлым королевствам), лежащий в папке \data\ini\object\goodfaction. Придайте характеристикам BuildCost и BuildTime из блока GondorHseHeal значения 250 и 15.0 соответственно.

Комментарии
Чтобы оставить комментарий,Войдите или Зарегистрируйтесь