Making professional games with Godot. The Good, The Bad. (no ugly).

What’s the difference between Godot 3.2 and an elephant?

The elephant can be bigger than 2.1 Gigabytes. Hahahahah. What a funny joke. You get it?

If you don’t, no worries. I kinda suck at telling jokes. But It doesn’t matter. Because you’re not here to get your amusement dose. You’ve come to hear me tell stories about Godot. And it’s beautiful story.

Let’s start with the beginning.

I was born on a cold september morn in Romania under the watchful eye of our president at the time, Nicolae Ceausescu. He heard my first screams as the doctor slapped my ass and said: “Oi!! Keep the noise down. Trying to run a bucolic communist country here!”

Nicolae Ceaușescu.jpg

Oh, wait! Not that beginning? My bad. Let me try one more time.

I was 10 years old when I first saw a NES. It was at a schoolmate’s home. His father brought him one from abroad. He was playing Mario. I felt like watching warm rainbows covered in chocolate. It felt like touching god’s little finger. It felt like magic. AND I wasn’t even playing. Super Mario Bros Power Up Card Game |Super Mario Brothers Video  Game Nintendo NES Artwork |Fast paced card games |Easy to learn and quick  to play |Fun game for all the

What now? Not that beginning? Ok, ok. Let me start again!

I first heard Godot mentioned as a cheap (free) alternative to Unity. Open source game engine??? Heehaw! Where do I sign up …. to keep using Unity or Phaser.js.

You have to understand.

At the time I was afraid of open source products given my previous experiences. Don’t get me wrong – open-source it’s a boon to humanity. But some of its end results are not as polished or user-friendly as their commercial alternatives.

Take Gimp for example. As a veteran Photoshop user and digital software lover I’ve said to myself:

“Let’s give it a shot. It’s probably going to be awesome!”

Woman, Towel, Surprised, Excited, Excitement, Portrait
That’s me without a beard.

And it was. Awesomely disappointing. It just didn’t felt right. The workflow, the UI, the tools …. I know, I know. If I’d been using Gimp for a decade and then tried Photoshop I would say the same thing about Photoshop. Or would I? Who knows. Thing is, from productivity and UX viewpoint open-source Gimp it’s a poor alternative to Photoshop IMO.

So my thinking was “Godot is to Unity what Gimp is to Photoshop”. A rough vagabond dog …

Dog, Mutt, Pet, Animal, Canine, Doggy, Cute, Dirty
How Godot seems if you’ve never tried it.

… vs a clean and elegant house dog

Dog, Black, Portrait, Animal, Blue, Rare, Big, Bitch
The big and powerful Unity.

So, was I right in my early untested assumptions?

Yes, I was. Godot was indeed a vagabond dog.

If by vagabond you mean:

  • lean and mean
  • lite yet powerful
  • lovable at first sight
Wolf, Predator, Grey, Animal, Mammal, Portrait
How Godot feels after you’ve used it.

During my gamedev years I’ve had the chance to try a variety of engines and frameworks:

  • Unity
  • SDL
  • Phaser.js
  • Unreal

I’ve made some games with Unity and some other games with Phaser.js. But I’ve never been able to create a game as fast before Godot.

Put simply – Godot will allow you to create games FAST. Creating games is hard enough without the game engine getting in your way.

Here are some “fastness” examples.

I’ve managed to add localization (just english) in just 2 days for Gamitate. 400 something entries, 10,000+ words, multiple locations (buttons, dynamic text, checkboxes, in code, etc).

It took me 1 month to create a fully working skeleton for Gamitate. Sure, I’m always tweaking and adding code. But to create a working game skeleton in just 1 month? For a mid-sized game that’s amazing. AND it was my first time ever working with Godot! So I was also learning the game engine in that first month.

(granted, I’ve took 2-3 weeks before hand to go through all the tuts and docs. But it was still my first project in Godot)

Just to give you an example – it took me 3 months to create Nature Basketball in Phaser.js.

I’m getting a gamedev-gasm every time I use Godot.

How can I best put this … working in Godot will give you pleasure. Much pleasure. It feels good, natural, elegant, clean. Not everywhere, mind you – there are still some rough edges in the UI/UX. But the core game-dev features? Beautifully crafted.

GDScript is one of the reasons Godot feels lightning fast during development. Gone are the days when you have to write miles-long terse syntax to do even the simplest things (yes C#, I’m looking at you).

Now don’t get me wrong – C# is great. It’s a powerful and beautiful language – and you can build incredibly complex software solutions with it.

But guess what! With power comes verbose syntax and complexity. You usually don’t need all that bloody power for games. You’re perfectly fine building even very complex games with pythonic languages.

I know, you think I’m talking rubbish. I used to think like that too – until I’ve actually built some games using GDScript. Not only it’s not an issue using a pythonic language – it beats the hell out of C# and C/C++ for game development (not game engine development, yeah?)

If Godot sucked I would’ve abandoned it after the first project.

I’ve started working on the second big project (it’s going to be something truly special) and guess what – still using Godot. I’ve tried getting back to Unity but it’s like going back to a horse-drawn carriage after a Ferrari.

And this is a feeling shared by many, many game developers. The vibrant community on r/godot it’s full of praise and beaming reviews. It’s just that good of a game engine.

It does have some rough edges.

There are some minor UX issues here and there but nothing game-breaking (haha).

People keep complaining about the poor documentation. Me, I’ve find the documentation extremely good (bonus – you have documentation embedded inside the engine – saves a sh*tload of time).

The tileset editor seem to be another source of complaints. I don’t work with tilesets so I can’t comment on that.

There was a nasty bug that didn’t allow for games to be bigger than 2.1gb. You had to put your assets separately in the build folder, load them at runtime, etc. Now it seems the bug was fixed (in a nightly release at least).

I hope I convinced you to give Godot a shot.

If you’re a game dev and you haven’t tried Godot you’re missing A LOT!

Leave a Reply

Your email address will not be published.