assetstudio 中文文档 下载 App

UnityCN 加密包检测 — AssetStudioMod 能识别但解不开,怎么办

Unity 官方加密 vs UnityCN 加密

Unity 国际版(Unity Technologies 官方)的 AssetBundle 默认只用 LZMA / LZ4 压缩——这是标准压缩算法,AssetStudio 和 AssetStudioMod 解压后就能读。

Unity 中国发行版(UnityCN,Unity Technologies 和盛大的合资公司)加了一层自定义加密——压缩之前先对 AssetBundle 的文件头和数据做了混淆。米哈游、腾讯、网易这些大厂发行的 Unity 游戏很多用了这个版本。

AssetStudioMod 能做什么

AssetStudioMod 能检测 UnityCN 加密但解不开:

原版 AssetStudio 没有加密检测——加载加密的 AssetBundle 时会静默失败(Asset List 里什么都没有),很容易让人以为这个游戏没资源。

遇到加密包怎么办

AssetStudioMod 弹提示后,你的选择:

工具开发者能解什么
Razmoth StudioRazmothUnityCN 加密 + GFI / LZ4 变种压缩
AnimeStudioEscartemUnityCN / GFIC / LZ4 混合加密、二次元游戏专用
SiMaLaoShi Tuanjie 版SiMaLaoShi团结引擎(非 UnityCN 加密)

这两个工具不是 AssetStudio 的直接 fork,但功能定位类似——都是专门对付 UnityCN 加密包的。AnimeStudio 对米哈游系游戏有针对性支持。

加密检测逻辑

AssetStudioMod 的检测大致看两点:

  1. AssetBundle 文件头的 magic number(标准 Unity AssetBundle 以 UnityFS 或 UnityRaw 开头);
  2. 解压后的 TypeTree 是否能正确解析出 Unity 内置类型。

如果文件头不对或者 TypeTree 解析到乱码,就判定为加密。检测结果不影响 AssetStudio 其他功能——它只是弹个提示然后跳过这些 AssetBundle。

不是加密但也打不开的情况

现象可能原因怎么确认
AssetStudioMod 没弹加密提示但 Asset List 空加载的文件不是 Unity 格式确认文件后缀和路径对不对
AssetBundle 是 Unity 6 打包的但 AssetStudioMod 读不了Unity 版本太新换 AssetStudioMod 最新版 + --unity-version 指定
文件完整但解析到一半报错Unity 版本字段不准手动指定 Unity 版本
原版 AssetStudio 打不开可能 UnityCN 加密但原版没提示换 AssetStudioMod 检测