Bien, hola a todos. Primero quiero dar las gracias al foro de GBATemp.net y a Dr Katts por ayudarme en este trabajo para la modificación de esta ROM.
En este conjunto de tutoriales vamos a aprender a poder modificar totalmente la ROM de distribución de Deoxys en USA para hacerla funcionar en las versiones ESP, FRA, ITA..., que funcione a partir de hoy, día 6 de julio (último día funcional del evento en USA) y modificar el evento de este.
TUTORIAL 1En este vamos a aprender a quitar la limitación de región.
Para todos los tutoriales vamos a necesitar:
-Un editor Hex: hay muchos en Internet, tanto gratuitos como versiones de prueba de programas de pago.
-Pokésav 0.39:
http://pokexperto.net/mecanica/trainerd ... panish.zip (gracias a Pokéxperto.net por el enlace)
-DSLazy o DSBuff:
http://l33t.spod.org/ratx/DS/dslazy/dslazy.zip http://gbatemp.net/index.php?download=1143-Y, por supuesto, la ROM de este (no voy a decir de donde se consigue la ROM, por supuesto).
-OPCIONAL: RomeR o similares para modificar el banner de la ROM cuando esté acabo el hack.
Bien, comencemos:
1: Cogemos la ROM y la unpackeamos con el DSLazy (voy a usar este nombre, pero DSBuff hace exactamente lo mismo) y nos creará estos archivos (dentro de la carpeta NDS_UNPACK, en la propia carpeta de DSLazy, o en C: si usamos DSBuff):
-Arm7
-Arm9
-Banner
-Header
-Y7
-Y9
Y las carpetas Overlay y Data.
Todos los archivos anteriores menos la carpeta Data los ignoramos porque no nos van a servir para modificar nada, así que nos centramos en Data.
2: Dentro de Data tenemos varios archivos. En este primer tutorial vamos a fijarnos en ggid.dat. Abrimos este archivo con el editor hex y modificamos el contenido por el dato que nos interese dependiendo de la región del juego que vaya a recibir:
ID Japonés: 45 03 00 00
ID Koreano: 18 00 C0 00
ID Inglés: 18 03 40 00
ID Francés: CD 00 80 00
ID Alemán: CE 00 80 00
ID Italiano: CF 00 80 00
ID Español: D0 00 80 00
3: Guardamos, volvemos a DSLazy y packeamos. Guardamos el .nds y hecho, ya tenemos el evento de Deoxys USA compatible con la versión que queramos.
TUTORIAL 2Visto el gran éxito que tiene este tutorial y los parches del hilo de TheFireRed, me dispongo a acabar el curso (por llamarlo así) de hack de esta ROM.
En este tutorial vamos a aprender a quitar el límite de tiempo en nuestra ROM. Para ello usaremos el DSLazy para unpackear la ROM (si aún no la tenemos unpackeada) y el editor hex.
Vamos por pasos, aunque es bastante sencillo:
1: Cuando tengamos la ROM Unpackeada, vamos a data y abrimos limit.dat con el editor.
2: Veremos que hay una cifra bastante clara si entendemos hexadecimal, que es la fecha del inicio del evento y la fecha final del evento (14 de junio/6 de julio). Pues ahora es tan fácil como modificar esta fecha para que no nos afecte. Yo he puesto 0000010199000C1F para que empiece el 1 de enero del 2000 y acabe el 31 de diciembre de 2099 (fechas límite de la DS, con lo cual, no caduca).
3: Guardamos, packeamos, y listo.
No voy a poner parches a partir de ahora ya que con los del hilo de TheFireRed vamos sobrados y a parte, este tutorial está hecho para que hagáis vosotros los vuestros propios. Si queréis hacerlos, con el LunarIPS
http://fusoya.eludevisibility.org/lips/ ... ips101.zip podéis. Tan solo le dáis a "Create IPS Patch", le dais a "All files" y ponéis la rom sin modificar. Luego la rom modificada y listo.
Ahora os explico el extra para modificar el banner (si no sabéis hacerlo, claro). Con el programa RomeR abrimos la ROM y nos pondrá los datos del banner. Pues ahora tan solo modificáis los datos que necesiteis (vuestro nombre, el icono personalizado...) y guardáis. Esto os será útil en el siguiente tutorial para poner los nombres de los eventos para no mezclarlos.
TUTORIAL 3Señoras y señores, viene la parte más cruda de este tutorial: la modificación del evento.
Digo la más cruda porque tenemos que usar todos los programas que mencioné al comienzo y debemos usarlo fijándonos bien, ya que cualquier fallo puede hacer que el programa sea inestable o que el evento a recibir sea corrupto.
Bien, empezamos:
1:Como siempre, unpackeamos la ROM y entramos en Data.
2:Ahora nos fijaremos en el archivo data.bin. Aquí están todos los datos del evento. Lo abrimos con el editor hex.
3:No se va a entender nada en la columna de la derecha (donde se supone que descifra el código hex), pero sabemos que ahí está el evento.
4:Abrimos el Pokésav y vamos a la sección de Eventos y en Regalo Misterioso. La ROM solo acepta el archivo guardado de UNA WONDER CARD, nada de intentar poner el evento suelto porque no entra en el código.
5:Creamos nuestro evento con las opciones que pone. Es recomendable poner que es compatible con Perla y Diamante (en los cuadros de abajo del todo) y que la distribución es infinita (ya que si ponemos 0, se enviará la tarjeta a D/P pero esta no la podremos borrar), así no se enviará ninguna tarjeta, con lo cual, lo que pongáis de texto no se verá.
6:Guardamos el archivo .pcd y lo abrimos con el editor hex. Ahora tenemos abierto el data.bin y el archivo .pcd. Copiamos el código entero de .pcd y nos vamos a Data.bin.
7:Nos situamos en el offset 00000150 y seleccionamos el código hasta el offset 000004A0, pero no entero, sino hasta el octavo valor del offset. Pegamos el código.
8:Los 4 últimos valores del código que acabamos de pegar, los del .pcd, los ponemos a cero (o sea, que queda 0000 0000).
9:Ahora copiamos el código que hay en el offset 00000250, en el valor 5, hasta el quinto valor del offset 000002A0. Estas 5 líneas de código las copiamos y las pegamos en los offsets 00000100 hasta 00000140 y en 00000010 hasta 00000050.
10:Listo, nuestro evento ya está dentro. Ahora guardamos, packeamos, y ya tenemos nuestro hack de la ROM.
11:OPCIONAL:Como extra, para no confundir roms con distintos eventos, usad el RomeR como he dicho en el tutorial anterior para modificar el banner.
Bueno, ya está finalizado este tutorial por pasos para el hack de esta ROM. Espero que lo uséis con prudencia y para el desarrollo de la scene de NDS.
¡Saludos!