Bueno, bueno, el dia de hoy le traigo un tutorial sobre como portar el sistema de tiles de Ruby/Zafiro a Fire Red.
¿Y que es ese sistema de tiles RZ?
Pues como sabrás los tilesets primarios y secundarios de RZ tienen diferentes tamaños respecto a los de FR, más especificamente asi:
Tilesets de FR
Tileset primario: imágen DIB de 128x320 pixeles
Tileset secundario: Imágen DIB de 128x192 pixeles
Tileset primario: 640 bloques de16x16
Tileset secundario: cualquier cantidad entre 1-384 bloques de 16x16
Tileset primario : 640 tiles
Tileset secundario: 320 tiles
Ahora los de RZ
Tileset primario: imágen DIB de 128x256 pixeles
Tileset secundario: Imágen DIB de 128x256 pixeles
Tileset primario: 512 bloques 16x16
Tileset secundario: cualquier cantidad entre 1-512 bloques de 16x16 pixeles
Tileset primario : 512 tiles
Tileset secundario: 512 tiles
Ahora haz tus cuentas, verás que hay más espacio en RZ, la cuenta habla por si sola
FR: 640+320=960 tiles por mapa
RZ: 512+512=1024 tiles por mapa
Esto te puede ser útil si eres de los que les gusta tener más variedad de tiles en un mapa.
Ahora a portarlo, primero abre tu rom con HxD y vete a las siguientes direcciones y cambia su contenido por el especificado:
1. cambia 080590D4 a FF FF F8 00
2. cambia 0805A9B0 a FF FF FE 00
3. cambia 080590A4, 0809B808, y 0805A97C a 01 FF
4. cambia 08059A56, 08059A70, 08059A84, 08059ABA, 0807015C, 08059A6C,
08059A80, y 08059AC8 a 02 00.
Con eso hemos hecho unas modificaciones a la rutina Asm original de carga de tiles, pero aún no hemos modificado la rutina que carga los tilesets en la VRAM, para ello vamos a modificar los siguientes parámetros:
cambia 08059A58 a 80
cambia 08059A6C a 80 y 08059A6E a 89
cambia 08059A70 a 80
cambia 08059A80 a 80 y 08059A82 a 89
cambia 08059A84 a 80
cambia 08059ABA a 80
cambia 08059AC8 a 80 y 08059ACA a 89
cambia 0807015C a 80
Con eso ya has modificado la rutina de carga de tiles en la VRAM haciendola idéntica a la de RZ, pero aún no acabamos, puesto que Amap aún sigue cargando el sistema de FR, para que se adapte a nuestro sistema debemos abrir el advancemap.ini (dentro de tu carpeta de Amap) y buscar en el ini "[Sprache version=BPR]" luego buscamos las siguientes lineas y modificaremos su contenido:
Tilesethoehe=40 - lo cambiamos a 32
Teil1Bloecke=$280 - lo cambiamos a $200
guardamos, y, ¡voila! al abrir tu Rom en Amap verás que ahora tus mapas tienen un tamaño de tileset diferente, ahora tienes un tileset primario más pequeño, pero el tileset secundario es más grande.
Aclaraciones:
- Usar la paleta 12 es igual de segura que cualquier otra, usala sin pena
- Algunos tilesets tendrán bloques corruptos, asi que deberás rehacerlos
- Por ende, deberás remapear ciertas partes de tus mapas (solo los bloques corruptos, no el mapa entero)
- Tanto Amap 1.92 y 1.95 pueden ser usados
- No podrás abrir otros roms de FR con el amap que le modificaste el .ini
- Puedes importar sin pena cualquier tileset original de Ruby a FireRed sin esfuerzo alguno
Espero les haya servido
Créditos a NintendoBoyDX por la investigación original.