Как создать мод, заменяющий почти любую текстуру в игре

Зачем оно здесь? И чего здесь нет?

Ты хочешь сделать вот так?

Заменить плакаты в игре на что-нибудь поинтереснее (как на скрин-шоте), заменить персонажам цвет одежды, татуировки, макияж или чего-нибудь ещё?
Заменить кнопки и иконки в интерфейсе на отборную похабщину?
Или заменить асфальт на засушеное арахисовое масло?
Тогда ты попал по адресу.

Впрочем, если ты задаёшься вопросами типа:
  • Какую кнопку нажать, чтобы всё сделалось за меня само?
  • Ты можешь сделать это вместо меня?
  • Что такое cmd?
  • Путь до каталога - это куда?
  • У меня есть только пэйнт, я смогу?
  • Как дышать?
  • a sds fgds?
и тому подобным, - ты пришёл не по адресу.

Доучивай матчасть!
Будь мужиком б****ь!

Кстати, скрин-шот выше - это единственная картинка на весь гайд.
Легко не будет.
Минздрав тебя предупредил.

Что нам понадобится и где это взять?

  • Лицензионная копия игры Saints Row IV в Steam. Ибо нефиг.
  • Регистрация на форуме https://www.saintsrowmods.com/ . Без неё не скачать нужные инструменты.
  • Архив Billboard_texture_toolkit_SRIV из вот этой темы: https://www.saintsrowmods.com/forum/threads/billboard-texture-toolkit-for-sriv.6154/
  • Saints Row IV Steam Workshop Uploader - в Steam, в разделе "Инструменты. Если этой приблуды там нет - пишите об этом по-английски в личку этому благородному дону: https://www.saintsrowmods.com/forum/members/minimaul.1/ .
  • Minimaul's Saints Row 2, Saints Row: The Third, Saints Row IV and Gat Out Of Hell tools - по ссылке https://github.com/saintsrowmods/SaintsRowTools нажать Clone or Download, выбрать Download ZIP.
  • Файл pegAssembler_byFlow754_v2.3 из https://www.saintsrowmods.com/forum/threads/flow754s-peg-assembler.10465/
  • Какой-нибудь файловый менеджер типа Total Commander, Double Commander или любая другая приблуда, позволяющая нормально искать нужные файлы в ОГРОМНОЙ куче размазанных по уйме папок мелких файлов.
  • Какая-нибудь приблуда, умеющая делать .dds файлы из bmp, png или в каком там формате у тебя твои весёлые картинки для вставки. Кто-то любит Gimp, кто-то Paint.net, у кого-то завалялись деньжата на фотошоп - дело вкуса.
  • Умение переходить с диска на диск и с папки в папку в DOS.
  • Умение определять путь до папки и путь до файла.
  • Железная воля.

Шаг 1. Распаковываем ресурсы игры

  • Распаковываем архив с Minimaul's Saints Row 2, Saints Row: The Third, Saints Row IV and Gat Out Of Hell tools .
  • Заранее создаём папку, в которую будем распаковывать ресурсы игры, на диске, на котором есть 10 гигабайт свободного места (лучше больше, много больше).
  • Нажимаем [Win]+[R], вводим без кавычек cmd и жмём [Enter].
  • Это ж DOS! В нём переходим в каталог с файлом ThomasJepp.SaintsRow.RecursiveExtractor.exe из упомянутого выше архива.
  • Набираем команду ThomasJepp.SaintsRow.RecursiveExtractor.exe "<your packfile path>" "<your output folder>"
    где "<your packfile path>" - путь до папки с запакованными ресурсами игры (например, D:SteamsteamappscommonSaints Row IVpackfilespccache),
    а "<your output folder>" - путь до заблаговременно созданной папки, в которую будем распаковывать.
    Кавычки обязательны! Скобочки - не нужны.
  • Ждём от 30 минут до 4 часов, пока ресурсы игры распакуются.
    Почему так много?
    Потому, что там
    МНОГО
    МЕЛКИХ
    ФАЙЛОВ
    КУЧЕЙ!!!
    Не всякое железо выдержит такое издевательство.
  • В чорном окне ДОСа перестали появляться новые строчки? И снова появилась командная строка с путём до папки с инструментами? Отлично! Распаковка завершена, можно закрывать окно ДОСа!

Шаг 2. Ищем и распаковываем текстуры

  • Открываем любимый файловый менеджер.
  • Переходим в папку, в которую вы всё распаковали.
  • Сначала ищем файлы вида *.gvbm_pc .
  • Копируем их куда-нибудь отдельно.
  • Повторяем поиск и копирование для файлов вида *.cvbm_pc и *.cpeg_pc .
  • В папку с найденными нами файлами вида *.gvbm_pc , *.cvbm_pc , *.cpeg_pc закидываем три файла из Billboard_texture_toolkit , из подпапки Billboard_texture_toolkit_SRIV V2handy_stuffExtract all cvbm files in current folder .
  • Запускаем Unpack_all_cvbm_files_in_this_folder.bat и молимся.
