This blog post is definitely different in tone than previous entries. I still hope to be able to convey some of the lessons I've learned in my solo indie journey. But as the title suggests, I also have a pretty major announcement to make. After giving it a lot of thought, I am stopping development on Kinematic for the foreseeable future. I hope to find my way back to this project at some point in the future. But at this point in my indie career, I don't believe it's the right thing for me to be working on.
I will be shifting development to a different, smaller project that I'm very excited about. I will certainly be writing about that project in future devblogs. But now, let's dig into what I've learned from 8+ months of working on Jem's adventure.
When I set out to make Kinematic, I had a handful of high level goals. The most significant was to take my love of the factory genre (Factorio, and more recently Satisfactory), and mix it with a whimsical, playful dose of exaggerated physics. I was particularly interested in offering a new experience for the sizable group of players who specifically love Factorio, and find few other options for similar experiences in the game marketplace. While I'm a fairly omnivorous gamer, I'm very empathetic with the wish that more games could hit the specific optimization loop that factory games enable.
As I developed the idea into a prototype, I mixed in Metroidvania elements, as that's one of my favorite genres, and I could see exciting ways the mix could be self-reinforcing. In particular, I was excited about the idea of MV-style revisiting of areas being tied to Factorio-style optimization and rework of chunks of the factory.
Kinematic in July 2020
Certain aspects of Kinematic have really come together in the Playtest Build on itch. Jem's art and animation are really satisfying. (Thank you to Kit Seaton for helping me refine her look a lot). There's a neat loop of puzzle platforming when attempting to launch resources through the environment to receptacles. I've been pleasantly surprised at how flexible the rooms have been, allowing multiple solutions to most of the puzzles. Some of the music really landed. And above all, my engine has come a LONG way towards being fast and easy to develop in.
There are some obvious gaps that would need to be improved. Environment and enemy art is pretty sparse, and I have very little understanding of how to make good sound effects.
But there's one glaringly obvious difference between Kinematic now, and the goals I set out. Kinematic bears virtually no resemblance to the factory games that inspired it. If I continued down the path I've found for this game, I would be making a puzzle platformer. That's a neat genre. I just sunk dozens of hours into the incredible CrossCode. But it's not a genre I set out to be involved in. I don't know how to differentiate what I'm doing in that space, and I don't have an audience in mind to help me target my decisions. So, particularly when considering 1-3 years more development, I can't see my way to pushing forward.
How Did I Get Here?
It's pretty surprising to realize that I've spent 8 months making a game that's not the game I set out to make. But I actually think this is a sign of a healthy approach to development. I like to talk about the dialog between myself and the game. I don't get to tell it what to be. I get to make suggestions and try ideas. But it will tell me which of those ideas are good and which are bad. With my current level of design experience and current understanding of Metroidvania development, I was unable to find any good ideas that pushed the game towards factory building. But I found plenty of fun ideas about manipulating the 2D space for Rube Goldberg shenanigans. Thus the game slowly, over many months, led me to where it is today.
There are two paths I can see that could have brought me closer to my original goal. One would be by using substantially better design skills than I currently possess. I'm sure there are plenty of times I could have tried something more creative, or cut off a misdirection before pursuing it, to stay more on target for my desired audience. Or, I could have stuck with a more Terraria/Noita/Minecraft style expansive/open world, instead of a carefully crafted room-based MV world. If I come back to Kinematic in the future, I would guess that this latter path would be one I would explore.
What Have I Learned?
I've learned a ton of focused development skills. I'm a much better pixel artist and music composer. I now know how to do basic animation and rigging in Blender. I have built a ton of different systems from scratch in C++. I have pushed builds to itch. I have remote-debugged graphics issues on other people's video cards. In short, I've experienced a massive amount of growth in my skills as a solo developer.
More importantly, I've learned a lot about how to work with myself. It's very different to be self-motivated, self-directed, and not supporting a team of other developers. I no longer get to look at designers and artists and tell myself "They're making the important decisions, so I can just help them out as much as I can." And I need to self-validate what I'm doing, rather than hoping to impress a coworker or manager.
Finally, I've seen firsthand what it's like to take on a huge, ambitious project out of the gate with what I now realize is virtually no experience. I assumed a decade of AAA development would make it easy to get off to the races with my dream project. But that was really cocky of me. AAA and indie, I now realize, are completely different beasts. So the advice I've given to newbie game devs starting down the indie path, "Build something small, and you'll learn a ton from it" is now advice I'm taking for myself.
Thanks for your support on this journey. I can't wait to show you what I'm working on next. Also, I made a really weird game for LOWREZJAM 2020 about dreams that I'm really proud of. Give it a shot and let me know what you think on Discord.