Registrarse

[Otros] FR |Editando Worldmap de la Pokédex & Áreas Captura

Inferno

Miembro insignia
Miembro insignia
INTRODUCCIÓN​

En está ocasión os traigo un tutorial dedicado especialmente a esas personas a las que no les gusta descuidar ningún detalle de su hack, a los más perfeccionistas, aunque sin duda puede darle un toque que no muchos se molesten en cambiar.

Este tutorial va a ser dividido en dos partes, ambas relacionadas por eso hago un solo tutorial.
La primera parte va a tratar de como cambiar el worldmap de la pokedex, sí, ese que aparece con la localización de cada Pokémon, como aquí no lo he encontrado me he decido a traéroslo.
La primera vez que lo vi fue en PokeCo, os dejo link: https://www.pokecommunity.com/showthread.php?t=209495
Créditos a Team Rocket's Raichu
La segunda parte y la que quizás menos gente supiese hacer, va a tratar de como cambiar de forma y posición las figuras que nos indican donde ciertos Pokémon son capturables.
No he encontrado en ningún sitio ningún tutorial especifico sobre esto, pero si que he encontrado una fuente, os la dejo por aquí: ROM Hacking Lessons - The Search For Cheats
Si no me equivoco el creador es Mastermind_X, créditos para él.


HERRAMIENTAS A USAR

1ª Parte
-Free Space Finder
-unLZ-GBA / NLZ-GBA / GBA Graphics Editor
-Character Maker Pro

2ª Parte
-HxD (O el editor hexadecimal de vuestro gusto)



PRIMERA PARTE​

En un principio iba a dejar la primera parte del tutorial explicado únicamente para NLZ-GBA, pero como sé que mucha gente también usa unLZ-GBA me he decido por partir en tuto en dos partes, (hacerlo en GBA Graphics Editor es casi identico a NLZ, por eso no quiero extenderme más).


PASOS A SEGUIR

Lo primero de nada, quiero que sepáis que el cambio del worldmap principal, el que veis en el objeto mapa, no influye en absoluto en el cambio del mapa que aparece en la pokédex, vamos que el cambio de uno no implica que se cambie el otro también.


1º PASO

Lo primero que vamos a hacer es localizar este worldmap. En una ROM limpia suele estar sobre el offset 0x443620, marcad la casilla 16 colores y la de "Gray scale".


2º PASO

Una vez localizado el siguiente paso será guardarlo en nuestro dispositivo y hacerlo en formato .png, para ello tenéis que darle a "save as bitmap".
Una vez lo tengáis guardado, lo que tenéis que hacer es abrirlo con el Character Maker Pro, cuando lo tengáis allí lo único que vais a hacer es guardar la paleta, esto lo podéis hacer fácilmente haciendo lo siguiente: "Paletas">"Guardar Paleta", al acabar ya podéis dejar este programa a un lado, por ahora. Lo siguiente será abrir la imagen con un editor gráfico: paint, photoshop... A partir de ese editor debéis crear vuestro worldmap, para ello yo veo dos opciones posibles:

Como el mapa debe tener unas medidas de 96x72 (en Fire Red el espacio restante se usa para los mapas de las islas) y debe usar las paletas con las que ha sido guardado, o bien podéis abrir el mapa guardado y editarlo a vuestro gusto a partir de ahí o bien, si tenéis ya un worldmap principal creado, adaptar su tamaño y hacer un recolor con las paletas de la imagen guardada con aterioridad.
Esta última opción, si ya tenéis vuestro mapa principal hecho, yo la veo como la más rápida.

Yo he hecho un ejemplo muy rápido:


Cuando lo tengáis, abrid de nuevo el Character Maker Pro y cargad vuesto nuevo mapa, si os dais cuenta este mapa a comparación del otro solo usa 5 colores en su paleta, pues bien, aquí viene la utilidad de haber guardado la paleta del viejo mapa, lo que vamos a hacer es sustituir está paleta por la anterior, para que así a la hora de probarlo en la ROM se vean bien los colores.
Para remplazar la paleta os tenéis que ir a "Paletas">"Cargar paleta", seleccionáis la paleta vieja y le dais a aceptar.

