I help a friend by writing him a program. He is rewriting the soundtrack to the old Lucasarts Tie Fighter. The game used the iMuse system - each track consisted of several small sound signals. The game combined them to create a dynamic soundtrack that changed as the situation began.
For each "track" there is a set of rules that determine which signal should be moved to the next. There is a random element for this, for example:
SUCC CUES
SUCC-01 switches to SUCC-02
SUCC-02 switches to SUCC-03 or SUCC-04
SUCC-03 switches to SUCC-01 or SUCC-04
SUCC-04 switches to SUCC-05
SUCC-05 switches to SUCC-01 or SUCC-06 or SUCC-08
SUCC-06 switches to SUCC-04 or SUCC-07
SUCC-07 moves to SUCC-01 or SUCC-02 or SUCC-04 or SUCC-08
SUCC-08 switches to SUCC-02 or SUCC -06
SUCC-IN moves to SUCC-01
There are many other similar tracks, with many replicas. Essentially, each track is a grid of interconnected nodes. He wants the program to parse the replicas and create playlists for each track that satisfy two criteria:
- All replicas on the track are used.
- There is minimal repetition of replicas
, , . - -.
, - , ( ), .