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

RuneSight: テキストとコードを見分けるニューラルエンジン

2026年9月18日·7 分で読めます

バージョン 1.0.6 は、抽出した行がテキストなのか、それともパス・識別子・制御コードなのかを判定していた、手書きの正規表現リストを引退させます。RuneSight は、実在するゲームの 90 万行、16 言語の実際の文、そして文書化されているすべてのエンジン制御コードで学習した 400 KB のニューラル分類器で、その判定をあなたの CPU 上でマイクロ秒単位で下し、すべての行にその理由を示し、本物のテキストを含む行には決して触れません。

RuneTranslate が開くゲームは、その大半がプレイヤーが実際に読むテキストですが、残りにはテキストに見えるだけの様々なものが連なっています。アセットパス、変数名、制御コード、プラグインキー、デバッグラベル、誰かがデータファイルに置き忘れた base64 の塊などです。そのどれかを翻訳してしまえば、最良のケースでもリクエストを無駄にするだけで済みますが、最悪の場合はエンジンが存在しなくなった名前を探しに行き、シーンが二度と読み込まれなくなります。

最初のリリース以来、その境界線は手作業で引かれてきました。エンジンごとに出会ったゴミの形一つひとつに正規表現を 1 つずつ当てていく方式で、その数は何百にも及びます。バージョン 1.0.6 は、そのリストを実物で学習させた小さなニューラルネットワーク、RuneSight に置き換えます。抽出された行それぞれについて、テキストなのか非テキストなのかを判定し、それをアプリの中、あなたの CPU 上で、わずか数マイクロ秒のうちに行います。

ルールの一覧だけでは足りなくなった理由

正規表現は、それが書かれた形にだけ正確に一致します。bg_office_01 は識別子なので、snake_case 用のルールがこれを捕まえます。ところが Wolf RPG のゲームが <<GET_FILE_EXIST>>Data/\s[1] を持ち込み、Bakin のゲームが Lv.\partystatus[0] を、Unity のゲームが "CubismTaskQueue.OnTask" already set. を持ち込み、日本語で書かれたフォルダー名は ASCII を前提としたパスのルールを壊してしまいます。そのたびに新しいルールが 1 つ追加され、本物のセリフを飲み込まないよう注意深く範囲を絞りますが、新しいエンジンが来るたびにまた同じサイクルが始まります。

ルールにはまた、証拠を比較検討する力がありません。行の大部分が制御コードでも、末尾に 3 語のセリフが付いていればそれはテキストであり、翻訳可能なままでなければなりません。.png ファイルについて述べた完全な一文もテキストです。一方、\f[\cself[1]]\space[4] だけの行はテキストではありません。両者を見分けるには、行の一部への一致ではなく、行全体を捉える感覚が必要です。

RuneSight とは何か

RuneSight は約 400 キロバイトの分類器です。行を 1〜4 文字の文字断片の集合として読み取り、固定テーブルにハッシュ化したうえで、その行から測定した数十個の特徴と組み合わせます。文字・数字・記号・空白がそれぞれどれだけ含まれるか、どの文字体系が使われているか、パスのように見えるか、括弧の対応が取れているか、文として終わる形になっているか、といった特徴です。1 つの小さな隠れ層がそれを 2 つの答えに変換します。その行が非テキストである確率、そしてもし非テキストであるなら、それがどの種類の非テキストかです。

その 2 つ目の答えが、エディターで実際に目にするものです。除外された行には、読める理由が必ず添えられます。コードパターン、アセット参照、システムラベル、数値、コメント、プラグインキー、制御コードのみ、バイナリ、プラグインコマンドのいずれかです。その行には小さなRuneSightマークと判定の裏付けとなる確信度が付くので、判断がブラックボックスになることはなく、行をワンクリックすれば元に戻せます。

これらすべてが 1 行あたり約 4 マイクロ秒で完了します。10 万行規模の JRPG も、Windows 10 や 11 のどのマシンでも、GPU なしで、どこにも何も送信することなく、1 秒に満たない時間で分類が終わります。

何を学習したのか

