Engine suportado · NScripter / ONScripter
O NScripter (de Naoki Takahashi) é o motor Windows de código fechado no qual uma enorme fatia das visual novels japonesas doujin e comerciais foi criada; o ONScripter é o runtime multiplataforma de código aberto (GPL) — Linux, macOS, Android, ONScripter-EN, Ponscripter — no qual os tradutores amadores de fato distribuem suas builds traduzidas. O RuneTranslate cobre ambos. Ele lê o script solto do jogo — um nscript.dat ou pscript.dat em que cada byte é cifrado por XOR contra 0x84, ou um 0.utf / 0.txt em texto puro — decodifica os diálogos em Shift-JIS / CP932 (ou UTF-8), lista cada linha traduzível e, na exportação, o recodifica e reofusca (XOR 0x84) quando o .dat original o usava, escrevendo um script solto que o motor carrega por cima de qualquer arquivo. Ele aplica automaticamente o marcador de texto de um byte para que uma linha traduzida em português não seja mal interpretada como um comando (a clássica armadilha do NScripter), e traduz o texto no idioma de origem (japonês por padrão) pintado em telas de título, menus e botões via OCR de texto em imagem. A maioria dos jogos distribui o script solto (o que é totalmente suportado); um script empacotado apenas dentro de um arquivo .nsa / .sar ainda não é lido, e a arte de imagem comprimida em SPB ainda está sendo aprimorada. Verifique em um jogo real antes de redistribuir.
As visual novels se apoiam em um elenco fixo e em terminologia recorrente ao longo de milhares de linhas, e a tradução automática vai escrever o nome de uma heroína de três formas diferentes em três capítulos. Coloque no glossário seus personagens, nomes de lugares e termos recorrentes logo de início, para que cada linha de diálogo e cada menu os renderize de forma idêntica. Glossário 101 →
Aponte o RuneTranslate para o diretório do jogo — a pasta com o .exe do jogo (ou um binário ONScripter), o script (nscript.dat, pscript.dat ou um 0.utf / 0.utf.txt / 0.txt em texto puro) e os arquivos .nsa / .sar. A detecção se baseia nesses marcadores de script — um 0.txt sozinho ou um único .nsa por conta própria não bastam, é preciso um sinal NScripter corroborante (a fonte do motor, um binário ONScripter ou um arquivo de script real). Sua pasta original nunca é modificada.
O RuneTranslate reverte o XOR do nscript.dat / pscript.dat contra 0x84 (ou lê um 0.utf / 0.txt em texto puro diretamente), decodifica o texto em Shift-JIS / CP932 (ou UTF-8) e lista cada linha traduzível no editor, agrupada por arquivo. A marcação do motor e os tokens de comando são mascarados atrás de placeholders numéricos para que o provedor nunca os estrague.
Esses jogos têm muitos diálogos e são sensíveis ao tom, então um LLM (OpenAI GPT-4o / Anthropic Claude) ou o DeepL geralmente lê melhor; o Google Translate gratuito ou um modelo local (Ollama / LM Studio) cobrem strings curtas de menu, e você pode apontar o provedor compatível com OpenAI para o OpenRouter ou o NanoGPT. Uma segunda passagem opcional do refinador por IA melhora o fraseado literal.
Boa parte da interface do NScripter é arte pré-renderizada, então o japonês nas telas de título e botões são pixels, não strings. Delimite cada trecho de texto em uma imagem, reconheça-o, traduza-o e, na exportação, a imagem traduzida é escrita solta na exportação para que o motor a carregue por cima do arquivo .nsa.
Na exportação, o RuneTranslate copia o jogo e escreve o script traduzido de volta como um arquivo solto — recodificado para Shift-JIS / CP932 e reofuscado com XOR 0x84 se o .dat original o usava, com o marcador de texto de um byte aplicado — mais quaisquer imagens traduzidas ao lado. Rode a cópia exportada no NScripter ou no ONScripter e ela joga no seu idioma.