Al acabar guardáis la imagen y ya podéis cerrar el CMP, no lo volveremos a usar.


3º PASO


El último paso que nos falta es importarlo a la ROM, por tanto nos vamos de vuelta a NLZ-GBA y seleccionamos "Import a bitmap", cargamos nuestra imagen y nos salrá una ventana, lo primero será marcar la casilla "Repoint Pointers", pues en el siguiente paso vamos a buscar otra dirección en la ROM para esa imagen.


Podéis probar a darle a OK ya, pero si la imagen nueva es mayor que la anterior (que ocupa un mayor espacio) os saldrá una ventana diciéndoos precisamente eso, que está nueva imagen es mayor a la que había, por lo que ese offset no nos servirá, si no os sale nada saltad a lo último*, os podéis saltar el paso de usar FSF.
Lo que tenemos que hacer ahora es buscar una nueva dirección para esa imagen, por lo tanto abrimos el Free Space Finder, cargamos nuestra ROM y le damos a buscar para que nos encuentre una nuevo offset.

Ahora que ya lo tenemos volvemos al NLZ y pegamos ese offset obtenido del FSF donde teníamos el antiguo, le damos a OK y nos saldrá otra ventana. No alarmarse, todo esta yendo bien, lo que nos indica es que el puntero ha sido cambiando. *Y con esto ya habremos acabado, solo nos falta darle otra vez a "Write to ROM" y ya nos dirá que ha finalizado.


NOTA: Es normal que si vais hacia delante/atrás o viceversa no se vea vuestro nuevo mapa, que no os preocupe.

Os dejo aquí como me ha quedado a mi:​
1º PASO

Lo primero que vamos a hacer es localizar este worldmap. En una ROM limpia suele estar sobre la dirección 322, marcad la casilla 16 colores y la de "Use black/white".


2º PASO

Una vez localizado el mapa el siguiente paso será guardarlo en nuestro dispositivo y hacerlo en formato .png, para ello tenéis que darle simplemente a "save as" y guardarlo donde queráis.

Una vez lo tengáis guardado, lo que tenéis que hacer es abrirlo con el Character Maker Pro, lo único que vais a hacer aquí es guardar la paleta de la imagen, lo podéis hacer fácilmente yendo a "Paletas">"Guardar paleta", al acabar ya podéis dejar este programa a un lado, por ahora. Lo siguiente será abrir la imagen con un editor gráfico: paint, photoshop... A partir de ese editor debéis crear vuestro worldmap, para ello yo veo dos opciones posibles:

Como el mapa debe tener unas medidas de 96x72 (en Fire Red el espacio restante se usa para los mapas de las islas) y debe usar las paletas con las que ha sido guardado o bien podéis abrir el mapa guardado y editarlo a vuestro gusto a partir de ahí o bien, si tenéis ya un worldmap principal creado, adaptar su tamaño y hacer un recolor con las paletas de la imagen guardada con anterioridad.
Esta última opción, si ya tenéis vuestro mapa principal hecho, yo la veo como la más rápida.

Yo he hecho un ejemplo muy rápido:


Cuando lo tengáis, abrid de nuevo el Character Maker Pro y cargad vuestro nuevo mapa. Si os dais cuenta este mapa, a comparación del otro, solo usa 5 colores en su paleta, pues bien, aquí viene la utilidad de haber guardado la paleta del viejo mapa, lo que vamos a hacer es sustituir esta paleta por la anterior, para que así a la hora de probarlo en la ROM se vean bien los colores.
Para remplazar la paleta os tenéis que ir a "Paletas">"Cargar paleta", seleccionáis la paleta vieja y le dais a "Aceptar"

Al acabar guardáis la imagen y ya podéis cerrar el CMP, no lo volveremos a usar.


3º PASO


