Too Much Exposition
I learned about Gunner Parade '22 Game Jam - itch.io by accident and it’s been years since I’ve done a game jam proper and I’ve never really worked in this genre and I’ve got a lot of work things going on and I’m working on what is either a sort throat or COVID (whoever wins: we all lose) so I was like, perfect, let’s do this.
Most of my experience with the classical shmup genre comes from the 90s (Parodius, mostly) and my only extensive experience with top-down stuff was Mars Rising (or arguably Wingnuts?). I’ll be honest: most of my indie gamedev journey is about trying [/failing] to recapture the joy of Ambrosia and Freeverse games from back in the day. I know, intellectually, that what I’m really trying to recapture is the freedom of my early 20s, but don’t tell the rest of me that.
My first instinct was to make this a nonviolent game. I had earlier been discussing a sort of water balloon based Scorched Earth with my 8 year old- the idea being that you were a farmer and to water crops you had to lob water bombs parabolically. This felt like a pretty good crossover idea, and the jam theme is “disaster” so I think it’s a great thematic fit.
You play a fire fighter piloting a water bomber fighting a raging forest fire sparked by a meteor storm:
Asset Forge for the win yet again.
You’ll fly along a corridor of burning forest and you have four mechanisms to engage with. The forest is a scrolling hexagonal grid (so that I can re-use assets from HexTracks). This also gives me a nice, discrete grid of terrain that I can do some cellular automation at for spreading the fire.
Shmups are also traditionally pixel art because of the precision that format allows- I’m ceding some of that precision graphically, but by using a grid (which will eventually get callouts) to clarify what is being targeted and what’s on fire and so on, I hope to mitigate a lot of the fuzziness.
Ignore the extremely high number of boulders; I’m working on the core framework before I go clean up the map balance and graphics. Eventually the plan is for there to be mostly clumps of forest, with barren or rocky areas to offer some respite, plus a smattering of water features (see below).
There are three main mechanics currently planned for the player to manage:
These will be launched directly ahead of you and automatically fire at an aiming reticule that will move up and down the screen, so timing is important. Water bombs will clear the hex they land in of fire. Optionally charged up to clear the surrounding 6 hexes, too, at the cost of more water expenditure.
This is the “flying enemy” analog. I decided that I did not want to have villains in this game, just a disaster that you are on the front lines of and have to contend with largely by yourself. Meteors will take a few forms- some will basically fly down at you (to be dodged or eliminated with your water canon), some will target hexes and drop down onto the map and set new fires, and some will explode and send debris everywhere to be avoided. These will be the source of the “bullet hell” mechanic.
Water doesn’t grow on trees you know. It grows in lakes! There will periodically be lakes and ponds that the player can dip down into to refill their water supplies. This is a short (~5 minutes) score attack game, so my hope with this mechanic is that the limited water encourages a certain economy of firing. Precision will/should matter more than just spraying all your water over the map, because in the latter case you will have to fly by a lot of fires you lack the water to extinguish.
Progress So Far
I’m a day in and I’ve got a decent start:
Granted a lot of the progress here is cosmetic/atmospheric, but the mechanical scope is fairly simple. The immediate next steps are to set up a looping framework so that terrain tiles that roll off the bottom of the screen can be pooled and re-used for incoming terrain. After that, the water-bomb targeting system is next, and with it the start of an an actual scoring framework. Then water economy and filling the plane’s tank. Then meteors. Then polish. We’ll see how it goes.