Well, I didn’t want to get into too much detail because I didn’t want my statement to sound like a dramatic “leaving of OpenFL”. There’s a good possibility I’ll come back to OpenFL in the future once I find things to be more stable out of the box.
I’ve actually been using HaxeFlixel and OpenFL for the past few years on some large, partially finished projects (with a lot of handmade art assets invested into them) and throughout its occasional kinks, pitfalls, and clunky neko build system, I’ve continued to push through due to my familiarity with the Flixel/OpenFL/Flash api and Haxe’s multiplatform features.
However, my issues with HXCPP externs lately have driven me towards a more completely JS-driven approach with Electron/Cordova and at that point, a great portion of the benefit of Haxe has been lost for me (effectively seamless, fast native builds on multiple platforms). HaxeFlixel has also struggled (in a significantly timely manner) to keep up with the latest OpenFL versions and Beeblerox’s branch is still unstable in many ways. With the increasing difficulties I’m running into along with many other issues I’ve run into over the years with Haxe’s ecosystem, this increasingly feels like the “straw that broke the camel’s back”.
While finding out that Phaser 3 is coming out literally today rebuilt from the ground up with a lot of interesting optimizations, features, and Typescript support (which Haxe externs also wouldn’t be difficult to generate after), I’m strongly considering just biting the bullet and porting my projects over as it’s API was originally based on Flixel (made by someone who contributed a lot to Flixel) and is still familiar in many ways.
Since I’ve already switched to Electron/Cordova builds and I’m writing C++ bindings in nodejs modules instead of HXCPP externs, it seems like a natural transition. It’d be difficult for me not to switch over without the main reasoning simply being sunk cost fallacy because at the moment the issues I’m running into are feeling as though they’re hindering my productivity rather than improving it (relative to other solutions).