Tutorial: Cómo cambiar la música a un juego (Crazy Taxi usado como ejemplo)

Bueno, estaba un poco aburrido, así que decidí hacer este tutorial para el resto de la gente, espero que a alguien le interese o sea útil:


Tutorial para cambiarle la música a un juego: Crazy Taxi

Ponemos el backup en la compactera y vemos el listado de archivos. Encontraremos uno de poco más de 30 MB, llamado "SONG01.AFS". Ahí está la música del juego en
formato ADX. Para los curiosos, si quieren ver / escuchar los archivos pueden extraerlos con dos programas diferentes:

afs_extract o adx_encoderhelper

el primero es más sencillo, apenas un pequeño ejecutable de línea de comando donde simplemente se pone como parámetro el nombre del archivo .AFS donde están los archivos .ADX que queremos extraer, o sea:

afs_extract SONG01.AFS

Con el otro programa, el adx_encoderhelper se puede hacer lo mismo, pero éste tiene una pequeña gui con algunas opciones más que tal vez hacen más sencillo el manipuleo de los archivos. Este último programa tiene la particularidad que además de los propios archivos .ADX genera otros dos más, uno .AFT y otro .ALS, que son para utilizar las otras funciones que provee.

El resultado de usar el primer programa sería el siguiente:

C:\Audio>afs_extract SONG01.AFS
SONG01.AFS - 9
SONG01_00.adx 00080000 0004f000
SONG01_01.adx 000cf000 001ceeee
SONG01_02.adx 0029e000 000fea42
SONG01_03.adx 0039d000 00313db2
SONG01_04.adx 006b1000 004a8e1e
SONG01_05.adx 00b5a000 006577e6
SONG01_06.adx 011b1800 00647742
SONG01_07.adx 017f9000 004f57f2
SONG01_08.adx 01cee800 000ff800

Y veríamos en el directorio los siguientes archivos:

06/23/2003 04:35p 323,584 SONG01_00.adx
06/23/2003 04:35p 1,896,174 SONG01_01.adx
06/23/2003 04:35p 1,043,010 SONG01_02.adx
06/23/2003 04:35p 3,227,058 SONG01_03.adx
06/23/2003 04:35p 4,886,046 SONG01_04.adx
06/23/2003 04:35p 6,649,830 SONG01_05.adx
06/23/2003 04:35p 6,584,130 SONG01_06.adx
06/23/2003 04:35p 5,199,858 SONG01_07.adx
06/23/2003 04:35p 1,046,528 SONG01_08.adx

Como supongo que lo normal es no tener un player de formato .ADX los convertiremos a .WAV, para ello usamos otra sencilla tool llamada nada más ni nada menos que "adx2wav" (también se pueden usar otras, como adx2mp3).
Una vez obtenidos los archivos en formato .WAV, podremos "identificar" cada una
de las canciones:

SONG01_00 : la del menú cuando le damos a "start" y cuando al final del juego
asignamos el record a alguno de los usuarios registrados (o no)
SONG01_01 : No se dónde se usa
SONG01_02 : la de cuando elegimos al conductor
SONG01_03 -> SONG01_07 : Los temas de Offspring y Bad Religion
SONG01_08 : No es nada más ni nada menos que el mismo tema que el SONG01_02

Bueno, esto es más que nada para que uno tenga idea de qué es lo que va a estar reemplazando. Hay que tratar de ser acordes (no vamos a meter un tema en sí en el primero o segundo de la lista, no tendría mucho sentido).

IMPORTANTE: Hay que verificar cuáles "tracks" (por llamarlos de alguna manera) necesitan loop para que suenen continuamente, otra vez tratar de elegir algo que sea coherente, y tratar de hacerlo bien, ya que si elegimos mal un .WAV a loopear y suena mal, quedará FEO.
De aquí se deduce la pregunta, cómo hacer un loop? Pues bien, tenemos que usar otra tool, llamada "adxencd", de la siguiente manera. Uso de ejemplo la primera de las nueve pistas, que es la que va a estar sonando continuamente en los menúes (la única que realmente importa en este juego, a los fines de loop):

C:\Audio>adxencd SONG01_00000.wav
|||||||||||| ADX Audio decompression tool Ver.4.70 ||||||||||
Software Audio Encoder for "CRI ADX for Dreamcast" 1999-11-30 Copyright(c) 1996-1999 CRI

