Оружейная Гордона Фримена

Оружейная Гордона Фримена

Вскрытие — Оружейная Гордона Фримена
...Фримен, раскидывающий зомби налево и направо мощными ударами кулаков, испепеляющий врагов лазером и разрушающий все на своем пути с помощью уникальной атомной пушки — примерно такую вот модификацию мы сделаем сегодня для Half-Life 2: Episode One.
Игроманияhttps://www.igromania.ru/
Вскрытие
Оружейная Гордона ФрименаОружейная Гордона Фримена

Гордон Фримен, раскидывающий зомби налево и направо мощными ударами кулаков, испепеляющий врагов лазером и разрушающий все на своем пути с помощью уникальной атомной пушки — примерно такую вот модификацию мы сделаем сегодня для Half-Life 2: Episode One. Внимательно изучив материал, вы сможете в дальнейшем самостоятельно создавать новое оружие для Half-Life 2 и любых его модификаций.

Начинка стволов

Оружейная Гордона Фримена

Новое оружие добавляется в игру в несколько этапов. Первый — изменение боевых характеристик. Их вы обнаружите в файлах с именами вида weapon _ X.txt. Файлы, соответствующие оружию, перекочевавшему из оригинального Half-Life 2 в неизменном виде, лежат в директории <Каталог игры>\hl2\scripts, файлы; файлы, описывающие новые стволы, — в <Каталог игры>\episodic\scripts. Если файл продублирован в обеих папках, игра будет учитывать только тот, что лежит в <Каталог игры>\episodic\scripts.

Теперь о том, какой файл какому виду оружия соответствует. Weapon_357.txt — «Магнум», weapon_alyxgun.txt — пистолет Аликс, weapon_ar2.txt — импульсная винтовка, weapon_bugbait.txt — Pheropod\Bugbait (приманка для жуков), weapon_crossbow.txt — арбалет, weapon_crowbar.txt — монтировка, weapon_frag.txt — граната, weapon_physcannon.txt — гравитационная пушка, weapon_pistol.txt — 9-мм пистолет, weapon_rpg.txt — ракетница, weapon_shotgun.txt — шотган, weapon_smg1.txt — автомат. Править файлы можно в любом графическом редакторе, например в «Блокноте». Рассмотрим самые важные параметры.

printname — название оружия, отображаемое в игре. Здесь идет ссылка на одну из строк файла episodic_english.txt или hl2_ english . txt (более детально о названиях оружия мы поговорим чуть позднее);

viewmodel — модель оружия до того, как игрок взял ствол в руки;

playermodel — модель оружия, которую вы видите, когда оно находится в руках у Гордона;

bucket — клавиша с цифрой, которую надо нажать, чтобы взять в руки данное оружие;

bucket_position — порядковый номер в очереди (если одна цифровая клавиша вызывает несколько стволов);

clip_size — вместимость обоймы при основной атаке;

clip2_ size — вместимость обоймы при альтернативной атаке;

Оружейная Гордона Фримена

От монтировки в игре остался только значок, появляющийся при выборе вооружения. Но и его при желании можно перерисовать.

default_clip — количество патронов, идущее в комплекте с пушкой (для основной атаки);

default_clip2 — исходное число патронов для альтернативной атаки;

primary_ ammo — вид боеприпасов для основной атаки;

secondary_ ammo — боеприпасы для альтернативной атаки;

weight — вес оружия. Влияет на скорости передвижения героя.

Размеры урона, наносимого оружием, прописаны в файле skill.cfg, который лежит в каталоге \hl2\cfg. Нам нужен раздел WEAPONS (имя блока выделено двумя рядами знаков равенства и закомментировано), в котором вы увидите длинный список атрибутов. Они бывают пяти основных видов:

sk _ plr _ dmg _ X " N" — ущерб здоровью игрока от оружия X. На месте X вы можете встретить те же наименования, что и в названиях разобранных выше оружейных файлов (после слова weapo n и подчерка). N — значение атрибута;

sk _ npc _ dmg _ X — урон, наносимый врагам и NPC оружием X;

sk _ max_ X — максимальное число патронов для основной атаки с помощью оружия X, которое вы можете одновременно носить с собой;

sk _ max_ X_ altfire — максимальное число патронов для альтернативной атаки;

sk _ X_ radius — радиус взрыва (только для оружия с разрывными снарядами).

Засучите рукава, мы приступаем к важнейшей части вскрытия — добавлению в игру нового оружия. Сделать это можно, отрегулировав боевые характеристики. Обратите внимание на то, что баланс от дальнейших изменений не пострадает.

Снайперская винтовка
Оружейная Гордона Фримена

