软件介绍
AssetStudio 是一款用于提取、查看和分析游戏或应用程序中资源文件的工具。
可用的游戏
理论上使用了 Unity 开发的游戏都可以进行解包,下表列出了几个可以使用 AssetStudio 进行解包的游戏,实际是否可以解包请自行尝试,本文使用红烧天堂作为例子。
游戏名 |
---|
绯染天空 / 炽焰天穹 / 红烧天堂 |
BanG Dream! 少女乐团派对! |
学园偶像大师 |
部分 Galgame |
其中学园偶像大师较为特殊,因为使用了加密,所以需要进行解密操作(貌似邦邦也有加密,但是我没解过),有关于学园偶像大师的解密方法将会在下文发布。
支持解包的素材类型
支持解包的素材类型如下所示。
- Texture2D 图片纹理
- Sprite 也是图片纹理,但是一般是由 Texture2D 裁剪所得
- AudioClip 音频
- Font 字体
- Mesh 三维网格
- TextAsset 文本
- Shader 着色器
- MovieTexture 视频纹理
- VideoClip 视频文件
- MonoBehaviour 游戏脚本
- Animator 动画
素材文件获取
Android 系统的素材文件一般在 Android/data/游戏包名
文件夹内,Windows 系统请自行探索。红烧天堂的素材文件路径为 Android/data/com.heavenburnsred/files/UnityCache/Shared
,如果是 Steam 版,则路径为 HeavenBurnsRed\HeavenBurnsRed_Data\StreamingAssets\aa\StandaloneWindows64
。
素材文件分组
由于素材文件通常都有几万个,这里为了防止解包把电脑内存挤爆,我们要依据电脑内存大小把数据进行分组,并分批进行解包。
首先把素材文件夹复制到其他地方,将电脑上所有不必要的软件关闭,然后新建几个文件夹,并把素材文件以 1000 个为一组放进文件夹中。
这里可以根据解包时的内存占用大小调整,如果剩余内存很多那么就给每一组里分更多的文件,比如 2000 个,反之亦然,如果你的电脑内存很多(至少 32G),那么甚至可以不分组,但是在解包途中电脑可能会严重卡顿。
比如素材文件有 10000 个,那么我们可以新建 10 个文件夹,选中 1000 个文件放进第一个文件夹中,然后再选中 1000 个文件放进第二个文件夹中,依此类推。
解包
下载软件
点击此处下载 AssetStudio
启动软件
解压所下载的 AssetStudio 后,打开 AssetStudioGUI.exe,如果出现下图所示弹窗,说明你的电脑缺少 .NET 依赖。请点击 “是”,电脑会自动启动浏览器并下载安装包。
进行部分设置(可选)
部分游戏解包需要指定 Unity 的版本,修改版本的选项如下图所示。
修改分组选项可以让资源在导出时按照原始文件中的路径进行导出,可以让导出的文件进行大概的分类,比较方便后续的数据筛选,仅在红烧天堂测试可用,其他游戏请自行尝试,修改分组选项如下图所示。
解包时可能会因为各种原因出现一些无法解决的报错,可以手动关闭这些报错输出,关闭报错的选项如下图所示。
导入素材文件
点击右上角的 File→Load folder ,选择之前完成分组的素材文件所在的文件夹,先选择第一组。如下图所示。
等待软件左下角进度条跑完后,说明文件已经解析完成。
查看素材文件
选择 Asset List 选项卡,如下图所示。
在右侧可以预览解析出的文件内容,如下图所示。
在 Filter Type 处可以筛选想要查看的文件类型,如下图所示。这里我只查看了 Sprite 和 Texture2D。
导出素材文件
在 Export 处可以进行文件的导出,如下图所示。可以选择导出所有文件,导出选定的文件或导出筛选后的文件。
在弹出的窗口中指定文件要导出到的路径后,等待软件左下角进度条跑完,则导出完成。
此时注意,如果你之前进行了素材文件分组的操作,那么你需要继续导入后面的文件夹,重复导入操作和导出操作直至所有文件夹都导出完成。
下图是修改了分组选项后导出的结果,可以看到文件都按照路径进行了分组。