Defold Popularity - Discussion

Hi there,

Recently decided to look into some Google Trends info on Defold vs other games engines that I see being used for similar purposes or mentioned occasionally here on the forums.

The following graph shows interest in the Defold web search over the past five years, worldwide:

The highest two points were March 2016–Defold was released as a publicly useable game engine–and May 2020–Defold source code was made available and the Defold Foundation took the reins from King. These spikes in popularity (less so for the May 2020 event) did not last long. The other thing to note here is that Defold has been relatively stagnant in popularity for the past five years.

Let’s take a look at Defold compared to some other relevant engines over the past five years, worldwide:

I did not include more than five engines to keep things readable. Unity is sometimes brought up on the forums, but I did not include because it focused mainly on 3D games and is obviously wildly popular.

RPG Maker seems to be decreasing in popularity, Cocos2D seems to be decreasing in popularity, and GameMaker is relatively stagnant. Godot (perhaps the most relevant competitor to Defold) is steadily gaining popularity, taking the spotlight from other engines quite significantly. YouTube searches show the same result for Godot.

That leaves us with Defold, which is super glued to the bottom of the popularity chart. It also does not seem to be growing, despite the recent advancements with corporate partners (which I thought would show a boost).

Finally, here is a graph of the same engines over the past twelve months:

Looks like each of them have traded flat for the most part.

This brings up a couple questions in my mind:
(1) What makes Godot more attractive than Defold?
(2) What catalyst(s) are needed for Defold to start gaining traction?

I initially thought that the success of a game engine generally depends on the success of the games made with it, however according to this one cherry-picked anecdotal data point (because I can’t think of any other games to use as an example) of GameMaker and Undertale, this hypothesis doesn’t seem to hold up:

Despite the available knowledge that Undertale was made in GameMaker (also touted on its original Kickstarter) the popularity of Game Maker only continued to decrease, and did not see any boost when Undertale was at its peak popularity.

24 Likes

Godot is a versatile engine suitable for many games, mainly targeting desktop. It offers a lot of tools that are missing in Defold, in general it’s better for hobbyist developers who want to publish their game on Steam. In my opinion Defold provides more value for business developers and targets mobile first, html5 second, leaving desktop not as a priority.
I think the main reason why hobbyist devs choose Godot over Defold is the rendering, how cool a game can look. Godot offers PBR, 3D lighting and 2D lighting. Achieving something similar in Defold is very hard.
The number 2 reason I think is the language, Lua on its own is loosing popularity. While it’s a great choice for mobile and html5, on desktop its advantages are not so important. It’s safe to say that the industry kinda settled on C# for being a goto language for gamedev. Unity, Godot and Unreal all can integrate C# fairly easy. Integrating C# in Defold would drastically increase the build size which is very bad for html5 and mobile.
I would say Defold and Godot have different goals and it’s so happens that Defold’s userbase is just smaller at its core.

If Defold is mainly used by big companies, such trends don’t reflect the big picture. How much money Defold games are generating, how many companies are starting to use the engine? One of the main selling points of Defold is “if King is using Defold, I would too and earn a ton of money with my free2play game.” I think it needs more examples like that.

12 Likes

From my point of view, I think Godot looks more feature packed from the outside. Defold is much more barebone and requires a bit more knowledge of where and how to operate to get certain results.

There are some things that scare away newcomers, like for example the render script or getting the transformed projection coordinates of your input or rendering to a target.
Some of my friends marked Defold as too low level when I mentioned it for these very reasons.
And in a way I find it in contrast with the incredible ease of use of native extensions or building for different platforms. I think sensible defaults and some more ease of use in certain areas should be possible.

C# in Godot is there only to attract Unity users, just like visual scripting (which is a half baked mess). All of the users tend to navigate towards GDscript which is easier to pick up and for which 99% of the tutorials out there are.

There is one thing I really like about Godot: the editor UI toolkit is the same that you use for your game. Getting custom tools that operate in the viewport even with manipulators, etc as well as in game editors is definitely at the hands of even the less experts. An example here:

