EnginesAnleitungenFAQPatreonDiscordDownload
Anmelden
RuneTranslate · Spiele aus Japanisch und 30+ Sprachen übersetzen
EnginesAnleitungenVergleichBildtextSpielstand-EditorCheat-ModusFAQDownloadÄnderungenTrustpilotPatreonDiscordYouTubeDatenschutzAGBKontakt
Alle Beiträge
runesight · exclusions · ai · feature

RuneSight: die neuronale Engine, die Text von Code unterscheidet

18. Sept. 2026·7 Min. Lesezeit

Version 1.0.6 löst die handgeschriebene Regex-Liste ab, die bisher entschied, welche extrahierten Zeilen Text waren und welche Pfade, Bezeichner und Steuercodes. RuneSight, ein 400-KB-großer neuronaler Klassifikator, trainiert auf neunhunderttausend Zeilen aus echten Spielen, echten Sätzen in sechzehn Sprachen und jedem dokumentierten Engine-Steuercode, trifft diese Entscheidung jetzt in Mikrosekunden auf deiner CPU, nennt für jede Zeile ihren Grund und rührt nie eine Zeile an, die echten Text enthält.

Jedes Spiel, das RuneTranslate öffnet, besteht größtenteils aus Text, den ein Spieler lesen wird, plus einem langen Schwanz von Dingen, die nur wie Text aussehen: Asset-Pfade, Variablennamen, Steuercodes, Plugin-Schlüssel, Debug-Bezeichnungen, ein base64-Blob, den jemand in einer Datendatei zurückgelassen hat. Übersetzt man eine davon, ist der beste Fall eine verschwendete Anfrage. Der schlimmste Fall ist eine Szene, die nie lädt, weil die Engine jetzt einen Namen nachschlägt, den es nicht mehr gibt.

Seit der ersten Version wurde die Grenze zwischen beidem von Hand gezogen: Hunderte regulärer Ausdrücke, einer pro Form von Müll, dem wir begegnet waren, Engine für Engine. Version 1.0.6 ersetzt diese Liste durch RuneSight, ein kleines neuronales Netz, trainiert auf dem echten Material. Es entscheidet für jede extrahierte Zeile, ob sie Text ist oder reine Technik, und das in wenigen Mikrosekunden, auf deiner CPU, innerhalb der App.

Warum eine Liste von Regeln nicht mehr ausreichte

Ein regulärer Ausdruck erfasst genau die Form, für die er geschrieben wurde. bg_office_01 ist ein Bezeichner, also erfasst ihn eine Regel für snake_case. Dann kommt ein Wolf-RPG-Spiel mit <<GET_FILE_EXIST>>Data/\s[1], ein Bakin-Spiel mit Lv.\partystatus[0], ein Unity-Spiel mit "CubismTaskQueue.OnTask" already set., und ein auf Japanisch geschriebener Ordnername bricht die Pfadregel, die von ASCII ausging. Jedes davon wurde zu einer neuen Regel, sorgfältig eingegrenzt, damit sie keinen echten Dialog verschluckte, und jede neue Engine begann den Kreislauf von vorn.

Regeln können auch keine Beweise abwägen. Eine Zeile, die größtenteils ein Steuercode ist, mit drei Wörtern Dialog am Ende, ist Text und muss übersetzbar bleiben. Eine Zeile, die ein vollständiger Satz über eine .png-Datei ist, ist Text. Eine Zeile, die nichts als \f[\cself[1]]\space[4] ist, ist es nicht. Die beiden auseinanderzuhalten braucht ein Gespür für die ganze Zeile, nicht einen Treffer auf einen Teil davon.

Was RuneSight ist

RuneSight ist ein Klassifikator von etwa 400 Kilobyte. Er liest eine Zeile als eine Menge von Zeichenfragmenten, ein bis vier Zeichen lang, gehasht in eine feste Tabelle, und verbindet das mit ein paar Dutzend gemessenen Eigenschaften der Zeile: wie viel davon Buchstaben, Ziffern, Satzzeichen oder Leerzeichen sind, welche Schriftsysteme sie verwendet, ob sie wie ein Pfad aussieht, ob ihre Klammern ausgeglichen sind, ob sie endet, wie ein Satz endet. Eine kleine verborgene Schicht macht daraus zwei Antworten: die Wahrscheinlichkeit, dass die Zeile kein Text ist, und, falls nicht, um welche Art von Nicht-Text es sich handelt.

Diese zweite Antwort ist das, was du im Editor siehst. Eine ausgeschlossene Zeile trägt weiterhin einen lesbaren Grund: Code-Muster, Asset-Referenz, Systembezeichnung, Numerisch, Kommentar, Plugin-Schlüssel, nur Steuercodes, Binär oder Plugin-Befehl. Die Zeile erhält eine kleine RuneSight-Markierung und die Zuversicht hinter dem Urteil, sodass eine Entscheidung nie eine Blackbox ist, und ein Klick auf die Zeile aktiviert sie wieder.

Das Ganze läuft in etwa vier Mikrosekunden pro Zeile. Ein JRPG mit hunderttausend Zeilen wird auf jedem Windows-10- oder -11-Rechner in deutlich unter einer Sekunde klassifiziert, ohne GPU und ohne dass irgendetwas irgendwohin gesendet wird.

Woraus es gelernt hat

