Files
itgmania212121/Docs/SimfileFormats/SDF/SDF.txt
T
2010-01-26 21:00:30 -06:00

67 lines
2.5 KiB
Plaintext

Used by Pocket DDR (http://www.stepmania.com/forums/showthread.php?t=6621).
Basically a compressed version of a .SM that includes the banner and background
in the file as well.
{Banner}
{Background}
{SDF data}
When running SM2SDF.exe with /log, the process looks like this:
-------------------------------------------------
SM 2 SCF Converter v.1.0 by Robot2037
-------------------------------------------------
SM File: test.sm
Loading file test.sm...done.
[LOG] parsing SM file
[LOG] songTitle = test song
[LOG] songSubTitle = a remix
[LOG] songArtist = kurt angle!
[LOG] songCredits = aj jelly
[LOG] songBanner = ssc-banner.png
[LOG] songBackground = ssc-bg.png
[LOG] songOffset = -0.060
[LOG] songBPMs = 0.000=93.810;
[LOG] songStops = ;
[LOG] parsing stepcharts
[LOG] difficulty 0 stepchart found, step difficulty = 2
[LOG] difficulty 1 stepchart found, step difficulty = 4
[LOG] difficulty 2 stepchart found, step difficulty = 6
[LOG] difficulty 3 stepchart found, step difficulty = 10
converting...
[LOG] converting song properties
[LOG] converting BPMs
[LOG] converting stops
[LOG] converting offset
[LOG] converting stepcharts
[LOG] converting stepchart 0
[LOG] converting done
[LOG] converting stepchart 1
[LOG] converting done
[LOG] converting stepchart 2
[LOG] converting done
[LOG] converting stepchart 3
[LOG] converting done
compressing stepchart 0 [ 576 -> 39 ]
compressing stepchart 1 [ 576 -> 71 ]
compressing stepchart 2 [ 576 -> 167 ]
compressing stepchart 3 [ 576 -> 233 ]
Converting image ssc-bg.png...done.
Converting image ssc-banner.png...done.
Writing file test.sdf...done.
test_sm2sdf.sm is the equivalent of test.sm in the above example.
test.sdf is the output file, with two BPMs.
test-1bpm.sdf is an output file with only one BPM change (and a changed offset).
the two images are included as well.
--------------------------------------------------------------------------------
A cursory glance at the steps part of the .SDF shows this:
0x00-0x04: [000204060A]
0x05-0x??: Title (first byte is number of characters/length of string)
then Subtitle, Artist, and Credit follow the same pattern.
That's followed by the Offset. +1.000 = 0x0003E8. -0.060 = 0x01003C.
I think they call this binary coded decimal.
After that is the number of BPMs, presumably followed by those BPMs.
0x0007D0=0x0A2C2B == #BPMS:2.000=666.667;
I'm just not sure how they're picking the places to store the decimal.