Welcome to the latest edition of the Haxe Roundup. Haxe is a high level, strictly typed programming language and cross-compiler.
Community Updates
News and Articles
- Haxe
4.1.5
has been released! Get the download now or check out the changelog. - The Haxe community discord just hit 3,000 members - come join!
- McLeodGaming have completed Fraymaker’s Kickstarter campaign with 9885 backers who pledged
$364,922
, funded793%
above their original goal! 👏 Remember to wishlist it on Steam. - Go2hx community announcement, a Go to Haxe transpiler and spiritual sucessor to the Tardisgo project with notable design improvements.
- PolyStreamer - a multistreaming service built with Haxe by Jeff Ward. Also give PolyStreamer a follow on Twitter.
- Renaine Kickstarter Update
#32
- Updates and Crossovers. - Kino Rose has written Compile Projects In Haxe Fastand Haxe: What Are Anonymous Structures?.
- Oleg Dolya has written City Viewer
1.1.0
- support for trees and islands, improved UI & more in the latest release. - Catchup Interview with Oleg Dolya of Fantasy City Generator by Duncan Thomson.
- Vadim has written 2020 in review.
- The First Month of Mine Blocks Beta! by Alex Lanzetta.
- Luna Tech plugins have been featured in RPG Maker Resource Spotlight: Lunatech’s Plugins article.
- Practical Shader Development done in Haxe by Uldis Baurovskis.
In case you missed it
- Fraymakers is powering through stretch goals on Kickstarter surpassing
$240k
, just this week they’ve confirmed the addition of a 9th playable character, super attacks, announcer packs voiced by Alpharad and Tomamoto and the Switch port, with more to hopefully come during its final stretch! In the meantime check out Content Spotlight#8
- Fancy Pants Man and Content Spotlight#9
- Octodad. - Feathers UI
beta.2
preview build on Haxelib by Josh Tynjala. - Defender’s Quest 2 Progress Report for November 2020 by Lars Doucet.
- Dead Cells surpasses 3.5 million copies sold ahead of second DLC announcement!
- Haxe conditional compilation saves the day article by Kino Rose.
- The latest FlashDevelop features by SlavaRa:
- Improved support for
Import with alias
code completion. - Improved behaviour of code completion.
- Added completion after
return
,case
, etc.
- Improved support for
- Two articles (in Russian) about Armory3D:
Videos & Music
- Haxe TODO list for beginners - EP1 video by Coding Reaction.
- Rogue of Vallas Devlog
#8
: State Manager Finale video by Merrak - Rogue of Vallas Devlog
#9
: Level Design Strategies video by Merrak - How to remove the HaxeFlixel branding i.e. splash screen, auto pause. mouse cursor video by Richard Oliver Bray.
- How to create a custom preloader in HaxeFlixel video by Richard Oliver Bray.
- How to export and publish your game in Haxeflixel video by Richard Oliver Bray.
- Adding a finite state machine (FSM) to a HaxeFlixel sprite - Part 1 - Setting up video by Richard Oliver Bray.
- ArmorPaint: Nutcracker - PBR painted wood material with scratches video by Alexandr Kiryanov.
- Jonas Nyström has recorded an introduction video on how to use Haxe with React Native CLI project running on a Android virtual device. Source code available on gist.github.com.
- Haxe with Defold progress update video by Sergey Lerg.
- Add a video related to Haxe.
In case you missed it
- Adding music and sound effects to a game in HaxeFlixel video by Richard Oliver Bray.
- Rogue of Vallas Devlog
#7
: “Quality of Life” Updates video by Merrak.
Upcoming Events & Talks
- Add an upcoming event about Haxe.
Jobs, Bounties
- Add an available job involving Haxe.
Looking for work
- Javid Jafari is looking for a job.
- Joshua Granick is looking for paid work.
- Justin Mills is looking for a fulltime job. Justin is an ex Flash/AIR/Away3D/Papervision3D expert who’s been using Haxe for 10 years, a good lateral thinker & loves visual stuff, maths and capable at fine art.
- Andreas Drewke is looking for a part time job.
- Kevin Leung is wondering if any Haxe Australian companies are hiring?
- Torcado is looking for a publisher/indie fund to help him fund the rest of the development for Heck Deck. He would love to know any recommendations you may have.
Job listings
- Shiro Games are still looking for people to join their team of passionate developers in Bordeaux to work on a new unannounced project.
- Bloognoo is looking for a Haxe developer to help them save live venues.
- The team behind Forge of Empires at InnoGames is looking for a Haxe developer, feel free to contact Dan Korostelev in case of any questions! More info can be found at the company’s website.
- BeeInventor Limited are hiring for a Haxe fullstack developer to join them in Taipei.
Bounties
- Squidly has opened up a bounties page for HaxeFlixel features.
- Lars Doucet’s list of various open bounties.
Product Releases & Announcements
- Dicey Dungeons is out now on the Nintendo Switch! via Terry Cavanagh.
- Robert Alvarez has release their first game of 2021, Chessformer, now available on itch.io and Newgrounds, made with Stencyl.
- Skyfire2008 released Asteroids on Newgrounds.
- Stick figures - is a submission by Oleg Dolya for
#procjam
2020. - Double Turn
1.0.5
Winter Update is out on Steam. - Puppy string by torcado is available now from itch.io.
- The Windows version of Baston is now available. via Etienne.
- Quarantine made by jefvel. The game currently has two chapters but there will be more.
In case you missed it
- Spellbreak is coming to Steam!
- Diggy Diggy Deck made by Axol Studio for the Yogscast Game Jam 2020.
- Spooksville
beta 1
by Axol Studio is available for testing. - Richard Oliver Bray has created a Udemy course - Making GLSL shaders for 2D game development - HaxeFlixel.
- DESEEDER is now the 11th game ported to Haxe by Alex Lanzetta.
Code Examples
- Pseudo Random Number Generator by Kaelan Evans community thread.
- Rice2D-Examples by Urjasvi Suthar.
- Have an example you want to add? Consider contributing to the code.haxe.org cookbook.
Previews & Demos
Open Source
Community Previews
- Tommy is working on a Kha LibVLC binding!
- Tommy previews his LibVLC bindings with two 4K streams and two HD streams with high bitrate all playing at 60 FPS in the same Kha app.
- OpenTower: A Resource Management Puzzle announcement and request for critique.
- Sébastien Bénard has updated his LD35 game, SubDragon, which is now vastly optimised and runs at close to 60 FPS. Source code available on GitHub.
- Sébastien Bénard has taken some time to learn new concepts with shaders in Heaps engine. The source code available on GitHub.
- Sébastien Bénard has also ported Memento XII from Flash to WebGL (took him ~2 days, including bonus bug fixes & retakes).
- One of Cédric Belin projects, setup-dart-action
git
is being used by Google, in mono_repo.dartgit
. - Nanjizal has added the Oklab colour space to pallette
git
. - Nanjizal has added linear gradient to Trilateral3.
- Tankmas ADVENTure 2020 by Geokureli. The source code available on GitHub.
- Hugh Sanderson has added
nme.Lib.createSecondaryWindow
to create additional windows in NME on desktop targets! See the sample project showing the new functionality. - Urjasvi Suthar is writing their own rendering engine in Kha for learning purposes.
- Jefvel has built a game launcher/updater using Haxe and Hashlink. The source code is available on GitHub.
- The Ceramic editor running inside Unity editor. As the editor is made with ceramic, it can be exported as Unity project like any other ceramic app! via Jeremy Fa on the Haxe discord server.
Releases
- Haxe-Checkstyle
2.7.0
has been released. - LDtk
0.6.2
has been released. - Ceramic
0.6.2
has been released. - OGMO Editor
3.4.0
The Ohmnivorening, has been released… - Armory
2021.1
has been released. - Iron
2021.1
has been released. - Zui
2021.1
has been released. - HaxeBullet
2021.1
has been released.
Project Progress
[heaps]
HXSL: Implement borrow qualifier pull request.[openfl]
Simplify the OpenFL library structure merged.[neko]
Port from GTK2 to GTK3 pull request.[kha]
UpdateRandom
with faster implementation, SFC32 merged.[tink_macro]
Deduce common base type from a list of types merged.[haxeparser]
Syntax updates merged, with add Lix support.
Git Repos
- echo-flixel
git
- A library to integrate echo physics with HaxeFlixel. - clay
git
- Clay is a lightweight toolkit to build apps, games and frameworks on native platforms and web browser, written with the Haxe Programming Language. Clay is a rewite and successor to snowkit’s snow library. - hxScene
git
- Haxe Scene: Manage game objects using a theatre/stage like paradigm. - hxasync
git
- This library allows you to add async and await keywords in Python and JavaScript code almost the same way you would do it in the native code. - spil
git
- A simple lisp parser written in Haxe. - atom
git
- Atomic CSS for Haxe. - SequentCalculi
git
- A Haxe implementation of G3cp & G4ip, two cutfree and decidable proof system for classical and intuitionistic propositional logic. - hawk
git
- Haxe Webkit -> make web apps quickly. - Luna-oxygen
git
- An RPGMakerMV/MZ plugin that adds additional widgets and UI elements to improve your game with. - Luna-config
git
- An RPGMakerMV/MZ plugin that allows you to modify additional presets in MZ/MV. - netlog
git
- An external debug log window. Supports colors! - extension-yy-to-gmx
git
- very partially convert GameMaker Studio 2 extensions to GameMaker: Studio format. - NT-Background-Colors
git
- A small program to aid with changing background\shadow colors when doing texture mods for Nuclear Throne. - NTT-Assemble
git
- Patcher/reassembler program for Nuclear Throne Together. - BaronyBoolStatsViewer
git
- A small web app to check what books you are missing for an achievement in Barony. - GmxOrg
git
- Exports .project.gmx structure to a YAML-like format and back. Intended for quickly organizing large numbers of assets in projects. - BMFontToGMFont
git
- Converts BMFont-format fonts into GMS/GMS2 font resources. - Check out the latest open source Haxe projects over on GitHub.
Closed Source
- Enjoy a 2020 GIF Christmas card! by Merrak.
- HaxeFlixel multiplayer movie theatre was a huge success. via Geokureli. 🎞
- Joaquin Bello got the basic flash shapes and animation working in Unity. The parsing and animation logic, with interpolation was coded using Haxe using swf parser, and then compiled into C# and interpret the data in Unity.
- Large bird friend does big tackle in Renaine by Squidly. Also check out the stream recording: Exploring some ruins with a bird 🐦 in Renaine.
- Poor Thief by Tom Brinton, made in Stencyl, was Game of the Day on the App Store.
- Syo previews ships docking in Jitter Sandbox, an indie game made with Heaps with bonus management and flight modes.
- Fault by GhostID team is on it’s way back. Fault
0.0.3a
demo is out. - JanoGames has updated the demo of Stage Dive with better Firefox support, also JanoGames has started a prototype called One Season Wonder.
- Non-destructive decal layers now available in ArmorPaint. via Lubos Lenco.
- Guess I’m spending a lot of time on this little project by Elton Silva.
- Austin East is prototyping a curvy platformer made with echo
git
which recently added support for cubic and quadratic curves. - New screenshots and GIFs from
WIP
puzzle game by mauve:- Concepts for stuff, unpolished/incomplete.
- Trap switches and popup floors: a new puzzle gimmick to be expanded on.
- Fixed reflections of the torches on the water
- Personal gamedev progress summary for 2020.
- A couple of new screenshots from
WIP
game by Rob Clemmons Jr:- Formatting close to being done.
- Sometimes, I do things correctly.
- Getting somewhere with the custom tool tips.
- Wow, that was, actually way easier than I thought.
- New GIFs and screenshots from Caverns of Ksantarus by President of Space:
- The obligatory lava floor for the obligatory lava level!
- Got the GNU/Linux build working!
- Creating obnoxious traps and fiery challenges.
- New GIFs from Go! Go! PogoGirl by Andrej:
- Don’t you love it when you mess up your tilesheet code and enemies become a long stretch of beach?
- The hidden gems now work!
- GIFs from
WIP
game by ustance (taken from Kha discord server):
Some Library Releases
- deepnightLibs
1.0.56
- Haxentric
1.0.0
- echo
3.0.0
- hxp
1.2.1
- cog
2.0.0
- ldtk-haxe-api
0.6.2-rc.1
- atom
1.53.0
- checkstyle
2.7.0
- tokentree
1.1.0
- ceramic
0.2.7
- vscode
1.52.0
- jsoni18n
1.0.2
- redistHelper
0.4.7
- haxe-injection
0.0.1
- pony
1.3.7
- newgrounds
1.1.3
- fuse
0.1.6
- tink_core
2.0.0-rc.2
- which
2.0.2
- Check out the most recent library releases on HaxeLib.
People & Projects to support
- Pavel Alexandrov is primarily contributing to the Heaps engine and is the creator of format-tiled library.
- Ian Harrigan is working on primarily HaxeUI, as well as hxArduino & hxWebSockets.
- Kaelan Evans is working on HxDoom, a Haxe adaption of Doom.
- Richard Oliver Bray is teaching people the things he’s learnt, like React, Typescript and Haxe.
- Alexander Gordeyko is developing Pony, a Haxe open-cross-library.
- Andy Li is working around the Haxe ecosystem: CI, packaging, docs and learning materials.
- Kevin Leung is creating open source software libraries.
- Robert Konrad, the Kha author, is creating Programming Toolkits.
- Lubos & contributors are creating Armory, an open source 3D game engine in Blender.
- OpenFL is creating free open source software.
- HaxeUI is creating an open source user interface libraries.
- HaxeFlixel is creating an open source, cross platform 2D game engine.
- Slava Ra is creating improvements for FlashDevelop and HaxeDevelop.
- Mark Knol is working on Haxe and its documentation.
- Dan Korostelev is working on the Haxe compiler.
- Eric Bishton is creating the Haxe plugin for IntelliJ IDEA.
- Will Blanton is creating HaxeFlixel tutorials.
- Matthew Wallace is creating Haxe By Example tutorials.
- August Late is creating unique 2D lighting tech.
Updates from the Haxe core
Current Proposals & Discussions
- Add Enum abstract instances proposal.
- Add Null coalescing operator proposal.
- Add local static proposal.
- Allow enums to opt-out of publishing their constructors in the implicit global scope proposal.
- Add destructive assignments proposal.
- Add Matcher: setting variables and guard as expression in a pattern proposal.
- Add Single pattern check proposal.
- Add Shorthand nullable-type syntax proposal.
- Add support for on site getters & setters proposal.
- Add support for
Self
access for abstracts proposal. [RFC]
Xml Dsl’s discussion.- Add support for default type parameters proposal.
- Add polymorphic
this
types proposal. - Add Default values for enum parameters.
- Do you have an idea to improve Haxe? Consider creating a proposal.
Core Changes
95~ commits have been made to Haxe compiler in the last month.
- GADT type params and inlining issue.
[ILIB]
Add Linux & OSX Amd64 merged - Needed for .NET5.0
std dlls.[cs]
Avoid CA2200 warning when rethrowing merged.[cs]
Implementcs.Syntax.code
andcs.Syntax.plainCode
pull request.[cs/java]
Do not check abstract fields in libs merged.[ide/cache]
Signature based module invalidation ideas.- Add .NET
5.0
merged. [draft]
Start working onVoid
unit type pull request.[cpp]
Support new and super for native classes merged.[cpp]
Overload resolution forTNew
merged.[js]
Generate export with@:expose
and-D js-es=6
pull request.- Custom map implementations perform poorly at large sizes issue.
- Formalize/design/unit-test IDE-support API for macros discussion.
@:structInit
can be used to bypass final assignment issue.@:forward.new
breaks with constructor closures fixed.- Regression in operators handling issue.
In case you missed it
- Operator overloading – wrong function used (definition order-dependent) issue.
- Support overloading
is
operator in abstract types pull request. - Array type inference with local function issue.
You can get started using the latest features by downloading a nightly build of Haxe and see the impact the latest changes have on each target by browsing the benchmarks site.
Take it easy everyone, stay safe and have a good week!