本文仅做技术研究,请勿用作非法用途。本文不提供文件下载。

背景

本喵之前在玩 cytusII,其中有些歌肥肠好听,但是网上又找不到资源,于是在 YouTube 上下载手元视频,用ffmpeg转换成mp3,其实也能听。

后来发现,网易大蚊香有个 CytusII 的电台,up主上传了 CytusII 中的所有歌,并且有歌词和封面,也有玩家在此交流评论,有些评论是有关剧情的,有些是关于图谱的,算是一个 CytusII 交流专区了。CytusII 中人物多了以后,up主甚至自己做了个mashup(混音),糅合了各个人物封面版本的主题曲,毫无拼接的痕迹。

可是,就在前几天 CytusII 2.0 上线之际,这个电台消失了,开始发现在手机上点不进去,还以为是网络问题,后来在PC端确认了。
感谢up主 captcha 的无私奉献,一直依靠这个电台单曲循环 PAFF 和 NEKO 的歌曲,还有些好听的歌都没下载下来,那么只能自己着手提取了。

过程

提取工具需要在 Windows 环境,如果没有请自备虚拟机~~

下载游戏

本次实验对象是 CytusII 游戏。(请雷亚的官方人员看到本文不要打我,要是你们的 Cytus 专辑出了,我一定第一时间购买)

虽然日常在iPad玩,但是我也在Google play商店购买了一份,算是一种支持吧(其实是打折的时候入的

如果没有购买的,可以到play商店的镜像网站下载,比如:

获取obb数据文件

我们需要先找到游戏的obb数据文件。

obb是什么呢?截取百科的解释:

OBB(Opaque Binary Blob)文件格式,是安卓游戏通用数据包。在一些大型游戏上较为常见,同时还附以Data文件,亦或是md5.dat文件出现。通常在游戏开始前,程序会自动将obb解包/sdcard/Android/data目录下。但也有游戏不会解包,直接读取。

CytusII 的 obb数据文件位于/sdcard/Android/obb/com.rayark.cytus2/.
目前 CytusII 2.0 版本的obb文件 名为main.200003.com.rayark.cytus2.obb
obb文件的命名遵循以下规则:

1
[main|patch].<expansion-version>.<package-name>.obb

解压obb数据文件

你需要先安装 7zip,用于解压obb文件。

我的电脑是Mac,所以使用7zip的 Mac版本 Keka 解压。

解压完成,你会得到一个 assets 目录。

安装 UABE 提取工具

UABE = Unity Assets Bundle Extractor ,这个工具需要在Windows上运行,解压后即可运行,无需安装。

下载地址:https://7daystodie.com/forums/showthread.php?22675-Unity-Assets-Bundle-Extractor

也可以在 GitHub release 下载:https://github.com/SeriousCache/UABE/releases

如果提示“缺少 MSVCP100.dll ”,那么你需要安装 vs++ 2010 运行库.

如果你和我一样使用虚拟机,只需要把 /assets/bin/Data/ 目录下的内容拷贝到虚拟机即可。

开始提取

打开 UABE

选中Data下所有文件,点打开。

会弹出 assets info 的窗口,这便是解码后的 数据文件了。

这里有必要简单讲下窗口中的Type(类型):

  • AudioClip:声音文件,格式是常见的wav或mp3等。
  • Texture2D:图片文件,一般的格式为tga或ktx。

其他的,我也不知道了。

选中想要提取的资源,点 plugin(插件)。

不同的资源类型,加载的 plugin 也会不同。

  • 如果是 AudioClip,选择Export sound

  • 如果是 Texture2D,选择Export to .png

导出来的音乐资源就是这样的

图片资源,歌曲的封面

Neko 我婆 (User get banned

一些有趣的事

  • 音频文件都是 wav 无损格式,肥肠良心,这是默认格式。
  • Aroma、Nora、Neko 对应的资源文件名分别为 paff002、robo002、neko002.
    我开始想找 Aroma 章节的<漂流>那首歌,却发现资源文件里面没有Aroma。原来因为 Aroma 其实是 Paff
  • 是 ivy,不是 lvy。
  • 上面截图中,文件最大的,是 ivy 章节的 V. , 目前 2.0 版本的大boss,时长4:10;第二大的文件是,robo 章节的 CHAOS,时长3:41.
  • 一首歌有两个音频文件,一个是游戏中开始歌曲前的 preview,另一个才是全曲。
  • 只有 paff001(即真paff)的音乐资源文件和图片文件是从000开始的,其他的都是从001开始的,000这首歌是 M2U 的 Body Talk。

最后

最后,肥肠感谢雷亚以及各位乐师给我们带来如此美妙的游戏。

再次声明:
本文仅做技术研究,请勿用作非法用途。本文不提供文件下载。

提取部分参考:
https://www.andnixsh.com/2017/03/how-to-export-musicaudio-files-from.html

update

CytusII 主要人物曲包已登陆 Apple Music

update 2 @ 2022.4.28

后来发现了个别的工具也可以提取 unity 的 assets

AssetStudio

github 地址 https://github.com/Perfare/AssetStudio

开发者 Perfare 自己也是游戏玩家