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

PatrickDean_BitBarrage.zip 61 MB
Sep 02, 2021
PatrickDean_BitBarrage - prereqs included.zip 101 MB
Sep 02, 2021

Get Bit Barrage

Leave a comment

Log in with itch.io to leave a comment.