Editing Pikmin 2 custom music

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
''Pikmin 2'' uses a sequenced music format called BMS for some of its music. It is a powerful format containing commands that are executed by an interpreter built into the game that is, among other things, capable of basic maths on a limited number of registers and conditional branching, thus it is more powerful than MIDI. The following article will describe a few details that are important to creating a custom BMS file that actually plays in-game.
+
Pikmin 2 uses a sequenced music format called BMS for some of its music. It is a powerful format containing commands that are executed by a interpreter built into the game that is, among other things, capable of basic maths on a limited number of registers and conditional branching, thus it is more powerful than MIDI. The following article will describe a few details that are important to creating a custom BMS file that actually plays ingame.
  
 
= About BMS =  
 
= About BMS =  
The BMS files are located inside <code>/AudioRes/Seqs/Seq.arc</code>. <code>Seq.arc</code> is a [[RARC file (Pikmin 2)|RARC]] archive so you need a tool that can unpack and repack those archives.
+
The BMS files are located inside \AudioRes\Seqs\Seq.arc. Seq.arc is a RARC archive so you need a tool that can unpack and repack those archives.
  
The game uses 6 instrument banks in total but banks 4 and 5 (counting starts with 0) are used primarily for music, with the rest being primarily for sound effects. Which instruments can be played depends on the <code>wScene</code> files (wave archives) that are loaded. Use Dolphin's log with file monitoring enabled to figure out which <code>wScene</code> is loaded in a level.
+
The game uses 6 instrument banks in total but bank 4 and 5 (counting starts with 0) are used primarily for music, with the rest being primarily for sound effects. Which instruments can be played depends on the wScene files (wave archives) that are loaded. Use Dolphin's log with file monitoring enabled to figure out which wScene is loaded in a level.
  
Check [[Pikmin_2_custom_music/available_instruments|here]] for which instruments from which instrument banks can be played if a given <code>wScene</code> file is loaded:
+
Check here for which instruments from which instrument banks can be played if a given wScene file is loaded: [[Pikmin_2_custom_music/available_instruments]]
  
 
= Convert MIDI to BMS =
 
= Convert MIDI to BMS =
  
Download [https://github.com/RenolY2/flaaffy/releases/tag/v0.6.1 this flaaffy fork] which has some changes added to help the user with creating a working bms file.
+
Download this flaaffy fork which has some changes added to help the user with creating a working bms file: https://github.com/RenolY2/flaaffy/releases/tag/v0.6.1 (original author of flaaffy is arookas)
  
 
You can use the provided .bat files using drag&drop or you can use these commands in the command line:
 
You can use the provided .bat files using drag&drop or you can use these commands in the command line:
Line 16: Line 16:
 
mareep -errand cotton -input your_cotton.txt -output your_bms.bms</pre>
 
mareep -errand cotton -input your_cotton.txt -output your_bms.bms</pre>
  
The work routine is like this: First you convert the midi into cotton. Cotton is flaffy's assembly language that compiles directly into bms. In this form you can make changes to the instrument and bank values to have the music sound better ingame by editing the variables at the top. Once you are done with the editing you can convert the cotton txt file into bms and place it over a music file of your choice in the <code>Seq.arc</code> described above.
+
The work routine is like this: First you convert the midi into cotton. Cotton is flaffy's assembly language that compiles directly into bms. In this form you can make changes to the instrument and bank values to have the music sound better ingame by editing the variables at the top. Once you are done with the editing you can convert the cotton txt file into bms and place it over a music file of your choice in the Seq.arc described above.

Please note that all contributions to Pikmin Technical Knowledge Base are considered to be released under the Creative Commons Attribution-ShareAlike (see Pikmin Technical Knowledge Base:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)