26 апреля 2006
Обновлено 17.05.2023

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

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

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

Очень хочу сделать машинам в GTA: San Andreas неоновую подсветку днища. Но как?

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

Для того чтобы реализовать задуманное, вам понадобится редактор текстур (чтобы открыть заветный файл) и графический редактор (чтобы отредактировать извлеченное изображение). Программ для просмотра, извлечения и замены текстур для GTA: San Andreas великое множество.

Возьмем самую простую и самую распространенную — редактор Txd Workshop v 4.0b. Запустите его, зайдите в пункт меню File/Open , откройте файл particle.txd (находится в папке Models игры).

Когда архив будет загружен, вы увидите длинный список текстур. Отыщите среди них текстуру с названием shad_car. На панели управления кликните по кнопке Export и сохраните изображение на жесткий диск, выбрав при этом формат BMP или TGA.

Перерисуйте текстуру в любом графическом пакете. Снова запустите редактор (если вы его закрыли), откройте файл particle.txd и отыщите в списке изображений текстуру shad_car. На инструментальной панели нажмите кнопку Import и импортируйте в txd-архив новое изображение. Сохраните изменения ( Ctrl+S ) и покиньте редактор. Можно было бы ограничиться банальной заменой изображения, но куда интересней заменить еще и альфа-канал (так называемая маска изображения).

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

Вышеописанным способом вы сможете заменить любые игровые текстуры.

Можно ли отредактировать EXE-шник игры таким образом, чтобы необходимые мне файлы игры получили новые имена?

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

Что же делать? Ответом на этот и некоторые другие вопросы станет программа Hex Workshop , предназначенная для редактирования DLL, EXE и ряда других файлов. Мы ее будем использовать для изменения данных EXE-файлов. Программу можно взять с нашего DVD. Интерфейсе программы предельно прост — три поля редактирования и две очень удобные инструментальные панели. Зайдите в пункт меню Edit/Find или воспользуйтесь комбинацией горячих клавиш Ctrl+F для вызова меню поиска. В появившемся окошке в поле Type выберите параметр Text String , в поле Value — название файла. После ввода данных смело жмите кнопку OK. После того как Hex Workshop прошерстит EXE-шник в правом нижнем поле утилиты вы увидите строки с введенным вами именем.

Дальше ищите строку с именем файла, который вы хотите переименовать. Нашли? Поднимайте свой взор в самое верхнее поле программы. Здесь виден текст — множество непонятных символов и имя заветного файла. Удаляем старое название и задаем новое. При этом количество символов в новом имени должно быть равно количеству символов в старом файле (если этого не учесть, контрольная сумма не совпадет и мод не запустится).

Со вскрытием и редактированием мы разобрались. Но давайте доведем дело до конца и поменяем иконку у нового EXE-файла. Для этого нам понадобится другая утилита — Resource Hacker. Всю область редактора можно разделить на два поля боевых действий — в первом (слева) отображается список ресурсов, упакованных в EXE-файл, в правом — просматриваемые ресурсы. Чтобы загрузить данные об exe-файле, который вы собираетесь отредактировать в Resource Hacker, достаточно выбрать пункт меню File/Open и в появившемся окне указать полный путь к файлу. Когда как файл будет загружен, в левом поле редактора отобразится структура файла, а правое окно окажется пустым. В списке файлов/папок найдите каталог с названием Icon. Теперь вам необходимо отыскать в данной директории файл, содержащий иконку программы. После того, как значок будет найден, зайдите в пункт меню Action/Replace Icon. Перед вами появится новое окно, в котором предложат выбрать новую иконку. Для того чтобы произвести замену кликните мышкой по кнопке Open file with new icon. Выберите иконку из списка в поле Select new icon и нажмите кнопку Replace. Будет произведена замена. Нажатием Ctrl+S сохраните изменения и покиньте программу.

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

Можно ли в Quake 4 пользоваться кастетом (gauntlet) в сингле и бластером (blaster) — в мультиплеере?

Да без проблем. Как вы, наверное, знаете оба вида вооружения повешены на «единичку». По умолчанию кастет доступен только в многопользовательском режиме, бластер — исключительно в сингле. Впрочем, вам не составит труда поменять их местами.

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

Откройте в «Блокноте» файл player.def из папки \def , лежащей в архиве pak001.pk4 (он в свою очередь располагается в директории Quake 4\q4base ). Найдите в этом файле следующую строку (она находится в разделе entityDef player_marine ):

“def_weapon0” “weapon_blaster”

Замените в ней слово blaster на gauntlet. После этого первым орудием убийства в сингле станет именно кастет.

Чтобы сделать его начальным оружием игрока (то есть тем, с которым мы начинаем игру), проверните ту же самую операцию над еще одной строкой этого же файла:

“weapon” “weapon_blaster”

Все — можете смело пользоваться кастетом в одиночном режиме игры. Настоятельно рекомендую произвести над первым оружием еще одно важное преобразование. Gauntlet изначально рассчитан на сетевую игру, поэтому мощность его невелика. Это сделано из-за того, что в многопользовательском режиме игрок сражается на равных с другими людьми, а здоровья у их персонажей куда меньше, чем у компьютерных монстров. Поэтому, чтобы кастет не был бесполезной игрушкой, очень желательно подредактировать файл gauntlet.def (он лежит в архиве pak001.pk4 , папка \ def\weapons ), где прописаны его боевые характеристики. Измените значение атрибута damage , расположенного в заключительном блоке ( entityDef damage_gauntlet ) файла, на 75. Теперь кастет стал очень даже эффективным оружием.

Что же касается бластера в сетевой игре, то он добавляется в нее следующим образом. Обратитесь к разделу entityDef player_marine_mp все того же файла player.def. Нас интересует следующая строчка:

“def_weapon0” “weapon_gauntlet”

Замените слово gauntlet на blaster. Откройте файл blaster.def из директории \def\weapons архива pak001.pk4 и присвойте параметру damage в блоках entityDef damage_blaster и entityDef damage_blaster_charged (первый из них посвящен обычному заряду бластера, второй — «накопленному») значения 6 и 35 соответственно. В результате бластер станет немного слабее. Это позволит вам избежать нарушения игрового баланса, неизбежного при переносе оружия из сингла в мультиплеер. Все — можете запускать игру и посмотреть на результаты своей работы.

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