(http://pscd.ru/forum/uploads/monthly_12_2013/post-95-0-97666900-1386671818.png)
DrMefistO представил свой
пакер-анпакер IMP (
WinImploder GUI).
Программа предназначена для распаковки сжатой графики игр SMD в формате IMP. Можно распаковать, а потом обратно запаковать графику.
Цитировать
Собственно, переделанный с нуля Imploder. Жмет точно так же как оригинал. Распространяется в виде dll-ки, консольной версии и гуишки.
В ридми экспорты для dll-ки, если захотите заюзать у себя в проекте.
Из возможностей GUI:
- Распаковка по оффсету;
- Поиск и извлечение всех архивов;
- Упаковка выбранным режимом сжатия;
- Поиск наилучшего режима сжатия для данного архива;
- Получение режима сжатия выбранного архива (или файла по смещению).
И, проверенный список игр (помеченных [!]), в которых есть данное сжатие:
- Cosmic Spacehead
- Fantastic Dizzy
- Lawnmower Man, The
- Man Overboard! - S.S. Lucifer
- Mega SWIV
- Micro Machines
- Pete Sampras Tennis
Скачать win_imploder_1.0 (http://yadi.sk/d/1Wy3A0SHE5sZT)
Как работать с программой для распаковки и запаковки графики IMP встречающиеся в играх для SEGA MEGADRIVE.
Узнать использует ли игра
формат сжатия IMP очень просто. Нужно либо в Hex-редакторе открыть игру и найти сочетание букв
IMP!, что в байтах выглядит как
49 4D 50 21. Или же открыть ром программой и проверить ей.
Я не нашёл
руководства как пользоваться программой пакер-анпакер IMP, поэтому думаю данное сообщение многим будет полезна. Что будет непонятно, спрашивайте.
В качестве примера я взял игру
Man Overboard! - S.S. Lucifer (http://pscd.ru/games/smd/msmd/539-man-overboard-ss-lucifer.html), буду использовать ром
Man Overboard! - S.S. Lucifer (E) [c][!].gen.
Как извлечь запакованную графику.
Конечно это можно сделать вручную, используя
Хекс редактор. Но я думаю, не стоит усложнять себе жизнь, лучше воспользоваться программой.
(http://pscd.ru/forum/uploads/monthly_12_2013/post-1-0-11311100-1387971405.png)
Первым делом
запускаем программу. Затем
жмём на кнопку с изображением трёх точек (
...) напротив надписи "
Input:". Здесь
выбираем тот
ром, в котором мы хотим найти, а затем и извлечь сжатую графику формата
IMP.
Затем нажать RadioButton (радиобаттон), кружок, где появится точка,
напротив слова "Explode All".
Теперь осталось только
нажать кнопку "Run" и подождать какое-то время.
Если в игре имеется такой тип сжатие, то высветится сообщение на подобие этого:
ЦитироватьMode: Exploded all archives;
Exploded at: 0F28AC (934 bytes)
Exploded at: 0F29B6 (3910 bytes)
Exploded at: 0F3036 (13670 bytes)
Done! Exploded archives count: 3
После этого в той попке, где лежит наш ром, мы получим три файла:
001_0F28AC_exp.bin002_0F29B6_exp.bin003_0F3036_exp.bin Это файлы уже с разжатой графикой. В них можно вносить изменения, но после этого их нужно будет сжать и внести обратно в игру.
Так же
можно извлекать файлы по одному. Для этого нужно знать, где в роме начало архива сжатой графики. Вводим этот адрес напротив слова "
Explode at" и кликаем по радиобаттону. Затем жмём кнопку "
Run".
Как вернуть изменённую графику в игру.
Как запаковать графику обратно в формат IMP.(http://pscd.ru/forum/uploads/monthly_12_2013/post-1-0-61908500-1387971405.png)
Опять таки запускаем программу.
Жмём на туже кнопку с тремя точками напротив слова "
Input:". Здесь уже
выбираем наш файл с изменённой графикой. Например
003_0F3036_exp.bin.
Затем
жмём на кнопку с тремя точками напротив слова "
Outnput:". Здесь даём имя файлу и выбираем место куда его сохранить.
Затем
нажать RadioButton (радиобаттон), кружок, где появится точка, напротив слова "
Implode".
Теперь
жмём кнопку "Run" и ждём какое-то время. Если всё сделано правильно, то мы увидим сообщение на подобие этого:
ЦитироватьMode: Implosion;
Input size: 3566;
Output size: 15F0;
Done!
После этого в папке, куда мы указали путь сохранения, мы получим файл с зажатой графикой.
Имя файла.bin Как вставить архив со сжатой графикой обратно в ром игры.Для этого нам
понадобится Hex-редактор.
Открываем в нём игру и файл со сжатой графикой. В игре переходим по адресу, где начинается архив графики, например:
0F3036. Сюда и вставляем скопированное содержимое второго файла. После этого сохраняем и можем полюбоваться результатом запустив игру в эмуляторе или на железной
SMD используя флеш картридж.
(http://pscd.ru/forum/uploads/monthly_12_2013/post-1-0-34313400-1387971404.png)