For a long time I would tell people that I was a game developer. And then people would ask me what games I made. Shit!!! I realized that although I was developing, I wasn’t really developing to PUBLISH. And I got caught in what I call the Dev Cycle of Doom. To keep you from making some of the same mistakes I made, here are 7 signs that could mean you’re stuck there.

See, some of us have super powers. Those guys and gals can sit down and finish a game with ease. They shoot code out of their eyeballs. And they type pure bliss into the keyboard at the speed of light. For the rest of us though, there are some very real and very difficult challenges to face along our journey to finish and publish games. This article is not for the game dev super heroes, it’s for the game dev regular dudes who are having trouble and getting stuck in what I call the Dev Cycle of Doom.

The Dev Cycle of Doom is a very simple concept. Its like ground hog day, except you spend the day programming. Its a never-ending build loop where nothing gets completed and yet there’s always more work to do. Its something that can go on for years and steal the life from you, while simultaneously make you feel like you’re making progress without an end goal. The Dev Cycle of Doom is bad news, and you should avoid it at all costs. Here’s what to look for.

1) You don’t begin development with the experience

Every game ever built has a user experience. And this is true whether it was consciously designed or not. This user experience is critical to how players perceive the game, and taking control of it is absolutely essential to developing greatness.

A lot of logic-oriented programmers I know tend to start with the feature, the mechanic, or the idea. That makes sense from a developer’s perspective, but you should never make a game from a developer’s perspective. Making games is about building something cool from the player’s perspective. And from that angle, the experience is what matters most. If you don’t take conscious control of this experience, it will always be worse off. And who wants a shitty experience in their game?

Start your project with the experience in mind. Walk through what the player sees and feels, and what they experience when they play your game for the first time.

2) You don’t show people your game

I know how scary it is, trust me. As an extreme introvert and someone who was terrified of even something as simple as eye contact with waiters at restaurants, showing someone work straight from the heart and soul to be judged didn’t sound like a great idea. I used to worry that if I showed non-developers, they wouldn’t understand and say what I made was stupid. And if I showed developers, they would steal my idea or something. But none of that ever happened.

One thing I learned is that you cannot gauge how good a game is without showing people. It’s just not possible. Someone, somewhere has to play it and give you feedback. And that’s not just for the actual quality assurance side of things either. Not only will people find bugs or UI issues that you didn’t catch because you’re in too deep, but they will do things you don’t expect. Things you think are obvious will be hidden, and things you thought were impossible will be done faster than you could’ve imagined. We like to believe that single individuals can make these epic games, but the truth is, those individuals can only make those games with the help of lots of people.

Its much better to include people in the development and iteration of your game. You end up with a much deeper and more complete product. And that’s just actual, measurable product benefits…that doesn’t include the mental, and motivational benefits of people encouraging you to finish and seeing people excited to play.

3) You don’t have unused great ideas

Every developer that I know, and even the idea guys out there have too many ideas. Everybody has ideas, and thing about ideas is that once they start flowing they don’t stop. But that same beautiful stream of creativity that can give you a unique and amazing game, can also cloud your mind and bog down your game with stuff that just shouldn’t be there. If you don’t have ideas that you LOVE, and WANT TO implement but don’t, you could be deep into the Dev Cycle of Doom.

The French writer Antoine de Saint-Exupery said the following : “Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away.” As a game developer and an advocate of user experience, that quote is truer than ever. It’s the sign of a great game in progress when you actively take out things you love because they don’t fit or work well. Get in the habit of cutting things, because despite its reputation in a world of DLC and repackaged game content, trimming the fat for release is probably the best thing you can do for both project scope and project consistency.

That great idea that is confusing all of your testers? Cut it out. That thing that gives you those nostalgia feels but doesn’t fit your theme? Cut it out. That mechanic that’s awesome but just doesn’t quite mix with your game? Cut it out. You’ll make a better game by adding less and polishing more.

4) You work in a feature factory

Quite the opposite of having unused great ideas, constantly adding features can not only hurt the game you’re making, but it can entangle you into the Dev Cycle of Doom. Features are great, but if that’s the focus of your development time, you are setting yourself up for failure.

