欢迎食用『主界面』~,这里是赵苦瓜的看板娘desu~

#
【日常】瞎解包原神文件记录
首页 > 日常    作者:赵苦瓜   2021年2月3日 23:37 星期三   热度:91368°   百度已收录  
时间:2021-2-3 23:37   热度:91368° 

原神3.4_2.jpg


前言:

工具没有好坏,重要的是你怎么去使用它!

目前发现了CG动画(usm文件)、角色语音包&背景音乐&各种音效(pck文件)、模型动作贴图等(blk)是可以解包出来的。

如果需要MMD模型,还是建议在文章底部找到官方配布的链接进行下载。

如果需要寻找官方H5网页活动并从中提取动态live2d立绘、spine动画图片等,请访问我的这个Github仓库:

Zhaokugua/GI-WebActivity-Library: 原神网页H5活动链接收集 | Genshin Impact H5 Web Activity Collection (github.com)


CG动画尝试解包

从3.0妮露的CG开始官方投稿的CG画质也升级到4K60帧了,比游戏里放的1080P30帧强多了呜呜

翻了一下原神的资源目录

在D:\Program Files\Genshin Impact\Genshin Impact Game\YuanShen_Data\StreamingAssets\VideoAssets\StandaloneWindows64里面发现了一些USM文件,应该是视频

根据评论区指点,可以使用ToaHartor/GI-cutscenes: A command line program playing with the cutscenes files (USM) from Genshin Impact. (github.com)

这个项目进行解包。这是个命令行程序。

一、准备工作

①首先去Release页面下载程序,然后解压缩。(一般下载GICutscenes-版本号-win-x64-standalone.zip即可)

②下载并安装MKVToolNix(MKVToolNix Downloads – Matroska tools for Linux/Unix and Windows),用于将USM中的音频、视频和字幕合并为mkv文件。

【注意,v0.4.0 及更新版本不再必须这个东西来合并 mkv ,可以使用 --engine 命令来指定 mkv 视频处理引擎,比如 internal, mkvmerge 和 ffmpeg (默认为internal自带的引擎)】

③从Dimbreath/GenshinData: Repository containing the game data for the game Genshin Impact. (github.com)下载Subtitle字幕(如果需要字幕)。

④打开GICutscenes的appsettings.json文件,修改MkvMergePath为你刚才安装MKVToolNix的mkvmerge.exe的完整路径。

另外,FfmpegPath为ffmpeg的文件夹,留空则使用PATH环境变量里面的。SubsFolder改为Subtitle字幕的文件夹。

