OpenFunscripter - another scripting tool - 1.1.9 release

I did this. People naturally assume audio is great way to script but it’s the opposite. After successfully implementing an audio-> buttplug setup I found that sound is way too dirty, then ported through the WebAudioAPI which is a low-end engineering tool. The best you get is volume as a whole we would need to channel each part of the audio (basically impossible).

https://github.com/highfiiv/sensitive-eq

Any word on this running on MacOS?

I have just spent an hour trying to find how to move a whole script left part way to the beginning of the video from where the script starts now. I cannot find how.

Some revision change lists include new commands that are added.
When some commands are requested they are described.
Some are scattered randomly in this enormous thread.

So the documentation I would like to see first is a complete list of the available commands that are, or can be, bound to keys or a joystick or my finger.
And it needs to be easily found.

This would be great for my small mind!
Thanks!

@hosenguy

I’m not sure if your looking for an external documentation but on the program itself, that already exists. Under options, keys, you can see all configurable keys laid out.

For a few more nifty tools under View → Special Functions, you’ll find range extender & simplifier. There are few more things here & there for like multi-axis scripting, but for 99% of scripting the above tools should suffice.

1 Like

OK, that is the main thing that made me crazy. I use too many different programs!
This screen should be page one of the documentation and then go on to explain the operation of the program!

1 Like

Hey I’m trying to go about creating a non-cock-hero script and finding that there’s one problem which is basically preventing me from making anything - maybe it’s just a bug on my machine?

If I try to seek forward or backwards any more than a handful of frames, the script timeline continues to move, but the video stops. Which means that the script timeline becomes out of sync. And there doesn’t seem to be a good way to get it back in-sync without double-clicking on it to manually seek somewhere.

Which means I can’t kind of shuffle back-and-forth to find the ‘right’ spot for an action. Does this happen for anyone else, and if so what is the ‘right’ way to seek back and forth?

edit: Also a feature request - it would be great to be able to middle-mouse drag the timeline left and right to seek without the keyboard!

@defucilis I’m unsure if I understand your issue because I don’t recognize it. However, a general issue stepping back and forth frame by frame is lag and such. That usually happens if you haven’t re-encoded the video to get rid of the video compression. This is done by only storing so called I-frames in the video. You can re-encode the video using ffmpeg from the command line or use the tool FunExpander.

Funexpander is found in the software section, Fun Expander 2.5.2 - Video converter with ffmpeg to i-frames added [Updated 2022-04-11].

For a complete ffmpeg command line example click on the last section in the right sidebar in this post How to get started with scripting .

1 Like

Reencoding with ffmpeg totally fixed the problem, thanks!

It was strange - the lag would kind of ‘persist’, so if I went back say, 100 frames and it started lagging after the first 20, and then I pressed play, the video would be playing back 80 frames out of sync with the funscript curve window playback position.

So I kept finding myself not realizing it was out of sync, creating keyframes, and then once the lag went away because I did a manual seek I’d discover that all my keyframes were out of sync with the video.

If you press the s key the time and video should sync. Maybe that will resolve the issue too.

I know there was some discussions and issues with synchronization in early versions of OFS, but I don’t remember the technical details. There might be something in the first half of this long thread of posts that could explain it.

I found in some videos an issue where you couldn’t seek 1 frame backwards anymore.
Forward I was never able to reproduce.

The relative seek command would just get ignored by mpv. why is a mystery to me.
So the video player wouldn’t seek back but OFS would.
The fix for the next 1.1.6 release is that I’m no longer seeking relative from the current position and instead always seek absolute. That bug must’ve existed since v1.0.6 but only occurs with certain videos. :face_with_raised_eyebrow:

3 Likes

The simulator has disappeared and I cannot get it to come back. I even upgraded to 1.1.5 and the simulator is still nowhere to be found even after disabling and enabling it and changing the views… is there a way to get this back?

@gagax123 Hey bud. I’m using your build that just introduced the shortcuts. You added in Ctrl + Up or Down which increases points by 10 which is actually a great idea.

I was wondering if you either change the increment to 5 or let it be customizable. I think 5 is a more manageable increment. Hope you’ll consider this

Right click on the windows icon on the taskbar → run → type in %appdata% → find the folder OFS → delete it → run OFS again

Is the simulator back again?

Note, that this process will reset all your settings. Positions that you set for the windows, hotkeys etc.

@salamandertaco There should be a “Center” button in the simulator window for this purpose.

I noted that for the next release. I’ll add +5 & -5 additionally to the +10 -10.

4 Likes

Hi @gagax123

Is there a way of adding a new special function so I can shift the selected positions with a sin or cos wave?
Moving all the points by hand would be a pita. I know there is a custom function button but I dont know how to create new ones. And I never used Lua^^

I have exported a script segment to Excel and added a little formula to shift the points by two parameters to show you what I mean.

=ROUND(C211+SIN(A211*Frequency/100)*Amplitude,0)

Column A is the timestamp index (1, 2, 3, …)
Colum C is the original position

Frequency = 15
Amplitude = 10

Frequency = 10
Amplitude = 20

Frequency = 30
Amplitude = 5
grafik

Copied back to a funscript it looks like this.

1 Like

It’s really not that hard.
Just save this as a .lua file and drop it in the script directory.
Don’t get confused by some of the comments I just took the jitter script and plugged in your formula.
Lua apparantly doesn’t have a round so used floor :man_shrugging:

Oh and the script only runs on selected actions.

1 Like

It works :+1:

Any change to change the script path?

I usually dont save stuff on my C drive in case I setup windows again and forget the stuff in the system folders. C:\Users\xxx\AppData\Roaming\OFS\OFS_data\lua

I dont mind if the settings get lost but I dont want to loose the lua scripts or making copies from the files every time.

No you can’t change the path.
I don’t really want to make that a thing either.
I can let you in on a secret that microsoft doesn’t want you to know, you could delete the lua directory and create a junction to another folder using this Junction - Windows Sysinternals | Microsoft Docs

I’m finishing up some large personal projects and want to start making some scripts. Is the only option here a snap? I think there might be better luck with flatpak or appimage.

Posting this SUPER late - but thanks for making this tool. I downloaded it last night and it seems rad, I’ll try doing my next script with this program.

I have this installed on a Virtual Machine. Just installed redistributables but get “Failed to load glad” prompt then it stops. Any ideas?