Comment traduire les romans visuels du moteur Artemis en anglais
RuneTranslate traduit les romans visuels du moteur Artemis (iMel/Mikage) en anglais et plus de 30 langues — en lisant les archives .pfs (chiffrement PF8 compris), en extrayant dialogues et choix, et en exportant un patch de surcharge root.pfs que le jeu charge. Au mieux.
Pour traduire les jeux Artemis Engine, RuneTranslate lit un framework longtemps resté quasi intouchable pour les traducteurs amateurs : le moteur Artemis, le framework de romans visuels basé sur Lua derrière des centaines de sorties japonaises. Ouvrez un dossier de jeu Artemis et vous trouverez un tas d'archives .pfs et rien de lisible. RuneTranslate détecte le moteur, ouvre ces archives en pur TypeScript (chiffrement compris), lit les dialogues, les noms de personnages et les choix à partir de ses scripts, et exporte une copie traduite que le jeu charge tout seul.
Artemis a des années de variations propres à chaque studio, donc si vous pointez RuneTranslate vers un jeu Artemis et qu'il ne détecte pas, n'ouvre pas, ou exporte quelque chose que le jeu ne charge pas, dites-le-nous — le comment est à la fin.
Ce qu'est réellement le moteur Artemis
Artemis est un moteur commercial japonais de romans visuels développé par iMel Inc. (le studio aussi connu pour Mikage). Là où des moteurs plus anciens comme Kirikiri ou NScripter exposent un langage de script propre à leur domaine, Artemis est bâti autour de Lua — ses scripts de scénario sont essentiellement des tables de données Lua — ce qui le rend flexible pour les développeurs mais, en pratique, un mur pour quiconque tente de traduire un jeu terminé de l'extérieur. Environ 730 sorties sur VNDB sont bâties dessus, il est donc loin d'être une curiosité de niche ; c'est tout un back-catalogue que les outils de traduction automatique ont historiquement ignoré.
Sur le disque, un jeu Artemis est un .exe Windows plus une ou plusieurs archives de ressources .pfs contenant les scripts, l'art et l'audio. Les scripts à l'intérieur sont surtout des fichiers .ast (scripts de scénario en tables Lua) et des fichiers .txt (un format plus simple orienté ligne). RuneTranslate travaille directement à partir de ces archives et scripts, donc il couvre le jeu que le studio ait livré les scénarios en .ast ou en .txt.
Pourquoi les jeux Artemis ont été si difficiles à traduire
Comparé à un moteur piloté par la source comme Ren'Py, Artemis cache son texte derrière plusieurs couches. Quelques-unes en particulier l'ont maintenu hors de portée des traducteurs manuels comme des outils naïfs :
- Tout vit à l'intérieur des archives `.pfs`. Les scripts ne sont pas libres sur le disque — ils sont empaquetés dans le format de conteneur
.pfspropre à Artemis (vous verrez les variantesPF8,PF6et l'ancienPF2). Sans lecteur pour ce format, il n'y a rien à modifier en premier lieu. - Les archives les plus récentes sont chiffrées. Le format actuel
PF8ne fait pas qu'empaqueter les fichiers, il chiffre leur contenu : chaque entrée est XORée contre une clé dérivée d'un hachageSHA-1de l'index de l'archive elle-même. Vous ne pouvez pas simplement découper les octets — vous devez reproduire la dérivation de clé du moteur pour récupérer un script lisible. - Les scripts sont des données Lua, pas du texte brut. Un scénario
.astest une table Lua — dialogues, noms de locuteurs et choix sont des champs imbriqués dans des tables structurées, mêlés à des commandes du moteur. Il existe deux dispositions de table dans la nature (une ancienne v1 et une nouvelle v2), et un traducteur doit comprendre les deux pour extraire les répliques réellement dites sans malmener la structure autour d'elles. - Des commandes de moteur en ligne sont tissées à travers le dialogue. Annotations ruby/furigana, plaques de nom, changements de couleur et attentes de clic sont écrits en ligne avec le texte. Un rechercher-remplacer qui ne les reconnaît pas traduira aussi les jetons de commande, et le jeu casse.
L'effet net : même un traducteur capable de lire couramment le japonais doit d'abord déballer un conteneur chiffré propriétaire, puis analyser à la main des tables Lua, puis contourner soigneusement le balisage en ligne — avant qu'une seule ligne soit traduite. C'est le travail que RuneTranslate fait désormais pour vous.
Ce que fait RuneTranslate maintenant
RuneTranslate traite Artemis comme un moteur de premier plan et gère tout le pipeline en pur TypeScript — pas d'outils externes, pas de sidecar Python, rien à installer :
- Lit directement les archives `.pfs`. Il ouvre les formats d'archive
PF8,PF6et l'ancienPF2en interne, y compris le chiffrement XOR à clé `SHA-1` de PF8 — en reproduisant la dérivation de clé du moteur pour que le contenu du script ressorte lisible. - Extrait dialogues, noms et choix. Il analyse les scripts de scénario
.ast(tables Lua) lisibles — dispositions ancienne v1 et nouvelle v2 — les scripts.txt(orientés ligne), ET les scénarios binaires compilés `ASB` que beaucoup de jeux livrent en réalité (détectés par signature, même renommés avec une extension personnalisée comme.iet), et liste chaque ligne traduisible dans l'éditeur : les dialogues parlés, les noms de personnages sur les plaques de nom, et les choix de branchement. - Préserve les commandes du moteur. Le balisage en ligne — ruby/furigana, plaques de nom, couleur, attentes de clic — et les sauts de ligne sont masqués derrière des espaces réservés numériques avant que quoi que ce soit n'atteigne le fournisseur de traduction, puis restaurés exactement en sortie. Le texte est traduit ; les instructions du moteur non.
- Exporte un patch de surcharge. Artemis lit ses scripts à partir des archives
.pfsmontées, donc à l'export RuneTranslate écrit une archive de patch de surcharge traduite — un fichierroot.pfs.NNN, un par.pfssource — dans une copie du jeu. Artemis monte l'archive au numéro le plus élevé en dernier et lit à partir d'elle, donc le patch masque les originaux empaquetés sans reconstruire les propres archives du jeu. (Les scripts traduits sont aussi écrits en fichiers libres, extra inoffensif.) C'est la même idée de patch de surcharge que notre flux de patch Kirikiri.
Le japonais → anglais est le point fort, mais vous pouvez cibler l'une des plus de 30 langues — espagnol, français, allemand, portugais, russe, chinois, italien, turc, vietnamien, et plus.
Ce qu'il vous faut
- RuneTranslate pour Windows — gratuit ; chaque moteur et fournisseur est débloqué (le palier gratuit est bridé sur la vitesse, pas sur les fonctionnalités).
- Un dossier de jeu Artemis. C'est le répertoire contenant le
.exedu jeu et ses archives.pfs(les scripts et les actifs sont empaquetés à l'intérieur). - Une langue cible — anglais, espagnol, français, allemand, portugais, russe, chinois, italien, turc, vietnamien, et plus de 20 autres.
- Un fournisseur de traduction. Google Translate gratuit fonctionne d'emblée ; DeepL a un palier gratuit ; OpenAI, Anthropic, un modèle local (Ollama / LM Studio) et toute API compatible OpenAI fonctionnent avec votre propre clé. Les jeux Artemis sont riches en dialogues et sensibles au ton, donc un LLM (OpenAI / Anthropic) ou DeepL offre généralement la meilleure lecture.
Étape 1 : Ouvrir le dossier du jeu
Lancez RuneTranslate, cliquez sur Nouveau projet, et pointez-le vers le répertoire du jeu Artemis. La détection du moteur s'exécute automatiquement — lorsqu'elle voit les archives .pfs du moteur, elle reconnaît le projet comme Artemis. Votre dossier de jeu d'origine n'est jamais modifié.
Étape 2 : Comment les scripts sont lus
RuneTranslate ouvre les archives .pfs et en extrait les scripts pour vous, en déchiffrant et analysant au fur et à mesure :
- Archives `PF8` chiffrées — déchiffrées en interne à l'aide du schéma XOR à clé
SHA-1, pour que vous n'exécutiez jamais de déballeur séparé. - Archives `PF6` non chiffrées / anciennes `PF2` — lues directement.
- Scripts `.ast` et `.txt` — analysés pour dialogues, noms et choix et listés dans l'éditeur, regroupés par fichier.
Les commandes de moteur en ligne et les sauts de ligne sont masqués derrière des espaces réservés numériques avant que quoi que ce soit n'atteigne le fournisseur, puis restaurés en sortie — pour que les annotations ruby, les plaques de nom et les balises de couleur survivent à l'aller-retour intactes.
Étape 3 : Traduire
Choisissez un fournisseur et lancez. Pour un roman visuel, un LLM (OpenAI / Anthropic) est idéal pour la voix des personnages et le ton, DeepL est rapide et net pour la narration, et Google Translate gratuit convient pour les courtes chaînes de menu et les choix. Constituez le glossaire de votre distribution et de vos termes récurrents en amont pour que les noms s'affichent à l'identique dans tout le jeu — voir Glossaire 101. Une fois terminé, une passe facultative avec l'affineur IA relit chaque ligne en contexte et resserre les tournures rigides et littérales que la traduction automatique a tendance à laisser.
Étape 4 : Exporter une copie prête à lancer
Cliquez sur Exporter. RuneTranslate écrit une copie traduite du jeu avec une archive de patch de surcharge root.pfs.NNN — une par .pfs source — qu'Artemis monte en dernier et lit de préférence aux originaux empaquetés. (Les scripts traduits sont aussi déposés en fichiers libres, extra inoffensif.) Lancez-le, et le jeu se joue dans votre langue cible.
Limitations connues
- Les scénarios `.asb` compilés sont lus — beaucoup de jeux Artemis livrent le scénario en AST binaire compilé (la forme qui commence par le marqueur
ASB) au lieu du.ast/.txtlisible, et plusieurs renomment l'extension (un jeu que nous avons testé utilise.iet). RuneTranslate le détecte par signature, pas par extension, et le traduit en place. Là où un jeu stocke les noms de locuteurs en graphiques ou comme noms de commandes plutôt que comme texte de script, ces noms proviennent du flux de texte dans les images, pas du script — si un nom reste en japonais, c'est généralement pour cela. - Le patch de surcharge est le chemin de chargement. L'archive
root.pfs.NNNtraduite est ce que le jeu lit réellement. Sur le rare titre qui monte les archives différemment, l'export peut nécessiter un ajustement — exactement le genre de comportement en conditions réelles que nous durcissons au fil des signalements. - Texte incrusté dans les images — un écran-titre ou un bouton de menu dessiné en bitmap — ce sont des pixels, pas du texte de script, donc l'extracteur de script ne peut pas l'atteindre. Pour cela, voir la traduction de texte dans les images.
- La variante exacte d'archive et de script peut différer d'une sortie à l'autre. Vérifiez toujours sur votre copie spécifique.
Un souci ? Dites-le-nous
Le lecteur .pfs, le chiffrement et les analyseurs .ast / .txt / .asb sont construits et testés unitairement, mais Artemis a des années de variations propres à chaque studio. Si un jeu ne détecte pas, n'ouvre pas les archives, n'extrait rien, ou exporte quelque chose qu'il ne charge pas, signalez-le sur notre Discord — le nom du jeu et sa manière d'être empaqueté (quelle variante .pfs, .ast contre .txt contre .asb) est exactement ce qui nous aide à le durcir le plus vite possible.
Téléchargez RuneTranslate, pointez-le vers ce roman visuel Artemis que vous vouliez lire, et essayez. Pour voir comment nous gérons un autre moteur de roman visuel basé sur les archives, lisez ensuite le guide Kirikiri.
Prêt à essayer RuneTranslate ?
L'offre gratuite débloque tous les moteurs et tous les fournisseurs de traduction. Supporter (3 $/mois) débloque la vitesse maximale.
Télécharger pour Windows
