Live data from Hacker News

I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

joshfonseca.com

71–80 of 198 posts

Re: I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

#71

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.

I'm unsure how useful they'll really be honestly! In many situations its very useful to know when your "done" talking with an NPC when they start repeating lines etc... There could probably be cool uses but I don't think it will be a pure "upgrade" as the repeating dialog is kind of a feature honestly. We'll have to see how it pans out xD

There are many different types of NPCs. Consider e.g. Minecraft villagers, that doesn't have a story-purpose, but do serve functions such as trading that could also be augmented by dialogue details.

But even for story-driven games, you can signal when you're "done" extracting story-related details in various ways, by e.g. prompt the NPC to include dialogue element A,B,C when it fits the conversation, keep track of which were output (you can make it output a marker to ensure it's easy to track even if the dialogue element has been worded differently), and have it get annoyed and tell you it doesn't have more to tell you or similar as the repetition adds up.

Re: I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

#72
I love projects like this. And I love my OG Game Cube - time to dust it off from the attic and put it pride of place.

LLMs in games is something I excited about.

The evil subtext in Animal crossing:

https://lparchive.org/Animal-Crossing/

Re: I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

#73
post #65

Earlier quoted context omitted.

I guess you could just introduce a Symbol that marks the NPC as "I said everything I have" or gray out their text, or some other visual marker

> a Symbol that marks the NPC That seems a bit like deck-chairs on the Titanic. The hard part isn't icon design, the hard part is (A) ensuring a clear list exists of what the NPC is supposed to ensure the user knows and (B) determining whether those goals were received successfully. For example, imagine a mystery/puzzle game where the NPC needs to inform the user of a clue for the next puzzle, but the LLM-layer botch…

You prompt the LLM to point out that the clue will be added as is to the conversation, but for the LLM to include a marker instead of the actual text to ensure that actual critical details are included unchanged.

EDIT: Also, having the LLM botch a clue occasionally could be a feature. E.g. a bumbling character that you might need to "interrogate" a bit before you actually get the clue in a way that makes sense, and can't be sure it's entirely correct. That could make some characters more realistic.

Re: I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

#74
post #49
post #5

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?

LLMs are heavily trained on reddit, and "Tom Nook is a capitalist dictator if you think about it" is a reddit meme. Like many LLM reactions, it's less "thought" and more "regurgitating reddit jokes/opinions".

Actually, it turns out that this particular plot arc was hardcoded by the developer and does not spontaneously arise from the LLM. https://github.com/vuciv/animal-crossing-llm-mod/blob/cc9b6b...

Re: I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

#75
post #29

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.

This is a fairly "common" technique for doing multiplayer randomizers. Typically on a smaller region, but you end up with some sort of scratch memory being used as a buffer for messages sent back and forth between the emulator and the network layer (or your flash cart's RAM and the network layer, in the case of FXPakPro!). It's super useful.

Re: I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

#76

[flagged]

Presumably the author encountered it by accident and then thought it was an amusing contrast with the Animal Crossing setting.

Yes I get it the LLM is trained on current news. But it's in very poor taste for the author to post that screenshot.

Re: I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

#79

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.

I'm unsure how useful they'll really be honestly! In many situations its very useful to know when your "done" talking with an NPC when they start repeating lines etc... There could probably be cool uses but I don't think it will be a pure "upgrade" as the repeating dialog is kind of a feature honestly. We'll have to see how it pans out xD

It would require a completely different design to video games.

Current video games are designed around streamlining content. As a player, your job is to extract all content from an area before going to the next. That's why most areas are designed as linear corridors so that there is a straightforward progression, and most NPCs interactions are meant to offer something meaningful so as to not waste the player's time.

But imagine if interaction with NPCs wasn't just a content delivery mechanism, but instead could sometimes be rewarding, sometimes useless, dynamically adjusted in how you interact with the world in non-predictable ways.

The player would just waste their time in their usual approach of canvasing each new area, which would become unsustainable. There would be no reliable way of ensuring you've extracted all the content. All he/she could do is roam around more naturally, hoping the glimpses they catch are engaging and interesting enough.

Maybe a new player skill would be to be able to identify the genuine threads of exciting content, be it designed or emergent, within the noise of an AI-generated world.

Realistically though, how do you build an exciting player experience with this framework? A starting point might be to approach it as something more akin to LARP or improvisation theater, you'd give each NPC and player a role they need to fulfill. Whether players actually enjoy this is another thing entirely.

Re: I replaced Animal Crossing's dialogue with a live LLM by hacking GameCube memory

#80

What is the in-game context that decides what dialogue is used? Or do they just choose at random from a dialogue bank?

Outside of holidays and special events, they do indeed choose randomly from a dialogue bank. There’s actually multiple dialogue banks, one for each villager personality type.
Post reply on HN