Input sound data file: 'SONG01_00000.wav'
ADX Compressed data file : 'SONG01_00000.adx'
Sampling frequency : 44100 Hz = Input sound data
No. of channels : 2
Input audio sample : 284666 smpl = 6.0 sec <44100 Hz>
ADX output sample : 284666 smpl(Blk:284672 smpl) = 6.0 sec <44100 Hz>
....................

Los datos que importan aquí son los samples de comienzo y fin. Para lograrlo habrá que ejecutar el siguiente comando:

adxencd song01_0000.wav -lps0 -lpe284666

De este modo tendremos el WAV completamente loopeado para cuando luego sea convertido a .ADX.
Con el resto de los temas a reemplazar, el criterio es tener en cuenta la duración de los temas, más que nada. No podemos poner tracks de 10 minutos de duración, porque probablemente el juego termine colgado debido a la escasez de RAM (ojo, no
estoy seguro de si el juego lee "on the fly" las pistas o las carga todas en un espacio reservado en RAM, así que conviene no moverse demasiado de la duración de los temas originales).

Aquí es donde cada uno debe poner su cuota de ganas, imaginación y edición. No hay tutorial que pueda decirle a cada uno qué temas le gustan y cómo editarlos.
En cualquier caso, contaremos con 9 archivos .WAV de una duración similar a la original. Supondremos eso.

Una vez que tenemos los "nuevos" .WAVs deberemos convertirlos al formato ADX, para eso, usaremos la tool "wav2adx" de esta simple forma:

wav2adx

lo que podría llegar a ser:

C:\Audio>wav2adx song01_00000.wav
song01_00000.wav -> song01_00000.adx

Una vez que convertimos los nueve archivos .WAV debemos "unirlos" para volver a crear el único archivo que utiliza el juego: SONG01.AFS
Ahora debemos usar otra tool, llamada en este caso "afslnk". Debemos crear un archivo que contenga la lista de todos los files .ADX que queremos juntar.
Finalmente la cosa sería:

afslnk
SONG01.AFS>

podría ser en este caso:

afslnk crazy.als SONG01.AFS

Adicionalmente, si queremos ahorrar 1/2 megabyte de espacio en el .AFS generado podemos usar la tool llamada "afsshrink".

Listo, ya nos ha quedado el nuevo y reemplazado SONG01.AFS con la música que nosotros elegimos. Solamente queda seguir el método de ECHELON para volver a armar la imagen del juego, reemplazando el original SONG01.AFS con el que acabamos
de generar.

El caso de la música en el Crazy Taxi 2 es prácticamente idéntico. Incluso algunos otros juegos tienen las pistas de audio en un único archivo .AFS por tema, o sea que ni siquiera tienen que estar linkeando todos los tracks en un solo file.

Espero haber hecho un aporte a la comunidad, cualquier duda consulten [oki]
Escrito originalmente por FaSCoRP
Espero haber hecho un aporte a la comunidad


Bueno, no esta malXD

Gran trabajo...
muy currao, la verdad es que en su momento me lo plantee, pero ya se me pasaron las ganas de trastear con los juegos, pero desde luego quien tenga ganas y tiempo, por información no sera!!!


muy bueno FASCORP [fies]
Me parece que ya sé por qué me he picado tanto con esta consola.. ¡¡por el buen rollo que hay aquí!!! ¡¡¡Muchas gracias por ese pedazo de tutorial!!!! :D ;) [ginyo] [chulito]
Muy currado fascorp [ok]

Ahora qu estoi jugando al shenmue le podria poner musca hip hop...... no quedaria muy mal ahora mismo le cambia la musica al soul calibur [bye]

Salu2 [bye]
Mu bien FaSCoRP.

Por cierto no sabreis si se pueden cambiar en los juegos los personajes(extraer o importar modelos 3d) y/o las texturas? XD

Creo que ya estoy pidiendo demasiado:Ð

Si alguien sabe como,lo adorare siempre [tadoramo] XD
IDos !!
¿para que quitas la musica al Crazy ?

Joder, si tienen una musica de COJONES !!!

COn lo guapa que es y lo bien que queda con el juego [tadoramo]
Respondo:

Jarkan: En este juego no es sencillo, ya que las texturas no están el algún formato directamente "entendible". Si quieres algún juego con texturas en formato PVR (puedes encontrar un plugin para el Photoshop que lo importa y exporta) píllate el Tokyo Bus Guide . Encontrarás carpetas y carpetas con archivos de texturas. Es el único que me acuerdo de momento

Palpatine: Coincido contigo, la música de Offspring y Bad Religion está muy buena y encaja perfectamente con el juego. Solamente puse a modo de ejemplo. Aunque ayer se me ocurrió que, por ejemplo, el tema de la peli Trainspotting , Born Slippy de Underworld, encaja perfectamente [hallow]
Oye, muy bueno el tutorial. Gracias Fas [oki]