Dafür gab es keine gelabelten Daten, also wurden sie erstellt. Der Trainingsdatensatz umfasst etwas über neunhunderttausend Zeilen:

  • Echte Spiele. Vollständige Extraktionen von dreizehn Spielen aus zehn Engines, von RPG Maker und Ren’Py über Wolf RPG, Kirikiri, Artemis, Unity, Godot, Bakin bis Unreal, gelabelt nach den Regeln, die RuneSight ablöste. Das ist die Untergrenze: Es musste alles erfassen, was die Regeln erfassten.
  • Echte Sätze. Eine Viertelmillion Sätze in sechzehn Sprachen, darunter Japanisch, Chinesisch, Koreanisch, Thailändisch, Arabisch, Russisch und die Sprachen mit lateinischer Schrift, damit gewöhnlicher Text in jeder Ausgangssprache nie mit Code verwechselt wird.
  • Echte Technik. Hundertsechzigtausend Pfade, Bezeichner, punktierte Namen und Kommentarzeilen, geerntet aus Quellcode und Paketen – die Formen, die sich Engines teilen.
  • Die blinden Flecken, mit Absicht. Fast dreihunderttausend generierte Zeilen, gebaut aus den offiziellen Steuercode-Referenzen von Wolf RPG, RPG Maker und Bakin, jede gepaart mit dem Beinahe-Treffer-Dialog, den sie nicht verschlucken darf: ein Satz, der eine Datei erwähnt, ein Name gefolgt von einer Zahl, eine Textzeile mit einem Code in der Mitte.
  • Ein von Hand geprüfter Goldstandard-Satz. Jede Zeile, auf die die alten Regeln festgelegt waren, plus echte Zeilen, die aus gespielten Spielen gemeldet wurden, einzeln beurteilt.

Was es vor der Veröffentlichung beweisen musste

Ein Modell, das im Schnitt nur besser ist, wäre für jeden, der auf seine neuen Fehler stößt, trotzdem ein Rückschritt, deshalb muss RuneSight feste Schwellenwerte einhalten, die bei jedem Neutraining erneut geprüft werden:

  • Bei jedem echten Spiel im Datensatz erfasst es mindestens 99,5 % dessen, was die handgeschriebenen Regeln erfasst haben.
  • Auf dem eingefrorenen Satz von Zeilen, die übersetzbar bleiben müssen, denen, gegen die die alten Regeln schon immer getestet wurden, macht es null Ausschlüsse.
  • Bei echter Prosa werden nie mehr als 0,2 % der Zeilen ausgeschlossen.
  • Der genannte Grund stimmt mindestens 97 % der Zeit.
  • Eine Zeile wird in unter 5 Mikrosekunden bewertet.

Die wichtigste Regel betrifft gemischte Zeilen. Eine Zeile, die echten Text neben Codes enthält, ist Text und bleibt übersetzbar. RuneSight entfernt eine Zeile nur, wenn die gesamte Zeile reine Technik ist.

Was sich nicht geändert hat

RuneSight entscheidet über die Form einer Zeile. Entscheidungen, die Kontext statt Form brauchen, kommen weiterhin von den Engine-Adaptern: Ein Godot-Node-Name wird ausgeschlossen wegen seiner Position im Szenenbaum, ein RPG-Maker-Ereigniskommentar wegen des Befehls, der ihn trägt, ein Plugin-Parameterschlüssel wegen der Datei, in der er steht. Diese Regeln bleiben bestehen, ebenso die Richtlinien-Ausschlüsse, die du in der Grund-Spalte siehst, etwa eine Zeile ganz ohne Zeichen der Ausgangssprache.

Deine eigenen Regex-Filter laufen nach RuneSight und verhalten sich genau wie zuvor, und jeder Ausschluss, von wem auch immer er stammt, ist weiterhin eine rote Opt-in-Zeile, die du wieder einschalten kannst. Was RuneSight entscheidet, ist nie endgültig.

Wo du es siehst

Das RuneSight-Abzeichen sitzt unten rechts in der App, über der Versionszeile. Sein Punkt ist grün, wenn das Modell geladen ist. Öffne es, und es zeigt dir die Modellgröße, den mitgelieferten Konfidenz-Schwellenwert und was die letzte Extraktion getan hat: wie viele Zeilen sie bewertet hat, wie viele sie ausgeschlossen hat und wo sie von den alten Regeln abwich. Nach jeder Extraktion wiederholt ein kurzer Toast diese Zahlen.

Lässt sich das Modell einmal nicht laden, sagt das Abzeichen das, und die Extraktion fällt einfach auf die bisherigen Regeln zurück. Die App verweigert deswegen nie die Arbeit.

Jede Stelle, an der das Modell von den alten Regeln abweicht, wird in ein kleines lokales Protokoll geschrieben und nie hochgeladen. Wenn eine Zeile, die du für echten Dialog hältst, als ausgeschlossen erscheint, aktiviere sie im Editor wieder und sag es uns auf Discord. Genau aus solchen Meldungen lernt das nächste Neutraining.

Weiterführende Lektüre
01

RuneLingua: die Übersetzung ist jetzt Teil deines RuneTranslate-Abos

runelinguaproviderspricingfeature19. Sept. 2026 · 6 Min.
Lesen →
02

Unerwünschte Zeilen mit Regex-Filtern von der Übersetzung ausschließen

exclusionsregexfilters24. Juli 2026 · 7 Min.
Lesen →
03

Ganze Spiele schneller übersetzen mit deinen eigenen Proxys (Pro)

proxiesproprovidersspeedfeature24. Juli 2026 · 5 Min.
Lesen →

Bereit, RuneTranslate auszuprobieren?

Der Free-Tarif schaltet jede Engine + jeden Übersetzungsanbieter frei. Supporter ($3.99/Mon.) schaltet volle Geschwindigkeit frei.

Für Windows herunterladen