7 Likes

My experience with Godot was bad. I was overwhelmed with components (nodes) and couldn’t easily adjust simple things I needed, the Editor was really slow on my laptop and I couldn’t get support, only links to existing tutorials that didn’t actually answered my questions. :confused: I still feel lack of some components and possibilities in Defold comparing to Godot/Unity/UE, though still thinking that they will be there soon.

Regarding popularity - yes, Defold is lacking amount of community tutorials, that other engines there have and to be honest - we are just too few here. I have a video in production for like months, but always lacking time to complete it, so I won’t become. YouTuber :joy:

There are still more and more new users, but I see a tendency that we are not answering their questions in a profound and affordable way. Questions that are, indeed, really basic and too generic, but they just want to start make their game - not a tutorial. We all know that’s not the way and sadly have no time to prepare a working example projects as an answer to beginners questions. I know, because many times I want to, but I am lacking time for this :pensive:

So it’s not surprising for me that even Game Maker has more searches. I think tutorials and examples and generally - videos and posts about “I made X in Defold” are most needed, not games made with Defold :slightly_frowning_face:

I never found a mobile game made with Defold on Google Play Store, that I don’t know from the forum (Like Family Age, Pet Rescue, Look! Your Loot) - do you know some? I am following the community closely, but maybe as you are pointing, the corporations or mobile game studios really using the engine, but we are not aware of this? I know the focus is on mobile games, but I rather see more desktop games, so is the focus really proper? @britzl? (You knew I must have called you guys :smile:)

Regarding the point about C# - is there a possibility for it in the future maybe? @Mathias_Westerdahl?

9 Likes

I would really like to make some short very beginner Defold videos at some point, very very basic stuff. I hesitate to do it, because, on the one hand, there are a lot of people out there like me with no programming experience at all, and I think my perspective might be helpful for some of those people getting started, but on the other hand, I worry about reinforcing bad practices in the early stages of learning, since there are definitely a ton of things that I do that are really not good practice, and in a small project won’t be an issue, but in a medium-to-large project might be catastrophic…

4 Likes

The answer to this is quite easy actually. If you have an idea for a video, write out the lesson (including code) you intend to share and post it on the forum before you do any recording so that more experienced users can review it.

Most people don’t have time to make videos, but they will probably have time to give you the green light or offer you some corrections!

10 Likes

Multi texturing should make 2D lighting more reasonable. We can produce examples once it happens.

3D lighting can be done now but it’s not as easy / intuitive as other engines. Takes a lot of DIY. This could be helped by making an opinionated starter project with 3D lighting / starter 3D materials / maybe a few 3D movements like first person, third person, vehicle. I’d wait for 3D mesh collision to do this.

Same with PBR. Technically possible right now, but you need to be an impressive coder to do it. There are no public options yet. There would need to be a public project to do it and make the process as painless as possible (for artists). Same with the above 2 there are some features like tangent that are still missing. I love Defold but honestly speaking if I wanted to make a 3D game today I would be forced to use something like Unreal but maybe by the end of the year that will change.

There are more missing 3D related features which are critical for people who want to make 3D games efficiently such as an official implementation of navmesh (which would also be useful in 2d).

This one is a double edged sword. It gives confidence to big companies wanting to make money. The association unfortunately still sours the taste of indies who remember the past. It should still be marketed as a selling point because the people it sours are never going to change, I’ve tried discussing with people about the issues and they just don’t care, it’s drama for the sake of drama.

We need more clear undeniable hits made with Defold. People need to be making 1,000,000 sales and talking about their success in association with Defold engine/editor. I believe in you all! :smiley:

We need more tutorial series and educational materials that take people from zero knowledge of gamedev to making a full game. We need those materials, and they need to catch on and be widely consumed - they need to be made for market as much as you would make a game for - so they need to implement sexy features and in demand gameplay features of today. It would help if one of the people here who eventually makes another hit works in association with a tutorial maker to produce something which would intrigue the audience of whatever made their hit happen. Helps when the audience is younger / highly interested in the IP.

