Beamable Case Study - PuzzleNation

We catch up with Fred Galpern and Russell Miner to learn how they are building a Live Games in Unity 3D

Beamable had an opportunity to talk with Fred Galpern, Director of Digital Games, and Russell Miner, Technical Lead, about how the team at PuzzleNation is using Beamable to build live games faster.

What’s the brief history of PuzzleNation? How did it get its start?

PuzzleNation started in the mid-2000s with the goal of offering digital solving experiences utilizing licensed puzzle content from Penny Press and Dell Magazines. Initially, PuzzleNation was a subscription website containing several Flash puzzle games. In 2013 the website was transformed into a marketing site as PuzzleNation began offering mobile apps for iOS and Android devices. PuzzleNation has released many apps over the last 8 years, with two notable successes - Daily POP Crosswords and Penny Dell Crosswords.

What initially interested you in Beamable as a solution for live game features and tools? What were/are your primary goals for Beamable?

We were looking for a way to create the “table stakes” type features that a modern mobile app requires, without having to pay the large development costs required to reinvent them. These features tend to require complex robust back-end services, along with client-side systems, not to mention an ongoing cost to monitor and maintain those services. As a small developer, we are faced with the unhappy choice of leaving those features out or having to invest less in the gameplay and features that make our product our own. Beamable offers a third option, which is to provide fully functional features or features that require less of our development time to get them in front of our players.

The first feature you implemented with Beamable was login. What drove the need for federated login in your game? What did it look like to implement this feature?

As we wanted to give Beamable a try, we decided that the shortest path was going to be incorporating it into our live Daily Pop Crosswords product, and seeing how things worked out. Our plan was to, over time, add new Beamable features as makes sense for that product. This led to the natural first step of choosing login/identity as our first feature to integrate.

This decision was further encouraged by two more factors. Firstly, Apple Sign-In was a looming requirement. While we had found means to implement this with a lone third party script solution (and did so in our non Beamable sister app Daily Pop Word Search), this felt a bit kludgy and is ultimately not extensible. Secondly, our only means of authenticating a user prior to Beamable was via the Facebook plugin for Unity. Facebook itself was being questioned in the media every day, and our reliance on this as our only means of authentication of a player identity was becoming untenable. Thus utilizing Beambale login provided us with both a proper first-party authentication means, as well as a bevy of other authentication providers to give more choice to our players.

If this had been a brand new, unreleased App, we would have had a working login and identity system up and running in literally minutes, but our integration presented a few challenges. There were essentially three major issues.

First, our app was live, and as mentioned, already utilizing its own Identity system. This system supported zero first-party authentication scenarios, and one-third party: Facebook Login. We would have to figure out a way to have the Beamable Identity and the PuzzleNation Identity live happily together, all while upsetting as little as possible for our existing players.

Second, Beamable Identity provides players with the means to swap identities on devices, even switching back and forth between identities, even local-only ones. This ability was not something that we had in our app, and much of the coming integration was spent making our game support this reorganization of data.

Third, Beamable’s login interface, which we knew we did not want to re-invent, was written using Unity’s most recent UI systems. Sadly, our app used a third party UI system called NGUI, which was quite dated. Our challenge here was to devise a way to have them interact with each other in a passable way and get the Beamable interface to adopt insofar as possible the look and feel of the existing app.

The details of solving all these problems are long, varied, and honestly took quite some time to resolve. The lion’s share of this work was spent on the adaptations to our app to support multiple identities. We worked regularly with Beamable engineers to map out plans of integration, sometimes making feature requests of Beamable. And when we got close to each other, in the integration process, we would do co-development sessions online to work through issues. As an early partner with Beamable, we also pushed some of the boundaries of how far some of their systems could go, such as their UI Skinning system. During those times we iterated with Beamable team members to get to a place that was acceptable to us for our needs.

In your opinion, what is the best thing about Beamable? What do you hope Beamable can help you with the most now and in the future?

When considering making a mobile game, the table stakes of many features are a hurdle that is almost too high for a small team to overcome. Once a team decides they aren’t going to take on the burden of rolling their own back end infrastructure, then often the choice comes down to a few middleware providers that still only take you to 50%. They may provide say, cloud storage, but you are still rolling your own inventory system that leverages that cloud storage. Beamable is attempting to provide a solution to game-specific and mobile-economy-specific problems all within Unity and have that solution start at 90%, sometimes even 99%. This frees us to develop our game and not another inventory infrastructure. I am hoping that Beamable can continue to provide useful game-ready solutions, at as close to that 99% as possible, and do so with a reasonable price tag for a small studio.

Learn how Beamable can help you!

Download our Unity SDK and build on Beamable today!