A slowly dawning realization in trying to share the development of my game is as follows: taking in-game screenshots sucks. Especially if you dev on multiple platforms as I do. There aren't really any robust tools that work cross-platform easily. tl;dr I'm working on a screenshot/video capture plugin for Phaser. Though I'm developing it as a super-easy-to-use plugin for Phaser in particular, nothing is inherently coupled to it, so making a general purpose JS lib is very much in the cards. The ideal is a one-button press for screenshots, and and a one-button press for recording HTML5 Canvas/WebGL videos.
And hey, look, video recording into GIFs kinda works even! (Bonus: see how bad I am with the shotgun.)
I also spent some time adding more character to gun recoil. It turns out this is, like most aspects of game feel, a super deep rabbit hole to climb down. Recoil gets added every time you fire a weapon, which decides your accuracy (denoted by the coloured aiming reticule). Recoil cooldown is applied both in a linear quantity and quadratic quantity (per gun). (It turns out purely linear cooldown is boring and feels really crummy.) This lets you make things like the Assault Rifle feel tight and accurate for the first few shots before blowing out in accuracy, and the shotgun unable to maintain a steady flow of salvos if you panic and unload too quickly. And, finally, the handgun, which generally stays pretty stable unless you slam on the semi-auto too fast, and even then it recovers fairly quickly. It's the little things that make the game feel right, and hot damn do I enjoy 'dem details.
Played a tiny bit with open and save file dialogs, theres a nice haxelib for using native ones and I need that as a part of some editor improvements I'm going to do when I come back, like having multiple "tabs" (non visual) and saving on exit/loading on start.