["Loop Constant Left To Right,expression,\nvar speedX=10;//Constant duration - To customize \nvar x0=-sourceRectAtTime().width*.5; \nvar x1=thisComp.width-x0; \nvar fps= 1/thisComp.frameDuration; \nvar vel=timeToFrames(time + thisComp.displayStartTime$fps$false)*speedX; \n[x0+(speedX*vel)%(x1-x0)$transform.position[1]];,ADBE Position","Loop Accelerate Left To Right,expression,\nvar speedX=time;//Acceleration - To customize \nvar x0=-sourceRectAtTime().width*.5; \nvar x1=thisComp.width-x0; \nvar fps= 1/thisComp.frameDuration; \nvar vel=timeToFrames(time + thisComp.displayStartTime$fps$false)*speedX; \n[x0+(speedX*vel)%(x1-x0)$transform.position[1]];,ADBE Position","Loop Constant Right To Left,expression,\nvar speedX=10;//Constant duration - To customize\nvar x0=-sourceRectAtTime().width*.5;\nvar x1=thisComp.width-x0;\nvar fps= 1/thisComp.frameDuration;\nvar vel=timeToFrames(time + thisComp.displayStartTime$fps$false)*speedX;\n[x1-(speedX*vel)%(x0-x1)$transform.position[1]];,ADBE Position","Loop Accelerate Right To Left,expression,\nvar speedX=time;//Acceleration duration - To customize\nvar x0=-sourceRectAtTime().width*.5;\nvar x1=thisComp.width-x0;\nvar fps= 1/thisComp.frameDuration;\nvar vel=timeToFrames(time + thisComp.displayStartTime$fps$false)*speedX;\n[x1-(speedX*vel)%(x0-x1)$transform.position[1]];,ADBE Position","Loop Constant Top To Bottom,expression,\nvar speedY=5;//Constant duration - To customize\nvar y0=-sourceRectAtTime().height*.5;\nvar y1=thisComp.height-y0;\nvar fps= 1/thisComp.frameDuration;\nvar vel=timeToFrames(time + thisComp.displayStartTime$fps$false)*speedY;\n[transform.position[0]$y0+(speedY*vel)%(y1-y0)],ADBE Position","Loop Accelerate Top To Bottom,expression,\nvar speedY=time;//Acceleration duration - To customize\nvar y0=-sourceRectAtTime().height*.5;\nvar y1=thisComp.height-y0;\nvar fps= 1/thisComp.frameDuration;\nvar vel=timeToFrames(time + thisComp.displayStartTime$fps$false)*speedY;\n[transform.position[0]$y0+(speedY*vel)%(y1-y0)],ADBE Position","Loop Constant Bottom To Top,expression,\nvar speedY=5;//Constant duration - To customize\nvar y0=-sourceRectAtTime().height*.5;\nvar y1=thisComp.height-y0;\nvar fps= 1/thisComp.frameDuration;\nvar vel=timeToFrames(time + thisComp.displayStartTime$fps$false)*speedY; [transform.position[0]$y1-(speedY*vel)%(y0-y1)],ADBE Position","Loop Accelerate Bottom To Top,expression,\nvar speedY=time;//Constant duration - To customize\nvar y0=-sourceRectAtTime().height*.5;\nvar y1=thisComp.height-y0;\nvar fps= 1/thisComp.frameDuration;\nvar vel=timeToFrames(time + thisComp.displayStartTime$fps$false)*speedY; [transform.position[0]$y1-(speedY*vel)%(y0-y1)],ADBE Position","LoopIn Mix LoopOut,expression,var l='cycle';loopIn( l ) + loopOut( l ) - value;,All","Iterative Wiggle (Loop),expression,\nvar amp = 30;//to customize \nvar freq = 2;//to customize \nvar loopTime = 10;//to customize \nvar t = time % loopTime; \nvar wiggle1 = wiggle(freq$ amp$ 1$ 0.5$ t); \nvar wiggle2 = wiggle(freq$ amp$ 1$ 0.5$ t-loopTime); \nlinear(t$ 0$ loopTime$ wiggle1$ wiggle2),All","Inertia Bounce [Needs Keys],expression,amp = .05;\nfreq = 4.0;\ndecay = 8.0;\nn = 0;if (numKeys > 0){n = nearestKey(time).index;if (key(n).time > time){n--;}}if (n == 0){t = 0;}else{t = time-key(n).time;}if (n > 0 && t < 1){v = velocityAtTime(key(n).time-thisComp.frameDuration*.1);value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);}else{value;},ADBE Position","Explosive Overshoot [Needs Keys],expression,var freq = 5;//to edit \n var amp = 1;//to edit \n var decay =5;//to edit \n var n = 0;\n var t=0;\n if (numKeys > 0) { n = nearestKey(time).index; if (key(n).time > time) {n--; } } if (n == 0) { \n t = 0;\n } else { \n t = time-key(n).time; \n } if (n > 0) { \n var v = velocityAtTime(key(n).time-thisComp.frameDuration / 10);\n value + v * amp * Math.sin(freq * t * 2 * Math.PI) / Math.exp(decay * t); \n } else { \n value; \n }\n,All","Bounce Back,expression,e = .7;\ng = 5000;\nnMax = 9;\nn = 0;\nif (numKeys > 0) { n = nearestKey(time).index; if (key(n).time > time) --n; } if (n > 0) { t = time-key(n).time; v = -velocityAtTime(key(n).time-.001) * e; vl = length(v); if (value instanceof Array) { vu = (vl > 0) ? normalize(v) : [0$ 0$ 0]; } else { vu = (v < 0) ? -1 : 1; } tCur = 0; segDur = 2 * vl / g; tNext = segDur; bounces = 1; while (tNext < t && bounces <= nMax) { vl *= e; segDur *= e; tCur = tNext; tNext += segDur; bounces++ } if (bounces <= nMax) { delta = t-tCur; value + vu * delta * (vl-g * delta *.5); } else { value } } else value, ADBE Position","Random Speed,expression, seedRandom(index$true); x = random(100$ 200);\n[value[0]$value[1]+time * -x],ADBE Position","Revolve in a Circle,expression,var amountX = 100;\nvar amountY = 100;\n[(thisComp.width*.5)$ (thisComp.height*.5)] + [Math.sin(time)*amountX$ -Math.cos(time)*amountY],ADBE Position","Maintain Stroke Width,expression,//Thanks to Adam Plouff \n mySin=Math.sin(45);\nfixedWidth = value/length(toComp([0$0])$ toComp([mySin$mySin])) || .001;\nfixedWidth,ADBE Vector Stroke Width","Blink / Wink,expression,var wink = 5;\nvar sin = Math.sin(time*wink);if(sin < 0) 0;else 100;,ADBE Opacity","Tick Down + Slider,expression,var timeAmount = framesToTime(thisComp.layer(\"Controller\").effect(\"time\")(\"1\"));var mvt = thisComp.layer(\"Controller\").effect(\"amount\")(\"1\");var ftt = framesToTime(timeAmount);x = value[0];y = Math.floor(time / timeAmount) * mvt + value[1];[x$y],ADBE Position","Squash And Stretch A,expression,var fade = 20;\nif (marker.numKeys<2){ tSecs = fade / ( 1 / thisComp.frameDuration); linear(time$ inPoint$ inPoint + tSecs$ 0$ 100) -linear(time$ outPoint-tSecs$ outPoint$ 0$ 100) }else{ linear(time$ inPoint$ marker.key(1).time$ 0$ 100)-linear(time$ marker.key(2).time$ outPoint$ 0$ 100) },ADBE Scale","Squash And Stretch B,expression,maxDev = 13; // max deviation in pixels\nspd = 30; //speed of oscillation\ndecay = 1.0; //how fast it slows down\nt = time - inPoint; x = scale[0] + maxDev*Math.sin(spd*t)/Math.exp(decay*t); y = scale[0]*scale[1]/x; [x$y];,ADBE Scale","Looping Wiggle,expression,var freq = 1;\namp = 110;\nloopTime = 3;\nt = time % loopTime; wiggle1 = wiggle(freq$ amp$ 1$ 0.5$ t); wiggle2 = wiggle(freq$ amp$ 1$ 0.5$ t-loopTime); linear(t$ 0$ loopTime$ wiggle1$ wiggle2),ADBE Position","Vertical Wiggle Y axis,expression,org=value;\ntemp=wiggle (5$50);\n[org[0]$temp[1]];,ADBE Position","Horizontal Wiggle X axis,expression,org=value;\ntemp=wiggle (5$50);\n[temp[0]$org[1]];,ADBE Position","Timer Coder/ Counter/ Chrono [Text Layer],expression,var hour = Math.floor((time/60)/60); var min = Math.floor(time/60); var sec = Math.floor(time); var mili = Math.floor(time*60); if (mili>59){ mili = mili-sec*60;}; if (mili<10){ mili = \"0\" + mili; } if (sec > 59){ sec = sec-min*60; }; if (sec<10){ sec = \"0\" + sec; } if (min >= 59){ min = min-hour*60; }; if (min<10){ min = \"0\" + min; }; if (hour<10){ hour = \"0\" + hour;}; hour + \" : \" + min + \" : \" + sec + \" : \" + mili,ADBE Text Document","Elastic WoOoOw! [Needs Keys],expression,var p = 0.65;\nvar a = 145;\nvar s = 1.70158;\nfunction oE(t$ b$ c$ d$ a$ p) { if (t == 0) return b; if ((t /= d) == 1) return b + c; if (!p) p = d * .3; if (!a || a < Math.abs(c)) { a = c; var s = p / 4; } else var s = p / (2 * Math.PI) * Math.asin(c / a); return (a * Math.pow(2$ -10 * t) * Math.sin((t * d-s) * (2 * Math.PI) / p) + c + b); } function elastic() { var n = 0; if (numKeys > 0) { n = nearestKey(time).index; if (key(n).time > time) { --n } } try { var key1 = key(n); var key2 = key(n + 1); } catch (e) { return null; } var dim = 1; try { key(1)[1]; dim = 2; key(1)[2]; dim = 3; } catch (e) {} t = time-key1.time; d = key2.time-key1.time; sX = key1[0]; eX = key2[0]-key1[0]; if (dim >= 2) { sY = key1[1]; eY = key2[1]-key1[1]; if (dim >= 3) { sZ = key1[2]; eZ = key2[2]-key1[2]; } } if ((time < key1.time) || (time > key2.time)) { return value; } else { val1 = oE(t$ sX$ eX$ d$ a$ p$ s); switch (dim) { case 1: return val1; break; case 2: val2 = oE(t$ sY$ eY$ d$ a$ p$ s); return [val1$ val2]; break; case 3: val2 = oE(t$ sY$ eY$ d$ a$ p$ s); val3 = oE(t$ sZ$ eZ$ d$ a$ p$ s); return [val1$ val2$ val3]; break; default: return null; } } } (elastic() || value),ADBE Position","Undulation / Sway / Swing / Wave Position,expression,xAmp = 40;\nxFreq = .3;\nxSpeed = 150;\nwl = xSpeed/xFreq;\nphaseOffset = ((position[0]%wl)/wl)*2*Math.PI; y = xAmp*Math.sin(2*Math.PI*xFreq*time + phaseOffset); value + [0$y],ADBE Position","Overshoot Scale,expression,var freq = .75;\nvar decay = 1.5;\nvar t = time-inPoint;\nvar startVal = [0$0];var endVal = [100$100]; dur = 0.1; if (t < dur){linear(t$0$dur$startVal$endVal); }else{ amp = (endVal-startVal)/dur; w = freq*Math.PI*2; endVal + amp*(Math.sin((t-dur)*w)/Math.exp(decay*(t-dur))/w); },ADBE Scale","Overshoot [Needs Keys],expression,var a = 30;\nvar f = 30;\nvar d = 40;\nvar nK = nearestKey(time);\nvar n = ( nK.time <= time ) ? nK.index : --nK.index;\nvar t = ( n === 0 ) ? 0 : time - key( n ).time;\nif ( n > 0 && t < 1 ) { var v = velocityAtTime( key( n ).time - thisComp.frameDuration / 10 );\nvalue + v * a * .001 * Math.sin( f * .1 * t * 2 * Math.PI ) / Math.exp( d * .1 * t );\n} else { value;\n},ADBE Position and Keys","Undulation / Sway / Swing / Wave Rotation,expression,var xFreq = .3; //undulations per second\nvar xSpeed = 150;//speed of wave (pixels per second)\nvar damping = 15; //undulation damping factor\nwl = xSpeed/xFreq; //wavelength (pixels)\nvar phaseOffset = ((position[0]%wl)/wl)*2*Math.PI;\nvar theta = Math.atan(Math.cos(2*Math.PI*xFreq*time + phaseOffset));\nradiansToDegrees(theta)/damping;,ADBE Rotate Z","Vibrate and Shake [Needs Key(s)],expression,var v = 15;//velocity\nvar amp = 50;//amplitude \nvar d = .75//decay;\ny = amp*Math.cos(v*time)/Math.exp(d*time);\nvalue + [0$y],ADBE Position and Keys","Markers Drives Keys [Needs Keys],expression,var f=marker.nearestKey(time)$n=f.index$time<marker.key(n).time&&(n-=1)$0==n&&(n=1)$t=time-marker.key(n).time$thisProperty.valueAtTime(t),ADBE Position and Keys","Text Start From Center,expression,var tx = thisLayer.sourceRectAtTime(time$false).width*.5 + thisLayer.sourceRectAtTime(time$false).left;\n var ty = thisLayer.sourceRectAtTime(time$false).height*.5 + thisLayer.sourceRectAtTime(time$false).top;\n[tx$ty],ADBE Anchor Point","Center Anchor Point [For Ever!],expression,var l = thisLayer;\nvar fromLeft = l.sourceRectAtTime().left;\nvar fromTop = l.sourceRectAtTime().top;\nvar lW = l.sourceRectAtTime().width;\nvar lH = l.sourceRectAtTime().height;\nvar leftAndHalfWidth = fromLeft + (lW*.5);\nvar topAndHalfHeight = fromTop + (lH*.5);\n[leftAndHalfWidth$topAndHalfHeight],ADBE Anchor Point","360 - Petals [Duplicate layer After Injection],expression,var numbOfCopies=12;//To customize\nindex*360/numbOfCopies,ADBE Rotate Z","Center Layer [For Ever!],expression,[thisComp.width*.5$thisComp.height*.5];,ADBE Position","Inherit Parent Opacity,expression,(hasParent) ? (parent.opacity*.01) * value : value;,ADBE Opacity","Ignore Parent Scale,expression,var sc = new Array();\nparentScale = parent.transform.scale.value;\n for (var i = 0; i < parentScale.length; ++i){\n\t sc[i] = (parentScale[i]== 0) ? 0 : value[i]*100/parentScale[i];\n }\nsc,ADBE Scale","Ignore Parent Rotation,expression,value - parent.transform.rotation, ADBE Rotate Z","Pendulum / Swing Around Anchor Point,expression,var swingNumber= 5//number of swings\nvar fps= 1/thisComp.frameDuration; var t=time; for (i=Math.sin(time);i<0;i*=0){t=0;} easeOut(0$(Math.sin(t*swingNumber)*fps)$100);, ADBE Rotate Z","Number of Loops (30 by default),expression,var nLoops = 30;//Number of loops\n if (numKeys > 1){ \n loopDur = key(numKeys).time - key(1).time;\n n = Math.floor((time - key(1).time)/loopDur);\n if (n < nLoops){ t = (time - key(1).time)%loopDur;\n \tvalueAtTime(key(1).time + t); }\n else{ valueAtTime(key(numKeys).time); } \n }else {\n value;\n }\n,All","Exponential Zoom Loop [Pulse],expression,var s =100;//speed of scale\n var f = .05; // frequence in seconds\n var ins=5;//length of time of appearance\n var toIns = ins+ ins*f;\n var t=(time-index*f+f);\n [-s+Math.exp(t%toIns) * s$-s+Math.exp(t%toIns) * s],ADBE Scale","List Layers Name [Need Text Layer],expression,a = new Array(); for (i = 0; i < thisComp.numLayers; i++) { a[i] = thisComp.layer(i+1).name; } a.slice(2$ thisComp.numLayers).join('\r\n'),ADBE Text Document","Fade In & Out in seconds,expression,var fade =1;//fade in and Out in Seconds\n fadeIn = (time - inPoint) / fade; fadeOut = (outPoint - time) / fade; if (time < inPoint + fade) { ease(fadeIn$ 0$ 1) * value } else if (time > outPoint - fade) { ease(fadeOut$ 0$ 1) * value } else { value },ADBE Opacity","Fade while Zoom In [3D layers],expression,var posIn = -2000; var posOut = 5000; var cam = thisComp.activeCamera.toWorld([0$0$0]); var pos = toWorld(anchorPoint); distance = length(cam$ pos); easeIn(distance$ posIn$ posOut$ 100$ 0),ADBE Opacity","Wobble / Wiggle In Container,expression,var spaceFactor=2;//borders\n var zone = [thisLayer.width*spaceFactor$thisLayer.height*spaceFactor];// borders width and height\n var w = wiggle(5$50);\n clamp(w$ value - zone$ value + zone),ADBE Position","Pulse [Frequence, Amplitude],expression,var freq = 2;\n var amp = 25;\n [value[0]+amp*Math.sin(freq*time*Math.PI*2)$value[1]+amp*Math.sin(freq*time*Math.PI*2)],ADBE Scale","Simple Spin,expression,var v = 360;//degree per second\nvalue +(time - inPoint)* v, ADBE Rotate Z"]