Neon Barrage - A Postmortem


Another jam finished, and ho boy am I pleased with the results for this one! I don't usually get competitive with jams (there are WAY too many variables and talented people), but for this one I pulled out all the stops. I managed to grab Spacecastle Music to do the audio, and their portfolio was excellent. Having a dedicated team member for audio means I could go all out on the audio-sync stuff, and that absolutely paid off ๐Ÿ˜

The Prep

I actually saw this jam a whole week before it started, which is incredibly rare for me - I almost always find big jams like this a couple of days before they end, and cobble together something small. But no, this time I actually saw it and had a little bit of time to work out what I wanted to do, and what I wanted to achieve. I'm currently working on a major shmup type thing for Xbox, PolyFury, and recently had to rewrite the whole bullet spawning system. Even though it could manage 5k bullets at 60fps on PC, on weaker hardware it just could not cope. And so, BulletFury was born! It is a hyper optimised, versatile bullet spawning system that keeps a steady 60fps with 20,000 active bullets. I can go into more detail about how I managed that later, but suffice to say it needed battle hardening. I made it freely available for people to use during the jam, and people actually used it ๐Ÿ˜

Beyond the bullet spawning system, I knew I wanted to use my usual "just shapes and bloom" visual style, because it's incredibly quick to put together (and means I don't need an artist - it's the Final Form of programmer art ๐Ÿ˜‰). Getting spacecastle on board for the audio meant we had a decent shot at #1 for audio - so if I focused on highlighting their awesome work, that would work wonders.

The First Hour

Yes, I got a build together within an hour. I highly, highly recommend that everyone does this during a jam - it means you nail your core mechanics as quickly as possible, and have a lot of time for polish! This is what it looked like after that first hour - and visually, it really didn't change very much after that. I managed to shoehorn in the theme (not entirely pleased with that, but oh well it kinda works - well enough to put me in the top 25% for the "theme" category ๐Ÿ˜‚), and get some basic movement and shooting done.

A Concept is Born

By this point, I'd had a full night's sleep, we'd got a little bit of audio together and I had some really basic audio sync stuff done. Mostly following this excellent YouTube tutorial, I got some EQ bars along the side and made the sparkles pulse. I also used the BPM to calculate a value for "seconds per beat" - which is how I work out when to spawn and move enemies. This automatically puts focus on the audio, which was excellent - excellent audio highlighted by gameplay apparently equals #1 in audio ๐Ÿ˜ That shaped the whole project, moving forward. I'd  go on to sync up fire rates, turn speeds, enemy movement - down to my favourite part, explosions waiting for a beat to go boom. It's a subtle effect, but really adds to that elusive "game feel".

Polish Polish Polish

After getting in some initial content - a few enemies moving about and shooting, I turned my focus to all of the things that people usually forget in game jams. Namely, making a decent menu ๐Ÿ˜‰ I wanted to go for a classic shmup type thing, so everything needed to work with just the keyboard or a gamepad, no mouse. My day job is basically making apps in Unity, so Unity's UI system is second nature to me - it took about 5-6 hours to sort the menu, including animations and a settings page with volume sliders - volume sliders which actually preview the audio! It's a small touch and only too a few minutes to implement (if you know how - I use an ISelectHandler), but gives you an idea about how loud various sounds are in relation to everything else. A good amount of polish should get you into the top 10% of entries for a jam, and always luck that takes you the rest of the way!

Besides the menu, I managed to come up with a really satisfying scoring system that totally isn't just Blue Revolver's with a little bit extra. It rewards the things that are fun in the game, and getting a high score is a real challenge - you have to play incredibly aggressively and stay towards the top of the screen, and let enemies fill the screen. This makes the game more difficult if you want it to be - which makes it easy to play, difficult to master, which is where I think my high rating in "Easy to Get Into" came in!

It Wasn't All Smooth Sailing

