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
Click here to go to the first staff post in this thread.  
Thread Tools
  #1    
Old December 4th, 2012, 08:01 PM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
So, after downloading a special program called "NITRO-SoundMaker", which is an in-house tool to develop music for the NDS, I discovered how to loop, and it was stupidly simple. Following on a hunch, I decided to ask someone to send me a MIDI, I added the needed data to it, send it back, and have him insert it. But, there was one condition: do not touch the .s file. And my hunch was correct: the file did loop. So, this tutorial is killing two birds with one stone, as the same official tools for converting MIDI files for use on the GBA use the exact same command to loop as the official NDS tools. And it's been overlooked for many years, so it's beyond me how this was totally missed. Anyways, let's get started.

You will need:
1. Your MIDI file
2. Anvil Studio
3. Official NDS/GBA conversion tools (Based on what system you want to use)
-MID2AGB and Sappy for GBA
-smfconv, and seqconv for NDS

Oh, and don't ask me where to find the Nintendo programs. I will not link to them.

Now, as I said, it's stupidly simple to loop, and I'm not kidding. These commands are built into both MID2AGB and smfconv, but they've been overlooked until today. Here's how to tap into the hidden potential:

1. Open your MIDI file in Anvil Studio, and view your MIDI in the Piano Roll Editor (View -> Piano Roll Editor)

Now, to start, go right to the end of the song, and head to the top of the window. Look for a button called "New cue" and click on it:



Now, since we're at the end of the file, we're going to add one special character to the box that shows up, simply, "]":



Now, here comes the hardest part, and it's not even that hard. In the piano roll editor, place the marker arrow at the point in the song you want the game to loop it to, then go back up to the top and add a new cue, "[":



And that's all! Now, export your MIDI file (MIDI-Format 0 File) with no spaces (Remember: MID2AGB doesn't like spaces in the filename!), and compile it using your choice of tools (mid2agb for GBA, or smfconv + seqconv for NDS), and insert. Don't even touch your .s file, as there is no need to, well, unless you need to adjust something. Have fun looping music!
__________________

Platinum Supporter Team Fail




"It is said that Charizard's fire burns hotter if it has experienced harsh battles."



Charizard


Last edited by Team Fail; January 25th, 2014 at 09:32 AM.
Reply With Quote
  #2    
Old December 5th, 2012, 04:07 PM
diegoisawesome's Avatar
diegoisawesome
Not the Script Help Thread
Community Supporter
 
Join Date: Dec 2007
Location: Goldenrod City, Johto
Age: 17
Gender: Male
Nature: Quirky
...Are you kidding me? All it took to loop it was THIS? Wow, and I've been breaking my back over this for a while now! Thanks!
__________________


My other resources:
My Website
diegoisawesome's MEGA-HUGE XSE Scripting Tutorial
diegoisawesome's Miscellaneous Finds
The Ruins of Alph Puzzles
Reply With Quote
  #3    
Old December 5th, 2012, 04:22 PM
giradialkia's Avatar
giradialkia
Community Supporter
 
Join Date: Apr 2009
Location: Ireland
Age: 20
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to giradialkia
Wait, what?

I can do that. This is brilliant, thanks very much for sharing this, however stupidly simple it seems to be. This just made things millions of times easier for me (and a lot of other people, no doubt). Great stuff :D
__________________

This one's called 'Red', and it's actually kinda Pokémon themed, so have a listen! Check out the links below for more stuff, if you like this!



This is the Doctor
This is my Soundcloud
This is my bandcamp

My Pokémon Y character is the same as my username. If you see me as a Passerby let me know! I tend to get a lot of Passerby requests and I often wonder if it's people from this site.
Reply With Quote
  #4    
Old December 5th, 2012, 04:37 PM
hinkage's Avatar
hinkage
Go make some new disaster
Community Supporter
 
Join Date: Aug 2010
Age: 18
The commands are built-in... And no one ever bothered to look? O_o
Reply With Quote
  #5    
Old December 5th, 2012, 04:56 PM
Chaos Rush's Avatar
Chaos Rush
im sexy and i know it
 
Join Date: May 2007
Location: Taylor Swift
Gender: Male
Nature: Adamant
Oh my god...haha

