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

対応エンジン · GameMaker

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

GameMaker 翻訳ツール - GameMaker と GameMaker Studio のゲームをエンドツーエンドで翻訳

GameMaker のゲーム(古いリリースは GameMaker Studio として販売されていました)は、コンパイル済みのデータを 1 つのファイルにまとめています。Windows では data.win、Linux では game.unx、macOS では game.ios です。RuneTranslate はこのファイルを、サードパーティ製ツールや sidecar を使わずに自分で読み書きします。各文字列をゲームのバイトコード上でたどり、描画関数やメッセージ関数に届くかどうかを調べるので、プレイヤーが目にするテキストだけが翻訳の対象になり、検索用のキー、ファイル名、ゲームが比較に使う文字列には手を触れません。ゲームに同梱された言語ファイル(JSON、CSV、INI / key=value、Yarn と Chatterbox のダイアログ)や gettext の .po / .mo カタログも取り込まれ、マークアップと制御コードはプレースホルダーの裏にマスクされるため、プロバイダーが壊すことはできません。翻訳には DeepL、LLM(OpenAI / Anthropic)、無料の Google 翻訳、ローカルモデルなど、好きなプロバイダーを使えます。書き出し時、翻訳にゲームのフォントにない文字(キリル文字、ベトナム語、中国語、日本語、韓国語、タイ語、アクセント付きラテン文字)が必要な場合は、RuneTranslate がそれらのグリフをゲーム自身のフォントに合うスタイルで追加します。日本語、中国語、タイ語では、テキストボックスの幅がゲームから裏付けられた位置でのみ改行します。書き出しはどれも、何かを置き換える前に読み直され、バイト単位で検証されます。GameMaker は新しく追加されたエンジンで、GameMaker Studio 1.4、GameMaker Studio 2.3、GameMaker 2022 LTS、2023、2024 で作られた実際のゲームでエンドツーエンドの検証を行いました。YYC(ネイティブコード)でコンパイルされたゲームは例外で、言語ファイルとフォントは翻訳できますが、コード内のテキストには届きません。ソース言語は既定で日本語で、プロジェクトごとに設定できます。

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

GameMaker のゲームでは、キャラクター名、アイテム名、メニュー用語がデータファイルと言語ファイルにまたがって繰り返し登場します。どの行でも同じ訳になるよう、先に用語集へ登録しておきましょう。 用語集の基本 →

RuneTranslate を Windows 版でダウンロード

GameMaker を翻訳する方法

  1. ステップ 1

    GameMaker のゲームフォルダーを開く

    RuneTranslate をゲームのディレクトリに向けます。Windows では data.win、Linux では game.unx、macOS ビルドでは game.ios が入っているフォルダーです。検出はデータファイルを自動で認識し、ゲームを開いても何も変更されません。ゲームがインストーラーで配布されている場合は、先にインストールしてください。1 つの実行ファイルにまとめられた GameMaker Studio 1.4 のゲームは、書き出し時に通常のゲームフォルダーへ展開されます。

  2. ステップ 2

    ゲームが描画するテキストを抽出する

    RuneTranslate はデータファイルをサードパーティ製ツールや sidecar なしで自分で読み取り、各文字列をゲームのバイトコード上でたどって、描画関数やメッセージ関数に届くかどうかを調べます。プレイヤーが目にするテキストが翻訳単位になり、検索用のキー、ファイル名、ゲームが比較に使う文字列には手を触れません。ゲームに同梱された言語ファイル(JSON、CSV、INI / key=value、Yarn と Chatterbox のダイアログ)や gettext の .po / .mo カタログも一覧に載ります。

  3. ステップ 3

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

    DeepL、LLM(OpenAI / Anthropic)、無料の Google 翻訳、ローカルモデルのいずれかで翻訳します。マークアップと制御コードはプレースホルダーの裏にマスクされるため、プロバイダーが並べ替えたり、削除したり、翻訳したりすることはなく、翻訳メモリが繰り返しの行を再利用します。

  4. ステップ 4

    翻訳済みビルドを書き出す

    翻訳済みのコピーを別のフォルダーに、または(一部の Steam ゲームで必要な)その場で書き出します。翻訳にゲームのフォントにない文字が含まれる場合、書き出しはそれらのグリフをゲーム自身のフォントに合うスタイルで追加します。日本語、中国語、タイ語では、テキストボックスの幅がゲームから裏付けられた位置でのみ、禁則処理に従って改行します。macOS または Linux のビルドでは、変更されたファイルだけを書き出すので、それをインストール先にコピーして上書きします。

  5. ステップ 5

    翻訳済みコピーが動くことを確認する

    書き出しはどれも、何かを置き換える前に読み直され、バイト単位で検証されます。翻訳済みのゲームを起動し、共有する前にセリフ、メニュー、フォントをゲーム内で確認してください。

対応内容

  • data.win(Windows)、game.unx(Linux)、game.ios(macOS)を、サードパーティ製ツールなしで RuneTranslate 自身が読み書き
  • 実際のゲームでエンドツーエンド検証済み:GameMaker Studio 1.4、GameMaker Studio 2.3、GameMaker 2022 LTS、2023、2024
  • ゲームが描画するテキスト:各文字列をバイトコード上で描画関数やメッセージ関数までたどるため、検索用のキー、ファイル名、比較される文字列には手を触れません
  • ゲームに同梱された言語ファイル(JSON、CSV、INI / key=value、Yarn と Chatterbox のダイアログ)と gettext の .po / .mo カタログ
  • マークアップと制御コードをプレースホルダーの裏にマスクし、プロバイダーに壊されないようにします
  • 足りないグリフ(キリル文字、ベトナム語、中国語、日本語、韓国語、タイ語、アクセント付きラテン文字)をゲーム自身のフォントに合うスタイルで追加。小さなピクセルフォントには同梱のピクセルフォントを使用し、スプライトストリップ型のフォントも拡張します
  • タイ語はシェーピングエンジンなしで、合成済みグリフにより描画。日本語、中国語、タイ語の行は、テキストボックスの幅がゲームから裏付けられた位置でのみ、禁則処理に従って改行
  • 1 つの実行ファイルにまとめられた GameMaker Studio 1.4 のゲームは、書き出し時に通常のゲームフォルダーへ展開
  • 書き出しはどれも、何かを置き換える前に読み直され、バイト単位で検証されます

制限事項

  • YYC(ネイティブコード)でコンパイルされたゲーム:言語ファイルとフォントだけが翻訳でき、ゲームコード内のテキストには届きません
  • GameMaker Studio 2.2 や、バイトコード 13 / 14 の GameMaker Studio 1.4 などのほかのバージョンは、「未検証」の警告付きで開きます。翻訳済みビルドをゲーム内で確認してください
  • 非対応:GameMaker 8.x、GameMaker Studio 1.0 から 1.1、新しい GMRT ランタイム、HTML5 やモバイル向けのパッケージ
  • アラビア語など、右から左へ書く翻訳先言語には対応していません
  • macOS と Linux のビルド:書き出しは変更されたファイルだけを書き出すので、インストール先への上書きコピーはご自身で行います
  • インストーラーは直接開けません。先にゲームをインストールしてください

関連記事

翻訳したらゲームが起動しない?原因の行を探す
ガイドを読む →

関連記事

RuneTranslate vs Translumo
ガイドを読む →

その他の対応エンジン

GettextRPG MakerRPG Maker XP/VX/AceRen'PyKirikiriWolf RPGTyranoBuilderElectron VNUnityBakinSRPG StudioNScripterGodotArtemisYU-RISAliceSoftUnrealLiveMaker