Tutorial: Modificar Paletas de 16 Colores

 

Hay varios métodos para modificar las paletas de colores de los gráficos de cualquier juego y trataré de explicarlas todas, siendo cada una más práctica/rápida según el número de colores a modificar.

Para el Tutorial escogí el juego de Sonic Advance, así que convertiremos a Sonic en Super Sonic.

Necesitaremos:

·         Editor Hexadecimal

·         mGBA

·         Advanced Palette Editor

·         Programa de edición gráfica

·         ROM del juego

Buscando la paleta a modificar

Iniciaremos el juego en nuestro emulador, y una vez estemos en la pantalla de nivel, pausaremos el juego (Ctrl+P) e iremos a Herramientas > Ver Sprites… Una vez allí iremos desplazando con la flecha superior en el apartado “Dirección” hasta que el sprite de Sonic aparezca. Una vez encontrado nos fijaremos en su número de paleta, siendo en este caso la nº0 (primera de la lista de sprites).


Teniendo la paleta, ahora nos dirigiremos a Herrameintas > Ver Paleta… Y pinchamos sobre el primer color de nuestra paleta, siendo verde en mi caso. Nos fijamos que en “Índice en paleta” nos aparece “256”. Esto es el número de color en la memoria destinada a las paletas de colores. Lo necesitaremos para el siguiente paso.

Antes de ir al siguiente paso, exportaremos su sprite clicando en “Esportar”( Sí, está mal escrito). Nos hará falta después.

Ahora iremos a Herramientas > Ver memoria… Aquí seleccionaremos en el desplegable superior izquierdo la memoria de “Palette RAM”, la cual empieza en 05000000. Ahora, para encontrar nuestra paleta debemos convertir el Índice en paleta (256) a hexadecimal, siendo 100. Posteriormente multiplicamos nuestra cifra por 2, ya que cada color ocupa dos Bytes en memoria, y obtendremos 200, cifra que sumaremos a 05000000, que es el inicio de memoria de las paletas. Cabe decir que con VisualBoyAdvance este proceso no es necesario, pues nos da directamente la dirección de la paleta. En contrapartida, una vez la hallemos, no podremos copiarla en el portapapeles para después pegarla en el editor hexadecimal y buscarla en la ROM, cosa que sí permite hacer mGBA, por lo que una vez aclarado esto, cada cual use el que crea conveniente, pero para trabajar con sprites y paletas, mGBA es muy superior a VBA por varios motivos que explicaré en otro tutorial.

Yendo ya por fin a la dirección h05000200 obtendremos nuestra paleta, la cual copiaremos en el portapapeles. Debemos copiar dos filas de la memoria, lo que equivale a 32 Bytes, es decir, 16 colores.

Es hora de cargar nuestra ROM en un editor hexadecimal y buscar el código de colores que acabamos de copiar.

En mi caso, que uso HxD, me dirijo a Buscar > Valores hexadecimales con la casilla “Todo” marcada en el apartado “Dirección”.

Pulsamos “Intro” y automáticamente el programa nos lleva a la dirección
“00 11 E5 74”. Debe tenerse en cuenta que la misma paleta puede aparecer repetidas veces en la ROM, ya que puede ser que otros personajes u otros gráficos del personaje en cuestión (Portraits, mugshoots, etc.) utilicen una paleta con los mismos colores. Por tal cuestión se ha de repetir la búsqueda y ver cuántos resultados obtenemos. (HxD puede indicar cuántas coincidencias existen en la ROM tras realizar la primera búsqueda). Por lo que si obtenemos más de un resultado, no queda más remedio que modificar cada paleta una a una para saber cuál corresponde a los gráficos que pretendemos modificar.

Modificando los colores

Sabiendo el Offset en el que se encuentra nuestra paleta, es hora de abrir APE (Advanced Palette Editor) y cargar la ROM.

Por defecto, en el apartado “Cargar la Paleta” viene marcada la casilla “desde una dirección”, así que nos situamos en la casilla de “Dirección (HEX)” y tras escribir nuestro Offset pulsamos en “Cargar”. Las flechas a cada lado del recuadro sirven para desplazarte por distintas paletas en el caso de que estén todas juntas o por una misma paleta en el caso de que esta sea de 256 colores.

Llegados a este punto podemos optar por dos formas distintas de modificar la paleta. Como en nuestro caso tan solo modificaremos cuatro colores, lo haremos de una forma más directa, dejando para un segundo ejemplo la otra opción.

Cargada la paleta, pinchamos sobre el icono de la paleta que no contiene ningún símbolo, el cual es “Trasladar para editarla”, y veremos cómo se carga la misma paleta en el apartado “Paleta Cambiada”.


Para modificar los colores de Sonic, solo debemos clicar en el código de color GBA de los colores que vayamos a cambiar y escribir el código del nuevo color sustituto.

Para ello, primeros abriremos con alguna aplicación que permita la edición de gráficos el sprite de Sonic que exportamos previamente y lo recolorearemos con los amarillos que creamos más adecuados para simular a Super Sonic. De esta forma obtendremos el código Hex de los nuevos colores mediante el cuentagotas o ajustes de color, depende de qué programa uséis.


Para saber cuál es el código de color GBA de los nuevos colores, Ape cuenta con una un conversor RGB/GBA en la pestaña “Herramientas”, con la que obtendremos dichos códigos.

Los nuevos colores usados y sus códigos GBA:


Una vez obtenidos los códigos, procedemos a sustituirlos por los originales en el apartado “Paleta cambiada”.



Importar una paleta creada

El otro método que mencioné anteriormente, consta de cargar en APE una paleta que hayamos creado previamente. Para ello, debemos utilizar el sprite de Sonic que exportamos. Es muy importante que haya sido exportado con mGBA ya que nos ofrece las ventajas de que el archivo .PNG ya se encuentra indexado y con la información de los colores en el orden correcto.

Así que abrimos de nuevo nuestro sprite original en nuestro programa de edición gráfica, Photoshop en mi caso, y vamos a cambiarle todos los colores a Sonic por otros que se nos antojen. Al abrir el sprite el fondo aparecerá transparente, no os preocupéis, pues la información del color original no se ha perdido.

Según el programa que uséis el cambio de color podrá realizarse de distintas formas, por lo que es algo que no explicaré al ser un proceso relativo y básico.

El resultado es el siguiente:

Guardamos nuestra paleta en alguno de los siguientes formatos: .gpl, .act, .pal, .tlp.

Ahora volvemos a APE y en el apartado “Paleta modificada”, clicamos en Importar (Paleta con flecha azul orientada a la izquierda) y seleccionamos nuestra paleta.

Para terminar, clicamos en “Guardar” y comprobamos que todo esté correcto.


Otra forma - Tile Molester

Otra forma de modificar los colores de paletas es usando Tile Molestrer como se muestra en este tutorial.