The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Tools, Tutorials & Resources
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Tools, Tutorials & Resources Various tools to help you develop your hacks can be found here.
New threads in this forum are to be approved by a moderator before they are displayed.


Reply
 
Thread Tools
  #1    
Old October 2nd, 2008, 11:59 PM
TRANSPARANCY's Avatar
TRANSPARANCY
Beginning Trainer
 
Join Date: Sep 2008
Hey all, I am TRANSPARANCY and I will be giving you a tutorial on how to Edit the voicegroups of a MIDI. Magnius has pretty much covered everything on FR and LGs' Voicegroups so I will give credit to him for the information. Now... onto the actual tutorial.

There will be a few things you need... all can be found on google and PC.



Documents/Programs

Magnius' "A document on Fire Red voice groups and the instruments they play."
Magnius' "Guide to Pokemon Music Hacking"
2x CLEAN Pokemon FireRed ROMs (FR is the one I am using)
Anvil Studio (google it, I will provide a link later)
Sappy+mid2agb (can be found in Magnius' "Guide to Pokemon Music Hacking" thread)
A Pokemon GB/C/A/(DS?) MIDI (A GBC one is supplied for you in the link)
winRAR
Free Space Finder (FSF?): Optional Tool when looking for free offsets in a ROM.

Other
Level of skill needed: 2/5
Good Listening Skills
The ability to read.

and thats pretty much it.

(Since I lack the15 posts needed for links and images, i will need to get 15 posts then post images to help you, but for now, i will explain it in as much detail as i can before it gets too confusing.

Level of skill needed: 2/5

Lets begin:





Part 1: Downloading and installing Anvil Studio.

To get Anvil Studio... type in Anvil Studio in Google and download it. Install Anvil Studio in C:/Program Files/Anvil Studio. Once it has finished installing shortcut to Anvil Studio should appear on your desktop. If not go to C:/Program Files/Anvil Studio, copy the .exe file, right click on your desktop and say paste shortcut.
Thats one part done.




Part 2: Downloading and installing Sappy and mid2agb.

Now head over to Mangius' Music Hacking thread and there should be a link to getting Sappy and mid2agb right near the top. Click on it and download the .rar file and extract it with winRAR. Again Place the file Rom_tools on the desktop. Go into Rom_Tools/mid2agb and copy everything in the folder. Paste this stuff in the Sappy folder. You can now delete the mid2agb folder. You can choose to rename the folder Rom_tools to something else.




Part 3: Getting a MIDI

For this you will need to so web hunting and it can take awhile to find the right midi file, something not too large like the ones from vgmusic as those are more remixes than rips.

I have provided you with one in the attachments.
Drop this MIDI into the rom_tools/sappy folder.




Part 4: Editing the MIDI file.

Editing the MIDI file is easy, just follow these simple steps:

1: open Anvil Studio.
2: Open your MIDI by going to File->Open
3: Select your MIDI, copy it and paste it again. Rename it so you know it is the edited one and open it.

Now this part will be confusing without images so i'll try and explain it in as much detail as possible.


You SHOULD appear at a screen with a table set out like this:

[] | Track Name | Type | on | Device| Channel | Instrument | Vol| Pan | FX | Time Shift|----->|


[]= the current track viewed

Track Name= name of the track

type= If it is just an instrument/rhythm/audio/audio24
**Instrument= Basic beats
**rhythm/audio/audio24= useless to us.

Device= Should be set to General MIDI

Channel= Keeps track of what track is what, a max of 16 tracks can be used in a MIDI. Can not have the same track.

INSTRUMENT= The most important part of this tutorial is the instruments, instruments are used by the MIDI device to identify a sound such as a flute. Only certain MIDI instruments will work with a GBA ROM.

Vol= The volume of the track, sometimes the tracks volume changes so it is good to leave them as is.

Pan= If the sound comes out of the left, right or both speakers, again some tracks panning changes so it is good to leave them as is.

FX= Effects, no important use in a GBA MIDI.

Time Shift= Audio Tracks only.

----->= The track itself.


Ok now that stuff has been explained, the only thing we will need now is the INSTRUMENT Collum.
If you wish to edit and experiment with the MIDI, then go to View-> Piano Roll Editor and you will see the track.

Now open up Magnius' "A document on Fire Red voice groups and the instruments they play." thread and scroll down to a offset, we will be using the offset 0x490574.

Now this is where your listening skills come in: Click on the second track, go to the instruments column and click on the instrument called "Acoustic Grand". A new window should now open and a list of instruments will appear. Now refer to Magnius' Chart and find an instrument... lets pick instrument number 24 from the chart... now since the chart and Anvil Studios one is off by 1, go

X+1=Y
X= The Instrument Number from the chart.
Y= The answer given from adding 1 to X/[]

So select number 25 and say OK. The tracks instrument has now been changed.

Now do this with every other track, by using the above equation and the chart.

Test it out in Anvil Studio and say file->save when you are satisfied.




Part 5: Using mid2agb

(Magnius has covered this part a bit more than myself.)

All you need to do is get your midi and make sure it is in the Sappy folder. Drag the MIDI over mid2agb and a file with your midi track should appear with an .s extention on the end.

If not then it is probably the wrong type of MIDI file. Sometimes this works: Open the MIDI in Anvil Studio, go to Export Midi-Format 0 file, then save it in the Sappy folder. If it then still not works, then it must be the MIDI itself.




Part 6: Using Sappy

(Magnius has covered this part a bit more than myself.)

I will put it simple for you people.

1. Open up Sappy then open up your FireRed ROM. Make sure you have 2 copies of it.
2. Go to the dropbox and select "Pokemon Theme".
3. Now go to Tasks -> Assemble Song
4. Click on the [...] box and search for your .s file
5. Place the offset 0x490574 into the box that says "voicegroup offset"
6. If you know how to use Free Space Finder then use that tool and find a free offset in the ROM. (If you don't know how to, im pretty sure that there is a tutorial somewhere on PC about FSF) If not, type in 0x800000 and say ASSEMBLE THAT UGLY THING! Then say Yes to the next message.
7. Press Play. Notice how it sounds different from Anvil Studio? Does it sound like some ancient Polyphonic ringtone? This is how it will sound in your ROM. You can continue fixing it but you should always use a clean ROM. If nothing happens when ingame then follow these steps.

8. Go to Tasks-> Export Tracks. Tick all the tracks and type in $TTitle Screen.
9. Go and open your clean FR ROM
10. Go to Tasks -> Import Tracks. Tick all the files with a file like this 0Title Screen, 1,2, ect.
11. Make sure that the Voice Group offset is set to 0x490574 and the Track Offset is set to 0x800000 or the Offset you found with FSF.
12. It should now work in your ROM.

Well... Thats it. Any questions don't hesitate to ask me and as soon as i get 15 posts, ill update the thread with images.

Again in the attachment i will provide you with a MIDI Track: The Title Screen from G/S/C

TRANSPARANCY
Attached Files
File Type: rar PKMN Crystal Title Screen.rar‎ (1.7 KB, 76 views) (Save to Dropbox)
__________________


Last edited by Spherical Ice; April 15th, 2010 at 07:58 AM.
Reply With Quote
  #2    
Old October 3rd, 2008, 08:44 AM
AmineX's Avatar
AmineX
Music Expert
 
Join Date: Feb 2008
Location: Algeria
Age: 25
Nature: Gentle
Send a message via ICQ to AmineX Send a message via Windows Live Messenger to AmineX Send a message via Skype™ to AmineX
Awsome tut i see u use same way i use that good,instrumental adaptation for gba voices groups.
__________________
AmineX


All my pokemon music related videos here:
http://www.youtube.com/user/LHV1?feature=mhee
Reply With Quote
  #3    
Old October 3rd, 2008, 09:20 AM
Zeikku™'s Avatar
Zeikku™
Johto remaker
 
Join Date: Aug 2007
Location: London, England
Age: 22
Gender: Male
Nature: Naughty
Send a message via Windows Live Messenger to Zeikku™
It's good, Images for the newbs would help
but, I already know how to do this..
__________________

Follow me on Twitter by clicking on my signature.
Reply With Quote
  #4    
Old October 3rd, 2008, 10:00 AM
Master_Track's Avatar
Master_Track
ROM Reaverz Scripter
 
Join Date: Mar 2008
Location: Austria
Age: 21
Gender:
Nature: Brave
Send a message via Windows Live Messenger to Master_Track
It's kinda logical though, if you can count 1 +1 together...
Magnius reffered to Anvil Studio as well, and he posted document with offsets and instruments, so it's logical that u need to open the midi in AS and adjust the instruments.
(that's no negative critism, I just think it wouldn't be hard to find out alone )


But anyway, it's well explained and everything's summed up here. Nice work

also, I think you could post links to your images and just replace the http with hxxp, the user won't see the image directly but if they replace the hxxp with http they can open the images in another tab
__________________

*Busy with school*

Reply With Quote
  #5    
Old October 3rd, 2008, 10:52 AM
TRANSPARANCY's Avatar
TRANSPARANCY
Beginning Trainer
 
Join Date: Sep 2008
@ master_track: But still you would prefer something like this than some1 nagging at you all day wouldn't you?

Thanks for all yr feedback, i gather you understood it well.

I know this sounds noobish of me but can some1 tell me how i can find an offset using a HEX editor?
Cause I kinda forgot how to search for them. BTW that will help write my next part of the tutorial.
__________________

Reply With Quote
  #6    
Old October 3rd, 2008, 12:56 PM
cooley's Avatar
cooley
///Keepin' it simple
 
Join Date: Feb 2007
Location: United States
Age: 19
Gender: Male
Nature: Impish
Send a message via Windows Live Messenger to cooley Send a message via Skype™ to cooley
Quote:
Originally Posted by TRANSPARANCY View Post
@ master_track: But still you would prefer something like this than some1 nagging at you all day wouldn't you?

Thanks for all yr feedback, i gather you understood it well.

I know this sounds noobish of me but can some1 tell me how i can find an offset using a HEX editor?
Cause I kinda forgot how to search for them. BTW that will help write my next part of the tutorial.
Depending on your ROM size, you'd need to use the "08" which points to any offset from 0x0 - 0xFFFFFF

16 MB - (offset backwards) 08
Example - 123456 = search for 56 34 12 08(no spaces)

32 MB - You should use 09 instead of 08, simple.
__________________

Reply With Quote
  #7    
Old October 26th, 2008, 09:20 PM
NTA's Avatar
NTA
Where?
 
Join Date: Nov 2007
Nature: Adamant
so do we change instrument for the first track tooo?

i always get runtime error 13" type mismatch error for sappy 05 and and sappy 06 wont work at al on my pc i have vista and i couldnt get it to wooork on my friends XP computer
__________________


Last edited by NTA; October 26th, 2008 at 11:05 PM. Reason: Your double post has been automatically merged.
Reply With Quote
  #8    
Old November 22nd, 2008, 12:37 AM
TRANSPARANCY's Avatar
TRANSPARANCY
Beginning Trainer
 
Join Date: Sep 2008
sorry for the late response =/

Well it depends, I'd just experiment with different MIDIs to see which 1's work. Also with the thing of the first line, if its blank, i just leave it.

With the runtime error, i would have no idea because I'm using Windows XP.

I will be getting around to posting images for the tutorial soon, hopefully it will help even more.
__________________

Reply With Quote
  #9    
Old November 23rd, 2008, 04:47 PM
AmineX's Avatar
AmineX
Music Expert
 
Join Date: Feb 2008
Location: Algeria
Age: 25
Nature: Gentle
Send a message via ICQ to AmineX Send a message via Windows Live Messenger to AmineX Send a message via Skype™ to AmineX
That a great job you did there !!!
now i remember do you know mid editor powerful than anivil studio?
__________________
AmineX


All my pokemon music related videos here:
http://www.youtube.com/user/LHV1?feature=mhee
Reply With Quote
  #10    
Old November 27th, 2008, 05:48 PM
NoriakiZ's Avatar
NoriakiZ
Rookie
 
Join Date: Jul 2008
Nature: Timid
I only get assemble halted. When I press play, Sappy just closes. Can anyone tell what am I doing wrong?
Reply With Quote
  #11    
Old November 27th, 2008, 07:26 PM
AmineX's Avatar
AmineX
Music Expert
 
Join Date: Feb 2008
Location: Algeria
Age: 25
Nature: Gentle
Send a message via ICQ to AmineX Send a message via Windows Live Messenger to AmineX Send a message via Skype™ to AmineX
Off course there 2 probability:
1.The mid is contain unsuppoted byte by sappy-[in this situation just play the song ingame. (by the emulator)]

2.The mid is contain alot of irigularties-[Not supported at all by sappy and by the game.]

3. 100 Posts XD
__________________
AmineX


All my pokemon music related videos here:
http://www.youtube.com/user/LHV1?feature=mhee
Reply With Quote
Reply
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 10:12 AM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.