retroarch 中文文档 下载 App

存档管理 .srm 游戏内存档 vs .state 即时存档的本质区别

两种存档的区别

RetroArch 的存档体系建立在 libretro API 的两个机制上:

文件扩展名是什么特点
游戏内存档.srm(或 .sav、.dat 等因核心而异)游戏自己的存档系统(相当于当年卡带/记忆卡里的存档)体积小(几 KB 到几 MB)、稳定、跨核心通用性强,换核心也能读
即时存档.state整个模拟状态的二进制快照体积大(几十 MB)、随存随读,但严格绑定产生它的核心与版本

结论:.srm 当底仓,.state 当便利贴

不要反过来——把重要进度只存在 .state 里。核心大版本更新后旧的 .state 大概率读不出来。

存档存在哪

路径因平台和设置而异,以本机显示为准:

Settings → Directory 里看两行:

常见默认位置:

平台SavefileSavestate
Windows%APPDATA%\RetroArch\saves\<核心名>/%APPDATA%\RetroArch\states\<核心名>/
macOS~/Library/Application Support/RetroArch/saves/~/Library/Application Support/RetroArch/states/
Android内部存储 RetroArch/saves/ 或 RetroArch/states/同上
Linux~/.config/retroarch/saves/~/.config/retroarch/states/

按核心分子文件夹存放——saves/mgba/ 里是 mGBA 核心的 GBA 游戏存档,saves/pcsx_rearmed/ 里是 PCSX-ReARMed 核心的 PS1 游戏存档。

改存档目录

想把存档集中到自建目录(比如移动硬盘、存储卡):

  1. 先把现有 saves / states 文件夹整个复制到新位置
  2. 再进 Settings → Directory 改 Savefile / Savestate 指向新目录
  3. 改完进游戏读一次档,确认进度还在

顺序不能反——改目录不会搬旧文件。先改后搬的话,RetroArch 会从零开始,旧存档还在原处但读不到了。

存档槽位

即时存档有 10 个槽位(0-9),可以同时存多个快照:

不要只钉一个槽位——打 BOSS 前存 1 档、平时存 2 档、关键剧情存 3 档,留退路。自动存档槽万一存了个坏掉的状态,你还有手动存的好档。

自动即时存档的一个坑

RetroArch 支持退出游戏时自动存即时档、下次启动时自动读档。它方便,但有个知名坑:

如果退出瞬间游戏正处在崩溃或花屏状态,这个坏档会被反复自动载入——怎么进都是坏的。

对策:

换设备迁移进度

  1. 旧设备上确认存档目录位置
  2. 把 saves/(游戏内存档)、states/(即时存档)和 system/(BIOS)整个复制出来
  3. 新设备上装好同版本或更高版本的 RetroArch
  4. 放到新设备的对应存档目录下,目录结构保持一致
  5. 重扫一遍播放列表即可

.srm 可以跨平台、跨核心(只要新核心支持这种存档格式)。.state 不能跨核心、不能跨大版本更新。