En cuanto deje de estudiar me pongo con algun juego que ya tenía ganas de darle algo de ritmo!!




Por cierto, alguien puede hacer algo parecido a este tutorial pero para el caso de los juegos con CD-DA?
Pues simplemente cambia las pistas de audio para los juegos con CDDA. En los binarios se hace referencia solamente al número de track, no a las longitudes. Lo que sí, en vez de usar el clásico BINHACK del Echelon selfboot toolkit tienes que usar otro, llamado DAHACK, para que pueda arrancar desde la posición donde terminan las pistas de audio (el dato lo extraés usando el flag -msinfo del CDRECORD). Solamente vale para juegos que sean Katana (no WinCE)
Ok, pues a ver cuando me pongo, que el Snow surfers sin música es bastante soso...
Gracias.


Por cierto, en el Dave Mirra BMX sólo suena la primera pista de mi backup, mientras que al meterlo en un reproductor normal de cd suenan todoas. La única manera de oir la siguiente durante el juego es hacer un trick muy largo (con la bici especial) y esperar. Sólo así he conseguido hacer sonar la siguiente canción. Con esto que dices lo puedo arreglar? (Poniendo el loop o algo así?)
No, el caso del Dave Mirra´s es especial. Echelon se mandó un moco cuando hizo el release, luego sacaron un fix. Puedes bajarlo aquí
currao currao, por cierto otro sjuegos k tien millones de PVR es el MACROSS M3, tiene asta las imagenes k salen explikandote la mision.
Fascorp muchas gracias ;)

Los models del shenmue creo son MT5.Sabeis si hay algun programa o plugin que los lea?
Escrito originalmente por Jarkan
Los models del shenmue creo son MT5.Sabeis si hay algun programa o plugin que los lea?


Mno, desconozco :?
Pues yo he conseguido cambiarle las canciones al looney tunes space race. La verdad esq no me costo nada, xq la imagen q me baje venia con un extract para sacarlas y un inject. Lo unico q hice fue convertir a wav las canciones q keria meter, rebajandolas un poko de calidad, para q entrasen mejor. Las renombras de modo q se llamen igual q las q vas a reemplazar y ala, palante XD

Es bastante heavy jugar al juego este escuchando a system of a down[666] o a eminem XDXDXD
No, el caso del Dave Mirra´s es especial. Echelon se mandó un moco cuando hizo el release, luego sacaron un fix. Puedes bajarlo aquí


Pues muchas gracias tio!!!

Pues yo he conseguido cambiarle las canciones al looney tunes space race. La verdad esq no me costo nada, xq la imagen q me baje venia con un extract para sacarlas y un inject. Lo unico q hice fue convertir a wav las canciones q keria meter, rebajandolas un poko de calidad, para q entrasen mejor. Las renombras de modo q se llamen igual q las q vas a reemplazar y ala, palante


Ese inject y extrack será universal? Es decir, servirá para otras isos? Creo recordar que aún guardo los rars y si puediera utilizarse esa herramienta para otras isos con CD-DA pues sería AÚN más fácil, vamos, lo ideal para torpes como yo [tomaaa].
X-D
Ese inject y extrack será universal? Es decir, servirá para otras isos? Creo recordar que aún guardo los rars y si puediera utilizarse esa herramienta para otras isos con CD-DA pues sería AÚN más fácil, vamos, lo ideal para torpes como yo .


Pues no, no lo son [decaio] . Vaya pena, xq seria empezar a meter msica a dolor en juegos. Aunq al tener q rebajarles la calidad tp se puede decir q se oigan muy bien, ademas hay alguna q por ser larga, me las ha cortado...
Ok, una pena...
pero bueno, tampoco es para tanto...



Offtopic: Tu avatar y tu firma revelan un gran desequilibrio mental. [sonrisa] Así que fan de "La loca loca historia de las Galaxias"? X-D
Bueno, otra pega esq lo oia muy bajo, tuve q bajar los fx y los comentarios del gallo para q se escuchara mas o menos bien...

Se de otro juego q tb los traia, pero ahora no macuerdo cua era.. :? Sabe alguien??


Offtopic: yo prefiero el nombre de la version original Spaceballs. El llamarla La loca guerra de las galaxias me parece una cagada enorme. Y si, estoy bastante desekilibrado [burla2]
Escrito originalmente por fartuco
Bueno, otra pega esq lo oia muy bajo, tuve q bajar los fx y los comentarios del gallo para q se escuchara mas o menos bien...

