[HN Gopher] Show HN: Tool-Assisted Speedrunning the Boring Parts...
___________________________________________________________________
Show HN: Tool-Assisted Speedrunning the Boring Parts of Animal
Crossing (GCN)
I recently dug my Nintendo GameCube out of storage to revisit the
first Animal Crossing game. Things were mostly as I remembered, but
the game's heavy reliance on a clunky on-screen keyboard quickly
wore my patience thin. Unwilling to accept this subpar experience,
I did what any rational person would do and ordered a rare, Japan-
exclusive, keyboard/controller hybrid on eBay, then used a
Raspberry Pi Pico to 1. listen for keypresses and 2. send simulated
controller events to the GameCube, automating typing in Animal
Crossing at a Tool-Assisted Speedrun level. Of course, this
oddball controller's keycaps didn't map perfectly to Animal
Crossing's in-game character set, so I watched a 10 hour FreeCAD
tutorial at 2x speed, then modeled the 7 keycap profiles to create
81 custom, 3D printed keycaps, taking care to include even the most
esoteric Greek and Old English characters that Nintendo chose to
include in the game. And then, having solved my original problem,
I decided to sniff out some new ones. I used my homemade TAS device
to automate the entry of customizable "Town Tune" melodies, took
advantage of a cracked encryption algorithm to give on-demand
access to (almost) every item in the game, and, in a Club-Mate-
fueled haze, whipped up a Python script to convert arbitrary images
to the game's 32x32 pixel custom design format. Even at superhuman
speed, those 1024 pixels took about 3 minutes to input, but that
didn't stop me from extending the concept to video - playing Rick
Astley's "Never Gonna Give You Up", Bad Apple!, Shrek, and even a
short gameplay video of DOOM very, veryyyy slowly (about 7.5 hours
to render 30 seconds of footage at 5fps). Then, realizing that
DOOM at 0.0056fps probably wouldn't be the most "playable" thing in
the world, I set out to get some kind of video game running within
Animal Crossing, and ultimately landed on Snake. Since it only
needs to update 1 pixel for every frame of animation, I was able to
get Snake running at around 1ish* frames per second (for technical
reasons, it runs at a variable framerate). Maybe not the most primo
experience the modern gaming world has to offer, but without a
doubt, _technically_ a video game. It even has its own, in-memory
high score ranking (so far I 'm undefeated). The code and design
files are distributed for free on GitHub[0], and a
build/demonstration video[1] is out now on Youtube. [0] -
https://github.com/hunterirving/pico-crossing [1] -
https://www.youtube.com/watch?v=Yw8Alf_lolA It started as a
"quick, simple project", then quickly ballooned into 7 or 8 "quick,
simple projects", but I had a ton of fun putting it all together.
Thanks for checking it out!
Author : hunterirving
Score : 147 points
Date : 2025-06-12 13:37 UTC (1 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| geoffpado wrote:
| I've never played the original Animal Crossing, but this is neat!
| You're basically hacking quality-of-life improvements into an old
| game running on original hardware.
| hunterirving wrote:
| Thanks! Yeah, I was surprised how much utility I could get out
| of it without directly modifying the game or console
| themselves. The first Animal Crossing has this great, simple
| charm. I would definitely recommend it!
| dilDDoS wrote:
| This is so cool and impressive. I loved the original Animal
| Crossing but also feel like the clunky keyboard input hasn't aged
| well. Thanks for sharing!
| hunterirving wrote:
| In a way, I'm glad the OSK was so tedious, since it drove me to
| create this whole crazy project. Thanks for checking it out!
| dylan604 wrote:
| This is the most ridiculous expenditure of time in the most
| hackerish way and I love it! It was a very interesting way to see
| a game I had never played, and after seeing this, I'd never want
| to play it without this hack.
| hunterirving wrote:
| Yes! That's exactly what I was going for :-) Glad to hear you
| enjoyed it!
| xp84 wrote:
| You are absolutely mad, in the most wonderful way possible. And
| great video as well. Just astonishing how much work went into
| this, out of what I can only assume is pure hacker spirit.
|
| I played a lot of this game a long time ago, and I completely
| agree that anything that required using the OSK was incredibly
| tedious.
| hunterirving wrote:
| That's exactly it! The hacker spirit definitely took over on
| this one. I guess it did take a lot of work, but IMO the
| absurdity of going this far adds to the humor of it all. So
| glad to hear you enjoyed the video!
| benrutter wrote:
| I love how much this keeps on going. Faster typing? Check! But
| what about image upload? Check! Ok, now what about video somehow?
| Check! Ok, what about a video game inside the knitting UI?
| dylan604 wrote:
| To keep it relevant, using some AI to help make the best
| pixelated images was the chef's kiss moment
| hunterirving wrote:
| It seemed like a pretty logical progression to me! I half
| considered adding a two-player mode to the Snake game, but of
| course that would be ridiculous.
| hnlmorg wrote:
| I have one of those ASCII keyboards too. They're awesome.
|
| Though I use mine for Phantasy Star Online (PSO) rather than
| Animal Crossing.
|
| Amazingly, there are still PSO servers available which are still
| very active. All the more impressive when you think that Sega
| discontinued their official servers around a decade ago.
| hunterirving wrote:
| I've been meaning to try that out as well. I recently picked up
| the FlippyDrive Deluxe, which comes with an ethernet
| connectivity kit. I think the software only supports using it
| to transfer files over a local network for now, but the idea is
| that eventually it'll be usable for online play.
| agold97 wrote:
| i love love love animal crossing
| hunterirving wrote:
| Same! It's such a special game. There's something about the
| original that the newer ones never quite recaptured. Maybe it's
| the slightly rougher edges that give it character.
| askl wrote:
| For a second I assumed you'd be Hunter R. [1]
|
| Maybe you should do a collab.
|
| [1] <https://www.youtube.com/@Hunter-R.>
| hunterirving wrote:
| I'm a big fan of Hunter's work! His videos definitely informed
| this one. I would love to do a collab given the chance.
| b0a04gl wrote:
| snake at 1fps is probably the most cursed form of patience
| training i've seen.
| hunterirving wrote:
| Could this be a new hit game genre? :-) I'm not sure it comes
| across in the video, but it's actually surprisingly fun. I say
| "1ish fps", but it actually runs at a variable framerate -
| faster when the snake's head and tail are closer together, and
| slower when they're further apart. This means that, on your way
| to the next apple, you can try slithering close to your tail
| for a short speed boost. It can be a little risky, but I think
| that adds to the fun.
| b0a04gl wrote:
| honestly that's way more design depth than i expected from a
| cursed snake clone. dynamic pacing tied to head,tail distance
| is kind of genius. an actual tension mechanic.
| mlaux wrote:
| This is so cool! AC and ACWW were a huge part of growing up and I
| dare say have a little impact on who I am today. Back then, I
| went on Tumblr's AC community and found all the little debug
| menus but didn't know how MIPS worked at that point to go any
| further. <3
___________________________________________________________________
(page generated 2025-06-13 23:01 UTC)