Stoic’s The Banner Saga originally grabbed attention in a 2012 Kickstarter campaign, thanks to its distinctive, hand-drawn art style and its promise to wrap a tactical turn-based game in a player-driven narrative. When it released on desktops in 2014, it garnered plenty of critical acclaim for its overall execution.
While work continues on The Banner Saga 2, the original wasn’t forgotten. This month, two years after the game’s release, publisher Versus Evil launched the original game on PlayStation 4 and Xbox One (additionally, the game is available on iOS). Here’s John Watson, Stoic co-founder and technical director on how the studio, along with developer Shiny Shoe, brought The Banner Saga from PC to consoles.
How do you get started planning out a PC to console port for a game like this?
There are three big things to consider.
The first is design. How do you make your game fun and playable with a console controller? Fortunately, this part can be entirely designed, tested, implemented, and iterated on PC using a game controller. In fact, we released Banner Saga's gamepad support on Steam over six months before our console release. This allowed us to get some feedback and make some adjustments and improvements.
The second is technology. How do you get your game up and running on the unique technology platforms of the consoles? If your game is based on a portable core engine like Unity, then a good bit of this work has been done for you. Otherwise you have to figure out which parts of your game and engine are not portable, and abstract them in a way that is.
The third is publishing. How do you work with the first party platform holders (Microsoft and Sony) to get your game certified, tested, promoted, and published? These activities require a lot of your attention and there are many details that must be addressed. Each of the first party platforms has its own quirks and unique requirements that you need to learn. It's worthwhile to have someone on your team who is dedicated to being the producer and overall liaison for these tasks. For our project, our publisher Versus Evil took point on this.
What kind of technical considerations did you have to take into account? What was the biggest technical hurdle?
The Banner Saga engine utilizes Adobe AIR, which made it easy to port to mobile (iOS and Android), but more difficult to port to consoles. We chose to go the route of putting the game engine, almost unmodified, inside a code wrapper that performs on-the-fly translation into the idioms of the target platforms (PS4, XB1, PS Vita, etc.). On PS4 and XB1 this wrapper is called Autodesk Scaleform.
Our engine architecture allowed us to integrate our fully animated characters into the game much more quickly, and to integrate our graphical user interfaces directly into the game code. It allowed us to launch on PC, Mac, iOS, and Android quickly. When we started the project, Unity wasn't as mature as it is now. Clearly, a project starting off today would benefit from using a core engine that supports as many target platforms as possible (such as Unity).
Did the fact that you use your own engine contribute to any porting complications?
Yes, using Scaleform as a wrapper for such a large project is something that had not been tried or accomplished before. We were really pushing the boundaries of what Scaleform could handle in terms of complexity, scale, and performance. Fortunately, Autodesk has been helpful and responsive in dealing with issues.
"For developers in general I would strongly recommend: Do not rely on any software technology or engine for which you do not have the source code."
The root cause of complications, however, is the fact that the underlying core technology, Adobe AIR, is a total black box completely under Adobe's control. There is no way to obtain source code for their technology. You are at Adobe's mercy when it comes to bug fixes and feature improvements. For our project, I don't think we could have launched as quickly as we did using any other approach. However, for developers in general I would strongly recommend: Do not rely on any software technology or engine for which you do not have the source code.
Can you describe the playtesting process and how you fine-tuned the game for console?
We started the design process by enlisting the help of a third-party UX expert. They provided us with an overview of their suggestions, and a basic controller 'vocabulary' for our game. After that I developed the controller technology and in-game implementation and design fine tuning.
Once the implementation was complete, we relied heavily on Sculpin QA, one of our partners, to test and provide feedback. Then, we launched the game on Steam almost a year ago. This allowed us to shake out any remaining issues and gather feedback. Finally, before we locked down our console builds, we submitted the game to a third-party independent mock-review agency. They played the game and provided detailed critiques of the game and the controller scheme, and provided insight to how players and reviewers would react to the game. Based on this input, we created a list of things we would like to improve upon. We estimated the difficulty of each improvement and decided which of these improvements was worth spending the time and money on. These improvements then went into the final console build. Eventually we will back-port these improvements into the PC build and into Banner Saga 2.
From business and production perspectives, do you feel it was worth porting over to console platforms, and would you do it again?
Absolutely worth it. Even though our own process took twice as long and cost twice as much as we had budgeted, it is still only a fraction of what it cost to make the game in the first place. Why spend all the effort making a game and stop short of putting it out on as many platforms as possible?
Also, we feel strongly that The Banner Saga has something special and unique to offer console gamers, both as a turn-based strategy game and as a cinematic story experience. We set a high quality bar for ourselves with this game, and I think it really comes off well as a console living room experience.
Any tips for devs who are thinking about bringing their PC games to consoles?
The biggest lesson I learned, the hard way, is that you need to rigorously hold your contract porting houses to their milestone schedules. Wishful thinking led me to let the milestones keep slipping, and led me to make milestone payments before I should have. It is easy to get trapped by a 'sunk cost' mindset and keep convincing yourself that a slipping schedule is going to magically reverse trend. If you fire the porting house, you know that you are going to have to sink more money and time into finding and hiring a new one, and ramping them up. In hindsight it would have cost us less time and money to rip the band aid off as soon as things started slipping. After that initial struggle, we were able to finally partner up with Shiny Shoe, who has really knocked it out of the park for us.
As far as tangible tips go: Use something well-known like Unity. Hire a porting house that has lots of experience and published games. Don't be afraid to pay a little bit more for an expert team; sometimes you really do get what you pay for.