怪物獵人崛起解包教程

本教程翻譯自https://github.com/mhvuze/MonsterHunterRiseModding/wiki/Extracting-Game-Files。有條件的小伙伴可以直接去github上觀看完整英文內(nèi)容。
簡介
怪物獵人崛起使用了Capcom開發(fā)的RE Engine引擎。與其他基于RE Engine的游戲(例如Resident Evil 7和Devil May Cry 5)非常相似,怪物獵人崛起的游戲數(shù)據(jù)存儲(chǔ)在.pak這種容器文件中。REtool是《生化危機(jī)》mod大佬FluffyQuack編寫的一個(gè)工具,該工具可用于拆包和重新打包怪物獵人崛起的.pak容器文件。有關(guān)上述.pak文件結(jié)構(gòu)的更多信息,請參見下面鏈接的源代碼。(https://residentevilmodding.boards.net/thread/10567/pak-tex-editing-tool)
為了得到游戲數(shù)據(jù),我們需要對(duì)xci或nsp文件解密并拆包,然后對(duì)拆出的.pak容器文件進(jìn)行進(jìn)一步的拆包。
準(zhǔn)備工具
*?hactool?— 解包Switch游戲ROM工具
* 從Switch導(dǎo)出的?prod.key文件?— 與hactool一起使用
*?GetTitlekey.exe?— 用于獲取nsp文件的密鑰。
*?REtool?— 拆包打包.pak文件
*?mhrise.list?—?REtool拆包打包需要的文件列表
*?怪物獵人崛起的游戲ROM文件(xci或者nsp文件,請自己購買游戲dump)
以上工具可以在百度網(wǎng)盤下載:https://pan.baidu.com/s/1Z4YNMtmyivSiPeMGvLvjWQ。提取代碼tjiv。游戲文件請自行購買卡帶dump或從eshop購買后dump。
游戲ROM解包
1. 將從Switch中導(dǎo)出的的prod.keys文件與hactool.exe放在同一目錄中(已在下載包中集成)
2. 將游戲ROM(xci或nsp文件)與hactool.exe放在同一目錄中
3. 在與hactool.exe相同的目錄中打開命令行,方法如下:按住Shift鍵并右鍵單擊資源管理中的空白區(qū)域,然后在此處打開 PowerShell 窗口。
4. 根據(jù)你的游戲ROM的格式,在命令行中復(fù)制并粘貼下面引用部分找到的對(duì)應(yīng)命令,同時(shí)相應(yīng)地調(diào)整文件名(包括密鑰文件名)。然后按回車鍵執(zhí)行每個(gè)命令
5. 完畢。可以在hactool.exe的目錄中找到帶有.pak文件的romfs目錄
hactool 命令
NSP格式
nsp格式會(huì)有1.0的基礎(chǔ)包和后續(xù)類似1.1.2的更新包
./hactool.exe -k prod.keys -tpfs0 -x --outdir="unpacked_base" 對(duì)應(yīng)的基礎(chǔ)包nsp文件名.nsp
將unpacked_base文件夾中的?.tik?文件拖到GetTitlekey.exe文件的圖標(biāo)上獲取密鑰并記錄下來
注意下一步要找到unpacked_base文件夾中文件名是數(shù)字加字母.nca文件中大小最大的那個(gè)文件名
./hactool -k prod.keys --titlekey=上一步的密鑰?--plaintext="unpacked_base/decryptedBase.nca" unpacked_base/文件夾中最大的那個(gè)文件名.nca
./hactool.exe -k prod.keys -tpfs0 -x --outdir="unpacked_patch" 更新包.nsp
將unpacked_patch文件夾中的?.tik?文件拖到GetTitlekey.exe文件的圖標(biāo)上獲取title key并記錄下來
注意下一步要找到unpacked_patch文件夾中文件名是數(shù)字加字母.nca文件中大小最大的那個(gè)文件名,密鑰也是unpacked_patch文件夾中.tik文件對(duì)應(yīng)的密鑰
./hactool.exe -k prod.keys --basenca=unpacked_base/decryptedBase.nca --titlekey=上一步的密鑰?--romfsdir=romfs unpacked_patch/文件夾中最大的那個(gè)文件名.nca
XCI格式
如果是已經(jīng)打包好1.1.2更新的xci整合包,只需要做第一步即可,如果xci是1.0基礎(chǔ)包,且想獲得1.1.2的數(shù)據(jù),則需要一個(gè)nsp格式的1.1.2更新包
./hactool.exe -k?prod.keys?-txci --securedir="unpacked_base"?基礎(chǔ)包.xci
./hactool.exe -k?prod.keys?-tpfs0 -x --outdir="unpacked_patch"?更新包.nsp
將unpacked_patch文件夾中的?.tik?文件拖到GetTitlekey.exe文件的圖標(biāo)上獲取title key并記錄下來
注意區(qū)分下一步中unpacked_base和unpacked_patch兩個(gè)文件夾名稱的區(qū)別
./hactool.exe -k prod.keys --basenca=unpacked_base/文件夾中最大的那個(gè)文件名.nca --titlekey=上一步的titlekey?--romfsdir=romfs unpacked_patch/文件夾中最大的那個(gè)文件名.nca
.pak文件解包
在上一章節(jié)中提取的romfs文件夾中找到re_chunk_000.pak文件,并將其移至與REtool.exe相同的目錄中
將您下載的mhrise.list文件移動(dòng)到與REtool.exe相同的目錄中
在與REtool.exe同級(jí)目錄中打開命令行,方法如下:按住Shift鍵并右鍵單擊資源管理中的空白區(qū)域,然后在此處打開 PowerShell窗口。
將以下命令復(fù)制并粘貼到命令行中,同時(shí)相應(yīng)地調(diào)整文件名:
.\REtool.exe -h mhrise.list -x -skipUnknowns -noExtractDir pak_name.pak
然后按Enter鍵執(zhí)行命令
完畢。 你可以在REtool.exe同級(jí)目錄中找到pak_name目錄,里面存放著所有已知的解包文件