Until there are multiple desktop focused devs who become Corporate Platinum Partners (this is inevitable but it’s also likely mobile financial supporters still outnumber and outspend desktop/console focused ones) the mobile first direction is the right direction. Bit of a chicken and egg problem maybe, but various devs have already shown all that is needed to make great 2D games for desktop is already in. If the 3D related goals for this year are done then it will be very promising for future 3D games made with Defold happening.

18 Likes

I don’t see us moving towards a third language in the engine, no.
Changing the entire infrastructure to support a second scripting language would be huge and would require a massive rewrite of many parts of the engine.
It feels a bit like the “grass is greener on their side” kind of thing to be honest.

11 Likes

There is a lot of great discussions in this thread and many good ideas and theories on what makes a game engine popular.

I do not have a definitive answer here, but one thing I notice when people are talking about Godot is that IT IS OPEN SOURCE. It is almost as if open source is the only thing that makes Godot good (obviously not true), and that Open Source is some kind of sacred miracle making utopian thing.

Open source definitely comes with a lot of benefits and it can be used to build trust and credibility, but it doesn’t inherently mean that something is better.

We are going to put a bit more focus on the open source message for Defold this year and the fact that the Defold Foundation is the maintainer of more than 50 MIT Licensed repositories. It is still true that the main repository has a non standard license, but it doesn’t take away from the fact that the source is available and that Defold is more than a single source code repository.

In the past we put a lot of focus on the games made with Defold. We had a theory that it is the games themselves that sell a game engine. At GDC we hosted an indie dev booth which we let a handful of teams of Defold developer use to promote their games. We tried similar things at other conferences but it did not make much of an impact for Defold, but hopefully it helped the games and the teams.

I’d like to come back to this question again. There is obviously a lot of overlap between Defold and Godot but also some pretty significant differences. Godot has a much bigger focus on 3D and they seem to be moving towards AAA desktop more than mobile and web. With Defold we have focused a lot of 2D web and mobile. We will keep focusing on these areas, but it will not be enough and we need to become stronger in 3D and desktop as well.

C# support will never happen in Defold, unless someone from the community forks Defold and adds the support themselves.

Yes, this is cool and it’s possible because the Godot editor is made with Godot, which makes this sort of thing much easier to do.

We have some plans to do this ourselves. Short 2-5 minute videos focusing on a single topic per video. It doesn’t have to be super high production quality. It’s better to have something than nothing. And we can always come back and improve the videos later. The Defold Foundation would be very open to a collaboration on the creation of these videos.

27 Likes

It feels a bit like the “grass is greener on their side” kind of thing to be honest.

@Mathias_Westerdahl I thought it might be helpful to have our perspective on the server-side of the game dev space with some anecdotes about Nakama server. We originally launched with Lua support, it was received well enough because the server was new and had a huge amount of features for social, realtime, and competitive games.

We later added Go support which is used by some game teams that have Go or C/C++ development in their background. While the process to work with Go code is not complex I think some game teams have been put off by the need to compile their code to a shared object before it can be loaded at server start up.

Most recently we added TypeScript/JavaScript support to the game server which has had a hugely positive reception. I think it taps into the vast number of developers that have experienced JavaScript as a language with web development over the last decade but what’s most important is that the use of types is a real boon in development. The “discoverability” aspect of searching through the API for what you need and the warnings or errors raised in good IDEs/editors does make a real difference to the day to day development flow.

IMHO the discussion is not really about C# or another language but really about types vs dynamic typing and this is an area which Lua does not make very pleasant. I often wish that there was a TypeScript-style variant of Lua which offered optional type declarations to help catch errors. Even the version of Lua that Roblox has leveraged to great success introduced types though they have never made their work open-source unfortunately - https://roblox.github.io/luau/why

