OpenFunscripter - another scripting tool - 1.1.9 release

Too bad there is not much Linux love :slightly_frowning_face:
I have no idea. I’m not a developer, but apparently it should be pretty straight forward, but I dont know for sure. There seems to be some Snapcraft action, if that is any help.

A tarball of the compiled project would suffice IMO.

1 Like

That would work too :slight_smile:

That wouldn’t be portable across distributions. There’s a reason snap, flatpak & AppImages exist.
They all seem very annoying for me to setup. :man_shrugging:
And right now I’m leaning more towards AppImage than snap.
I’m going to have to do some refactoring before I can do this though.

Edit: Ironically this means windows people get an installer :thinking:

2 Likes

@ObjectOrientedBob @Yezohd8b It looks like I’m going to be able to distribute snap packages going forward.
There’s one bug which is unique to those snaps where the open/save file dialogs don’t show up which I guess has to do with the sandboxing. I may have to change the library I use for the dialogs.
They are also pretty big with 130+ megabytes not sure if I can reduce that.
Another thing is right now they just work on X11 and not on wayland I hope that’s something I can figure out as well. A positive thing is that was able to run the same snap on Ubuntu 20.04, Ubuntu 18.04 & Fedora 33. :slightly_smiling_face:

In other news for windows the next release is going to have a proper installer.
I’m going to fix some more bugs that I’m aware of and then put out a 1.0.9 release. :relieved:

2 Likes

@gagax123 Just out of curiousity, what is the benefit of an installer over downloading the builds as we’ve been doing?

I wouldn’t mind having the option to download a zip-file without installer as well. I actually prefer a zip when software is under still under development and is still frequently updated and where I might download builds in between releases. In such cases an installer is just in the way. But I understand that many casual users would like an installer.


My OFS is about 40 megabytes packed, while 150MBs unpacked. If it’s over 130MB packed for the Linux build then that’s quite big (probably at least 300MB)

@poet145x @sentinel
In a perfect world OFS would just be a singe standalone exe but I don’t think that will be possible mainly because one goal is to keep the project in a state where anyone can just pull the repository and just compile & run the project without having to setup a crazy dev environment, where then all dependencies are statically compiled and linked.

The installer really is just an executable zip archive. You can still extract/install anywhere you want with the added benefit of having an uninstaller & if you have an update it’s just a couple clicks to overwrite in the same location.
Another thing is the configuration is going to get stored in this directory “%appdata%/OFS/OFS_data” which has the benefit that the configs can be retained over releases ( this will probably also be source of bugs :man_shrugging:).
I really would encourage using the installer since I don’t see any negative aspects.

@mrdoesnothingalot I just checked installed it’s actually 420MB :sweat_smile:
But you have to keep in mind that it contains EVERYTHING it needs to run. Completely independent of the system it’s installed on, which is not the case at all for the windows releases.
That being said the size can still be reduced with some optimization.

Will this allow for parallel installations, i.e. having more than one version installed at the same time?

I understand your motivation and it is a good one :slight_smile:

No that’s something the installer would prevent. But honestly from my perspective it’s not desirable for people to have multiple installations. I want people to always have the newest and nothing else. :thinking:
I guess I can still generate 7z archives on appveyor but I wouldn’t want to attach them to any github releases anymore.

Will it be possible to pick a build from the build pipeline, between releases, without an installer so that it is possible to have a beta version and a released version at the same time? This is basically why I want to have the option not to have an installer. If I’m testing something I don’t want to remove the latest released version that is installed.

Yes that’s the idea but they would still share the same configuration.
Probably will have to add a version the configuration json to avoid crashes if I make drastic changes to the format.

@gagax123, Sounds great! :smiley: Looking forward to trying it out on Ubuntu and producing some scripts. AppImage or Flatpack would work as well. As long as it is easy to install update!

Hey @gagax123,

I was hoping you can add more functionality to using a gamepad when scripting. More specifically you have a “Add Action” key. Would it be possible to bind keys to "Add Action @ 50/60/…?"They could be off by default, since the scripter would have to choose which percent works for them due to limited buttons on controller.

I think it would be helpful because i script using alternating mode and just inserting points then going back and adjusting the depths of those points. It would be helpful to go through and place points specifically at 0,50 and 100.

I hope you understand and it’s not to difficult a feat to accomplish

You can already bind all the bindings under “Actions” which go in multiples of ten to controller buttons.
You’ll have to unbind some things the only free button by default is Y ( on an xbox controller ).
Unbindings works by clicking the controller binding and then hitting escape.

In the console you can see if you’re trying to bind something which is already in use.

Awesome, I didn’t see that. Extremely helpful

Thanks

There’s now a 1.0.9 release.
The “.snap” is a snap package for linux users & the “.exe” is an installer for windows.
There’s also still 7z archives on appveyor but I want to discourage the usage.
@Hydra you wanted to get pinged but you can’t stack multiple script timelines, yet.

@ObjectOrientedBob @Yezohd8b
The snap package has to be installed like this:

sudo snap install --classic --dangerous OFS-64x(…).snap

It’s not sandboxed because I couldn’t get controller support working that’s why you need the --classic flag & --dangerous because it doesn’t come from the snap store I guess. :man_shrugging:
The snap became even larger because of some gtk3 stuff I had to include but atleast it works now on x11 and wayland.
Also there’s no desktop file yet you’ll to start ofs via the console like this

openfunscripter

Thanks for the Snap and Linux-support!:smiley:
But I can’t get it to work. Any idea what might be wrong?

oob@oob-cyberdeck:~$ sudo snap install --classic --dangerous '/home/oob/Dokumenter/OFS-64x_refs.heads.master-1c160c2244843512f87104a4d879acb4e58325ce.snap' 
[sudo] adgangskode for oob: 
openfunscripter 0+git.1c160c2 installeret
oob@oob-cyberdeck:~$ openfunscripter
WARN: "/home/oob/snap/openfunscripter/x1/.local/share/OFS/OFS_data/keybinds.json" doesn't exist
WARN: "/home/oob/snap/openfunscripter/x1/.local/share/OFS/OFS_data/config.json" doesn't exist
Segmentfejl (smed kerne)

Segmentfejl (smed kerne) = Segmentation fault (core dumped)

Sigh :sweat: what distro are you on?
And do you have a dedicated gpu?
I’ve only tested on VMs…