Sponsored By

The tale of porting No Code's text-based Stories Untold to Switch

When No Code ported the text-based adventure game Stories Untold from PC to Nintendo Switch, the studio had to alter the game's original input method--keystrokes--and make it work for a game controller, among other challenges.

Game Developer, Staff

March 11, 2020

7 Min Read

When developers port games to the Nintendo Switch, changes often need to be made.

The console is less powerful than the competing boxes from Sony and Microsoft, and certainly can’t keep up with gaming PCs, so tweaks to graphics and performance are essential. Its main pitch is its portability, so devs have to optimize their games to look good on 60” TVs and on the handheld’s tiny screen. And, if devs are feeling adventurous, they may even consider adding support for the Switch’s built-in gyroscopic controls.

But, it is rare for a developer to go so far as to change their game’s main mechanic. Yet, that’s exactly what Observation developer, No Code, did when they brought their debut game, Stories Untold, to Switch in January. 

Originally released on PC in 2017, Stories Untold is an atmospheric text adventure that draws on the parser-based games of the ‘80s--think Zork, A Mind Forever Voyaging and The Hitchhiker’s Guide to the Galaxy. Those games relied entirely on text (and sometimes packed-in “feelies”) to evoke a sense of place. To advance their stories, they tasked players with typing simple verb/noun pairs like “open door” into a monochromatic DOS interface.

Stories Untold adapted the text adventure for the modern era. It still asked players to type commands, but it contextualized its stories within a sumptuously rendered 3D world. In one section, you were a player at a computer, watching as your commands impacted the world around you. In another, you were an inexperienced scientist in a lab, learning commands to run tests on an unidentified object. One section tasked you with scrolling through microfiche to interpret Morse code. The context consistently changed, and with it, the environment surrounding your computer. The one constant? You were always pecking away at a keyboard.

But, for the game’s Switch release this year, No Code removed typing entirely. Instead, the studio replaced it with a menu-based approach that wouldn’t look out of place in a point-and-click adventure game. In the Switch version, the player selects from a variety of verbs like “use,” “open” or “go” and then pairs the selected verb with a conditionally available noun. Whereas Stories Untold on PC drew from the adventure games of the ‘80s, Stories Untold on Switch draws from the adventure games of the ‘90s.

“We looked at old Lucasarts games for inspiration, where essentially (and sometimes literally) the player is clicking on words instead of typing them,” said No Code creative director, Jon McKellan.

“You could look at Monkey Island and type ‘Go to Tavern’ and it would still make sense, as if you had clicked ‘Go To’  and then click[ed] on the tavern. It's the same thought process of combining nouns and verbs.  So we felt that input system was the best design for interactions, but not necessarily the right one for the experience. That's why we decided to have the string still type in a more complete sentence. So if you choose ‘Look’ + ‘Car,’ the virtual player would type ‘look at the car.’ It gave it the human element that text adventure inputs allow, and added some character back into the input system. It looks simple, but it was quite an involved process to get that right. The key thing is that the input system we settled on was not only easier to use, but still thematically 'retro' - it's still an old-fashioned way of playing an adventure, even if it's not quite text adventure anymore… We wanted to keep the retro-theme, so [we] looked to the past for answers, as always!”

Of course, altering the game’s core mechanic is an extreme solution, and No Code didn’t start there. The team considered simulating a keyboard, so that players would use the D-pad to select and spell out words. But, it ruined the look and feel that No Code had achieved in the PC version. While it was more ‘faithful,’ it wasn’t fun.

“I had played with some on-screen keyboard designs but it felt even worse. It's no fun typing out a command, letter by letter, slowly, and finding out you spelled ‘look’ wrong or something,” McKellan said.

“Getting something wrong in text adventures is an authentic part of the experience, to be honest, trial and error. But that's awful when the action of inputting is garbage. The other factor was that on screen keyboards tend to take up a lot of space on screen, and it's important to remember that Stories is a 3D environment game with stuff going on, clues to be seen, atmosphere to build. Covering the screen with UI every 30 seconds just demolished the experience… The solution had to be something compact that could be kept out of the way of the world around it and only brought up when it mattered. That's why it's not on the screen all the time either. If we left it on screen for the duration of the text sections, you would assume that the only real gameplay is happening in that box, when that isn't really the case--you are looking at the room for answers too.”

As a result, McKellan said that few alternatives--which included radial menus and context sensitive lists situated along the side of the screen--made it further than quick sketches or mock-ups in Adobe Illustrator. Instead, the team focused on “re-engineer[ing] the entire game under the hood for the text sections,” a serious undertaking that No Code didn’t even begin to seriously work on until after they had shipped Observation in early 2019. This change was a serious undertaking, but it did open up a major opportunity that the parser-based approach of the PC version had precluded.

“The biggest issue is that we couldn't localize the original game with free text input, because recognizing what the player has typed in 12 languages is not easy. We could look for words like ‘open’ and ‘door’ and say, 'Ok the player is opening the door,' even if they typed ‘I would like to open the door.’ However, in Russian, for example, they don't say ‘open’ and ‘door’ as separate words, they have a word for ‘opendoor.’ So we would have to build a unique text parser and game logic for each language, which is hard for any studio and impossible for ours due to size and budget,” McKellan said. 

For context, No Code is just 12 people, and only two or three were working on the port at any given time.

“The pro of this new system was that we could finally localize! Because the nouns and verbs were presented separately rather than in a sentence, we could translate them more literally, and when the virtual player types in the chosen action, that can be localized in a solid natural way that doesn't affect the logic. That's why Switch version is available in 12 languages but PC isn't,” McKellan added. “So that was the major pro of it all. We could create a barrier between the literal input, and the action, allowing us to translate it finally.”

So, in the end, Stories Untold is a slightly different game on Switch. What was once purely a throwback to the text adventures of the ‘80s has, through a necessary mechanical alteration, grown to encompass ‘90s nostalgia, as well. As a result, the Switch version bridges a slight generational gap. But, more importantly, its embrace of a different approach to sentence structure has ensured that its stories can be told in many languages, instead of just one.

Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like