Why Defold instead of other game engines?

First of all, I don’t want to sound like I’m attacking your choices! I’m just in the middle of analysis paralysis right now, and I want some opinions to help lead me in the right direction.

Why do you use Defold instead of the other game engines out there, like Unity, GameMaker, Godot, whatever. And if you have used other game engines in the past, what made you switch?

2 Likes

if you do a quick forum search, there are a couple similar topics already that go through the pros and cons of each.

The biggest takeaway from all these topics as to which engine is best is usually “it depends.”

For me personally, if a project will be strictly 2d, then Unity is out of the running. It is very powerful for sure, but it is very bloated, being very 3d-focused. Defold is a 3d engine, but it focuses mainly on 2d (lots of new 3d stuff coming, so I hear, but I don’t believe it will bloat the engine, based on the defold team’s track record of adding only what is absolutely necessary, leaving the rest up to native extensions).

For gamemaker…i haven’t used it, but I’ve watched my nephew work in gamemaker and the interface turned me off completely. Clunky. Also, why learn a new scripting language that has no use outside of that particular app, when you could use lightning-fast Lua in defold, which either you’re already familiar with, or you soon will be, and it exists in many other places as well. Bonus, new skill!

Godot, I’ve heard some sketchy things about reliability, deprecated code (non backward compatible updates) and a general feeling of disorganization. Again, haven’t used this one either, many others on here could speak to their experience though. There are a good few godot->defold converts kicking around.

The final straw, though, is the defold community. This is the only forum on the entire interweb where i have an account. The people here are fantastic. The defold team themselves are ALWAYS posting/replying, and the community-at-large is friendly and helpful, and very responsive. Add that to the tutorials, slick API docs and manual docs, and you’ll have a game published by next friday.

16 Likes

Welcome @mako! It is impossible to give a general answer to the question “why Defold instead of Foo”? as it “depends”, just like @ryanscottlandry says.

Are you making a 3D game? Use Unity, Unreal, Godot.

Are you making a 2D game? Use Defold, GameMaker, Cocos, Godot or maybe Unity.

Are you making a cross platform game? Use Defold, Unity, GameMaker, Godot.

Are you doing an HTML5 game? Use Defold or Phaser.

This goes on and on. There are so many factors which will affect your choice, depending on the kind of game you want to create.

Some things I can say with certainty about Defold:

  • Defold is truly cross-platform. You create your game once, and can without making any changes export to all supported platforms: Windows, Linux, macOS, Android, iOS, HTML5 and Nintendo Switch
  • Defold has a zero-setup policy. You download and install Defold. Nothing else. You do not need XCode to make an iOS or macOS build. You do not need Android Studio or any of the Android command line tools to make an Android build. And so on for all platforms.
  • Defold has a very small engine runtime. The engine is designed to be small and performant at all times. There is no code bloat. This becomes evident when you compare the size of an empty Defold project to the competitors:
PLATFORM DEFOLD UNITY GODOT
Android (32 and 64 bit) 3.3MB 11MB 7.1MB
iOS 2.6MB 9.8MB ?
HTML5 881kb 2.7MB 2.9MB

Source: https://github.com/Calinou/godot-size-benchmarks and Build size. Auto Stripping or manual configuration

  • Defold very rarely introduces breaking changes. We know how frustrating it is to play catch-up with breaking changes. We promise to very very rarely introduce breaking changes. You should not have to worry about your game breaking just because there is a new version of Defold.
  • Defold provides low level building blocks to create high level things. The design philosophy of Defold is to provide developers with low level building blocks that can be used to create just about anything. But they are just that, low level, which means you have to do a bit more work yourself. On the other hand you are in full control of what you create. Two examples:
    • If you need a button you can create one using our GUI system, but there is no ready made button component. You create a button from a box node with a nested text node.
    • If you need a spaceship that can shoot bullets you create one from a game object (the basic building block of Defold games) to which you attach components. A sprite component for visuals, a factory component to spawn bullets and a script component for the logic.
  • Defold has a great community. We get a lot of praise for our friendly and active community, especially here at the forum. We care about our users and the community is usually very helpful and inclusive to new members. :heart:
26 Likes

Game maker is not the best choice since code is only for the app. Godot has bad tourtorials interface and all that i once asked on their forum how to code a platformer movement and only one guy replyed sending so outdated tourtorial and unity is being ruined by all theese updates and it highly relies on community that makes stuff for asset store so yeah

3 Likes