Being a solo developer isn’t like clocking into a 9 to 5. In fact, it’s usually the opposite – those hours are generally off limits, and we’re left to work with whatever scraps of energy and willpower remain at the end of the day. There are no colleagues to pick up the slack on your off-days, and no boss to tell you if you’re moving in the right direction.
Even if you’ve somehow cleared your schedule for the next 5 years, the twists and turns of being a human will interfere with even the most carefully laid plans. Since starting my project, I’ve moved to a new apartment, had surgery, and changed jobs twice. My game was supposed to be out last Christmas, and you probably won’t find it under your tree this year either.
Missing a deadline can shift the focus to how slowly you are progressing, instead of how far you’ve come. I’ve found myself feeling guilty for spending time on other projects, or even just doing nothing at all, which is completely unsustainable. Aggressively carve out time in your schedule to work, but accept you’ll often have to admit defeat in the battle for your 24th hour. Rather than fixating on an overarching completion date, consider setting micro-deadlines: “Tonight I will complete X” rather than “everything must be finished by X date.”
Starting a new project is a ticket to a magical land of infinite possibilities. This is the easy bit. Anyone can sit around saying “hey, this could be cool. . .”, but eventually we’re left with the actual work – from playing the game so often your friends consider a restraining order, to writing tedious blog posts that no one reads.
The honeymoon period can’t last forever, and once the new car smell starts to fade, game development becomes an exercise in sheer willpower. I started my project in 2020, and the game itself has been finished for over a year, but I’m still here hammering away at the final bits and pieces. When I tell someone I’ve been working on a game, a common response is “we should play!”, and I’ve become a master in politely rephrasing “I’d rather shoot myself in the face, thanks”.
Repeat a word enough times and you’ll start to forget its meaning. Play your game enough times and you’ll lose the ability to objectively answer “is this fun?”, or “does this make sense to anyone but me?”, or “what month is it?”. Every game eventually becomes Jumanji, trapping the unsuspecting developer in a jungle of playtesting, packaging, manufacturing, and marketing.
I still feel like my game isn’t good enough, that I have no credibility, and that someone else could have done a better job in half the time. Unfortunately, I don’t have a magic answer. The only advice I can give is to pick an idea you’re initially excited about and go all in. Ignore the inevitable voice in your head saying your project sucks. Your job is just to produce a game that can be played – let other people decide if it’s any good.
This clip of Jack White from The White Stripes discussing his early days working as an upholsterer really sums it up. To paraphrase:
“Sometimes you’re not inspired to reupholster an old chair. Sometimes it is just work. Not every day of your life you’re going to wake up and the clouds are going to part, and the rays from heaven are going to come down and you’re going to write a song from it. Sometimes you just get in there and just force yourself to work and maybe something good will come out.”
Remember Roger the guitarist? He didn’t die in vain. Learn from him. It can be a painful realization, but sometimes the correct decision is to scrap something, even if you’ve invested significant time and energy into it.
The ability to recognize when something isn’t working is a crucial part of the creative process and can lead to breakthroughs that might not have been possible if you were rigidly attached to every piece of your work. When you’re truly stuck on a decision, ask yourself “What is the simplest solution to this problem?”. Sometimes, the answer is to remove a feature or mechanic completely, eliminating the problem along with it.
This doesn’t just apply to game design itself. I’ve fantasised about all sorts of nice-but-unnecessary additions, from Android score counters to 3D printed band leader models. It’s easy to get carried away when browsing Kickstarter, but remember that many of the projects with multiple tiers and stretch goals are ran by teams of people who can share the workload. Perfect is the enemy of good, and a project can quietly go infinite if there’s no one keeping an eye on your ballooning ambitions.
The phrase “it’s a marathon, not a sprint” definitely applies to game design, but it doesn’t paint the full picture. We’re running in a race with no defined end point, so you can head to the podium and collect your medal whenever you decide you’ve truly earned it. Focus on refining a manageable number of high-quality elements, or you might find yourself stuck on the hamster wheel indefinitely.
Ask for help
Battle of the Bands would not exist without the help of many people – from my closest friends, to complete strangers. Calling myself a “Solo Dev” is a disservice to everyone who helped me along the way. In the great words of The Terminator himself: “There’s no such thing as a self-made man”.
I spent months lost in spreadsheets and notebooks before the first playtesting session, where I discovered that my game was completely unplayable trash. It was several months later, after many cycles of tweaking/feedback/more tweaking, when it began to resemble what it is today. I was incredibly fortunate to have a group of willing participants who not only wanted to play, but were able to provide valuable insights, pointing out now-obvious problems or solutions that I’d overlooked.
If you don’t know anyone in real life who can help, it’s never been easier to connect with other players or developers online, and if you’re really struggling for advice or playtesters, email me at firstname.lastname@example.org and I’ll help you however I can.