版本选择器
Spark 包含多个 Ren’Py 引擎版本,并允许您为每款游戏选择使用哪个版本。
Spark 捆绑了以下 Ren’Py 引擎版本:
| 版本 | Python | 说明 |
|---|---|---|
| 7.4.11 | 2.7 | 支持的最旧版本 |
| 7.5.3 | 2.7 | 传统支持 |
| 7.6.3 | 2.7 | 改进的稳定性 |
| 7.7.3 | 2.7 | 后期 7.x |
| 7.8.4 | 2.7 | 7.8 系列 |
| 7.8.8 | 2.7 | 最新 7.x |
| 8.0.3 | 3.9 | 首个 Ren’Py 8 |
| 8.1.3 | 3.9 | 稳定性改进 |
| 8.2.3 | 3.9 | 新功能 |
| 8.3.4 | 3.9 | 性能更新 |
| 8.3.7 | 3.9 | 最新 8.3 |
| 8.4.1 | 3.12 | 8.4 系列 |
| 8.5.0 | 3.12 | 8.5 系列 |
| 8.5.2 | 3.12 | 支持的最新版本 |
自动版本检测
Section titled “自动版本检测”导入游戏时,Spark 会检测与游戏压缩包一起打包的 Ren’Py 版本(来自引擎版本文件,如 vc_version.py、__init__.py 或其编译等价物),并用它来推荐兼容的引擎。
游戏的 script_version.txt 是 Ren’Py 内部用于设置脚本层兼容性标志的单独文件——它与引擎版本不同。
Spark 提供两种引擎推荐策略(可在设置中配置):
- 精确(默认) — 推荐匹配相同次版本号的引擎(例如,7.5.x 游戏使用 7.5.3 引擎)
- 最新 — 推荐同一主版本中最新的引擎(例如,7.x 游戏使用最新的 7.x 引擎,8.x 游戏使用最新的 8.x 引擎)
更改引擎版本
Section titled “更改引擎版本”引擎运行时版本显示在游戏详情界面的启动游戏按钮下方。您可以更改两个版本设置:
引擎运行时版本
Section titled “引擎运行时版本”控制 Spark 使用哪个捆绑的 Ren’Py 引擎来运行游戏。
- 在游戏详情界面点击引擎版本旁的修改
- 从版本选择器中选择
- 点击确认
恢复原始版本
Section titled “恢复原始版本”如果您更改了引擎并遇到问题,可以恢复:
- 原始版本会自动保存
- 使用版本选择器中的恢复按钮即可恢复
Ren’Py 脚本版本
Section titled “Ren’Py 脚本版本”这会更新游戏的 script_version.txt,它控制 Ren’Py 内部兼容性逻辑的应用方式。Ren’Py 使用此值来启用或禁用对旧游戏的向后兼容行为。
更改此值可以解决游戏期望某些在较新引擎版本中已被修改的旧版行为的问题。有关版本间变更的详情,请参阅 Ren’Py 不兼容更改文档。
何时更改版本
Section titled “何时更改版本”- 游戏启动时崩溃 — 尝试不同的引擎版本
- 缺少功能 — 某些游戏需要特定的 Ren’Py 版本
- 性能问题 — 较新的引擎可能有更好的性能
- 兼容性 — 旧游戏可能需要旧引擎
Spark 中的每款游戏都有三个可选启动模式,用于控制 Spark 引擎补丁和运行时集成的激活程度。这些选项可在游戏设置中找到(在游戏库中长按游戏)。
安全模式使用原版未修改的 Ren’Py 引擎启动游戏,而非 Spark 的自定义补丁版本。Spark 的引擎修改和脚本注入被禁用,但浮层和运行时功能仍然可用。
启用此模式时,启动按钮变为绿色并显示**“安全启动”**。
何时使用: 游戏崩溃或行为异常,您怀疑 Spark 的引擎补丁是原因。
高级模式适用于开发者直接修改了 Ren’Py 引擎 Python 层的游戏。某些游戏附带了修改过的 renpy/ 目录,包含自定义引擎代码——没有这些修改,游戏可能会崩溃或行为不正确。启用时:
- Spark 会在游戏文件夹中查找
advanced/renpy目录 - 找到的任何 Python 源文件都会覆盖引擎的内置 Ren’Py 源代码
- 会出现一个独立的引擎版本选择器,与普通版本选择器无关
启用此模式时,启动按钮变为粉色并显示**“高级启动”**。
何时使用: 游戏包含对 Ren’Py Python 源代码的自定义修改(修改过的 renpy/ 目录)。这并不常见,但某些游戏依赖引擎级别的更改来实现自定义功能、UI 框架或兼容性解决方案。
禁用 Spark 集成
Section titled “禁用 Spark 集成”此模式完全从游戏会话中移除 Spark 的运行时层。启用时:
- Spark 浮层 UI(游戏控制、快捷菜单、键盘辅助、隐藏 UI 按钮)永远不会出现
- 所有运行时 Python 注入被跳过——对话跟踪、画廊解锁器、手势配置、音量同步、翻译系统和按键映射覆盖全部禁用
- 游戏以零 Spark 运行时修改运行
- 基于 RPY 的设置(开发者模式、控制台、透明文本框)仍然有效,因为 Ren’Py 自行加载它们而非 Spark 注入
何时使用: 游戏与 Spark 的运行时功能冲突,仅使用安全模式未能解决问题。这以牺牲所有 Spark 浮层功能为代价提供最大的兼容性和隔离性。