Epic MegaJam 2021 Postmortem
This project is the culmination of two months of learning Unreal Engine by one developer.
What Went Well:
I expected that I would fail to deliver a project in the timeframe. This was my first game jam and my first real attempt at creating a game (excluding a Tetris clone I made in college 10 years ago using XNA), though I am a software engineer by trade. My goal was to learn a whole lot, and in that vein, I succeeded immensely. My plan was to hear the theme when it was announced, think about it for a few hours and then get started on the project after my kid was in bed. I had taken Friday off work and intended to work on the project for the weekend and spend the evening during the week polishing and ironing out any bugs.
I came up with the concept of a shmup where you’re a USB flash drive avoiding downloading files rather quickly and thought that it would be within my wheelhouse to complete during the jam both from a gameplay perspective as well as an artistic one. As I am not an artist, it was important for the concept to be a simplistic one. I laid out my timeline: Core gameplay mechanics on Friday, Saturday and Sunday to do art/modeling and figure out some particle effects.
I pretty much nailed getting the core gameplay in on Friday and a lot of the art done (specifically the player ship and the basic enemy type) on Saturday, but then the scope of my project began to grow. I had ideas to add a few special abilities to spice up the gameplay and tie it all back into the concept. The anxiety I felt at the start of this turned into excitement for the project and I wanted to give it more time, so I also took Monday and Tuesday off work as well. I spent that polishing up the wave spawning and increasing difficulty of the enemy waves. I added a media file enemy type as well as upgrades for the player to collect. And by the time I got through Tuesday, I wanted to add a boss fight at the end of the whole thing.
The hard limit for me was Wednesday. I wanted to have it done and submitted by Wednesday night ahead of the deadline and I was able to pull it off. I’m proud of what I was able to accomplish in the timeframe given my experience with UE and 3d modeling.
What Went Wrong:
From my perspective, very little went majorly wrong during the week, but what I ended up with was a bit of a hack. My PlayerShip.cpp and BlockChainBoss.cpp files ended up being a bit of a monstrosity on account of me just using techniques that I knew would work rather than try to write optimal code. I started messing around with the Gameplay Ability System about a week before the jam and while I wished I’d been able to use it, it’s probably for the best that I didn’t. The result, however, is a veritable labyrinth of code for handling my special abilities inside of the Tick() and MoveUp()/MoveRight() functions. I feel like all of it is held together by a single delicate thread.
With the boss, I first tried to build it out in blueprints because I thought it would be faster, but I was hardcoding the number of blocks I had, so I was manually adding 2 static meshes and an arrow component for each block. Building out the graph to interact with the blocks individually was proving to be kind of a hassle, so I redid it all in C++ and ended up throwing away 4 hours of work on it on Wednesday morning. If I had more time, I would have tried to make the boss a bit more dynamic. In the end, it was hard coded to have only 5 blocks initially.
I had wanted to do more with the enemy movement rather than having everything just move in a sinusoidal fashion but wasn’t able to get to it in time.
I also didn’t spend as much time on gameplay difficulty tuning as I had hoped to. I ended up leaving the game a bit more on the easy side to allow players to get to the end without much issue (otherwise what as the point of spending a full day and a half on a boss).
A final thing that I wasn’t terribly pleased with was, while I was able to add all the special abilities I wanted, I don’t feel that the speed boost or the special slow attack were all that useful. I was pleased with the implementation of the slow, but it didn’t really do much for the game.
What’s Next?
For me, this project is finished. I had an absolute blast working on it during the week of the MegaJam, but I never expected to develop a shmup, much less have so much fun working on it. While I’d be lying if I said I didn’t desire to further develop the concept or explore the genre further, my next steps are to continue learning UE further with the goal of eventually developing a turn-based tactics game of some kind.
Files
Get Bit Barrage
Bit Barrage
A space shoot 'em up made for EpicMegaJam 2021
Status | Released |
Author | patrickdean |
Genre | Action |
Tags | 2D, Low-poly, My First Game Jam, Shoot 'Em Up, Short, Singleplayer, Space, Unreal Engine |
Languages | English |
Leave a comment
Log in with itch.io to leave a comment.