POSTMORTEM: 4th place at Bullet Hell Jam!


Sneeze Hell just got 4th overall place in the Bullet Hell Jam, I'm really happy by the results! ^^
I'll post some thoughts and what went well and wrong in the development of the game:

How I Made the Game

    I made Sneeze Hell alone within a week on the Unity Engine. Actual production was within the jam, but I've done some preparations some weeks prior, such as bullet patterns were already implemented in another game I was working on.

This jam was surprisingly really useful for learning and gathering feedback from people, over 40 comments and 57 ratings on my submission! It was also really fun to rate and give feedback to people back, after all, a hand helps the other, when there's this exchange of feedback, everyone wins.

What Went Right

- I've been making and refining a bullet hell system even before the jam actually started, as I was doing a shooter roguelike and found it interesting as a warmup for the jam. This helped me a LOT since all I had to do for the jam were some few adjustments and overall just fiddling with the variables to make interesting patterns with the system;


- When I came up with the SNEEZE idea, it just all came together beautifully. I didn't want to think of anything else, that was the main mechanic already and I went all way until the end. I invested a lot of time polishing it and making it fun, and I'm glad it went well.

- The art is really simple, but it surprisingly works. Since I'm not a dedicated artist, I've thought a lot and decided to make a simple art style focused on shapes and really gloomy lighting. Main references were Just Shapes and Beats and Geometry Dash, which in their essence have a minimalist art style. In fact, the cat enemy from the Sneeze Hell game is an inspiration from this fan-made level of JSB:


- The fact that I've had quite some experience making other games before the jam, most mechanics were easy to implement. For some parts I ended up recycling code, and I'm not shameful on sharing that.

- Using DOTS (Job System and Burst compiling) and object pooling for the bullets helped performance a bunch, most people told me the game was running on smooth 60 FPS on their browsers. I always focus on making good WebGL builds, because I noticed people tend to play more browser games than downloadables, and performance is an utmost priority for browser games;

- Using DOTween for most "animations" in my game, made development super fast. The falling animation took me literal minutes to implement, and even done it for all enemies movement. It gives me extraordinary options for easing types and loops, it's so easy to make anything move. I recommend using DOTween or any other good tween library in your arsenal to make juicy animations without having to fiddle with Animator Hell or the equivalent of your engine.

What Went Wrong

- The game ended up being too hard (specifically the last stage) at the release. Sneeze was way too powerful (which made you fall almost every time), enemies too spongy and the triangle enemy was way too swift. I believe some of these early aspects took some points of the fun criteria, but hopefully now the game is more fair;


- The visual contrast at release wasn't telling enough for most players, and some ended up mistaking some platforms and ended up falling;

- Some cursed bugs ended up biting me and wasting time on the last few days: The sneeze "dashing" was more powerful on the builds than in the editor, SFX and Music toggle at the menu didn't work properly on the editor etc;

- I was thinking of making the boss and ending more interesting - The boss with patterns that changed in the fight with a little bit more of variety on his attacks and making an ending cutscene of the player being cured of sneeze, unfortunately the boss was being made on the last day of the jam, there was almost no time to add something like this;

- I really wanted to add a healing powerup as a fruit for these orange trees you probably saw a lot on the stages. When I remembered about it, the jam was already over, so the game could have been a little easier if this was actually implemented;


What I've Learned

- Prepare, prepare, prepare! If you already have some game templates prior to the jam, that's gonna help you a TON. You won't have to worry about stuff like menus or movement if they were made before the jam, and most jams accept this, as long as you actually make the assets and the core gameplay in the jam's duration;

- Be creative! Don't be afraid to test crazy ideas, they are most certainly willing to take you to the top and stand out from the crowd!

- Build, build, build! People often underestimate the capacity that the game screws up on the last moment, please do not be the person that only builds once and fails the jam. I've made over 10 builds in this jam, most of them were for Windows versions and few for WebGL. Because of this consistency of wanting to know every time if everything is on point, the release went super well and there were almost no major bugs;


- Rate, rate, rate! Rate and comment! Seriously, not only that helps you get your game exposed, but you also give helpful feedback from what you've learned to fellow game devs that are on the same boat as you. I've done a total of 83 comments on this jam and rated 65 games. Humility and Charity only bears good fruits;

- Feedback is key! Come and tell everyone to test your game: Your brother, your mother, even your grandma if that's necessary. If you meet certain people that are more experienced than you, don't be afraid to ask them for some little feedback that won't hurt. It may raise your friendship with them even, who knows?

- Presentation is key! Do not forget to make a nice game jam page, with an appealing and simple thumbnail! This is certainly going to attract more players and raise the CTR of your game. Don't forget!

- Plan little, DO more! There is a 4-44 rule for game jams that's commonly talked, which you should plan your main mechanic for the jam for 4 hours and develop and polish it to the last 44 hours. But this is a 1 week jam, so I could say you could take the first day max for your planning, and take the rest of the days polishing and making your core gameplay juicy. This has worked wonderfully to me.

What I Hope to the Future

    I plan to make good connections and expand my networking with this jam! I hope next time I don't do everything by myself since its too tiring, but overall this jam was a wonderful experience. I'm just overall happy that I've made a game that I can show to people without being disappointed, I'm really proud of this one.

Sneeze Hell is definitely on my future plans for games, seeing how almost everyone loved it. Maybe I'll do a spinoff of it, who knows ;)

These are my words, I'm sorry to bore you with this absurd wall of text, but if you have gone this far... Thanks a lot for reading!


Get Sneeze Hell

Comments

Log in with itch.io to leave a comment.

(+10)

Ayyy, love a good post mortem ๐Ÿ˜ nice write up! I had assumed you had prior experience tobe honest. I'd be intrigued to see your bullet spawning system - I put mine up for free for the jam - https://wayfarergames.itch.io/bulletfury


Your tips were all great too, though I will say that 4:44 is 4 hours to make the game and 44 to polish and add content ๐Ÿ˜‰ planning is included in that sure but it's a game jam - you should prototype immediately. Planning is pretty much useless ๐Ÿ˜‚

Ah yes, I mean, by planning I include prototyping to see if the idea clicks and ultimately works well within a period of a jam xD

Anyway, the way my bullet pattern system works is pretty simple - There's a scriptable object that works as a template for all the features of a standard bullet hell pattern, as you can see:

I took heavy inspiration from this video: 


But also made my own quirks like accuracy (which 1 means its totally accurate and 0 a random value within the specified local angles) and burst (which I actually took inspiration from the Unity's particle system which shoots a specified number of bullets then waits for the end of its duration to shoot the burst again).

The bullet's speed is actually defined within their own prefabs, along with other settings.


There's also support for multiple patterns at the same time, it's how the boss patterns work, a double spiral of small bullets and a circle burst of big bullets.

This system allows me to reproduce most bullet hell patterns in bullet hell games, but there's still some limitations because I haven't polished it properly, like acceleration and stuff like that isn't supported yet.

If you'd like, I can share you the source code of the game if you'd like to take a peek, but I still have to do some code cleaning xD