I used to do it the classic way, which was to separate every track in AnvilStudio and manually loop it with Notepad. Then I started doing it a slightly easier way, using a program I found called SFileEditor, which makes it so you don't have to separate each track, but you still have to manually choose every loop point for every track (but it automatically types it in for you, which was slightly helpful).

But now...we have this Thank you.
__________________

The Chaos Emerald ROM Base (it's gonna take awhile)

DS-style 64x64 Pokémon Sprite Resource NOW COMPLETED
Custom Sugimori-style Pokémon Sprite Resource IN PROGRESS


My PM box is full and I am choosing to keep it that way.

Non-Pokémon hacks I support:
Sonic Classic Heroes
Sonic 3 Complete
Reply With Quote
  #6    
Old December 5th, 2012, 05:28 PM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
Quote:
Originally Posted by diegoisawesome View Post
...Are you kidding me? All it took to loop it was THIS? Wow, and I've been breaking my back over this for a while now! Thanks!
It's definitely not easy work, I'll admit. So no problems! Anything to make hacking easier will be beneficial to many.
Quote:
Originally Posted by giradialkia View Post
Wait, what?

I can do that. This is brilliant, thanks very much for sharing this, however stupidly simple it seems to be. This just made things millions of times easier for me (and a lot of other people, no doubt). Great stuff :D
Thanks :D
Quote:
Originally Posted by hinkage View Post
The commands are built-in... And no one ever bothered to look? O_o
My thoughts exactly. I heard it was in the documentation, but I cbf to look lol. I just did a bit of research.
Quote:
Originally Posted by Chaos Rush View Post
Oh my god...haha

I used to do it the classic way, which was to separate every track in AnvilStudio and manually loop it with Notepad. Then I started doing it a slightly easier way, using a program I found called SFileEditor, which makes it so you don't have to separate each track, but you still have to manually choose every loop point for every track (but it automatically types it in for you, which was slightly helpful).

But now...we have this :) Thank you.
Oh man, that'd be hard. But yeah. Even having to manage the .s file was painful. Now, you barely have to even touch it, as all the loop commands are inserted automatically :D Isn't it wonderful?
__________________

Platinum Supporter Team Fail




"It is said that Charizard's fire burns hotter if it has experienced harsh battles."



Charizard

Reply With Quote
  #7    
Old December 5th, 2012, 07:15 PM
MrAPT1's Avatar
MrAPT1
That one guy who does stuff
 
Join Date: Dec 2008
Location: Under the truck
Age: 17
Gender: Male
You sir, are a real life saver. I always found looping to be an incredible hassle in the past, but now I can do it in under 2 minutes. This is so awesome! Thanks!
__________________
My Youtube channel. http://www.youtube.com/user/MrAPT1
Reply With Quote
  #8    
Old December 5th, 2012, 07:57 PM
mewmasterify's Avatar
mewmasterify
Actual Mew
 
Join Date: Apr 2011
Location: Faraway Island
Age: 14
Gender: Male
Nature: Quiet
umm i got a Error when i used this tutorial:
__________________
Reply With Quote
  #9    
Old December 5th, 2012, 08:06 PM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
Make sure all that's in the cue editor is either a [ or a ] at the proper position. Other than that, make sure it's using a valid filename. That's all I can think of.
__________________

Platinum Supporter Team Fail




"It is said that Charizard's fire burns hotter if it has experienced harsh battles."



Charizard

Reply With Quote
  #10    
Old December 6th, 2012, 04:40 PM
shinyabsol1's Avatar
shinyabsol1
Pokemon DarkJasper!?
 
Join Date: Aug 2010
Gender: Male
Nature: Calm
Awesome, this saves so much time! Thanks for sharing this!
Reply With Quote
  #11    
Old December 6th, 2012, 07:33 PM
阴魂君's Avatar
阴魂君
_(:зゝ∠)_ so busy i am…
 
Join Date: Nov 2012
Location: China
Age: 18
Gender: Male
Nature: Brave
OMG it's more easier than other ways.
Reply With Quote
  #12    
Old December 7th, 2012, 02:39 PM
tajaros's Avatar
tajaros
Hi I'm dawg
 
Join Date: Apr 2012
Location: Philippines
Age: 15
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to tajaros
What The-?

This made things more freaking easier thanks TF for sharing this! :3
__________________
Reply With Quote
  #13    
