Registrarse

[3DS] Cambiar música de pokémon en Nintendo 3DS

RubiVGM

Músico y torpe nivel over 9000
¡Hola! He visto que hay poco escrito por aquí respecto al rom hacking en 3ds, así que me ofrezco a compartir los conocimientos básicos que tengo en este tutorial a base e lo que he podido experimentar. ¡Espero que os guste!

Antes de empezar, aviso de que cada vez que mencione una herramienta dejaré su link de descarga. Lo haré con todo menos con los roms. Google es tu amigo :3

Paso 0: Antes de empezar
Antes de nada, necesitas tener una 3ds con CFW. Consulta 3ds Hacks Guide https://3ds.hacks.guide/es_ES/ para encontrar la forma de tener custom firmware en tu sistema.

También necesitaras el archivo .CIA (Instalable para 3ds) correspondiente al juego que quieres editar.

Por último, necesitas la herramienta HackingToolkit9DS para extraer todos los archivos que hay comprimidos en el .CIA y así poder editarlos.

Paso 1: Extraer el juego
Lo primero es extraer la ROM. Para ello descarga la herramienta "HackingToolkit9DS" https://github.com/Asia81/HackingToolkit9DS-Deprecated-/releases
y colócala en el mismo lugar donde se encuentra tu archivo .CIA, en mi caso Pokémon X.
Ahora abre el programa (el que se encuentra en la carpeta PackEnglish (HackingToolkit9DS.bat)).
Escribe CE, presiona enter, escribe el nombre de tu archivo .cia sin extensión (En mi caso lo he renombrado como PX) y presiona enter de nuevo.
Una vez el programa diga: "Congratulations! Extraction done." podrás cerrarlo. Y así se extraen los archivos de un ROM de 3ds.

Paso 2: Crear el nuevo audio
En la carpeta donde tienes el archivo .CIA se habrán creado varios archivos y carpetas. Son los archivos del juego. El audio en específico se encuentra en "ExtractedRomFS/sound" para los juegos de sexta generación y en "ExtractedRomFS/data/sound" para los de séptima. Ahora viene lo largo: crear las canciones (o al menos transformarlas). Primero descarga BrawlBox https://github.com/libertyernie/brawltools/releases y extráelo donde quieras. Una vez extraído, ábrelo y arrastra la canción que quieres editar para asegurarte de que es esa (Esto no es necesario para XY ya que los archivos se pueden escuchar con cualquier reproductor multimedia al estar en formato .AAC) Dale a play y confirma que es la canción que quieres cambiar. Ahora, en el menú de BrawlBox, ve a File>New>Audio>BRSTM Audio Stream. Busca y selecciona la canción que quieres insertar en formato .Wav y dale a open (Aún no cierres el programa). Si tu canción no está en formato .Wav puedes usar Audacity https://www.audacityteam.org/download/ para guardarlo de nuevo en ese formato. Descárgalo igualmente porque es necesario para el siguiente paso.
[HACER ESTA PARTE SOLO PARA JUEGOS A PARTIR DE RO/ZA]Una vez abierto Audacity, arrastra la canción al este y busca el punto de loop (En mi caso son 227062 muestras). Ese es el punto desde el que la canción se repetirá infinitamente. ¡Recuerda cambiar la medida del tiempo a samples/muestras o lo echarás todo a perder!
Una vez hecho esto, vuelve a BrawlBox, marca la casilla "loop"
e introduce en Start el número que aparece abajo en audacity, en la segunda de las tres casillas que contienen numeritos. (En mi caso pongo 227062) Dale a "Okay" y comenzará a transformar el audio. Una vez termine, haz clic derecho en el archivo de la izquierda y haz clic en export. Ahora selecciona el formato .bcstm y copia el nombre de la canción original del juego incluyendo en el nombre ".dspadpcm" Yo quiero reemplazar la del rival en Zafiro Alfa, así que le pongo de nombre "bgm_sg_vs_rival_sg.dspadpcm" y de extensión ".bcstm". El archivo quedaría como "bgm_sg_vs_rival_sg.dspadpcm.bcstm".
Ahora guarda el archivo reemplazando en la carpeta de sonido del juego. Por ejemplo, para RO/ZA es "ExtractedRomFS/sound".