I’m aware that adding optional types to Lua for use with Defold is a huge endeavour and not one that could be taken on with any speed but I thought it would be useful to add our experience of Lua and the game development community from the server side. The final thought I’ll leave you with is that even GDScript that is a custom language specialized for the Godot engine has determined that optional types are useful in the large scale software development processes executed by game teams:

https://godotengine.org/article/optional-typing-gdscript

My 2¢. Hope this helps.

14 Likes

I agree that a typed language is needed. At the moment I am using Haxe with Defold, it’s good, but still there are issues. Again not beginner friendly.

What I really like in Godot is GDNative allowing writing support for various languages. If Defold would provide a first class C++ support (not just extensions, but scripting game objects without Lua API), people would be able to use languages that are compatible with C++ or integrate their own runtimes.

Another issue that slows down Defold development by community is the editor being written in Closure. I tried to extend the editor, but it’s way too hard. I can read the engine source code just fine, but not the editor. I’d really appreciate if there was an easy to extend editor for Defold.

12 Likes

To be honest I think a lot of it has to do with the coding. Unity is definitely coding light, you don’t need nearly as much understanding of software development to make games in Unity. Hence all the videos that are like “I made this game in Unity with no coding experience”. That’s much harder in Defold, but this is in large part because of the way it is designed. Defold is designed to create small game bundles, allow you to create very easily optimised software, and use the same source code for any of the different platforms you can develop for. These goals will always force it’s audience smaller than competitors who’s only focus is a big feature list and accessibility.

In regards to gaining popularity I think the other engines focus on features, irrespective of lacking stability. So if every 3 weeks you put out a post showing “Cool new feature!” then more people are going to be attracted to the engine, but you can’t actually maintain stability and reliability in your system that way.

Additionally, Defold actually has a lot of those features in it’s assets portal. Perhaps when people put together a feature list for Defold they should take into account the assets portal?

9 Likes

I agree - I was so excited that source of Defold was published and was eager to add a lot of my ideas to the editor, but then came on the wall - Clojure :confused: For me it’s the same like for you Sergey, I can read C++ easily, but Clojure looks like magic and honestly, I don’t want to actually learn it, because I see no other usage for it in my case.

While initially I wanted the same from game engines, that I was searching for, when I was a teenager, now I strongly disagree with such ideas - it’s like making a painting without a brush. Nevertheless, can’t deny that people are still looking for such videos and game engines/editors and it is a big opportunity.

This is definitely a strong point! :heart:

Some are outdated, so we need to be careful here, but it is surely a good point as well! :wink:

Regarding video tutorials - maybe we can start a community project to make this easier? :wink: I don’t want to be an ignition here, but perhaps a simple google docs/sheet with ideas would be enough, I guess? We already started tinkering with Defold’s mascots, most of us have some ideas and surely would like to contribute :slight_smile: If some of you are eager too cooperate, we can split the topic :wink:

6 Likes

Newbie here, I just thought I could share my experience. I’ve been learning defold for about half a year, it hasn’t been an easy or quick process, and I still have a long way to go. Whether thats due to my background or not, I can’t say. Finally I’ve grown used to check the docs and forums constantly and, instead of just making prototypes, I’m doing research, studying and learning at the same time, and its even kind of rewarding. But thats not what I had in mind when I started with Defold; I wanted quick results, and I think most people want the same thing.

pawel.jarosz21
Questions that are, indeed, really basic and too generic, but they just want to start make their game - not a tutorial

I think Pawel completely nails it here. Moving from one engine to another is quite frustrating, because things that you could do previously in just a minute now involve checking the docs, forums etc and take waaaay longer. As silly as it sounds, people just want to make games, not actually learn to use the tools required. It might be the wrong approach, but thats human nature I guess.

I had been thinking about this issue all morning and had already written a much longer post, buts lets get to the point instead. The thing that I found most helpful during my learning process were the small examples from the learning page. I was always thinking “If only there was one of those examples for this other thing…” Coincidentally, I think those would also be the easiest learning resources to make.

