Chasing 'on-the-fly' updates in mobile games with Pocket Gems

Chasing 'on-the-fly' updates in mobile games with Pocket Gems
James Batchelor

By James Batchelor

August 4th 2016 at 1:31PM

The mobile studio tells us how its using Google's cloud services to dramatically speed up the way it can improve its games

Launching your game on mobile is only the beginning these days. With so many titles adopting the games-as-a-service model, attempting to retain and entertain players for months or even years at a time, updates and fixes begin to take up a significant amount of developers' time.

Larger updates through app stores do, of course, help to fix bugs and add new features but the new to ensure stability with each patch makes the process slower than perhaps devs would like. Some companies believe the cloud has the answer.

Google has been developing its cloud services for mobile and MMO developers to help them make design decisions and changes faster, as well as expanding its analytics offering to better inform these decisions. Studios using these services range from Rocket League creator Psyonix to mobile dev Pocket Gems.

We spoke to Pocket Gems' software engineer Gustavo Ambrozio about how the firm uses Google's cloud services to make 'on-the-fly' updates to its mobile hit War Dragons.

What have been the most useful features when running War Dragons and supporting its community?
The most useful feature that the cloud brings us is automatic scalability. The cloud allows us to release new games and features while not worrying about server infrastructure – a classic pain point when deploying server code.

Traditionally, you need to plan for peak usage time by getting a bunch of servers that are idle most of the time but are needed when you get a large influx of users. Influxes happen during things like promotions, big events or getting featured. Using the cloud, we can get servers when needed and only pay for what really gets used. 

Which player analytics are the most important for you to monitor? Why?
Looking at things like retention at days one, seven and 30 will always be important. You want to know how long your players are sticking around for or what’s causing them to churn. For War Dragons, measuring player activity around our events has become very important. We run multiple events a week to give all our players a fun addition to the regular gameplay. We watch closely to see what kinds of events they like and dislike. 

It’s important to really analyse the data and see what it’s telling you. Knee-jerk reactions to fix something may end up creating larger problems or not addressing the real issue.

How quickly can you implement changes based on findings from these analytics? Why is this important?
We can implement changes pretty much immediately if needed. We’ve built a lot of tech that allows us to release new content, change how the game is played and, recently, even fix crashes. This allows us to improve user experience based on analytics in a number of significant ways. 

What are the biggest challenges of ‘on-the-fly’ game updates?
It’s important to really analyse the data and see what it’s telling you. Knee-jerk reactions to fix something may end up creating larger problems or not addressing the real issue. Tools are only as good as the people using them.

It's also important to keep in mind what happens when you change something in a game that is very social and players interact often. In this case, changing something for one user might break the game for others. We have created mechanisms to make sure that doesn't happen.

What advice do you have for developers running games similar to War Dragons, or using infrastructure/analytics in this way?
Today's cloud providers offer a variety of services, each doing something really well that, when put together can solve many problems. But the architecture of cloud systems is very different from the traditional LAMP stack so it takes some getting used to. Take some time to understand all the services and understand how they can work together before you start your project. Read a few articles and tutorials that explain how to build similar systems. After a few weeks, you'll figure out how to do things the cloud way and you'll be much happier for it.

As more people play games on mobile, the amount of data we collect will keep increasing. Developers need to make sure that the solution they choose to save and analyse their data can scale appropriately. 

Has there been anything (features, tech, etc) that you didn’t have access to or didn’t enable you to do what you needed, and how have you worked around this?
We’re a company that’s made up of a bunch of hacker and mad scientist-types, so having to make our own features and workarounds is a regular occurrence.

When people talk about the ‘limitations’ of the cloud they're mostly talking about the different features and paradigms of this technology compared to the more traditional LAMP-type web stack. But for every one of these ‘limitations’, there are ways around it. The major change is actually that the developer mindset needs to adjust to this new toolbox. Once you get to know the new tools you can pretty much do anything you want. 

How do you see devs’ need for analytics growing/changing over the next few years?
As more people play games on mobile, the amount of data we collect will keep increasing. Developers need to make sure that the solution they choose to save and analyse their data can scale appropriately.

It's hard to predict what the next big thing will be, but automating decisions based on this growing amount of data might be it. Using AI and machine learning to automate game development based on big data is a fascinating idea that could be closer than we think.

You can find out more about Google Cloud Platform here.