[HACER ESTO SOLO PARA XY]
Abre Audacity y arrastra a él la canción que quieres meter en tu juego.
Selecciona el punto de loop tal y como he explicado anteriormente y esta vez apúntalo donde sea. Selecciona justo el final de la canción y apunta los numeritos de abajo (en la tercera de las tres casillas con numeritos).
Si tu canción no está en .wav, expórtala en ese formato. Ahora ve a esta página: https://audio.online-convert.com/es/convertir-a-aac. Dale a "seleccionar archivo" y elige tu canción en formato .wav. Ahora haz clic en "convertir archivo". Espera hasta que termine y se descargue automáticamente. Cuando lo hayas descargado, cámbiale el nombre al de la canción (SÓLO DE XY) que quieres reemplazar y deja la extension tal y como está, en .AAC. Y ahora viene el último paso del paso 2. Qué raro ha sonado, ¿no?
Fuera coñas, esto no es complicado, pero sí tedioso. Descarga HxD https://mh-nexus.de/en/hxd/
y abre el archivo "xy_sound.bcsar" que hay en la carpeta de los sonidos con el mismo programa, pero antes haz una copia de él o tendrás que volver a extraer el rom. Pulsa las teclas "Control" y "F" al mismo tiempo y selecciona "Hex values" en donde te señalo aquí:
Minimiza el programa y ve aquí: https://pastebin.com/EJetua4J Y aquí:
https://es.calcuworld.com/calculadoras-matematicas/calculadora-hexadecimal/

En la primera página, busca el título de la canción a reemplazar y copia el primer número que le corresponde. Luego ve a la segunda página, conviértelo a hexadecimal e inviértelo incluyendo sus respectivos ceros adicionales. *Ejemplo: 00 03 76 f6 se convierte en f6 76 03 00. Ahora, en HxD pon ese valor en la caja de texto y presiona ENTER. Te seleccionará unos números. Ahora convierte el primer número que apuntaste a hex e inviértelo igual que antes. Reemplaza los valores que se seleccionaron en HxD por los que te de la inversión. Ahora repite todo el párrafo anterior, sólo que en vez de seleccionar el primer número de la canción en la página que he dejado, seleccionas el segundo, y en vez del primero apuntado, también el segundo. Una vez hecho esto, toda la música está lista. Guarda el archivo "xy_sound.bcsar" y listo. Vamos al siguiente y último paso.

Paso 3: Parchear el juego. Supongamos que tu 3ds ya tiene CFW (Está pirateda, básicamente). Ve a la tarjeta SD o micro SD de tu consola (Aségurate de tener suficiente espacio) e insertala en tu pc con algún adaptador. Copia tu juego en formato .CIA a una carpeta llamada "cias" en la raíz de la unidad. Si no existe, créala. Ahora ve a la carpeta luma. Crea una carpeta dentro de luma que se llame "titles", dentro de esa, otra con la ID de tu juego *Ver las ID aquí 3DS Releases
y dentro de esta carpeta crea una con el nombre "romfs".

[PARA SÉPTIMA GENERACIÓN] dentro de romfs crea una carpeta con el nombre "data" y dentro otra con el nombre "sound". Dentro de "sound" pega las canciones que hayas reemplazado.

[PARA SEXTA GENERACIÓN (RO/ZA)]Crea una carpeta llamada "sound" en romfs. Dentro de "sound" pega las canciones que hayas reemplazado.

[PARA SEXTA GENERACIÓN (XY)]Crea una carpeta llamada "sound" en romfs. Dentro de "sound" pega las canciones que hayas reemplazado Y TAMBIÉN EL ARCHIVO "xy_sound.bcsar" que editaste con HxD.

Una vez hecho esto, extrae la SD de forma segura de tu PC y métela de nuevo en tu 3ds. Ahora arranca el menú de luma encendiendo la consola con el boton "select" presionado. activa la opción que dice "enable game patching" y pulsa start. ¡Tu juego ya está listo! Ahora sólo toca probarlo.

Aquí una prueba en mi twitter de como cambié la música de batalla contra los pokémon salvajes en Pokémon X. (Agradecimientos a CampeonSteven y a Platinum Master) por ayudarme.

Nada más. Cualquier duda la podéis comentar aquí mismo. Y si te sirve dale
un buen +Gracias :3
 
Arriba