El último paso que nos falta es importarlo a la ROM, por tanto nos vamos de vuelta a unLZ-GBA y seleccionamos "Import", cargamos nuestra imagen y hacemos click en "Write to Rom" y marcaremos las siguientes casillas:


Podéis probar a darle a "OK" ya, pero si la imagen nueva es mayor que la anterior (que ocupe más espacio) os saldrá una ventana diciéndoos que esta nueva imagen es mayor a la que había, por lo que ese offset no nos servirá, si no os sale nada saltad a lo último*, os podéis saltar el paso de usar FSF.
Lo que tenemos que hacer ahora es buscar una nueva dirección para esa imagen, por lo tanto abrimos el Free Space Finder, cargamos nuestra ROM y le damos a buscar para que nos encuentre una nuevo offset.


Ahora que ya lo tenemos volvemos al unLZ y pegamos ese offset obtenido del FSF donde dice "Imagen Offset", dejando un 0 a la izquierda (lo que en mi caso sería 071A23C). Le damos a "OK" y nos saldrá otra ventana. No alarmarse, todo esta yendo bien, lo que nos indica es que el puntero ha sido cambiando. *Y ya estaría hecho, no tenéis que darle a nada más, lo tenéis insertado.

NOTA: Es normal que si vais hacia delante/atrás o viceversa no se vea vuestro nuevo mapa, que no os preocupe.

Os dejo aquí como me ha quedado a mi:

SEGUNDA PARTE​

Aquí viene la segunda parte de este tutorial, para hacerlo bien deberéis tener ya vuestro worldmap principal configurado en el Advance Map.

Como no tengo ningún mapa así a mano para insertar os diré lo básico de lo básico, más vale poco que nada supongo.


[ROJO] He elegido esta ciudad en concreto por una razón, porque tiene la cueva celeste, os explico, lo que veis con este color es el valor que se le asigna al mapa, pero en este caso tenemos dos, uno llamado "Bottom Layer" y otro "Top Layer", pues bien, el primero nos indica el valor que se le asigna únicamente a Ciudad Celeste en este caso y, el segundo, nos indica el valor que se le asigna a la Cueva Celeste, estos casos dónde haya dos valores de este tipo viene porque las áreas de aparición de Pokémon son independientes una de otra, por poner un ejemplo, si tuviesen el mismo valor, al mirar el área de aparición saldría como que se puede atrapar a ditto (Pokémon de la cueva) en la zona de la ciudad, cosa que, a menos que lo configuremos en "Pokémon salvajes", sería falsa. Estos valores os va a ir bien saber que están ahí para luego relacionar todo mejor.

[PÚRPURA] Como podréis ver nos sirve para seleccionar el nombre del mapa que estará colocado en ese lugar concreto.
Como en el caso anterior, tenemos dos lugares, y es exactamente igual que arriba, el de la izquierda para el lugar "principal" por así decirlo y, el segundo para el lugar "secundario".

[AZUL] Aquí tenemos las coordenadas del mapa, el uso que se le dan es que en estás posiciones será el lugar en el cual aparecerá la cabeza del protagonista indicado nuestra posición.

[VERDE] Sirve simplemente para ir alternando entre el mapa principal y los de las islas para así poderlos configurar también.

Por defecto los lugares dónde no hay configurado nada tiene el valor C5, podéis comprobarlos vosotros mismos. Las ciudades/rutas que no tenga un lugar "secundario" como en el ejemplo, tendrá en "top layer" ese valor.
Si queréis borrar un lugar que este configurado del mapa lo que tenéis que hacer es: Abrir la caja de cambio de nombre (púrpura), ir al fondo y marcar la opción "Empty/don't display", luego hacéis click en "Redraw" y ya estaría borrando.
Por el contrario para añadirlo solo tenéis que hacer lo contrario en el primer paso, tenéis que seleccionar una ruta/ciudad, configurar sus coordenadas si no están ya y darle a "Redraw".

Para lo de las posiciones de vuelo casi recomiendo más usar esta herramienta de Javi4315♪: https://whackahack.com/foro/t-27847/gba-flight-and-heal-position-editor-fhpe

