[PS2] Changing game music by dragev at 3:04 PM EDT on August 27, 2011
Hello there.
I was wondering if it's possible to change music of a PS2 game? Like: Replacing the background music on a map for whatever game with another background music? If that's possible, could anyone in here please tell me how?
I'm fairly sure such a thing can be done, but it really depends on the game and how it handles the music. A game might just have a simple system of asking the system to start playing a streaming* file, or it might have some obscure and arcane sound driver for sequenced* music that is completely unintuitive and nearly impossible for even the brightest minds here to figure out.
So it could theoretically be as "simple" as making a code for something like Action Replay/Gameshark or it might require you to actually alter the game files in some way, which would mean having to create (or, cough, obtain) a backup which you would need to either play via emulation or by tricking your PS2/3 somehow (and that's assuming you've figured out how to change the game to do what you want).
Of course, if you actually desire to insert new music into the game, you're definitely going to have to alter the files of a backup, and make sure you don't make any mistakes in replacing the music you don't want in game any more (which may require a lot of work).
The sad truth is that it's likely not going to be quick or easy to do what you're asking, no matter what game you're thinking of. And you're probably going to have to tell us the game (and how you want to change the music) before anyone here can offer real help.
---
*Just in case you're not familiar with the distinction between streaming and sequenced music, it's basically: Sequenced - Anything similar in nature to the MIDI concept, where the software and hardware read a "sequence" of notes and other musical instructions, calling short instrument "samples" (like a piano, guitar or drum hit - short waveforms) from a "library" in the game data. This was what most games used up until the PS2/GC/Xbox era, and was still pretty common among PS2 and DS games (and will probably continue to be used here and there in the future). Early systems (such as the NES or Genesis) used something called FM synthesis to create music even without conventional waveform samples, since there wasn't much space to put them in (although some games made use of them).
Streaming - An actual waveform of music (think WAV files), usually encoded in a form like mp3 or ogg (although most games use more specialized formats to suit their needs). This is necessary for recordings of live music (like an orchestra performance), tracks which have someone singing (although there are some sequenced games which "cheat" to mimic the effect), and so on. The redbook audio music common in Turbo CD/Sega CD/etc games is another form of streaming audio.
For example, most of the "in-game" music in Final Fantasy XII is sequenced, but certain tracks, like cutscenes, use streaming music. Both ways of playing music have their advantages, although streaming (other than CD audio) wasn't really viable until the mid 90s but is basically the dominant form of music this generation (since pretty much all hardware has both the disk space and the RAM to store a lot of streaming audio). There's also various ways to blend the two concepts to interesting effect, but that usually requires more effort than sound teams put into games. :P
Think of it kind of like the difference between an old record album (streaming) versus the specialized note paper that is "read" by a player piano (sequenced).
Also, I should probably try to actually sleep at night, so I don't end up spending time just writing out stuff like this on the hope that it might help inform someone.
er, sorry, but I don't use MSN or any other personal message application. I've grown extremely neurotic (and occasionally emotionally volatile) over the past decade, and it's difficult if not impossible for me to feel comfortable conversing that way now. I have some issues.
Although I have to admit, I'm honestly not sure what you can express to me in MSN that you can't express here. This forum isn't very formal or strictly moderated. Simply tell us all the information and questions you have at this point, we'll respond to those, and this back-and-forth can continue until it reaches a logical conclusion (which may or may not be satisfactory, but should be fairly peaceful).
If the game is streamed, it might be possible to replace the music. If it's sequenced though, the difficulty to replace sequenced music is significantly more difficult. Enough such, that I'd consider it unrealistic (for a PS2 game).
Do you have the game (dumb question, I know)? If so, does it have a directory structure? What are some of the names of the directories? Can you find anything (directories or files) that looks like it might be related to music? A "BGM", "Sound", "Audio" or possibly even a "Music" directory? Or files that have "BGM_" or something in the file name?
Basically, you have the game, I don't. I don't want to download it (and I couldn't download it even if I wanted to) just to look at its directory structure. If you have any hope of replacing audio files on the PS2 game, then you should be smart enough to find any audio/music related files on the disc.
On the other hand, if the game is just one really massive file, then it's using a Virtual File System (VFS), and that requires more work, and makes it more difficult to replace the music (even if it's streamed). It's also possible that nothing shows up at all, in which case you need to create an ISO of the disc, and view it in a HEX editor (or if you're lucky, you can treat it as a VFS (which almost certainly still requires looking at it in a HEX editor) and use some tools to pull out data) to figure out patterns, and pull out the audio data.
Anyway, once you have the audio data, then you have to figure out what format it is, and convert your WAV files to that format (the formats need to match, if you're going to replace the files). Not all formats have the tools necessary to convert WAV files to that format. If the format can be played though, then you can theoretically create an encoder, using the decoder (most likely VGMstream) as your "source" of how the file/format should be constructed. That requires a lot of trial and error though, and doesn't always work.
Once you've converted your WAV files to the appropriate format, then theoretically all you have to do is overwrite the original files on the disc, with your new ones (change the file names of your new files to match/overwrite the files on the disc), and create a new ISO/burn the disc. If it's using a VFS though, not only do you need to figure out the format for the audio files, but you'll also need to figure out the format for the VFS, so that when you "insert" your new files into it, you don't causes clashes, or incompatibilities.
Basically, unless it's super easy ("drag+drop your files onto the ISO and you're done!"), you'll most likely have to figure most of this out yourself. Even if someone were willing to help, we can't unless we have the original game data (be it the disc, or an ISO). I don't have it, and you do, so you'll have to be the one who finds the relevant files, or hope someone else comes along who has the game.
Hopefully this "crash course" in game rips is somewhat useful to you. Mouser X over and out.
Q: What are some of the names of the directories? A: The audio file is a BGM.BNS. Don't know if the BNS is the audio file format. If it isn't, how would I find it out?
When you're saying "overwriting the files on the disc", Do you mean that I shall make an ISO out of the CD/DVD, then overwrite it with the edited one, and burn it down on a new blank CD/DVD? If so, I can do that.
How big is the "BGM.BNS" file? Is it a few hundred MB? If it's only say, 30 MB, then you're out of luck. Either the game isn't streamed, or you haven't found all the files. On the other hand, if it's more than 100 MB in size (preferably 500 MB for a large PS2 game that's fully streamed), then you might be onto something. If the file is fairly large, then it most likely contains the game's music. However, you then run into the problem of it being a VFS, and would have to figure out how to extract the individual music tracks out of the BNS file.
On the other hand, if the file is fairly small (30 MB or less is pretty small), then the game is most likely sequenced (for a sequenced game, 30 MB is pretty big actually. There are other sequenced games which use a larger "sound library", but they either have a lot of music, or pretty high quality audio samples). If it's sequenced, the amount of reverse engineering necessary to replace the music is unrealistic for someone of your skill level. If you had the skill level necessary to reverse engineer and replace the audio files, I am confident that you wouldn't be on this forum asking us how to do it. You'd be doing it now, and then posting your results, telling us how to do it.
If the file is fairly large (even 30 MB), upload it somewhere (or even a portion of the file), and someone (not me) might look at it. If you're really lucky, someone might even be able to write an extractor for you. From there, though, things get difficult. You'd need to figure out how to "import" changes into the BNS file. Using the source code of the extractor (if one is produced), you might be able to figure this out. But often not, because extractors rarely care about how the "storage" file is organized. Those programs only want to get at the data, so sometimes they simply look for patterns (headers of the audio files) and pull out the results of those patterns. Thus, although they can find the data, some of the extractor programs do essentially nothing to actually look at the organization of the VFS, so using it might not be beneficial for "importing" changes (though, sometimes the way the VFS is assembled requires that the extractor actually read the "table of contents" of the VFS. In that case, the extractor might actually be useful to create an "importer" tool).
If it's a sequenced game, an extractor won't be terribly useful to you. Nonetheless, you should upload the BGM.BNS if you want someone to look at it, regardless of size (though, for larger files, all you need is to upload a portion, if you can).
Anyway, hopefully you can find this useful. It seems that at this point, I won't be able to offer any more advice. Hopefully (for you) someone else steps in. Mouser X over and out.
Q: How big is the "BGM.BNS" file? A: Sorry, my bad. The filename is LINKBGM, but there's two of them which is LINKBGM.IDX (736 byte), and LINKBGM.BIN (224 MB). Which one of them contains the soundtracks of the game, and how would I replace them with others?
Dynasty Warriors 4: Xtreme Legends uses BGM.BNS (326 MB) as the filename, which contains the game's soundtrakcs. I mixed Dynasty Warriors 5 with Dynasty Warriors 4: Xtreme Legends.
With files of that size, there's a really good chance it's streamed (I'd be surprised if it's not). Upload the *.IDX, and the *.BIN (or at least a portion of it) somewhere so someone can look at them. If my guess is correct, the *.IDX is the index file, which tells you how to find the individual files within the *.BIN.
As for replacing files, you need to understand how the VFS is constructed, so that you can alter it without the game complaining. I cannot help you on this, as I have never had any progress in deconstructing a VFS. Your only hope is to learn how to do it yourself. You can try getting on IRC and asking for help there, but it's very unlikely they'll do it for you. You can either get an IRC client (mIRC chat is popular, as is xChat) and join the server irc.foreverchat.net and get on the room #console_stream or you can click this link. Keep in mind that not everyone there is necessarily friendly (most of them are friendly), but that they are usually helpful.
The people there will (most likely) help you extract the music from the *.BIN file, but as I said, you'll have to figure out how to import custom stuff on your own. They'll likely provide pointers and advice, but they're more interested in the music, than they are in replacing it.
Last, you should either look at VGMToolbox, or better yet, learn how to use it. The *.IDX extension looks really familiar to me, so I suspect the people on that channel have dealt with it before. If they have, there's likely an extractor already in existence for that format. VGMToolbox was made to be used for VGM manipulation, so it likely has said extractor built into it. Even if it doesn't, due to its diverse abilities, it can probably be used to extract the audio anyway. Nonetheless, as far as I know, VGMToolbox can't be used to import custom files back into the VFS. But if you can learn/teach yourself how the VFS is organized, then theoretically, you can replace the files yourself.
Good luck, and get those files uploaded somewhere. How do you expect anyone to help you, if you withhold the most important part of the question? No one can help you, if you don't give them the information they need to be able to help you. Mouser X over and out.
I noticed that as soon as I loaded this page.... (so, before I read your post) Bah.... Fixed now. I even read over it first (though, obviously I didn't notice there was an "x" where there should have been a "b"). If this guy does come on IRC, hopefully he's not another GI.... He seems nice enough, so I wouldn't think so. Mouser X over and out.
I have asked manako about this, and he said to me that he knows how, and made his own extractor for Dynasty Warriors series using "LINKBGM" as their filename for the soundtracks. I appreciated it, but he's too much busy to help me with it. So, if anyone of you would know of, is there anyone in here or on the IRC chat (except manako) that would have time or have the knowledge to help me with this? If those files are needed, then I'll upload them on a site (MediaFire) right away!
Anyone there? I've tried to go on IRC to get help there, but they aren't responding. What should I do then? I'm totally a newbie at this, so what should I do? I'll appreciate your help, if you're able to help me with this.