2.4 Effects An effect is applied to a note to change how it or the whole pattern is played. If you are using a tracker for the first time, I suggest you just skip this chapter and come back when you have learned the basics. But for those with previous experience, Scream Tracker 3 supports nearly all Protracker effects and a few effects of its own. If you want to see how these commands can be used in a song, check the example song 64MANIA.S3M, it contains most of these effects. It is no masterpiece of melody, it is made just to acquaint a beginner with the different effects and how they can change the sound of a song completely. Here is a list of all the effects and what they do (a shortened list can be found in the ST3 internal quickhelp system by pressing F10 in the pattern editor): Axx Set speed to xx (the default is 06) This command is used for setting the song's speed. The speed varies from 1 (fastest) to FF (slowest). With most standard trackers, however, the slowest possible speed is 1F, since speed and tempo are in the same command. Bxx Jump to order xx (hexadecimal) This command jumps to the order number specified in the infobyte (remember to give the order number is hexadecimal format). The row this command is on is still played, but the next row played will be the first row of the pattern at order xx. Cxx Break pattern to row xx (decimal) This command breaks the pattern after playing the row it's on. It will skip to the next pattern in order and automatically jump to row xx. (Decimal) D0y Volume slide down by y This will slide the volume down with the value of y. The amount of the slide will be (speed-1) * y. Thus a command of D04 at speed 8 will drop the volume by 28. Dx0 Volume slide up by x This will slide the volume up with the value of x. The amount of the slide is the same as with the volume slide down command, speed times x. The volume can't be higher than 64, though. DFy Fine volume down by y Fine volume differs from volume slide in that it doesn't slide the volume smoothly, but instead changes the volume in the beginning of the row. It has lost some usefulness in ST3, because there is a separate volume column, but it still has its uses. Fine volume is also independent of the speed, it always changes the volume by the infobyte y. If y is 0, the command will be treated as a volume slide up with a value of f (15). If a DFF command is specified, the volume will be slid up. DxF Fine volume up by x Same as fine volume down, but raises the volume instead of lowering it. Volumes going over 64 are changed into 64. Exx Slide down by xx This command will slide the pitch of the note down as specified by xx. The range is 00..DF, since values above that are cosidered fine slides. EFx Fine slide down by x Fine slide, like fine volume, is unlike normal slide in that it slides to the desired pitch in the beginning of the row, not smoothly. It is also independent of the speed, it always slides the same amount, as dictated by x. EEx Extra fine slide down by x Acts list a fine slide, but is four times more accurate. Fxx Slide up by xx This command will slide the pitch of the note up as specified by xx. The range is 00..DF, since values above that are cosidered fine slides. FFx Fine slide up by x Fine slide, like fine volume, is unlike normal slide in that it slides to the desired pitch in the beginning of the row, not smoothly. It is also independent of the speed, it always slides the same amount, as dictated by x. FEx Extra fine slide up by x Acts list a fine slide, but is four times more accurate. Gxx Tone portamento with speed xx This command will start changing the current pitch to match the note given with this command. Subsequent G-commands will continue sliding the pitch until the note is reached at which time the portamento will be stopped. Hxy Vibrato with speed x and depth y Vibrato vibrates the note by changing the pitch with speed x and depth y. Ixy Tremor with ontime x and offtime y Tremor turns the note on for x frames and off for y frames. It is not a ProTracker command, so all tremor commands will be discarded when the song is saved as a .MOD file. Jxy Arpeggio with halfnote additions of x and y Arpeggio changes the playing frequency between the note, the note + x halfnotes and the note + y halfnotes 50 times per second. It is best to use it with clear or tight-looped (chip) instruments. Old users of the Commodore 64 remember this effect which was used to make chords. A C minor chord, for example, would be made with J37, which would play C, D# and G. Kxy Dual command: H00 and Dxy This is the old vibrato + volumeslide from the Protracker command set. It continues the vibrato begun before the command and adds a volumeslide. You cannot, however, use fine volume sliding. An example of usage: C-5 04 28 H82 Start the vibrato ... .. .. K02 Continue vibrato while lowering volume ... .. .. H83 Deepen the vibrato ... .. .. K01 Slide the volume down with the new vibrato depth value At speed 6, the volume would end up being 13. Lxy Dual command: G00 and Dxy This is the old toneport + volumeslide from the Protracker command set. You must first use a G command and then put the L command. It will continue the toneport and slide the volume like a normal volumeslide with value xy. You cannot, however, use fine volume sliding. Oxy Set sample offset This command starts playing the sample at offset 256 times xy. A command of O10 would start playing the sample at position 256 * 16 = 4096. If the sample offset is used in a looped sample and the offset given exceeds the loop end value, the loop is taken into consideration and the offset will be calculated as if the sample had looped. In the example song pattern 3, the sample offset command is used to create a hihat-type sound by playing only the end part of the snare sample. Qxy Retrig (+volumeslide) note The retrig command triggers the sample many times in one row. The y value tells how many frames there are between the retrigs. There are as many frames in one as the speed is. At speed 6 a retrig of Q03 would trigger the note two times. The x value tells if there should be a volumeslide between the retrigs. If the volumeslide part is 0, the command acts like the old Amiga retrig. The amount the volume will change is shown in the following table: 0: 0 (No volumeslide) 1: -1 2: -2 3: -4 4: -8 5: -16 6: 2/3 times the original volume 7: 1/2 times the original volume 8: ? 9: +1 A: +2 B: +4 C: +8 D: +16 E: 3/2 times the original volume F: 2 times the original volume Example of use: (speed 8) C-5 04 64 Q72 -Four retrigs, their volumes being 64, 32, 16 and 8 (speed 6) C-5 04 12 QC2 -Three retrigs with volumes 12, 20 and 28 Rxy Tremolo with speed x and depth y Tremolo acts like vibrato, but changing the volume of the note instead of the pitch. If the volume is at 64, all volumes going over 64 will be clipped at 64, so you should use lower volumes. Uxy Fine Vibrato with speed x and depth y Vibrates the note by changing the pitch with speed x and depth y just like normal vibrato, but is four times more accurate. If a note is played very high, a normal vibrato might sound too strong, so a fine vibrato can be used. S0x Set filter An Amiga hardware function, not implemented in Scream Tracker. S1x Set glissando control Makes toneportamentos slide a halfnote at a time on the channel the S11 command is given. S10 makes the portamentos act normally again. S2x Set finetune (=C4Spd) The set finetune command is used only to retain Protracker compatibility. Because Scream Tracker has a more accurate way of setting the desired instrument frequency, using this command is pretty pointless. However, if you want to dabble around with it, these are the C4Spd values the command uses: 0 - 7895 Hz 1 - 7941 Hz 2 - 7985 Hz 3 - 8046 Hz 4 - 8107 Hz 5 - 8169 Hz 6 - 8232 Hz 7 - 8280 Hz 8 - 8363 Hz (No finetune) 9 - 8413 Hz A - 8463 Hz B - 8529 Hz C - 8581 Hz D - 8651 Hz E - 8723 Hz F - 8757 Hz S3x Set vibrato waveform to x Sets the waveform of the vibrato command. The different options are 0 - the normal sine waveform, 1 - ramp down, 2 - square waveform, and 3 - random. S4x Set tremolo waveform to x Acts like the set vibrato waveform command, but affecting the waveform used for the tremolo command. S8x Set channel pan position This command has been implemented in ST 3.2. It sets the channel pan position with 0 being left and F being right. *** Note that this command only works on a GUS!!! *** SAx Stereo control This is an old command no longer implemented in Scream Tracker. The only .S3M file released that would support it is the soundtrack from Panic by Future Crew. The new S8 command is more efficient, too. SBx Pattern loop. Pattern loop is used for looping inside the pattern. First, you must use an SB0 command to set the loop point where the loop is to begin. Then you must use SBx to return to the loop point x times. In the example song in pattern 5, you can see how this command can be used to save pattern space. Also, you should not try looping back to a loop point in another pattern! If you don't enter an SB0 command, the loop defaults to the beginning of the pattern. SCx Notecut in x frames The note played will be cut in x number of frames. At speed 8, for example, an SC4 command would cut the note at exactly halfway through the row. SDx Notedelay for x frames This delays the playing of the note until x frames into the row. Until the new note comes out, the previous one is played. SEx Patterndelay for x notes This repeats the current row x times without triggering the notes again but applying the effects. SFx Funkrepeat with speed x Not implemented in Scream Tracker 3. Txx Tempo = xx (hex) Changes the tempo (BPM's) to xx. The valid values are 20 to FF. The default is 7D hex, which is 125 decimal. Uxx Fine vibrato Similar to the Vibrato (Hxx) command in that it vibrates the note, but it is four times more accurate. Vxx Set global volume Changes the global volume at which the whole song is played. Accepted values are 0 to 40. The Protracker effects left out, thus, are Set filter and Funkrepeat. Most songs play fine without them, though.