我的配置文件如下所示:(Windows环境下路径要有转义字符所以写两个\\

{
  "Settings": {
    "MkvMergePath": "E:\\Program Files\\MKVToolNix\\mkvmerge.exe",
    "FfmpegPath": "",
    "SubsFolder": "./GenshinData/Subtitle"
  }
}


⑤从这里Genshin Impact\Genshin Impact Game\YuanShen_Data\StreamingAssets\MiHoYoSDKRes\HttpServerResources\font拷贝两个ttf字体文件到GICutscenes的文件夹,用于显示和官方一样的字幕的字体。

二、开始转换

根据官方说明,这个有三个转换命令。demuxUsm命令可以转换单个usm文件,batchDemux可以转换一个文件夹里面所有文件,convertHca可以把HCA音频文件转换为WAV音频。

--output可以设置输出文件夹,--merge可以添加合并的步骤,合并成mkv文件,--subs可以添加字幕,--no-cleanup是合并完mkv文件之后不删除转换出来的单个文件。


如果不合并mkv文件的话会输出ivf文件(存放VP9视频编码的一种容器)和wav文件。如果不会播放ivf文件可以把ivf改为m2v然后即可播放。


高级命令:-b 解包单个USM文件时设置key1  -a 解包单个USM文件时设置key2


示例代码:

在GICutscebes文件夹打开命令提示符(cmd)或者Powershell,然后即可执行下面的命令:

转换单个文件:

GICutscenes demuxUsm 【USM文件路径】 --merge表示合并成mkv --subs表示把字幕也添加进去

GICutscenes demuxUsm "E:\\Program Files\\GICutscenes\\Cs_LQ1101505_YunjinOpera_Girl.usm" --merge --subs
然后回车执行,即可看到解包成功,并生成了对应的MKV文件!


解包单个文件.jpg

转换一个文件夹内多个USM文件:

GICutscenes batchDemux 【包含USM文件的文件夹】 --output设置输出路径 【输出路径】 --merge合并成mkv文件 --subs添加字幕

GICutscenes batchDemux "K:\\Genshin\\private\\2.6\\YuanShen_Data\\StreamingAssets\\VideoAssets\\StandaloneWindows64" --output "K:\\Genshin\\Video" --merge --subs

这样就能批量把USM文件转换为mkv文件了。


【如果转换原神新版本的视频文件的时候出现错误】

从2.7版本开始,原神的usm文件的key只在游戏中需要播放cg动画的时候才会联网获取,而不是像之前一样可以直接从游戏中解包出来。

如果使用GICutscenes转换原神新版本时出现报错,可能是存放cg动画密码的文件versions.json没有更新,可以去官方仓库下载这个文件然后更新替换一下。

可能版本更新前几天这个文件还没更新,可以耐心等待他们对新版本的cg密码进行抓包更新。



无UID无水印的CG动画预览:

只是投到B站预览一下,当然是被b站二压之后的版本,所以字幕和多语言的音轨都没了,码率也从1w左右压到了5k(1080P高码率),也就看一看。

想要源文件的话建议根据上方教程自行转换。



这里也有B站绿菟葵花精灵王」已经转换好的视频,每次更新他都会及时传上去,四国语言都有,无水印的。

可以去b站看到所有的视频,也可以用唧唧Down等软件下载下来直接作为素材使用。






之前踩的坑(不适用于2.3及以后版本):

然后下载了vgmtoolbox_bin_r977进行转码,转码为m2v

点击查看原图

然后得到了一个似乎被加密而无法播放的m2v视频(后续经大佬查看确实加密了,但是似乎能看密码)和一堆HCA音频

【注意,大概2.3版本过后,由于hca音频变成了加密的bin文件,此方法已经失效

然后使用这个进行HCA音频转码,转为WAV

https://github.com/OpenCGSS/DereTore/

然后下下载解压,把HCA文件拖到hca2wav.exe上面即可完成转码

这个音频是正常的,我测试了很多CG动画,都可以使用这种方法解包出音频。

后来我又对视频文件进行了分析,发现是采用VP9进行的视频编码。

使用ffmpeg可以强制转换成MP4,但是得到的视频文件是全程花屏的,这并不是我们想要的结果。

目前还不清楚视频如何进行解密,欢迎大佬指点!



角色语音&背景音乐尝试解包

然后翻到一堆pck音频

D:\Program Files\Genshin Impact\Genshin Impact Game\YuanShen_Data\StreamingAssets\Audio\GeneratedSoundBanks\Windows

使用了Extractor2.5进行解包

然后我得到了一堆加密的WAV文件


然后根据评论区老哥还有https://bugxia.com/2377.html这篇博客的指点

我们采用vgmstream进行解密和转码

https://github.com/vgmstream/vgmstream/

下载完release里面的vgmstream-win.zip(windows系统),解压缩之后,把加密的wav文件拖到test.exe(新版本好像改成vgmstream-cli.exe了)上面就可以转换了,转换完成的音频就可以播放了。

批量转换:写一个bat:

@echo off
for /r %%i in (*.wav) do (
	"E:\Program Files\VGMStream\test.exe" "%%~nxi"
	del "%%~nxi"
)
pause


记得把那个test.exe的路径改成你解压完的那个里面的test.exe的路径

把这个bat和想要转换的wav文件放在同一个文件夹,运行这个bat即可将文件夹内所有wav文件全部转换并且删除原来的转换之前的文件

如果转换完不想删除的话,把del那一行删掉即可


由于音频都没有命名,所以说只有听了才知道是什么。

比如Music是一些游戏内的背景音乐

Music_1.5_0 00033——若陀龙王战斗曲(其一)

Music_1.5_0 00009——优菈出场曲

Music_1.5_3 00001——若陀龙王战斗曲(其二)

Music_1.5_4 00030——若陀龙王战斗曲(其三)

Minimun是一些窗口交互的音效和登录背景音乐

SFX是一些音效(包括怪物的声音,比如愚人众、深渊法师、史莱姆、公子、纯水精灵等,还有兔兔伯爵爆炸声,元素方碑声,做饭声),Banks里面也是更多的音效,好像有踩沙子的声音,击剑声,掉水声,打破箱子声,留影机照相声,角色界面切换不同元素角色的声音,元素反应的声音,射箭的声音

Stream里面似乎是一些背景音,风声,鸟叫声,狼嚎声,海浪声,嘈杂的集市声,蒙德主题曲片段等

对应语言的文件夹里面的文件是一些角色的语音

*20230816更新 好像四国语音换位置了,在YuanShen_Data\Persistent\AudioAssets里面

这些角色语音不是按顺序排的,很乱,里面既有任务语音,还有角色的那个详情的语音,都是掺杂在一起的。


不过B站有位老哥解包出来之后通过调用腾讯的语音识别,能大致知道一些语音表示的是什么。
原文章:原神语音文本整理 - 哔哩哔哩 (bilibili.com)

对照表的在线文档:[只读]原神1.6 语音asr 6-8 简单修正 - 金山文档 (kdocs.cn)

注意:2.7版本音频结构大改,很多音频位置都有所调整


几个解包出来的语音(为了方便在线播放已转换为MP3):

不太行,这锅盐多了(言笑):

起个难听的绰号(派蒙):

VO_2.4_0 00050耽误太多时间-派蒙版(派蒙):

该电一电了(丽莎):

交给我吧,什么都可以交给我(诺艾尔):

爆炸(兔兔伯爵)SFX_1.6_0 00159:

发现你了~偷窥者(雷莹术士)SFX_1.6_2 00062:

你是~来陪我玩的吗(雷莹术士)SFX_1.6_2 00061




之前的错误示范:


然后使用ww2ogg 0.24进行解密和转码

然而用0.24版本会报错:


ww2ogg "F:\VO_1.3_0 00001.wav" -o test.ogg
Audiokinetic Wwise RIFF/RIFX Vorbis to Ogg Vorbis converter 0.24 by hcs

Input: F:\VO_1.3_0 00001.wav
Parse error: expected 0x42 fmt if vorb missing


于是我又换了ww2ogg019

然后还是报错Parse error: unknown chunk type

我好像明白了什么

或许语音包加密了解不出来



MMD模型

哦,对了,如果你想要原神里面角色的MMD模型的话,原神官方是有在模之屋配布的

戳链接:https://www.aplaybox.com/u/680828836


字体文件

可以取巧直接用它用在Web的字体

Genshin Impact\Genshin Impact Game\YuanShen_Data\StreamingAssets\MiHoYoSDKRes\HttpServerResources\font这个路径

国服有zh-cn.ttf简中和ja-jp.ttf日语两种字体。


blk解包

原神虽然也是Unity引擎,但是直接使用AssetStudio会有各种报错。那么如何解包呢?

根据评论区老哥的指点,github上现在有了一个专为原神魔改版的AssetStudio——GenshinStudio。

github地址:Razmoth/GenshinStudio: Modded AssetStudio for Genshin Impact (github.com)

在release下载最新版即可。

(仓库好像被DMCA了,用这个试试Tools / Studio · GitLab或者这个RazTools/Studio: Modded AssetStudio with new features (github.com)

然后像使用AssetStudio一样,左上角选择File -> Extract folder,选择Genshin Impact\Genshin Impact Game\YuanShen_Data\StreamingAssets\AssetBundles\blocks文件夹,然后等待他载入即可。

载入完成后选择Misc.的build blk map和build cab map,以便加速下次加载的时间。


需要注意的是多出来的黑框框不要关掉。

由于原神文件比较多而且零碎,因此第一次载入可能会非常慢,可能需要十几到几十分钟不等,请耐心等待。

(内存小于16G可能在载入时导致死机重启,尽量使用大内存的机器或者分文件夹载入,防止内存爆了)

原神blk解包.JPG


Property_Prop_GorouBillboard_02_Diffuse.pngStages_Deca_Typeface_01_SMBE.png

如果只是想要找一些贴图,也可以到这个仓库看看

https://github.com/umaichanuwu/GenshinLinks

这里面都是大佬解包好的贴图文件,也都做好了分类,可以直接查看。


关于hdiff拆分更新文件:

大概从2.5版本开始,拆分更新包里面就出现了这种hdiff文件来进行拆分更新。

可以使用下面这个东西,把hdiff拆分更新文件打包进原来的文件里面,然后再进行解包。

https://github.com/sisong/HDiffPatch


关于网页活动

从网页活动里还可以获得一些别的素材,比如在新版本现行展示页中有版本PV的纯音乐、角色的live2d动态立绘、spine动画等等。

这里收集了所有有关活动页面的链接,可以去看一下:

Zhaokugua/GI-WebActivity-Library: 原神网页H5活动小游戏链接收集 | Genshin Impact H5 Web Activity&MiniGame Collection (github.com)




7D}KQSDSXMC4ZW6Y1Z%PV(9.jpg

本文作者:赵苦瓜      文章标题: 【日常】瞎解包原神文件记录
本文地址:https://blog.jixiaob.cn/?post=49
版权声明:若无注明,本文皆为“赵苦瓜のBlog~”原创,转载请保留文章出处。
三小只2022-07-11 20:21
大佬你好,你知道如何解包原神中的文本吗?(就是世界任务的文案,成就介绍之类的)
@三小只:不知道哇qwq不过我感觉可能都在blk里面,而且有可能加密了
@三小只:哦对了
https://github.com/Dimbreath/GenshinData
这个仓库里有大佬解好的resource资源文件
Readable里面有一些书籍、武器故事什么的
Subtitle是CG动画的字幕文件
TextMap好像是一些文案之类的东西
Hlong2022-08-22 15:43
@赵苦瓜:这个就是成就的配置文件,需要转换才能看到成就文本
GenshinData\ExcelBinOutput\AchievementExcelConfigData.json

目前我也不知道怎么转换
@Hlong:这里面有XXXMapHash,这个值在GenshinData\TextMap文件夹里面对应的语言文件里面都有对应的文本
shun.2022-07-11 14:16
刚刚尝试解了一下预下载2.8里的新cg,结果失败了,在预下载里面竟然还会有2.7的cg,预下载里面的2.7cg的倒是解成功了
Kiki2022-07-11 15:37
@shun.:GICutscenes还没更新key,等更新应该就能解2.8的CG了
@shun.:对的,用这个GI的话原理就是他把key都写在json里面了,然后就能直接解了。根据官方说明现在只有这个cg在播放的时候才会出现key,所以耐心等吧=w=
当然这个软件也提供了自定义ABkey来解密的方法,只不过key需要自行寻找,也可以去试试
Kiki2022-07-10 00:03
请问CG添加字幕改json文件的格式是这样吗?     "SubsFolder": ".C://原神CG//Subtitle"
@Kiki:windows环境下应该换成右斜杠\\吧,我之前用的相对路径
归灵祈昱2022-07-05 11:39
如果一次全加载的话,我的16GB内存也爆掉了{哭}
@归灵祈昱:还是分批一点一点加载吧qwq
aa2022-06-20 12:55
游戏图标库和UI还有CG在哪个文件夹?
@aa:图标猜测可能在blk里面,CG上面有写
aa2022-06-30 12:37
@赵苦瓜:那个玩家名片在哪呀 最近看到了原神和Google联动名片想拆出来
@aa:估计都在blk里面,具体的也不清楚
不过你有3.0的包了?一般没更新的内容不会放在当前版本的客户端里面的
aa2022-06-30 23:06
@赵苦瓜:3.0是怎样啦
aa2022-06-30 23:07
@赵苦瓜:blk在哪个文件夹
@aa:建议再详细看看教程
aaa2022-07-04 11:53
@赵苦瓜:不行,载入就卡死 12g内存根本不够 直接蓝屏
@aaa:建议不要全部载入,一点一点的也行
真不戳2022-06-09 10:00
厉害
zh2022-06-08 18:29
现在有了GIcutscenes的图形化程序,https://github.com/SuperZombi/GICutscenesUI
(能用上这个的不至于不懂命令行吧)
zh2022-06-08 18:30
@zh:还有,原神启动器文件夹里含有hdiffpatch,不用再下载
@zh:确实有hpatchz.exe
zh2022-06-08 18:41
@zh:转换视频建议用ffmpeg,选项比较多
@zh:MKVToolNix是GI-cutscenes自动封装mkv所必需的,没看到GI-cutscenes有写支持用ffmpeg替代
zh2022-06-08 19:56
@赵苦瓜:确实没支持,我是说ffmpeg功能全面,可以自定义
@zh:确实
@赵苦瓜:v0.4.0现在支持ffmpeg了
@zh:这个用Electron写的好像强制要求安装了Chrome,不然会报错运行不了
菟菟2022-06-03 19:47
https://github.com/ToaHartor/GI-cutscenes,好像能拆cg了,但是怎么用呀QAQ
@菟菟:感谢指点!已在正文中更新!
菟菟2022-06-03 21:57
@赵苦瓜:感谢大大,小白解决了一堆软件没有安装以后卡在了最后一步,回到这里看看发现你已经搞定了
菟菟2022-06-05 12:37
@赵苦瓜:官方文档已经更新了哟,现在支持2.7的cg了
@菟菟:好的=w=
gho2022-06-01 01:32
有办法提取字符串和它对应的id吗?
@gho:啥字符串呀,,任务的?对话的还是书籍里的或者物品介绍里的?
aaa2022-05-27 18:27
怎么下载原神的台湾或者香港服
@aaa:我记得应该没有港澳台或者香港服吧,只有国际服里面的Asia亚服
去hoyoverse下一个原神国际服就行了
aaa2022-05-28 19:16
@赵苦瓜:我要下载手机版,那个hoyoverse提供的是Google Play
@aaa:那就去play商店下(

返回顶部    首页    后花园  
版权所有:赵苦瓜のBlog~    站长: 赵苦瓜    程序:emlog   鲁ICP备20030743号-1   鲁公网安备37048102006726 萌ICP备20222268号    sitemap