Nintendo Removes Game From Switch Shop After Developer Reveals Secret Code Editor

Nintendo Removes Game From Switch Shop After Developer Reveals Secret Code Editor

Last Friday, game developer Amir Rajan posted online about a secret he’d left in the Switch version of the text-based role-playing game A Dark Room: the game contained a code editor that could create no-frills apps. Later that same day, Nintendo removed the game from the Switch eShop.

Rajan, who ported the 2013 game to mobile and then to Switch, revealed the secret two weeks after A Dark Room’s Switch release, on April 26. All you had to do to access it, he said in a thread on Mastodon, he was connect a USB keyboard to the Switch, open the game, and press the “~” key.

Players would then gain access to an interpreter and code editor rooted in the Ruby programming language. This, Rajan said, “effectively turns every consumer spec-ed Nintendo Switch into a Ruby Machine.” He also requested that people “please boost” this information.

Here’s a video of the feature in action, courtesy of YouTuber Grabman:

Rajan said his goal in including this code editor was to help young players learn the joy of coding.

“I got into coding because I wanted to create games,” he wrote in the thread. “Doing that back in the 90’s was difficult. No internet, expensive computers, and fragmented compilers. This is not the case today. But because of shit bag companies, we end up with game dev ‘solutions’ that are just as obtuse. We’ve replaced no internet, low level, complicated C with 2GB clicky-draggy-droppy IDEs that phone home and mine data. A Dark Room’s Easter Egg is an attempt to capture the magic of coding in its purest form.”

Apparently, Nintendo was not pleased by Rajan’s covert magic-smuggling operation, because A Dark Room disappeared from the Switch eShop shortly after Rajan posted his mini-manifesto.

The game’s publisher Circle Entertainment issued a statement about the situation to Eurogamer.

A Dark Room was removed from the eShop on 26th April, and we learnt of the likely reason for its removal through the weekend,” Circle wrote. “We’re liaising with Nintendo to clarify on the next steps and will deal with the matter accordingly; they are regretful circumstances and we apologise for the issue. We have always worked hard to carefully follow Nintendo’s processes and terms throughout our history of publishing on DSiWare, 3DS eShop, Wii U eShop and Nintendo Switch eShop, and we’re sorry that there has evidently been an issue with this title.”

Kotaku reached out to Rajan, Circle, and Nintendo for more information, but has yet to receive a response.

Rajan has said that he regrets how this all shook out. He told Eurogamer that he had purposefully hobbled the code editor to the point that all it can do is draw lines, squares, and labels, play sounds from the game, and detect button presses.

“You can’t even render an image with the damn thing,” he said. But he also noted that “yes, if your app is composed completely of labels, squares, and lines (like A Dark Room), then it lets you build an app without having to perform any hacks.” Nintendo, in all likelihood, did not love that part.

Rajan went on to partially blame himself for “sensationalising” the power of the secret feature in his initial thread, but he also believes that “the narrative that has played out online” contributed to misunderstandings about what the mode actually did: “Everyone is an armchair expert. Everyone thought the worst. You’ve seen that I’ve been called a dick, idiot, and everything in between.”.

He believes the game and the code editor would’ve been allowed to stay in the eShop if it had been presented and understood to be a sandbox that “lets you mod the game and provide a medium for kids to code.” Rajan said he further regrets that these insults and misunderstandings have also splashed onto the game’s publisher, describing the last three days as “the worst days of my life.”

“I acted alone and stupidly,” he said. “It was a last second ‘spark of inspiration,’ and I snuck it in assuming that plugging in a USB keyboard and pressing the ‘~’ key wasn’t part of the test plan … I deeply regret how this has blown up.”


  • Does this even count as a “noble thing to do?”

    i mean surely there are different ways to entice interest than supplying a backdoor..

  • I can kind of understand Nintendo’s reaction here: even if the dev has attempted to restrict the kind of code that can be executed, it can be very difficult to do so for a dynamic language runtime that wasn’t built with that as a goal.

    I don’t have a deep knowledge of Ruby, but for Python you can get access to most of the runtime from a simple integer constant as a starting point. And if there is a fault in the dev’s sandboxing, it could potentially be used as a load an entirely new game over the top of the original (e.g. for loading pirated games off an SD card).

    It also seems like a particularly stupid thing for Rajan to do, since he was not just risking his own income: there’s a publisher who presumably fronted the porting costs, and the game’s original developer who might be due a cut of profits too.

  • “Rajan said his goal in including this code editor was to help young players learn the joy of coding”

    Yes he totally picked the correct way to go about doing this, by sneaking it into a game and telling people about it on the sly, I’m sure there was no other way.

    • Gods have a cup of tea and try to remember being a child once 😛 This article made me smile and sad all at once, Its an easter egg “Yep i said it” And really if some kid or many found this tried it and found a love of something from it.. THEN AWESOME!

      The cynical part of me that hates life says pfft go Nintendo. Gods why did i comment.

Show more comments

Comments are closed.

Log in to comment on this story!