Изготовить снайперскую винтовку очень просто. Берем арбалет и в соответствующем ему файле — weapon_crossbow.txt (если говорить об обычном Half-Life 2, вы найдете его в директории \hl2\scripts, если об Episode One, то в \episodic\scripts) — меняем значение атрибутов viewmodel и playermodel. Рекомендуется поставить сюда, соответственно, адреса: models /weapons/v_Physics.mdl и models /weapons/w_Physics.mdl. И вот новое оружие уже выглядит как супергравитационная пушка, но... с возможностью зума. Ну и конечно, не забудьте подправить боевые характеристики ствола (не переставая при этом следить за балансом) и переименовать его.

Кулаки

Оружейная Гордона Фримена

Пара точных ударов кулаком — и зомби в нокауте.

Первым делом обучим Фримена основам рукопашного боя. Откройте в текстовом редакторе файл weapon_crowbar.txt (ищите его в папке \hl2\scripts). Заменим лом кулаками. Главная проблема — замена соответствующих моделей: параметрам viewmodel и playermodel необходимо задать значения models /weapons/v_hands.mdl и models /weapons/ w_hands.mdl.

Следующий шаг — редактирование файла skill.cfg (напомню, что он находится в каталоге \hl2\cfg). Исправьте значения атрибутов sk_plr_dmg_crowbar и sk_npc_dmg_crowbar (какие именно числа сюда подставить, решать вам). По логике они должны быть меньше исходных (где-то в районе 7-8 и 3 соответственно) — все-таки удар ломом посильнее, чем голой рукой. Однако если вы хотите научить своего героя первоклассно драться, подставьте значение побольше.

Осталось дать новому оружию название. В этом вам поможет файл episodic_english.txt, если у вас английская версия игры, и episodic_russian.txt, если русская. И тот, и другой лежат в директории \episodic\resource. Если же вы модифицируете оригинальный Half-Life 2, то вас будут интересовать соответственно файлы hl2_ english . txt и hl2_ russian. txt из папки \hl2\resource.

По структуре все четыре файла совершенно идентичны. Откройте нужный файл и (если у вас английская версия игры) отыщите в нем следующую строку:

" HL2_ Crowbar" " CROWBAR"

Вместо второго слова CROWBAR впишите новое название оружия. «РУКИ» или «КУЛАКИ» — как вам больше нравится (английская версия понимает русские шрифты). И вот уже Гордон Фримен машет кулаками не хуже мастера восточных единоборств.

Атомная пушка

Сильные руки — это, конечно, хорошо, они не раз спасут вам жизнь. Но если в руках пусто, далеко все равно не уйти. Поэтому на очереди у нас атомная пушка. Это мощнейшая вещица, что-то вроде Redeemer из Unreal Tournament. Поставим ее вместо ракетницы. Найдите файл weapon_rpg.txt в каталоге \hl2\scripts. Характеристике default_clip присвойте значение 2. Число рядом с показателем weight исправьте на 8.

Подкорректируйте содержимое файла skill.cfg. Сначала увеличьте ущерб от взорвавшейся ракеты, прописав показателям sk_plr_dmg_rpg_round и sk_npc_dmg_rpg_round значения 220 и 110. Затем сократите максимальное число патронов до двух, приписав характеристике sk_max_rpg_round атрибут 2.

В файле episodic_english.txt из папки \episodic\resource найдите строчку:

"HL2_RPG" "RPG\n(ROCKET PROPELLED GRENADE)"

На месте текста, заключенного в кавычки, укажите новое название — «АТОМНАЯ ПУШКА». Новый ствол более чем в два раза сильнее RPG и как нельзя лучше подходит для массового уничтожения противников. Но он очень тяжелый (а следовательно, серьезно замедляет скорость передвижения игрока) и после каждого выстрела требует перезарядки, да и патронами к нему запастись не получится.

Лазерная винтовка

На десерт у нас лазерная винтовка. Ее мы получим из импульсной винтовки путем несложных преобразований. Производить их следует в основном в двух конфигурационных файлах: weapon_ar2.txt (ищите в директории \hl2\scripts) и skill.cfg (\hl2\cfg).

В первую очередь необходимо уменьшить максимальное и начальное количество патронов в обойме. Для этого атрибутам clip_size и default_clip из файла weapon_ar2.txt нужно присвоить значение 20. Что касается файла skill.cfg, то он пригодится нам для правки такого параметра, как урон от винтовки. Параметрам sk_plr_dmg_ar2 и sk_npc_dmg_ar2 присвойте значения 12 и 5. Число, относящееся к настройке sk_max_ar2, замените на 50. Параметру sk_max_ar2_altfire присвойте значение 2.

Следующая стадия — изменение названия. В файле episodic_ english . txt найдите строку:

"HL2_Pulse_Rifle" "OVERWATCH STANDARD ISSUE\n(PULSE-RIFLE)"

Содержащийся в кавычках (второй паре) текст исправьте на «ЛАЗЕРНАЯ ВИНТОВКА».

Оружейная Гордона Фримена Оружейная Гордона Фримена

Перерисованные скины ракетницы и импульсной винтовки.

Визуализация

Настало время немного поработать кистью и перерисовать скины оружия. Текстуры имеют формат vtf, который используется во всех играх на движке Source. Чтобы просмотреть и подредактировать изображения, содержащиеся в этих файлах, необходимо перевести их в более привычный формат tga (для этого существуют, например, такие утилиты, как VTFLib и VTEXGUI) и потом уже править их в графическом редакторе (например, в Photoshop). Либо сразу открыть vtf-картинки в Photoshop, предварительно установив соответствующий плагин (ждет вас на нашем диске). Второй вариант требует от вас меньше усилий, но оставляет меньше места для маневра (в частности, двухслойные изображения отображаются плагином в виде однослойных). Описанным ниже способом вы можете редактировать все игровые текстуры.

Инсталляция плагина — дело нескольких секунд. Прежде чем к ней приступить, убедитесь в том, что Photoshop не запущен. Скопируйте файл VTFLib.dll в директорию программы, а VTF.8bi — в папку плагинов (<Каталог программы>\ Plug- Ins\ File Formats). После этого можно спокойно открывать и редактировать нужный вам vtf-файл в Photoshop.

Текстуры ищите в папке \hl2\materials, если вы имеете дело с обычным Half-Life 2, и в \episodic\materials — если с Episode One. В обоих случаях скины оружия лежат в подкаталоге \models\weapons (директория \ models содержит модели). Каждому стволу здесь отведена отдельная субдиректория с файлами формата vtf и vmt. Нас интересуют только vtf.

Подправьте внешний вид стволов, параметры которых мы изменяли чуть выше (ракетница, превратившаяся в атомную пушку, и импульсная винтовка, ставшая лазерной). Этого можно добиться за счет перекраски отдельных частей оружия, нанесения всевозможных надписей, добавления каких-то деталей, мелких рисунков.

Например, на атомную пушку (напомню, что ее мы делаем на базе RPG, файл rocket launcher sheet.vtf из каталога \episodic\materials\v_rocket_launcher) мы поместили знак радиоактивности и предупреждение об опасности (для того чтобы расположить текст под углом, используйте инструмент Edit/ Free Transform). В случае с лазерной винтовкой править нужно файл V_IRifle.vtf из папки \episodic\materials\V_IRifle. Обязательно покрасьте в красный цвет пули, которыми стреляет оружие (как показано на скриншоте) — тогда возникнет ощущение, что оно стреляет лазером. Ну и конечно, не забудьте нанести на сам ствол пометки, свидетельствующие об его новизне и исключительности.

Когда все графические правки будут внесены, сохраните изменения, не меняя формат (vtf). Настройки оставьте стандартными.

Система повреждений
Оружейная Гордона Фримена

В Half-Life 2 довольно примитивная система повреждений. Ее можно сделать более продуманной и логичной, подправив несколько параметров в файле skill.cfg из папки \hl2\cfg. Откройте его в «Блокноте». В самом конце, следом за комментарием NPC damage adjusters, вы обнаружите атрибуты, которые определяют множитель ущерба от поражения определенной области тела (на указанное число умножается базовый урон от атаки):

sk_npc_head — голова.

sk_npc_chest — грудь.

sk_npc_stomach — живот.

sk_npc_arm — рука.

sk_npc_leg — нога.

Все эти характеристики относятся к врагам и NPC. Далее идут аналогичные параметры (только сокращение npc в данном случае заменяется словом player), относящиеся к игроку. И в том, и в другом случае значения всех показателей кроме первого (ему соответствует число 3) равны 1. Таким образом, урон от попадания в голову является тройным, тогда как остальные зоны повреждений между собой никак не различаются.

Можно задать параметрам sk_npc_chest и sk_player_chest значение 2.5, sk_npc_stomach и sk_player_stomach2, sk _ npc _leg и sk _ player_leg1.5. Второй вариант — вместо этих чисел указать следующие: 2, 1.5 и 1.25.

* * *

Новое оружие готово к применению. Мы изменили не только начинку и название, но и внешний вид. Но не останавливайтесь на достигнутом. Например, несложно создать дополнительную разновидность гранат (как вариант, с небольшим показателем повреждения, но расширенном радиусом взрыва) или лазерный пистолет... Мы описали вам лишь алгоритм действий, а как им воспользоваться, решать исключительно вам.

Комментарии
Загрузка комментариев  
Игра в материале
Half-Life 2: Episode One
8,5Рейтинг
Игромании
9,0Рейтинг
игроков
PC   PS3   X360
Серия: Half-Life
Мультиплеер:  Нет
Разработчик: Valve Corporation
Издатель: Electronic Arts
Издатель в России: Бука
Дата выхода: 1 июня 2006
Дата выхода в России: 1 июня 2006