Если всё прошло хорошо, в папке с файлом, который мы запустили, появится много .dds файлов.

Шаг 3. Рисуем свои текстуры

Любым доступным способом ищем в получившейся куче и заменяем нужные текстурки.
На что обратить внимание:
  • Если текстура непрозрачная - созраняем в DDS с DXT1 сжатием и генерацией мипов.
  • Если на текстуре есть хоть пиксель прозрачности - сохраняем в DDS с DXT5 и генерацией мипов.
  • Если какой-то из двух терминов выше непонятен - мануал к редактору изображений, в котором вы орудуете, и википедия в помощь.
  • Длина, ширина и название заменяемого файла, очевидно, должно совпадать с аналогичными параметрами заменяющего файла.

Шаг 4. Предварительная упаковка

Здесь и далее работаем в папке с инстрррррументом Billboard_texture_toolkit_SRIV V2 .
  • Запихиваем в эту папку файлы sr3_city_0.vpp_pc , sr3_city_1.vpp_pc из каталога [папка с игрой]packfilespccache .
  • Готовые для замены текстуры засовываем в Billboard_texture_toolkit_SRIV V2work_area_dds . Все распакованные текстуры туда совать не надо. Только отредактированные.
  • Возвращаемся в Billboard_texture_toolkit_SRIV V2 , запускаем Pack_and_send_all_work_area_dds_files_to_your_mod_release.bat и молимся, чтобы мягко пошло.
  • Когда в выскочившем окне появится предложение нажать клавишу - жмём её.
Готово, упакованные текстуры легли в Billboard_texture_toolkit_SRIV V2YOUR_WIP_MOD_RELEASEtextures .

Шаг 5. Уплотняем всё добро в два файла

  • Вспоминаем, куда распаковали pegAssembler_byFlow754_v2.3 .
  • Запускаем pegAssembler_byFlow754.exe .
  • Возвращаемся в Billboard_texture_toolkit_SRIV V2YOUR_WIP_MOD_RELEASEtextures и мышью перетаскиваем оттуда все файлы на окно запущенной нами программы.
  • В поле name ОБЯЗАТЕЛЬНО вводим always_loaded .
  • В output url указываем путь до папки, в которой появятся запакованные файлы с текстурами (1-2 штуки, не больше).
  • Жмём Create.

Шаг 6. Публикуемся в Steam Workshop

  • В Инструментах Steam запускаем Saints Row IV - Workshop Upload Tool .
  • Перетаскиваем мышью на окно программы сделанные нами в предыдущем шаге файлы always_loaded.cpeg_pc , always_loaded.gpeg_pc .
  • Жмём File > Save > To Steam Workshop .
  • Заполняем появившуюся форму и жмём Upload.
  • Ждём, пока в появившемся окне не появится надпись, что усё successfully uploaded.
  • Идём в свой Steam Workshop, находим там свой свежезагруженный модик, подписываемся на него, ставим сами себе лайк и занимаемся прочими очень нужными после изготовления мода штуками.

FAQ - ЧАВО

Если что-то пошло не так - сначала внимательно перечитай этот гайд.
Если тебе нужно написать мне вопрос по этому гайду - сначала внимательно перечитай гайд.
Если ты не можешь найти Saints Row IV Steam Workshop Uploader - сначала внимательно перечитай гайд.
Если ты считаешь, что этот гайд отстой, а я ишак, - то и хрен тебе в пятку, ищи того, кто напишет лучше.
Если ты считаешь, что этот гайд хорош, а я не такой уж и долботряс, - ты знаешь, что делать. Впрочем, просто лайкнуть гайд - тоже неплохо.
Почему именно always_loaded? В официальном руководстве по моддингу написано, что названные так архивы с текстурами проверяются движком игры отдельно, текстуры из них всегда загружаются вместо любых других текстур из других файлов.

Откуда есть пошёл этот гайд и прочие благодарности

За основу был взят гайд https://www.saintsrowmods.com/forum/threads/billboard-texture-toolkit-for-sriv.6154/ за авторством gameqube .
Увы, поскольку тот гайд слегка устарел и производил моды размером по 800 мегабайт, мне показалось, что не мешало бы его обновить.
И я обновил, да...

Пользуйтесь в своё удовольствие!

А благодарности...
Перефразируя классика:
"В подготовке этого гайда мне не помогал никто; тех, кто мне мешал, я не перечисляю, так как это заняло бы слишком много места."