Comment traduire un jeu TyranoBuilder / TyranoScript en anglais
Traduisez les romans visuels TyranoBuilder / TyranoScript avec RuneTranslate — en extrayant les scripts data/scenario/*.ks, en masquant les balises KAG, en traduisant les noms d'affichage des personnages, et en exportant une version jouable HTML5 ou Electron.
TyranoBuilder et le moteur TyranoScript sous-jacent animent un vaste catalogue de romans visuels japonais indépendants — l'alternative en technologies web (HTML5 / JavaScript) à Kirikiri et Ren'Py, livrée soit en dossiers HTML5 autonomes soit en exécutables enveloppés dans Electron. Ses scénarios utilisent la même syntaxe KAG .ks que Kirikiri, donc le texte est facile à atteindre une fois que vous savez où il vit. Ce guide parcourt la traduction d'un jeu TyranoBuilder de bout en bout avec RuneTranslate, y compris la partie que la plupart des outils ratent : les noms d'affichage des personnages.
Ce qu'il vous faut
- RuneTranslate pour Windows — gratuit, chaque moteur et fournisseur débloqué.
- Un jeu TyranoBuilder : un dossier HTML5 autonome (répertoires
data/ettyrano/libres) ou un build Electron (unresources/app.asarcontenanttyrano/tyrano.jsetdata/scenario/*.ks). RuneTranslate détecte les deux. - Une langue cible — anglais, espagnol, français, allemand, chinois, et plus de 30 autres.
- Un fournisseur. Les romans visuels sont riches en dialogues, donc un LLM (OpenAI / Anthropic) ou DeepL offre la meilleure lecture ; Google Translate gratuit fonctionne d'emblée.
Étape 1 : Ouvrir le dossier du jeu
Lancez RuneTranslate, cliquez sur Nouveau projet, et pointez-le vers le répertoire du jeu (ou le dossier contenant le .exe pour les builds Electron). La détection reconnaît TyranoBuilder à son runtime tyrano/ plus les scripts data/scenario/ ; pour les builds Electron il lit directement l'app.asar, donc vous ne déballez jamais rien. Votre jeu d'origine n'est jamais modifié.
Étape 2 : Comment les chaînes sont extraites
RuneTranslate extrait le texte traduisible de partout où TyranoBuilder le stocke :
- Scripts de scénario — chaque fichier
data/scenario/**/*.ks, y compris_preview.kset les miroirssystem/_*.kssur lesquels les builds chiffrés s'appuient. - Interface et config —
tyrano/lang.jsetdata/system/Config.tjs. - Noms d'affichage des personnages — les libellés de locuteur affichés au-dessus des dialogues (section suivante).
Les balises KAG en ligne — sauts de ligne [r], attentes de clic [p], sauts de page [改ページ], [font color=...], et les balises nommées en japonais — sont masquées derrière des espaces réservés numériques [[U#]] avant que quoi que ce soit n'atteigne le fournisseur, puis restaurées à l'export, pour que le formatage survive intact. Les fichiers .ks binaires ou chiffrés sont détectés via un reniflage UTF-8 et jamais écrasés.
Étape 3 : Noms de personnages — la partie propre à Tyrano
Les scénarios adressent souvent un locuteur avec un raccourci en ligne comme [yuki] — un ID de personnage, pas du texte d'affichage. RuneTranslate ne réécrit jamais ces références (cela casserait la recherche de personnage du moteur et planterait la scène). À la place il traduit le nom d'affichage et injecte une entrée [chara_new name=... jname=...] propre dans data/system/chara_define.ks à l'export. Le nom affiché à l'écran est traduit ; l'ID que le script utilise reste intact.
Étape 4 : Traduire et relire
Choisissez un fournisseur et lancez. Un LLM (OpenAI / Anthropic) offre la meilleure lecture pour la voix des personnages ; DeepL est rapide et net pour la narration ; Google Translate gratuit couvre les menus. Constituez d'abord le glossaire de votre distribution et de vos termes récurrents pour que les noms s'affichent à l'identique sur chaque route — voir Glossaire 101. Chaque ligne atterrit dans l'éditeur à côté de sa source ; modifiez en ligne (enregistrement à la perte de focus ou par Ctrl+Entrée), utilisez rechercher & remplacer, ou lancez l'affineur IA facultatif pour une deuxième passe tenant compte du contexte. Le palier gratuit est modestement bridé sur la vitesse — environ la moitié du débit payant sur les fournisseurs d'IA — avec une qualité de sortie identique.
Étape 5 : Exporter une version jouable
Cliquez sur Exporter. Pour les jeux HTML5 autonomes, RuneTranslate écrit les scripts .ks traduits, lang.js, la config, et le chara_define.ks injecté dans une copie du jeu. Pour les builds Electron il réempaquette un app.asar modifié. Dans les deux cas vous obtenez une copie complète et jouable à l'emplacement de votre choix — lancez-la et elle se joue dans votre langue cible.
Limitations connues
- Les fichiers
.kschiffrés (détectés comme non-UTF-8) sont laissés intacts, donc les scénarios d'un build chiffré ne se traduisent pas. - Le texte dans les images (logos, interface dessinée à la main, légendes de CG) est hors du périmètre de la traduction automatique.
- Les plugins personnalisés qui construisent le dialogue à l'exécution peuvent nécessiter une rapide correction manuelle dans l'éditeur.
Pourquoi c'est plus facile qu'avant
La route manuelle impliquait de déballer l'app.asar, de trouver chaque fichier .ks (y compris les miroirs système faciles à rater), de traduire autour des balises KAG à la main, de comprendre l'injection des noms de personnages, puis de réempaqueter l'asar sans le corrompre. RuneTranslate replie toute la chaîne en quelques clics, avec l'éditeur ouvert pour que vous contrôliez la formulation.
Voir la page moteur TyranoBuilder pour la liste complète des fonctionnalités, lisez le guide Kirikiri pour le moteur KAG apparenté, ou téléchargez RuneTranslate et essayez-le sur un vrai jeu.
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