En esta ocasión os enseñare a cambiar el área de aparición de los Pokémon y su forma, pues esta funciona totalmente a parte de que tengamos los dos worldmaps insertados ya.

Lo primero que necesitáis saber es que el número de áreas de aparición de Pokémon se guarda en una tabla, situada en la siguiente dirección de la ROM: $464148
Y que si queréis actualizar el número de estos lugares dónde se pueden capturar debéis ir al siguiente puntero: $13CA9C. Por defecto vendrá la cantidad de 37.

Bien, vamos a dirigirnos a la dirección de la tabla, por lo tanto abrimos con HxD nuestra ROM, presionamos CTRL+G y ponemos la dirección de la tabla.
Lo que podemos observar de aquí es la siguiente estructura:

[XX] [XX][YY] [YY]
Siendo [XX] [XX] el valor del mapa que podéis comprobar en el "world map editor".
Siendo [YY] [YY] el valor de captura asignado a ese mapa.


Poniendo un ejemplo, la primero que veréis será 58 00 01 00, pues esto lo que nos indica es que se trata de pueblo Paleta y que tiene asignado el valor 1 como valor de mapa de captura.

Código:
ROM: 08[COLOR="Black"]464148[/COLOR]* DCW [COLOR="Red"]0x58[/COLOR]; worldmap_value
ROM: 08[COLOR="black"]464148[/COLOR]* DCW [COLOR="Blue"]1[/COLOR]; catchmap_value
ROM: 0846414C DCW 0x59; worldmap_value
ROM: 0846414C DCW 2; catchmap_value
ROM: 08464150 DCW 0x5A; worldmap_value
ROM: 08464150 DCW 3; catchmap_value
ROM: 08464154 DCW 0x5B; worldmap_value
ROM: 08464154 DCW 4; catchmap_value
ROM: 08464158 DCW 0x5C; worldmap_value
ROM: 08464158 DCW 5; catchmap_value
ROM: 0846415C DCW 0x5D; worldmap_value
ROM: 0846415C DCW 6; catchmap_value
ROM: 08464160 DCW 0x5E; worldmap_value
ROM: 08464160 DCW 7; catchmap_value
ROM: 08464164 DCW 0x5F; worldmap_value
ROM: 08464164 DCW 8; catchmap_value
ROM: 08464168 DCW 0x60; worldmap_value
ROM: 08464168 DCW 9; catchmap_value
ROM: 0846416C DCW 0x61; worldmap_value
ROM: 0846416C DCW 0xA; catchmap_value
ROM: 08464170 DCW 0x62; worldmap_value
ROM: 08464170 DCW 0xB; catchmap_value
ROM: 08464174 DCW 0x63; worldmap_value
ROM: 08464174 DCW 0xF; catchmap_value
ROM: 08464178 DCW 0x64; worldmap_value
ROM: 08464178 DCW 0x15; catchmap_value
ROM: 0846417C DCW 0x65; worldmap_value
ROM: 0846417C DCW 0xC; catchmap_value
ROM: 08464180 DCW 0x66; worldmap_value
ROM: 08464180 DCW 0xD; catchmap_value
ROM: 08464184 DCW 0x67; worldmap_value
ROM: 08464184 DCW 0xE; catchmap_value
ROM: 08464188 DCW 0x68; worldmap_value
ROM: 08464188 DCW 0xF; catchmap_value
ROM: 0846418C DCW 0x69; worldmap_value
ROM: 0846418C DCW 0x10; catchmap_value
ROM: 08464190 DCW 0x6A; worldmap_value
ROM: 08464190 DCW 0x11; catchmap_value
ROM: 08464194 DCW 0x6B; worldmap_value
ROM: 08464194 DCW 0x12; catchmap_value
ROM: 08464198 DCW 0x6C; worldmap_value
ROM: 08464198 DCW 0x13; catchmap_value
ROM: 0846419C DCW 0x6D; worldmap_value
ROM: 0846419C DCW 0x14; catchmap_value
ROM: 084641A0 DCW 0x6E; worldmap_value
ROM: 084641A0 DCW 0x15; catchmap_value
ROM: 084641A4 DCW 0x6F; worldmap_value
ROM: 084641A4 DCW 0x16; catchmap_value
ROM: 084641A8 DCW 0x70; worldmap_value
ROM: 084641A8 DCW 0x17; catchmap_value
ROM: 084641AC DCW 0x71; worldmap_value
ROM: 084641AC DCW 0x18; catchmap_value
ROM: 084641B0 DCW 0x72; worldmap_value
ROM: 084641B0 DCW 0x19; catchmap_value
ROM: 084641B4 DCW 0x73; worldmap_value
ROM: 084641B4 DCW 0x1A; catchmap_value
ROM: 084641B8 DCW 0x74; worldmap_value
ROM: 084641B8 DCW 0x1B; catchmap_value
ROM: 084641BC DCW 0x75; worldmap_value
ROM: 084641BC DCW 0x1C; catchmap_value
ROM: 084641C0 DCW 0x76; worldmap_value
ROM: 084641C0 DCW 0x1D; catchmap_value
ROM: 084641C4 DCW 0x77; worldmap_value
ROM: 084641C4 DCW 0x1E; catchmap_value
ROM: 084641C8 DCW 0x78; worldmap_value
ROM: 084641C8 DCW 0x1F; catchmap_value
ROM: 084641CC DCW 0x79; worldmap_value
ROM: 084641CC DCW 0x20; catchmap_value
ROM: 084641D0 DCW 0x7A; worldmap_value
ROM: 084641D0 DCW 0x21; catchmap_value
ROM: 084641D4 DCW 0x7B; worldmap_value
ROM: 084641D4 DCW 0x22; catchmap_value
ROM: 084641D8 DCW 0x7C; worldmap_value
ROM: 084641D8 DCW 0x23; catchmap_value
ROM: 084641DC DCW 0x7D; worldmap_value
ROM: 084641DC DCW 0x24; catchmap_value
ROM: 084641E0 DCW 0x7E; worldmap_value
ROM: 084641E0 DCW 0x25; catchmap_value
ROM: 084641E4 DCW 0x7F; worldmap_value
ROM: 084641E4 DCW 0x27; catchmap_value
ROM: 084641E8 DCW 0x80; worldmap_value
ROM: 084641E8 DCW 6; catchmap_value
ROM: 084641EC DCW 0x81; worldmap_value
ROM: 084641EC DCW 0xB; catchmap_value
ROM: 084641F0 DCW 0x82; worldmap_value
ROM: 084641F0 DCW 0xB; catchmap_value
ROM: 084641F4 DCW 0x83; worldmap_value
ROM: 084641F4 DCW 0x26; catchmap_value
ROM: 084641F8 DCW 0x84; worldmap_value
ROM: 084641F8 DCW 0x2F; catchmap_value
ROM: 084641FC DCW 0x85; worldmap_value
ROM: 084641FC DCW 7; catchmap_value
ROM: 08464200 DCW 0x86; worldmap_value
ROM: 08464200 DCW 0xB; catchmap_value
ROM: 08464204 DCW 0x87; worldmap_value
ROM: 08464204 DCW 0x2E; catchmap_value
ROM: 08464208 DCW 0x88; worldmap_value
ROM: 08464208 DCW 0x2C; catchmap_value
ROM: 0846420C DCW 0x89; worldmap_value
ROM: 0846420C DCW 0x2F; catchmap_value
ROM: 08464210 DCW 0x8A; worldmap_value
ROM: 08464210 DCW 0x29; catchmap_value
ROM: 08464214 DCW 0x8B; worldmap_value
ROM: 08464214 DCW 0x2D; catchmap_value
ROM: 08464218 DCW 0x8C; worldmap_value
ROM: 08464218 DCW 0x2B; catchmap_value
ROM: 0846421C DCW 0x8D; worldmap_value
ROM: 0846421C DCW 0x28; catchmap_value
ROM: 08464220 DCW 0x8E; worldmap_value
ROM: 08464220 DCW 0x2A; catchmap_value
*Esto se debe aplicar a todos, se trata de la dirección en la que se encuentran esos datos, obviamente será diferente para cada mapa y su valor.
Por ejemplo, si yo quiero ir a ver la estructura del mapa con valor 0x70 lo primero que hago es buscarlo en esta lista:
ROM: 084641A8 DCW 0x70; worldmap_value
Una vez lo tenemos miramos el puntero:
El 08 inicial nos indica que estamos trabajando en la ROM, no nos hace falta copiarlo, por lo que la dirección en la tabla para ese mapa sería $4641A8

