MILKDROP_PRESET_VERSION=201
PSVERSION=2
PSVERSION_WARP=2
PSVERSION_COMP=2
[preset00]
fRating=3.000000
fGammaAdj=2.000000
fDecay=0.980000
fVideoEchoZoom=2.000000
fVideoEchoAlpha=0.000000
nVideoEchoOrientation=0
nWaveMode=6
bAdditiveWaves=0
bWaveDots=0
bWaveThick=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=1
bTexWrap=0
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=0.800000
fWaveScale=0.132666
fWaveSmoothing=0.750000
fWaveParam=0.000000
fModWaveAlphaStart=0.750000
fModWaveAlphaEnd=0.950000
fWarpAnimSpeed=1.000000
fWarpScale=1.000000
fZoomExponent=1.000000
fShader=0.000000
zoom=1.000000
rot=0.000000
cx=0.500000
cy=0.500000
dx=0.000000
dy=0.000000
warp=1.000000
sx=1.000000
sy=1.000000
wave_r=0.500000
wave_g=0.500000
wave_b=0.500000
wave_x=1.000000
wave_y=0.550000
ob_size=0.010000
ob_r=0.000000
ob_g=0.000000
ob_b=0.000000
ob_a=0.000000
ib_size=0.010000
ib_r=0.250000
ib_g=0.250000
ib_b=0.250000
ib_a=0.000000
nMotionVectorsX=12.000000
nMotionVectorsY=9.000000
mv_dx=0.000000
mv_dy=0.000000
mv_l=0.900000
mv_r=1.000000
mv_g=1.000000
mv_b=1.000000
mv_a=0.000000
b1n=0.000000
b2n=0.000000
b3n=0.000000
b1x=1.000000
b2x=1.000000
b3x=1.000000
b1ed=0.250000
wavecode_0_enabled=0
wavecode_0_samples=512
wavecode_0_sep=0
wavecode_0_bSpectrum=0
wavecode_0_bUseDots=0
wavecode_0_bDrawThick=0
wavecode_0_bAdditive=0
wavecode_0_scaling=1.000000
wavecode_0_smoothing=0.500000
wavecode_0_r=1.000000
wavecode_0_g=1.000000
wavecode_0_b=1.000000
wavecode_0_a=1.000000
wavecode_1_enabled=0
wavecode_1_samples=512
wavecode_1_sep=0
wavecode_1_bSpectrum=0
wavecode_1_bUseDots=0
wavecode_1_bDrawThick=0
wavecode_1_bAdditive=0
wavecode_1_scaling=1.000000
wavecode_1_smoothing=0.500000
wavecode_1_r=1.000000
wavecode_1_g=1.000000
wavecode_1_b=1.000000
wavecode_1_a=1.000000
wavecode_2_enabled=0
wavecode_2_samples=512
wavecode_2_sep=0
wavecode_2_bSpectrum=0
wavecode_2_bUseDots=0
wavecode_2_bDrawThick=0
wavecode_2_bAdditive=0
wavecode_2_scaling=1.000000
wavecode_2_smoothing=0.500000
wavecode_2_r=1.000000
wavecode_2_g=1.000000
wavecode_2_b=1.000000
wavecode_2_a=1.000000
wavecode_3_enabled=0
wavecode_3_samples=512
wavecode_3_sep=0
wavecode_3_bSpectrum=0
wavecode_3_bUseDots=0
wavecode_3_bDrawThick=0
wavecode_3_bAdditive=0
wavecode_3_scaling=1.000000
wavecode_3_smoothing=0.500000
wavecode_3_r=1.000000
wavecode_3_g=1.000000
wavecode_3_b=1.000000
wavecode_3_a=1.000000
shapecode_0_enabled=0
shapecode_0_sides=100
shapecode_0_additive=0
shapecode_0_thickOutline=0
shapecode_0_textured=0
shapecode_0_x=0.500000
shapecode_0_y=0.500000
shapecode_0_rad=0.164463
shapecode_0_ang=0.000000
shapecode_0_tex_ang=0.000000
shapecode_0_tex_zoom=1.000000
shapecode_0_r=1.000000
shapecode_0_g=1.000000
shapecode_0_b=1.000000
shapecode_0_a=0.000000
shapecode_0_r2=1.000000
shapecode_0_g2=1.000000
shapecode_0_b2=1.000000
shapecode_0_a2=0.000000
shapecode_0_border_r=1.000000
shapecode_0_border_g=1.000000
shapecode_0_border_b=1.000000
shapecode_0_border_a=0.000000
shape_0_per_frame1=a = if(above(bass,2.5),1,0);
shapecode_1_enabled=0
shapecode_1_sides=4
shapecode_1_additive=0
shapecode_1_thickOutline=0
shapecode_1_textured=0
shapecode_1_x=0.500000
shapecode_1_y=0.500000
shapecode_1_rad=0.100000
shapecode_1_ang=0.000000
shapecode_1_tex_ang=0.000000
shapecode_1_tex_zoom=1.000000
shapecode_1_r=1.000000
shapecode_1_g=0.000000
shapecode_1_b=0.000000
shapecode_1_a=1.000000
shapecode_1_r2=0.000000
shapecode_1_g2=1.000000
shapecode_1_b2=0.000000
shapecode_1_a2=0.000000
shapecode_1_border_r=1.000000
shapecode_1_border_g=1.000000
shapecode_1_border_b=1.000000
shapecode_1_border_a=0.100000
shapecode_2_enabled=0
shapecode_2_sides=4
shapecode_2_additive=0
shapecode_2_thickOutline=0
shapecode_2_textured=0
shapecode_2_x=0.500000
shapecode_2_y=0.500000
shapecode_2_rad=0.100000
shapecode_2_ang=0.000000
shapecode_2_tex_ang=0.000000
shapecode_2_tex_zoom=1.000000
shapecode_2_r=1.000000
shapecode_2_g=0.000000
shapecode_2_b=0.000000
shapecode_2_a=1.000000
shapecode_2_r2=0.000000
shapecode_2_g2=1.000000
shapecode_2_b2=0.000000
shapecode_2_a2=0.000000
shapecode_2_border_r=1.000000
shapecode_2_border_g=1.000000
shapecode_2_border_b=1.000000
shapecode_2_border_a=0.100000
shapecode_3_enabled=0
shapecode_3_sides=4
shapecode_3_additive=0
shapecode_3_thickOutline=0
shapecode_3_textured=0
shapecode_3_x=0.500000
shapecode_3_y=0.500000
shapecode_3_rad=0.100000
shapecode_3_ang=0.000000
shapecode_3_tex_ang=0.000000
shapecode_3_tex_zoom=1.000000
shapecode_3_r=1.000000
shapecode_3_g=0.000000
shapecode_3_b=0.000000
shapecode_3_a=1.000000
shapecode_3_r2=0.000000
shapecode_3_g2=1.000000
shapecode_3_b2=0.000000
shapecode_3_a2=0.000000
shapecode_3_border_r=1.000000
shapecode_3_border_g=1.000000
shapecode_3_border_b=1.000000
shapecode_3_border_a=0.100000
per_frame_1=warp = 0;
per_frame_2=wave_r = wave_r + .4*sin(time*.333)+bass_att*.2;
per_frame_3=wave_g = wave_g + .4*sin(time*.555)+treb_att*.2;
per_frame_4=wave_b = wave_b + .4*sin(time*.444)+mid_att*.2;
per_pixel_1=dy = dy+(y*.05);
per_pixel_2=dx = bass*((.02*sin(y*mid*(15*treb*(y+1+.5*(sin(time)))*2)))*y);
warp_1=`shader_body
warp_2=`{
warp_3=`    // sample previous frame
warp_4=`    ret = tex2D( sampler_fc_main, uv ).xyz;
warp_5=`    // darken (decay) over time
warp_6=`    ret = lerp(GetBlur2(uv),ret,.95);
warp_7=`    if (ret.x+ret.y+ret.z < (0+((mid+bass+treb)/3)*.2)){
warp_8=`       ret.x = ret.x+.6;
warp_9=`       ret.y = ret.y+.6;
warp_10=`       ret.z = ret.z+.6;
warp_11=`       }else{
warp_12=`       ret = (ret - .005)*0.99; //or try: ret -= 0.004;
warp_13=`    }
warp_14=`}
comp_1=`sampler sampler_ruin;
comp_2=`shader_body
comp_3=`{
comp_4=`  ret = tex2D(sampler_main,uv).xyz;
comp_5=`  float2 uv3 = float2(uv.x+((.2*mid)*sin(time)),uv.y+((.2*mid)*sin(time*.3456787)));
comp_6=`  float3 ret3 = tex2D(sampler_ruin,uv).xyz;
comp_7=`  float2 uv2 = float2(uv.x,abs(uv.y-1));
comp_8=`  float3 ret2 = tex2D(sampler_main,uv2).xyz;
comp_9=`  ret += ret*ret*10;
comp_10=`  ret2 += ret2*ret2*10;
comp_11=`  ret3 += ret3*ret3*5*treb;
comp_12=`  ret = lerp(ret2,ret,.5);
comp_13=`  ret = lerp(ret,ret3,ret*bass);
comp_14=`}
