I suck balls at shipping projects.
If you know me, this won’t come as a surprise to you. After all, I’ve been working on my “dream game” for 7 years now.
So after 7 years of “development” what do I have to show for it?
I say nothing, but back when I was a wee lad of 14, I had absolutely no clue how to program. 7 years later I’m generating pixel art by using nothing but maths, and rendering 3D animations completely from scratch. That’s not nothing.
But when people ask me what I do for a living, I would say “I make video games.”
They’d reply with “Oh that’s cool, what games have you made?”
After 7 years, I still haven’t shipped a game.
Instead, I’ve been busy maxing out my skill tree with programming and creating YouTube videos. I haven’t put any points into actual game development.
I really need to step up my game.
So how do I do that?
Well, it turns out I’ve been approaching game development from the wrong angle this entire time. I had thought that solid code and a good game engine is the foundation upon which games were built.
But I was wrong.
It’s game design.
It’s the mechanics of how the player interacts with the world on a fundamental level. Without good design, at best it’s just a glorified tech demo.
Alright, so how do I cultivate good game design?
I think the answer lies in the one thing I’ve been so adamantly avoiding all these years. The one thing I’ve been putting off, ever since the sails of my career were caught in the winds of the YouTube algorithm… shipping.
No not the Amazon Prime kind; the rapid shipping of game prototypes kind.
Here’s the gist: You build out the skeleton of an idea using nothing but the bare minimum to get it running – shitty code, bad graphics, no sound, etc. As soon as you’ve got the essence of the game, you play around with it and see if it’s actually any fun.
At least, that’s the idea.
In order for me to do that though, I have to abandon my goals of “making an objectively great game.”
I have to abandon perfectionism.
That dream game I’ve been working on for 7 years, a magnum opus that lives in my mind with 10 massive dynamic gameplay loops, amazing mechanics, a beautiful story, stunning pixel art graphics… I have to let it go.
Before realising that dream, I first have to get my hands dirty with reality. I have to max the shit outta my game design skill tree to a level where I’m equipped to properly take on a challenge like that. In his article about death loops, Derek Yu puts it perfectly…
“To use a baseball analogy, start by trying to get on base and not by trying to hit home runs. If you get good enough at hitting the ball consistently, the chances of you hitting a home run go up tremendously.”
Instead of 10 gameplay loops, I pick one. I build a prototype around one simple idea, one mechanic, one core loop. I construct it with shipping as the end goal, first and foremost.
I’ll hit a home run soon enough, but first…
It’s time to actually get on base.
It’s time to practice my game design.
It’s time to ship.