8 Secrets to Finish Your Game Development  - 2019
Tags: gamedev
Published: 2019-08-19 15:59:47

If you build games you know how hard it can be to complete and ship them. Starting game development is relatively easy given today’s user friendly engine tech, and we all have grand ambitions to build full-featured experiences that will be critically and commercially successful. But somewhere along the road, the unfortunate reality is that most game development projects stall and lose momentum. It’s a statement about how much work needs to go into finishing a game. We almost always underestimate the effort involved. That said, there are some effective steps one can take to minimize the risk of not completing your game.

These are 8 secrets to ensure you finish your video game. I will outline a number of steps you can take to maintain development momentum but please note that none of these considerations are hard rules - there have been lots of successful development cycles that have either observed or ignored these suggestions. Nothing here is prescriptive - just keep in mind that considering each may help you get closer to releasing as planned.

1.	Solid Development Plan
First thing’s first - the single most important thing you can do to improve your chances of shipping your game is to have a solid development plan. There is a lot that goes into a professional project plan, but the core of the process is to list your specific development areas and assign task descriptions and time estimates to the work involved. This process includes thinking about how you will specifically complete each feature – including breaking up development into a number of small tasks and defining the order in which they will be completed. Having a plan is helpful, because otherwise the developer is flying blind towards and uncertain goal. Not knowing how much work will be needed to complete their project is where most failed dev cycles find trouble, as momentum starts to stall when the reality of the workload to completion starts to expose itself. So have a plan! The rigor of defining the work will make you aware of what you are committing to – and help you decide if you have the determination to see it through to completion. 

2.	What Matters Most
So now you have a project plan where you have defined the work ahead of you. The next step is to define the “cut line”, or the features you will not support and where you will stop development. We all want to have the broadest feature set we can think of.. but that is often not practical from a time perspective. The important thing is to make sure you spend your valuable time on those features that really drive player satisfaction. How do you define what matters most? Well, if you could reasonably ship a great game that delivers on your core gameplay without that one feature in question.. then it probably isn’t part of what matters most. Game development history is littered with projectsthat have tried to add unnecessary mini games, multiplayer features, or side quests to what was a perfectly satisfying single player experience. Most often these additional features didn’t enhance gameplay, and only slowed down development progress. So be strict about what really matters in your game. Commit only to what matters most and you will save yourself the headache of scope creep.

3.	Start From Fun
The next thing to consider is what features you will target first with your development. luckily, the best choice from a planning perspective is also the choice that will provide the best momentum. That choice is the one feature that will provide the most fun for your user. Too often, developers start working on mechanics that are deemed ‘necessary’ - but don’t truly delight the user. It’s in my experience that most successful games came out of a development cycle that started with a small but fun core game loop. It’s also my experience that those games that don’t start from the fun have a high chance of failure - tacking on mechanic after mechanic without addressing the core question of why someone would actually want to play their game. If it's not fun, it probably not going to resonate. The extra benefit of starting from the fun? If you have something enjoyable, the feedback you will receive during demos will inevitably be encouraging. It’s that encouraging response that can make all the difference to a developer who needs help sustaining momentum. Having a game that doesn’t excite will garner less than enthusiastic feedback - and can make developers question whether they should forge on with what could be a long road of work ahead.

4.	Interim Milestones
The next thing you can do to keep project momentum is to make sure you have interim progress milestones throughout development. Milestones are a fixture in professional software development, but many indie devs work without a solid milestone structure. So why are they important? Interim Milestones break up your work and provide a checkpoint to see if you are meeting your goals as planned. If you are not hitting your milestones, it may be that your time estimates for your tasks were too aggressive, or that you missed tasks in your feature planning that were necessary to meet your goals. Either way, missed milestones are an early indicator of a project that could be going off the rails. These indicators allow the developer to revisit their plan, and ideally make the necessary changes to ensure development progresses through to ship. Additionally, there is a sense of accomplishment from hitting milestones - And that achievement can provide the necessary momentum to finish your game.

5.	Certification Plan
A common area where developers can lose momentum is when they have completed their core feature work and now have to bug fix and prepare the build for platform certification. This is typically not a trivial process. The amount of bugs in a game can be significant, and platform requirements can be numerous - especially if you plan to release on console or on multiple platforms. What is extra challenging about this process is that it typically isn’t the most enjoyable part of development. Certification can require lots of research through platform documentation, and bug fixing can necessitate deep exploration within your code. These tasks can be a stark contrast to building the exciting gameplay mechanics that defined your early development. So dev speed and visible progress can often slow down during this final phase of development. How can you ensure you keep moving? Have a solid plan. Similar to your original project plan, estimate out the tasks involved in bug fixing and certification and give yourself a clear picture of the work involved. Have a good idea of what bugs you plan to address, and which ones you can live with. Additionally - Knowing what certification requirements you need to address is helpful to know up front, so that you can see the path to the finish line. Professional teams can spend up to one third of their full development time finaling the game - so give yourself the necessary time to complete this important phase. 

6.	Work With A Team
Another way to reduce your chances of not competing your development is to work with others. While many indie devs like the design control that comes with solo development, the reality is that it can be very challenging to complete a game all by one’s self. Gamedev requires expertise in a lot of different areas - and most devs can’t supply all that knowledge by themselves. Taking on partners in your development can help in two ways. Firstly, the workload gets spread across multiple people and thus doesn’t have as much chance of overwhelming one individual. Secondly, the process of adding additional dev members can instill a feeling of obligation amongst team members - a general sense that no one can give up given that others are committed to seeing development through. But maybe you don’t want to take our advice on this point. Please note that solo dev has been done successfully in the past, and sometimes with great success.

7.	Share Progress
In a similar vein to bringing on additional team members, sometimes going public about your gamedev intentions and progress can aid in building momentum. It’s basic human nature to want to meet expectations. By communicating to friends, family, and colleagues that you are committing to a gamesev journey - you are providing yourself some strong motivation to not quit in the face of challenges. No one wants to tell others that you didn’t finish what you started, or that you failed to reach your goals. You can amplify the effect of this tactic by using social media to communicate your development plans. Telling the world about your game, when you plan to release it, and what features can be expected takes bravery - and makes any future decision to quit all the harder.

8.	Familiar Engine
So here it is, My last tip to help make sure you finish your game. We’re talking engines here, and the best practice is to pick an engine that you are familiar with if you want to ensure getting to the finish line. Far too often we hear of indie developers that adopt a new engine choice for their dev - only to discover that the new engine does things differently than what is familiar, or has a confusing interface, or requires additional software. Engines can vary wildly in their offerings - and some aren’t as intuitive as others. So pick engines wisely! Gamedev is hard enough when you don’t have to learn a whole new framework. If you want to reduce your chances of development frustration leading to quitting - pick an engine that you feel comfortable with. Bonus points if you have shipped a game on that engine before!