S-LAYER Post-Mortem

Posted by
May 11th, 2015 3:38 pm

S-LAYER is my sixth Ludum Dare Game Jam entry, and my third successful entry in a row. It’s not the first shmup I’ve made; that distinction goes to Hitotsu – Last of the Dragon Keepers back in LD28, but I’d like to think it’s the better game by far in terms of graphics, gameplay, and gimmick.

I finally got around to releasing my Post-Compo Version 1.2 a couple days ago, and in honor of this milestone (the first Post-Compo release I’ve managed to get out the door since Corebound back in LD23!), I’m gonna try to sit down and discuss some of the stuff that happened during the game’s development, both before and after the submission hour.

  • S-LAYER runs at 160×120, the lowest resolution I’ve ever made a game at. I wish I could remember the precise article I read that made me sit up and go “wait, you can do that?” so I can give it proper credit. I’d like to think going lower-res helped me stretch my limited art talents further than usual; at any rate, I think S-LAYER looks better than Hitotsu, which ran at 320×240.
  • Like my previous two entries, Five Floors, Two Worlds and One-Floor DungeonS-LAYER was made using the excellent Love2D framework. It could have gone differently, though: I had the idea of entering MiniLD 58 with a project written in Stencyl, but I couldn’t quite get it to come together. That failure inspired my decision to go back to Love2D for my LD32 project – if it hadn’t happened, S-LAYER might have come out much differently, or not at all!
  • In my initial concept for S-LAYER, the “baton” was supposed to be a high-tech ovipositor: you would stab enemies with it, and they’d explode into tiny automated drones which would swarm other enemies and destroy them. This got scrapped in favor of simply taking over enemies outright and making them fight for you, an idea I’ll admit I ripped straight out of Darius Gaiden (and possibly other Darius games), but it did beat out my original “spawning drones” concept by a country mile in terms of sheer cool factor. That’s not to say there aren’t still hints of it present: your fighter is still deliberately insectile in appearance, and the title itself – S-LAYER – was originally meant as a nod to the whole “parasitic wasp”  mechanic.
  • The eye blocks were the very first “enemy” I came up with. I’m happy I was able to successfully implement them, complete with a rotating eye tracking your ship’s movements.
  • The bright pink walls were meant to resemble some sort of biomechanical entrails (complete with tanks of neon green bile). This aesthetic ended up spilling over into the enemy design: the popcorn fighters are pairs of lungs, the mines are hearts, the rapid-fire heavies are livers, the bouncing pink things are stomachs, and the vertical-flying obstacles are supposed to be intestines. All of them are outfitted with glowy bits and/or protruding pieces of machinery to reinforce the whole “gruesome hybrid of meat and electronics” look.
  • One of my biggest disappointments with Hitotsu was having to compromise on the final boss. I sought to rectify that with S-LAYER by designing and implementing the final boss early – before I’d even come up with all the regular enemies, in fact! I quickly sketched out the overall appearance in Photoshop using a thick binary brush (i.e. pencil tool), scaled it down to the game’s resolution, imported it into Aseprite, and then refined it into the final graphic you see in the game. I think it might be the most elaborate graphic I’ve ever produced for a Ludum Dare project (apologies if it still kinda sucks ^_^;).
  • Most of the sound effects were created in BFXR, but the snarl of the eye blocks as they shoot out of the walls, the end boss’s death growl, and the buzz of the locked baton are actually my voice recorded and tweaked in Audacity. (And there’s more where that came from in 1.2: the “whoosh” of the title screen logo as it comes on screen is my voice as well, and I recorded some speech samples for the end boss.)
  • The background “music” in the initial release is a heartbeat-like loop created using Bosca Ceoil. There were enough people saying the game didn’t have music at all that I composed something a little less subtle for the 1.2 release using FL Studio: still a heartbeat-like back beat, but now accompanied with some foreboding high-pitched strings intended to amplify the creepy atmosphere. There’s also a boss theme now, as well as ending and game over music. (Bosca Ceoil is some great software, and free to boot, but it drives me nuts how it doesn’t remember the directory I last saved in!)
  • The initial release has some bugs, as you might’ve noticed. I reduced the end boss’s HP to 3 for testing purposes but forgot to change it back. (It poses a proper challenge in 1.2.) More frustrating was the inexplicable performance drop as the game progressed: if you made it far enough on a single life, the game would stutter and eventually become nigh-unplayable. After some extensive refactoring, I eventually discovered the problem was a simple typo in the cleanup code for “dead” objects: two cases where I’d put a period in the “remove” function call instead of a colon. Whoops!
  • The Post-Compo release was going to be 1.1, but the feedback I got from my last-minute bug testers resulted in a bunch of new features and tweaks getting added. There were just enough improvements to warrant bumping up the version number.:3

Overall, I’m happy with how S-LAYER turned out, and I’m proud of how professional the Post-Compo version looks and feels. A real title screen with a real logo! Music! High scores! Pause menu! And so forth! It took a while to get it polished, but I really hope it’s worth the wait for those of you who enjoyed my initial release.

And maybe this will finally be the game I get around to expanding into something worth putting up on itch.io or Greenlight. Fingers crossed!

Leave a Reply

You must be logged in to post a comment.

[cache: storing page]