Traductor local para guías de RestedXP / RXPGuides. Convierte guías .lua de inglés a varios idiomas manteniendo la sintaxis interna que RestedXP necesita para funcionar dentro de World of Warcraft Classic.
Foco principal: traducir guías RestedXP.
RestedXP-Traslation V5 toma archivos de guía RestedXP y genera versiones traducidas sin romper comandos del addon.
Traduce:
- Texto visible para el jugador: tips, instrucciones, notas, pasos.
- Nombres de NPCs, objetos, items, misiones y spells cuando existe ID o dato fiable.
- Interfaz/localización del addon RXPGuides usando
locale/esES.luay strings extraídos. - 9 locales configurados:
esES,esMX,ptBR,deDE,frFR,ruRU,koKR,zhCN,zhTW.
Protege / no traduce:
- Comandos internos:
.goto,.zoneskip,.subzoneskip,.mob,.target,.unitscan, etc. - Condicionales RestedXP:
<<, clases, facciones, razas. - IDs:
NPC::123,QuestID, coordenadas, tags. - Códigos de color WoW:
|c...|r. - Zonas dentro de
.goto,.zoneskip,.subzoneskip, porque RestedXP las resuelve por nombre inglés o ID.
Pipeline principal:
Guías originales .lua
↓
translate_guides.py
↓
LocalDatabase carga databases locales
↓
Traducción segura línea por línea
↓
validate_output.py revisa sintaxis crítica
↓
Guías traducidas listas para copiar al addon
build_database.py construye / actualiza bases locales desde:
- QuestieDB
- RXPGuides locale files
- CMaNGOS / TBC DB
- Overrides manuales
Archivos generados principales:
database/questiedb_es.json # DB unificada principal
database/merged_esES.json # DB combinada por locale
database/npcnames_esES.json # NPCnames de RXPGuides
database/questie_npcs_esES.json # Fallback Questie
database/zones_esES.json # Zonas
database/spells_es.json # Spells
database/addon_phrases.json # Frases interfaz addon
database/manual_overrides.json # Correcciones manuales
translate_guides.py lee cada .lua, detecta comandos RestedXP y traduce solo la parte segura.
Reglas importantes:
| Comando | Traduce | No traduce |
|---|---|---|
.goto Zone,x,y |
Texto después de >> |
Zona + coordenadas |
.zoneskip Zone |
Texto después de >> |
Zona |
.subzoneskip Zone |
Texto después de >> |
Zona |
.mob NPC::ID |
Nombre visible si DB fiable | ID |
.target NPC::ID |
Nombre visible si DB fiable | ID |
.unitscan NPC::ID |
Nombre visible si DB fiable | ID |
#completewith, #label, #requires |
nada lógico | tokens internos |
>> texto |
texto visible | comandos antes de >> |
validate_output.py revisa que la salida no rompa RestedXP:
- Balance de colores
|c/|r. - Comandos críticos preservados.
- IDs preservados.
- Reporte de entidades no resueltas.
app.py + RXP_Guide_Translator_ES.html crean una GUI local con PyQt5/QWebEngineView:
- Selección de carpeta input/output.
- Selección de idioma.
- Traducción de guías.
- Traducción de interfaz RXPGuides.
- Logs y progreso.
app.py # GUI PyQt5
translate_guides.py # Motor principal de traducción
build_database.py # Construye DB local
validate_output.py # Valida salida traducida
translate_addon_interface.py # Traduce interfaz RXPGuides
locales_config.py # Idiomas soportados
RXP_Guide_Translator_ES.html # UI HTML embebida
requirements.txt # Dependencias Python
build_exe.bat # Build Windows con PyInstaller
database/ # DB local actual
docs/DATABASE_SOURCES.md # Links oficiales de databases
rxpguides_locale/ # NPCnames/esES extraídos de RXPGuides
input/ # Coloca aquí guías originales
output/ # Salida traducida
Ve a:
https://github.com/eygelias/RestedXP-TraslationV5/releases
Descarga el ZIP del release si quieres la app compilada.
Si quieres código fuente:
git clone https://github.com/eygelias/RestedXP-TraslationV5.git
cd RestedXP-TraslationV5python -m pip install -r requirements.txtSi solo usas el .exe del release, no necesitas esto.
El repo ya trae una copia funcional de database/, pero si quieres reconstruirla desde fuentes frescas revisa:
docs/DATABASE_SOURCES.md
Descargas principales:
QuestieDB: https://github.com/Questie/QuestieDB/releases
RXPGuides: https://github.com/RestedXP/RXPGuides/releases
CMaNGOS: https://github.com/cmangos/tbc-db
TBC-DB: https://github.com/TBC-DB/Database
Wowhead: https://www.wowhead.com/tbc/es/npc=<ID>
Luego ejecuta:
python build_database.pyColoca tus archivos .lua originales de RestedXP en:
input/
Ejemplo:
input/The Burning Crusade.lua
No se recomienda publicar guías privadas/comerciales dentro del repo.
Modo GUI:
python app.pyModo consola:
python translate_guides.py # esES por defecto
python translate_guides.py esMX # español México
python translate_guides.py deDE # alemánEl script usa carpetas fijas junto al proyecto:
input/ -> guías originales
output/ -> guías traducidas
python validate_output.py outputRevisa reporte en cache/validation_report.json si existe.
Copia los .lua traducidos desde:
output/
a la carpeta correspondiente de RXPGuides en WoW:
C:\Program Files (x86)\World of Warcraft\_anniversary_\Interface\AddOns\RXPGuides\Guides\
Haz backup antes de reemplazar archivos.
python -m pip install -r requirements.txt
build_exe.batSalida esperada:
dist/RXP_Translator_V5/RXP_Translator_V5.exe
Ver documento completo:
docs/DATABASE_SOURCES.md
Prioridad recomendada para nombres de NPC:
manual/client verified > Wowhead TBC ES por ID > QuestieDB > RXPGuides NPCnames > CMaNGOS > dejar inglés y reportar
El código base del traductor queda abierto en este repo.
No se incluyen credenciales, tokens ni guías comerciales privadas. Las databases públicas se documentan con links para poder reconstruir el proyecto si se pierde el PC o se cambia de agente.
MIT. Ver LICENSE.
SEO Tags: $tags