OpenFunscripter - another scripting tool - 1.1.9 release

The video player defaults to the first soft subtitles a video has, so when loading a video it’ll load the first subtitles listed (in this case is Chinese). There should be an option to switch subtitles or turn it off
OpenFunscripter_2020-10-03_22-38-18

As well, windowed mode doesn’t work properly (no window bar with the close, mimimize, and fit buttons), and it doesn’t scale to fit within the taskbar, so you could see part of the taskbar in the snip. Changing to fullscreen fixes it

@mrdoesnothingalot I wasn’t aware that subtitles are handled by default
I added a shortcut to cycle through subtitles by default it’s “J”. No subtitles is also available through that.
I fixed the window being larger than the available screen space issue. :slight_smile:

I’m going to do both things eventually. But one thing at a time please. :sweat_smile:
To me this all new. I’ve never managed used those methods in JFS productively.
It will probably take me a lot of iterations to get this stuff right.

I may try this first before I doing controller stuff. :thinking:
The first iteration will probably just be what you described as a bonus idea.

1 Like

@gagax123
I just ran into a somewhat crippling bug:

  1. Assume you open a video file in folder c:\foo and then close OFS.
  2. Delete or move the c:\foo folder.
  3. Restart OFS and select File > Open video / script.
  4. The open file dialog never appears.

Workaround: You have to create an empty c:\foo for the dialog to appear again.

@gagax123 Is it possible to turn off Windows Notifications when saving? It is a bit annoying to hear the chime when the little popup window in the lower right corner everytime I press ctrl-s. If it is possible to send a notification without triggering the sound I’m happy with that even if I get a counter on the notification icon in the Windows system tray. Otherwise the “last saved 0 minutes ago” message is good enough for me.

@gagax123 Sorry for spamming, but it is a consequence of starting to script a VR-video from scratch using OFS I guess. I start editing this post to avoid too many new posts.

Is it possible to do something about the video rendering speed when holding down left arrow key? Holding down right arrow key is much smoother and a bit faster. My video is re-encoded so it contains only full frames and is roughly 14GB in size. I know it is a third party video component, but maybe there is some setting/property to adjust that improves rendering.

Is it possible to add a control that adjust how many frames left and right key jumps? I’ve got a 60fps video and I can barely see the difference between frames sometimes making it harder to position new points. It also become a bit tedious pressing twice as many keys compared to using 30 fps, which is good enough for scripting most of the times.

I have also have an issue with up/down arrow, or maybe only up arrow key. It seems to jump incorrectly and not align to the next point and sometimes it even skip points.
Standing on the left most point in the following picture cause it to jump to the position in the picture, i.e. it skips a point. In this case the two points in the middle are both at 40%. You can also see that after the just the marker is not correctly positioned on the point.
uparrowskipsapoint

A similar case it the following scenario.
startpos
Start position

afterpressingupkey
After pressing up key once. The marker is once again not positioned on the point.
This second case seems to be reproducible in the following script if that helps.
upkeyissue.funscript (879 Bytes)

I can’t really seek exactly.
The player will always snap to the timestamp of the frame that’s closest ( which I think is a good thing ).

I assume you placed those points while the video was playing with “Smooth” enabled which circumvented that.
In the next update that shouldn’t happen anymore, points will be placed right on the frame boundaries even while playing with “Smooth” enabled. Which means they should always align when seeking to them.
Actions coming from other tools may still not be aligned with the frame times.

I removed system alerts. I hate them as well which is why they are muted on my system.
But I can’t expect everyone to mute their alerts. :thinking:

About the seeking backwards I’ll have to do some more research.
So far I just found this issue.
I’ll try the last thing commented in that issue but no promises if it’s going to improve anything.
But not in the next update probably the one after.

Configuring the left/right arrow frame seeking. I’ll also defer to v1.0.6.

Edit: :fire:v1.0.5 :fire:

1 Like

@sentinel The skipping over actions which are close together is going to be fixed 1.0.6.

I expected it to snap to a frame but I get the feeling that it doesn’t. I script frame by frame without playing the video. I rely on arrow keys to get to the spot where I want to place a point. Smooth is enabled by default and I didn’t change that.

You didn’t comment the open video / script issue. Just want to make sure you didn’t miss that.

Let me know if the issue persists in 1.0.5 ( I hope not :sweat: ).

This was the fix for the open file not working. It’s in the changelog.

Aheh, well I can’t claim I’m not biased, but…

You know what, how about this. Hey, people who use analog stuff for scripting! Do you use the controller for anything else in the process, or just for the analog aspect?

On a related note, I thought of something that would apply to any controller support - if the user has multiple devices plugged in, it’d be nice to be able to choose which one to use. And to be able to turn having the program respond to controller inputs when the window is not active on and off.

@remc_ren I don’t use any controller at all :slight_smile: I only script frame by frame.

@gagax123 Got yet another idea of a feature. If it was possible to setup a thin movable mesh grid (maybe semi transparent too) as an overlay on screen that can also be rotated. It would be similar to the simulator actually but with a grid in it. I think it would help determine the stroke lengths better. When I script I try to include the stroke length variation instead of just doing the same stroke over and over regardless. Sometimes you get a stroke length creep where the strokes gradually becomes shorter (or longer) and you hardly notice it. It can also be hard to eyeball it when both are moving around. Just an idea for a future release.

2 Likes

You may have to provide a paint drawing because I can’t imagine what that would look like. :thinking:
But it sounds complicated.

Edit
btw frame seeking backwards is definitely going to be faster in the next update :ok_hand:
Kind of stupid how the default “frame-back-step” command which I was using executes so much slower than just manually seeking back the duration of one frame.

… or maybe a simulator with thin lines for 10, 20, 30, … 90. The possibility to make the number in the middle invisible and to set the transparency of the whole simulator would be great.

1 Like

Now that’s something I can add easily :relieved:

3 Likes

@HeelsLover69 here’s an update on the simulator.
Simulator
I have added these lines, a switch to turn of the position text and a global opacity slider.
Is this what you had in mind?

4 Likes

@gagax123 wow, that looks great! Thanks a lot!

1 Like

Quick question - is it possible to enter stroker positions that aren’t multiples of 10? e.g. 25 or 72?

Also, I opened it up just now and it looks like this:
image

I’m assuming some config must have corrupted itself… Should I justs delete imgui.ini?

No. I’m adding a way to shift click actions into the script via the simulator in the next update.

This looks like you started the program from another working directory
because it failed to load the fonts ( data/fonts/ ) as well as the default imgui.ini that I always include.
The imgui.ini does store the layout but I’ve never had it “corrupt”.
When you delete the imgui.ini it will default to all the window being in the top left like in the screenshot.
Right now the exe needs to be launched inside of directory it comes in. ( something I should look into )

:warning: There’s a bug in 1.0.5 where the tmp directory doesn’t get created to save those undo states. :warning:
If the tmp directory exists everything is fine. If it doesn’t ofs crashes. :pensive: