I’ve always loved video games. As a kid, my mom asked what I wanted to be when I grew up and I said I wanted to “work at Blockbuster because that’s where video games come from.” Every single article I ever read about the game dev industry was less than encouraging about the opportunity for success so I wised up and went on to play music full time and later moved into the wonderful world of software development.
As I got older and my available time to play games grew short, I followed the gaming industry and the progress of specific companies and developers. I gamed vicariously through reviews and articles. Sure there were times when I’d binge on games like Nier, Horizon: Zero Dawn, Pyre, Breath of the Wild, etc. but day-in-day-out I tried to fill the void with mobile games to little success.
I had always bounced around ideas for games I’d like to make “someday” but as with most passion projects, those days never seemed to come. In spite of my CS degree and long-standing history with software development I never once thought I would have the dev chops to tackle game development. Again, I’d heard too many horror stories. But that didn’t stop me from filling digital notebook after digital notebook with game mechanics, story arcs, and concepts for musical scores.
At an old job, I met a friend who was a rock-solid developer and also shared a passion for gaming. We attempted to get a few projects off the ground for months to no avail. He, being a newlywed, and myself, balancing a job change and a large family, it just never worked out. We did have some great brainstorming sessions that resulted in yet more digital notebooks being filled with half-ideas, but not much else.
It was a Sunday and I had just woken up early to play music at church then came home to a house of children ready to play. I don’t typically nap if I can muscle through it, but today was not that day. I put my infant down for his afternoon nap then stumbled to my bed and did the same. Mentally I had been prepping myself for one of those aforementioned brainstorming sessions so I clearly had game dev on the brain as I drifted off to sleep.
That’s when I saw it. In the dream, I was very clearly playing a shoot-em-up type game based in a fantasy setting. Rather than piloting a spaceship or plane, like the vast majority of shoot-em-ups, the protagonist was a guy riding some flaming horse, blasting away with fireballs and explosions as hordes of enemies filled the screen with waves of brightly colored bullets.
Mid-level, the rider called out to his mount and the fire shifted to ice. There was now a cone spray of frost as icicles encircled him before they rapidly tore into the oncoming enemies. In addition to the horde, there were also obstacles like logs, statues, chests, and gates to avoid or destroy. Occasionally your vision would be obstructed as a tree branch would come between the camera and the action. And then, before I knew it I woke up.
I have all kinds of crazy dreams but that one felt really vivid like it meant something. But I’ve also had vivid dreams about living in an enormous treehouse with a butler who could summon desserts like Janet from The Good Place, so that’s not saying much.
Do I think this dream was some divine intervention? No. But I really was intrigued by the concept of taking the shoot-em-up genre somewhere it hadn’t been before - at least not somewhere I had seen it. So I did what I always do and got to writing up mechanics and story ideas.
My friend wasn’t exactly drawn in by the idea, which was a bit of a bummer because I was pretty jazzed. It seemed like this genre was simple enough for a first game but had the potential to be creative enough to where it might actually be interesting and fun to play. We pursued one more alternative idea before unofficially calling it quits. Another idea bites the dust.
Or did it? “Screw it,” I thought. “how hard could it be?” so I downloaded Unity and started poking around.
This is where the story should take a triumphant turn, but I was truly overwhelmed by the weight of the project's scope, using a tool I didn’t understand, in a language I’d never used before, working in short bursts with no ability to gain momentum. So I worked my way through tutorial after tutorial hoping to build my confidence only to realize that a lot of work goes into a “little” game. I’m a manager of a software development team by day so I thought that my ideas, organization, guidance, and soundtracking abilities would be enough to draw a team together. So I took to Reddit.
I honestly expected my well-crafted post on r/INAT (I Need A Team) and r/gamedevclassifieds to field some strong results, but it was met with folks telling me I was an “ideas guy” or to “learn to code yourself”. While some folks were encouraging, it was quite the opposite of what I expected. However, there were two absolute beginner devs who came out of the woodwork. They liked the concept, seemed open to working with each other, and for a moment it looked like things were about to turn around.
Narrator: “But things did not turn around.”
One guy flaked out completely and the other refused to use any assets, demanding to code every interaction from scratch. Through some other interactions it became obvious this wasn’t going to work out. The dream team was all zzz’s again.
The Turning Point
Again I thought “Screw it.” If it’s ever going to happen, I’m going to have to do it. So back into Unity tutorial land I went. One day when scanning game dev articles for guidance and inspiration I stumbled upon someone using Bolt. Bolt is a visual scripting tool meaning you have to think programmatically but it doesn’t require syntactical knowledge of C#. Now, this I could work with. So I researched it’s competitors, decided on Bolt, and got to work.
First I went through all of their available tutorials which, at the time, wasn’t much. It seems they’ve blown up quite a bit since then. Next, I started working through non-Bolt tutorials but using Bolt macros in lieu of actual C#. It was working, and for the first time in Unity, it felt right.
If this asset was such a game changer, surely there were others out there. I wanted to control the features unique to my idea while something tried and true managed the basic functionality. So after much researching, I landed on using Uni Bullet Hell as my shot controller/pattern generator and Core GameKit to handle object pooling and enemy wave management. And just like that, it was off to the races.
From then on the possibilities felt endless, the scope creep was swift and vast, the documentation and Trello board were overflowing, and for the first time in my life I felt like I was really doing it. I was actually making a game that people might want to play someday. Sure there were hurdles and moments of “oh no…” as Unity crashes or dependencies break, but thus far it hasn’t been anything I couldn’t overcome.
I’ve tried to blog before. At first, I did it because I felt like I needed to for potential clients to see that I was active and interesting. Then I tried to pivot to blogging about a hodgepodge of lessons I’ve learned, game reviews, recipes, funny clips, etc. which wasn’t sustainable and honestly just felt silly and pointless. Now, however, I’m actually creating something which takes time and reflection to do correctly. Something which requires at least a semblance of a community to embrace the final product, and could greatly benefit from feedback. This blog serves a purpose even if it exists within an endless sea of other dev blogs.
So I’m going to keep developing and blogging as I make progress. Granted, this is a hobby and I’ve got a family and full-time job so there are only a few hours a week I can work on it, but I’m organizing my tasks in a way where those few hours are positioned to be as productive as possible. It’s difficult to prioritize blogging when I see it as taking away from time developing, but I’m trusting there will be intangible and unforeseen benefits.
Just because I had some wildly nerdy dream doesn’t fool me into believing this game is going to be some smash hit. I’m completely aware of how difficult it is to make a buck in this industry, especially with your first release. And while it would be wonderful to be rewarded for all of this effort, I’m truly enjoying flexing the creative thinking and problem solving parts of my brain in a new way. Focusing on creating for the sake of creation rather than making a buck. And who knows what the future holds?
In the next post I’ll do a write up of the state of the game, how I got to where I’m at, and my plans for the immediate future.