So I'm about to start scoring this new game prototype for a kickstarter campaign and they want authentic sounding chip music. So I got to thinking about maybe using an actual chip format. If I remember correctly the desktop version of Cave Story actually came with a copy of Famitracker included and it would just cue up certain files in the background as you played the game. I'm no coder, can anyone shed some light on this?
wasn't cave story pxtone? could be wrong about that one..
and someone else will answer your question. ha.
Yeah, I know the guy coded his own tracker but for some reason I remember Fami being included in a version I had. I could be wrong though.
You can always export as a wav file, and convert that to whatever you need, as well as exporting your NSF from a player such as rainwarriors nsfplay.
only other idea I have would be buy a powerpak and NES (If you don't own either one already) and do a live recording that way, or try and get in touch with someone who can record it from real hardware for you!
Hope that helps~
No, Cave Story did not use an NES format. Pixel himself actually created the sequence editor and file format for his game. The editor is called OrgMaker. The music player with the game soundtrack is called OrgView (Org stands for Organya, I believe).
I don't know how he handled activating the in-game music, and I don't know the source of the sounds he used in the music (most likely he made them himself).
I played a Megaman fangame (Megaman Revolution) that used NES samples in a single .it module for the entire soundtrack.
Last edited by SketchMan3 (Apr 8, 2013 6:51 am)
Authentic sounding just means it has to sound like the real thing. You can still use Famitracker or whatever else strikes your fancy and export the result as a wave file. Unless the dev specifically asks for a given format, I think you can assume he expects the shit to be delivered in standard wav/mp3/ogg/blabla.
https://code.google.com/p/game-music-emu/
Either way, maybe you shouldn't be concerned with technicalities like the file format of the music if you aren't a programmer and are just making a prototype.
Last edited by boomlinde (Apr 8, 2013 6:59 am)
I played a Megaman fangame (Megaman Revolution) that used NES samples in a single .it module for the entire soundtrack.
Yeah, this is more what I'm talking about. I can track/create instruments/export music just fine but I'd like to know more about how you would actually cue a project file in-game.
Thanks, this looks promising
Sorry man, I misread your post! I would like to know however, are you asking to put NSF files into a modern game engine, or something along those lines? (Just out of curiosity)
Sorry man, I misread your post! I would like to know however, are you asking to put NSF files into a modern game engine, or something along those lines? (Just out of curiosity)
Totally fine. Yeah I'd like to use Fami to write the soundtrack and I think it'd be cool to implement either the ftm or nsf instead of using bulkier (and harder to loop) mp3s.
It seems like you'd have to use some sort of NES emulation to get it running in the game. You'd probably be better off using a sample tracker to write the music in a .mod, .xm, .it, etc, format.
Do the devs of the project even want to go through all that?
bulkier (and harder to loop) mp3s.
Oggs loop pretty well, right? If you're into lo-fi, you could use mpeg-layer-3 compressed .wavs (that's a little trick I learned working with Game Maker. With the old sndrec program, you could compress a wav file to a tiny size without losing too much quality, and it would loop perfectly).
Last edited by SketchMan3 (Apr 8, 2013 7:56 am)
I honestly doubt they'll want any of this noise but it's something I've been wondering about a lot lately anyway. I just dislike dealing with mp3s and oggs when it comes to vg looping and I'd be curious to try implementing music more traditionally. a la the nes, gen, snes, n64 etc. If low-fi is the aim it seems easier to cut out the middle man export process.
Traditionally this is done with a pattern jump command. A single .mod (or any other tracker format that supports that command) could have many songs in it that all share the same instruments.
Patterns 00 to 10 is one song. The last row of pattern 10 is a jump back to pattern 0
Patterns 11 to 20 is another one, the last row if pattern 20 jumps to pattern 11
etc etc
As long as you can select what pattern to start from in the playback routine, you can trigger any one of the songs in that module. Ask your dev what he's using for audio. If he's using a kit engine like Unity then there should already be support for standard mod/xm formats in there. If he's coding shit himself he's probably using fmod like any sane person would do... so again, he's got support for most classic module formats. If these questions confuse him.. then you're dealing with an amateur and he would do well to do a bit of research first to make sure you don't end up composing 20 hours of music he won't know how to play.
Also.. take it from a guy who has scored games for a living: this should not be your concern. A dev should ask for a specific format, and your only concern is to deliver the material in that format. If they don't request a specific format.. something's fishy.
But for the mental masturbation of it... although these multisong mods seem like a neat little idea, you have to remember they only exist because of the necessity to save space on floppy disks back in the 80s/90s. In this day and age, and especially for chip music that either uses no samples, or very short ones, there is no point in going through that much trouble (It's quite a hassle to share a single instrument/pattern bank) to save a few kilobytes of space. If I take the format I use, Klystrack, most of my songs (3 to 5 minutes, and around 10 to 30 instruments each) are 5 to 12kb apiece. Even if I have ten of those.. it's only 120kb at worse. You can bet your ass just the logo graphics that appear for 4 seconds at the start of the game is going to take a shit ton more place than that.
If you're looking into it simply for looping purposes, then any decent game engine can do the same with wave files these days.
Bottom line is.. ask the dev what they want. And if you want to look into it just for yourself, for shits and giggles, use a tracker that has a pattern jump command or subsong function.
Way helpful, thank you. I've always wondered how you would do that and it's one of those things that once you hear it you're like, oh well yeah duh, of course. We're discussing sound specifics in coming days, just literally joined this project at midnight, so I figured it was as good a time as ever to ask about it.
Sure you could do wav, but nsf's are so much smaller
There's most likely an nsf library for whatever language you're coding the game in.