OpenFunscripter - a scripting tool - 3.2.0 release

All of these features are valid needs. We also need to fix surge and sway axes so they don’t get flipped, update the visualizer to account for surge and sway, and allow for reordering Funscript tracks. Other fixes like better fine-control of points would also be helpful. There’s a lot that can still be made better and a ton of quality of life updates that would benefit scripters still to be made.

Curves are not suitable in the current funscripts since adding too much nodes causes problems.

Instead i would prefer if seperate curve values could be used. For which i can imagine 2 methods:

  • Relative values (1 for max upward, -1 max downward, 0 or omitted for off).
    of which i think these are the easiest to handle as 1 and -1 could be translated towards the maximum speed of a device. these values being floats should enable quick calculations by devices

  • Absolute values at static points as if they would be regular nodes, but instead marked as curve point. Curve points generate a curve at both sides of it. But for devices not supporting it, could be easily converted into regular points and still provide a curve effect.

The 2nd option to me would be optimal as in those cases the subpoints we have added can still be used as regular nodes and allow backward compatibility towards devices that do not know curve information (these nodes becomes regular nodes)
And is also relatively easy to be made.

Anyway, adding points in the current way is bad for devices that can easily manage it, as it just gives a very clear transition moment in speeds. For those devices a clean line would be better then. Hence enabling a method to which devices can adjust their own method is optimal to me.

All that is then needed is to pick a certain curve generation method that is open to be used and easy/low cost to implement/quick to calculate. Scriptplayers can then alway give the ability to adjust the output towards the devices.

I would be very happy to never see another subscription service again in my lifetime.

2 Likes

so i am new to scripting and wanted to ask something.
i know how i move my actions in my script from left to right and also what percentage the stroke has to be but is there also a way to make my actions slower or faster? for example i scripted something and now i see that it is to slow on certain parts, can i mark those parts and make them faster with a hotkey?

The device will move between the points (vertical distance) during the given time it has available (horizontal distance) and the speed will be adjusted accordingly. You don’t explicitly specify speed. If the speed exceeds the capabilities of the device used then the firmware in the device will automatically shorten the stroke so that the speed stays within the device capability limits.

For your specific situation you have to either make the stroke longer or move the points closer to each other so that the stroke starts later / completes earlier. It’s up to you to decide what’s the best choice based on the video.

1 Like

Fixed the Simulator3D mixing surge and sway. SR6 scripters please update.

2 Likes

I think the real issue is finding someone who actually wants to invest all the time and effort into making those improvements for free (which is a tall order considering the age of the code) or someone coughing up the cash to fund them (or perhaps a one time group funding?). If I had some coding knowledge myself, I would totally hop in and help but alas I have no knowledge there. Was originally working on hiring a developer on Reddit to port over the code for ARM but they turned out to be a gigantic scam artist. So I think this puts us all back at square one. Anyone got any other ideas?

I probably mentioned it before that the tricky part with OFS is that it’s written in C++, which is a totally viable programming language but it isn’t the most used by the recent generation programmers. I tried to fix some bugs last summer, but my C++ programming skills suck so I gave up (I never really developed any software in C++ tbh).

If I was going to rewrite OFS today I would have chosen e.g. a self-contained .NET MAUI / Blazor hybrid application to make it easy to compile cross platform (Windows, MacOS, iOS, Android and web browser).

The problem with .NET MAUI is that there isn’t any viable video player (afaik) that let you control e.g. playback frame by frame etc. (MediaElements player doesn’t suffice for scripting purposes to my knowledge). If it’s possible to bridge .NET MAUI / Blazor to native code then you can probably integrate MPV using platform conditional compiling, but that would defeat the purpose of using a .NET MAUI app in the first place. The hurdle of finding a viable video player for .NET MAUI made me give up on the idea.

3 Likes

I think Avalonia would be a better choice since its more desktop oriented. You wont be using a scripter on mobile, web is stretching it. And iirc there is mpv and vlc library that works with it.

MAUI is more of a mobile framework that happens to run on desktop, and it has no linux support. Microsoft completely missed the mark with MAUI. Instead of either updating WPF or starting from scratch they forked Xamarin which is like 15 year old mobile framework.

3 Likes

i stopped reading here
“muh open source bad”
“muh vulnerabilities”

2 Likes

I have been engaged in the software industry for 15 years and have actively contributed to numerous open source projects out of personal interest.

My statement stems from observing several accomplished programmers who left their regular employment to devote themselves to open source, only to discover that their substantial contributions failed to provide adequate financial support for their livelihood. This can lead to disillusionment with the open-source community and in extreme cases, may even result in the intentional introduction of vulnerabilities into the software.

It’s important to note that the foundational ethos of open source is not to eschew financial gain, but rather to avoid monopolistic practices.

I stand by gagax123’s side, and I hope he release a paid software version or subscription. Even though the revenue from this would be minimal compared to his main job, it would still provide he with some motivation to continue developing and maintaining the software.

not exclusive to open source software, the difference with proprietary is that you can’t tell that it’s intentional in most cases because you don’t have access to the source code.

yes, that’s pretty much the point of open source most of the time, not for profit. some companies make open source softwares and get money from it but they’re offering something else that makes people buy it, such as Nextcloud, RHEL, SUSE.

if you’re going to make an open source project you would be delusional to think you’ll get money from it immediately, some devs get some money from their projects through donations. however the nature of open source makes it that you cant keep your project for yourself in the long run or someone will make a fork that will eventually get better than your own.

i am not saying that everything should be FOSS, however in such context that is funscripting, if anyone makes his project paid/closed source.
at best people will move on to another software that is free (FOSS or not); at worst people will simply abandon the software or scripting overall.

since a lot of people do scripts for free and provide them for free (such as myself), asking people to pay for software that requires your time and patience to create something that only appeals to a niche of users, and for free, will simply be a turn off.

i make scripts on my free time, i don’t get paid for it and i don’t expect to, i don’t care about recognition and i simply want to share my scripts, do you think i’ll pay for a funscripting software ? which will probably won’t even run on linux ? hell no, in such case i’d simply move onto a web based tool; if such tool becomes paid/closed source i can guarantee you that most people will ditch it.

2 Likes

In general, as programmers, we open source our personal projects for recognition, but OFS is an exception. Even if OFS received a lot of stars, it’s unlikely to be featured on the GitHub homepage since OFS is not a general-purpose framework or tool, and also because it involves adult content.

I believe the author considered these issues before deciding to archive and cease development of the project.

I can understand that motivation for doing something usually comes from either financial gain or personal glory.

6 Likes

Young people are always horny. :heart_eyes:

is there a way when i press the home key to copy a stroke, to make it jump to the copied position but whitout it inserting that point.
Like how JSF did it (i know it is ancient but up till now it was my to go to app just for this little thing).

Does anyone know why i can no longer open previous projects after updating from an older version of OpenFunscripter to v3.2?

I just see an error that says “Failed To Open File”.

Its happening on all of my half completed scripts :confused:

You can fix this by opening in the old version, and then export as funscript. Then delete the .ofsp file. The .funscript can then be opened in the new version of OFS.

In one of the older versions i used to be able to shift click directly on the simulator bar to insert a point at that position. It made it super easy to script certain scenes.

Does anybody know how to re-enable this? or has the hotkey/method changed? I really miss this feature.