Making my first game in under a week using Godot engine (you can do it too!)

making first game using godot engine

Godot Engine Logo by Andrea Calabró is licensed under CC BY 4.0

If you’ve never done video game development before, the barrier for entry can appear to be high. This is what I thought as well before finally deciding to try out game development. However, you’ll see that thanks to great open source tools like the Godot engine, game development is a lot more accessible than you think!

I’ll go through how I made a game in under a week using the Godot engine with no previous video game development experience, and more importantly, the steps you can take to do the same. This will hopefully help anyone who is thinking about getting into game development and making their first game.

Starting with no previous game development experience

With no previous game development experience it might be tricky to know how to actually start out in the process of making a game.

I did have a little experience developing a GUI (Graphical User Interface) based application. This for me, was the closest to any sort of graphics based design I had. If you do have some GUI development knowledge I believe it will help a bit when it comes to the concept of having elements and code behind it.

However, regardless of your experience, know that game development is accessible to any type of developer! 

What if I’m new to coding?

If you’re completely new to coding, I would advise you take time to learn the basic concepts of programming first and do a few programming projects. If your goal is to become proficient in game development then know that C#, C++ are the main languages typically used. 

However python is also a great choice in this case. It’s considered easier to pick up than C# and C++ and in general great for beginners. Also, the Godot engine’s native language called GDScript is highly based on python so it’s also a great choice if you want to use Godot for making games.

For more guidelines on getting started with coding see our post on how to select a first programming language. If you’re interested in learning python, get stuck into projects and try these 5 creative python project ideas for beginners.

Can I really make my first game in under a week?

Now, let’s address the admittedly clickbait-y part of this article. How can you actually make your first game in under a week? 

It depends.

A couple of factors enabled me to do so:

  1. I’m already an experienced programmer.
  2. I chose to make a very simple game just to become familiar with game development. (As you’ll see the game is really nothing special 😉 )
  3. I entered a Game Jam. I was determined to submit a game to the jam and the submission deadline was a couple of days from when I started learning how to use Godot. So this literally forced me to make a game within a week. (Deadlines for the win!)

I believe the single most motivating factor in completing the game quickly was entering a Game Jam. This is a contest where you can work on your own or with a team to submit a game before a deadline. Usually Game Jams have a theme the game can be roughly based on. 

If you want to get into game development I highly recommend joining a Game Jam! The one I entered was the Game Off 2020 Jam hosted on itch.io. Definitely checkout Itch.io as it’s a great place to find many online based Game Jams and to interact with other game developers.

Keep these points in mind when you think about if it’s possible for yourself to produce a game in under a week and whether it’s realistic given your situation. 

A final point is, it doesn’t really matter how long it takes you to make a game. Some may do it in a day! And if you’re new to coding it will likely take a lot longer. But the most important thing is that you’re learning game development and working towards your goals 🙂

Next, we’ll talk through key points in the process of using Godot to make games.

Using Godot engine to make games

Tips for getting started with Godot

Your main resource for getting started with Godot is through Godot docs. It contains everything you need to use Godot including a very detailed beginners walkthrough introducing you to the Godot editor, it’s native scripting language called GDScript and basic concepts you need to know to start making games.

The work to focus on at the start is to go through the docs especially the Godot step by step guide. One of the fundamentals you need to know about to use Godot properly is navigating around its editor. The Godot editor is self contained and you can make an entire game using just the tools provided in the editor.

As you go through the step by step guide you’ll begin to understand how to navigate around the Godot editor. There is also a very useful making your first game tutorial which I highly recommend you follow from beginning to end. Once you’ve gone through this tutorial you should know enough to start making your own game. Or at the very least, you’ll know how to tweak settings and work from an existing game example.

These are exactly the steps I followed when I started using Godot. After completing the first game tutorial I knew I could tweak the example to make the game I had planned out.

One point to note is although GDScript is the main language used in Godot, there’s also flexibility in other languages you can use, some of which include C# and C++. However, I chose to use GDScript because it’s recommended in the Godot docs and it’s very similar to Python which I’m comfortable programming in.

With the Godot docs as your main resource you should have enough to start making your own game. If you need help with using Godot also see the community page for a list of ways you can get help.

The result – My first game using Godot engine

Download the game for Linux and Windows. (Warning, it’s nothing fancy!)

What the game is about: The game is called “Save The Sheep” and the concept is very simple. It involves navigating sheep through space, avoiding deadly stars and taking the sheep to the moon.

The difficulty of the game increases slightly with each sheep you successfully land on the moon. There are 22 sheep in total to save.

That’s it. Nothing fancy or groundbreaking. The main point of starting with such a simple game was to get me started with basic game development concepts like moving a player around, having enemies, hit boxes, keeping score, increasing difficulty, animations, images, music, sound effects and so on.

The game basically started off using the example from the first game tutorial in the Godot docs. I was able to use the learnings from that tutorial to know what I needed to add, remove or tweak to get my desired result.

I submitted the game to the Game Off 2020 Jam hosted on itch.io. You can checkout the game which is hosted on the itch game page.

Here’s some screenshots of the game:

Learnings and surprises from making my first game

Game development is easily accessible

When I made the decision to make my first game, it didn’t take much effort to discover the vast amount of resources and communities centred on game development.

The Godot engine is just one example of a great resource for those new to game development. Unity is another game development engine that’s very popular. You can see this article from gamedesigning.org on a list of video game engines if you want more insight into different engines.  

Planning and architecture is critical

One factor that stood out in my experience of making my first game is the importance of planning before coding. Although the practice of planning out your code architecture before writing any code is recommended, it’s probably not something a lot of us pay attention to. Depending on the type of development project it may also not be as critical.

However, game development is certainly one field of programming that requires careful planning before you begin to write code. Games require many different elements; controls, mechanics, characters, levels, story and so on. If you don’t have at least a rough plan of how this will all come together your game may end up completely different to what you planned out in your head!

Since I kept the game very very simple I didn’t have as many challenges with designing. However, even putting together such a simple game highlighted how important planning will be for more complex games.

Programming is only half the work

While programming is certainly a key side to game design, with just code alone your game is nothing. There’s also the art, characters, interact-able objects, music, sound effects, display text, etc..  to take into account. These are known as video game assets.

Without assets our game technically is not playable and is just a bunch of code! 

And finding the right kind of assets is a challenge in itself as you ideally want assets that match the aesthetics of your game. For my first game, designing my own assets was really not an option for me because of the limited time I gave myself and also because I had no idea how to make assets! 

I used a lot of assets from opengameart.org. This is a great resource of free to use game assets and thankfully I was able to find suitable assets for the concept I had in mind for the game. Note that assets provided by opengameart fall under creative commons licensing terms so be sure to give attribution if required.

The importance of assets and how it matches your game design and aesthetics is just another factor to consider when making games.

Game development is super fun!!

Most importantly, I enjoyed the experience of making a game and looking forward to making more games! 

Conclusion

Game development is not as difficult to get into as you may think. There are tons of resources available to help beginners in making their first game.

If you’re interested in game development, don’t overthink it and just try out making your first game. Although we briefly covered getting started with the Godot engine you may also explore other engines.

Once again, I highly recommend joining Game Jams such as the ones found on Itch.io. There’s nothing like having deadlines and participating in contents with other devs to encourage you get involved with game development!

If you’ve been thinking about game development, what’s stopping you from getting started? If you’re already into game development how did you first get started? Comment below!