snõwkit dev log #6 (community)

sign up sign in

A dev log filled with community antics!

previous editions
- #1 “assets”
- #2 “history”
- #3 “modularity”
- #4 “data flow”
- #5 “phoenix”
- #6 “community” (interlude)

I mentioned previously (in dev log 5) that dev log 6 would be about the new renderer, but there's a LOT to unpack regarding that, and a lot of unknowns to cover regarding it so we're gonna take it one step at a time.

While I've been busy working on real life stuff, my work and the renderer, the community has been nothing short of awesome.

I'll start this dev log with a short recap of some of the things I've been up to and the rest will just be looking at the great efforts that the community are doing.

Asset packer: round 2

In dev log #1 I showed a screenshot of a really quick/rough asset packing tool that the Westport Independent devs were using to release their builds to the press and the public alpha.

When I hack something together so fast, it's basically unusable unless you do exactly the correct steps, and it doesn't care about anything like workflow or sanity, so it's not ideal to release it, especially when the packing and unpacking code was made specifically for that use case, in a few hours.

This time around, my friend Bennett was asking about the build size on web, and I was pretty sure the packing tool would work with the web builds too but needed some work. While he was finishing up a port of a game (more on that later) I redid the asset packing tool to not be completely terrible to use, and solved a lot of the annoying issues. The Westport team also needed a newer build, so I had to tackle it anyway.

This is how it looks now, and before

Aside from being much easier to use, not stretching the images like crazy, displaying bigger list of assets more sensibly:


It's also got some new features. The new ui and layout of course, but it also now has sessions, so it remembers the project settings for what you're working on, reloads it on launch, and remembers all the files and their selection state, so iterating is quicker.

It's still super rough around the edges, and the packing code is still not just yet usable in the luxe.Parcel code, it's very close to being there. Confirming that it works on all the major targets is pretty important of course, but also that using it isn't locked down into one workflow. At the moment for example it will just preload everything into the asset system, which for some games is desirable, others not. It also doesn't handle music from the pack file specifically yet, because that's a lot more complex.

When can I get it?
I am hoping to get it into the main repo as soon as is feasible, but I also need to stick to the current focus to avoid ending up in every rabbit hole. When it comes to real projects that supported me since the very early pre-release versions of luxe - I am more than happy to lend some time to their projects as is needed.

When mint is released (more on that below, too) it would make sense to put the (messy) code up for the tool since you could actually build it. The parcel specific code to load it is around 95% of the way there thanks to this recent push, and with some minor clean up should be in there soon.

All in all, another good few hours spent and well worth the improvements. A big thanks to Bennett and Kristian for helping nail it down in their projects before it's even done.

mínt news

The pressure is mounting! People keep asking about mint, and I wanted to just make a note (I did recently too) that it is coming along pretty well. It's basically complete from the structure perspective that it needed to be, before it would make any sense to release it.

I also want to reiterate that mint is simple and flexible and to the point, and has intentional use cases in mind, so your expectations should be set accordingly. I spoke about the goals here, if you missed it. I'm quite happy with how it turned out, and have been able to use it to good effect for what I need it for even before it was ready - see the asset tool as a good example, I have a number of things that use it this way.

I'm excited to flip it to public, and I am hoping to do that really soon (before Ludumdare 33, see below, if I can help it).

EDIT: It turns out that Chrome/FF on Windows use ANGLE, which apparently hates this demo. Disabling ANGLE or testing on a different OS will get the 60fps it's supposed to have!

You can play with the test here


Game Releases

One of the best parts about making stuff : releasing it! Recently there were some notable releases so I am going to make a note of them here.


Bennett released a small web game using luxe previously, but has also recently ported the hilarious QWOP to WebGL using luxe too. I have always been a big fan of the game, even though I am quite terrible at it, so I'm pretty happy Bennett decided to give it a try.

Bennett was also kind enough to write up a post about the experience and reasoning.

Read the full postportem here


JunoNGX has released a game on android earlier today. I really like the simple clean visuals and style choices, and the game plays pretty well - It uses the accelerometer to good effect.

JunoNGX also posted a good write up on the process of submitting a game to the Google Play Store, and Android dev in general using luxe, which is helpful if you're planning on tackling that short term.

Ignoring my test releases and betas on the Play Store:

This release in particular is notable because as far as I am aware,
profectus.4 is the first luxe game on the android store front/s.

Get the game and support the developer.
Tell your friends, share a tweet, have at it!

It's available on and Google Play

Rounding up
That means that most platforms (except for linux atm) have had a release on them. Westport on desktop to a wider audience, Baby Touch Tones was the first on iOS, many web based games, and now profectus.4 on Android.

I'm really happy with that, especially during the alpha, given that we're not done and releases are feasible is motivating and also helps others feel more comfortable with trying out the platform.

I want to say this every day, but I really do appreciate all the cool stuff the community makes, even if I don't get around to covering every single tweet in a post, you're making it easy to build the engine to what I had hoped it would be.

Ludumdare 33

Ludumdare is coming up again!

Like last time, I am going to try and have a few things pushed upstream well ahead of the jam. I also won't be changing anything major on the API in the interim, and have been updating the guides to make sure they are in line with the newest code.

Last time we had a great showing, I look forward to seeing what everyone comes up with this time.

In fact one of the previous LD games was ended up being displayed in an exhibit in France, picture courtesy of the author, Jeremy.


Last time I had to cut the community section a bit short, but here's a bunch of stuff the awesome community has been up to.

Espen posted about using hscript to script his game components, with a full write up over here. It has gifs, a playable link and technical details.

The Westport team have been posting a lot of great content, be sure to check out their twitter feed, like this title awesome screen for the game.

They also have been posting other really cool work in progress art.

Benn has been working on the level select for his game, which now has glitch effects and volumetric light and motes:

Tilman has been working on his polar platformer some more, along with helping work on the gif encoder that we sneak previewed recently.

Anders who maintains the formidable “awesome-snowkit” repository of resources, has been posting more previews of Hexmage, including a youtube gameplay preview.

Andrei has posted a nice gist of a spatial hash with a uniform grid, which is useful for collision broadphase to narrow down what to test with who and when (useful for when you're using luxe.collision and need to narrow down queries).

View and star the gist here.

Eduardo was making something which looks really great for GBJAM.

Darek has also been doing something interesting sounding for GBJAM.

Michael has been updating foo, and has got everything up and running nicely again.

More community...

Wow there's a lot to go through :D

Since this post is already crazy long for an interlude,
we'll leave it at that.

You can view all of these and more via the #luxeengine hashtag on twitter, following the @snowkitorg account, visiting the community chat and visiting the site of course.

Be sure to have a look at all the posts on too, there are quite a few great ones recently as well.

In closing

I have a lot to post about so I decided to push the community stuff to it's own dev log, and I think it shows that the community is awesome. It's really appreciated, everyone!

Keep a close eye on the twitter feed, and , there's a bunch of stuff coming up that you should know about.

Till then!