Skip to content

Definitions

This file is superseded by Glossary, which consolidates all terms including newer features (audio synthesis, multi-axis, stim characters, tones, groove). This file is kept for backward compatibility with existing links.


A

Action A single {at, pos} pair in a funscript file. at is a timestamp in milliseconds; pos is a device position from 0 (bottom) to 100 (top). A funscript is a sorted list of actions.

Amplitude The stroke depth of a phrase or cycle — how far the device moves from its lowest to its highest position within one oscillation. Measured as max_pos − min_pos. Full amplitude = 100; typical healthy amplitude = 60–90.

Amplitude span The total position range covered by a phrase: the difference between the highest and lowest positions seen across all actions in the phrase.

Assessment The full structural analysis of a funscript. Produced automatically when you load a file. Contains all phases, cycles, patterns, phrases, BPM transitions, and behavioral tags.


B

Behavioral tag A label assigned to a phrase by the behavioral classifier. Describes the dominant motion characteristic: stingy, giggle, plateau, drift, half_stroke, drone, lazy, or frantic. Phrases without a tag are well-formed.

Blend seams An optional export pass that detects high-velocity jumps at phrase boundaries and applies targeted smoothing only at those transitions. Does not affect the interior of any phrase.

BPM (beats per minute) The oscillation rate of a phrase or section. Measured as cycles per minute. 120 BPM = 120 complete up-down strokes per minute. Most mechanical devices handle up to ~200 BPM reliably.

BPM threshold The BPM value used by the auto-suggestion engine in the Export tab to decide which transforms to recommend. Default is 120. Adjustable in the sidebar under Chart settings.

BPM transition A detected tempo change between consecutive phrases. Shown as a thin vertical line on the Phrase Selector chart.


C

Cycle One complete up-down oscillation. A paired up phase + down phase. One cycle = one beat at the script's current BPM.

Cycle count The number of complete oscillations in a phrase.


D

Device funscript The export output intended for mechanical devices (Handy, OSR2, SR6, etc.). Velocity is capped at 200 pos/s. Saved as {name}.device.funscript.

Device safety The combination of quality-gate checks and velocity capping applied to the device export. Protects mechanical devices from motion commands they cannot execute safely.


E

Estim funscript The export output intended for electrostim routing (Restim, funscript-tools, Mk312, 2B, ET312). No velocity cap — the full waveform is preserved. Saved as {name}.estim.funscript.


F

Final smooth An optional export pass that applies a light global low-pass filter to the entire output. Default strength: 0.10. Removes residual sharp edges after all transforms have been applied.

Forge log A _forge_log metadata block embedded in every exported funscript. Records the version, export timestamp, source filename, every transform applied (with parameters), and export options (blend seams, final smooth, clamp count).

Frantic A behavioral tag. Assigned to phrases with BPM above 200 — near or above the mechanical limits of most devices.

Funscript A .funscript file — a JSON document containing a sorted list of {at, pos} actions that describe device motion over time. The standard format for haptic device control.


G

Giggle A behavioral tag. Assigned to phrases with a very small amplitude span (< 20) centered around 50 — micro-motion that is barely perceptible.


H

Half-stroke A behavioral tag. Assigned to phrases with reasonable amplitude but confined to one half of the range (top or bottom). The device only uses half its capability.


L

Lazy A behavioral tag. Assigned to phrases with low BPM (< 60) and narrow amplitude span (< 50). Slow and shallow — low energy.

Low-pass filter (LPF) A smoothing operation that reduces high-frequency variation. Used internally by several transforms (smooth, break, performance, blend seams, final smooth) to soften sharp transitions.


O

Oscillation count The total number of up-down pairs in a phrase (sum of oscillations across all cycles). Related to but not the same as cycle count — a cycle with multiple oscillations contributes more than 1.


P

Pattern A group of cycles with similar direction sequence and timing. The building block of a phrase.

Passthrough A transform that makes no changes. Used to explicitly mark a phrase as reviewed and accepted as-is.

Phase The smallest unit of motion. A single continuous movement in one direction — either upward, downward, or flat.

Phrase A meaningful section of a funscript — the level at which FunscriptForge lets you work. Defined by a start time, end time, BPM, cycle count, amplitude characteristics, and a behavioral tag.

Phrase Editor The tab in FunscriptForge where you edit one phrase at a time. Shows an original chart, a live preview chart, and transform controls.

Plateau A behavioral tag. Assigned to phrases with a moderate amplitude span (20–40) centered in the middle of the range. Some motion, but lacking full range.

Position (pos) A device position value from 0 (fully retracted / bottom) to 100 (fully extended / top). The unit all actions and transforms operate in.


R

Recenter A transform that shifts all positions in a phrase so the midpoint lands at a target value. Used to fix drift and half-stroke phrases.


S

Seam The boundary between two adjacent phrases. A point where one transform's output meets another's. Can produce velocity spikes if the transforms move the device in different directions at their endpoints.

Split Dividing a phrase at a cycle boundary into two sub-phrases, each with its own transform. Useful when a phrase has two distinct characters.

Stingy A behavioral tag. Assigned to phrases with full amplitude span, high velocity, and high BPM — intense, demanding, no variation.


T

Transform An operation applied to a phrase that changes how it feels — stroke depth, velocity profile, centering, smoothing, or tempo. Does not change action timestamps. 25 built-in transforms are available.


V

Velocity The rate of position change between two consecutive actions. Measured in positions per second (pos/s). Device safety thresholds: warning at 200 pos/s, error at 300 pos/s.


W

Window A user-defined time range used in the CLI customize step. Four window types: performance, break, raw, beats. Each type applies a different processing profile to the actions within it.