Ren’Py ゲームを英語に翻訳する方法(完全ウォークスルー)
RuneTranslate で Ren’Py のビジュアルノベルを英語に翻訳します — ルーズな .rpy、コンパイル済み .rpyc、アーカイブされた .rpa ゲームを扱い、マークアップをマスクし、CJK / 非ラテンフォントをバンドルし、ゲームが起動時に読み込む翻訳をエクスポートします。
Ren’Py は、ほとんどの欧米および日本語ビジュアルノベルの背後にある Python ベースのエンジンです — 小さな itch.io ジャムから商業 DLsite タイトルまで。翻訳するのに最もクリーンなエンジンの 1 つです:RuneTranslate は元のスクリプトを決して上書きせず、翻訳を上に重ねるので、ゲームは無傷のままです。このガイドは、Ren’Py のゲームを英語(あるいは任意の言語)へ最初から最後まで RuneTranslate で翻訳する手順を、Ren’Py ゲームが出荷される 3 つの形態 — ルーズな .rpy ソース、コンパイル済みのみの .rpyc、アーカイブされた .rpa — を含めて説明します。
必要なもの
- Windows 版 RuneTranslate — 無料。すべてのエンジンとプロバイダーが解放されています。
- Ren’Py のゲームフォルダ。これはゲームの
.exeとgame/サブフォルダ(.rpy、.rpyc、.rpaファイルを保持)があるディレクトリです。 - ターゲット言語 — 英語、スペイン語、フランス語、ドイツ語、ポルトガル語、ロシア語、中国語、イタリア語、トルコ語、ベトナム語、その他 20 以上。
- 1 つの翻訳プロバイダー。無料の Google Translate はそのまま使えます。DeepL には無料ティアがあります。OpenAI、Anthropic、ローカルモデル(Ollama / LM Studio)、あらゆる OpenAI 互換 API は自分のキーを用意するタイプです。ビジュアルノベルはセリフが多くトーンに敏感なので、たいてい LLM(OpenAI / Anthropic)または DeepL が最もよく読めます。
ステップ 1: ゲームフォルダを開く
RuneTranslate を起動し、新規プロジェクト をクリックして、Ren’Py のゲームディレクトリ(.exe があるフォルダ、または内側の game/ フォルダ)に向けます。エンジン検出は自動的に実行され、game/ ツリーを見た瞬間にプロジェクトを Ren’Py と認識します。
テキストがどう読まれるかは、開発者が何を出荷したかによります:
- ソースゲーム —
game/配下のルーズな.rpyスクリプト。RuneTranslate はそれらを直接パースします。これが理想的なケースです。 - コンパイル済みのみのゲーム —
.rpycバイトコードだけ。バンドルの unrpyc サイドカーがまず読める.rpyにデコンパイルし、その後通常通りパースします。 - アーカイブされたゲーム —
.rpaアーカイブにパックされたスクリプト。RuneTranslate は、ベンダー化してパッチを当てた rpatool で、プロジェクトごとのワークスペース%APPDATA%/RuneTranslate/renpy-workspace/<projectId>/に展開し、デコンパイルし、それからパースします。私たちの rpatool のフォークは難読化された、およびベンダーカスタムのRPA-x.yアーカイブキーを自動検出するので、上流のツールが拒否する多くのアーカイブを開きます。
元のゲームフォルダは決して変更されません。
ステップ 2: Ren’Py テキストがどう抽出されるか
RuneTranslate は say 文(セリフ)、menu 選択肢、翻訳可能な UI テキストをスクリプトから取り出し、ファイルごとにグループ化してエディターに一覧します。Ren’Py のテキストマークアップ — {b}、{color=#fff}、{w} の待機、{i} のイタリック、[player_name] スタイルの変数展開 — は、プロバイダーに届く前に数字の [[R#]] プレースホルダーの背後にマスクされ、出力時に復元されます。機械はタグを見ないので、それを壊したり、落としたり、翻訳したりできません。
ステップ 3: 翻訳
プロバイダーを選んで実行します。中規模のビジュアルノベル(約 8,000〜15,000 行)を Supporter ティアで:
- OpenAI / Anthropic — キャラクターの声、ジョーク、様式化された話し方に最適。フルゲームでおおよそ数ドルの API コスト。エディターはコミット前にトークンと USD の見積もりを表示します。
- DeepL — ナレーションを高速かつクリーンに。無料ティアで月 50 万文字をカバー。
- 無料の Google Translate — $0、メニューや短い行には十分、セリフには弱い。
名前が各シーンで同一に表示されるよう、キャストと繰り返し出る用語を事前に用語集化しましょう — 用語集 101 を参照。無料ティアでは翻訳が控えめにスロットルされます — AI プロバイダーでおおよそ 2 倍遅く、無料スクレイパーではそれ以下(並行数が低め、バッチが小さめ、バッチ間に短い休止) — 出力品質は同一です。有料ティアはフルスピードで実行し、翻訳メモリとプロバイダールーティングを追加します。
ステップ 4: エディターでレビュー
すべての行がソースの隣のテーブルに入ります — デフォルトは日本語、あるいはプロジェクトに設定した言語(中国語、韓国語、英語など)。機械が間違えたものはインラインで編集し(ブラーまたは Ctrl+Enter で自動保存)、名前を変えた用語には検索と置換を使い、任意の AI リファイナーで文脈を踏まえた 2 回目の校正を実行します。Ren’Py のセリフは長文なので、ここが磨きをかける場所です。
ステップ 5: プレイ可能なビルドをエクスポート
エクスポート をクリックします。RuneTranslate は、Ren’Py が tl/ 内のルーズな .rpy を優先することに頼りません — それはセリフの id でキー付けされたテキストにしか効かず、コンパイル済みゲームはそれを確実には渡しません。代わりに、いくつかのファイルを game/ に置き、実行時に翻訳を適用します:
rt_translations.json— すべてのセリフとメニュー行の、ソーステキスト → 翻訳のマップ。zzz_runetranslate_language.rpy—config.say_menu_text_filterをインストールする小さな実行時フック。ゲームが表示しようとする各行をマップと照合し、あなたの翻訳に入れ替え、ゲームのアクティブ言語を翻訳済みのものに強制するので、画面や UI テキストも追随します。tl/translated/translation.rpy—_()の UI / 画面文字列(ボタン、メニュー、ツールチップ)だけを保持します。これらは Ren’Py が独自の仕組みで確実に解決します。- ターゲット言語が必要とする場合は、バンドルフォントと
zzz_runetranslate_font.rpy— 下の非ラテンの注記を参照。
ゲームの .exe を実行すると、元のスクリプトとアーカイブは手を加えられないまま、ターゲット言語でプレイできます。元に戻すには、RuneTranslate が追加したファイル — rt_translations.json、zzz_runetranslate_language.rpy、バンドルフォントとその .rpy、tl/translated/ — を削除します。
非ラテンの言語
ほとんどの Ren’Py ゲームはラテン文字のみのフォントを出荷するので、中国語、韓国語、日本語、タイ語、アラビア語はそのままでは空白のボックスとしてレンダリングされます。それらの 1 つをターゲットにすると、RuneTranslate は適切なフォント(NanumGothic / Noto Sans)をバンドルし、ゲームが使うすべてのフォントを Ren’Py の config.font_replacement_map を通してルーティングするので、ゲーム自身のアセットを編集せずに翻訳済みテキストが正しく表示されます。
既知の制限
- 標準の RPA-2 / RPA-3 / RPA-3.2 / RPA-4.0 と一般的なベンダー難読化アーカイブは自動的に開きます。本当に非標準のコンテナや、外部で保持されるキーは展開できないかもしれません。
- 画像に焼き込まれたテキスト(タイトルロゴ、手描き UI、CG のキャプション)はピクセル作業で翻訳されません — 機械翻訳の範囲外です。
- 変数から実行時に文字列を組み立てる強くスクリプト化された画面は、エディターで素早い手直しパスが必要かもしれません。
なぜこれが従来より簡単なのか
手動のルートは、.rpyc を手作業でデコンパイルし、アーカイブに rpatool を走らせ、それからソースをその場で翻訳する(次のゲーム更新で再び壊す)か、tl/ ブロックを 1 行ずつ手作業で書くか — それでいて非ラテンの言語で欠けたフォントと戦い続ける、というものでした。RuneTranslate はデコンパイル + 展開 + 抽出 + 実行時フックのチェーンを数クリックで行い、言い回しを管理できるようエディターを開いたままにします。
Ren’Py エンジンページで全機能リストを見るか、別のビジュアルノベルエンジンについて Kirikiri ビジュアルノベルガイドを読むか、RuneTranslate をダウンロードして実在のゲームで試してみてください。
RuneTranslate を試してみませんか?
無料プランですべてのエンジンとすべての翻訳プロバイダーが使えます。Supporter(月額 $3)ならフルスピードで翻訳できます。
Windows 版をダウンロード
