[OFS Extension] StrokeSpeed - Gradually speed up or slow down stroke timing

StrokeSpeed

Extension for OpenFunScripter by gayrobot

Sequence01-ezgif.com-optimize(1)


What Is This?
Another extension I made just to make my own life easier.

Check out the companion extensions:
StrokeScale
StrokeSlide

StrokeSpeed is an extension that automates tedious timing transformations in OpenFunScripter. Instead of manually adjusting dozens of timestamps one by one, you can transform entire sections of your script in seconds with live preview.
Gradually speed up or slow down stroke timing to create intensity build-ups, wind-downs, or smooth transitions between different tempos.


Download
Current Version
StrokeSpeed v0.1 - Download

IMPORTANT - Known Issues
:warning: Select points at the END of your script to avoid bugs
:warning: Current version has issues when transforming points in the middle of scripts
:warning: These bugs will be fixed in future updates


Installation

• Download the .rar file and extract the StrokeSpeed folder
• Copy it to your OFS extensions folder (In OFS Click Extensions→Extension directory)
• StrokeSpeed will appear in your extensions menu


How to Use

• Select the points you want to transform in your script (at the end of the script)
• Open StrokeSpeed from the extensions menu
• Turn on Live Preview to see changes in real-time
• Adjust the settings until it looks right
• Turn off Live Preview to commit the changes


Settings Explained

Live Preview
• Shows you changes instantly as you adjust settings
• Uncheck to commit changes


Stroke Detection Mode
This tells the tool how to group your points into “strokes” before transforming them.

Peak-to-Peak
• Groups points from one valley/bottom to the next
• Best for regular up-down stroke patterns

Direction Changes
• Starts a new group every time the stroke changes direction
• Best for complex multi-point strokes like 0-20-100-80-0

Time Windows
• Groups points that happen within X milliseconds of each other
• Best for when timing matters more than pattern

Point Count
• Groups every X points together, no matter what
• Best for consistent grouping regardless of pattern or timing

All Selected as One
• Treats your entire selection as a single stroke
• Best for applying one smooth transformation across everything


Speed Range

Start %
How fast strokes play at the beginning of your selection
100% = no change (original stroke speed)
50% = half speed (slower, more time between strokes)
200% = double speed (faster, less time between strokes)

End %
How fast strokes play at the end of your selection
100% = no change (original stroke speed)
50% = half speed (slower, more time between strokes)
200% = double speed (faster, less time between strokes)

Example Uses:
Start: 100%, End: 200% = Strokes gradually speed up (build up intensity)
Start: 200%, End: 100% = Strokes gradually slow down (wind down)
Start: 150%, End: 150% = Uniform 50% speed increase across all strokes
Start: 50%, End: 50% = Uniform 50% speed decrease across all strokes


Interpolation Curve
This controls HOW the transformation happens between your start and end values.

Linear
• Smooth, even progression from start to end
• Best for most situations, predictable results

Ease In
• Starts slow, speeds up toward the end
• Best for gradual build-ups that accelerate

Ease Out
• Starts fast, slows down toward the end
• Best for quick changes that settle gently

Ease In-Out
• Starts slow, speeds up in middle, slows down at end
• Best for smooth, natural-feeling transitions


Changelog
v0.1 (Current)

Initial release


Possible Future Plans

  • Speed Limit
  • Randomization, to add slight variations into the patterns
  • Saving/Loading presets
  • Reverse button
  • Functions for creating ‘wave’ patterns
  • Set to Zero buttons/Default Settings button

Links
Version 0.1 Download: StrokeSpeed.rar ~ pixeldrain

Join my Discord to get the latest versions, updates, report any issues, or leave feedback.

patreon kofi

HUGE thanks to my Backstage Supporter(s)
pup null

9 Likes