Foundation · Constant speed
✦ Magic Missile
cartesian
A linear forward equation adds the same distance every second, while zero sideways motion keeps the path straight.
Try this: Change 140 to compare a quick probing shot with a slower, harder-hitting cast.
Foundation · Quadratic curves
◆ Arc Bolt
cartesian
x(t) = 135 * t
y(t) = 10 * t ^ 2
The squared time term grows faster as the spell ages, so the bolt bends more sharply the farther it travels.
Try this: Reverse the sign of 10 to mirror the arc, then adjust its magnitude to skim a ward.
Foundation · Sine waves
≈ Serpent Wave
cartesian
x(t) = 145 * t
y(t) = 110 * sin(1.4 * t)
Sine repeatedly crosses the aim line. The outside number controls wave height and the multiplier beside t controls repetition.
Try this: Alter 110 and 1.4 separately so you can feel the difference between amplitude and frequency.
Foundation · Changing frequency
◌ Chrono Sweep
cartesian
x(t) = 130 * t
y(t) = 90 * sin(1.2 * t + 0.08 * t ^ 2)
Adding a squared time term inside sine makes the oscillation accelerate, compressing each successive sweep.
Try this: Remove the squared term, then restore it with a negative sign and compare the rhythm.
Advanced · Absolute-value interference
✦ Rift Needle
cartesian
x(t) = 760 * t
y(t) = 75 * (abs(sin(4.2 * t)) - abs(sin(2.1 * t)))
Two absolute sine waves are subtracted. Their repeating peaks align and separate at different times, producing a fast, jagged needle.
Try this: Halve both frequencies or reduce 760 to make the interference pattern easier to watch.
Advanced · Clamping with min and max
≈ Clamp Serpent
cartesian
x(t) = 320 * t
y(t) = 150 * max(-0.65, min(0.65, sin(2.6 * t)))
min and max hold the sine result inside a narrow range, flattening the top and bottom of an otherwise smooth wave.
Try this: Change both 0.65 limits together and watch the flat sections grow or disappear.
Advanced · Capped absolute waves
✦ Prism Pulse
cartesian
x(t) = 520 * t
y(t) = 90 * min(0.65, abs(sin(3.4 * t)))
abs folds every negative sine value upward, while min caps the peaks to create a quick sequence of one-sided pulses.
Try this: Raise the 0.65 cap or remove abs to uncover the original wave.
Advanced · Bounded steps
◌ Mirror Step
cartesian
x(t) = 230 * t + 65 * abs(sin(2.8 * t))
y(t) = 120 * max(-0.7, min(0.7, cos(2.1 * t)))
Absolute sine adds repeated forward surges while a clamped cosine holds the sideways motion in broad plateaus.
Try this: Lower 65 to soften the surges, then widen the ±0.7 clamp.
Advanced · Layered frequencies
◌ Switchback Hex
cartesian
x(t) = 180 * t + 55 * abs(sin(3.1 * t))
y(t) = 105 * sin(1.7 * t) + 35 * abs(sin(4.1 * t))
A slow signed wave establishes the main switchback while a faster absolute wave adds small one-sided kinks.
Try this: Set either 105 or 35 to zero to isolate each layer before recombining them.
Advanced · Polar modulation
≈ Spiral Snare
polar
r(t) = 85 * t
θ(t) = 0.45 * t + 0.18 * sin(2 * t)
Radius grows steadily while the angle combines constant rotation with a small sine wobble, producing an uneven spiral.
Try this: Remove the sine term for a regular spiral, then reverse the angular speed.
Advanced · Slow clamped motion
◆ Crawling Ward
cartesian
x(t) = 90 * t
y(t) = 150 * max(-0.8, min(0.8, sin(1.1 * t)))
A slow forward rate gives the spell time to linger while clamping turns its sideways sine wave into long guarded lanes.
Try this: Compare 90t with 180t, then narrow the ±0.8 limits.
Advanced · Delayed layered waves
◌ Border Wraith
cartesian
x(t) = 420 * t - 120 * max(0, t - 2.2)
y(t) = 150 * min(1, 5 * max(0, t - 2.2)) * (0.65 * sin(6 * max(0, t - 2.2)) + 0.35 * sin(11 * max(0, t - 2.2)))
max holds the sideways motion at zero for 2.2 seconds. After 924 forward units, two waves grow into a weave. The transition follows elapsed time wherever you cast.
Try this: Change both delay values together, then remove one wave to see what it contributes.
Advanced · Delayed clamped waves
≈ Clampjack
cartesian
x(t) = 400 * t - 80 * max(0, t - 2.3)
y(t) = 170 * min(1, 6 * max(0, t - 2.3)) * max(-0.75, min(0.75, 1.3 * sin(5 * max(0, t - 2.3))))
The spell travels straight for 2.3 seconds, covering 920 forward units. A short ramp introduces a wave with flattened peaks. Position stays continuous as its direction changes.
Try this: Change the 0.75 limits together to widen or narrow the flattened lanes.
Advanced · Delayed polar rotation
◆ Ambush Coil
polar
r(t) = min(1400, 410 * t - 90 * max(0, t - 2.25))
θ(t) = 0.9 * max(0, t - 2.25) + 0.12 * sin(5 * max(0, t - 2.25))
The angle stays zero for 2.25 seconds, covering about 922 units. Rotation then begins. The radius stops growing at 1400 units, keeping later motion bounded.
Try this: Remove the small sine term to compare steady rotation with the wobble.