Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Reverse engineering Animal Crossing's developer mode (jamchamb.github.io)
180 points by beefhash on June 10, 2018 | hide | past | favorite | 20 comments


I really enjoyed reading this as Animal Crossing had a big impression on me as a child. It was engaging and full of character, but didn't have the same structure as other adventure/platformer games I had owned. It opened my eyes up to how interactive media could feature content that was exploratory, rather than goal-oriented.

A few weeks ago, a coworker said they were surprised about Minecraft's enduring popularity, as its gameplay seemed somewhat "pointless" to them. I think games like Animal Crossing help show that games don't necessarily need to exist as an existential need or pastime, and that their value can come from simply allowing your to express yourself in some space. Or, The Elder Scrolls has had a lot of enduring popularity, and I think a lot of that comes from making a character and casually having fun.


Wow, what an excellent post!

It reminds me of Temporal Flux, an editor for SNES game Chrono Trigger that is so elaborate that entire new games were created with it.


The debug code (up down up down left left right right B+A start) looks really similar to the Konami code (up up down down left right left right B A start). It's like the debugging equivalent to "don't forget to drink your ovaltine".


I'm assuming they changed it just enough that normal players wouldn't find it by accident.


Even Konami varied it some between games.


Find the post interesting.

Wonder anyone know how the environment should be ... 1) Buy IDA which ver? 2) somehow Load the rom from ... how?


1. Whichever version of IDA supports PowerPC (probably the paid one)

2. It's not a single file "ROM" in this case - you'd take a disc image you either created yourself or somehow acquired, convert it to ISO, then extract the .dol files for analysis.



TL;DR using a second controller in port two to enter:

(L+R bumper & Z), D-UP, C-DOWN, C-UP, D-DOWN, D-LEFT, C-LEFT, C-RIGHT, D-RIGHT, A+B, START

Unlocks the GameCube animal crossing debug mode without requiring a modded disk/console.

Makes you wonder what other games have hidden key combos yet to be discovered.


Jak and Daxter had a debug mode that was only found recently, too: https://jadtech.miraheze.org/wiki/Debug_Mode


Interestingly enough, this is the same key combo used to show information on a crash in several N64 games, including Doubutsu no Mori (the original N64 version of Animal Crossing).


It's based on the Konami code [0] a version of which made it into a mouldy peaches song [1]

[0] - http://contra.wikia.com/wiki/Konami_Code

[1] - https://www.youtube.com/watch?v=ceV62E-c86g&t=92


I didn't even notice it was a derivation of the Konami code until you mentioned it.


This is awesome. I love reverse engineering software. There is something so magical about it. I once spent a whole summer reverse engineering crackmes but never moved to actual software hmm.


What are crackmes?


Small binaries that employ a reduced set of programming/anti-debugging/obfuscation/etc techniques. Sometimes you have an idea what sort of techniques you're up against, sometimes you don't but you have a general idea of difficulty. In all cases the idea is that the possibility domain is bounded and smallish rather than completely unknown.

The idea is you conquer progressively more complicated crackmes and this helps you learn how to tackle random binaries you'll find in the wild.

Generally the step up after crackmes is to find virus payloads/samples and try and unravel those. I understand Stuxnet uses some of the most complex techniques to date: https://www.symantec.com/content/en/us/enterprise/media/secu... (ref: https://news.ycombinator.com/item?id=17099969, also https://news.ycombinator.com/item?id=2212922)


Thanks for sharing! I got lost on my way after crackmes and ended up exploring other topics, but I may have to revisit virus samples :)


Assembly language is still on my todo list (slooow starter, heheh).

I have an old DOS game I kind of want to kill the collision in so I can play it with my terrible coordination :P

(This is the game: https://www.old-games.org/games/willy - this particular site all is in Hebrew, but it's the only one with this particular version of the game - take a look at the yellow subtext immediately under the title in the screenshot ;P)

Btw, FWIW: I'm roughly around the Sydney area, if I'm interpreting your name right. If Google isn't utterly off base, maybe you're in Brisbane or NSW...? (Many matches for your name, didn't want to take chances poking all of them)


Amazing post! Makes me want to get into ROM hacking :)


amazing work




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: