Attempting My First Script

Hey all,

I’m working on my first script in OpenFunscripter for one of my favorite all time scenes with Avy Scott ( I’ve gone through several tutorials and forum posts about script creation on this site. I’ve spent about 20 minutes beginning the script. Are there any tips that have gone unmentioned outside of the tutorials that might make this experience better and me a better scripter?

Thanks for any advice and I cant wait to start contributing.

Yes maybe a few I learned starting to script a couple of months ago.

  • shift arrow is your friend
  • Try to invert the numbers on the keypad. Easier as 0 is out.
  • if you see the glans it’s a 0
  • dont get over 600U/s set OFS to it. Pink is bad, reduce.
  • if HJ get very fast go down to 9 and / if it’s a full handjob and you need to reduce the size of the stroke. A full very fast handjob that is 0-5 feels stupid.
  • Use MTFG if Camera holds still invert if necessary and use “continue min max” then check the endpositions of the strokes. Spares a lot of time and curves get great. MTFG gets really useful with continue minmax.
  • if the stroke pauses at an endposition, pause your script, but not on same number. If a stroke is full in / and pauses a bit, put in a 9 after as long as the motion reverses.
  • Set a key to mark “all after”, dunno exact command name, like key “a” then you can move the whole MTFG part forward or back. Put space as unmark. Put play to “p” or so you dont need play much anyway that fas space before. Unmark is important as if you don’t, you can move parts without realising as you dont see them. So if speed changes press a , shift right or left , space to unmark if you use my keys.
  • You can copy paste waves and then modify them with the above quickly
  • Use funexpander to convert videos for OFS. Some older stuff wont work but most do
1 Like

The secret is dynamic injection.
Switch from default to this.
Then slow the video down a bit.
Get ready put your finger on the 0 key on the numpad.
Play the video
Tap 0 every time there is full insertion.
this will give you a full stroke up and down.
now you just do this the entire video. Once you get the hang of it you can adjust the different settings.
Then you can also go back over and fine tune the strokes adjusting the length and fixing up any inaccuracies.

Yeah it takes more effort than the AI scripting feature. but its honestly just faster once you decide to sit there for the length of the video


I totally see how it could be faster, especially after spending several hours with the motion tracker yesterday. Thanks!

Note that 0-10 as scale isnt what is normaly used. Your keyboard does it, but the editor goes 0-100. Also, the real limit is 400ups and not 600. 600 does play back fine, but isnt perfectly in sync (nodes will be off). Its not well noticed when positions vary a lot, but in cock hero videos its extremely well noticed, and there going only up to 450ups is better.

This is a device limitation you cant get around. But here position matters for immersion. And even more when devices can play the 600ups well.

Even if its a full stroke length at high speeds, and movement of 50 units is possible, its often better to go for 25-75 instead of 0-50. This makes the stroke happen at the middle. You can even add some variety in it so it goes from 20-80 with a less even movement (some strokes being 30-80 while others are 20-70). Your dick wont notice the shortened length on an individual stroke, but can notice the overal distance that is being used in the action.

In my post I elaborated the 0-10. Many use it as me, I really recommend it, its more logical and easier to use. 600 is the suggested max for T-Code devices by Falalfel. That’s how I script. I wont slow the script for the Handy. Stroke happen in the middle, will try that, sounds legit to max length.

The reason to not use 0-10 is because this mismatches with the 600ups. 0-100 is what those ups means. 600 units traveled per second. Keeping the 2 values in line makes things easier to explain and refer to.

And note that sub 10 stroke distances are used in vibrations, and thats where those values are quite strict. Something bluetooth devices actualy struggle with, yet is still valid script.

0-100 has a reason to be used.

1 Like

No I dont get what you are trying to explain. Describe what you keys you press scripting.

When it comes to keybind, I bind the top row on my keyboard to action at 0 to action at 100.
Then I bind ctrl and shift as modifier keys to use with up and down arrows. Moves actions by 5 and 1.

So when I need an point at 76, I press 7, then shift+↑, ctrl+↑.

(or shift + rightclick if I’m feeling lucky)

Useful extensions to have:

Useful tools to use alongside OFS:


These guides may be helpful if you are scripting for the Handy, or other BLE devices such as the Launch, Keon, A10 Piston.

You don’t have to worry too much about these if you are scripting for the OSR2 / SR6 / SSR1 - very rarely will you hit their limit.

No script of I have done uses positions between full decimals and noone complained. Not even BurtReynolds who made me review scripts where I made basic faults, as he likes the movies I choose. I am tempted to say noone will recognize if its 10% to 20% versus 14% to 24%. It will just feel the same and will not affect script quality.

1 Like

One thing I’ve noticed from a few scripts I’ve tried is that you might have an inclination to use the numbers like a “percentage of the penis that’s ‘inside’” For example, if only the head of the penis is inserted then removed, you might be tempted to only put it at an 8 or 9 then back out for your stroke length because the simulator in OFS makes it seem like that would be exactly the right amount, it matches up with the video.

The problem is doing this doesn’t actually simulate what it would ‘feel’ like. Let’s use a BJ for example. If only the head is being sucked, I usually go down to 5 or even 4 which is over half of the available stroke length, but it’s much closer to the actual distance of the action. If you make the actions too shallow, they won’t feel realistic.

1 Like

Which is fine, but naming a mid position 5 instead of 50 remains confusing. They mean totaly diffirent things, and the scripts use 50 everywhere (its in the funscript file itself). Thats why not to mix up those numbers.

Sub positions are most often used for smoothed strokes, slow strokes, vibrations, or a situation in which short strokes start at the bottom and slowly move towards the tip (30u strokes but between each stroke there could be a 4u increase). Things that usualy are less than 5% of the script total, or handled by using a plugin.

There are things where such accuracy can matter, but in most cases its just not worth the effort. And i defenitely recommend using multiples of 10 in most scripts.

1 Like

Yeah you are absolutely right and something to complain about, I am changing that, I dont think I will change existing scripts though. That has of course nothing to do with using 10 steps only.

Problem is the inversion when this has first been set. You wont say to a girl hey I am in 0% right now when you are full in would you? But sure the percentages are fine its viewed from device state, the numbers on the keypad however are not.

Its not a percentage though, its just a value. they used 0-100, but could have also used 0-255 if they wanted. It probably was reduced to 100 as 255 might have been too restricting and too much accuracy to even be reliable.

Also, note that funscripts arent for just stroking action, but also include rotation and vibration. For each of these the values can have a diffirent meaning (0-100 on vibrators is off-full, rotation could be 0 being full speed left, 100 full speed right). Thats why you should not look at it as if it are percentages.

That funscripts are mostly used for stroking is because estim doesnt realy use these files (they often use mp3). Estim is also a very old thing that works like scripted content. But if you want a standard, this should be considered in it.

So the argument you made here made no sense, since its not what the script is even trying to tell.

Scripting is trying to mimic what happens onscreen to the user with his device. Inverted numbers don’t help the scripter, that is why many people use better understandable low numbers for out and high for in. But whatever that’s why keys can be set as you like in OFS.
This thread is for Bob, right? So you guys explain to him please, why motions especially BJs need to be exagerated. What is the physics behind this? I will listen and learn.

Fellow beginner here, also appreciative of the advice others have given.

If I may piggyback and add a question of my own to the discussion: I had a scene I was trying to script a little bit ago, and I ran into a kind of repetitive missionary sequence that was about 60 seconds. I couldn’t figure out how to mix it up. Does variety in the script during those kinds of scenes actually matter, and if it does what have you found works while staying true to the action?

You mean when the action is hidden? I think we all hate that as you have to guess endpoints. Others may see it differently but I do use copy paste in these parts of two or three strokes but I still try to find out endpoints. So endpoints are important, stroke position not so much and can be monotonous. Its not immersive when motion is off to what you see on the screen. MTFG with continue minmac can help or use dynamic injection. Never tried that but will.

@TheScriptKeeper Thinking about

I think I understand that mechanically. You have to imagine it’s a ring you want to emulate there with a sleeve. That ring feel you will be able to have if you pass the upper opening of a quickshot. No idea for a Handy standard sleeve I guess larrge amount of movement simply. So this may vary from sleeve to sleeve but maybe the quickshot should be taken as standard. That would correspond to the 4 or 5 you use.
I think for beginners it would be wrong to assume that the ring feel is generated when you almost exit and enter the sleeve. I think I will redo my scripts with this thought. Please correct me if I am wrong.

Even if I am wrong we need some basic rules here so scripters dont take the pitfall as I did.

Sleeves are flexible. The stretching they provide can change the feeling it provides.

So lets say we have a very soft sleeve. When it goes up and down, the softness (stretch) it has can be worth for examlpe 4 units. This means that a stroke of length 5 is mostly muffled, and therefor barely felt (1 effective unit).
A firm sleeve might only stretch 2 units, making the same stroke 3 units of feeling, effectively 3x as much for the same stroke.

Its impossible as scripter to know which sleeves are being used. So relative scaling becomes a thing.

The next problem is that to feel stroking you need to get over a certain friction value. this can be achieved by vibrations (even if it stays in place, if it shakes the sleeve enough it works), or an extended move (as done most of the time.

Add to that device limits, and some minimal strokes are required anyway. By pushing all the small movement a bit further it can still provide nuances. And especialy for slower action, position diffirences can become noticed (most of the time it doesnt happen, but there are regions in the dick that are more sensitive to certain textures).

If instead of a 5 unit stroke, you made it 10 or even 15. The resulting distance regardless of softness is closer together (using the same examples with 10 distance we now get 6 and 8), and also better noticed.
Speed barely matters on that, since the sleeve does slide anyway once beyond a certain treshold.

Thats why BJs get exagerated. It just works better.

1 Like