Proyecto de la comunidad · no oficial

Localiza Eorzea

Ayuda a tu comunidad a traducir Final Fantasy XIV.
Traduces una línea, un check la valida y el juego la muestra unos minutos después.

Cómo funciona

Cinco pasos llevan una frase desde el juego hasta el juego, ya traducida. Intervienen dos repositorios, un pull request y un plugin. Ningún fichero del juego se modifica.

1 AHLDSKYF I'm the hired captain of the Orion. DefaultTalk#590415.20 TEXTO EN FFXIV cada frase de FFXIV tiene un identificador 2 DefaultTalk#590415.20 en "I'm the hired captain of the Orion." flat/DefaultTalk.json CORPUS ffxiv-corpus-en enriquecido con otros idiomas, hablante y glosario 3 DefaultTalk#590415.20 target "" target "Soy el capitán del Orion." TU LANGUAGE PACK ffxiv-language-pack-es-es misma clave: tú rellenas target 4 VALIDATE REVIEW auto-merge → release PULL REQUEST validación automática y revisión humana (opcional) 5 AHLDSKYF Soy el capitán del Orion. GUBAL LIBRARY TEXTO EN FFXIV Gubal Library Cada merge en main publica una release que aparece en unos minutos en el juego.
Vía completa

Con un clon y un editor

El inglés está en un repositorio y tu idioma en otro. Los dos tienen los mismos ficheros y las mismas líneas. Con los dos abiertos en un editor, traduces con el francés y el japonés a la vista.

1

Abre los dos repositorios

Abre ffxiv-corpus-en y ffxiv-language-pack-es-es en Visual Studio Code o en otro editor. Los dos tienen la misma estructura en corpus/: un fichero por conversación y un fichero por hoja de interfaz.

Visual Studio Code
EXPLORER
▾ ffxiv-corpus-en
▾ corpus
▾ quest
▾ 041
AktKba101_04102.json
▾ ffxiv-language-pack-es-es
▾ corpus
▾ quest
▾ 041
AktKba101_04102.json
ffxiv-language-pack-es-es ›corpus / quest / 041 / AktKba101_04102.json
{
  "conversation": "quest/041/AktKba101_04102",
  "gameVersion": "2026.08.11.0000.0000",
  "entries": [
    { "gameKey": "quest/041/AktKba101_04102#TEXT_AKTKBA101_04102_SEQ_00", "hash": "6100EBD3346502DA", "target": "" },
    { "gameKey": "quest/041/AktKba101_04102#TEXT_AKTKBA101_04102_SEQ_01", "hash": "A91C0F3E6D2B7C10", "target": "" },
    …
  • Haz un fork del repositorio del idioma en GitHub y clona el fork. Así puedes subir tu rama.
  • ffxiv-corpus-en es de solo lectura. Clónalo o consúltalo en GitHub. No se edita.
2

Busca el mismo fichero en los dos

La ruta del fichero es la misma en los dos repositorios, y cada gameKey también. El fichero inglés tiene la línea en inglés, francés y japonés. El tuyo tiene la misma clave, un hash y un target vacío.

Visual Studio Code
ffxiv-corpus-en ›corpus / quest / 041 / AktKba101_04102.json
{
  "gameKey": "quest/041/AktKba101_04102#TEXT_AKTKBA101_04102_SEQ_02",
  "en": "The effort to find the blasphemy is being led by none other than the Elder Seedseer herself, Kan-E-Senna.",
  "macro": "The effort to find the blasphemy is being led by none other than the Elder Seedseer herself, Kan<-->E<-->Senna.",
  "fr": "Les recherches du blasphème sont menées par la Grande Prophétesse en personne, Kan-E-Senna.",
  "ja": "ブラスフェミーの捜索は、カヌ・エ・センナ様が自ら指揮を執っている。",
  "hash": "3C7D2A9E5B1F8E04"
}
ffxiv-language-pack-es-es ›corpus / quest / 041 / AktKba101_04102.json
{
  "gameKey": "quest/041/AktKba101_04102#TEXT_AKTKBA101_04102_SEQ_02",
  "hash": "3C7D2A9E5B1F8E04",
  "target": ""
}
  • Divide el editor: el inglés a un lado y tu fichero al otro.
  • Si dudas, busca por gameKey. Es el dato que los dos ficheros comparten.
3

Traduce

Escribe la traducción en target. Parte del inglés, del francés o del japonés, el que entiendas mejor. El texto entre ángulos es un macro que el juego rellena al mostrar la línea: el nombre del jugador, un salto de línea, una variante por género. Copia los macros tal cual.

Visual Studio Code
ffxiv-language-pack-es-es ›corpus / quest / 041 / AktKba101_04102.json
{
  "gameKey": "quest/041/AktKba101_04102#TEXT_AKTKBA101_04102_SEQ_02",
  "hash": "3C7D2A9E5B1F8E04",
  "target": "La búsqueda de la blasfemia la dirige nada menos que la Gran Vidente en persona, Kan<-->E<-->Senna."
}
  • Guarda el fichero sin cambiar el formato: UTF-8 sin BOM y la misma sangría. Un editor que entiende JSON lo hace solo.
  • Una conversación es un fichero. Tradúcela entera para que las voces sean coherentes.
4

Commit, push, pull request

Crea una rama en tu fork. Haz un commit con un mensaje que diga qué has traducido. Sube la rama y abre un pull request contra el repositorio del idioma. Puedes hacerlo desde la terminal o desde el panel de git del editor.

Terminal
$ git checkout -b ahldskyf
$ git commit -am "Ahldskyf, capitano dell'Orion"
$ git push -u origin ahldskyf
$ gh pr create --fill
  • Abre un pull request por tanda de líneas, no por línea. Las notas de la release listan sus commits.
  • A partir de aquí, el proceso es igual que en el navegador: el check, el merge y la release.

Lo que no se toca

Cuatro reglas, válidas en las dos vías. El check aplica las tres primeras. La cuarta hace buena la traducción.

Después del pull request

No interviene nadie. El check se ejecuta, el merge se hace, la release se construye y el plugin la ofrece a cada jugador al arrancar.

ffxiv-language-pack-es-es· Pull request → Release
validate comprueba cada fila cambiada: solo cambió target, el JSON es válido, los macros están en su sitio y no hay marcadoresvalidate
Si el idioma tiene revisor, el merge espera su aprobación. Si no lo tiene, no esperareview
Fusionado en main
Release construida y publicada. Tarda dos o tres minutosrelease
Gubal Library ofrece la versión nueva al arrancar y muestra tu líneaGubal Library
El Códice Interminable en español, con la entrada de Alphinaud
El Códice InterminableEl pack español traduce las entradas del Códice sobre personajes, lugares y conceptos.
Diálogo de misión en la ventana de conversación del juego, en español
Lo que lee el jugadorLa ventana de conversación con el pack en español. El juego dibuja tu texto con su letra, sus cursivas y sus colores.

Los idiomas

Un repositorio por idioma. El porcentaje traducido se lee de cada repositorio al cargar la página.

IdiomaRepositorioTraducido¿Una línea mal?
Español (España)ffxiv-language-pack-es-esissues
Italianoffxiv-language-pack-itissues
Português (Brasil)ffxiv-language-pack-pt-brissues
Polskiffxiv-language-pack-plissues

¿Otro idioma? Pregunta en GitHub Discussions.