2 ; supertux - various sound effect orchestra
4 ; note - The sounds can't be looped right away, an external program needs
5 ; to be used to make them loop
7 ; Bastiaan Zapf - freenode.net basti_
17 ; Generate a random between 0 and 1.
22 a1 exprand 10 ; exponential noise as a base
24 kncrck exprand 1 ; get new crackle raw
25 kcrck = (kocrck-kncrck)/2 ; dc correct crackle
26 kocrck = kncrck ; remember old crackle
28 a1 pareq a1, p4, 30 , 1 , 1 ; growl
29 a1 pareq a1, p5, 0 , 1 , 2 ; high stop
30 a1 pareq a1, p6, kncrck, p7, 0 ; "crackling" of various intensity
32 a1 pareq a1, 10, 0 , 1 , 1 ; thunder stop (dc correction)
34 aout = a1*750 ; adjust your volume here
40 ; rain / water - this is quite similar to lava, just "crackles" more
47 kncrck exprand 1 ; get new crackle
50 kncrck = kncrck^p8 ; few high values, many low values - how sparse
51 ; the highs are is controlled by the power (p8).
52 kcrck = (kocrck-kncrck)/2 ; dc correct crackle
53 kocrck = kncrck ; remember old crackle
55 a1 pareq a1, p4,p5, 1, 1 ; growl
56 a1 pareq a1, p6 ,1+kncrck*p7 ,1, 0 ; "crackling"
57 a1 pareq a1, p6/2,1+k2crck*p7 ,1, 0 ; "crackling"
58 a1 pareq a1, p6/3,1+k2crck*p7 ,1, 0 ; "crackling"
60 a1 pareq a1, 10, 0, 0.7, 1 ; thunder stop (dc correction)
61 a1 pareq a1, p9, 0, 0.7, 2 ; extreme high stop
63 out a1*700 ; adjust your volume here
70 kamp linseg 0,p3/4,1,p3/2,1,p3/4,0
74 aout oscil3 p5,ifqc*kff,1 ; make a sound
75 aout butterhp aout,500,0.5 ; ear protection ;)
77 kff = kff*p6 ; frequency exponential rise
87 kamp linseg 0,p3/8,1,p3*6/8,1,p3/8,0
88 kfenv expseg 0.001,p3/8,3,p3,1,p3*1,0.001
90 asrc oscili p5/4,ifqc,1
91 aout lowres asrc,ifqc*kfenv/2,2
92 aphs phaser2 aout, ifqc*(kfenv+1), 0.89,20, 2, 2, 0.6
96 aecho reverb aout,0.01,0.1
99 aout balance aout,asrc
101 aout butterhp aout,1000,0
113 kfmanip oscil3 1,1/p3,1
114 kvol linseg 0,0.1*p3,1,0.8*p3,1,0.1*p3,0
115 aout oscil3 p5,ifqc*kfmanip,2
116 aout butterhp aout,2000,0.7
117 aout butterlp aout,10000,0.7
118 aout phaser2 aout,ifqc*kfmanip,0.7,1,0.2,0.5
119 out aout*kvol*(kfmanip/2.5)
123 aout1 dripwater 1,0.1,50,1.98,300,350,430
124 aout2 dripwater 1,0.1,50,1.98,400,440,580
125 aout3 dripwater 1,0.1,50,1.98,500,530,600
126 aout4 dripwater 1,0.1,200,1.96,300,350,430
127 aout5 dripwater 1,0.1,200,1.96,400,440,580
128 aout6 dripwater 1,0.1,200,1.96,500,530,600
130 aout =aout1+aout2+aout3+aout4+aout5+aout6
131 aout2 oscili 1,100+aout/10000,1
132 aout2 =aout2*aout/1000+aout/1000
134 aout butterlp aout,5000,0.4