"Handy" Simple scripter

Hi guys

Upon request from our users to make simple scripts, I started building a web tool for scripting. Some of you here have used those tools, and a couple of months ago, I scraped the old tools I had built and developed one from scratch. I mostly did the work over weekends and holidays but also spent work hours on it (making it a company property). We, Sweet Tech - the Handy team, now use the tool to review the fully automatic scripting service we are building up (more on that in a future post). To summarize, it’s mostly an off-work product that I have done for fun, the challenge, and to give to the community.

Since it is pretty new, it might be some bugs here and there. I offer no support and do not get mad if I’m slow to reply and fix the bugs. General bug fixing: settings->data->delete all data and refresh;-)

Feel free to make FREE scripts with this tool. Not for commercial use!
Link: Handy simple scripter

Some of the features:

  • Multiple graphs
  • Its a website
    • cross-platform
    • No installation
  • Drag and drop
  • Neural network tracker
  • Computer vision tracker
  • Math functions
  • Push to a Handy device

Some of the things that I hope to add when time (and demand):

  • Improved output of trackers
  • Script with your mouse (needed?)
  • Game controller support
  • Custom key mapping
  • Better math functions

Let me know what you guys think. I made a tutorial video (in “help” - my first EVER video → be kind<3) where I go over the current functionality. If there are new modules that you want that will help speed up the scripting process, send requests.

Thanks to qDot for letting me use his video for the tutorial video (Buttpluggin' With qDot - Apathetic Handjob Part 1 (for Sex Toy Video Sync) - YouTube)

Happy scripting

neural netwiork


alexander. sorry to repeat this but thanks for a super nice tool. i have been playing around with it a lot and i have two questions. you probably discussed them in your video but i missed it. if I did, please point me to where it was discussed.

  1. is there a way to zoom in to the video? i want to use the computer vision tracker and it woulb be nice if i can zoom in and out of the video.

  2. is there a way to scale the raw graph. the normalize function in the math tools does nothing to the raw graph and i was hoping i can scale that one up and down.


  1. I added a hacky video zoom function. It was requested by others as well. However, it will not work well with the trackers. For neural network, it functions partly, it is just the drawn tracking points are not drawn correctly. For the CV tracker, it will break completely. I think it will be a big job to get the linear algebra right to get the zoom to function in CV. I will add it to my list, but I’m not optimistic due to my limited time. If I find the time zooming will also make the tracker faster since there are fewer pixels to the math on, so it’s definitely something I should do.
  2. The math functions are buggy at the moment. You are right, normalize should have done the trick. I will fix them after my summer break
1 Like

Great tutorial @handyAlexander. I love this tool, used its predecessor to script a lot and will keep the feature requests coming. So here it goes.

I produced this script and tried to figure out a good low-effort but high quality workflow with motion tracking.

The best I have so far is:

  1. Do motion tracking in Handy simple scripter with either pose detection or computer vision
  2. Delete any non-action portions of the Raw graph, then use Normalize to expand it a bit
  3. Export and load the graph in OpenFunscripter
  4. Delete all mid points
  5. Go through different portions of the graph, select all top/bottom points and move them up/down to match the vid

I think it turned out nicely without much time spent. What I would love is of course to do step 3-5 done in the web tool, and even less effort.

So (4) removing mid points of the generated graph somehow, maybe be able to set some time/angle threshold where a mid point is filtered out.

And (5) stretching the graph, exaggerating movement. Plus moving an entire graph section up/down. Or even better, setting the max/min point while doing motion tracking so the graph points will just scale accordingly. That could also solve (2) - points outside the max/min range wouldn’t be in the graph.

Let us aim for you not to have to switch between tools. Can you explain better what the “delete mid points” function does? Then I can try to add that as a math function.

Step 5. Are there any functions missing in the simple scripter that you need to do for this step?

Can you explain better what the “delete mid points” function does? Then I can try to add that as a math function.

A mid point in OFS is a point is situated between the previous and next point on the Y-axis. A point that is not a peak.

In this graph, from left to right: top, bottom, bottom, mid, top, bottom

The motion tracking will generate a lot of unnecessary mid points and I can get rid of some by using Downsample but doing it too much will lose accuracy.

Yes. It can’t move entire sections of points up or down (other than manually). Or move sections of top/bottom points up/down.

The adjust points in view component could be extended to nudge all points up/down by +10/-10. And nudge top/bottom points only by +10/-10.

Got it. Released 3.0.7 now:

  • Added math functions merge mid points and sort to the math component.
  • Added nudge up and down to the adjust point in view component
    -Change tracker output to average (l=3), merge Mid Points , normalize.

Let me know if the changes are as you expected.


Great additions. Merge mid points looks fantastic, works better to merge the mid points than just delete them like I did in OFS. Nudge up/down is also super useful.

Much better than before! Not sure about average though, it decreases the movements and ruined some parts of the script I tried generating.

1 Like

Perfect:-) I will add average settings after my holidays. Then you can set the average length to 1 to disable that.

Let me know if there is more thinks you want/like to change

Is there any way to identify if there are areas in the script that would be too fast for the Handy?

The seek map shows the points that are too fast (>400mm/s) as red and the points that are too slow (<32mm/s) as blue. I will modify the seek map slightly to make it more informative. You can also see each point in the seeker the speed of the current point. Should I add a red/blue color to the text to make it more clear?

The map is based on the stroke length set in settings->handy. Default is set to 96mm (max stroke length). If you have a shorter stroke length, you can have less space between the points since the motion is slower.

Hey I love that vid and script you did (This is a blowjob)! Would you be up for creating a more fleshed out tutorial about how you did it?

Yeah I was thinking of it, and replacing that old outdated tutorial I did. But as the Simple scripter tool evolves though, maybe it’s better to wait until I can do a tutorial in that tool.

The step I need to do in OFS right now is selecting and moving top points up and the bottom points down for different sections of the script, to exaggerate movement.

A scale/expand/stretch graph section feature in the simple scripter would be even better.

1 Like

could you describe how you want the “scale/expand/stretch graph section” to be like? Then I can try to make it for you.

There is a component called “adjust points in view”. Have you tried that one?


This is an example of a motion tracking generated graph:

The up/down movement is much smaller than in the vid but I don’t want to press MIDDLE for example because I want to keep the variety of the movement to reflect the vid.

The graph after I have moved top points up and bottom points down to scale it using OFS:

In this particular case top points were moved +20 and bottom points -10 for the script to match the vid. In other sections of the script I might need different values since the camera might have zoomed out, different camera angle etc.

So you could add adjust top points up and bottom points down by 5 to adjust points in view. Not sure about the mid points, maybe they could be scaled proportionally, up if closer to top or down if close to bottom point.

Got it, thanks. Will give it a try and see if I can add that to “adjust points in view”.

1 Like


I think I have added what you want. Now you can click on “all” to toggle between all, bottom, top . For example, if you select top and nudge up, you will only move the top points up 5%. The middle points will be moved relative to the change.

3.0.8 changelog:

  • Added settings to change the chart height.
  • Rounded seeker information.
  • Improved “adjust points in view” component:
  • Adjust bottom/top points individually. Press “All” button to change the target of the nudge up/down.

Middle points (points between a top and bottom point) keep their relative position. This goes to the conversion of the points and nudging in Y-axis.


Now with these amazing updates, I have also updated this tutorial on how to use the motion tracking.


Someone to do with YouTube video on this