このためのラベル付きデータはどこにも存在しなかったので、自分たちで作りました。学習データセットは 90 万行強です。

  • 実在するゲーム。 RPG Maker や Ren’Py から Wolf RPG、Kirikiri、Artemis、Unity、Godot、Bakin、Unreal まで、10 のエンジンにまたがる 13 本のゲームの完全な抽出結果を、RuneSight が置き換える対象だったルールでラベル付けしたものです。これが最低ライン、つまり旧ルールが捕まえていたものはすべて捕まえなければなりませんでした。
  • 実在する文。 16 言語、25 万文です。日本語、中国語、韓国語、タイ語、アラビア語、ロシア語、そしてラテン文字を使う言語群を含み、どのソース言語の普通の文であってもコードと誤認されないようにします。
  • 実在する非テキスト。 ソースコードやパッケージから集めた、パス、識別子、ドット区切りの名前、コメント行など 16 万行です。これらはエンジンが共通して持つ形です。
  • 死角を、あえて。 Wolf RPG、RPG Maker、Bakin の公式な制御コードリファレンスから生成した、およそ 30 万行です。それぞれに、飲み込んではならない紛らわしいセリフを対にしてあります。ファイルについて触れる一文、数字が後ろに付いた名前、途中にコードが挟まったテキスト行などです。
  • 手作業で確認したゴールドセット。 旧ルールが固定されていたすべての行に加え、実際にプレイされたゲームから報告された行を、1 つずつ判定したものです。

出荷前に証明しなければならなかったこと

平均としては優れているだけのモデルでも、その新しい間違いに遭遇した人にとっては後退でしかありません。そのため RuneSight には固定のゲートが課され、再学習のたびに再実行されます。

  • セット内のすべての実在するゲームで、手書きルールが捕まえていたものの少なくとも 99.5% を捕まえること。
  • 翻訳可能なままでなければならない行の凍結セット、つまり旧ルールが常にテストされてきた対象に対しては、除外をゼロにすること。
  • 実際の文章では、除外される行が 0.2% 未満であること。
  • 名指しする理由が、少なくとも 97% の確率で正しいこと。
  • 1 行の判定が 5 マイクロ秒未満で終わること。

中でも最も重要だったのは、混在する行についてのルールです。コードと本物のテキストが同居する行はテキストであり、翻訳可能なままです。RuneSight が行を除外するのは、その行全体が非テキストである場合に限られます。

変わらなかったこと

RuneSight が判定するのは行の形です。形ではなく文脈を必要とする判断は、引き続きエンジンアダプターが担います。Godot のノード名がシーンツリー内の位置によって除外される、RPG Maker のイベントコメントがそれを運ぶコマンドによって除外される、プラグインのパラメーターキーがそれが存在するファイルによって除外される、といった具合です。これらのルールは残りますし、理由の列に表示されるポリシー由来のもの、たとえばソース言語の文字を一切含まない行なども同様です。

あなた自身の正規表現フィルターは RuneSight の後に実行され、これまでとまったく同じように動作します。そして、誰が行ったものであれ、すべての除外は今でも元に戻せる赤いオプトイン行です。RuneSight が下す判断に、最終的なものは 1 つもありません。

どこで確認できるか

RuneSight バッジはアプリの右下、バージョン表示の上にあります。モデルが読み込まれているときはドットが緑になります。開くと、モデルのサイズ、出荷時の確信度しきい値、そして直前の抽出で何が起きたか、つまり何行を判定し、何行を除外し、旧ルールとどこで意見が分かれたかが表示されます。抽出のたびに、その数字を繰り返す短いトーストも表示されます。

モデルが万一読み込めない場合はバッジがそう表示し、抽出は単に以前のルールへとフォールバックします。これが原因でアプリが動作を拒むことは決してありません。

モデルが旧ルールと意見を違えた箇所はすべて、小さなローカルログに書き込まれるだけで、アップロードされることはありません。本物のセリフだと思う行が除外されて表示された場合は、エディターで元に戻したうえで Discord で教えてください。そうした報告こそが、次の再学習が学ぶ材料になります。

関連記事
01

RuneLingua: 翻訳が RuneTranslate のサブスクに含まれるようになりました

runelinguaproviderspricingfeature2026年9月19日 · 6 分
読む →
02

正規表現フィルターで不要な行を翻訳から除外する

exclusionsregexfilters2026年7月24日 · 7 分
読む →
03

自分のプロキシでゲーム全体をより速く翻訳(Pro)

proxiesproprovidersspeedfeature2026年7月24日 · 5 分
読む →

RuneTranslate を試してみませんか?

無料プランですべてのエンジンとすべての翻訳プロバイダーが使えます。Supporter(月額 $3.99)ならフルスピードで翻訳できます。

Windows 版をダウンロード