Se de otro juego q tb los traia, pero ahora no macuerdo cua era.. :? Sabe alguien??


¿ A qué te refieres con eso ?
Bueno, pues ya esta, por fin lo hice:)

Por desgracia y por razones que desconozco las musicas me han salido desordenadas... Probare con el Crazy Taxi 2 que seguro que no me da ese problema. Estoy cambiando las pistas por temas de Pennywise y queda tremendoXD. A ver si remato la faena con un logo en la pantalla de arranque.

Si me queda bien ya os lo hare saber.
Escrito originalmente por FaSCoRP
¿ A qué te refieres con eso ?


Lo q pasaba era q las canciones q meti, se oian muy bajo, tanto q casi no se oian. No se xq era, pero tuve q poner al maximo la musica, y bajar los volumenes de los efectos y de los comentarios.
Lo q pregunto es si sabeis de mas isos q vengan con el inject y extract, ya q el programilla es especifco para cada juego

[ginyo] saludos
Que usen el inject hay bastantes, aquí algunos ejemplos:

Guilty Gear X JAP (Echelon)
Monaco GP2 JAP (OBL)
Kao the Kangaroo EUR (Echelon)
Nightmare Creatures II EUR (Pulsar)
Star Gladiator 2 JAP (Genius)
Toy Racer EUR (Echelon)
Toy Commander EUR (Genius)

y muchos otros...

Para Temjin: Me alegro que haya resultado. Yo no he tenido mucho éxito con la calidad sonora, ¿tú qué has usado, en base a 44kz estéreo o antes lo has pasado a 22 khz mono?

Un saludete a la muchachada [bye]
Hola, soy nuevo por aki y he probado el tutorial. Esta mu bien pero yo tambien he tenido un poco de problemas con la calidad sonora de algunas musicas, otras sin embargo van perfectas.
Deben estar en alguna frecuencia en concreto?
Por cierto, en los juegos que no tienen pistas de audio, ¿hay alguna forma de saber cuantas canciones necesita y añadirñas?

Un saludo
Hay algunas versiones compiladas del WAV2ADX que vienen con errores. Te recomiendo usar en su lugar el "ADXENCD". A mí me ha sucedido también.
En los juegos que no tienen pistas de audio, pues es justamente lo que he explicado aquí. Por lo general tienen un archivo solo de extensión .AFS que include todos los .ADX adentro.

Un saludo,
GRacias.

En cuanto a los juegos que yo me refiero que no tiene pistas de audio son los que están ripeados sin musica (Bust a move 4, Toy Commmander y otros). Estos juegos no tienen musica y lo que quiero es añadirles.

Por cierto, yo el programa que usé para pasar de wav a adx fue el adxencd
Escrito originalmente por John3d
GRacias.
En cuanto a los juegos que yo me refiero que no tiene pistas de audio son los que están ripeados sin musica (Bust a move 4, Toy Commmander y otros). Estos juegos no tienen musica y lo que quiero es añadirles.


Ambos juegos tienen release con pistas de audio, no hace falta que inventes nada :)
Vaya, pues el Bust a move 4 con musicas no lo he encontrado por ninguna parte...
Por cierto, el Soul Calibur no tiene ningun formato de los que mencionas en los archivos, ¿donde está el audio?

Gracias
No recuerdo el Soul Calibur en este momento. Siempre he jugado con el original, y como lee constantemente el disco, supongo que serán pistas normales de música (o eran los samples los que se leían al vuelo).