Gamers don’t play games for features, they play games for the experience. Being feature-focused is a great way to get derailed from what’s important and end up making something simple into something extremely complicated. Especially if you are adding new features outside of the core game loop. If you haven’t figured out your 10 seconds of fun, and found a way to duplicate that over and over into different content and levels with different enemies and obstacles, you should start there. Adding new features is the last thing you should be doing.

Don’t work tirelessly to just add in the next thing you think of. Don’t constantly add mechanics or features because you think they’re cool. Find your core game loop, the 10 seconds of fun, and stick to that. Everything else should revolve around that core game loop.

5) You constantly chase shiny objects

If anyone is guilty of this, it’s me. I’ve done this in game development, in entrepreneurship…Hell, I’ve even done it in my dating life. Its really easy to assume the grass is greener on the other side. When you play a game that you fall in love with, it’s really easy to put everything else on hold and work on a game like that because you feel inspired. The hard thing to do is to keep working on your project long after it has lost its luster.

In life though, sometimes you just have to do the hard thing. Its easier said than done, I know. I lived it. It’s a struggle. Human beings are wired for instant gratification, and it is really hard to resist that urge, but you have to. Resist those shiny objects. Don’t catch shiny object syndrome. Stick to your path, dedicate yourself to your project, and finish it.

6) You don’t build to ship

I’ve said this many times before. Shipping your game, should be considered a non-negotiable feature. The problem us developers make most of the time is that we don’t feel obligated to release our projects. We don’t have a deadline, we don’t have a publisher, we don’t have an audience, why bust our ass to complete it? There’s no urgency.

The single thing that helped me more than ANYTHING finishing my first game after 10 years making games was the decision that I should build to ship. From the beginning, my project was built to ship. Everything we did revolved around getting it out the door. That doesn’t mean we skimped on quality, of course not. But shipping the game was as much of a priority as anything else. This led to a short development cycle, and it also allowed us to iterate rapidly after we launched. That was awesome because we actually released a game, but it meant that now we could maintain small iteration cycles, and push out new stuff to an existing audience.

Consider shipping a feature, and work to publish. Whatever you do, keep going, with the end goal of releasing. Your game will never feel done. It will never just tell you one day that it is complete. Pick a deadline and work towards it to finish whatever you can, but then release. It will make you a better artist.

7) You put upfront revenue above all

Now before you jump in and tell me that this point has nothing to do with the previous 6 points, let me explain. This point doesn’t apply to most indies, as they never actually get to the revenue stage. But there is a select few that start there. I see people that start constant Kickstarter campaigns for new games all the time, or they put so much effort into trying to make money that they lose sight of what’s important. Let me say this straight up, making money is not evil. Selling is not evil. And revenue is not a bad thing. But when money comes first over the game’s experience, nearly every time you end up with an incomplete, low value project, or a slot machine. One of the most dangerous things you can do in this world, is take knowledge of behavioral psychology and use it to manipulate people into giving you money. There’s nothing wrong with improving your metrics over time and optimizing your conversion…its the intention that counts.

Its a thin red line, I get that. And there is no real way to tell what side of the line you are on…but there is one person that knows your intention. You. Don’t be a game dev douche-bag. Don’t take advantage of people that trust you up front for a crowdfunding campaign. Don’t under-deliver just because you can and its better for your bottom line. Don’t prey on people that have addiction problems, to crank some cash out of their spending habits.

And aside from the ethical concerns of being a shitty person, there’s also long term monetary effects as well. People don’t like to be screwed twice, and they will never trust you again. If you don’t deliver on your promise or you give them something incomplete or under value, sure that may work right now. But for the next update, or game, or project, it’s not going to work. And fucking people over has an exponential effect on the internet as well. People start to talk, and then they find each other and they organize. In other words, its a really bad business decision.

Conclusion

Finishing and making games is hard, but if you stick to it and avoid these 7 things, you’ll do well. Keep in mind your game’s experience and don’t sacrifice it for ANYTHING. Show off your game and your progress often, and get feedback. Cut out great ideas when they don’t fit. And don’t add features just for the sake of having something to do. Don’t chase shiny objects despite how appealing they look, it’s always more lucrative in the long run to take the slow hard road.

Whatever you add to your game, always consider shipping a feature, and actively work towards it. And no matter what, do not be short sighted and put upfront revenue before the experience or the important parts of the game. You’re a developer first, and business person second. Never forget that.

What about you? Do you have any experiences getting stuck in the Dev Cycle of Doom? Share them below in the comments!