Artemis-Engine-Visual-Novels ins Englische übersetzen
RuneTranslate übersetzt Artemis-Engine- (iMel/Mikage) Visual Novels ins Englische und über 30 Sprachen — es liest .pfs-Archive (inkl. PF8-Verschlüsselung), extrahiert Dialoge und Auswahlmöglichkeiten und exportiert einen root.pfs-Override-Patch, den das Spiel lädt. Nach bestem Bemühen.
Um Artemis-Engine-Spiele zu übersetzen, liest RuneTranslate ein Framework, das für Fan-Übersetzer lange nahezu unantastbar war: die Artemis Engine, das Lua-basierte Visual-Novel-Framework hinter Hunderten japanischer Veröffentlichungen. Öffne einen Artemis-Spielordner, und du findest einen Haufen .pfs-Archive und nichts Lesbares. RuneTranslate erkennt die Engine, öffnet diese Archive in reinem TypeScript (Verschlüsselung inklusive), liest die Dialoge, Figurennamen und Auswahlmöglichkeiten aus ihren Skripten heraus und exportiert eine übersetzte Kopie, die das Spiel von selbst lädt.
Artemis hat Jahre an pro-Studio-Variation, wenn du RuneTranslate also auf ein Artemis-Spiel richtest und es nicht erkennt, nicht öffnet oder etwas exportiert, das das Spiel nicht lädt, sag uns Bescheid — mehr dazu, wie, am Ende.
Was die Artemis Engine eigentlich ist
Artemis ist eine kommerzielle japanische Visual-Novel-Engine, entwickelt von iMel Inc. (dem Studio, auch bekannt für Mikage). Wo ältere Engines wie Kirikiri oder NScripter eine eigens gebaute domänenspezifische Skriptsprache offenlegen, ist Artemis rund um Lua gebaut — seine Szenarioskripte sind im Wesentlichen Lua-Datentabellen —, was es für Entwickler flexibel macht, in der Praxis aber eine Mauer für jeden, der ein fertiges Spiel von außen übersetzen will. Rund 730 Veröffentlichungen auf VNDB basieren darauf, es ist also alles andere als eine Nischenkuriosität; es ist ein ganzer Backkatalog, den Werkzeuge für maschinelle Übersetzung historisch übersprungen haben.
Auf der Festplatte ist ein Artemis-Spiel eine Windows-.exe plus ein oder mehrere .pfs-Ressourcenarchive, die die Skripte, Grafik und Audio enthalten. Die Skripte darin sind meist .ast-Dateien (Lua-Tabellen-Szenarioskripte) und .txt-Dateien (ein einfacheres zeilenorientiertes Format). RuneTranslate arbeitet direkt aus diesen Archiven und Skripten, sodass es das Spiel abdeckt, egal ob das Studio Szenarien als .ast oder .txt ausgeliefert hat.
Warum Artemis-Spiele so schwer zu übersetzen waren
Verglichen mit einer quellgetriebenen Engine wie Ren'Py versteckt Artemis seinen Text hinter mehreren Schichten. Ein paar konkrete davon haben es sowohl Handübersetzern als auch naiven Werkzeugen unzugänglich gemacht:
- Alles lebt in `.pfs`-Archiven. Die Skripte sind nicht lose auf der Festplatte — sie sind in Artemis' eigenes
.pfs-Containerformat gepackt (du siehst die VariantenPF8,PF6und das älterePF2). Ohne einen Leser für dieses Format gibt es überhaupt nichts zu bearbeiten. - Die neuesten Archive sind verschlüsselt. Das aktuelle
PF8-Format packt die Dateien nicht nur, es verschlüsselt ihren Inhalt: Jeder Eintrag wird gegen einen Schlüssel ge-XOR-t, der von einemSHA-1-Hash des archiveigenen Index abgeleitet ist. Man kann die Bytes nicht einfach herausschneiden — man muss die Schlüsselableitung der Engine reproduzieren, um lesbares Skript zurückzubekommen. - Die Skripte sind Lua-Daten, kein reiner Text. Ein
.ast-Szenario ist eine Lua-Tabelle — Dialog, Sprechernamen und Auswahlmöglichkeiten sind verschachtelte Felder in strukturierten Tabellen, gemischt mit Engine-Befehlen. Es gibt zwei Tabellen-Layouts in freier Wildbahn (ein älteres v1 und ein neueres v2), und ein Übersetzer muss beide verstehen, um die tatsächlich gesprochenen Zeilen herauszuziehen, ohne die Struktur drumherum zu verstümmeln. - Inline-Engine-Befehle durchziehen den Dialog. Ruby-/Furigana-Anmerkungen, Namensschilder, Farbwechsel und Klick-Warten sind inline mit dem Text geschrieben. Ein Suchen-und-Ersetzen, das sie nicht erkennt, übersetzt auch die Befehls-Tokens, und das Spiel geht kaputt.
Der Nettoeffekt: Selbst ein Übersetzer, der fließend Japanisch liest, muss zuerst einen proprietären verschlüsselten Container auspacken, dann Lua-Tabellen von Hand parsen, dann sorgfältig um Inline-Markup herumsteuern — bevor eine einzige Zeile übersetzt wird. Genau diese Arbeit erledigt RuneTranslate jetzt für dich.
Was RuneTranslate jetzt macht
RuneTranslate behandelt Artemis als erstklassige Engine und erledigt die gesamte Pipeline in reinem TypeScript — keine externen Tools, kein Python-Sidecar, nichts zu installieren:
- Liest `.pfs`-Archive direkt. Es öffnet die Formate
PF8,PF6und das älterePF2im Haus, einschließlich PF8s `SHA-1`-gekeyter XOR-Verschlüsselung — indem es die Schlüsselableitung der Engine reproduziert, sodass der Skriptinhalt lesbar herauskommt. - Extrahiert Dialog, Namen und Auswahlmöglichkeiten. Es parst die lesbaren
.ast-(Lua-Tabellen-)Szenarioskripte — sowohl das ältere v1- als auch das neuere v2-Layout —, die.txt-(zeilenorientierten)-Skripte UND die kompilierten binären `ASB`-Szenarien, die viele Spiele tatsächlich ausliefern (per Signatur erkannt, selbst wenn zu einer eigenen Erweiterung wie.ietumbenannt), und listet jede übersetzbare Zeile im Editor auf: den gesprochenen Dialog, die Figurennamen auf den Namensschildern und die verzweigenden Auswahlmöglichkeiten. - Bewahrt die Engine-Befehle. Inline-Markup — Ruby/Furigana, Namensschilder, Farbe, Klick-Warten — und Zeilenumbrüche werden hinter numerischen Platzhaltern maskiert, bevor irgendetwas den Übersetzungsanbieter erreicht, und dann auf dem Rückweg exakt wiederhergestellt. Der Text wird übersetzt; die Engine-Anweisungen nicht.
- Exportiert einen Override-Patch. Artemis liest seine Skripte aus den eingebundenen
.pfs-Archiven, sodass RuneTranslate beim Export ein übersetztes Override-Patch-Archiv schreibt — eineroot.pfs.NNN-Datei, eine pro Quell-.pfs— in eine Kopie des Spiels. Artemis bindet das höchstnummerierte Archiv zuletzt ein und liest daraus, sodass der Patch die gepackten Originale überschattet, ohne die spieleigenen Archive neu aufzubauen. (Die übersetzten Skripte werden außerdem als harmlose Zugabe lose geschrieben.) Es ist dieselbe Override-Patch-Idee wie bei unserem Kirikiri-Patch-Ablauf.
Japanisch → Englisch ist der Sweet Spot, aber du kannst jede von über 30 Sprachen ansteuern — Spanisch, Französisch, Deutsch, Portugiesisch, Russisch, Chinesisch, Italienisch, Türkisch, Vietnamesisch und mehr.
Was du brauchst
- RuneTranslate für Windows — kostenlos; jede Engine und jeder Anbieter ist freigeschaltet (die kostenlose Stufe ist bei der Geschwindigkeit gedrosselt, nicht bei den Funktionen).
- Einen Artemis-Spielordner. Das ist das Verzeichnis mit der
.exedes Spiels und seinen.pfs-Archiven (die Skripte und Assets sind darin gepackt). - Eine Zielsprache — Englisch, Spanisch, Französisch, Deutsch, Portugiesisch, Russisch, Chinesisch, Italienisch, Türkisch, Vietnamesisch und über 20 weitere.
- Einen Übersetzungsanbieter. Das kostenlose Google Translate funktioniert sofort; DeepL hat eine kostenlose Stufe; OpenAI, Anthropic, ein lokales Modell (Ollama / LM Studio) und jede OpenAI-kompatible API laufen mit deinem eigenen Schlüssel. Artemis-Spiele sind dialoglastig und tonempfindlich, also liest meist ein LLM (OpenAI / Anthropic) oder DeepL am besten.
Schritt 1: Den Spielordner öffnen
Starte RuneTranslate, klicke auf Neues Projekt und richte es auf das Verzeichnis des Artemis-Spiels. Die Engine-Erkennung läuft automatisch — wenn sie die .pfs-Archive der Engine sieht, erkennt sie das Projekt als Artemis. Dein Original-Spielordner wird nie verändert.
Schritt 2: Wie die Skripte gelesen werden
RuneTranslate öffnet die .pfs-Archive und holt die Skripte für dich heraus, dabei entschlüsselnd und parsend:
- Verschlüsselte `PF8`-Archive — im Haus mit dem
SHA-1-gekeyten XOR-Schema entschlüsselt, sodass du nie einen separaten Entpacker ausführst. - Unverschlüsselte `PF6` / ältere `PF2`-Archive — direkt gelesen.
- `.ast`- und `.txt`-Skripte — auf Dialog, Namen und Auswahlmöglichkeiten geparst und im Editor aufgelistet, gruppiert nach Datei.
Inline-Engine-Befehle und Zeilenumbrüche werden hinter numerischen Platzhaltern maskiert, bevor irgendetwas den Anbieter erreicht, und dann auf dem Rückweg wiederhergestellt — sodass die Ruby-Anmerkungen, Namensschilder und Farb-Tags den Hin- und Rückweg unangetastet überstehen.
Schritt 3: Übersetzen
Wähle einen Anbieter und starte. Für einen Visual Novel ist ein LLM (OpenAI / Anthropic) am besten für Figurenstimme und Ton, DeepL ist schnell und sauber für Erzähltext, und das kostenlose Google Translate reicht für kurze Menü-Strings und Auswahlmöglichkeiten. Glossariere deine Besetzung und wiederkehrende Begriffe vorab, damit Namen im ganzen Spiel einheitlich erscheinen — siehe Glossar 101. Wenn du fertig bist, liest ein optionaler Durchgang mit dem KI-Refiner jede Zeile im Kontext erneut und strafft die steifen, wörtlichen Formulierungen, die maschinelle Übersetzung gern hinterlässt.
Schritt 4: Eine startklare Kopie exportieren
Klicke auf Exportieren. RuneTranslate schreibt eine übersetzte Kopie des Spiels mit einem root.pfs.NNN-Override-Patch-Archiv — eines pro Quell-.pfs —, das Artemis zuletzt einbindet und bevorzugt gegenüber den gepackten Originalen liest. (Die übersetzten Skripte werden außerdem als harmlose Zugabe lose abgelegt.) Starte es, und das Spiel spielt in deiner Zielsprache.
Bekannte Einschränkungen
- Kompilierte `.asb`-Szenarien werden gelesen — viele Artemis-Spiele liefern das Szenario als kompiliertes binäres AST (die Form, die mit dem
ASB-Marker beginnt) statt als lesbares.ast/.txtaus, und mehrere benennen die Erweiterung um (ein von uns getestetes Spiel nutzt.iet). RuneTranslate erkennt das per Signatur, nicht per Erweiterung, und übersetzt es an Ort und Stelle. Wo ein Spiel Sprechernamen in Grafiken oder als Befehlsnamen statt als In-Skript-Text speichert, kommen diese Namen aus dem Bildtext-Ablauf, nicht aus dem Skript — wenn ein Name japanisch bleibt, ist das meist der Grund. - Der Override-Patch ist der Ladepfad. Das übersetzte
root.pfs.NNN-Archiv ist das, was das Spiel tatsächlich liest. Bei dem seltenen Titel, der Archive anders einbindet, muss der Export vielleicht angepasst werden — genau die Art realen Spielverhaltens, das wir robust machen, sobald Meldungen eintreffen. - In Bildmaterial eingebrannter Text — ein Titelbildschirm oder eine als Bitmap gezeichnete Menüschaltfläche — ist Pixel, kein Skripttext, sodass der Skript-Extraktor ihn nicht erreichen kann. Dafür siehe Bildtext-Übersetzung.
- Die genaue Archiv- und Skriptvariante kann sich zwischen Veröffentlichungen unterscheiden. Verifiziere immer an deiner konkreten Kopie.
Auf ein Problem gestoßen? Sag uns Bescheid
Der .pfs-Leser, die Verschlüsselung und die .ast / .txt / .asb-Parser sind gebaut und Unit-getestet, aber Artemis hat Jahre pro-Studio-Variation. Wenn ein Spiel nicht erkennt, die Archive nicht öffnet, nichts extrahiert oder etwas exportiert, das es nicht lädt, melde es auf unserem Discord — der Name des Spiels und wie es gepackt ist (welche .pfs-Variante, .ast vs. .txt vs. .asb), ist genau das, was uns hilft, es am schnellsten robust zu machen.
Lade RuneTranslate herunter, richte es auf jenen Artemis-VN, den du schon lesen wolltest, und probiere es aus. Für einen Blick darauf, wie wir eine weitere archivbasierte VN-Engine handhaben, lies als Nächstes die Kirikiri-Anleitung.
Bereit, RuneTranslate auszuprobieren?
Der Free-Tarif schaltet jede Engine + jeden Übersetzungsanbieter frei. Supporter ($3/Mon.) schaltet volle Geschwindigkeit frei.
Für Windows herunterladen
