Introduction
You want to make your own games but have no idea where to start? Or you have already tried to make some games but you never managed to finish these projects? Perfect!
Well, not really perfect, but a good reason for you to continue reading. This guide will help you to learn everything you need to know to start making your games (and also to finish them of course). I assume you already have a great idea for your game in mind that you want to do. That is awesome! And you should probably forget about it.
But wait!
Before you close this guide, I will explain later why your idea might not be the best one to use for your first game and how you eventually get to the point where you can come back to that idea you have right now (just do yourself a favor and write it down somewhere so you won’t forget about it).
But why should you listen to me? These guidelines are based on research from different books, articles, videos, and a survey that was carried out to ask other indie devs about their workflow and problems in game development. The idea is to get all the information from different sources put together in one document to give you a better overview. So while this guide is written by me, it is a summary of the work and experience from real professionals.
For whom is this guide?
If you already successfully made games on your own or in a team then this guide will probably not be that interesting for you. The idea of this guide is to help people who are interested in making games but have no experience yet. I want to get more people involved in making games by providing the basic knowledge of game development. In addition, this guide will also cover the most common problems of game development to prepare beginners of the upcoming challenges and to help devs out who are struggling to finish their games.
How to use this guide?
This guide is not a tutorial. The idea is to support you on your journey of making games, which means that you still have to do your own research if you want to dive deeper into certain aspects of game development. In that sense, it is also fine if you just skim through the guide and read what is useful for your situation. And if you disagree with certain parts or if you have your own solutions that work better for you, that is totally fine. Game development is a complex process and while the general steps of a production are similar, everybody approaches a project slightly differently. You are your own boss. Use this guide in the way it suits you best.
There is also a summary available which gives you the most essential information without much explanation. It is also possible to download the guide as a pdf. The results of the conducted survey can be found in the pdf if you are interested in those.
The Guidelines PDF
In any case: Good luck on your journey to becoming a game developer!
Table of contents
1. Choose a role
A game is made out of a lot of different components. There is game and level design, coding, art, sound and music. There is more to making a game but I want to keep it simple for now. These are the jobs of designers, programmers, artists, and sound designers or composers. Maybe you already have some experience in one or more of those fields, which is great. And even if you don’t, there is no need to worry. Everybody has to start somewhere and I want to give you some tips for that.
For now, I assume that you are a solo dev, working on your own without a team. You might feel overwhelmed by what you need to know but relax for a moment. You will learn a lot while you are going to make your first games. To take even more pressure off you, there is no need anymore to learn programming to make games, which, I have the feeling, is the biggest roadblock for many interested people. The same applies to all the other jobs that involved in game making. There are so many ways today to get around something that you are lacking. That is why I personally suggest that you should not try to learn everything (which is also what our teachers told us every year). Don’t be mediocre at everything, be good at a few things. But this is debatable and there are people who can do a lot of things very well. The game Stardew Valley is a good example of one guy doing everything. But that also comes with a price. Learning a new ability takes time. And it’s up to you to decide if it’s worth your time learning all the different skills (and keep in mind that practicing a skill takes even more time if you want to stand out). For now, you should not worry too much about it. Just keep in mind that you don’t have to learn everything in order to make a game. But this topic will become important again at some point and it will also influence your project heavily. If you want to make a 3D game, for example, but you don’t have the skills to make your own art, you either have to buy assets or hire an artist. And if that is not an option, you will probably have to think of a different game idea.
2. Game Engines
A game engine is a tool that you will have to use to turn your idea into a playable game. Imagine it as a pot in which a team throws in the code, art and music and all the other ingredients that are needed to create a game and the engine magically makes it all work. This is a really simplified understanding of a game engine but you should get the idea. More important is the fact that there are a lot of different game engines available and you need to pick one to start with. It’s not as hard as choosing your first Pokemon because you can pick up another engine at any time, but there are important things you need to consider and once you have started a project, you will have to stick to that engine until it’s done. Oh, and if you are a programmer, don’t even think about writing your own engine. Writing your own engine is a huge waste of time (for probably 99% of the people).
“Don't remake the wheel. Unity and Unreal have assets and tools to make your life easier. Someone else has made some tool or system you need a thousand times already and probably better than you could so just use that.”
But how do you choose the right engine for your situation? As a beginner, you have different requirements compared to someone who has a specific idea in mind and knows the technical requirements. Especially, if you just want to get started as soon as possible.
Important is, that the engine is free to use. You probably don’t want to spend money on a product that you might not even end up using in the future. The engine should be accessible and offer enough support and tutorials to make sure that you can learn the basics by making small projects. And in the best case, there is also a marketplace available that offers enough assets that are either free or can be bought.
In the following, I will list up the most used engines together with a few key points of what each engine has to offer and what possible downsides there are. There are more features of an engine that are relevant, but for your situation, it is not necessary to know every detail. Let’s keep it simple and focus on getting something done. I will add some links to various tutorials that got positive feedback or that I have used myself so that you don’t have to search for them. And remember, you can still switch to another engine whenever you feel like it doesn’t work out.
2.1 Unity
Unity is one of the most used engines by beginners and indie devs for good reasons:
It is easy to use once you get the hang of it
It is possible to make 2D, 3D and VR games with it
It has an extensive asset store with a lot of assets and plugins
There are also a lot of assets available for free
A big community that can help you out
Many tutorials provided by Unity and the community
Supports export to every relevant platform (and more)