エンジンガイドFAQPatreonDiscordダウンロード
ログイン
RuneTranslate · 日本語ゲームをまるごと翻訳
エンジンガイド比較画像内テキストセーブエディターチートモードFAQダウンロードPatreonDiscordYouTubeプライバシー利用規約お問い合わせ
すべてのエンジン

対応エンジン · YU-RIS

完全対応 — 再構築してプレイ確認済み

YU-RIS エンジン翻訳ツール — raiL-soft の JP ビジュアルノベルをまるごと翻訳

YU-RIS(raiL-soft 作)は、数百の同人・商業日本語ビジュアルノベルを支える長年の Windows スクリプトエンジンです。そのリソースは .ypf パッケージアーカイブに収められ、シナリオは YSTB スクリプト(ysbin.ypf 内の .ybn ファイル、ysbin/yst00000.ybn のような内部パス)にコンパイルされています。RuneTranslate は .ypf パッケージを純粋な TypeScript で読み取り — GARbro も外部ツールも不要 — エントリーを解凍して各アーカイブのファイル名キーを復元し、次にコンパイル済みの YSTB スクリプトを解析します:4 つのセクション(命令、引数記述子、文字列値、行番号)に分割し、スクリプトの 4 バイト XOR キーを記述子テーブルから自動復元するので、暗号化されたスクリプトがキー探しなしで開きます。そこから文字列テーブルから日本語のセリフを取り出し、すべての行をエディターに一覧する一方、エンジンのコマンドオペランド、変数名、アセットパスは既定で除外するので、スクリプトのロジックが比較対象にしている何かを誤って翻訳することはありません。エクスポート時には文字列テーブルを再構築し — 長くても短くても翻訳が収まるようすべてのオフセットをパッチ — 同じ XOR キーを再適用し、翻訳済みの .ybn をそのアーカイブパスにルーズに書き出します。YU-RIS ランタイムは .ypf にパックされた同じパスよりディスク上のルーズファイルを優先して読むため、ゲームは単にあなたの翻訳を読み込みます — 再パックはありません。このエンジンはまだ実ゲームでの検証を進めている段階なので、再配布の前にエクスポートしたビルドをテストしてください。

このエンジンの用語集のヒント

ビジュアルノベルは何千行にもわたる固定キャストと繰り返される用語に依存し、機械翻訳はヒロインの名前を3つの章で3通りに綴ります。キャラクター、地名、繰り返される用語を最初に用語集へ登録し、すべてのセリフで同一に表示されるようにしましょう。 用語集の基本 →

RuneTranslate を Windows 版でダウンロード

YU-RIS を翻訳する方法

  1. ステップ 1

    YU-RIS のゲームフォルダーを開く

    ゲームディレクトリ — ゲームの yu-ris.exe とその .ypf パッケージ(通常は pac/ サブフォルダー内、スクリプトは ysbin.ypf 内)を含むフォルダー — を RuneTranslate に指定します。すでに GARbro でゲームを展開している場合は、ルーズな ysbin/ フォルダー内の .ybn スクリプトも検出されます。エンジン検出は YU-RIS レイアウトを自動認識します;元のフォルダーは決して変更されません。

  2. ステップ 2

    .ypf パッケージを読み取り、YSTB スクリプトをデコード

    RuneTranslate は .ypf パッケージを純粋な TypeScript で開き、エントリーを解凍し、内部のコンパイル済み YSTB スクリプトを解析します。各スクリプトの 4 バイト XOR キーを引数記述子テーブルから自動復元し — キー探しは不要 — Shift-JIS の文字列テーブルをデコードし、すべての日本語行をスクリプトファイル別にグループ化してエディターに一覧します。エンジンのコマンドオペランド、変数名、アセットパスは表示されますが既定で除外され、ストーリーロジックはそのまま保たれます。

  3. ステップ 3

    お好みのプロバイダーで翻訳

    これらのゲームはセリフが多く口調に敏感なので、LLM(OpenAI GPT-4o / Anthropic Claude)や DeepL が最もよく読めます;無料の Google Translate やローカルモデル(Ollama / LM Studio)は短いメニュー文字列や選択肢をカバーし、OpenAI 互換プロバイダーを OpenRouter や NanoGPT に向けられます。オプションの AI リファイナーによる 2 回目のパスが逐語的な言い回しを引き締めます。

  4. ステップ 4

    インライン制御コードをそのまま保持

    YU-RIS のメッセージテキストはバックスラッシュ制御コード(改行、色、ルビ)と角括弧タグをセリフに織り込みます。RuneTranslate はそのすべてを翻訳中は数値プレースホルダーとして凍結し、出力時に復元するので、翻訳された行は元と同じ書式と間合いを保ちます。

  5. ステップ 5

    ルーズファイルオーバーライドでエクスポート(再パックなし)

    エクスポート時、RuneTranslate はゲームをコピーし、各翻訳済み YSTB スクリプトを再構築します — 任意の長さの翻訳が収まるよう文字列テーブルのオフセットをパッチし、同じ XOR キーを再適用 — その後、元のアーカイブパス(例:ysbin/yst00000.ybn)にルーズに書き出します。YU-RIS ランタイムは .ypf にパックされた同じパスよりルーズファイルを優先するため、ゲームは再パックなしで単にあなたの翻訳を読みます。エクスポートしたコピーを実行すると、あなたの言語でプレイできます。

対応内容

  • 純粋な TS の .ypf パッケージリーダー(解凍 + ファイル名キー復元)— 外部ツールやサイドカーは不要
  • コンパイル済み YSTB .ybn シナリオスクリプトを純粋な TS で解析(命令 / 記述子 / 文字列テーブル / 行番号)
  • 4 バイトのスクリプト XOR キーの自動復元 — 暗号化されたスクリプトがキー探しなしで開く
  • 文字列テーブルから日本語のセリフを抽出;コマンドオペランド / 変数名 / アセットパスは既定で除外
  • 完全なオフセットパッチによる文字列テーブルの再構築で、長くても短くても翻訳が収まる
  • ルーズファイルオーバーライドのエクスポート — 翻訳済みの .ybn をそのアーカイブパスに置き、再パック不要
  • DeepL、Google、OpenAI、Anthropic、OpenAI 互換、またはローカルモデルで 30 以上の言語に翻訳

制限事項

  • 実ゲームではまだ検証されていません — ゲーム内での検証は保留中なので、書き出したビルドをテストしてから使ってください
  • YU-RIS の文字列は Shift-JIS(cp932)です:英語など cp932 で表現できるターゲットは動作しますが、cp932 にない文字(拡張キリル文字、韓国語、繁体字中国語など)は、まだ自動化されていないゲームフォント / エンコーディングの回避策が必要です
  • 画像に焼き込まれたテキスト(タイトル画面、メニュー、ボタン)は、スクリプト抽出ではなく別途の画像テキスト OCR フローで処理されます
  • YSCM コマンドテーブルによるコマンド単位のメッセージタグ付けは計画中の改良です;現時点ではシナリオスクリプト内のすべての日本語文字列が提示され、非表示文字列はヒューリスティックで除外されます

関連記事

YU-RIS 翻訳の完全ガイド
ガイドを読む →

その他の対応エンジン

GettextRPG MakerRen'PyKirikiriWolf RPGTyranoBuilderElectron VNUnityBakinSRPG StudioNScripterGodotArtemisAliceSoftUnrealLiveMaker