Take your skills to the next level with these bite-sized tutorials!
Converting VGZ to VGM
It’s rather simple to import and play music in your game using SGDK, as I’ve explained previously. However, one of the things you have to keep in mind is that SGDK only supports files in the format of VGM, XGM or XGC. No problem, right? Well…when you look around the web you’ll see that many Mega Drive music files are actually in VGZ format. That’s a bit of an issue, because SGDK doesn’t know how to deal with those. But there’s a trick to convert VGZ to VGM files, which SGDK can process happily!
I’m going to show you how to convert these files and it doesn’t even require audio software or anything. And that has to do with the fact that VGZ files are in fact VGM files! Kind of.
VGM is pretty much the default music format for a lot of retro game systems nowadays, and when you compose your own chiptunes you’re usually exporting them as VGM files. But when these files are distributed online, they are often compressed using gzip. This would give these files a file extension of
track.vgm.gz. However, since file extensions with periods in them can sometimes cause problems, the extension
.vgz is used instead.
So what does it all mean? This: A
.vgz file is just a compressed
.vgm file, and by uncompressing it we can get back the original
.vgm file for use in our SGDK projects!
How To Convert VGZ to VGM
It’s a simple two step process:
- Rename the
.vgzextension of your desired file to
.vgm.gz, so that you end up with a filename like
- Open the renamed file in your favorite file archiver program (Winrar, Winzip, 7zip…) and extract the
.vgmfile contained within.
And that’s it! Now you can easily turn all those VGZ files into regular old VGM files. I guess it’s not even really a conversion, but it’s a neat trick that I only found out about recently myself, so I wanted to share it!
If you have any questions, comments or criticism, post them in the comments below or reach out to me on Twitter @ohsat_games! Special thanks to Stephane Dallongeville for creating SGDK and everyone in the SGDK Discord for their help and keeping the dream alive!
Take It to the Next Level!
Want to boost your Mega Drive coding skills? Get exclusive bonus steps and project files for each tutorial by supporting me on Patreon!Become a Patron!
Just Want to Buy Me a Coffee?
Check out the rest of this tutorial series!
If you’ve popped over to the tutorial section recently you might have noticed that I’ve added my very first HaxeFlixel tutorial! It shows how to implement a simple, pixel-perfect 2D water shader which I used for Go! Go! PogoGirl. But a few of you might be wondering what a HaxeFlixel is. Well, it’s a 2D game framework that is as powerful as it is underrated! It runs on the (also underrated) Haxe language, is extremely well documented, open source, and has built-in functions for almost anything you’d need.
As I’m sure many of you will remember, the original Streets of Rage for the Mega Drive had multiple endings. The real canonical ending has you beat the crap out of Mr. X, thereby ending his reign of terror forever (yeah, right). However, if you confronted Mr. X with a buddy in tow, a new possible path unlocked. A quick refresher is in order. When you confront Mr. X he will ask you to join his organization.
A few years ago, Yuzo Koshiro posted a pile of old game design documents for Bare Knuckle 2 aka Streets of Rage 2 on the Ancient blog to commemorate the release of Streets of Rage 2 3D on the Nintendo 3DS. These documents gave a deep insight into the game’s inner workings, technical aspects, designs and even some cut content. They were an awesome resource for one of the most awesome games ever created.