Sunday, March 31, 2019

SSQ Editor Progress Post 1

This ugly thing:


... is the beginning of a project to make an editor that will allow users to create stepcharts, and actually export them in Dance Dance Revolution's SSQ format.

And yes, the column on the left will have the beat / measure information, and not just a spamming of "BLARG!".

Despite the (wonky looking) support for doubles charts in appearance, this is currently cosmetic (-ish - as you can actually place step arrows for the P2 side whose values can be collected for actual SSQ file generation).  Before I really support Doubles mode chart creations, I still have a ton of features to add support for - such as freezes, BPM changes, pauses, and maybe even shock arrows, as well as support for actually loading decompressed stepfiles.

I would like to, eventually, add support for compressing the data for re-insertion into a DDR title, but that requires either finding a tool that can compress data into Konami's brand of LZ77 compression, or making a tool hat does this, which ... frankly, I do WANT to try, but am not thrilled about, seeing that I am a bit derpy when it comes to reading and understanding how LZ77 works, at least until I find a guide that explains it a certain way.

Sunday, March 17, 2019

Arrow Rules in Edit Mode AND In A Song Stage

When I first got into trying to make edit mode edits, I found myself continually frustrated with the inability to place 3 arrows on a beat, or have 2 freeze arrows with an additional 1 or two arrows you'd have to hit either by having your feet placed on the right spot between arrow panels so that stepping triggered both arrows, or by using you your hands.

If you try to do this normally, the old data at that beat is removed, and the newly placed arrow replaces it.

After doing a little digging, I found two areas in DDRMAX2's code that looked promising (pardon the crude graphic where I attempt to put 2 separate pieces of code together):



One piece of code is utilized while attempting to place non-freeze steps, the other used when attempting to place freeze arrows.

So, I just changed the 2 in the SLTI instructions to something higher. So far, so good, right? Sort of. I can place 3 arrows, in any combination of freeze and non-freeze arrows, on a single beat:
But alas, changing this didn't remove all the issues. For one, certain combinations of freeze and non- freeze arrows were still tricky to pull off correctly, and even if I got them eventually placed the way I wanted, the arrows wouldn't show up correctly, regardless of if I was playing back the song in edit mode, or in an actual song stage. The steps are changed to jumps (up and down arrow jumps specifically).

This leaves me to wonder where further checking occurs. Such checks are not done with official stepcharts, which was evident when I fiddled with stepchart data:


So there are clearly other areas where the game checks the validity of the step data. Maybe this happens in a place where the stepdata is converted to the game's internal step format. Regardless of if this is the case or not, I will try to remain decent about timely updates on this, and other DDR hacking matters.