Simple Stroke Clicker

Something Different

Go faster, go slower, bigger range, shorter range… but what I was interested in were more interesting patterns.

Therefore I started to try out different patterns by building a funscript generator and trying different things out. Hence I built an app for testing that I thought I would share with you lovely folks. (only tested with Handy v2)

Stroke Tester App

Stroke Type Range (Min-Max) Speed (Interval) Pattern Description
Foundation 0% – 30% Medium Fast (400ms) Gentle, shallow strokes at the bottom. Consistent velocity.
Cruise 30% – 70% Medium (500ms) Middle-range stimulation. “Working” pace with smooth transitions.
Overdrive 30% – 70% Fast (250ms) Same range as Cruise but with higher frequency.
Hummingbird 35% – 65% Kinetic (100ms) Tiny, vibrating jitters in the exact center of the range.
Blast 0% – 100% Max (150ms) Full-length power strokes. Hard stops at both ends.
Bounce 100% – 0% Decaying Sequence of bounces (100, 80, 64…), followed by 2s vibration.
Just the Tip 80% – 100% Fast (200ms) Shallow strokes at the very top of the range.
Firework 0% – 100% Asymmetric 150ms snap to top, 850ms controlled descent to bottom.
Red Light, Green Light 20% – 90% Variable 8-20x moderate strokes, then a 4-10s hard pause.
Tease 0% – 100% Very Slow 2000ms travel time with a 500ms “freeze” at the peak of each stroke.
Ramping Loop 10% – 90% 800ms → 150ms Starts slow and increases speed by 100ms every stroke until max speed.
Heartbeat 0% – 20% Asymmetric “Double-tap” rhythm: two quick 150ms pulses followed by 1000ms pause.
Avalanche 50% → 0-100% Medium Range expands by 10% each stroke (45-55, 40-60, etc.) until full.
Wave 0% – 100% Sine-based Smooth easing; fastest in the middle, slowest at the turnarounds.
Flicker 0-10% & 90-100% Fast (250ms) Instant jumps between bottom-shallow and top-shallow strokes.
Breath 0% – 100% Very Slow 3s descent (inhale), 1s hold, 1s snap ascent (exhale).
The Piston 0% – 50% Accelerating 5 short strokes at 400ms, immediately followed by 1 full 0-100% “Blast” stroke.
Gravity 0% – 100% Geometric Simulated freefall: 500ms up, then 100ms “drop” to bottom with a 50ms jitter at the base.
Engine Idle 0% – 20% Irregular Jittery base-level idling with a random full-range “rev” every 2–10 seconds.
Compression 0% – 100% Constant 10 full strokes where the top boundary drops by 10% each time (100, 90, 80…) until it hits 10%.

What to expect

This is just testing the patterns, as I will be using to create compilations using them in the end, but I thought might as well share my testing environment for people to enjoy. It is a very simple implementation of patterns have an element of randomness, some that move between two different types of strokes, and some that just pump away.

Moving Forward

I don’t think I will do any more that have this as a way of testing my patterns, however happy to hear from anyone who uses it.

11 Likes