The following blog post, unless otherwise noted, was written by a member of Gamasutras community.

The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

Here we are, five years later. The angry German twins who became angry German twin video-game-designers. From zero to our first 12 hour+ game.

Resolutiion is our journeyman’s piece, to be released this year.

We often say we have no clue what we’re doing. Which seems true most days. But, for anybody about to head out on their own gamedev-journey here are nine of the most valuable lessons we’ve learned along the way.

Buckle up, lovely ladybugs.

1 Expect the Unexpected

Ok, calm down.

You want to make that video game. You don’t know how to do it, or where to start, but you’re committed. You’re hungry. Better make a plan. Sit down, and write that plan. Write it, and then throw it away.

Plans are for people with experience. Not you. Yet.

Some of the biggest games, created by the biggest studios, with the biggest budgets, run by the biggest people in the business go bust. These guys know what they are doing, and they do make plans; and those plans fail. Often.

Our plan: finish in 1.5 years — turned out to be closer to five. We planned on a four hour game — our latest play-test took around 12 hours, and we do know all the secrets!

Video games are a crazy and complex artform: writing, programming, storytelling, world-building, visuals, sound, music, marketing, the-list-goes-on. As an indie-dev, you do most of these things on your own. How can you plan for all of those interconnected tasks?

We don’t think you can.

We think it’s an adventure, and the earlier you let go of plans, expectations and promises, the more fun you’ll have. Be open, learn new things, make mistakes and never set estimates extrapolated from your current state of knowledge — your capabilities will evolve, you will raise the bar for yourself.

Expect the unexpected.

2 Never Walk Alone

We’ve met and talked to lots of game-designers and developers. Many of whom were much better than us, had bolder ideas, bigger bank-accounts/networks/warchests.

Unfortunately many of them are still years away from getting something playable into the hands of their audience. Other’s shipped a half-finished game.

Why? And what did we do differently?

We came as a pair. We worked in tandem. We shared the load, and we bashed our heads against each other until we both were satisfied (or passed out).

I pushed for beauty, Richi pushed for fun. I wanted more story, Richi wanted more combat. I demanded complexity, Richi simplicity — a struggle for harmony.

Your ivory-tower opinion sucks, more often than you think. Find people who will put it to the test. Sometimes it takes a friend pull that ivory tower of your ass, and move on.

Never walk alone.

3 Work with Freelancers

The idea to give someone else your precious money for a small task that you can pull off on your own, feels very wrong. It might take you some 15 month of practice, but you can get there all by yourself.

At least that had been our thought until January 2018: looking at our progress of learning pixel-animation over the course of two years made us realize, that we needed a serious leap instead of a hundred more pixel-sized steps.

A couple of emails later we tracked down Chris Rafferty who agreed to help us polish our main character, at a reasonable price, that still made us bend backwards over our tiny budget.

So Chris went to work. He challenged our limits, gave honest feedback, and something magical happened: not only did our pixel-hero become better animated, we ourselves became better animators — much better.

Learning from a master made us exponentially faster. And we made a new friend in rainy Scotland. Cheers, brother.

Lesson learned: find freelancers early. Most are worth more than they charge, and chances are they’ll improve your skills as they improve your game.

So open that wallet and work with freelancers.

4 Recycle, Repeat, Reuse

Making a game takes years, needs hundreds or sound-files, thousands of graphics and tens of thousands of lines of code to produce. You, dear reader, will have to craft all of those. It’ll be a mess, and before you see the end of the road, you will be sick, bored and burned out.

To handle such an extreme amount of assets and workload, you need to copy, reuse and recycle anything and everything — but you want to do it in a smart way.

Recolor sprites, flip backgrounds, mirror whole levels backwards, use the same music track without the drums, and reskin as many enemies as your conscience will let you get away with.

The process is simple:

Repeat things a few times Then mix with other elements Finally change the core/color/texture Repeat

When your inner artisan screams, take a step back and peek through the eyes of your players: they don’t approach your game as a perfectly tuned gallery of screenshots, but as a wild potpourri of impressions.

In fact, familiar elements will give your players a break from new signals. Let them focus on nuance. Shifting between familiar and unfamiliar can be a powerful motivator.

Don’t try to reinvent everything; instead recycle, repeat, reuse.

5 Iterate Everything

Every first time gamedev nods in consent: you built half your world before you realized some core idea just didn’t work.

Too bad.

Now you have another couple of hundred hours of work, and we promise: they’ll be extra boring.

We’re guilty of this: during Resolutiion’s development, we went out head over heels more than once:

When reworking the underwater maps, we added tons of new details, layered backgrounds, and light effects on top to make up for the lack of enemy-encounters. It looked great, but now every other areas felt flat and cheap in comparison.

That meant that in early 2019, we had to revisit every single level and upgrade all rooms with similar detail-density and quality — a very time- and nerve-consuming process.

Another backwards decision: the late inclusion of a map-system, when we had already build 95% of the game’s world; which —as it turned out— could not be represented appropriately on a 2D plane. Now we had to trace each individual room, break it apart and reposition it, so that in the end a flat map was possible, without 4-dimensional, space-time bending logic.

Lesson learned: never venture too far out with a single task in search of perfection. Instead, move all pieces together, one step at a time. Build as modular as possible. Balance the fun tasks with the boring ones — always iterate everything.

6 Stay Healthy

