YaGames - Yandex.Games SDK for Defold

YaGames is the Yandex.Games SDK extension for the Defold game engine.

What is Yandex.Games? It is a collection of HTML5 games for smartphones and computers. The games are available in Yandex Browser and the Yandex app. Games from the catalogue are displayed in Yandex recommendation systems, which have a total audience of more than 50 million users per month.

You can check here the size of Yandex.Games audience. The platform is constantly growing. It’s a great opportunity for Defold developers to publish their HTML5 games!

The only requirement of Yandex.Games is to implement its SDK. It’s straightforward to do with this extension. Also, it’s an excellent idea to translate your game into the Russian language. And the title, too. 99% of the audience is Russian-speaking.

Feel free to ask any questions. I’ll help you as much as I can.

Where to start:

The source code of the extension is on GitHub:


The SDK version 0.3.0 is released, which added support of Yandex Native Cache.

By the way, Yandex.Games’ MAU is 11M now, and it means that it has an incredible 250% YoY growth rate!

If anyone releases a game on Yandex, consider adding “defold” to the game’s Keywords list to find all games made with Defold:




Hi, this is excellent… I will give it a go…

1 Like

Looking at the categories on the left, it looks like right now is a very good time to try and target some of those underserved niches before they get as flooded as some of the others. Card, Casino, Economy (Zero!!!), and RPG have very few games listed. Publish some Defold made ones!!

  1. Translate your game to the Russian language.

We have worked with https://www.fiverr.com/brightsiderus multiple times now for games translation from English to Russian and every time native speakers have praised the quality.


Yes, your point is absolutely right! There are not so many quality games, and it’s easy to be featured in “Our choice” category and get lots of traffic for free - send an email to the moderators.

*In fact, not all games have English translations, and you should look at the Russian version of the portal with the .ru domain. For example, the economic games category.


That’s a good catch. Russian version still has only a few RPG ones. I remember when I tested a while ago a lot of the games had not very impressive quality. Don’t sleep on this opportunity people! And the same game you make for Yandex Games can be published on other Instant game platforms / as a web game / as a mobile game.

Also interesting that Russian version has some unique categories / is lacking some. For example, Russian side has a Masculinity category. Very interesting!

@marat.giliazov Could you add a “defold” keyword to your Catapult game so it shows up in the search?


Ok published my game on there…Hopefully it is implemented correctly… I put the defold keyword in there as you suggest… any idea aglitchman how long it will take…


It usually takes 1-3 days.

Click “File verified” to test your implementation and your game:


Have to say so far they are very quick at testing things… twice tested, each time within a day.

One issue that is remaining is that the game is running very slowly… Something it does not do when I run it in my GameDistribution build.

When I press F12 I see this “requestAnimationFrame” issue.

Attached is my adverts.script I tried to keep it as simple as possible… I have builds for Yandex, Game Distribution and Unity.

adverts.script (7.4 KB)
DEV_OUT is just print statement that runs in my developer mode.

In the project settings I added these lines…
sdk_init_options = { orientation: { value: “landscape”, lock: true } }

I have tried uploading my GameDistribution version to Yandex… and that runs at normal speed.
I also downloaded your test demo app.

Wondered if you could have a quick look at my script ?


You uploaded the Debug build of your game to Yandex.Games. It runs slow, obviously, and you get these messages.

1 Like

ok thanks for spotting that… :slight_smile:
I just need to solve why it doesnt pause when the adverts come on.

Is this something Yandex Games does for you? Otherwise you can detect an ad playing and set the update rate of the collection proxy of the current screen to 0 to pause it while the ad is running.

1 Like

I figured it out - thankyou.
I was calling the ad from my main menu proxy… before calling the game proxy.
The time step was only happening occasionally. So I assume the ad would sometimes come in fast when the main menu was still present… and sometimes slowly when the game proxy had loaded. This must have affected the callback as the main menu was unloaded.
When I moved the ad into the init() of the game proxy things were fixed.
So it had to do with the nature of an async callback.


Would be handy if the sitelock add_domain function allowed for partial domains.
I was going to use this solution also for game distribution.com . :slightly_smiling_face:


Have you seen https://github.com/subsoap/domainlock for site locking? You can pull out any part of it that’s useful in your game to use. :slight_smile:


I will take a look indeed Sir. Thanks.


If you add the domain “example.com”, the sitelock checks that the current hostname equals “example.com” or ends with “.example.com”.

And it’s a bad idea to use YaGames outside Yandex.Games platform.


yup, I have separate builds for the two.
The game is released now… . So thanks for the plugin. :slightly_smiling_face:

I added the “defold” keyword… There are three defold listed now on Yandex


I like them all!
Good job to you all :clap: