By Carson Kompon
What is Squirtfire?
Squirtfire is a 2D arcade shooter with minimalist graphics, but this isn’t how the game looked when I started the jam. My initial idea was to create a top-down 3D dungeon-crawling roguelite that used the citizen model with various customizations for both the players and enemies. I was able to get pretty far in the first 2 weeks of the jam, but I quickly realized the game’s performance wasn’t going to hold up if I wanted to spawn any more than 25 enemies at once.
The Good
In order to save loads on performance, I decided to cut the citizen, 3D assets, and use of navmeshes from my game. The shift to 2D was very natural, and I was able to re-use the majority of the components I had already written without any modifications which was awesome. Actiongraph proved to be an insanely useful tool in my arsenal and I don’t think I can see myself going without it. The new Mesh Editor made it very easy to create each of the shapes for my game but definitely proved itself to be very limiting in its current state.
The Bad
The lack of a 2D scene view / 2D components became a nuisance very quickly as I just wanted to be able to do as many things as possible without worrying about depth while still being able to layer things appropriately. Since networking is still pretty early there is no lobby data other than maps loaded via a Map Component, so I ended up making empty hammer maps for each mode just so I could get the gamemode name from the metadata. All of these things can be worked around but the one that couldn’t be worked around was the fact that the game couldn’t hold up performance-wise when it was 3D.
Conclusion
All-in-all I really enjoyed the development of this game and it really goes to show how malleable s&box is as an engine, even with the existing quirks here-and-there that need to be worked around. The ability to very quickly pivot from a 3D game to a 2D game with little-to-no changes and quick iterations is phenomenal.