Si no tiene algún formato conocido, pues habrá que probar. Tengo entendido que en alguna release lo que hicieron fue "monoizar" el audio stereo para que entre en un CD.
Esta bastante bueno el tutorial.. yo solo sabia cambiarle la musica a los juegos con archivos adx (uno por tema) pero no tenia idea como hacerlo cuando estan en AFS.
la unica duda que me queda.. de donde saco los programas? (especificamente me refiero al adx_encoderhelper, los demas los tengo)
Me equivoque, este es el programa que no tengo: afslnk
Y no lo he podido encontrar en ninguna parte :(

(El foro no me dejo editar mi post anterior.. ni idea por que, por eso tuve que agregar este reply)
Yo creo que el audio del Soul Calibur son midis... Suena como el Ikaruga... ese sonido tan particular de una máquina arcade, como el que maneja la NAOMI [babas]

Vaya máquina tenemooooooooooooooooooos !!!!!!!!!!!!!!!

Propeller
Vaya, gracias, el bust a move 4 parece que sí hay alguien que lo tiene con cdda.... ¿Verdad?

En cuanto al soul calibur, las musicas me encantan así que seguiré con las de siempre, aunque cuando llevas un par de semanas juegando con él, te apetece oir otra cosa (del juego nunca te cansas)

Ahora me surge otra pregunta, ¿importa mucho el tamaño de la canción? me refiero tanto a tiempo que dura (si es mucho mas larga que la original) como al tamaño del archivo (la ram de la DC no es ilimitada desgraciadamente).

Por ultimo, a lo que comente en un post anterior... ¿que puedo hacer con las canciones que me salen distorsionadas? (grabe un juego segun el tutorial, y de 8 canciones que puse, 3 se oyen distorsionadas).
Supongo que el tamaño de la canción sí importa. Como desconozco si la Dreamcast levanta a RAM el tema, o si hace streaming "on the fly" yo he tratado de mantener las duraciones de los temas.

En cuanto a lo que dices de la calidad de sonido, me ha pasado con el programa WAV2ADX, trata de hacer lo mismo con el ADXENCD y seguramente no tendrás más problemas.
Fas, eso depende de cómo esté programado el juego... Si el archivo es ADX, seguramente descomprima en demanda, ya que una canción comprimida con ADPCM puede ocupar 12 veces su tamaño en memoria, y no cabría. Y total, con los tiempos que puedes manejar con el buffering, te da tiempo de sobra para acceder al CD/GD, que por cierto la consola/el juego casi siempre mantiene en marcha. Si cargara el archivo comprimido en memoria, necesitarías sólo para música 4 ó 5 megas, lo cual es inabordable.

Con lo cual, me inclino a pensar que normalmente se descomprime en demanda.

Otra cosa son los midis, que esos se los carga y se los interpreta al vuelo como le da la gana (hasta la gameboy puede hacer eso, juajua).

Propeller
Puede ser que los descomprima "en demanda", como dices tú. Pasa que todavía no me he animado a armar un Crazy Taxi con temas de 4 minutos c/u. Si te fijas en la duración de los que vienen originalmente, ninguno dura más de 2 minutos. Tal vez tenga un pequeño buffer o algo. Será cuestión de experimentar :)
Yo lo que quiero es ponerle musica hip hop al marvel vs capcom 2, que sus musicas es lo peor que veo en el juego [triston] pero no se que archivo es el que hay que modificar. Por favor si me echais una manita os lo agradeceré eternamente. [tadoramo]
No tengo ese juego a mano, pero si ves algún file grande con extensión .AFS puedes usar el mismo método que el del Crazy Taxi [cartman]
Ehhh alguien ma podria decir cual es el archivo o los o como le pongo musica al worms armagedon ein?
El Worms tiene pistas de audio CDDA, no son archivos (más fácil todavía de cambiar). [oki]
La release del Worms Armageddon no viene con un Inject de esos que Echelon hizo para facilitar la distribución? Creo recordar que era así. Por tanto creo que basta con reemplazar los mp3 por los temas que se quiera, no?
:-? toy enredao con esto no trae wave inject no tengo idea de como meterle los cdda al cd
heelp me please
en los que tienen Inject es solo cambiar el mp3 que viene por otro.
vamos que el nene juega al revolt mientras escucha a loquillo cantando cadillac solitario ;)
No creo que sea solamente eso lo del Inject. Si cambiamos los MP3 de música por otros, seguramente habrá que volver a parchear el IP.BIN para indicarle la posición nueva de arranque. Sería mucha casualidad que los MP3 de reemplazo duren lo mismo que los originales =)
si el mp3 dura mas no termina de sonar y si dura menos empieza otra vez a sonar
FaSCoRP escribió:No creo que sea solamente eso lo del Inject. Si cambiamos los MP3 de música por otros, seguramente habrá que volver a parchear el IP.BIN para indicarle la posición nueva de arranque. Sería mucha casualidad que los MP3 de reemplazo duren lo mismo que los originales =)


Yo creo que lo debe de indicar es el número de pista que debe leer y listo, sin controlar duración ni nada de eso, y la respuesta de Omitron me lo confirma. De todos modos, como tampoco sé nada, me baso en la pura intuición...
Pregunta tonta,yo es ke ando muy deskonektado hace ya bastante,y curioseando por aki y alla no enkuentro los programitas necesarios del tuto para hacerlo¿donde andan?,kada vez mas torpe... [buuuaaaa]

Saludossssssss
82 respuestas
1, 2