Independent game development is all about freedom. It is about art and beauty. It’s a personal journey to self-fulfillment and spiritual transcendence.

It is … a brutal sick grind of a fulltime job!

I quit my 9–6 job, five times a week, to end up in a 9–8 job, seven days a week, 365 days a year — except for the new year’s hangover.

Building your first video game, you have no idea what you’re doing. There’s no one telling you to stop; there’s no safety-net in place; no serious risk calculation nor any kind of estimate that has a slight chance of getting real. There’s just plenty of questions, bizarre todo-lists, that $200 ergonomic keyboard, and your superhuman willpower to hammer those keys until dawn.

Our rule for getting through this long and beautiful night of uncertainty was “be healthy”: if we would be able to stay on top of our decaying bodies and minds, live on a low profile with minimum expenses, we should be able to stretch development time much further, while remaining sharp and adaptive.

You know what that means, rooky: put on those tights, go for a 5K, work that downward facing dog and skip the juicy 16 layer lasagna (who likes lasagna, anyway?).

While physical health is key to compensate for the long shifts at your desk, mental stability and social networking are also part of the program.

Be honest with yourself, balance those human needs, stay healthy.

7 Use Professional Tools

We’re sorry to bring up this topic, son, but listen: there is no Santa Claus. There’s no rabbit with big balls, either, no dragons and definitely no “make-everything-pretty”-button.

Also, video games are not about magic — they are just boring, technical software-development-projects: they need plenty of programming, writing, assets, pipelines and many layers of organization to fit all these pieces together.

The good news is, that humans have figured out how to make those software-development-projects work for the most part in 2020.

Modern software projects are structured into milestones/epics and smaller tasks/issues, all estimated and tracked across the whole team, and validated constantly through small meetings/standups. The shared codebase and asset library is versioned and stored, for everybody to pick up and collaborate at all times.

While there are plenty of software-suits available to support this workflow, the core-idea is simple:

Setup communication and a calendar Define big chunks of work or rough goals (milestones) with respective dates Break down those milestones into small tasks, to be handled by individuals Talk daily about your progress, what you learned and what went wrong Keep the calendar up to date and the whole team in the loop

Establish a rhythm and stick to it. Avoid death-by-stagnation, or too many unicorns in your codebase. Even solo developers can get over their stupid gut-feeling, read a book about “agile”-workflow, and establish better habits by using professional tools.

8 Test All the Time

Wow, your game is 97% done. Better get some players to hunt down those last bugs. There should be plenty of guys happy to get their hands on the beta-build on your mailing list or Twitter, right?

Dream again, kiddo — people will barely “test” your almost-done game, but rather have a good time with a free copy you provided. We sent out more than 70 keys over the last few months, and got a total of three emails in return, with some valuable points (big thanks to these lovely humans). And seriously, we’re not blaming anybody — giving good feedback and filing bugreports is hard business, done by professionals in high security QA facilities, protected by scarred thugs with mini-guns.

Lucky us, we came prepared. Since day one (or maybe day 87), we kept testing Resolutiion constantly:

Every month we set aside a full day for everybody on the team to do a full playthrough — those were tedious and just got stretched as the game grew, but they kept us all on the same page on quality and quantity. We invited friends for long play-sessions, as early as the first hour of content up to the full 20 hour deal — very exhausting sessions.

Your urge to polish your game just a little bit more before the next test will never stop. Instead, an honest hour of watching someone play will improve your game more, than spending ten hours in front of your screen all by yourself.

Seeing a stranger wield that controller lets you focus on the core experience without biases, so remember to test all the time.

9 Kill Your Babies

Oh God, that headline …

Well, to be fair, this one is easily the hardest point on this list to fight through; and even harder if you work on your own in that basement’s tiny resonance chamber.

Once in a while you had a cool idea; that fluid mechanic or an eye-opening conclusion; a magical coincidence. And you worked on it for months and years, to make it perfect. Somewhere along the way, you realized that it sucked. It was not fun. Nobody got it, and all the hundreds of hours of work just fell apart, like sand through the hands of a crucified martyr.

These magic moments are your conceptual babies, and while often they are in fact magical, other times they are not.

We had many, many babies along the journey, and we fought fiercely over every precious one. Still, many of them died.

Each of us had to let go of many hours of passionate work in one area or another, simply because the idea didn’t work in the context of all others.

We got better from those fights and learned to not over-design or over-polish things, but instead work in smaller steps and iterations. We learned to let go and learned that we had to kill our babies.

Bonus: Fuck everything you know and go crazy

Now that we have garbled out every smartass rule we know of, let’s have an honest conversation about video-game-development: we have no clue what we are doing.

And we bet that most of you out there feel the same. Maybe some of us are just lucky? Stubborn? Stupid?

Who cares! There is no simple metric for success. Just put your whole heart into the project and strive for something that is bigger than yourself. Much bigger.

Don’t listen to smart blog-posts or software consultants. Don’t buy that vacuum cleaner. Throw bears. Bears with axes. Bears with axes fired from cannons attached to the stumps of your arms. Hail them down on your haters, your enemies and your mother that told you to better live a safe life.

Because this is about video-games and art and freedom and death. And you are the one who is creating it, while the rest of the world complains and screams and tells you to do something more useful.

Fuck politics. Fuck bears with axes. Fuck everything you know and go crazy.