SakeTami
clickteam_phi
clickteam_phi

patreon


October 2022 update

Hey folks,
Lacewing Blue HTML5 update and new extension to report!

Before I get further, the roles of the Patreon have been revamped. Folks wanting a single extension can now sign onto the smallest role.

Bluewing HTML5

So, the Lacewing Blue HTML5 project is 95% done, and currently on hold. I was buying a code signing certificate from Sectigo, and they're having difficulty due to my type of company. Normally, you'd verify with the government website, but as my company is not limited liability, it doesn't get registered with Companies House.

The UK allows you to start a single employee, unlimited business, with just changing your personal tax filing. But there's no public listing, because it's personal taxes, and Sectigo's policy isn't suited for validating a company like that.

So I'm still going back and forth with them – have been emailing for months now, now I'm phoning – and once it's sorted I can sign my new bluewing-cpp-server programs, which means I can put out the new version.

Right now, the Bluewing HTML5 works pretty well. The Linux server is a bit rude with disconnecting clients, and on the client side, interaction with files and memory access (allowing other exts to read the memory) is inconsistent, but outside of that, all the messages work, channels work, welcome messages, etc.

Note the workarounds for UDP and the like I mentioned in my previous post. Minimal recoding needed for Windows code!

Once the code signing is sorted, I'll release the standalone bluewing-cpp-servers, then I'll sort out the C++ interface so Bluewing Server can load SSL certificates on the fly. Hopefully, it should be sorted by end of this month, and I can resume work.

Function object, now a script engine

This object was in plans all the way back in 2018, but at the time I wasn't familiar with object selection, so I paused it and switched my focus to Bluewing.
Then Uppernate started coming out with Scope Control object, so I waited for him to finish so I could pilfer his code and understand how qualifiers and selection works. He sent the code for it a while ago.

The function object, which had some working names of Intense Functions object and Expression-Function object, has slowly evolved to be a whole script engine, where the main content of the code is Fusion events. I published the general ideas for it for public feedback here.

The extension, now called DarkScript, is extensive, and gives enough functionality to Fusion engine that anyone coming from C#, C++, PHP and other languages will find things easy to implement. It's super powerful.

DarkScript can do:

I should also have a help file done for it as well. The issue with a super powerful object like this is that I'll need to hash out the finer details like operator precedence for people familiar with modular programming, and hash it out more for Fusion beginners.
Honestly, beginners will gain a lot from using this object; it's halfway to using non-Fusion programming languages, but still plenty simple.

Later, I may evolve the run-function-from-text to a whole script parser; Turing-complete, so multiple lines allowing multiple functions, if/else, loops, etc. The functions in it will still run with Fusion events, of course.

I've designed DarkScript to be compatible with Fusion 2.0, and I'll port it to all platforms I can; which won't be simple, because it interacts with a lot of Fusion internal code, but fortunately, all the Fusion runtimes are based on the Windows code for consistency, so while variables are moved around, they all operate the same way.

If anyone wants to be involved in the testing, let me know!
And as always, thanks for your ongoing support!
~Phi

Comments

I'll drop you a Discord DM! Currently most of the main features work. Still hashing out around 40% of the ext, but it's usable for fastloops, foreach, subfunctions, stopping funcs midway, etc. Template seems to work well too. And yeah, it's definitely going to transform things. Fusion-only coders might not appreciate it at the start, though, more of a learning curve for them and they don't think in modular programming like other language coders do.

Sounds truly awesome! Def still up for some testing when you have something to test.. my fusion dev workflow is mostly function based already but only using for each and fastloops and lots of active objects for variables, so an object like this, if it performs well enough, I believe could really transform the way fusion apps are developed


More Creators