Engine suportado · Ren'Py
O Ren'Py é o motor de visual novel dominante baseado em Python, usado para tudo, de novelas cinéticas indie a longas VNs adultas. O RuneTranslate o traduz em três modos: projetos com código-fonte (game/**/*.rpy), lançamentos somente compilados (.rpyc, descompilados via o sidecar embutido unrpyc) e lançamentos somente arquivados (.rpa, descompactados via o sidecar embutido rpatool com detecção automática de chave de ofuscação). Ele extrai linhas de say / narração / menu mais strings de interface _() / __() / _p(). Na exportação, os diálogos e menus são aplicados em tempo de execução: um .rpy gerado faz a correspondência de conteúdo de cada linha de origem (config.say_menu_text_filter) com um mapa game/rt_translations.json e força o idioma do jogo para a sua tradução — deliberadamente não os blocos tl/ nativos do Ren'Py baseados em id, cujos ids nem sempre podem ser reproduzidos. Apenas as strings de interface _() são escritas como um bloco real game/tl/translated/translation.rpy. Para idiomas de destino não-latinos, o RuneTranslate inclui uma fonte capaz de CJK / tailandês / árabe e roteia as fontes do jogo por config.font_replacement_map para que o texto traduzido nunca apareça como quadradinhos. Nada é reempacotado — os arquivos .rpy extras e o JSON vão para game/ ao lado do original. Combine com o Glossário do tier Supporter para travar nomes de personagens e termos marcantes em VNs longas.
As VNs Ren'Py vivem e morrem pela voz dos personagens — e a heroína ser chamada de 'Alice' / 'Aris' / 'Arisu' em três cenas vai quebrar a imersão do leitor rapidamente. Trave cada nome de personagem, as variantes de apelido do protagonista, nomes de lugares e qualquer terminologia inventada do mundo com o glossário. A máscara é agnóstica ao provedor, então quer você esteja no DeepL para a passagem econômica ou no Claude para os capítulos principais cheios de diálogos, sua terminologia permanece idêntica. Glossário 101 →
Aponte o RuneTranslate para a pasta que contém o executável do jogo. A detecção de motor classifica automaticamente o projeto como código-fonte (.rpy presente), compilado (somente .rpyc) ou arquivado (somente .rpa). Os sidecars embutidos unrpyc e rpatool rodam automaticamente — sem necessidade de instalar Python.
Escolha o idioma de destino (um dos mais de 30 suportados) e o provedor. O Anthropic Claude e o OpenAI GPT-4o são os mais fortes em diálogos Ren'Py porque preservam melhor o tom, o registro e as onomatopeias do que a MT estatística. O DeepL é uma segunda opção sólida para longas narrações descritivas.
O RuneTranslate extrai cada linha traduzível (diálogos, texto de escolhas, rótulos de tela, strings de interface) e as agrupa em lotes. Tags específicas do Ren'Py ([[player_name]], {color=#fff}…{/color}, {b}…{/b}) são mascaradas durante a tradução para que o LLM as trate como placeholders opacos, e então restauradas literalmente.
O RuneTranslate coloca alguns arquivos pequenos em game/: um mapa rt_translations.json e um .rpy gerado que faz a correspondência de conteúdo de cada linha de origem em tempo de execução (config.say_menu_text_filter) e força o idioma para a sua tradução, de modo que os diálogos e menus são exibidos traduzidos sem reempacotar o .rpa. As strings de interface _() vão para game/tl/translated/translation.rpy, e uma fonte CJK / não-latina é incluída quando o destino precisa. Reexecutar o tradutor preserva as linhas que você editou à mão.