En caso de que queráis ampliar la lista siempre podéis iros al puntero de 0x08464148 el cual se encuentra en $13CAC8.
Recordando obviamente ir a $13CA9C y actualizar la cantidad.


Algunos os preguntaréis por los otros mapas, los de las islas, pues bien aquí os dejo también los datos, están ordenados por islas:
Código:
ROM: 08[COLOR="Black"]4642BC[/COLOR] DCD word_8[COLOR="Orange"]464224[/COLOR]
ROM: 084642C0 DCD [COLOR="SeaGreen"]4[/COLOR]
ROM: 084642C4 DCD word_8464234
ROM: 084642C8 DCD 2
ROM: 084642CC DCD word_846423C
ROM: 084642D0 DCD 5
ROM: 084642D4 DCD word_8464250
ROM: 084642D8 DCD 2
ROM: 084642DC DCD word_8464258
ROM: 084642E0 DCD 7
ROM: 084642E4 DCD word_8464274
ROM: 084642E8 DCD 7
ROM: 084642EC DCD word_8464290
ROM: 084642F0 DCD 0xB

Esto se dividide en: [puntero a la tabla], [dirección a la tabla para esa isla] [extensión de la misma]. Siendo más claro, la primera posición de la tabla la encontraremos yendo a la dirección $464224 y, como vemos ahí, nos dice que esta tiene 4 de extensión, una manera fácil de comprobar esto es mirando las direcciones.

