I have heard of HAXE from someone, more specifically Haxeflixel....but that's Flash, and I'd specifically like to avoid that? Though you mention it can compile into other stuff...how does that work?
As far as my understanding goes,
HaxeFlixel != Flixel and therefore != AS3 Flash. It's a framework for Haxe to use Flixel's functions. See
HaxePunk for a Haxe version of FlashPunk. But both are
OpenFL, which is, as I undestand it, an HTML5 variant of the Flash API and what is what Haxe ultimately is. I forgot about that tidbit and if that sinks the deal, apologies.
Other things to look into include
Godot, which is a kinda-sorta-maybe Unity3D-esque-lite engine that uses a custom variant of Python called GDScript that can output to Web, .exe, and mobile. But, it has very lacking documentation in areas. I've been mostly using Godot for the last few months and having to scour every corner of forums for help on its various UI elements as I was creating a UI-based game. But it's UI is, while cryptic, very good--basically the engine uses the same UI elements you do, so if you see it doing something, there's somewhat some how for you to do it as well. MIT License, ergo, no royalties, no restrictions on what you can do with it. The Engine is Scene-based, not Component-based, which is interesting albeit awkward to get used to--think of every object as a scene that can be instanced anywhere.
It's tutorial does a better job describing it than I can. It's code editor isn't the best when it comes to intellisense as well, but that and the documentation are the only gripes I've been having. It should be workable for doing a CoC-atu, even suited for it as you can just swap out objects/scenes for areas. But I've been having issues organizing the 'engine' of my games and having a mess of Nodes in some semblance of component-based design that has devolved into spaghetti code.
Finally, the only other thing to think of is
PyGame, just know it natively only builds .exe's (as far as i know, and I know I know very little.). It is, perhaps, the closest thing to Flash/Haxe without actually being Flash, but I've only began to mess with it so I can't be much help. It uses pure Python. The PyGame framework, at first glace, is at least straightforward,
well documented, and
established. Just be sure to use Python 3 tutorials when using Python 3 and install the correct version of PyGame. You might need to do some Command Line fussing, but hopefully not. As for IDE's, the native Python IDLE by means of File->New has it's own. It also turns out Visual Studio has Python tools and can access the PyGame stuff with its intellisence (thought it might require a build and/or a bit of fussing). If that's a bulldozer while you're looking for a rubber mallet, one of the tutorials recommended
Geany though I have no experience with it.
Continuing back to HaxeFlixel just to conclude the thought. How it compiles. Skimming through the documentation, it looks like there are terminal commands that generate and compile the code. But! In FlashDevelop there is quite literally a drop-down box at the top of the window that chooses a compiler target. It's as fast and simple as choosing from that list and hitting run. That's it. I'm making an assumption, but I think FlashDevelop is running those commands for you and outputs the build in an appropriate folder in then project files. (Side-note, on fact checking a few things, the Haxe and FlashDevelop teams have collaberated and created
HaxeDevelop, a more Haxe-centric version of FlashDevelop)
Hope this helps. If any help is needed, let me know.