[FAQ] Модификация файлов игры для запуска прямо из XMB
Модификация файлов игры для запуска прямо из XMB (F.A.Q.)
Недавно в интернете появилась инструкция о том, как преобразовать файлы обычной игры ps3 в игру, которую можно запустить из XMB подобно PSN играм.
В соседней теме egoregor сдвинул дело с мертвой точки, начав пытатья воплотить шаги этой инструкции в жизнь, по его просьбе была создана эта тема.
Оригинал инструкции здесь по этой ссылке.
Попробуем повторить, может быть что-то изменив.
Ниже следующие шаги будут справедливы для работы под Linux и cygwin (эмулятор Linux окружения под Windows).
Шаг 0. Получите рабочую среду cygwin или linux с доступом к интернету и возможностью обмена файлами.
читать дальше В случае с Linux можно установить в виртуальную машину (VirtualBox, VMWare Player и т.д.) какой-нибудь из простеньких дистрибутивов (Ubuntu, Fedora, которые ставятся в графическом режиме и после установки пользователь получает готовую к работе среду).
В случае с cygwin - надо скачать с официального сайта инсталлятор, который попросит вас выкачать еще кучу пакетов.
Вам потребуется компилятор gcc (из devel), git (для получения файлов из репозиториев).
Если кто-то хорошо разбирается в cygwin и необходимых для установки компонентов, и способен это четко оформить в виде последовательности действий - я могу включить это в текущий пост.
Шаг 1. Получаем нужные программы и файлы.
читать дальше a). убедитесь что у вас есть инструмент git для получения исходных кодов с git репозиториев:
$ which git
/usr/bin/git
b). зайдите в каталог где у вас есть права на запись в файлы и на исполнение:
$ cd /путь/до/такого/каталога/
c) склонируйте себе репозиторий с ключами:
$ clone https://github.com/skopy9581/ps3keys.git ~/.ps3
(если по этому адресу репозиторий окажется недоступен, то можно попробовать другие репозитории, например этот,
или просто поиском ps3keys на сайте github.com или других хранилищах с исходниками.)
d). склонируйте себе репозиторий с ключами и:
$ git clone git://github.com/skopy9581/fail0verflow.git ps3tools
(адреса альтернативных репозиториев: здесь, здесь, здесь.
e). скомпилируйте исполняемые файлы:
$ cd ps3tools && make all && cd ../
f). получим инстрменты от Геохота:
$ git clone git://github.com/skopy9581/ps3publictools ps3publictools
(альтернативные адреса репозиториев: здесь, или здесь.
g). скомпилируйте исполняемые файлы:
$ cd ps3publictools && make linux && cd ../
Шаг 2. Извлечь ELF из SELF (кстати "Signd ELF", или как расшифровывается SELF?)
(не обязательно для всех игр) Шаг 3. Заменить в полученном EBOOT_ORIGINAL.ELF все упоминания слова "dev_bdvd" на "dev_hdd0".
Шаг 4. Создать NPDRM SELF-файл из нашего ELF файла который был извлечен из оригинального SELF.
Шаг 5. Создать пакет, используя psn_package_npdrm
читать дальше a). Создайте файл с именем "<id-игры>.conf"
Отредактируйте содержимое файла:
Content-ID = UP0001-<id-игры>_00-0000111122223333
k_licensee = 0x00000000000000000000000000000000
DRM_Type = Free
Content_Type = Game_Exec
PackageVersion = 01.00
b). Cоздайте папку "<id-игры>"
Поместите в эту папку все файлы (но не каталоги, исключением может быть только TROPDIR который тоже можно сюда скопировать), каталога "PS3_GAME" вашей игры.
c). Создайте в папке <id-игры> подпапку "USRDIR", туда поместите
созданный вами EBOOT.BIN
d). Вам потребуется модифицировать PARAM.SFO, предположим вы его переименовали в PARAM_ORIG.SFO:
$ dd if=PARAM_ORIG.SFO | sed s/DG/HG/g > PARAM.SFO
Не забудьте поместить модифицированный вами PARAM.SFO в каталог "PS3_GAME"!
e). Создадим пакет из того что мы насобирали:
$ ./psn_package_npdrm <id-игры>.conf <id-игры>
Шаг 6. Пропатчить созданный пакет при помощи утилит Геохота
Шаг 7. Полученный пакет можно устанавливать на пс3
Метод рабочий, правда с оговоркой что fail0verflow и геохот вроде прикрыли свои репозитории, и теперь скачать файлы через git с них нельзя.
Последний раз редактировалось ErikPshat; 15.01.2011 в 13:09.
|