分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

smarkyie/NSP-Box

游戏

把完整的 Switch 2 游戏快照打包成模拟器可读的明文 NSP,并可选用可逆的模拟器补丁。

151
13
Python
MIT
创建于 1 天前

项目介绍

NSP Box 是一个 Windows x64 便携工具,把已经完整解包的 ExeFS/RomFS 快照打包成未签名的明文 NSP,供支持明文内容的模拟器读取。它面向已经合法取得游戏快照、需要重复执行打包流程的用户:选择文件夹、从 main.npdm 读取 Title ID、添加封面、指定输出文件名,然后构建。

输出是 PFS0 容器,游戏包包含 Program、Control、Meta 三个 NCA,DLC 包包含 Data 和 Meta 两个 NCA,不做压缩,也不是零售主机认证包。它不会把更新合并进游戏,也不处理加密的 NSP/XCI 输入、压缩 ROM 包,且不能生成 XCI。单独的 DLC 流程用于 RomFS-only 追加内容。

工具还提供可选的模拟器补丁,针对特定 Windows x64 的 Eglantine nx2、AMD Experimental 和 PokeDinner 构建,让模拟器直接读取 NSP 内嵌元数据,而不再依赖外部 main.npdm。补丁可逆:Remove patch 会把可执行文件恢复为备份的原始字节。

快速使用

  1. 从发布页下载最新便携 ZIP 或源码 ZIP,把整个压缩包解压到可写目录。
  2. 运行 NSP-Box.exe。Python 已随包提供,无需安装。
  3. 用 Browse folder、拖拽或粘贴路径后回车选择游戏主转储文件夹。目录必须是完整快照,包含 exefs/(其中有 main 和 main.npdm)和 romfs/;只有更新差异的目录不满足要求。
  4. 在下拉框中选择快照,按需修改显示的游戏名、版本和封面;用 Crop icon 调整 256×256 图标。
  5. 在 Output 中设置输出文件名。保持 Verify after building 开启。Create package folder 默认开启,会生成包含 NSP、main.npdm 和 JSON 校验报告的文件夹;取消勾选则只保存 NSP。
  6. 点击 Build NSP。预留约为输入体积加 2% 再额外 32 MB 的磁盘空间;单包最大支持 32 GiB。

如需使用可选模拟器补丁,先完全关闭模拟器,打开 Emulator patch,选择包含受支持可执行文件的目录,依次执行 Check 和 Add patch,然后重启模拟器。补丁限制和移除步骤见补丁文档。

使用约束

  • 仅支持 Windows 10/11 x64,不提供 Linux 构建。不需要管理员权限、Python 安装、模拟器安装或网络连接。
  • 应用未签名且处于实验阶段。不会覆盖已有包,也不会修改源文件;取消构建会删除未完成的包。
  • 能否启动取决于模拟器对明文内容的支持。校验只检查包完整性,不检查启动或实际游玩。
  • 测试 Switch 2 包前,README 要求把模拟器内存设为 12 GiB;应用本身不会修改该设置。
  • 未应用模拟器补丁时,部分模拟器构建需要把对应游戏的外部 main.npdm 放在包目录中;存在冲突的伴随文件会被拒绝。
  • 部分 Eglantine 构建需要 prod.keys_autogenerated 中有一组本地生成的占位符。设置需手动触发,不会在扫描或构建时自动运行,也不会替换真实零售密钥。
  • 启用包文件夹输出时,本地 JSON 报告会记录源路径和目标路径。分享前应检查或删除报告。
  • 只能使用已获授权的内容。项目不提供游戏、封面、固件或 Nintendo 密钥,也不提供 Nintendo 认证。

HotRepo 点评

该项目在 2026-11-02 进入 HotRepo 新项目榜的 Python 列表记录,当时为 138 Star、11 Fork,约两小时的观察窗口内净增 28 Star。单条快照足以说明早期关注度,但不足以判断持续趋势,也不能说明它对各类游戏快照的实际兼容程度。

README 对实验性边界的说明比较明确:DLC 兼容性只来自一次用户反馈,且明确不代表通用兼容;模拟器补丁只覆盖少量具名的 Windows x64 构建;输出被定义为供模拟器使用的明文重打包,而不是经过认证的零售主机包。对读者而言,是否适用主要取决于模拟器构建和快照完整性,而不是功能数量。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。