GeminiImmortal Posted January 2, 2021 Posted January 2, 2021 (edited) Hello everyone! I'd like to share some of my knowledge on using riivolution to soft patch Pokemon Battle Revolution. First off, what does "soft patch" even mean? Basically, it refers to patching something, in this case a game disc, by altering the files of the game on the console as they are being read within the console's memory, rather than actually altering any of the files on the disc. The riivolution homebrew software allows us to do just that. I'll attach a copy of my patch for changing the music in battle revolution to this post so that you can follow along with me as I explain what the different parts of this patch do and the logic behind them. So, first we have the following lines: <wiidisc version="1" root="/custommusic"> <id game="RPBE" /> "wiidisc version" doesn't really have any significance here. "root" is the folder on the SD Card that riivolution is going to read from to get the files that will act as our replacements for the ones on the disc. Finally, "RPBE" is, as you might have guessed, the ID of the game disc. Next, we have the meat of our patch file (this is a small snippet): <section name="Custom Music"> <option name="Lagoon Col" id="Lagoon"> <param name="LagoonTheme" value="pokerev_music_demo_v2" /> <choice name="Fear (SayMaxWell)"> <param name="LagoonReplace" value="DoomFear" /> <patch id="LagoonMusic" /> </choice> <choice name="Marnie" value="Marnie" > <param name="LagoonReplace" value="Marnie" /> <patch id="LagoonMusic" /> </choice> </option> "section name" is simply the text that appears at the top of riivolution's menu when you boot it up. "option name" is also a part of this menu. It defines the name of a section of file patches on the riivolution menu. "param name" is what's known as a macro. A macro is, essentially, a placeholder name in the code for something else. In this case, our macro is acting as a placeholder for the exact name of the file on the disc, which is shown in the "value" next to it. "choice name" is the the name of one of the individual file patch choices on the riivolution menu. Finally, "patch id" identifies the name of the patch in the code so that we can reference it later on in our file replacement section (which is the next and last part ) Lastly, we have the actual file replacement section. Here's a part of it: <patch id="LagoonMusic"> <file external="{$LagoonReplace}_L1.brstm" disc="/sound/sound/{$LagoonTheme}.brstm" /> <file external="{$LagoonReplace}_TOURN.brstm" disc="/sound/sound/{$LagoonTheme}.brstm" /> So the first thing of note is that "patch id", which we used earlier. Next, we have the file replacements. The "underscored parts" (for example: "_L1"), are just a thing I do to keep the files on the SD Card organized. "disc" refers to the path of the file on the disc that we're changing. Not too bad, right? I hope this helps all of you aspiring modders out there! pbr.xml Edited January 2, 2021 by Epic Fail Mikey 1
CH4R Posted March 19, 2023 Posted March 19, 2023 I'm trying to replace music on my copy of PBR, and it replaces menu music just fine. but every time I load into a battle it gets stuck. help please?!
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now