Dato importante: Esta es una continuación de la tabla anterior (podéis comprobarlo fácilmente mirando unas posiciones más arriba de $464224, veréis los datos anteriores), por lo que usará la misma estructura.

Voy a poner un ejemplo:

La primera posición empieza en la dirección $464224 y tiene una extensión de 4, vale, si todavía recordamos la estructura de antes ([XX] [XX] [YY] [YY]) sabremos que estaba compuesta por 4 bytes ([XX] 1 Byte [XX] 1 Byte [YY] 1 Byte [YY] 1 Byte), pero esto no quiere decir que esa extensión 4 sean esos 4 bytes no, lo que nos quiere decir es que, por cada valor de extensión hay cuatro bytes, es decir, extensión de 1 = 4 bytes, pues sabiendo esto solo habrá que usar las matemáticas para saber que si una extensión equivale a 4 bytes, 4 extensiones equivaldrían a 16 bytes, ¿Y cuánto es 16 en hexadecimal? 16=10 en hexadecimal, ¿Y qué pasa si sumamos esos 16 bytes a nuestra dirección de la tabla incial? Vamos a comprobarlo, dirección 464224 + 10 (16 bytes en hexa) = 464234. Esta dirección efectivamente es en la que empieza la segunda tabla.
Un último ejemplo, ahora tenemos que esta segunda tabla empieza en 464234 y tiene una longitud de 2 [2 x 4 bytes = 8 bytes y 8=8(hexadecimal)] por lo tanto hacemos la suma, 464234 + 8 = 46423C (dirección en la que empieza la tercera tabla). Así sería con todas, esto es más que nada para que lo entendáis, como ya tenéis las direcciones de dónde empieza cada una ya tenéis todo esto hecho.


Lo último será mirar como relacionamos las tablas anteriores con una nueva, situada en la dirección $463580, esta lo que hace es indicar la forma* que debe tener el área de captura y las coordenadas en las que debe aparecer. Haciendo el mismo procedimiento que antes nos dirigiremos hasta ella, allí encontraremos la siguiente estructura:

[TT] [XX] [YY] [00]


TT = Forma del área de captura (Lo que vendría a ser estas figuras geométricas representando el lugar donde salen los Pokémon)
XX = Coordenada X del área en el mapa del mundo en el pokedex
YY = Coordenada Y del área en el mapa del mundo en el pokedex
00 = Relleno

Esta tabla sigue un orden, teniendo en mente las anteriores tablas, tal que así: los cuatro primeros bytes (TT XX YY 00, que en este caso serían 00 00 00 00), se usan para el valor de captura 0x00, los cuatro siguientes (00 36 2C 00) para el mapa con valor de captura 0x01, los cuatro siguientes (00 36 1C 00) para el mapa con valor de captura 0x02 y así sucesivamente hasta completar todas las entradas.

Tenéis subrayado lo que sería toda la tabla

Para las coordenadas lo que debéis saber es que empiezan en la esquina superior izquierda del mapa y no de lo que ocupa el rango de visión de pantalla, me he tomado la molestia de dejaros los límites y el punto medio, de lo que sería el worldmap principal, para así poder facilitaros un poco más las cosas:
Esquina arriba izquierda X=20/Y=00
Esquina arriba derecha X=78/Y=00
Esquina abajo izquierda X=20/Y=40
Esquina abajo derecha X=78/Y=40
Punto medio X=4C/Y=20
Me extrañó bastante que el punto X=00 Y=00 no fuese esa esquina superior izquierda, pero después me puse a pensar y seguramente se deba a que, al haber los mapas de las islas, empiecen las X=00 en la esquina superior izquierda de ese mapa, pero aquí no me he enfocado en esos mapas.
Esto también podría significar que se podría llegar a hacer un mapa más grande, pero este no punto todavía no lo he investigado.

Lo último que me queda por mencionar es la forma de llamar a cada una de esas "formas" ([TT]), os dejo aquí los parámetros para cada una:


*
00 = Punto redondo.
01 = Óvalo alargado eje x pequeño.
02 = Óvalo alargado eje y pequeño.
03 = Óvalo alargado eje x mediano.
04 = Óvalo alargado eje y mediano.
05 = Óvalo alargado eje x grande.
06 = Óvalo alargado eje y grande.

Aquí un ejemplo de como me ha quedado a mi:

Para todos los que queráis cambiar estos gráficos y darle otras formas os dejo el offset y la dirección (para una ROM limpia), el procedimiento sería el mismo que hicimos en la primera parte solo que con esta imagen.

-NLZ-GBA: 46343C
-unLZ-GBA: 349

Probando a cambiarlos por unos más rectangulares:


Tutoriales de interés en relación al tema:

-FR | Gráficos | Manual para insertar tu propio Worldmap
-FR Como insertar Worlmap(para novatos)
-[FR Configurar el Worldmap]-Como usar el Worldmap Editor
[GUÍA] TODO sobre el sistema hexadecimal (orientado al ROM Hacking)
-------------
-------------


Pues eso es todo por ahora, espero que os haya servido, me he demorado algo más con este porque he intentado explicarlo para que cualquiera pudiese entenderlo, pero ya sabéis, para cualquier cosa preguntad.
Espero que os haya servido de ayuda.

Un saludo! :D
 
Última edición:

Markuzz Kaizuka

Usuario de platino
Respuesta: [FR]Editando Worldmap de la Pokédex & Áreas Captura

Pero que Tuto amigo....Muy genial, estaba esperando un tutorial de estos para cambiar
el mapa de la pokedex y este me viene como anillo al dedo, no se te escapa ningun detalle.
Lo que mas o menos confunde es la parte de HxD,pero de resto es un exelente trabajo,
ademas, tomaste en cuenta lo de nlz-gba lo que me parecio increible porque por lo menos
yo prefiero nlz-gba a unlz-gba, pues nada.. mis felicitaciones, me has impresionado!!
 
Arriba