Old December 11th, 2012, 05:30 AM
Kyain's Avatar
Kyain
The Sky High Pokémon
Community Supporter
 
Join Date: Sep 2008
Location: Pennsylvania
Gender: Male
Nature: Jolly
Send a message via Skype™ to Kyain
Holy crap

If people don't use this tutorial to insert music, now that it's been made easier than ever, then I'll cry. Seriously, this is awesome!
__________________

Silver-tier supporter Kyain's Signature
There's nothing here...lol
My stuff:

Space for rent


lalalalala i can't hear you. FACT.
[context: facebook]
Quote:
over a milliard of users had no access
[1:41:11 PM] Khilia-chan~: they all were forced to have a life




Reply With Quote
  #14    
Old December 13th, 2012, 07:18 PM
VERGUNDAI's Avatar
VERGUNDAI
RomHacker, Unity 3D Maker
 
Join Date: Dec 2009
Location: Pokemon Universe :)
Age: 18
Gender: Male
Nature: Quiet
Quote:
Originally Posted by Final Destination View Post
Holy crap

If people don't use this tutorial to insert music, now that it's been made easier than ever, then I'll cry. Seriously, this is awesome!
What's more awesome is that imagine if you can make a program that does all of this.
__________________
Vergundai_ace_gailon
Reply With Quote
  #15    
Old December 13th, 2012, 07:21 PM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
Quote:
Originally Posted by VERGUNDAI View Post
What's more awesome is that imagine if you can make a program that does all of this.
If you have to get a program that does something that's this easy, then my head could not hit a desk hard enough. This is about as easy it will get and requires minimal effort.
__________________

Platinum Supporter Team Fail




"It is said that Charizard's fire burns hotter if it has experienced harsh battles."



Charizard

Reply With Quote
  #16    
Old January 2nd, 2013, 04:46 PM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
Took some advice from Chaos Rush and edited in the "(MIDI-Format 0 File)" export option in the post. If you're having issues with converting, check it out once more and see if it's working for you. c:
__________________

Platinum Supporter Team Fail




"It is said that Charizard's fire burns hotter if it has experienced harsh battles."



Charizard

Reply With Quote
  #17    
Old January 11th, 2013, 02:50 PM
Dylanrockin's Avatar
Dylanrockin
Mysterious Trainer
 
Join Date: May 2011
Gender: Male
Nature: Timid
So I don't need to break up the tracks in the song at all? Or do I still have to do that?
Reply With Quote
  #18    
Old January 13th, 2013, 08:29 AM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
Quote:
Originally Posted by Dylanrockin View Post
So I don't need to break up the tracks in the song at all? Or do I still have to do that?
Nope. You just open the MIDI as is with all the tracks. MID2AGB will automatically place the loop commands in each track for you.
__________________

Platinum Supporter Team Fail




"It is said that Charizard's fire burns hotter if it has experienced harsh battles."



Charizard

Reply With Quote
  #19    
Old February 2nd, 2013, 11:52 PM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
Community Supporter
 
Join Date: May 2007
Location: Philippines
Gender: Male
Nature: Careful
Well, goodbye with the old, and hello to the new~ :D

Thanks for sharing this, as this will be a very big help in editing music.
__________________
3DS FC: 0061-1111-6462
SV: 1364 | Rock Safari: Dwebble, Corsola and Barbaracle
Reply With Quote
  #20    
Old March 24th, 2013, 11:20 AM
PKMN Trainer S
Unhatched Egg
 
Join Date: Feb 2013
Gender: Male
Hey, anybody knows how to make some tracks sound right? I know you can import instruments but...
__________________
Why , you ask? Cause.
Reply With Quote
  #21    
Old April 23rd, 2013, 05:58 AM
Eren Jaeger's Avatar
Eren Jaeger
Pianoist
 
Join Date: Apr 2013
Location: EARTH
Gender: Male
Nature: Serious
So this is how it's done? I'm having hard time looping.. well, thanks for sharing this! I'm a music hacker that's why it's a big big big thanks!
__________________
Music is art
Reply With Quote
  #22    
Old April 25th, 2013, 09:54 AM
xGal
du bist n00b
 
