Compilador

El compilador de Pokémon Essentials es el proceso que convierte los archivos de texto PBS (Pokémon Backup System) en archivos de datos binarios que el juego puede leer de forma eficiente. Es una parte fundamental del flujo de trabajo de desarrollo.

¿Qué hace el compilador?

El compilador lee todos los archivos de texto de la carpeta PBS/ y los convierte en archivos .dat en la carpeta Data/. Este proceso incluye:

¿Cuándo se compila?

La compilación ocurre automáticamente en los siguientes casos:

Importante: La compilación solo ocurre en modo debug. Cuando el juego se ejecuta como versión final (sin debug), no se compila y solo usa los archivos .dat existentes.

Errores de compilación

Si hay errores en los archivos PBS, el compilador mostrará un mensaje de error indicando:

Errores comunes y cómo solucionarlos:

Error Causa Solución
"Unknown move" Se referencia un movimiento que no existe en moves.txt Verificar que el identificador del movimiento esté definido correctamente
"Unknown species" Se referencia una especie que no existe en pokemon.txt Comprobar el identificador interno de la especie
"Unknown item" Se referencia un objeto que no existe en items.txt Verificar que el objeto esté definido en items.txt
"Expected a number" Se puso texto donde debería ir un número Revisar el formato del campo afectado
"Bad line syntax" La línea no sigue el formato esperado Comprobar que la línea tenga el formato clave = valor

Archivos de datos generados

El compilador genera los siguientes archivos en la carpeta Data/:

Archivo Origen (PBS) Contenido
species.datpokemon.txtDatos de todas las especies Pokémon
species_metrics.datpokemon_metrics.txtMétricas de sprites de Pokémon
moves.datmoves.txtDatos de todos los movimientos
items.datitems.txtDatos de todos los objetos
abilities.databilities.txtDatos de todas las habilidades
types.dattypes.txtDatos de los tipos y tabla de efectividad
trainers.dattrainers.txtDatos de los entrenadores
trainer_types.dattrainer_types.txtTipos de entrenador
encounters.datencounters.txtEncuentros salvajes por mapa
town_map.dattown_map.txtDatos del mapa regional
map_metadata.datmap_metadata.txtMetadatos de los mapas

Forzar recompilación

Si necesitas forzar una compilación completa (por ejemplo, después de actualizar Essentials o resolver un conflicto):

  1. Desde el menú de debug: Abre el menú de debug (tecla S) y busca la opción "Compilar datos" o "Compile data".
  2. Eliminando archivos .dat: Borra los archivos .dat de la carpeta Data/ y reinicia el juego en modo debug. El compilador regenerará todos los archivos.
  3. Modificando un PBS: Haz un cambio menor en cualquier archivo PBS (como añadir y borrar un espacio) para que el compilador detecte que ha sido modificado.
# También se puede forzar la compilación desde un script:
Compiler.main

Validaciones durante la compilación

El compilador realiza diversas validaciones para asegurar la integridad de los datos:

Consejo: Si encuentras un error de compilación difícil de localizar, revisa los cambios más recientes que hayas hecho en los archivos PBS. Es recomendable usar un sistema de control de versiones como Git para poder comparar cambios. Más info en Archivos PBS.