I have shipped two small projects using Godot 3. It's a cool engine but to me it can improve on the following points to be considered a mature engine for a new indie project:
* GDscript is cool but lacks features such as better typing and lambdas over generic nodes.
* I have encountered many bugs in the Engine more than when I was using GameMaker.
* It lacks native mobile monetization.
Other than that I'm much more enjoying working with Godot than Unity.
I have the exact same issue with mine. As a workaround I set a password to install apps from the play store and it works, she never download new apps so it's not an issue.
I'm happy to see that Godot community and development is increasing so fast. I just completed a 2D simple mobile game[1] with Godot and I had a greet time making it even trough I ran into a lot of issues.
Most of my issues were related to bugs with 2D nodes such as Area2D. The engine as a quite a few non-breaking bugs related to differents aspects. It's still very usable and very high quality for an open source software. I'm looking for v4.0 to increase the stability.
I will probably write an article about my user experience with Godot compared to Unity or Game maker and others.
What made you settle on Godot instead of any other engines? I'm looking into making a mobile game and I'm looking at Defold, Solar2D (previously Corona, heh), and Phaser.js all as potential rivals.
Defold and Solar2D both use Lua instead of a custom scripting language (GDScript) which appeals to me. Defold seems very polished, and includes infrastructure for ads and for Facebook games, which is ripe for monetising, whereas Solar2D is much more barebones.
Phaser.js seems like way more of a hobbyist tool than either of them, but I'm tempted just so I learn js.
Did you consider any of these before choosing Godot? Curious to know if I should go with Godo despite using its own scripting language which isn't useful outside of Godot.
I wouldn't get to hung up on GDScript. It works well and is well integrated into Godot. If you already have experience programming it will be easy to pick up. Where Godot shines is the ability to create something without a lot of code. This is a good thing because IMO the real time suck is creating assets.
I suppose I'm coming at it from a different angle - I'm expecting my game to flop, but want to learn something from it. I'd rather that something learnt to include a "real" language rather than a script designed for one program. Of course, that's not to say I'll learn nothing while developing for Godot, but it is a factor for me.
Well, you can use C# with mono or use GDNative. Personally, I think most are better off just using GDScript and focusing on their game. I say that because in r/godot there is always a lot of handwringing from newcomers who are wondering if they should skip ahead to something more advanced/common, but ultimately they want to make a game. If that's the case, I think GDScript is great. I think the real learning experience for any independent game developer is how to scope a project so that it is achievable with the resource constraints they have available. That's useful in all programming domains.
There are forks of Godot that use other languages[0].
You might still be able to learn algorithms and methods using Godot, but to me the primary reason to use a framework like Godot is to finish a game. You learn the framework to use the framework - the player isn't going to know or care either way.
When I first started the game I had no target platforms in mind. So getting an engine which would make the transitions painless was a huge benefit.
Now, if you only want to export to mobile maybe Defold is superior? I honestly can't tell without trying it.
BTW, Godot can work with GDscript or C# if you prefer. Also GDscript share a lot of it's syntax with Python.
What lacks a bit on Godot is mobile vendor integration. For instance to access Android services such as game service you have to use community plugins.
I choose Godot because I wanted to try it on a small scale real project.
I'm also curious about game engines and I'm wondering why you didn't list Unity. It seems like the default for a lot of mobile game projects. I've heard for 2D it's a bit of a glutton, since it's ultimately a 3D pipeline. Is that why?
Yeah that's why I dismissed it - way overkill, both in terms of resources used and the development (at least from what I can tell). It seems like 2D is an afterthought, with it just locking the camera in a 3D space to a particular axis.
Exactly. When using Unity it feel like I get too much for what I want. For me Unity is in this weird spot were it's suited for AA mobile game and AA 3D games but not so much for AAA games or indies were Godot shine.
Ahah oops, fixed! I wasn't aware of its Swedish origins, I kind of assume everything is American on the internet until proven otherwise (coming from a Brit)
Same, I'm not too far from releasing an MVP mobile game built in Godot, and the "time to game" as well as the burgeoning plug-in scene make it quite fun to get something working.
Some months ago I made a game using Godot. A simple mobile focused arcade game. The goal was to design a game where the player has only one action, and make it has fun as possible.
I wanted to like Lua and Love2D, but struggled with writing code quickly because there's no editor autocompletion that I know of, so I spent a lot of time having to reference the docs. Do others just use it enough that they know the API by heart now?
Other than that I'm much more enjoying working with Godot than Unity.