Cookies Disclaimer

I agree Our site saves small pieces of text information (cookies) on your device in order to authenticate logins, deliver better content and provide statistical analysis. You can adjust your browser settings to prevent our site from using cookies, but doing so will prevent some aspects of the site from functioning properly.

Stairway to Heaven

Ladies and gentlemen, this blog has been truly long in coming. We're finally happy to be able to give you a behind-the-scenes look at the road that has brought us to our selection of UNITY as the primary middleware we're going to use for Pathfinder Online.

A bit of housekeeping before we begin. Our Kickstarter is now in its last days. It has been a tremendous ride, and the team is pushing as hard as we can to complete the funding goal. Our partners at Paizo have bent over backwards to support the Kickstarter and we cannot thank them enough. A wide range of other people and organizations have also lent their assistance in ways large and small. We'll have a full account after the project ends, but we wanted to particularly note the efforts of Reaper Miniatures in connecting us to their huge community of Kickstarter backers, and of WizKids for working with Paizo and Goblinworks to ensure that we could produce the special Pathfinder Battles miniatures featured in the Kickstarter.

Good Times Bad Times

When I first approached Lisa and the Paizo team about making Pathfinder Online, a big part of my initial pitch was that the way MMOs were going to be developed in the future was markedly different than the way they had been developed in the past. For most of the history of MMOs, the developers had custom-built almost all the software the comprised the game: the software that ran on player's computers (the client), and the software that hosted the game (the server), and every aspect that tied the two together.

Over the past 15 years or so, many of these problems have been reduced to reasonably well accepted solutions. One of the results of that body of knowledge is that some companies have begun to package their specific solutions into software tools, often called "middleware," that can be licensed by developers, allowing a team to skip the tedious process of reinventing the MMO wheel for each new game.

I broadly categorized these tools according to a few factors that I felt were the most critical in evaluating them.

First, the tool set had to have been used in other games; we could not afford to be anyone's guinea pig.

Second, the software had to be of reasonably high quality. It will be inevitable that we'll have to dig into the middleware code and make changes; our ability to do that with confidence is a direct expression of how well written the original code is.

Third, we wanted middleware that encapsulated as much of the MMO ecosystem as possible. The more of these aspects of the game we could buy "off the shelf" from one vendor, the less code we would have to write, and the more likely the code would work smoothly across all these aspects of the project. There is no middleware platform that actually does all this; it was a Platonic ideal.

Fourth, we wanted to be able to tap into a large community of developers who were familiar with the software.

Fifth, we wanted a great partner. We needed to find a middleware vendor that was as open and transparent with us as possible, and we intend to reciprocate.

When the Levee Breaks

The first thing we did was a thorough evaluation of the various options available. We wanted to understand the strengths and weaknesses of as many platforms as we could.

We decided to build the Technology Demo with BigWorld, a solution that looked good in our initial testing and offered a broad set of components on both the client and server side. A big plus in favor of BigWorld is that it is in use by several live games, and one of those games is breaking records for player participation and growth. While were negotiating a full license from BigWorld, we worked on the Technology Demo using a trial license. In August, an announcement was made that Wargaming, BigWorld's best customer had acquired BigWorld, and within a few weeks it became clear that the resulting strategic choices of the combined company made it impossible for us to complete a licensing deal for Pathfinder Online.

That was a tough blow, but Goblinworks thrives on taking what life throws at us and overcoming. We regrouped and pivoted to another option we'd also been examining: Unity.

The Song Remains the Same

Unity has a simple and easy licensing scheme. They have lots of folks working on projects, so there's a large community of developers, and the strengths and weaknesses of the platform are well understood. There are several benefits that we immediately realized from using Unity: the quality of the client rendering engine is better, and the tools provided by Unity and further developed by many third parties are world-class.

BigWorld had strong server-side capabilities, but we knew we'd want to hire and dedicate a team of engineers to working on the graphics engine if we were to use them. With Unity, those needs were reversed; the graphics engine is fantastic, but we will need to have a team of engineers working on server-side tools. That actually plays to our team's strengths: Goblinworks CTO Mark Kalmes developed the server-side technology that Cryptic uses for its games, so this is a problem domain he understands at least as well as anyone in the industry.

Unity provided us with the test environment we needed, and for most of November and December, our team reconfigured their processes and procedures (the "pipeline") to use it. We reimplemented much of the Technology Demo in Unity so that we could see side-by-side comparisons, and gain firsthand experience with the tools. We're really pleased by that work, as the Unity-powered version of the Tech Demo looks better than the previous version.

I'm pleased with our final decision. Unity is a great partner to work with. They have created a tremendous community of developers and publishers using their code, and they're riding a wave of success that's rare in this space. You're going to see a LOT of Unity powered games in the next few years, including several that were successfully Kickstarted, including Project Eternity from Obsidian Entertainment, Wasteland 2 from inXile, and Shadowrun Returns from Harebrained Schemes.

Your Time Is Gonna Come

Unity is well known for great cross-platform support, and without question, the first thing people ask when they learn we're going to use Unity is "will [my favorite platform] be supported?"

We announced on Monday that we're going to support OS X. That's huge, because the Mac gaming community is growing by leaps and bounds, and a lot of folks at Goblinworks and Paizo Publishing, including yours truly, are dedicated Mac users!

We're going to be evaluating all the other platforms that Unity makes it possible for us to target. We'll keep the community updated as we explore these options and weigh their pros and cons.

Whole Lotta Love

It feels great to be in the Unity fold. It's even better to be able to finally talk about all this with our community. Goblinworks is dedicated to the idea that we want to be extremely transparent, and getting the Unity deal done means we can take down a barrier between us and the community.

We learned so much about the options available and got real hands-on experience with such a wide range of software that we are now really clear on the pros and cons of our platform in ways that we couldn't have been under other circumstances. And we have made a lot of friends and contacts in the industry that are already turning into gold. I've observed a lot of karma in my life, and I know that even when the short-term deal doesn't work, a good relationship often proves its worth in unexpected ways over the long term.

Directly below my blog entry is a companion blog from Mark that focuses on the more technical side of working with the Unity technology. If you're interested in the nuts and bolts of the software, I highly recommend it!

Discuss this blog on paizo.com.