How Do You Start Developing A Game?

Creating your first game can be a daunting task, where do you even start? Well, it all starts with an idea. Bringing that idea to life is when it gets exciting, interesting, and frustrating. But how do you bring that idea to fruition? In this article, I go through the basic steps of developing a game.

To start developing a game you will need a game engine, an idea, and the determination to learn and troubleshoot problems as you encounter them.

Creating a game you will need to:

  • Game engine, graphics editor, audio editor
  • Write down your ideas
  • Choose a game engine
  • Prototype your ideas
  • Polishing

What Do You Need?

The three main things you need to start developing a game is a game engine, graphics editor, and audio editor. Many game engines have small/primitive graphic editors and audio interfaces within them, so they could be used instead of a standalone product – depending on the type of project you are working on.

Game EngineArt/ModelsAudio
Game Maker Studio (2D and 2.5D games)Photopea (Online version of Photoshop)Audacity (Free audio editor)
Unity Engine (2D to 3D games)GIMP (Free graphic editor)Freesound.org (Free SFX, music, and samples)
Blender (Free modeling software)
Turbosquid (Library of models both free and paid)

Learning to program will allow you to create games quicker and more efficiently. Drag and drop will get you through for a short time, but learning to program will take your games to the next level.

Art is important in a game; however, there are techniques and art styles that can allow you to create amazing games with minimal art. The game, The Floor Is Jelly, is a great example of a game with a simple, yet effective art style!

The floor is jelly. 9$ [so simple yet so beautiful. Love the style and the concept of the game]

Learning to create your own sprites, textures, and then furthering your skill to create and rig 3D models will allow you to make any type of game you desire.

Audio in a game is almost essential, even if it is minimal like Limbo. Ambient noise in the background instead of a musical score like the Mario Bros songs can be enough in many games. Sound Effects to let the player know when the player has jumped, shot a projectile, or has been hit by an enemy are crucial and do not have to be complex.

Audacity is a free music editor that can allow you to record your own voice if you have a mic and allows you to edit any sound sample you have. The sounds can be exported and used in the game engine of your choice.

Choose A Game Engine

A game engine is used to create a game. A fundamental game engine provides rendering, physics, collision, sound, animation, and scripting capabilities.

Choosing a game engine for your game will come down to what your game requirements are. Creating a simple 2D platformer or puzzle game may only require Game Maker Studio, whereas a more complex 3D game, featuring high-quality visuals may need the Unreal engine.

Additionally, if you’re just starting it can be a good idea to stick to a more popular engine that offers a lot of community support. Community support allows for any questions you have to be answered quickly or pointed in the right direction – whether that is a tutorial or thread from someone else answering your question.

Engines like Unity off both 2D and 3D support and a lot of community tutorials and resources. It can be overwhelming to newcomers, but tutorials can help you learn to navigate the engine.

Game Maker Studio has a simple interface and allows users to create animations and sprites quickly within the engine while offering drag and drop coding. Unfortunately, it only offers 2D/2.5D, but you can do a lot with those “limitations”.

Should You Create Your Own Engine?

You should create a game engine if you are interested in learning about how games work internally and have a desire to accomplish creating one. Do not create a game engine if you just want to make a game or just want to use it as a bragging factor to your friends.

Creating a game engine offers the ultimate flexibility when developing a game and can be reused for future games speeding up development time. Writing an engine takes time and will require programming knowledge and interest in building a game engine – not just a game.

There are a lot of files and code that are created when making your own engine.

New game developers should become familiar with one game engine and then start experimenting with others. This way you’ll have a game engine you can always go back to, to develop games while gaining experience in many other engines.

After getting to know one engine well and experiencing others you’ll start to gain a good idea of what you like, don’t like, and what feature is contently missing from game engines that you like to use. With this information, you’ll have more insight into what features and type of game engine you want to create.

Write Down Your Idea’s

Game development starts by writing down all of your ideas, good or bad. Once the ideas are written down start choosing the ones that are the most important to you and eliminate the ideas that aren’t core to making the game. Keep your game scope in mind – is that feature really going to make or break your game?

Writing down all the ideas, good and bad, allow you to get the creative juice flowing and can help you think of new ideas. Even if the ideas are bad, don’t overthink them, just write them down and move onto the next one. This will keep the creative flow moving, instead of second-guessing yourself.

It is easy to increase the scope of the game you’re going to try creating by adding 1 or 2 extra features. Write those extra features down and finish the core of the game before adding them into the game. This will save you a lot of time and keep the project small and achievable.

Prototype Your Game

Prototyping your game means you’re creating the basic functionality and game mechanics to get your game working. This way there is minimal time invested in the game, art, animations, sound, polishing, etc. The benefit is that you can test your gameplay and mechanics to see if the game is worth investing time into making it look and feel good.

Prototyping is an excellent way to create, test, and experiment with many different ideas in a short amount of time.

This is an example of a game prototype. The top is my editor view in Unity, the bottom view is how the game looks when running.

Furthermore, if you’re considering creating an engine for your game, it may be worth prototyping it out first to test it before sinking a lot of time in making an engine for something that turns out to not be enjoyable to play.

Polishing

Polishing is the last step to completing your game. It consists of fixing bugs and focusing on small details that have a large impact on the game like refining feel, visuals, specials effects, audio, and taking out the rough edges once the core of the game is complete.

A good example of polishing a game is adding a slight camera shake when the player lands on the ground in a platformer. Without the camera shake, the game still functions and plays the same, but with the camera shake, it gives the player the feeling of landing on the ground.

To polish the player landing on the ground further could be adding a particle effect. Now when the player lands on the ground there is a slight camera shake to give the player the feeling of landing and a visual effect to show the playing landing on the ground. How about adding a small sound effect too? Feel, visuals, and now audio are all hit.

These small differences are what make a good game into a great game.

Conclusion

The number one thing you need to start developing a game is a game engine. Knowing how to program will allow you to use any Game Engine, whereas the lack of programming knowledge will limit you to engines that have drag and drop coding built-in or asset stores that provide working game mechanics you can use – similarly to drag and drop.

Furthering your skills and learning to do basic art editing and sound design will allow you to create your own sprites, textures, sound effects, and music for your game.

Before you start developing your game, write down your ideas, and outline what your core game mechanics are and the goals for your game. Keep the scope small as it may seem simple to add small features initially. Each feature regardless of how small it seems can add many hours to developing your game.

Once your game is outlined and the core mechanics are decided on, start prototyping your game in a game engine. The prototype will get the basic functionality of the game working so you can test play it and assess if it is worth taking the time to create art, sound, features, and spend time polishing it.

Finally, export your game and send it to all of your friend to play and rage at!