13 Likes

True. It’s not quite about not wanting to learn - with each game or new feature added to game people are actually learning and can dig further if they want to. So it’s more about laziness or non-pejoratively saying - optimisation. All of us want to get things done quickly and with as low effort as possible. And that’s smart.

Exactly! So what’s really important is a nice learning curve, with ready examples that can be easily added to someone’s project, if “I want to only add X like in that example to my game”. I remember I had some problems with integrating current examples to my project, because it was not so easy. It happened sometimes that I took one project and integrated my project on top of it, because it was faster and easier and working :confused:

Another opportunity I see, that came to my mind and is probably worth considering is that Defold is great for game jams, @benjames171 proves it with almost every game :smiley: And I am thinking about highlighting features that makes it strong here - in order to convince people, that they can easily and quickly made a working game here :wink:


Another thing - we definitely need to have a new, polished, rethinked Getting Started page with a huge square link here:

And in other places like Product page:

People needs a special page where they could start and not look for it.

P.S.: And regarding the Product page, this is a great place to show features (Could be renamed to Features) that we were talking above - and it needs to be made smarter - no bullet points, but examples. The best with quality images/gifs. Godot page is definitely a master piece here: https://godotengine.org/features - I’m “bought” by only looking at those features presentation (though you know, that after all, I am not :smiley: )

9 Likes

Excellent feedback. We will definitely revisit the Product and Learn pages to make them more attractive. Thanks for the feedback!

5 Likes

In order not to be vain in words, I made an example sheet :slight_smile: Everything needs adjustment, but I just wanted to gather all ideas in one place and already added some here :wink: Anyone can comment, and if you want to edit it, please DM me so I will add your e-mail for Editors :slight_smile: This is regarding things that needs to be exaplained to understand what is going on (like what is game object or component or how they work). Rest could be easily recorded with Defold Editor.

It would be great to cover those simple examples from Defold site, because they have already code, working examples on site, so a short video could be easy and great to do!

I think it would be great to add simple, seamless animations like e.g. Ask Gamedev uses - maybe some of you can create or know a toolkit to make such animations? If we could figure out a simple toolchain and way of working on such simple animations, we could add short videos to every example!

Other aspect is voicing - I don’t want to do that, because I am not English native, but I can work on script/scenario, that could be then read aloud and recorded by someone native? :wink:

Another simple to do series could be about our Assets - short explanation and showcase on what could be done with them and how they allow to make awesome things in Defold!

Then another good series to cover (but demanding more thought and work) are very popular videos: How to make X in Defold?

If you like one idea from above, please tell me, I will eagerly cooperate :wink:

9 Likes

I have been thinking about/writing down a “building blocks” video since last night, actually. I’ll post it up if i manage to get through it.

2 Likes

I would like to do a full series on Defold, including explaining its built-in components, APIs, some tips and tricks, building more complex things like platformers, etc. I have been hesitating due to potentially seeing a negligible payoff for the time I put into the videos. If the videos don’t end up getting a lot of views or are not utilized by enough people, then my time would be better spent working on my own projects.

I’ve done stuff like this before, and it has gone very well. However, that was for something unrelated to Defold, and the population of people who were interested in learning the topic was much greater.

Maybe I will try producing a couple videos to start with. If they are deemed good enough and a decent amount of people take interest, then I will continue. Thinking of starting with explaining tilemaps, the tilemap API, tilesources, and related concepts. After that, I’ll try to switch from an “explaining a built-in Defold comonent” style of video to a “explaining how to implement a common gameplay feature,” like standard WASD and diagonal movement in a player script.

These two video types: (1) Video demonstrations of the Defold manuals and (2) video demonstrations of how to actually achieve or implement something cool. The first is boring but necessary, the second is fun but takes more effort to teach. I will try one of each type then see what happens.

12 Likes

I think we need a couple more HIT games $$$ to make Defold trendy. It sets an example and give assurance the engine is robust enough to invest in it.