It's a game jam, things are always going to go wrong. And hot damn did they go wrong! I spent a lot of time polishing the overall game, which worked will I think, but not enough time actually making content. The game was really unbalanced, and the difficulty spike with the boss battle at the end was way too big. I'm really pleased with how the boss battle actually plays, but boy is it a tough fight after a pretty easy intro. 

There was also a MAJOR bug with how resetting was handled - or rather, the fact that I completely forgot to reset a few things. This led to enemies showing up but not shooting (which was fixed before the end of the jam, thankfully), and the weird glitch with the movement of the final boss' mini octagons and the boss music not playing. That last one is SUCH a shame, because the boss battle music is excellent. Those two bugs made it into the jam release, along with a frustrating issue with the leaderboard not saving scores half the time. I managed a post-jam fix for the leaderboard issue, and uploaded separately (thank you to the hosts for letting us do that!). The service I was using (Dreamlo) set the score to 0 if it wasn't a whole number, and there's a 1.25x multiplier in there!

Lessons Learned

I think the big one is that content takes a LONG time. I've done over 100 game jams at this point (mostly private ones and impromptu 30-minute jams), but almost always use procedurally generated content because it's easy and I don't really have much level design experience. I quite enjoyed putting together interesting bullet patterns and working out how I wanted the player to move, but this takes a LOT longer than I expected. I reckon I spent 25 hours putting together the two minute's worth of content for this game, which really sucks. I basically ran out of time, too, which meant there is a massive gap between the last enemies and the boss, which does not feel great. 

Getting the initial concept up on Itch and posting regular updates for feedback was really important. I got some good feedback about the overall direction of the game, and little bits like making the particles move down the screen to make it feel like you're actually going somewhere. 

Wrap Up

Honestly, I have loved every minute of this game jam. The community is awesome, and I love making bullet hell games in general. Plus, all of the feedback for my bullet spawning engine has been INCREDIBLY useful, and I'll be releasing it as a full tool soon. Thank you to the hosts for putting it on, and thank you to everyone who played Neon Barrage! And if you haven't played it, GO DO THAT NOW.

Files

windows-postjam.zip 24 MB
Apr 23, 2021
macOS-postjam.zip 33 MB
Apr 23, 2021
linux-postjam.zip 40 MB
Apr 23, 2021

Get Neon Barrage

Download NowName your own price

Comments

Log in with itch.io to leave a comment.

(1 edit) (+1)

Really nice postmortem, learned some stuff today ^^

I'm glad you managed to go all out for this jam, and surely it paid off really well! I love how your game's development was chillingly similar to mine, polished programmer art, good start and at the end... Unfortunate balancing issues and bugs. But both of our projects went well!

I'm also chilled by the fact that you've participated over 100 game jams, that seems pretty insane to me, but I totally respect that xD

Let me ask you a question - I'm a piss poor developer, and I'm maybe thinking of making a spinoff of my game. I can manage most things well alone, but unfortunately music just ain't my thing (or rather, I don't think I have the time to actually learn it properly), do you know if there's a way to get music without having to pay a lot (like 400 pounds for a track is something unimaginable to me, the minimum monthly wage in Brazil, my country, is way less than that) that also has no beef with commercial use? (Waterflame music worked just fine for the jam, but unfortunately it's only for personal use)

Seeing how you kind of have knowledge of this field, that sparked my curiosity.

Thanks!

(+1)

Howdy! I did the music for Neon Barrage! First off, Sneeze Hell was awesome, its smooth and quite a joy to play, well done! Lets chat and I can help diagnose a solution for you! I'm on IG @spacecastlemusic, Twitter @spaacethoven or my discord is. SpaceCastle#5163. Thanks for reaching out!

(+1)

Yeah spacecastle is definitely the person with the knowledge here. One thing I would like to add, though, is that you can probably get quite far by offering out your own skills - e.g. "I'll do some xyz programming task for your project in return for a song for my game". It's quite often more of a case of who you know, and game jams like this are the perfect place to meet ppeople ๐Ÿ˜Š you also have a really solid concept, you might even be able to pick up some funding.

Good luck! And if you've got any other questions I'm usually around to answer ๐Ÿ˜