バージョンセレクター
Sparkには複数のRen’Pyエンジンバージョンが含まれており、ゲームごとに使用するバージョンを選択できます。
利用可能なエンジン
Section titled “利用可能なエンジン”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は2つのエンジン提案戦略を提供します(設定で変更可能):
- Accurate(デフォルト) — 同じマイナーバージョンに一致するエンジンを推奨(例:7.5.xのゲームには7.5.3エンジン)
- Latest — 同じメジャーバージョン内の最新エンジンを推奨(例:7.xのゲームには最新の7.xエンジン、8.xのゲームには最新の8.xエンジン)
エンジンバージョンの変更
Section titled “エンジンバージョンの変更”エンジンランタイムバージョンは、ゲーム詳細画面のLaunch Gameボタンの下に表示されます。変更できるバージョン設定は2つあります:
エンジンランタイムバージョン
Section titled “エンジンランタイムバージョン”これはSparkがゲームの実行に使用するバンドルされたRen’Pyエンジンを制御します。
- ゲーム詳細画面のエンジンバージョンの横にあるModifyをタップ
- バージョンピッカーから選択
- Confirmをタップ
エンジンを変更して問題が発生した場合は、元に戻すことができます:
- 元のバージョンは自動的に保存されます
- バージョンピッカーのRevertボタンを使用して戻します
Ren’Pyスクリプトバージョン
Section titled “Ren’Pyスクリプトバージョン”これはゲームのscript_version.txtを更新し、Ren’Pyの内部互換性ロジックの適用方法を制御します。Ren’Pyはこの値を使用して、古いゲーム用の後方互換動作を有効または無効にします。
これを変更すると、新しいエンジンバージョンで変更されたレガシー動作をゲームが期待する問題を解決できます。バージョン間の変更内容の詳細については、Ren’Pyの互換性のない変更ドキュメントを参照してください。
バージョンを変更するタイミング
Section titled “バージョンを変更するタイミング”- ゲームが起動時にクラッシュする — 別のエンジンバージョンを試す
- 機能が不足している — 一部のゲームには特定のRen’Pyバージョンが必要
- パフォーマンスの問題 — 新しいエンジンの方がパフォーマンスが良い場合がある
- 互換性 — 古いゲームには古いエンジンが必要な場合がある
Sparkの各ゲームには、Sparkのエンジンパッチとランタイム統合がどの程度アクティブかを制御する3つのオプションの起動モードがあります。これらはゲーム設定(ライブラリでゲームを長押し)にあります。
Safe Mode
Section titled “Safe Mode”Safe Modeは、Sparkのカスタムパッチ適用ビルドの代わりにバニラの未修正Ren’Pyエンジンを使用してゲームを起動します。Sparkのエンジン変更とスクリプトインジェクションは無効になりますが、オーバーレイとランタイム機能は引き続き利用可能です。
このモードがアクティブな場合、起動ボタンは緑色になり**「Safe Launch」**と表示されます。
使用するタイミング: ゲームがクラッシュまたは誤動作し、Sparkのエンジンパッチが原因と思われる場合。
Advanced Mode
Section titled “Advanced Mode”Advanced Modeは、開発者がRen’Pyエンジンのレイヤーに直接変更を加えたゲーム用に設計されています。一部のゲームにはカスタムエンジンコードを含む変更された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ベースの設定(developer mode、console、transparent textbox)は、Sparkがインジェクションするのではなく、Ren’Py自体がロードするため、引き続き動作します
使用するタイミング: ゲームがSparkのランタイム機能と競合し、Safe Modeだけでは問題が解決しない場合。すべてのSparkオーバーレイ機能を犠牲にして、最大の互換性と分離を提供します。