A deleted feature from Animal Crossing for the GameCube would have let you play a library of 8-bit Nintendo Entertainment System games off of your memory card, a passionate and talented fan of the game found out this week.
The original Animal Crossing had so many memorable moments. There was the dog that performed concerts at night, the mole who yelled at you for resetting the game too much or turning it off without saving, and the cruel, loathsome raccoon banker who remains one of Nintendo’s all-time great villains.
But even better than all of these things was the fact that you could find tiny NES consoles to put inside your virtual house, which would let you play a handful of classics such as Donkey Kong or Balloon Fight. In the days before Virtual Console on the Wii, this was a rare opportunity to revisit the classics on modern hardware.
Over a decade later, software security researcher James Chambers has discovered that not only can the emulator in Animal Crossing play pretty much any NES game you throw at it, it seems that the game itself actually supports that as a feature, although Nintendo never ended up releasing any ROMs that work with it.
This week, Chambers shared his discovery in a lengthy, and at points very technical, blog post.
What he found using Dolphin, a GameCube emulator, was that in addition to playing the pre-loaded games, the NES emulator in Animal Crossing was also designed to search whatever memory card was plugged into the system for other ROMs.
As a result, not only could it be used to play almost any other NES game by pre-loading it onto the memory card, but the memory card could also be used to run custom code in the game.
“It has been verified to work on a real GameCube, although I don’t think there are any videos of it online yet,” Chambers told Kotaku in an email. “I need to set up the ability to copy files from my computer to a GameCube memory card before I can try it myself.”
To play NES games normally in Animal Crossing, you need to own the corresponding pieces of furniture, little NES consoles with a particular game cartridge sitting on top. However, there’s one NES console item that’s generic. It doesn’t have a game sitting on top, and when you try to interact with it a dialogue box pops up saying you don’t have any software for it.
It turns out that when you do this, the generic NES console is actually scanning the memory card for ROMs. Nintendo never actually introduced a way to obtain extra games for the NES, but Chambers figured out how to put them onto a memory card in a format the game recognises. If it finds them, you’ll actually get a different dialogue option that reads, “Would you like to play [name of the game]?”
The bulk of Chambers’ post goes into how he reverse-engineered the file format that the games needed to be in so Animal Crossing would recognise them. After pinning that down, he managed to get the NES game Mega Man running as well as some other games. Battletoads didn’t immediately work, but after finessing the file a bit, he was able to get it to run beyond the title screen.
While the emulator can theoretically read any NES ROM, Chambers said that some games such as Battletoads shipped with unique cartridge setups that would require some fine-tuning to get them functioning properly.
Beyond just being able to use Animal Crossing as a full-on NES emulator, the interesting part for Chambers is how the memory card could be used to hack the game and add new content to the physical version.
“My personal goal for using a finding like this was to be able to create a modification of the game, like adding in some new holidays or mini games, and be able to play it on a real GameCube,” he said. “That’s possible now that code and data can be loaded into a regular copy of the game with just a memory card.”
Having examined the inner workings of the game, Chambers thinks Nintendo planned to add more classic NES games to Animal Crossing than the 19 existing ones.
“They already put a fully working NES emulator into the game, so adding the capability to load more games in with a memory card wasn’t much more work, and would’ve allowed them to possibly sell or give out promotional copies of these memory-card based NES games,” he said.
Nintendo did end up doing something similar with the Nintendo e-Reader add-on for the Game Boy Advance. It allowed you to scan cards to add new items or levels to games such as the not at all confusingly titled Super Mario Advance 4: Super Mario Bros. 3.
Of course, there were also e-Reader cards specific to Animal Crossing, some of which would unlock particular NES games such as Ice Climber that couldn’t be gotten any other way.
It’s possible that Animal Crossing’s previously unknown ability to read executable code from the memory card might have been a similar attempt at a workaround for adding content to already-shipped games prior to consoles being connected to the internet.
Fortunately, even if Nintendo never ended up exploring the feature in more depth, there’s little doubt homebrew programmers and hackers will now use Chambers’ discovery to do just that.