Регистрация Авторизация В избранное
 
 
Меню
Greengh0st

Переводы Greengh0st’a

Проекты Greengh0st’a

Переводы Gamerbes & Hanasaka

Баннеры

JurasskPark BHLady

Magic Team Megaten

PSCD.RU

Счётчик посещений

HotLog

Добавление картинки и иконки в exe’шный патч IPS’a или Дока-шмока 2

Автор: JurasskPark
Опубликовано: 4770 дней назад (16-05-2010 19:27)
0
Голосов: 0
Документация основана на учениях nikita600.

Для добавления картинки и иконки нам понадобятся:
UPX303, ResHacker, патч, картинка, иконка.

1. Для начала возьмём патч. Я взял патч-пустышку, которая была создана на основе оригинальных РОМ’ов SNES’a, т.е. там ничего нет. Одна оболочка. Эта оболочка весит 4,3 Кб.
Файл "/upload/blog/doka01.png" не найден!


2. Открываем командную строку. Переходим в папку, где лежит патч (для тех кто не помнит - это команда cd <путь к папке>). Я замарачиватся не стал и кинул патч в папку 1 на диске С. smile
Пишем команду
<b>upx.exe -d patch.exe</b>, где patch.exe - это имя патча, который расжимаем.
Файл "/upload/blog/doka02.png" не найден!




3. Теперь через ResHacker открываем патч, щелкаем по Dialog -> 200 -> 1033 и видим вот такую картину.
Файл "/upload/blog/doka03.png" не найден!


4. Решаем какую картинку будем вставлять. Я решил вот эту. smile
Файл "/upload/blog/magicteam.png" не найден!

<b>Кстати, картинка должна быть в формате BMP!</b>
Весит картинка у меня 159 Кб.
Файл "/upload/blog/doka11.png" не найден!


5. Добавляем картинку Action -> Add a new Resource...
Файл "/upload/blog/doka04.png" не найден!

Даём имя для нового ресурса т.е. картинки. Я написал просто RIS (от слова рисунок. smile).
Файл "/upload/blog/doka05.png" не найден!

Нажимаем кнопку Add Resource.

6. В программе появилась новая папка Bitmap. Переходим по ней Bitmap -> RIS -> 0. Если всё нормально, то вы увидите картинку.
Файл "/upload/blog/doka08.png" не найден!

А если нет, то увидете сообщение.
Файл "/upload/blog/doka06.png" не найден!

Значит, что с форматом BMP у вас что-то не так.
Откройте картинку в Paint и сохраните её как "256-цветный рисунок".
Файл "/upload/blog/doka07.png" не найден!

Для замены имеющейся картинки в программе на другую, щелкните по картинку ПКМ и в меню выберите Replace Resourсe. В появивщемся окне нажмите на кнопку "Open file with new bitmap...", выбираете нужную картинку и нажимаете затем кнопку Replace. Всё. Картинка заменена.

7. Теперь переходим в диалоговую форму Dialog -> 200 -> 1033. Картинку на форме вы не увидите, пока не добавите код.
<b>CONTROL "FILENAME", 0, STATIC, SS_BITMAP | WS_CHILD | WS_VISIBLE | WS_GROUP, 222, 65535, 146, 162</b>, где FILENAME - это имя файла. В моём примере это RIS.
Далее необходимо нажать на кнопку "Compile Script", которая после внесения(изменения) кода должна быть активной.
Переходим на форму и раздвигаем границу форму. Видим это.
Файл "/upload/blog/doka09.png" не найден!

Каждый сам как захочет может разместить и перевести объекты на форме, но я покажу вам уже готовый пример с выровненными объектами и переведёнными надписями.
<b>
200 DIALOG 120, 57, 244, 245
STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Патч без НИКТО smile"
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
FONT 8, "MS SANS SERIF"
{
   CONTROL "Описание", 101, BUTTON, BS_GROUPBOX | WS_CHILD | WS_VISIBLE, 3, 108, 240, 70
   CONTROL "", 102, EDIT, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL, 7, 119, 231, 53
   CONTROL "Файл, который будем патчить", 103, BUTTON, BS_GROUPBOX | WS_CHILD | WS_VISIBLE, 3, 181, 240, 30
   CONTROL "", 104, EDIT, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 7, 192, 184, 12
   CONTROL "Открыть", 105, BUTTON, BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 194, 192, 41, 14
   CONTROL "Статус", 106, BUTTON, BS_GROUPBOX | WS_CHILD | WS_VISIBLE, 3, 214, 240, 29
   CONTROL "Информация...", 107, BUTTON, BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 133, 225, 57, 14
   CONTROL "Патчить", 108, BUTTON, BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 194, 225, 41, 14
   CONTROL "", 109, EDIT, ES_LEFT | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER, 7, 225, 123, 12
   CONTROL "RIS", 0, STATIC, SS_BITMAP | WS_CHILD | WS_VISIBLE | WS_GROUP, 5, 6, 233, 95
}
</b>

Файл "/upload/blog/doka10.png" не найден!


8. Добавление иконки в программу, происходит по тем же действиям, что и картинка, только имя пишем ICON.
Файл "/upload/blog/doka13.png" не найден!

После чего в патче появляет папка Icon Group -> ICON -> 0.
Файл "/upload/blog/doka14.png" не найден!

<b>Внимание!</b> Требования к иконке:
- Размер не больше 48х48
- Цвета - 256 colors
9. Сохраняем изменения в патче File -> Save. При этом в папке, где у вам лежал патч, создатся резервная копия патча (на всякий случай smile) без изменений. В конце имени будет написано _original.
Вот такой стал патч.
Файл "/upload/blog/doka15.png" не найден!

Файл "/upload/blog/doka16.png" не найден!


10. Сжимаем патч. Теперь в командной строке пишем
<b>upx.exe -9 patch.exe</b>
Да. Там именно девять. Не ты первый, не ты последний это спрашиваешь. smile
Файл "/upload/blog/doka17.png" не найден!


11. Теперь патч у нас весит 41.3 Кб, но в наши времена, когда каждый день люди качают по 10 Гб фильмов - это не страшно, зато красиво. ;)
Файл "/upload/blog/doka18.png" не найден!


P.S. А некоторые нехорошие дядьки, так и не дали оформить мне патч по игре, а создали его в другой программе, а не в IPS’e.

P.S.S. Две программы из Доки-шмоки 2 smile

UPX303
ResHacker
Четыре дня мучений | Жажда работы

Загрузка комментариев...

 
 
InstantCMS