1MILKDROP_PRESET_VERSION=201
2PSVERSION=2
3PSVERSION_WARP=2
4PSVERSION_COMP=2
5[preset00]
6fRating=4.000
7fGammaAdj=1.900
8fDecay=0.980
9fVideoEchoZoom=1.169
10fVideoEchoAlpha=0.000
11nVideoEchoOrientation=0
12nWaveMode=7
13bAdditiveWaves=1
14bWaveDots=0
15bWaveThick=0
16bModWaveAlphaByVolume=1
17bMaximizeWaveColor=0
18bTexWrap=1
19bDarkenCenter=0
20bRedBlueStereo=0
21bBrighten=0
22bDarken=0
23bSolarize=0
24bInvert=0
25fWaveAlpha=4.100
26fWaveScale=1.286
27fWaveSmoothing=0.630
28fWaveParam=0.000
29fModWaveAlphaStart=0.710
30fModWaveAlphaEnd=1.300
31fWarpAnimSpeed=1.729
32fWarpScale=2.108
33fZoomExponent=1.64463
34fShader=0.000
35zoom=1.01901
36rot=0.00000
37cx=0.500
38cy=0.500
39dx=0.00000
40dy=0.00000
41warp=0.45599
42sx=1.00000
43sy=1.00000
44wave_r=0.650
45wave_g=0.650
46wave_b=0.650
47wave_x=0.500
48wave_y=0.500
49ob_size=0.010
50ob_r=1.000
51ob_g=0.500
52ob_b=0.250
53ob_a=0.160
54ib_size=0.010
55ib_r=0.250
56ib_g=0.250
57ib_b=0.250
58ib_a=0.000
59nMotionVectorsX=12.000
60nMotionVectorsY=9.000
61mv_dx=0.000
62mv_dy=0.000
63mv_l=0.900
64mv_r=1.000
65mv_g=1.000
66mv_b=1.000
67mv_a=0.000
68b1n=0.000
69b2n=0.000
70b3n=0.000
71b1x=1.000
72b2x=1.000
73b3x=1.000
74b1ed=0.250
75wavecode_0_enabled=1
76wavecode_0_samples=512
77wavecode_0_sep=0
78wavecode_0_bSpectrum=1
79wavecode_0_bUseDots=0
80wavecode_0_bDrawThick=1
81wavecode_0_bAdditive=0
82wavecode_0_scaling=1.00000
83wavecode_0_smoothing=0.50000
84wavecode_0_r=1.000
85wavecode_0_g=1.000
86wavecode_0_b=1.000
87wavecode_0_a=1.000
88wave_0_per_point1=sp = sample*6.28*8*8*4;
89wave_0_per_point2=vol = (bass_att + mid_att + treb_att)*0.33;
90wave_0_per_point3=vol = 0.2 + 0.5*(value1 + value2);
91wave_0_per_point4=vol = .2;
92wave_0_per_point5=
93wave_0_per_point6=mod = if(below(mid_att,1.8),mid_att+.2,2);
94wave_0_per_point7=
95wave_0_per_point8=ox = 0.5*sin(sp)*sin(sample*3.14)*vol;
96wave_0_per_point9=oy = (sample - 0)*mod;
97wave_0_per_point10=oz = 0.5*cos(sp)*sin(sample*3.14)*vol;
98wave_0_per_point11=
99wave_0_per_point12=xang = time*0.672;
100wave_0_per_point13=axang = 0;
101wave_0_per_point14=yang = time*-1.351;
102wave_0_per_point15=ayang = 0;
103wave_0_per_point16=zang = time*-0.401;
104wave_0_per_point17=azang = 0;
105wave_0_per_point18=fov = 0.6 + 0.2*sin(time);
106wave_0_per_point19=fov = .5;
107wave_0_per_point20=
108wave_0_per_point21=mx = ox*cos(zang) - oy*sin(zang);
109wave_0_per_point22=my = ox*sin(zang) + oy*cos(zang);
110wave_0_per_point23=ox = mx;
111wave_0_per_point24=oy = my;
112wave_0_per_point25=mx = ox*cos(yang) + oz*sin(yang);
113wave_0_per_point26=mz = - ox*sin(yang) + oz*cos(yang);
114wave_0_per_point27=ox = mx;
115wave_0_per_point28=oz = mz;
116wave_0_per_point29=my = oy*cos(xang) - oz*sin(xang);
117wave_0_per_point30=mz = oy*sin(xang) + oz*cos(xang);
118wave_0_per_point31=oy = my;
119wave_0_per_point32=oz = mz;
120wave_0_per_point33=
121wave_0_per_point34=oz = abs(oz) - 2;
122wave_0_per_point35=x = ox*fov/oz + 0.5;
123wave_0_per_point36=x = (x-.5)*0.75 + 0.5;
124wave_0_per_point37=y = oy*fov/oz + 0.5;
125wave_0_per_point38=
126wave_0_per_point39=r = 1 + sin(sp);
127wave_0_per_point40=b = 0.5 + 0.5*sin(sample*1.57);
128wave_0_per_point41=g = 0.5 + 0.5*cos(sample*1.57);
129wave_0_per_point42=a = 0.5 + (oz + 2)*0.25;
130wavecode_1_enabled=1
131wavecode_1_samples=512
132wavecode_1_sep=0
133wavecode_1_bSpectrum=1
134wavecode_1_bUseDots=0
135wavecode_1_bDrawThick=1
136wavecode_1_bAdditive=0
137wavecode_1_scaling=1.00000
138wavecode_1_smoothing=0.50000
139wavecode_1_r=1.000
140wavecode_1_g=1.000
141wavecode_1_b=1.000
142wavecode_1_a=1.000
143wave_1_per_point1=sp = sample*6.28*8*8*4;
144wave_1_per_point2=vol = (bass_att + mid_att + treb_att)*0.33;
145wave_1_per_point3=vol = 0.2 + 0.5*(value1 + value2);
146wave_1_per_point4=vol = .2;
147wave_1_per_point5=
148wave_1_per_point6=mod = if(below(bass_att,1.8),bass_att+.2,2);
149wave_1_per_point7=
150wave_1_per_point8=ox = 0.5*sin(sp)*sin(sample*3.14)*vol;
151wave_1_per_point9=oy = (sample - 0)*mod;
152wave_1_per_point10=oz = 0.5*cos(sp)*sin(sample*3.14)*vol;
153wave_1_per_point11=
154wave_1_per_point12=xang = time*-0.321;
155wave_1_per_point13=axang = 0;
156wave_1_per_point14=yang = time*1.531;
157wave_1_per_point15=ayang = 0;
158wave_1_per_point16=zang = time*-0.101;
159wave_1_per_point17=azang = 0;
160wave_1_per_point18=fov = 0.6 + 0.2*sin(time);
161wave_1_per_point19=fov = .5;
162wave_1_per_point20=
163wave_1_per_point21=mx = ox*cos(zang) - oy*sin(zang);
164wave_1_per_point22=my = ox*sin(zang) + oy*cos(zang);
165wave_1_per_point23=ox = mx;
166wave_1_per_point24=oy = my;
167wave_1_per_point25=mx = ox*cos(yang) + oz*sin(yang);
168wave_1_per_point26=mz = - ox*sin(yang) + oz*cos(yang);
169wave_1_per_point27=ox = mx;
170wave_1_per_point28=oz = mz;
171wave_1_per_point29=my = oy*cos(xang) - oz*sin(xang);
172wave_1_per_point30=mz = oy*sin(xang) + oz*cos(xang);
173wave_1_per_point31=oy = my;
174wave_1_per_point32=oz = mz;
175wave_1_per_point33=
176wave_1_per_point34=oz = abs(oz) - 2;
177wave_1_per_point35=x = ox*fov/oz + 0.5;
178wave_1_per_point36=x = (x-.5)*0.75 + 0.5;
179wave_1_per_point37=y = oy*fov/oz + 0.5;
180wave_1_per_point38=
181wave_1_per_point39=g = 1 + sin(sp);
182wave_1_per_point40=r = 0.5 + 0.5*sin(sample*1.57);
183wave_1_per_point41=b = 0.5 + 0.5*cos(sample*1.57);
184wave_1_per_point42=a = 0.5 + (oz + 2)*0.25;
185wavecode_2_enabled=1
186wavecode_2_samples=512
187wavecode_2_sep=0
188wavecode_2_bSpectrum=1
189wavecode_2_bUseDots=0
190wavecode_2_bDrawThick=1
191wavecode_2_bAdditive=0
192wavecode_2_scaling=1.00000
193wavecode_2_smoothing=0.50000
194wavecode_2_r=1.000
195wavecode_2_g=1.000
196wavecode_2_b=1.000
197wavecode_2_a=1.000
198wave_2_per_point1=sp = sample*6.28*8*8*4;
199wave_2_per_point2=vol = (bass_att + mid_att + treb_att)*0.33;
200wave_2_per_point3=vol = 0.2 + 0.5*(value1 + value2);
201wave_2_per_point4=vol = .2;
202wave_2_per_point5=
203wave_2_per_point6=mod = if(below(treb_att,1.8),treb_att+.2,2);
204wave_2_per_point7=
205wave_2_per_point8=ox = 0.5*sin(sp)*sin(sample*3.14)*vol;
206wave_2_per_point9=oy = (sample - 0)*mod;
207wave_2_per_point10=oz = 0.5*cos(sp)*sin(sample*3.14)*vol;
208wave_2_per_point11=
209wave_2_per_point12=xang = time*0.221;
210wave_2_per_point13=axang = 0;
211wave_2_per_point14=yang = time*-0.411;
212wave_2_per_point15=ayang = 0;
213wave_2_per_point16=zang = time*1.201;
214wave_2_per_point17=azang = 0;
215wave_2_per_point18=fov = 0.6 + 0.2*sin(time);
216wave_2_per_point19=fov = .5;
217wave_2_per_point20=
218wave_2_per_point21=mx = ox*cos(zang) - oy*sin(zang);
219wave_2_per_point22=my = ox*sin(zang) + oy*cos(zang);
220wave_2_per_point23=ox = mx;
221wave_2_per_point24=oy = my;
222wave_2_per_point25=mx = ox*cos(yang) + oz*sin(yang);
223wave_2_per_point26=mz = - ox*sin(yang) + oz*cos(yang);
224wave_2_per_point27=ox = mx;
225wave_2_per_point28=oz = mz;
226wave_2_per_point29=my = oy*cos(xang) - oz*sin(xang);
227wave_2_per_point30=mz = oy*sin(xang) + oz*cos(xang);
228wave_2_per_point31=oy = my;
229wave_2_per_point32=oz = mz;
230wave_2_per_point33=
231wave_2_per_point34=oz = abs(oz) - 2;
232wave_2_per_point35=x = ox*fov/oz + 0.5;
233wave_2_per_point36=x = (x-.5)*0.75 + 0.5;
234wave_2_per_point37=y = oy*fov/oz + 0.5;
235wave_2_per_point38=
236wave_2_per_point39=b = 1+sin(sp);
237wave_2_per_point40=g = 0.5 + 0.5*sin(sample*1.57);
238wave_2_per_point41=r = 0.5 + 0.5*cos(sample*1.57);
239wave_2_per_point42=a = 0.5 + (oz + 2)*0.25;
240wavecode_3_enabled=0
241wavecode_3_samples=512
242wavecode_3_sep=0
243wavecode_3_bSpectrum=0
244wavecode_3_bUseDots=0
245wavecode_3_bDrawThick=0
246wavecode_3_bAdditive=0
247wavecode_3_scaling=1.00000
248wavecode_3_smoothing=0.50000
249wavecode_3_r=1.000
250wavecode_3_g=1.000
251wavecode_3_b=1.000
252wavecode_3_a=1.000
253shapecode_0_enabled=0
254shapecode_0_sides=4
255shapecode_0_additive=0
256shapecode_0_thickOutline=0
257shapecode_0_textured=0
258shapecode_0_num_inst=1
259shapecode_0_x=0.500
260shapecode_0_y=0.500
261shapecode_0_rad=0.10000
262shapecode_0_ang=0.00000
263shapecode_0_tex_ang=0.00000
264shapecode_0_tex_zoom=1.00000
265shapecode_0_r=1.000
266shapecode_0_g=0.000
267shapecode_0_b=0.000
268shapecode_0_a=1.000
269shapecode_0_r2=0.000
270shapecode_0_g2=1.000
271shapecode_0_b2=0.000
272shapecode_0_a2=0.000
273shapecode_0_border_r=1.000
274shapecode_0_border_g=1.000
275shapecode_0_border_b=1.000
276shapecode_0_border_a=0.100
277shapecode_1_enabled=0
278shapecode_1_sides=4
279shapecode_1_additive=0
280shapecode_1_thickOutline=0
281shapecode_1_textured=0
282shapecode_1_num_inst=1
283shapecode_1_x=0.500
284shapecode_1_y=0.500
285shapecode_1_rad=0.10000
286shapecode_1_ang=0.00000
287shapecode_1_tex_ang=0.00000
288shapecode_1_tex_zoom=1.00000
289shapecode_1_r=1.000
290shapecode_1_g=0.000
291shapecode_1_b=0.000
292shapecode_1_a=1.000
293shapecode_1_r2=0.000
294shapecode_1_g2=1.000
295shapecode_1_b2=0.000
296shapecode_1_a2=0.000
297shapecode_1_border_r=1.000
298shapecode_1_border_g=1.000
299shapecode_1_border_b=1.000
300shapecode_1_border_a=0.100
301shapecode_2_enabled=0
302shapecode_2_sides=4
303shapecode_2_additive=0
304shapecode_2_thickOutline=0
305shapecode_2_textured=0
306shapecode_2_num_inst=1
307shapecode_2_x=0.500
308shapecode_2_y=0.500
309shapecode_2_rad=0.10000
310shapecode_2_ang=0.00000
311shapecode_2_tex_ang=0.00000
312shapecode_2_tex_zoom=1.00000
313shapecode_2_r=1.000
314shapecode_2_g=0.000
315shapecode_2_b=0.000
316shapecode_2_a=1.000
317shapecode_2_r2=0.000
318shapecode_2_g2=1.000
319shapecode_2_b2=0.000
320shapecode_2_a2=0.000
321shapecode_2_border_r=1.000
322shapecode_2_border_g=1.000
323shapecode_2_border_b=1.000
324shapecode_2_border_a=0.100
325shapecode_3_enabled=0
326shapecode_3_sides=4
327shapecode_3_additive=0
328shapecode_3_thickOutline=0
329shapecode_3_textured=0
330shapecode_3_num_inst=1
331shapecode_3_x=0.500
332shapecode_3_y=0.500
333shapecode_3_rad=0.10000
334shapecode_3_ang=0.00000
335shapecode_3_tex_ang=0.00000
336shapecode_3_tex_zoom=1.00000
337shapecode_3_r=1.000
338shapecode_3_g=0.000
339shapecode_3_b=0.000
340shapecode_3_a=1.000
341shapecode_3_r2=0.000
342shapecode_3_g2=1.000
343shapecode_3_b2=0.000
344shapecode_3_a2=0.000
345shapecode_3_border_r=1.000
346shapecode_3_border_g=1.000
347shapecode_3_border_b=1.000
348shapecode_3_border_a=0.100
349per_frame_init_1=q10 = 0;
350per_frame_init_2=my_rot = 0;
351per_frame_init_3=my_zoom = 1;
352per_frame_init_4=s = 0.5;
353per_frame_1=wave_r = 0.85 + 0.25*sin(0.437*time+1);
354per_frame_2=wave_g = 0.85 + 0.25*sin(0.544*time+2);
355per_frame_3=wave_b = 0.85 + 0.25*sin(0.751*time+3);
356per_frame_4=dx = dx + 0.003*( 0.60*sin(0.234*time) + 0.40*sin(0.277*time) );
357per_frame_5=dy = dy + 0.003*( 0.60*sin(0.284*time) + 0.40*sin(0.247*time) );
358per_frame_6=decay = decay - 0.01*equal(frame%6,0);
359per_frame_7=dx = dx + dx_residual;
360per_frame_8=dy = dy + dy_residual;
361per_frame_9=bass_thresh = above(bass_att,bass_thresh)*2 + (1-above(bass_att,bass_thresh))*((bass_thresh-1.3)*0.96+1.3);
362per_frame_10=dx_residual = equal(bass_thresh,2.13)*0.016*sin(time*7) + (1-equal(bass_thresh,2.13))*dx_residual;
363per_frame_11=dy_residual = equal(bass_thresh,2.13)*0.012*sin(time*9) + (1-equal(bass_thresh,2.13))*dy_residual;
364per_frame_12=wave_x = wave_x - dx_residual*7;
365per_frame_13=wave_y = wave_y - dy_residual*7;
366per_frame_14=wave_mystery = time*37.03;
367per_frame_15=
368per_frame_16=new_rot = rot + 0.013*( 0.60*sin(17.381*time) + 0.40*sin(11.579*time) );
369per_frame_17=new_zoom = zoom + 0.01*( 0.60*sin(20.1934*time+3) + 0.40*sin(16.307*time+9) );
370per_frame_18=new_warp = warp + 0.34*( 0.60*sin(13.5442*time) + 0.40*sin(22.543*time) );
371per_frame_19=new_cx = cx + 0.310*( 0.60*sin(16.374*time) + 0.40*sin(26.294*time) );
372per_frame_20=new_cy = cy + 0.310*( 0.60*sin(18.393*time) + 0.40*sin(37.223*time) );
373per_frame_21=new_s = rand(100)*0.01;
374per_frame_22=
375per_frame_23=// this is a great way to respond to beats:
376per_frame_24=// once you get one, let it decay at a constant rate!!
377per_frame_25=rg = max(rg*0.77, 0.02 + 0.5*min(2,max(0,mid_att-1)*1.3));
378per_frame_26=q9 = rg;
379per_frame_27=
380per_frame_28=// custom beat detection code: (fps-independent; quiet songs don't freak out)
381per_frame_29=decay_rate = pow(0.993, fps);  // lower # = more hasty to declare a beat
382per_frame_30=min_att    = 2.5;               // lower # = quieter songs can declare beats
383per_frame_31=decay_to   = 1.0;               // lower # = more hasty to declare a beat
384per_frame_32=beat =           bass/max(min_att,bass_att);
385per_frame_33=beat = max(beat, mid /max(min_att,mid_att ));
386per_frame_34=beat = max(beat, treb/max(min_att,treb_att));
387per_frame_35=beat = max( beat, (prev_beat-decay_to)*decay_rate + decay_to );
388per_frame_36=beat_level     = (beat - prev_beat - 0.07)*24;
389per_frame_37=is_beat = above(beat_level, 0.5);
390per_frame_38=prev_beat = beat;
391per_frame_39=  // put your beat responses HERE:
392per_frame_40=  wave_a = beat_level + 1.65;
393per_frame_41=  rot = (1-is_beat)*my_rot + (is_beat)*new_rot;
394per_frame_42=  zoom = (1-is_beat)*my_zoom + (is_beat)*new_zoom;
395per_frame_43=  warp = (1-is_beat)*my_warp + (is_beat)*new_warp;
396per_frame_44=  cx = (1-is_beat)*my_cx + (is_beat)*new_cx;
397per_frame_45=  cy = (1-is_beat)*my_cy + (is_beat)*new_cy;
398per_frame_46=  s = (1-is_beat)*my_s + (is_beat)*new_s;
399per_frame_47=my_rot = rot;
400per_frame_48=my_zoom = zoom;
401per_frame_49=my_warp = warp;
402per_frame_50=my_cx = cx;
403per_frame_51=my_cy = cy;
404per_frame_52=my_s = s;
405per_frame_53=
406per_frame_54=q11 = s;
407per_pixel_1=zoom = zoom + cos(ang*7)*0.02;
408warp_1=`sampler sampler_worms;
409warp_2=`float3 color, mus;
410warp_3=`float dx,dy;
411warp_4=`shader_body {
412warp_5=`
413warp_6=`
414warp_7=`float2 uv1 = (uv-.5) * aspect.xy;
415warp_8=`
416warp_9=`float2 uv6 = uv1;
417warp_10=`float z = q10*24*length(((uv1.x)*(uv1.y)));
418warp_11=`float2 d = normalize(uv1);
419warp_12=`float2 rs = clamp(tan(z)*d,-2,2);
420warp_13=`uv += .01*lum(GetBlur1(uv))*float2 (0,1);
421warp_14=`uv -= rs/200;
422warp_15=`
423warp_16=`uv6 = .4*sin(uv*6+rand_frame*16);
424warp_17=`mus = .1/(length(uv6));
425warp_18=`mus *= .5*(1+roam_cos);
426warp_19=`
427warp_20=`float3 blur = GetBlur2(frac(uv));
428warp_21=`
429warp_22=`float3 crisp= tex2D(sampler_main,uv);
430warp_23=`
431warp_24=`float3 ret1 = crisp - blur*.02 + .1*mus;
432warp_25=`
433warp_26=`q25 = 1;
434warp_27=`ret = q25*(ret1*.99-.025) + (1-q25)* GetPixel(uv_orig);
435warp_28=`
436warp_29=`}
437comp_1=`shader_body
438comp_2=`{
439comp_3=`
440comp_4=`    uv = 0.05 + 0.9*uv;
441comp_5=`    ret = GetBlur1(uv);
442comp_6=`    uv += -.05*asin(3*ret.yx)+.05*cos(2*ret.zz)-0.025;
443comp_7=`
444comp_8=`    ret = tex2D(sampler_main,uv);
445comp_9=`    ret += GetBlur1(uv);
446comp_10=`
447comp_11=`    // palettize:
448comp_12=` //   ret = pow(lum(ret), float3(0.3, .76, 0.87));
449comp_13=`
450comp_14=`    // invert
451comp_15=`    ret = saturate(ret);
452comp_16=`    ret *= ret;
453comp_17=`    //ret.xyz *= 2; // a little bit of overbright
454comp_18=`}
455comp_19=`
456comp_20=`
457