Madfinger Games builds console-quality mobile games with Google Cloud Platform

Madfinger Games wanted an infrastructure that could leverage the power of its small staff to build graphics-intensive, console-quality iOS and Android games. It chose Google Cloud Platform for its ability to instantly scale, track individuals' game progress and store vast amounts of user data while requiring little administrative time.

Keeping track of players’ progress

Madfinger Games was founded with a goal to create smartphone games with the same high quality graphics and play as console games. Such complex gameplay requires that user data be stored from session to session, so when games are restarted, users can pick up where they left off. The company was having a difficult time finding the right infrastructure that could handle a large amount of data and scale on demand.

“We wanted users to be able to have a single Madfinger Games account for all of our games,” says Miroslav Ondruš, a programmer at Madfinger Games. “We also wanted to add the ability to migrate their accounts to new mobile devices. Beyond that, we were a small startup, and our team wasn’t large enough to handle all the admin work that was required.”


Helping with user data and game board leaders

Madfinger Games was using its own servers and switched to Google Cloud Platform to host user data and game progress, manage user-to-user communications and handle analytics and games’ leaderboards.

“Google Cloud Platform gave us everything we needed at a reasonable cost — and it is scalable, which was important for us, because we knew that our games would become popular,” Ondruš says.

Madfinger Games relies on Google App Engine and Google Cloud Datastore for hosting users' data, game progress, and managing user-to-user warfare and game tournaments. App Engine sends rewards to players, depending on how well they perform in games. In addition App Engine manages user authentication for logging into games and accounts. App Engine also handles user chats and in-game messaging, which are kept in Memcache, resulting in fast, inexpensive communications. For each user, Cloud Datastore tracks the current state of their games and virtual worlds. When that changes, it is written back to Cloud Datastore.

“Social interactions and tracking game progress are extremely important for the games we produce,” Ondruš says. “So Google App Engine and Google Cloud Datastore are vital for us.”

Madfinger Games uses other GCP services as well, including Google Cloud Storage for hosting games’ downloadable content and web data, and Google Compute Engine for handling the leaderboard server for calculating and displaying the highest-scoring users.

“One of Google Cloud Platform’s biggest benefit for us is its simplicity,” Ondruš says. “We now have a single, unified platform that handles all of our most important work. We don’t need a big team of programmers to manage things, and we can scale up quickly without having to get additional resources.”

Letting developers be developers

Using GCP, Madfinger Games has freed engineers to do what they do best — develop new games and improve old ones. The company can also update its games faster.

“Because our engineers don’t have to spend time in admin tasks, they can focus all of their energy on improving our games,” Ondruš says. “It also lets us solve critical problems on the mobile client remotely without having to release a new version of the client application. We can make quick updates to our mobile apps, which results in better games, fewer problems and happier customers. Maybe most important is that we can focus on the work we love — developing games — rather than updating servers.”