Join Date: Nov 2011
Location: A tree
Gender: Male
Nature: Bold
Quote:
Originally Posted by Team Fail View Post
So, after downloading a special program called "NITRO-SoundMaker", which is an in-house tool to develop music for the NDS, I discovered how to loop, and it was stupidly simple. Following on a hunch, I decided to ask someone to send me a MIDI, I added the needed data to it, send it back, and have him insert it. But, there was one condition: do not touch the .s file. And my hunch was correct: the file did loop. So, this tutorial is killing two birds with one stone, as the same official tools for converting MIDI files for use on the GBA use the exact same command to loop as the official NDS tools. And it's been overlooked for many years, so it's beyond me how this was totally missed. Anyways, let's get started.

You will need:
1. Your MIDI file
2. Anvil Studio
3. Official NDS/GBA conversion tools (Based on what system you want to use)
-MID2AGB and Sappy for GBA
-smfconv, and seqconv for NDS

Oh, and don't ask me where to find the Nintendo programs. I will not link to them.

Now, as I said, it's stupidly simple to loop, and I'm not kidding. These commands are built into both MID2AGB and smfconv, but they've been overlooked until today. Here's how to tap into the hidden potential:

1. Open your MIDI file in Anvil Studio, and view your MIDI in the Piano Roll Editor (View -> Piano Roll Editor)

Now, to start, go right to the end of the song, and head to the top of the window. Look for a button called "New cue" and click on it:



Now, since we're at the end of the file, we're going to add one special character to the box that shows up, simply, "]":



Now, here comes the hardest part, and it's not even that hard. In the piano roll editor, place the marker arrow at the point in the song you want the game to loop it to, then go back up to the top and add a new cue, "[":



And that's all! Now, export your MIDI file (MIDI-Format 0 File), and compile it using your choice of tools (mid2agb for GBA, or smfconv + seqconv for NDS), and insert. Don't even touch your .s file, as there is no need to, well, unless you need to adjust something. Have fun looping music!
yo TeamFail thanks man but i wanna tell you something...

It didn't work to me, 'til i changed the song groups (in sappy) to 1: 300 2: 300

You gotta write that if you want
__________________
Reply With Quote
  #23    
Old April 27th, 2013, 07:01 AM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
Quote:
Originally Posted by galooloo View Post
yo TeamFail thanks man but i wanna tell you something...

It didn't work to me, 'til i changed the song groups (in sappy) to 1: 300 2: 300

You gotta write that if you want :P
That's kinda given. This is just for looping, not inserting.
__________________

Platinum Supporter Team Fail




"It is said that Charizard's fire burns hotter if it has experienced harsh battles."



Charizard

Reply With Quote
  #24    
Old January 22nd, 2014, 05:56 PM
The_Show
Banned
 
Join Date: Jan 2012
Location: Carracosta Rock, Akmin Region
Gender: Male
Nature: Sassy
Quote:
Originally Posted by Team Fail View Post
Make sure all that's in the cue editor is either a [ or a ] at the proper position. Other than that, make sure it's using a valid filename. That's all I can think of.
Hello Team Fail, I am experiencing the same problem as the good sir above.

I have put the "] and [" in the right places. What do you mean it's a valid filename, other than the obvious? I've changed the filename twice and have made absolute sure its an .S file. What should I do?



EDIT: I figured it out, sort of. I just went back and "re-did" the whole process, and it came out fine. Btw, great job Team Fail. *thunderous applause"
Attached Images
File Type: png Capture.PNG‎ (21.8 KB, 3 views) (Save to Dropbox)

Last edited by The_Show; January 22nd, 2014 at 06:05 PM. Reason: figured it out
Reply With Quote
  #25    
Old January 25th, 2014, 09:33 AM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
Quote:
Originally Posted by The_Show View Post
Hello Team Fail, I am experiencing the same problem as the good sir above.

I have put the "] and [" in the right places. What do you mean it's a valid filename, other than the obvious? I've changed the filename twice and have made absolute sure its an .S file. What should I do?



EDIT: I figured it out, sort of. I just went back and "re-did" the whole process, and it came out fine. Btw, great job Team Fail. *thunderous applause"
Yeah. I added a small portion to the tutorial. Your problem was because you had a space in the filename.
__________________

Platinum Supporter Team Fail




"It is said that Charizard's fire burns hotter if it has experienced harsh battles."



Charizard

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 06:22 PM.


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.