Getting schwi…eeer…shifty – Postmortem

Posted by
April 19th, 2016 7:31 pm


Play it and rate it here! :)

This was a peculiar weekend and, as always, very fun and rewarding. After spending most of Friday on a train which arrived with an hour and a half delay due to most unfortunate reasons, I overslept and had a late start on Saturday. Then, even if I had a clear idea of what I wanted, I ran into some early problems because I’d forgotten about some really basic stuff related to the way Flixel handles positions. Luckily I managed to overcome all that and the end result this time has been more than satisfactory.

The idea came relatively easily. My first inspiration was Altered Beast, but that would have probably been overkill in terms of asset creation, so I discarded that and went for another classical genre with very clear references. Back on LD30 I had wanted to make a shoot-em-up where the “ship” actions in one world would affect interconnected ones, but unfortunately I run into some technical problems and couldn’t participate in the end. Ever since I’ve been wanting to resurrect that project or implement something similar, and the opportunity presented itself this time.


(From left to right, Ikaruga, Waves and Geometry Wars)

My references were immediate, too: the main one would be Ikaruga and its colour switching mechanic as key, but I also checked other two shmups I’ve always liked: Geometry wars and Waves. The connection to the theme is obvious (switch shapes for fun, profit and devastation), and decided to go full abstract/geometric instead of my original approach, where you would be some kind of a microscopic drone with Transformer-like abilities and your task would be to defeat viruses and bacteria. It’s a good way to achieve some pleasant visuals without having to spend a lot drawing.

What went well:

  • Controls. Having gameplay just feel right were a must, and this time I think I more or less made it :) I would have liked to add some acceleration to motion and so on, but making that feel right could have been tricky and time consuming, so I aimed for the basics first (orientating the sprites and aiming in particular).
  • Scope: By resorting to a well known genre with simple yet effective mechanics I managed to keep the game scope under control. Of course there are lots of things that didn’t make it, but the current result feels complete.
  • Development speed: As a consequence of the previous bullet point, having a restricted and clear scope and feature set I managed to keep a constant and fast development pace. That’s a huge bonus for motivation.
  • Visuals and effects: At the moment the game is getting some nice comments (thanks!) about the graphic style. They can still be improved, but it is true that they can make a huge impact on the perception of the game.

Now, the ugly:

  • Slightly chaotic process: I wanted to make up for the late start, so I just started coding as soon as I pinned down the basics of the game and completely forgot about planning for several hours on Saturday evening, when I finally decided to create my usual Trello board to keep the tasks and my progress controlled. This wasn’t bad per se, but I also made a risky gamble with version control, and I completely neglected it until it was actually time to submit. Then I created and pushed the sources to Github. I was very lucky, as I didn’t run into any problems or had to roll any feature back, but the next time I should at least be more careful with that just in case.
  • Not directly related to the competition or the game, but…THAT ARTICLE (you probably know what I’m talking about, I’m not going to give it any more publicity). I read it while on the supper break and got incredibly angry.

…and what went wrong:

  • Music and unbalanced volume, and glitchy mute option. The thing I regret the most on this edition is, no doubt, the music. I wanted to make some fast-paced tune with a psychedelic vibe, but I got stuck and, when I realised that there was only one or two hours left before the deadline, I chose to leave music as I had it and moved to UI coding. I need to practice a lot more on composing the game music. Besides, the effects volume was irregular, and muting them was glitchy.
  • Difficulty progression (or lack thereof): The game can feel very hard to some people, but for those who do master it, it gets monotonous. The truth is there was no difficulty balance at all. I managed to hack a “hard mode” in the last ten minutes before the deadline for those who managed to play for more than three minutes, but that’s still not enough. Another option would have been to have more things to do, but of course that would have been more time consuming. At the moment this is probably my main goal for the post-compo version.
  • Remembering Flixel: I hadn’t touched Haxe+Flixel since the last LD, and I regretted that this week. First I had decided to upgrade the pipeline to the last version. This wasn’t particularly problematic during the Ludum itself, but I had some old projects I wanted to check for references and they broke. Additionally, I always forget how anchors, pivots and positioning work on Flixel until I’ve spent a while re-checking it.
  • Performance, esp. HTML5: I wanted to release the main build as HTML5, but it wasn’t consistently performant. At the moment you can experience hiccups on any platformer when you shoot many ships or use the blaster, but playing on Firefox or Edge was veeery slow most of the time compared to Chrome, for instance. Interestingly enough, on another project I’m currently working on on Unity, the WebGL build runs into memory issues on Chrome but not on Firefox or Edge.

Next steps:

I’ve already made some changes to a Post-Compo version (you can also find it on the submission page), but I want to add many other features that couldn’t make it into the main submission. This is a list with some of the most important ones.

  • Different control schemes and gamepad support – DONE
  • Difficulty and player progression – STARTED, still a lot left to do.
  • Decent music, and fix that darned mute.
  • More content: Bullet patterns, enemy types and behaviours, pick ups,…
  • Better movement.
  • Better visual feedback: Put the previous/next hints right on the ship, clearer indications of when you increase your score multiplier or when the blaster becomes available.
  • Better graphics: This fits more as polish, but I would like to change the graphics for almost all elements of the game, make the lines of the ships clearer, replace some UI texts with icons or bars and perhaps add some nice and trippy background effects (like in the video below, but waaay more subtle). And many more particles! ;P
  • Better performance. Of course, to support all that and not burn people’s computers I need to optimize a lot, starting as soon as possible, as I already had some problems in certain moments of gameplay.
  • Tracking scores/times locally on a save file or, even better, keep an online leaderboard system somewhere.

Tags: , , , ,

One Response to “Getting schwi…eeer…shifty – Postmortem”

  1. 2h on dmt?! something went terribly wrong 😉

Leave a Reply

You must be logged in to post a comment.

[cache: storing page]