Adding/Porting Songs to beatmania IIDX Arcade Editions

Written by AJ 187 on August 20th, 2007, based on the older, jointed steps that were here before.
This guide is just a curiosity now, in 2010. I leave it up for whatever reason.

Table of Contents

  1. Introduction
  2. Required Tools
  3. Before You Begin
  4. Porting Songs from Other Windows-based IIDX Games
  5. Adding Songs from non-IIDX Sources/CS Versions
  6. Fun Extras
  7. Thanks

Introduction

Hi, I'm AJ. You may know me, or you may not. I do StepMania themes and some coding on the side. My real line of work is being a college student, slacking off, and mooching off my parents. But this isn't about that. This is about adding songs to the arcade versions of beatmania IIDX.

In any case, you'll want to have patience, as you may screw things up the first time. This also used to be a lot harder before some tools were made. Of course, I wouldn't know about that; you'd have to ask the Japanese. ;)

Required Tools

Enough of the boring shit, here's what you'll need. Some of these are optional, depending on what you plan on adding. If you're like me and adding songs from every possible source you can, then you should probably grab all of these tools.

p.s. I DID NOT WRITE ANY OF THESE TOOLS, DON'T COME TO ME IF/WHEN THEY CRASH

Graphics Related

Regardless of if you're going to do custom graphics for your songs, you should REALLY get some of these tools.

Sound/Chart Related

Depending on what you're doing, you may need some of these tools. I recommend getting them anyways.

Data Related

Also known as the eout Related section. Without editing the eout, you won't be able to play your songs in IIDX.

Before You Begin

Before you begin, there are a few things that need to be done. Some are optional but helpful, and others are pretty much required.

Setting Up the eout.bin

As mentioned above, you will have to set up the eout to be editable. eout.bin is found in data\info\eout.bin.

At this point, make a backup of your eout.bin file. I can't stress this enough, as if you lose it, you'll be fucked and will have to reinstall IIDX. It'll be even worse if you're editing a legit arcade machine and didn't back it up, as Konami will probably kill you.

Once you've backed up eout, extract EditOut and place the eout.bin in the folder where EditOut is. Open up a command line (cmd), cd to the directory where EditOut and your eout.bin is, then, if you have encrypt and decrypt in there like you should, run the following command:

decrypt eout.bin eout.dec

I would suggest copying eout.dec to eout2.dec and editing that with EditOut.

Open up eout2.dec in EditOut to make sure everything looks good. Depending on what game you have, there will be a differing number of entries.

EditOut also comes with some pre-decrypted files. These are for research purposes only; do not re-encrypt these to eout.bin. They ARE useful if porting songs from one game to another, though, so keep them around.

With decrypting the eout out of the way, the most important step is done.

Setting Up mdata and in_* Work Folders

It's good practice to not work on the original files that you're given, as if you mess up, then you're fucked.

This is where gcz2tga comes in. Copy gcz2tga to your data\graph\sys folder. Make a new folder called mdata_work or whatever; this will be your work directory for graphics. With all this set up, go to a command prompt, cd to your data\graph\sys directory, then run the following command, replacing mdata_work if need be:

gcz2tga mdata mdata_work

It'll spit out some stuff, and you'll see a boatload of TGA files in mdata_work or whatever directory. This is your guide to finding out what graphics to put in the fields in EditOut. Like I said before, you're not likely to memorize all the filenames. :)

Porting Songs from Other Windows-based IIDX Games

This is the easier of the two options, as most of the data is easily available.

Preparing Your Data

You will need to find the following files that correspond to the song you're moving over. I will call these the movie, overlay, 2dx, and chart files.

Where can you find each of these? The movie is optional and on many songs, redirects to a shared video. These shared videos have the following structure:

[style number][genre].4

Where [style number] is a two digit number from 01-14, and [genre] can be one of the following: The overlay is also song-dependent, but it's much more serious if you don't bring it over, as the game will crash if it's expecting an overlay. You can check to see if your song needs an overlay in the last tab of EditOut. If it has one, you can just copy the folder over to your data\graph\ folder without any problems. That is, unless it's from DistorteD.

The 2DX and Chart provide the sounds and notecharts respectively. Without these, there is no song. Much like the overlays, you just copy the folder to the data\sd_data\ folder. You won't need to pull off any fancy magic unlike with the overlays.

Frontporting and Backporting - Timing Issues

If you frontport or backport a song, you may notice that timing drifts. This is a problem with how the different games are set up. The good news is that it's fixable on the .1 level. You will need fix1 to fix it.

Refresh Rates for IIDX Games: fix1 uses ratios to fix the timing, so you'll need to do some division. The formula for figuring out the ratio you need to use in fix1 is as follows:

[new game refresh rate]/[original game refresh rate]

Put simply, to convert GOLD to HS, divide 59.94 by 60.038, then plug that in to the fix1. To go the other way, divide 60.038 by 59.94. If you have modified your GOLD or HS files for different timing, try and remember what timing you set it at, since you will have to use that number instead of the defaults.

It's best to perform this as soon as possible, so that you don't forget.

Graphics

Remember how I had you create that mdata_work folder? This is why. Extract the mdata archives of the style you're porting from, if you haven't already. After that's done, look in that style's eout for the files you need. If it has a lot of common things, such as artist and genre, you may only need the L_ and T_ files. If not, you may need all of them. Here's a list of what's what: Once you get all the files in place, use packgcz to make the GCZs:

packgcz mdata *.tga

If you've followed every other step (copying files, editing and re-encrypting the eout, fixing timing if necessary), you should be able to play your ported song.

Adding Songs from non-IIDX Sources/CS Versions

This one is slightly harder to do, but the results are worth it, IMO.

Fun Extras

Here are some fun extras I think you may like. I originally made these; update them if you wish, but please share if you somehow make them better/more accurate.

Thanks

Many people to thank here, in no particular order: