SRG Update #17

Since last update, changes can be placed into two bins:

  1. An Art Deco styling pass
  2. Adding the in-game shop

Between these two changes, the game is feeling much, much closer to completion. The remaining pre-ship to-do list is fits on one screen, now.


Styling Pass

The styling pass was to follow on update 16’s point about how “completion exposes flaws”. I felt that leveling up the visuals might help shake out miscellaneous mediocrities.

The main issue it exposed was an animation problem in the mining gameplay which, in my opinion, significantly reduced mining intuitiveness. The fix turned out fairly straightforward, and really does make the mine gameplay feel a lot nicer. I find that small bugs that cause significant visual glitches during gameplay can deeply undermine the feel of ‘play’, because you lose faith that the system is coherent and consistent.


Shop Implementation

Similarly, implementing the shop makes the game have an actual gameplay “loop”, at long last: success ⇒ money ⇒ upgrades ⇒ success. Through this, BAWD gains that controversial “RPG-style growth mechanic motivator”, for better and worse. It does make the game feel like it has some kind of “point”, which is generally a good thing.

That is to say: Some players will now feel a compulsion to acquire upgrades, and a sense of satisfaction when they do, whether or not they actually enjoy the gameplay enough to spend time on it without the carrot pulling them forward.

BAWD was always intended to be an RPG-ification of the various classic ‘falling block puzzle’ style of game, so this is all more-or-less according to plan. 

In the longer term, I want BAWD players to feel driven more by a sense of exploration than the simpler, more base “upgrades!” reward cycle, but in the meantime I think it serves as a good foundation for fleshing out the experience.


Up Next

My efforts now are primarily directed towards getting to “Shipped!”. The list is short:

  • Tighten up the ‘meaning’ of upgrades
  • Tune abilities and rewards appropriately
  • Add music/SFX
  • Add tutorials, options UI, policy links, credits
  • Fix any remaining bugs


Posted in BAWD, Developer Blog Posts, Games, News, SRG Updates

SRG Update #16

BAWD work since my last update has been fairly one-note, but also high-value.



As I mentioned last time, it seemed crucial to the play experience to get persistence working. The bulk of work recently has been on getting that operational. ES3 made this significantly easier than it was in my prior BAWD implementation, though there were still some hiccups to resolve with regards to model and procgen consistency (seed values, etc.).

Now, the player, galaxy, and individual mines are all persisted through a consistent interface, so the game world feels a bit more real.



In testing, I noticed that when I would get a ‘line clear’, the game froze for a split second, which is bad enough. It felt doubly awful to be “punished” rather than rewarded for completing a line.

My initial hunch was that this might have been a consequence of mine persistence: maybe I was saving to disk dozens of times when you landed?

Profiling fairly quickly revealed that I was completely wrong on that. It was actually a consequence of the way I implemented mine animation and updating. Every tile change was causing memory allocation and garbage collection, a huge no-no on mobile.

Fairly trivial fix in the end: object pooling. Microsoft has a nice open source ObjectPool implementation that, as far as I can tell, is extremely performant. Mining is pretty smooth now.



As usual, when a major feature or fix is implemented, it can expose weaknesses in other features (or their absence). I think this is because while some part of the game is incomplete, you can explain away anything “wrong” with the incompleteness. When that excuse goes away, you can see all the warts.

Now that the game saves everything, and mining is super smooth, I’m being bothered by a few key gaps:

  1. Mines have no “difficulty”. They’re interchangeable and bland.
  2. Though the abilities are implemented, they are not accessible – there’s no store to sell them!
  3. Speaking of – money means nothing at all. Zzzz.
  4. You’re stuck in a single solar system, still. It really dulls the sense of being a spacefaring mineral maestro.
  5. No music. No sound. Zzzz.

I’m still trying to decide what an MVP for this game requires, but I feel like the first three are critical. Abilities are how you cope with the awful 6- and 7-tile blocks, after all.

So my short horizon tasks are to implement the shop and module purchases, then use that to re-introduce mine difficulty. I’m sure that will expose other shortcomings, but this was always going to be a release with shortcomings.


Precious: Don’t Be

I’m continuing to push to get this ready for release ASAP.

One of the nice things about being indie and unknown is that I don’t have to be precious about an app’s first release. As long as it can make it through the app store review, what do I care if it’s not wonderful? Odds are that approximately nobody will play it, so there’s plenty of time to iterate.

In that spirit, every day I fight to keep the scope minimal. Tiny. Dainty. “Shipped” is an awesome feature.

Posted in BAWD, Developer Blog Posts, Games, News, SRG Updates