Skip to content

Piero Bosio Social Web Site Personale Logo Fediverso

Social Forum federato con il resto del mondo. Non contano le istanze, contano le persone

LLM Dialogue In Animal Crossing Actually Works Very WellIn the original Animal Crossing from 2001, players are able to interact with a huge cast of quirky characters, all with different interests and personalities.

Uncategorized
1 1 0
  • LLM Dialogue In Animal Crossing Actually Works Very Well

    In the original Animal Crossing from 2001, players are able to interact with a huge cast of quirky characters, all with different interests and personalities. But after you’ve played the game for awhile, the scripted interactions can become a bit monotonous. Seeing an opportunity to improve the experience, [josh] decided to put a Large Language Model (LLM) in charge of these interactions. Now when the player chats with other characters in the game, the dialogue is a lot more engaging, relevant, and sometimes just plain funny.

    How does one go about hooking a modern LLM into a 24-year-old game built for an entirely offline console? [josh]’s clever approach required a lot of poking about, and did a good job of leveraging some of the game’s built-in features for a seamless result.

    In addition to distinct personalities, villagers have a small shared “gossip” memory.
    The game runs on a GameCube emulator, and the first thing needed is a way to allow the game and an external process to communicate with each other. To do this, [josh] uses a modding technique called Inter-Process Communication (IPC) via shared memory. This essentially defines a range of otherwise unused memory as a mailbox that both the game state and an external process (like a Python script) can access.

    [josh] then nailed down the exact memory locations involved in dialogue. This was a painstaking process that required a lot of memory scanning, but eventually [josh] found where the game stores the active speaker and the active dialogue text when the player speaks to a villager. That wasn’t all, though. The dialogue isn’t just plain ASCII, it contains proprietary control codes that sprinkle things like sounds, colors, and speaker emotes into conversations.

    The system therefore watches for dialogue, and when a conversation is detected, the “Writer” LLM — furnished with all necessary details via the shared memory mailbox — is asked to create relevant dialogue for the character in question. A second “Director” LLM takes care of adding colors, facial expressions, and things of that nature via control codes.

    [josh] even added a small bit of shared “gossip” memory among all villagers which keeps track of who said what to who, and how they felt about it. This perhaps unsurprisingly results in a lot of villagers grumbling about just how much currency flows directly to Tom Nook, the raccoon proprietor of the local store.

    A very clever detail pointed out by [Simon Willison] is how [josh] deals with the problem of the game expecting dialogue to be immediately available at the given memory location. After all, LLMs don’t work instantly. Turns out [josh]’s code makes clever use of a built-in dialogue control code that creates a short pause. Whenever a dialogue screen opens, a few short pauses ensure that the LLM’s work is done in time.

    If Animal Crossing isn’t retro enough, or you prefer your LLMs to be a little more excitable, AI commentary for Pong is totally a thing.

    youtube.com/embed/7AyEzA5ziE0?…


    hackaday.com/2025/09/30/llm-di…


Gli ultimi otto messaggi ricevuti dalla Federazione
  • @tfb it was! And I was so surprised!

    read more

  • Dopo 16 anni passati con noi la mia piccola Margot questa sera ha passato il Ponte dell'Arcobaleno.
    Ciao piccola pazza, grazie di tutto il tempo passato assieme.

    read more

  • Zapp: There's only one surefire way back into a woman's heart and
    parts beyond. I speak, of course, of Karaoke.

    read more

  • @DarioZanette ah per quello, MAMiL come se piovesse, tra l'altro odiati da pedoni ed altri ciclisti urbani tanto quanto dagli automobilisti.

    read more

  • GIORNATA DI ARTIVISMO

    Domenica 22 marzo, dalle 14:30 alle 23:00, presso LOCK - Laboratorio Occupato Kasciavìt, Via San Faustino 62, Milano

    UNA GIORNATA DI ARTIVISMO

    🗓️ (questa) Domenica 22 marzo dalle 14:30 alle 23

    📍@collettivo_kasciavit - Via S. Faustino 62 - in occasione del Mercato Lockale

    Dove siamo? Come stiamo? Cosa desideriamo?

    Come rete di Artivismo ci siamo posti queste e altre domande per creare insieme una giornata dedicata all’Arte resistente dove condividere pratiche e parlare di espressione, dissenso creativo, utopie e immaginazione.

    Nel corso del pomeriggio, fino a tarda sera, si alterneranno reti, collettivi e artistə che abitano le arti con valenza politica: dalla fotografia al fumetto, dal rap all’electropunk, dal teatro alla poesia.

    ✨ Con Andrea Bellaroto · Apollineo · ArT* Festival · Casa per la Pace · Freevan · Hurricane Ivan · Inmotulus · Kamera Lab · Mattia L. · Nebüla · No Kings Milano · RAVE OVER · Rete No CPR · Rocks Against Fascism · Scate · Tempi DiVersi · Timidoceleste · Una Finestra Sbagliata

    🍽️ Fermati a cena! Troverai un apertivo/cena vegan per smangiucchiare tutto il pomeriggio, a sostegno delle spese dellə artistə e dei collettivi presenti.

    Ti aspettiamo!

    🎨 @grafica_x e @ele_vi

    read more

  • @crc i can't find description of Pali on your site.

    nevermind, this language is pretty straightforward. i would read sequences of insructions like "lisuli" and interpret them as phrases.

    read more

  • @RnDanger @tess that's a good idea, «How much care goes into avoiding strain on the affected part.» as a gauge of the pain (at least where possible, so not for teeth abscesses, probably, but now that you make me think about it it's probably why‌ I decided to go get an Xray of the wrist when I fell down skating).

    read more

  • I have the following set in my .kshrc to do exactly that.

    # coloured man pages
    man() {
    sh -c "man '$@' | col -bx | bat -l man"
    }
    read more
Post suggeriti
  • 0 Votes
    1 Posts
    0 Views
    Zapp: There's only one surefire way back into a woman's heart and parts beyond. I speak, of course, of Karaoke.
  • 0 Votes
    1 Posts
    0 Views
    GIORNATA DI ARTIVISMODomenica 22 marzo, dalle 14:30 alle 23:00, presso LOCK - Laboratorio Occupato Kasciavìt, Via San Faustino 62, MilanoUNA GIORNATA DI ARTIVISMO🗓️ (questa) Domenica 22 marzo dalle 14:30 alle 23📍@collettivo_kasciavit - Via S. Faustino 62 - in occasione del Mercato LockaleDove siamo? Come stiamo? Cosa desideriamo?Come rete di Artivismo ci siamo posti queste e altre domande per creare insieme una giornata dedicata all’Arte resistente dove condividere pratiche e parlare di espressione, dissenso creativo, utopie e immaginazione.Nel corso del pomeriggio, fino a tarda sera, si alterneranno reti, collettivi e artistə che abitano le arti con valenza politica: dalla fotografia al fumetto, dal rap all’electropunk, dal teatro alla poesia.✨ Con Andrea Bellaroto · Apollineo · ArT* Festival · Casa per la Pace · Freevan · Hurricane Ivan · Inmotulus · Kamera Lab · Mattia L. · Nebüla · No Kings Milano · RAVE OVER · Rete No CPR · Rocks Against Fascism · Scate · Tempi DiVersi · Timidoceleste · Una Finestra Sbagliata🍽️ Fermati a cena! Troverai un apertivo/cena vegan per smangiucchiare tutto il pomeriggio, a sostegno delle spese dellə artistə e dei collettivi presenti.Ti aspettiamo!🎨 @grafica_x e @ele_vi#musica #mercatino #laboratorio #interventi #intersezionalità #fotografia #MusicaLive #Poesia #Teatro #banchetti
  • 0 Votes
    1 Posts
    2 Views
    - Marescia' ci hanno rubato la gazzella!- Ma porc... Ma come si fa? E non avete fatto niente!?- Niente paura, marescia', abbiamo preso il numero di targa!
  • L'energia solare è fantastica

    Uncategorized
    11
    1
    0 Votes
    11 Posts
    6 Views
    @DarioZanette ah per quello, MAMiL come se piovesse, tra l'altro odiati da pedoni ed altri ciclisti urbani tanto quanto dagli automobilisti.