by keripo on Jun 25th, '11, 02:32
To be honest, implementing Jubeat isn't the hard part - its figuring out the data files/format xD
Having never played Jubeat (or tried any PC simulators), I'm not familiar with what the common data format is for the game.
So far I have .DWI/.SM for dance/pump, .bms for beat, .osu for osu, and .ppd for diva. Haven't looked into the actual specifications for .ppd or .mid for guitar, but I'm hoping they're self-explanatory enough to figure out. Here's what I've got so far for conversions
dance <-- everything, cause everything can be reduced to 4 buttons with direction randomized/patterned
pump <-- same thing as dance, just to 5 buttons
beat <-- 4 button/5 button is dance/pump reskinned, 7-button and 9 button will be specialized only I guess
guitar <-- pump reskinned
osu <-- custom, I guess I can use my pattern generator for creating patterns but not sure how good it will be
taiko <-- everything, cause its 2 button
box <-- osu works, but anything else? don't know cause I've never seen any data files for these
diva <-- osu reskinned?
Pretty much all rhythm game data notes contain some of the following: time, beat, duration, type (touch/hold/drag/trill), direction/column, x/y start, x/y end. The first three are universal, the fourth is available for all or can be generated via randomization logic. The x/y coordinates, however, are specific to osu, box, and diva. Chances are, to avoid having to rely on fake pattern generation (like the one I made for .sm->osu! Mod in Beats), I just won't allow those data files to be played in non-convertible modes.
On a side note, I just visited a local arcade yesterday and played DJ Max Technica for the first time. I can see it as being a reskinned mod of dance (with the "arrows" being stationary and the "tapbox" scrolling rather than the actual screen). Its logic might be a bit tricky to do, but I'm toying with the idea.
Oh, and no, I haven't actually started writing code yet (writing Beats was easy - designing it and hacking in stuff like holds, jumps, and osu! Mod were the hard parts). Design is more important than code writing in my opinion - anyone can write/learn to write code, but designing a good system is the real challenge.
[/off-topic rant]
Edit: I think I'll write a post about these thoughts, now that you've gotten me thinking. Thanks Stasis ; )
~Keripo
