Viernes, 08 de agosto de 2008

[TUTORIAL] Hackear la rom XXXX - Deoxys Distribution Card[By Leopoldo]

TUTORIAL 1

En 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 2

Visto el gran éxito que tiene este tutorial y los parches del hilo de TheFireRed, me dispongo a acabar el curso (por llamarlo asíGui?o 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 3

Señ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.



Añadir comentario