on the shoulders of giants

After working for two years on a C++ gaming platform the company that provided the tools stopped supporting the engine. It was time to look for another engine. I was amazed at how many options were available.

I had a few simple asks: I wanted to keep using the same programming language. I didn’t want to spend time learning a new language when I could spend that time working on games. I wanted the company to have an active community where if a problem came up other people would be able to help. I wanted ready available and easy to integrate libraries for everything I could possibly need. I wanted to be able to build in the cloud on somebody else’s servers.

The last two parts were my most important ask because I was extremely tired of supporting plugins (my previous engine) and dealing with the minutia of maintaining build configurations.

To evaluate the game engines I decided that I was going to use my next project as a measuring stick. So about 2 years ago, I decided I was going to create a casual puzzle game (the type of games I play). Since I didn’t know any of these engines, I was looking for a well-crafted puzzle template.

I wanted a mostly made backend system that I could configure and maybe write a few scripts. I didn’t want to code this from scratch and then maintain it.

I wanted a monetization plugin that was maintained by the company. And once the app grew, I wanted some sort of mediation plugin. I didn’t want to roll my own mediation with a bunch of if/then clauses.

I wanted a way to track installs and a few events.

In general, I didn’t want to start on the ground floor. I wanted to start on the shoulders of the biggest giant that I could find. Corona was and is that giant.

I was and I am still amazed that Corona had in most cases more than one option for whatever need I can think of. Corona has more than a dozen ad providers and at least a few providers of surveys. Corona has at least 5 options for analytics. Corona has at least 3 options for backend system.

As far as a community, Corona forums are always filled with people willing to help.

And yes I know that Corona isn’t C++, but Lua was so easy to pick-up. And yes you don’t have to point out that I did not come up with the term “shoulder of giants”. It was first written to my knowledge by Sir Newton.

The result of my efforts almost 2 years ago is cuadros. It has almost 50K installs as of this writing and about 800 unique users a day. I am using the Admob Corona plugin for banners and interstitials ads. For rewarded ads, I use NextApp, Ironsource and hopefully Vungle soon. I am using Gamespark as a backend. I have used Tenjin and Flurry to track installs and events. I use one signal to send notification on all three platforms. For all these plugins, I don’t have to install or copy or add dependencies. Everything is done for me. Because I am not a build engineer or a server admin or a desktop configurator. I am a game developer.