parte 4: esempio commentato
In attesa di un permesso da parte dei Bishonen, in quanto interpreti della canzone usata come esempio, di mettere online un "pacchetto" completo di canzone e file .dance, riporto uno stralcio commentato del file da me realizzato.
Codice:
# le righe che cominciano per cancelletto sono commenti
#
# la prima parte di un file .dance è una intestazione che contiene
# delle informazioni generali sulla canzone e i dati necessari
# per i menù di scelta. l'ordine delle singole voci non è importante
# le voci indispensabili per avere una canzone utilizzabile come si
# deve sono:
#
# "filename" nome del file audio
# "title" titolo della canzone
# "artist" nome dell'interprete
# "author" nome dell'autore
# "bpm" battiti per minuto
# "gap" ritardo prima del primo passo di danza
# "background" nome del file da usare come sfondo (640x480 pixel
# "banner" immagine da usare nei menu (256x80 pixel)
#
# i dati fondamentali sono soltanto "bpm" e "gap" che danno le indicazioni
# indispensabili per il ballo. gli altri sono solo informativi.
#
# l'intestazione è chiusa dalla parola chiave "end"
filename grottango.ogg
title Sangue e Acciaio
artist Bishoonen
author Bishoonen
bpm 150.0
gap -2060.0
background grottango.jpg
banner grottango_banner.jpg
end
# tutto quello che segue è BALLO BALLO BALLO DA CAPOGIRO!
# per ogni canzone è possibile definire più di una MODALITA' di ballo
# e più di un LIVELLO DI DIFFICOLTA'
#
# quello che segue è un piccolo stralcio dalla modalità SINGOLO GIOCATORE
# al livello "TRICK". il numero che segue il nome del livello è
# una indicazione numerica della stessa informazione (TRICK di solito
# sono 5 o 6, BASIC sono 3 o 4 e così via.
#
# la modalità condiziona appunto il modo con cui si
# può giocare (un giocatore, due giocatori indipendenti, due giocatori in
# cooperazione... ), il livello è invece per lo più descrittivo
# ed è selezionabile dal menu delle canzoni
SINGLE
TRICK 5
# da qui in poi fino alla parola chiave "end", che chiude una sequenza di ballo
# per una data modalità ed un dato livello, seguono i PASSI DI DANZA.
#
# un passo inizia con una lettera, ed è seguito da una sequenza di numeri, uno
# per ogni sensore del tappetino (nell'esempio, SX, GIU, SU, DX).
# ovviamente, il numero di sensori dipende dalla modalità di gioco e dal
# tipo di tappetino utilizzato.
#
# la lettera indica il BATTITO nella canzone. "o" vuol dire 4/4, "h" vuol dire
# 2/4, "q" vuol dire 1/4, "e" vuol dire 1/8.
# uno 0 vuol dire NON PREMUTO, un 1 vuol dire PREMUTO.
#
# le altre indicazioni di tempo (sedicesimi, ecc.) e passi (passi tenuti e nascosti)
# sono contenuti nella documentazione di PyDance
# intro
h 1000
h 1000
h 0010
h 0010
h 1000
h 1000
h 0010
h 0010
h 0001
h 0001
h 0010
h 0010
h 1001
h 1001
q 0010
q 0001
q 0100
q 0001
# strumentale
h 1001
h 0010
h 0010
h 0001
h 1001
h 0010
h 0100
q 0010
q 0001
h 1000
h 0010
q 1000
q 0100
h 1000
h 0001
h 0100
q 0001
q 0010
h 0001
# eccoli che ci assalgono
h 1001
h 1000
q 1000
q 0010
h 1000
h 0001
h 1000
q 0001
q 0010
q 0100
q 1000
h 0001
h 0100
q 0001
q 1000
h 0100
h 0001
h 1000
q 1001
q 1001
h 0110
# ... taglio il resto della sequenza per motivi di spazio
# la parola "end" chiude una sequenza. si possono mettere nello stesso file .dance
# più sequenza, una dopo l'altra, per altri livelli di difficoltà o modalità
# di gioco, tutte sceglibili dai menù
end
Tecnicamente, salvando questo file con nome "grottango.dance" e copiandolo nella sottocartella "songs" in cui si è installato PyDance, e copiando nello stesso posto il file .MP3 della cazone disponibile sul sito
www.grottango.it nella stessa cartella (rinominato per coincidere con quanto indicato nel file .dance) dovreste già avere qualcosa di sperimentabile.

Anche gli sfondi e i banner vanno nello stesso posto.
In un file .dance sono possibili tante altre cose (passi nascosti, passi da mantenere premuti per un certo tempo, cambi di velocità, parole della canzone che compaiono sullo schermo...).
Per chi è interessato a queste funzionalità avanzate, consiglio di leggere la documentazione (purtroppo in lingua inglese) disponibile sul sito o di chiedermi delle dritte.