a55uka/nup
游戏把已解密的 Switch 游戏转储打包成单个压缩 .nup 容器,并提供 Python 工具进行打包、查看和提取。
项目介绍
NUP 是面向未加密 Nintendo Switch 与 Switch 2 游戏转储的净室容器格式。它把 ExeFS 程序文件和完整的 RomFS 目录树放在一起,让基础内容、更新和 DLC 收进一个压缩的 .nup 文件,而不是散落的目录结构。仓库里有 SPEC.md 中的格式定义,以及 tools/nup/ 下的 Python 参考实现 README。
目标用户是已经持有解密 NX 转储、希望用单文件方式整理或搬运内容的人。README 说明作者不清楚 Switch 1 游戏的解密方式,因此该工具处理的是已解密的内容 README。
快速使用
按工具预期的目录组织转储:
base/ updates/458752/ dlc/040074a01bf13001/0/
├─ exefs/ ├─ exefs/ └─ romfs/
└─ romfs/ └─ romfs/
安装参考实现并打包为 .nup 文件:
pip install ./tools/nup
nup pack <dump_dir> <out.nup> --level N --title-id HEX --display-version V
pack 会自动发现 base/、updates/<version>/ 和 dlc/<titleid>/<index>/;只含 exefs/ 和 romfs/ 的单纯内容目录会作为单个基础包打包。标题 ID 取自 main.npdm,转储工具产生的 .listing 文件默认排除 README。
打包后可查看或提取:
nup info <file.nup> --tree
nup list <file.nup>
nup extract <file.nup> <dest> --package base --subtree romfs
nup verify <file.nup> --fast
也可以不安装,通过 PYTHONPATH=tools/nup 和 python3 -m nup.cli 运行 CLI README。
使用约束
需要自行提供已解密内容,该格式不负责解密。README 对 Switch 2 的打包说明较明确,但对 Switch 1 的解密环节未作说明 README。仓库未声明许可证,若计划再分发该工具或格式实现需要注意这一点。
HotRepo 点评
该仓库在 2026-11-02 的 Python 新项目榜中记录到 101 Star 和 3 Fork,对应 2026-11-01 起约 13 小时的增长窗口。目前只有这一条快照记录,反映的是初期关注而非已形成的趋势。项目范围很窄——一份规范加一个参考打包器——它的价值取决于是否有人需要把解密转储整理成单文件容器,而不是早期 Star 数。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。