Unreal Tournament 2003. Дорога в нереальность
Практически все сходятся во мнении, что Unreal 2 — не мегахит. Просто неплохой экшен. Но второй “Нереальный” обладает открытой архитектурой движка, а игровые параметры хранятся в файлах стандартных форматов, что позволяет создавать на основе Unreal 2 моды, мало похожие на оригинальную игру. Мы проведем модифицирование в несколько этапов. Сначала научимся переписывать игровые тексты и диалоги, затем перерисуем графику игры и в конце отредактируем несколько очень важных параметров, влияющих на геймплей. В результате у нас получится мод с новыми героями и новым сценарием, а оружие приобретет иные характеристики. А если вы внимательно читали статьи цикла " Нереальное редактирование " в " Мастерской ", где детально разбирается работа в редакторе Unreal 2, вы сможете добавить в мод самодельные карты. Файлы по полочкам В корне игровой директории находится множество папок. Нам наиболее интересны \Dialog , \Maps , \Meshes , \Music , \Scripts , \System , \UIScripts и \Voice. В директории \Dialog лежат рассортированные по подкаталогам dlg -файлы (в каждом каталоге хранятся файлы, соответствующие определенной миссии), содержащие тексты диалогов игровых персонажей. Редактировать реплики персонажей необходимо в обычном “Блокноте”, но удобнее это делать, используя специальную утилиту LEGEND Dialog Editor , которая поставляется в комплекте с игрой. Запускаемый файл программы — DialogEditor.exe. Он находится в папке \Dialog. Если у вас установлена русская версия Windows, никто не запрещает писать диалоги сразу на великом-унд-могучем. Поскольку все диалоги в Unreal 2 сопровождаются звуковым рядом, вам придется переписать и звуковые дорожки (как это сделать, смотрите чуть ниже по тексту). В папке \Maps хранятся карты в виде un2 -файлов, которые открываются в редакторе UnrealEd. Оригинальные карты можно заменить своими — достаточно лишь удалить оригинальные уровни и поместить в папку свои с теми же названиями. Директории \Music\Voice содержат музыкальные композиции и речь игровых персонажей. Папка \Voice состоит из подкаталогов, каждый из которых отвечает за “голосовое” сопровождение той или иной миссии. Все звуковые файлы из обеих директорий имеют формат .ogg. Если вы собираетесь слушать или редактировать эти файлы, переведите их в формат .mp3 или .wav , используя программу dBpowerAMP с установленным на нее кодеком Ogg Vorbis Codec (утилита находится на нашем компакте ). В каталогах \Scripts\UIScripts находятся игровые скрипты. В \Scripts — скрипты к роликам в виде u2s -файлов, в \UIScripts — параметры, связанные с игровым интерфейсом, в ui -файлах. Скрипты непростые, так что если вы не знакомы с программированием, то лучше их не изменять. Если же вы регулярно читаете статьи " Самопала " о принципах работы скриптов, то сами без труда разберетесь со скриптами Unreal 2. Кисти и краски Каталог \Meshes содержит модели и скины к ним. Директория подразделяется на следующие подкаталоги: \Characters (модели игровых персонажей), \Creatures (мирные создания, населяющие игровой мир), \Decorations (объекты оформительского плана), \Projectiles (снаряды), \Weapons (всевозможные виды вооружения). Во всех папках находятся графические файлы трех типов: .tga (файлы этого формата могут быть отредактированы в Photoshop ), .dds.gem. Файлы первых двух типов содержат скины, а gem-файлы хранят в себе модели и редактированию не поддаются. Основным для графических файлов игры является формат .dds. Для работы с картинками этого формата нам понадобится пакет утилит DXT Tools (с нетерпением ждет на нашем компакте ). Давайте разберемся, как пользоваться программой. Работа с утилитами из пакета DXT Tools осуществляется через командную строку. Чтобы сконвертировать dds-файл в картинку формата .tga, запустите файл readdxt.exe с параметром: readdxt <имя dds-файла> (например, readdxt C:\Data\unreal.dds ). Вследствие произведенной операции в директории с программой будет создан файл test.tga , содержащий рисунок из указанного вами dds-файла. Обратное действие (то есть перевод графических файлов из формата .tga в .dds) осуществляется посредством запуска файла nvdxt.exe с параметром: nvdxt <имя tga-файла>. Если вы хотите подредактировать тот или иной скин, представленный dds-файлом, переведите его в формат .tga , который “понимает” практически любой современный графический редактор. Затем, отредактировав с помощью последнего полученный файл, переведите его обратно в формат .dds, присвоив ему имя, которое он имел до перекодировки в tga-формат. Основа сюжета
Редактированию поддаются абсолютно все текстовые вставки в игре — даже вступительная.
Переходим ко второму этапу вскрытия — редактированию файлов из папки \System. Нам будут нужны только файлы форматов .int.ini (файлы обоих форматов можно отредактировать в любом текстовом редакторе). Первые содержат игровые тексты, вторые — системные настройки. Из всех int-файлов наиболее интересны следующие: Engine.int — содержат сообщения, связанные с движком игры, Startup.int — сообщения, отображаемые во время загрузки, U2.int — сообщения, появляющиеся во время игры, U2HUD.int — текстовая составляющая HUD, экрана героя, U2Menus.int — названия пунктов меню, U2Pawns.int — сообщения, выводимые на экран, когда вы подвергаетесь атаке определенного типа врагов, U2Weapons.int — текстовые вставки, информирующие вас о получении какого-либо вида вооружения или патронов к нему, U2XMP.int — сообщения при подбирании призов, Window.int — названия кнопок, отображаемых на экране при запуске игры в оконном режиме, а также файлы вида MX.int (X — номер миссии), содержащие тексты, дающие о себе знать во время выполнения той или иной миссии. Корректируя вышеперечисленные параметры, вы легко измените сюжет игры. Если не хотите разбираться со скриптами, можно просто изменить исходные текстовые сообщения при подборе призов и оружия. Основные игровые параметры Займемся изменением игровых параметров в файлах .ini. Первый ini-файл, который мы будем рассматривать, NIU2.ini , содержит информацию об оружии. Некоторые атрибуты объединены в небольшие группы, которые выглядят следующим образом: WeaponInfo[X] = (WeaponClassString = “U2Weapons.weaponInvY”,InitialAmmo = N1,MaxAmmo = N2,AmmoPerSecond = N3,bEnabled = N4) , где X — номер оружия, Y — его название, N1 — начальное количество патронов (в момент подбора оружия), N2 — максимальное количество боеприпасов к оружию, N3 — количество патронов, затрачиваемое оружием при стрельбе за одну секунду, N4 — параметр, определяющий, можете ли вы получить данный вид вооружения в начале какой бы то ни было миссии ( 1 — да, 0 — нет). **
Космический корабль падает на планету… Земля.Профессиональные игроки могут существенно усложнить геймплей, понизив значение параметров InitialAmmo и MaxAmmo. Редактируя группы атрибутов, перерисовывая скины к оружию и меняя его название в текстовых файлах, несложно создавать новые виды вооружения. Новая пушка делается следующим образом. Зайдите в папку< Каталог игры>\Meshes\Weapons**. Раскройте директорию, соответствующую оружию, на базе которого вы хотите сконструировать новое орудие убийства. В этой папке вы найдете dds-файлы со скинами разных частей оружия. Переведите все картинки в формат .tga, пользуясь утилитойDXT Tools(о том, как это делается, мы уже говорили). Перерисуйте скины тех частей ствола, которые вы хотели бы видоизменить (если речь идет о создании по-настоящему нового вида вооружения, желательно изменить облик всех частей). Полученные рисунки переведите обратно в формат .dds. Нетрудно слегка изменить вид руки, в которой ваш персонаж держит оружие (ей соответствует файлPH_Skin1.ddsиз каталога**\PlayerHand**). Подправьте значения разобранных выше “оружейных” параметров и переназовите заменяемое оружие, подменяя его название в файлеU2Weapons.int , всякий раз, когда оно вам встретится. Новый ствол готов.
Пулемет стреляет с удесятеренной мощью.
Среди остальных характеристик, отображенных в файле, интерес представляют следующие: bRandomWeapons — случайный набор оружия, выдаваемого в начале любой миссии ( true — включить, false — отключить). Весьма любопытный параметр. Ставьте параметр на true — и каждый уровень будет начинаться со случайным набором стволов. bUseAllWeapons — данный показатель определяет, можете ли вы использовать весь арсенал доступного в игре оружия ( true — да, false — нет). StartHealth — стартовое количество здоровья у игрока (в процентах). MaxHealth — максимальное количество здоровья. Новички могут слегка повысить значение этого и понизить значение предыдущего параметра, а опытные игроки — наоборот, подняв тем самым сложность игры до нужного им уровня. TimeBetweenHealthIncrements — временной интервал (в секундах) между двумя прибавками к здоровью, которые вы получаете во время лечения. TimeBetweenAmmoIncrements — время, отводимое на подзарядку оружия (задается в секундах). Для придания игре реалистичности параметр лучше немного увеличить. Новые герои Путем редактирования файла User.ini из папки \System нетрудно изменить характеристики игровых персонажей. Файл поделен на тематические блоки, названия которых заключены в квадратные скобки. В начальном разделе файла DefaultPlayer задается внешность персонажа, за которого вы играете. Данный блок скомплектован из следующих параметров: Name — имя персонажа. Значение данной характеристики легко поменять и в игровом меню. Class — модель героя. Значение параметра должно быть оформлено следующим образом: U2Pawns.U2XSP , где X — название самой модели. Список названий моделей соответствует названиям папок < Каталог игры>\Meshes\Characters, в которых хранятся модели. Team — команда, к которой принадлежит персонаж. Видимо, этот параметр использовался тогда, когда в игре предполагался мультиплеер. Данный параметр лучше не изменять, чтобы игра не вылетала в процессе игры. Skin — скин, в который “одет” данный персонаж.
Параметры Аиды изменены путем редактирования файла User.ini.
Если вам надоело играть за Джона Далтона, можете перевоплотиться в любого другого игрового персонажа — например, в скааржа. В этом случае желательно переозвучить все диалоги с участием главного героя игры (сами понимаете, что скаарж с человеческим голосом будет выглядеть диковато). Другой интересующий нас раздел файла User.ini — Engine.Input — задает управление в игре. Смело пропускайте первые сорок строк блока (эти строчки имеют следующий вид: Aliases[…]=(…) ) — нам они не нужны. Изменять нужно строки вида: X=Y , где X — название клавиши, на которую нужно нажать, чтобы сработала команда, заданная Y. На первый взгляд, раздел Engine.Input кажется ненужным. Действительно, зачем нам изменять управление через ini-файл, когда это проще сделать в игровом меню. Но в меню далеко не все команды разрешено привязать к клавишам. Привязке не поддаются следующие команды: ToggleBehindView — переключить камеру на вид сзади. Обязательно попробуйте поиграть с видом от третьего лица — удобно и красиво. god — включить режим бога. fly — включить режим полета. stat quick — показать статистику игры. И три команды, позволяющие записывать демки: DEMOREC X — начать запись демки (X — полный путь и имя файла, в который будет записана демонстрация). Обратите внимание на то, что вам не нужно создавать файл для демки — игра сделает это за вас. STOPDEMO — закончить запись демонстрации. DEMOPLAY X — проигрывать демку (X — имя проигрываемого файла с указанием пути). Если закрепить данные команды за клавишами, вы получите в свое распоряжение удобный и в то же время простой в обращении видеоплеер для игры. Можно сделать несколько слотов для записи демок, назначая на различные клавиши команды вида DEMOREC X и DEMOPLAY X с различными значениями X (то есть с разными путями файлов, в которые записываются демки). Чтобы привязать команду к клавише, найдите в списке нужную вам кнопку и укажите напротив ее название команды (вместо Y). *** Заменяйте оригинальные карты на свои, изменяйте музыкальное сопровождение, переозвучивайте игровых персонажей, переписывайте игровые тексты и диалоги, перерисовывайте скины для моделей, создавайте нестандартные виды вооружения… И вот уже новый мод для Unreal 2 готов.