Fun Expander 2.2

Looks great!
Would it be possible to add an Option to shorten Strokes that are longer than X-milliseconds?
I ask because there are really great Scripts out there, where the Kiiroo Onyx2 stops responding
because of some too long strokes (longer than about 800m I think).

1 Like

Can you explain that more detail? If there is a stroke for example 100 to 0 in 1500 ms, would it work if a new point is inserted at 50, 750 ms?

1 Like

That should do it!
Would be dope!

1 Like

Ok, i will give it a try

1 Like

Cool Thanks! :grinning: :+1:

1 Like

Just wanted to say I’ve been using this utility for several months now and it’s super useful. Thank you for creating this.

2 Likes

I get an Invalid start point error when trying to expand. Is there a fix for this?

Please try to save the funscript with ScriptPlayer (Script/Save as …) or with JoyFunScripter. If that is not working, please PM me the script, then i can debugg the software with that script.

1 Like

@ HeelsLover69

Quick question, does the top point and bottom point expansion get applied for the entire script or can you use it on specific timeframes?

1 Like

It’s for the entire script

1 Like

“I get an Invalid start point error when trying to expand. Is there a fix for this?”

I’ve observed this too. I think it happens with funscripts not made with JoyFunScripter (i.e. with blender). It appears JFS adds some “meta” info about the script like the start point that are used by this utility. Not sure if there’s an easy way to go back and add that to blender created scripts.

1 Like

Please try to save the funscript with ScriptPlayer (Script/Save as …) or with JoyFunScripter. If that is not working, please PM me the script, then i can debugg the software with that script.

1 Like

I’ve tried Script/Save As… with Scriptplayer and it did not seem to have any effect on the script. I don’t have a copy of JFS (and they’re getting harder to find), so I can’t speak to that.

I’ve attached an example. A Jasmine Grey - FIT18 script, which I believe scibbles made. (If memory serves scibbles uses blender).

Here is the beginning of the script after saving it with Scriptplayer followed by FIT18 - Jasmine Grey.funscript (183.7 KB) another script (presumably made with JFS). Notice the extra header information including the lastPosition element.

{"version":"1.0","inverted":false,"range":100,"actions":[{"pos":0,"at":0},{"pos":99,"at":500}


 {"version":"1.0","inverted":false,"range":90,"bookmark":0,"lastPosition":15042042027,"graphDuration":50000000,"speedRatio":0.24,"injectionSpeed":350,"injectionBias":0.0,"scriptingMode":1,"simulatorPresets":[{"name":"Simulator 1","fullRange":false,"direction":1,"rotation":-2.4658715521299825,"length":127.50251036942765,"width":127.91590296495927,"offset":"545.336927223719,535.633423180592,0,0","color":"Lime"}],"activeSimulator":0,"reductionTolerance":7.5,"reductionStretch":187500.0,"clips":[],"actions":[{"pos":100,"at":34938},{"pos":100,"at":258548}
2 Likes

It’s working with this funscript on my end without any problems. Also the second script looks good to me, this should work too. Please try to start Fun Expander with admin rights and check, if you have write access at the folder, where the funscripts are located.
Fun Expander is serarching for the string “actions”:[", after this string the positions and timemarks starts.

1 Like

Will do, I started a folder with scripts that have the issue. Thanks!

Yes that was a resolution. Thank you.

1 Like

Hey HeelsLover69 !
First of all, thank you very much for this great tool that i’ve been enjoying for some time.
I have a question: I understand what speed limit means but i have no idea what min&max interval length stand for. I have a “Handy”. How do you think i should adjust those three parameters according to the limits of my toy?

Hi @kenickie
I’m glad you like my little tool!
With the Handy you don’t need this two sections.

‘Min. Interval length’ was created for the Launch where the interval between two bluetooth commands has to be bigger than something around 150ms. This section can spread the points in the funscript to the given value.

‘Max. Interval length’ was created for the Kiiroo Onyx 2 where the maximum intervall between two commands has to be smaller than 800ms. This function adds points to the funscript to prevent gaps bigger than the given value.

And if you are still using version 2.2, I recommend you to update to version 2.5.1

Hello @HeelsLover69
Thank you for your quick response. I actually have the latest version but it seems i wrote on a very old post. Sorry for that.
So, if i may bother you some more, one last question:

  • I mostly use “expand the fun” section of the program. From what i understand, 500mm/s suits the launch. What do you think would be the top speed limit for the handy?

Thanks again for helping me out and for all your contribution to the community.

That doesn’t matter with the handy either. It automatically shortens the stroke length if the speed goes too high. I have set this value to 2000mm/s. This way it has no influence on the script.

1 Like