OpenFunscripter is a mighty tool to create scripts but if you are creating patters you will notice that it can be hard to get something done without moving every single points by yourself. Luckily OFS supports Lua which gives you the possibility to create some little scripts that can help you to make scripting easier.
This topic is meant as a Lua Script Collection so it would be nice if you could also share your scripts if you have done any. This might help other people to start scripting or improve their scripts.
To use the scripts you just have to copy them to the script directory which can be found under: Special Functions / Custom Functions / Script Directory
This is an extension to the Wave script which lets you also set the end values. I have made it as a separate script so you don’t have to edit both points for normal waves.
I have wondered if you could make a lua that makes a fade in of the stroke length? I don’t know much about how these lua work so I don’t feel I can write them.
Specifically the function would allow a level to start and a level to end. This would save me a lot of moving points!
Anyway I love that you are sharing these!
Just added AddPoints to the collection to get used to the language and to waste some time
Dunno what you mean. Can you draw a picture to explain your request?
Fading like in the StrokeGenerator of HandyControl? If yes, then this is a different approach and if you want to apply it on an existing script then you need to analyse the script and shift positions and timestamps which is way more complicated than just to create this on the fly.
I was always thinking that lua scripts could be a really good approach for people who try to script multiple axes, something like this:
You create a copy of the script
You select the whole script and run a lua script that converts it into pitch, roll or other axis
You modify the script from there
Mostly because during handjobs or blowjobs the certain twisting movements are kinda repetitive, so something that could modify the up & down strokes for you to give you a starting point for other axes could be a good idea, then you just remove unnecessary parts and have something close to the actual action on screen.
It’s probably easier in my head, but I guess that someone talented can do some really cool stuff with lua scripts. Even some mathematical functions can be a fun way to modify existing scripts - gaussian distribution, trigonometric functions and all.
Dunno how the rotation axis works and if that even feels realistic but its probably possible to increase the point density with the spline smoothing function to have more points to calculate the slope of the blue stroke curve. This will result in the red line which then needs to be simplified.
I’m gonna waste, errr i mean, i’m gonna spend so much time messing with this.
This is exactly what i was hoping was somehow possible. Trying to do this manually would be a nightmare, So thanks so much for posting this, otherwise i’d probably never have known it was possible.
This is an extension to the Wave script which lets you also set the end values. I have made it as a separate script so you don’t have to edit both points for normal waves.
This lua script is based on EqualPositions script by @Lucifie. The script moves all top points to the defined position while maintaining the stroke lenghts. Best used with high values (50-100), using too low values might shorten strokes.
This lua script is based on EqualPositions script by @Lucifie. The script moves all bottom points to the defined position while maintaining the stroke lenghts. Best used with low values (0-50), using too high values might shorten strokes.
Thanks for the move to top/bottom scripts. They’re really useful!
I would like to humbly make a reques for all the LUA experts out there.
It would be really great to be able to highlight a set of points and have an LUA script change the height of all the top points so that all strokes match as closely to a user defined speed as possible. So we could easily set sections to 150 units/s, 300 units/s etc without changing the timing of points.
Another LUA that I believe would be very useful when doing Multi-Axis would be something that added a pre determined number of points between the top and bottom position (ideally 2) that would allow for easy adjustment of Pitch motions during blowjobs and girl on top scenes. For example, when a neck is bending back and forward during BJ’s or when hips are twerkin or grinding in cowgirl position. At the moment I currently use the Add Points LUA from a copied version of the Y-Axis then select middle positions only and then adjust accordingly. There’s a pretty standard shape that usually takes form during two staple moves during BJ/cowgirl scenes. The neck/hip ‘flick’. This isn’t replicated well with the standard stroke shape of a top and bottom point and usually requires an additional point next to both the top and bottom that delays the Pitch change in either direction.
These look really cool but I cant seem to get them to work?
If I select two points and use lets say , sawtooth or wave should it add this inbetween those points? Or do I have to add all these points first?
I tried using add point which generates a long line of points, selecting them and then tried to apply wave but it only seemed to move those points along without adding a wave.
This is super useful - is there any way to increase the amplitude? Basically like your MovePointsToTop/MovePointsToBottom but the opposite. Modify the stroke point by changing both. Take the center of the stroke, and increase the amplitude by a magnitude?
Oh, it looks like the move proportionally does this? I’ll give that a shot.