I wanted to write up a quick guide with my tips and tricks on how to script more quickly.
I think it’s best to get the info out there, and build this as a WIP, and fill in the details as I go.
This guide is probably not going much sense at all until I add in screenshots, so probably just come back later and it’ll be fleshed out and you’ll be able to get setup quickly.
Step 1. Preparation
To best prepare a video for scripting, you need to prepare it in a few ways to script more quickly with OFS:
a. filesize - a re-encode to a smaller resolution and framerate can often make it smaller
b. video resolution - shrink it to 480p or so for fast video navigation.
c. Convert video to i-frames - most important step
a/b. Shrinking a video with Handbrake:
Download Handbrake here: HandBrake: Downloads
You can change the config or download my json files and import them into Handbrake.
Under the Dimension tab, make the video 480p NTSC SD:
Under Video, you can use H.264.
If you have Intel or Nvidia, those versions will run faster. Quality goes down a bit but speed drastically goes up.
This quick config will work on all CPUs:
480p RF20 x264 Any CPU Encode Preset.json (3.4 KB)
This quick config will work quickly with Nvidia:
480p RF20 x264 Nvidia Encode Preset.json (3.4 KB)
This quick config will work quickly with Intel:
480p Intel Rf24 x264 Encode Preset.json (3.4 KB)
c. Convert video to i-frames
Download the tool FunExpander and in the bottom-right, click to choose your video to convert to i-frames:
Download from here: Fun Expander 2.5.2 - Video converter with ffmpeg to i-frames added [Updated 2022-04-11]
Step 2. Scripting Setup Peripherals
There are a few methods I like to use to script quickly.
Preferred Peripherals:
A. Standard Keyboard Method:
Using the keys 0 through 9 num row above the ‘QWERTYUIOP’ letters on your keyboard.
Bind the Minus (-) key to 100. Alternatively, you might want to bind the 0 key to 100 and Tilde (~) to 0, so that power moves linearly across your keyboard.
With the keyboard method, you can use the Arrow Keys to navigate points, or alternatively you can bind WASD to Up/Left/Down/Right.
B. A numpad - a dedicated one, or the one on your keyboard. This will work better with the WASD method or a scroll wheel due to where your hands are situated at. You’ll have to rebind the numpad a bit so that you have a key for 100%. I don’t use a numpad often in general, so I sometimes, and I find that you have to move your hands a bit too much, and I can never find a great spot for the 100% point.
C. Volume Wheel Method (Bit of setup, great results)
This is byfar one of my favorite methods as of late. It’s best used with a numpad or macro mouse, otherwise you’ll have to lift your left (or right) hand from the volume wheel to plot points using the num row on your keyboard.
My volume wheel of choice: https://www.aliexpress.us/item/3256808401441839.html?spm=a2g0o.order_list.order_list_main.35.44631802Hf98ra&gatewayAdapt=glo2usa
Volume Wheel Setup:
Step 1. Download Autohotkey: https://www.autohotkey.com/
Step 2. Use this script I made. Download it and double-click and it should activate, replacing your volume controls with arrow key movements left and right. Also changes Mute to letter H. Autohotkey Rebind Volume Controls to Arrow Keys for OpenFunScripter.ahk ~ pixeldrain
You can deactivate the script by finding the green icon in the taskbar and right-clicking to Suspend Hotkeys:
D. Macro Mouse as Numpad
This is a little bit of a WIP method, but it works for me a bit because I still have some control of my mouse, and I use macros for things like Delete Point or H (move point to current spot).
I use the Razer Naga V2 Hyperspeed.
You get additional binds by holding the 2 button here which I’ve bound to Hypershift.
E. Mouse Wheel Method
This one is actually pretty neat, I almost forgot about it.
If your mouse has an infinite scroll wheel, you might like this as an option to scroll through points.
Under Navigation in OpenFunscripter, you can add a bind to Previous frame and Next frame. Move your mouse wheel up for Previous frame, and down for Next frame, and it will bind. No need to check [ ] Repeat.
Step 3. Scripting Setup & Keybinds - PLUS ULTRA 100%
i. CheatEngine speedup
By hooking CheatEngine into OpenFunScripter, you can speed up the speed of the program, and quickly scroll Forward AND Backwards through video points.
I generally use 3.0x to 4.0x speed modifier when I’m using my keyboard to scroll through points, or at least 2.0x when the scroll wheel just for an added speed boost.
Get CheatEngine here:
https://www.cheatengine.org/downloads.php
Open CheatEngine 64bit. Click on the magnifying glass in the top-left.
Start typing the letters “OPENF…” so that you can quickly find OpenFunscripter, and hit Open.
Check [ x ] Enable Speedhack, set Speed to at least 2, and hit Apply:
ii. Hotkeys:
Some hotkeys that I setup in OpenFunScripter (some of these may be default)
H - Move to current location (H for “here”)
A - add point between two points
E - Equalize actions
T - select the top points, and then move them up/down with Shift+Up or Shift+Down.
R - repeat point - make sure to check [ x ] Repeatable for this, so that you can repeat points quickly. I like to fill “bottom out” on blowjob scenes with this.
Screenshots:
H -
A -
This comes from My Tools. You may have to go to Options>Keys and hit Validate for it to appear. Some people have removed the Hotkey in different versions of MyTools, so you can download the version I’m using: main.lua ~ pixeldrain
E -
T and R should be straightforward to find

iii.Settings:
Framerate Override - you may want to go with 24fps, 25fps, or 30fps depending on your video. It definitely helps if you have a 60fps video and want to script a bit faster, like at 30fps.
Step 4. Patterns
For those that like to enhance things like tongue action or add vibrations, there are some add-ons like MyTools and others for things like this.
I’m actually not great at using them, though, so if someone has good links/resources to adding them, please share and I’ll write it up in this quick guide.
Step 5. Script like a God
Here’s a little preview of how I’ve been able to script with the volume wheel setup, scrolling through points.
This was one of my early attempts, and I’m showing that the video itself has some dynamic movement due to her head bobbing.
Step 6. Video clipping, processing etc.
There are a few tools out there for clipping videos, and for taking clips WITH their funscripts, and compiling them together.
One would be mkvtoolnix for video clipping, and another tool is one I worked on, FunscriptCompilationMaker:
I’ve tested my tool extensively and it will actually create Lossless video clips out of your funscript videos. Ex. If you’ve got a 1hr video and only want to keep 10 minutes of the video with the script, you can specify the timestamps and it’ll work in 1 go, and not affect the video quality.
Speed:
Depending on the scene, you can script videos in at least 1/4 to 1/2 speed with these methods. Meaning a 10 minute scene can be scripted in 20 to 40 minutes.
For very slow scenes (ex. ones that end up at 80 Speed like a slow blowjob or riding scene) you can get up to almost realtime scripting speed, meaning a 10 minute video may take 12 or 15 minutes.
General Tips on what method to use between Volume Wheel and CheatEngine + Keyboard:
For slower scenes, you will benefit from the CheatEngine + Keyboard method a lot, but with faster scenes, you’ll benefit more from the volume wheel method.
This is because you can do a quarter turn of the volume wheel, plot a point, quarter turn, plot a point, etc., all in fraction of a second through muscle memory.
For CheatEngine + Keyboard, there’s more overhead in between starting and stopping, but for scenes with lower speed, it can be a bit faster or easier to use this.
CheatEngine Tweaking:
For a 30fps vid, 4 to 5 frames between up-down BJ strokes - use 3x speed.
Slower scenes: 13 frames between BJ strokes - try 4x speed.