Debo decir que no es un proceso tan fácil, pero trataré de ser lo más detallado posible para que entiendan bien, ya que el más mínimo error puede dañarte TODO el proceso (ya pasé por eso).
Antes de comenzar, debo decir que este tutorial está basado en el tutorial de Fire Blazer, responsable de crear la herramienta más importante para la inserción de música, el parche "All-Instrument Hack". Bueno; ahora sí, comenzemos.
Requerimientos:
- El parche "All-Instrument Hack" de Blazer (Búscalo en Fire Emblem Shrine).
- Un MIDI - Ve a esta página para buscar el que quieras. (http://www.vgmusic.com/)
- HxD - Editor de Hex.
- Nightmare.
- MIDI2GBA - Herramienta para hacer posible que el MIDI se escuche en tu hack.
- Anvil Studio - Editor de MIDIs.
- NUPS - Para poder aplicar el parche.
- Notepad - Lo necesitarás.
- Calculadora.
Información importante:
- El parche de Blazer añade todos los instrumento a tu hack en el offset "107D7D0" y termina en "11B6530".
Asegúrate que en todo ese espacio no tengas nada escrito (de lo contrario, tendrás problemas... Serios). Por cierto, ve aplicando el parche desde ahora para que luego no se te olvide.
- El MIDI no puede contener más de 10 pistas (tracks) porque el juego no lo aceptará.
- Anota todos los offsets que vayas a usar en un notepad (te arrepentirás si no lo haces).
Con eso aclarado, demos comienzo a este tutorial.
Primero abres Anvil Studio y cargas tu MIDI.
Después de descartar las pistas sin notas, debarás encontrar dónde se repite la canción. Tienes que escucharla por supuesto. En mi caso, la canción se repite en 0:46:08.
Le das a "View/Composer" y te saldrá esto.
Si no es así, le das al botón "Insert Rest" para añadir recesos hasta que tu tiempo sea el mismo que la duración.
Hay casos en el que la duración aumenta. No debes permitir que eso ocurra. Si te pasa, solo dale a la tecla "Backspace" para regresar a la duración correcta (creeme que te va a pasar).
Después de hacer todo esto, guardas tu MIDI modificado y pasamos a MIDI2BGA. Hay una carpeta adentro que dice "mid", pon tu MIDI hay y luego vas a una aplicación que se llama "Tr.exe" (está en el mismo MIDI2GBA).
Bueno, ahora vas a escuchar cómo sonaría tu MIDI en el juego.
¿Notaste que hay un juego dentro del MIDI2GBA llamado "song.gba"?
Lo vas a abrir con tu VisualBoy Advance (o el emulador de Gameboy Advance que tengas) y le das al botón "A" (cualquiera que sea la tecla que sea el botón "A" en el emulador) y la escuchas
No sé si te pase, pero si escuchas que la canción se entrecorta, no debes preocuparte. Cuando la insertes en tu hack se oirá bien (si sigues los pasos siguientes al pie de la letra).
Bien. Ahora vamos a la parte más larga y frustrante de todo el proceso, el hex.
Sino haz parcheado tu ROM con el parche "All-Instrument Hack", hazlo, y también hazle un "Back-up" a tu ROM.
Abre tu editor de hex junto con tu ROM y el "song.gba".
Ahora lo que harás es ir al tope y remplazar (CTRL + R) todos los "B1" que veas con "B2 00 00 00 00 B1 00 00 00 (Sin los espacios).
Ejemplo: Si tienes seis pistas, deben haber seis "B1s" que hay que remplazar.
Bien. Ahora copias de nuevo todo y lo pegas en cualquier espacio libre en tu ROM. Toma en consideración el tamaño de tu canción. Yo lo pondré justo debajo de donde se termina los instrumentos, "11B6540".
Debes pegarlo con "CTRL + B" en ves de "CTRL + V" no sé por qué y tampoco no me gustaría averiguarlo. Ahora guárdalo.
Por cierto. desde este punto deberás comenzar a utilizar la notepad. Comienza copiando el offset en el que pusiste tu canción.
Nota: El primer par que aparece (en mi caso "08"), esa es la cantidad de pistas que tienes en tu canción. Si tienes cuatro pistas, ese par será "04" y así, según lo que tengas.
El rectángulo amarillo es el mapa de instrumentos, "2C EA 1A 08". Lo único que harás con este puntero es cambiar el "08" por "09" (Todas las canciones que vayas a insertar en tu hack siempre usarán este puntero, y siempre harás lo mismo, cambiar "08" por "09". El horrible rectángulo verde son los punteros de tu canción. Más adelante aprenderás su función en este proceso.
Bien. Vamos para el principio (donde pusiste tu canción, en mi caso "1BB6540") y comienza a buscar los "B200000000B100000000" que agregaste (CTRL + F). Solo pon "B2" y aparecerán, uno a uno por supuesto.
Bien. Ahora, los cuatro pares de ceros que agregaste antes son para poner nuevos punteros. En el primero pondrás el offset el cual pusiste tu canción (en mi caso "11B6540").
NOTA: APRENDE A CONVERTIR UN OFFSET EN PUNTERO!!!
No te preocupes, si no sabes hacerlo, yo te lo enseñaré (para eso es el tutorial, ¿no?).
Bien. El offset "11B6540" lo conviertes a puntero así:
1 1B 65 40 = 40 65 1B 09
Tienes que poner los pares en reversa y el 1 solitario, ese uno se lo sumas a 8 (8+1=9). Si insertaste tu canción en los espacios vacíos que hay al final del ROM como originalmente viene (ejemplo: 001D9614, que de todas formas no es recomendable hacerlo), entonces solo incluyes el 8, dejándote con el puntero: "14 96 1D 08".
Bueno, con eso aclarado, prosigamos.
Pondrás el puntero en los ceros que están entremedio de "B2" y "B1".
Hay está tu próximo puntero. Hazle un "click" y mira el offset que aparece (esquina de abajo a la izquierda). Escríbelo en tu notepad y coviértelo en puntero (con el método mencionado más arriba). Harás el mismo proceso para cada "B200000000B1000000" que agregaste (recuerda que si tienes por ejemplo: seis pistas, son seis punteros que tienes que poner y recuerda poner todos los offsets y punteros en tu notepad).
Bueno, después de haber hecho el mismo proceso con todos los punteros, llegarás al final (donde está tu "Header").
Estos son. Lo que harás aquí es sustituir cada puntero con los que escribiste en tu notepad. Están divididos en cuatro pares. En la imágen hay ocho porque tuve que sustituir ocho punteros. De nuevo, si tienes seis pistas (o cualquier número que no pase de diez) esa será la cantidad de punteros remplazables que sustituiras. Deberá verse así, con tus respectivos punteros.
Ahora guardas y vamos para nightmare (por fin terminamos con lo más difícil, pero todavía no cierres tu editor de hex).
Bien, abre el módulo "Music Array Editor". Busca cualquier canción que quieras remplazar (yo usaré "Wind Across the Plains" 0x30).
El valor de la canción (en mi caso 0x30) lo multiplicarás por ocho. Abre la calculadora y ponla en Hex.
En mi caso: 30x8=180+69D6E0=69D860.
Bien. Ahora ve al offset de tu resultado (en mi caso "69D860").
Bueno, hay una división aquí. Los primeros cuatro pares son para que pongas el puntero de tu "Header". El mío es "11B718" (18 B7 1B 09).
Los segundos cuatro pares son la prioridad de la canción. Poner "01 00 01 00" Haría la canción audible para un mapa.
Tu resultado final sería este, con tus respectivos punteros.
Bueno, gracias a todos los que lean este tutorial. Espero que sirva de algo y por ahí vendrán más tutoriales (cuando descubra de qué los voy a hacer).
Suerte y diviértanse mejorando sus hacks.
Queja: Tardé 6 horas (no exactas) haciendo este tutorial, así que más vale que sirva de algo.
Cualquier duda, comenten y los ayudaré cuando sea posible.