That's hilarious that you give the villagers thought and the first thing they want to do is overthrow Tom Nook. If this works in Gamecube on an emulator, surely it'd be possible to make it work on the Switch emulators as well?
This is awesome. LLM-powered NPCs is one thing I'm most excited about in the future of gaming. Characters repeating the same scripted dialog over and over again is one of the biggest immersion breakers.
Extremely interesting use case. LLMs as a modding tool to recontexualize virtual spaces. I can see this being a tool used for artistic intervention in the same vein as plunderludic tools like Unity Hawk which allows you to run emulator save states in Unity3D.
https://plunderludics.github.io/tools/unityhawk.html
There's something about taking old games and injecting new life into them that just seems so fun and exciting! Also very interesting to know that the Animal Crossing codebase has been decompiled into readable C code. Fascinating! So many opportunities to mess with it.
This is amazing. Well done figuring out the shared memory hack. That's a huge time saver and really makes sense from an engineering perspective. Ten dollars for the hammer and five thousand for knowing where to strike the machine, to paraphrase a trope on expertise applied correctly.
The idea of giving every character this sort of agency and seeing what opinion builds up about the world is incredibly fascinating.
Depending on how well we assume an LLM would do at this task, it’s an interesting way to see what “real people” would think about a very hypothetical situation.
> The game runs on a Nintendo GameCube, a 24-year-old console with a 485 MHz PowerPC processor, 24MB of RAM, and absolutely no internet connectivity.
In fact, Nintendo did release an official add-on called the Broadband Adapter, which plugged into the bottom expansion port and provided an Ethernet jack. Only a handful of games supported it, one was Phantasy Star Online. I also used it to stream games/roms from a PC. This worked by exploiting a memory vulnerability in Phantasy Star Online to load arbitrary code over the network, though with slower load times compared to running from disc.
Many years ago there was a project in which researchers swapped localization strings to turn The Sims and Grim Fandango into language practice experiences. Generative dialog that is contextual and skill-appropriate dialog could also be a killer application for language practice.
To me LLM are one of the greatest advancement in gaming. I don’t understand how there isn’t already any big game that’s using it to have ‘live’ npc.
It would make single player game so much more alive, even railroaded one like red dead redemption because the npc could adapt more easily to what you just did, how you behave in game and so on.
Games are already demanding on gpu, running a very tiny local LLM and only when people interact with npc wouldn’t require so much power.
I’m sure there are issues which explain why it’s not already being used but the first one to do it will be remembered.
But also, why couldn't you look at the code to find the addresses used for dialogue? If it's already disassembled I would think you could just look at the addresses used by the relevant functions/set a breakpoint etc.,?
This feels like the future of gaming: community-driven mods where AI brings infinite new dialogue and quests. Imagine if Nintendo leaned into this instead of fighting mods.
It always felt both "a cheap shot" and "valid" to express dismay that characters in video games don't react when you do things like jump up and down on their table.
While it's impossible for game developers to write code to cover every situation, AI could make general reactions possible.
It's surprising that really simple things like this haven't been tried yet (AFAIK!). Like, even if it's just the dialogue, it can still go a long way.
Doesn’t the GameCube already have a network interface? Like something called phantasy star online used it for internet, and you can connect multiple GameCubes for 16 player Mario kart I believe.
One thing I didn't quite understand from the writeup is how do you how much space you have in the memory "mailbox" for text. What is your maximum text length?
This is so cool. It opens up a whole new dimension to messing with old video games where AI can change things like how characters move, loot box contents etc.
That's super cool! Really funny how quickly they turned into stereotypical country dwellers: mainly spending their times gossiping about each others or getting all worked-up on right-wing propaganda about places they'll never go to.
This is what I and I'm sure many other gamers/gamedevs thought when LLMs/ChatGPT first came on the scene:
Dynamically-generated dialogue. Device-local models designed for games could be trained on the game's lore and given a different style for each NPC, and react to the player's random actions instead of blurting out canned responses each time.
I'm sure if the genre-starting veterans like Richard Garriott or Roberta Williams were still active in the industry they'd definitely want to use something like this. Imagine a King's Quest or Monkey Island where you could literally type or try anything and get a relevant response! instead of just "nope"
I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory
(joshfonseca.com)857 points by vuciv 10 September 2025 | 185 comments
Comments
I was intrigued as to how it would intercept a conversation and then pause the game for long enough for the LLM to return a response, so I used https://gitingest.com/vuciv/animal-crossing-llm-mod to dump the 40,000 tokens into Claude Opus 4.1 and asked it: https://claude.ai/share/66c52dc8-9ebd-4db7-8159-8f694e06b381
The trick is the watch_dialogue() function which polls every 0.1 seconds and then answers with placeholder text: https://github.com/vuciv/animal-crossing-llm-mod/blob/cc9b6b...
So the user gets a "press A to continue" button and hopefully the LLM has finished by the time they press that button.Depending on how well we assume an LLM would do at this task, it’s an interesting way to see what “real people” would think about a very hypothetical situation.
In fact, Nintendo did release an official add-on called the Broadband Adapter, which plugged into the bottom expansion port and provided an Ethernet jack. Only a handful of games supported it, one was Phantasy Star Online. I also used it to stream games/roms from a PC. This worked by exploiting a memory vulnerability in Phantasy Star Online to load arbitrary code over the network, though with slower load times compared to running from disc.
The online generation is neat... but not necessary or important?
Replacing the polling with a lookup table would significantly improve the performance, and be much simpler.
It would make single player game so much more alive, even railroaded one like red dead redemption because the npc could adapt more easily to what you just did, how you behave in game and so on.
Games are already demanding on gpu, running a very tiny local LLM and only when people interact with npc wouldn’t require so much power.
I’m sure there are issues which explain why it’s not already being used but the first one to do it will be remembered.
But also, why couldn't you look at the code to find the addresses used for dialogue? If it's already disassembled I would think you could just look at the addresses used by the relevant functions/set a breakpoint etc.,?
While it's impossible for game developers to write code to cover every situation, AI could make general reactions possible.
It's surprising that really simple things like this haven't been tried yet (AFAIK!). Like, even if it's just the dialogue, it can still go a long way.
https://github.com/jmarshall23/Quake3LLM
jmarshall23 is a beast, with tons of interesting id tech-based projects.
LLMs in games is something I excited about.
The evil subtext in Animal crossing:
https://lparchive.org/Animal-Crossing/
Dynamically-generated dialogue. Device-local models designed for games could be trained on the game's lore and given a different style for each NPC, and react to the player's random actions instead of blurting out canned responses each time.
I'm sure if the genre-starting veterans like Richard Garriott or Roberta Williams were still active in the industry they'd definitely want to use something like this. Imagine a King's Quest or Monkey Island where you could literally type or try anything and get a relevant response! instead of just "nope"
Here's the big one that made the rounds in Feb/2021:
OpenAI GPT-3 Powered NPCs: A Must-Watch Glimpse Of The Future (Modbox)
https://youtu.be/jH-6-ZIgmKY