Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > by-pkgid > b7bcc1d745e8ded41e3203a08482cfe3 > files > 23

pyddr-0.6.1-1mdk.noarch.rpm

Okay, this is a mini-HOWTO because I get a sizable amount of questions 
about how to make a STEP file.

QUICK VERSION:

First, if you're good at figuring things out for yourself and just need a 
jumpstart, read 6jan.step in a text editor and use it as a model to create 
your own STEP file.

LONG VERSION:

STEP files are really simple text files that pyDDR loads in to get info 
about a song. Anything that is not the song itself, the background image, 
or the banner image for the song is in the STEP file.

The basic structure of a STEP file is something like:

  header info
  major section
  minor sections
  end
  major section
  end

This probably doesn't make much sense right now, but we'll go over each 
part and you'll get it in no time. If not, come on over to #pygame or 
#pyddr and we'll help you out. The idea of STEP files is to be human 
readable, so get your favorite text editor ready.

STEP FILE HEADER OPTIONS
--------------------------------
The header info consists (or can consist) of a bunch of data that gives 
pyDDR a basic idea of what it's going to have to do to play the song. Some 
of this information is optional, some of it is not. The data you NEED to 
supply will have an asterisk (*) by it. Optional data can be simply 
omitted if you don't have a value. Obviously, if you use a necessary 
option, please don't type the asterisk. =] I'll follow each line of header 
text with a descriptive line telling you what the option is for.

version 0.4

The version of the STEP file format being used. Not currently significant.

file <filename.ext> *

The file that contains the music. Can be MP3, OGG, WAV, MID, or XM/MOD/etc.

song <name of song> *

The literal text for the name of the song.

group <name of group> *

The literal text for the name of the group that does the song.

bpm <value> *

The number of beats per minute to start the song at. Can be a decimal value.

offset <value> *

The millisecond offset to start the song at. For example, if a song has 
about 0.3 seconds of silence before the first, the offset should be 300.

startat <value>

The number of seconds into the song file to start the song at. This is 
useful if you have a full length tune and want to start it after a 
particularly long intro. Value in seconds, decimal allowed.

endat <value> 

The number of seconds into the file to end the song at. Again, very useful 
if you're using a full-length tune and need to end the song at a certain 
point. Value in seconds, decimal allowed.

bg <filename.ext>

Specific filename for the background image. If one is not in the STEP 
file, pyDDR uses stepfile-bg.png. Format can be anything SDL_image supports.

movie <filename.ext>

Specific filename for the background movie. Format is MPEG-1.
--------------------------------

STEP FILE MAJOR SECTIONS
--------------------------------
A major section is basically a section that contains lyrics or steps. This 
is specified with the word LYRICS or the mode to play in on a single line 
(EG. SINGLE or DOUBLE). If you enter a bunch of lyrics, be sure to end the 
section with the word 'end'. This is further explained down the line.

STEP FILE MINOR SECTIONS
--------------------------------
Once you are in a major section for SINGLE or DOUBLE, you need to tell the 
game the steps that are going to be danced. Clearly, there is more than 
one difficulty level per song, but if you're writing a STEP file for your 
own song or an original, you need only include one minor section of steps. 
The game will realise which sections are available and only let you choose 
among them. So, first, we need to specify a difficulty and its level or 
number of feet like this:

BASIC 3

This signifies that we're starting the steps for BASIC mode, which is 3 
feet of difficulty. Now we need to provide pyDDR instructions on how to 
play the song with commands. These are commands that will be processed in 
order until it hits a line with the word 'end'. At that point, pyDDR 
expects you to start another major section and start another slew of steps 
after a marker, for, say, TRICK or MANIAC.

STEP FILE COMMANDS
--------------------------------
Now we need to give pyDDR the commands. Here's another big list of em:

qurtr 08 00 00 00

This is a quarternote LEFT arrow. You can move the '08' to whichever slot 
you want the arrow to be in, or add another to create a jump. You can also 
remove the 08 (by changing it to '00') to have a quarter-note of silence.

A quarter note is one beat, if it helps any.

eight 00 00 00 00

Creates an eighth note (half of a beat)

steps 00 00 00 00

Creates a sixteenth note (quarter of a beat or 'really-fast-offbeat')

halfn 00 00 00 00

Creates a half note - this is still a single arrow, but pyDDR basically 
skips a beat so you don't have to type a quarter-note of silence.

whole 00 00 00 00

Creates a whole note, or a quarter note arrow with 3 quarters of silence.

chbpm <value>

Changes the beats per minute to <value> which can be a decimal value. 
Keep in mind anything following this will have the new bpm value until 
chbpm is used again. Also not yet perfect.

waits <value>

Wait a <value> number of seconds before the next command is to take effect.

atsec <value>

At <value> seconds into playing the song, run the next command.
--------------------------------

STEP FILE LYRIC COMMANDS
--------------------------------
Once you've started a LYRICS section, you'll need some lyrics. Using the 
lyric tagger (lyrictag.py) is one easy way to get useful lyric data that 
you can insert into step files with minimal effort. However, if you 
already have all the times written down for the lyrics in your song (you 
masochist!), most useful will be the 'atsec' and 'waits' commands, 
followed by these two commands:

lyric <lyric text>

Displays whatever is after 'lyric' at the current command time.

trans <lyric text>

Stands for 'trans'lated - displays whatever is after 'trans' at the 
current time. Useful in two ways: First, you can use it to display the 
echoing singing of another person in the song. Second, you can use lyric 
and trans together to, for example, display romanji on the first line and 
an english translation on the second line right under it.

Don't forget to end the LYRICS section with 'end'.
--------------------------------

Well, I think that's about all for now. Happy STEP file making!