Some time ago I challenged myself to hack into the note charts, or *.pt files, for DJMax Online. It turned out to be pretty easy - no reverse-engineering required (although I don't know how to reverse-engineer an executable file anyway). Using some black-box observation, most of the specifications of pt files are easy to figure out, since there's no encryption of any sort.
So I wrote a tool that takes a pt file and turns out bms/bme files, so I could play around with them, edit in BMSE, play in beatmania simulators, and so on.
The tool is called Part-Time File Fiddler, a weird improvised name created to fit the acronym PTFF, which is the first 4 bytes of any pt file.
What it does:
- Read and parse *.pt files from the original DJMax Online. DJMax Portable series, DJMax Trilogy and DJMax Technica are not supported.
- Output the note chart to bms/bme files that can be read by BMSE and other bemani emulators.
- Converts all notes correctly including long (hold) notes and short (hit) notes.
- Converts background notes correctly.
- Converts speed/BPM changes correctly.
- Convert the volume and pan (left/right) of each individual note. pt files do have this feature, but bms files don't support them.
- Retrieve the information of note charts, including title, composer, genre, etc. As far as I know this info is stored separately in a database in DJ Max Online.
- Unpack song data, including BGM, key sounds, BGA elements, etc. These data are stored in *.pak files. To unpack pak files please see the link on the bottom of this page.
By the way, I made a Beatmania IIDX style note chart from Oblivion_7k_mx.pt. See the video below:
You can find the tool, along with some explanatory stuff, here.