版本選擇器
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 提供兩種引擎建議策略(可在設定中設定):
- Accurate(預設) — 建議與相同次要版本相符的引擎(例如,7.5.x 遊戲會取得 7.5.3 引擎)
- Latest — 建議相同主要版本中的最新引擎(例如,7.x 遊戲取得最新的 7.x 引擎,8.x 遊戲取得最新的 8.x 引擎)
變更引擎版本
Section titled “變更引擎版本”引擎執行時版本顯示在遊戲詳情畫面的啟動遊戲按鈕下方。有兩個版本設定可以變更:
引擎執行時版本
Section titled “引擎執行時版本”這控制 Spark 使用哪個隨附的 Ren’Py 引擎來執行遊戲。
- 在遊戲詳情畫面上點選引擎版本旁的修改
- 從版本選擇器中選擇
- 點選確認
還原為原始版本
Section titled “還原為原始版本”如果您已變更引擎並遇到問題,可以還原:
- 原始版本會自動儲存
- 在版本選擇器中使用還原按鈕即可回復
Ren’Py Script Version
Section titled “Ren’Py Script Version”這會更新遊戲的 script_version.txt,控制 Ren’Py 內部相容性邏輯的應用方式。Ren’Py 使用此值來啟用或停用舊遊戲的向後相容行為。
變更此值可以解決遊戲預期某些舊版行為但這些行為已在較新引擎版本中被修改的問題。詳情請參閱 Ren’Py 不相容變更文件。
何時變更版本
Section titled “何時變更版本”- 遊戲啟動時當機 — 嘗試不同的引擎版本
- 缺少功能 — 某些遊戲需要特定的 Ren’Py 版本
- 效能問題 — 較新的引擎可能表現更好
- 相容性 — 較舊的遊戲可能需要較舊的引擎
Spark 中的每個遊戲都有三個可選的啟動模式,控制 Spark 的引擎修補和執行時整合的啟用程度。這些可在遊戲設定中找到(在資料庫中長按遊戲)。
Safe Mode
Section titled “Safe Mode”Safe Mode 使用原始、未修改的 Ren’Py 引擎而非 Spark 的自訂修補版本來啟動遊戲。Spark 的引擎修改和腳本注入被停用,但覆蓋層和執行時功能仍然可用。
此模式啟用時,啟動按鈕變為綠色並顯示 “Safe Launch”。
何時使用: 遊戲當機或行為異常,您懷疑 Spark 的引擎修補是原因。
Advanced Mode
Section titled “Advanced Mode”Advanced Mode 設計用於開發者直接修改了 Ren’Py 引擎 Python 層的遊戲。某些遊戲附帶修改過的 renpy/ 目錄,包含自訂引擎程式碼 — 沒有這些修改,遊戲可能當機或行為不正確。啟用時:
- Spark 在遊戲資料夾中尋找
advanced/renpy目錄 - 找到的任何 Python 原始碼檔案會覆蓋引擎的內建 Ren’Py 原始碼
- 出現獨立的引擎版本選擇器,獨立於正常的版本選擇器
此模式啟用時,啟動按鈕變為粉紅色並顯示 “Advanced Launch”。
何時使用: 遊戲包含對 Ren’Py Python 原始碼的自訂修改(修改過的 renpy/ 目錄)。這不常見,但某些遊戲依賴引擎層級的變更來實現自訂功能、UI 框架或相容性解決方案。
Disable Spark Integration
Section titled “Disable Spark Integration”此模式完全從遊戲會話中移除 Spark 的執行時層。啟用時:
- Spark 覆蓋層 UI(遊戲控制、快捷選單、鍵盤輔助、隱藏 UI 按鈕)不會出現
- 所有執行時 Python 注入被略過 — 對話追蹤、圖庫解鎖器、手勢設定、音量同步、翻譯系統和按鍵對應覆蓋全部停用
- 遊戲以零 Spark 執行時修改運行
- 基於 RPY 的設定(開發者模式、控制台、透明文字框)仍然可用,因為 Ren’Py 自己載入它們而非 Spark 注入
何時使用: 遊戲與 Spark 的執行時功能衝突,且 Safe Mode 無法解決問題。這在犧牲所有 Spark 覆蓋層功能的情況下提供最大的相容性和隔離。