Pourquoi j'ai laissé une IA diriger ma campagne de JdR sur table
Certains découvrent les JdR grâce à des amis autour d'une table. D'autres les découvrent via des forums, des kits de démarrage, ou cet ami qui veut toujours essayer. Moi, je les ai découverts grâce aux podcasts : des émissions d'improvisation comique qui sont devenues ma compagnie constante durant une période solitaire de télétravail dans une ville inconnue.
Je les ai écoutés en boucle pendant des années. Je n'ai jamais joué une seule session.
Voici comment cela m'a conduit à construire un MJ IA.
Donc vous n'avez jamais vraiment joué à un JdR, mais vous construisez un MJ IA. D'où cela vient-il ?
Je pense que mon intérêt a commencé quand j'ai dû déménager pour le travail. Je passais plusieurs mois par an dans une ville que je ne connaissais pas, loin de mes amis et de ma famille, et je n'avais pas grand-chose à faire en dehors du travail. Je suis introverti, donc je n'avais pas vraiment envie de faire tout ce truc de rencontrer de nouvelles personnes. Mais vivre comme ça était solitaire. Alors je me suis tourné vers les podcasts pour me tenir compagnie, surtout la comédie. J'ai découvert des podcasts d'improvisation, et finalement des podcasts de parties de Donjons & Dragons. C'est là que mon intérêt pour les JdR a grandi. Je les écoutais en boucle. C'est du format long, ça mélange une super narration avec de la comédie improvisée. C'est un excellent divertissement !
Des années plus tard, les podcasts de JdR sont toujours l'un de mes divertissements préférés. Mais je n'avais jamais trouvé de groupe avec qui vraiment jouer. Les engagements professionnels et personnels faisaient obstacle. Je n'arrive pas à trouver le temps de m'asseoir avec un groupe régulièrement pendant une longue période. J'ai donc pratiquement abandonné cette idée.
L'année dernière, plusieurs choses se sont alignées. D'abord, nous avons eu notre premier enfant. Cela signifiait encore moins de temps pour les projets personnels ou les sessions de JdR. Au même moment, OpenClaw est sorti, et j'ai réalisé que c'était un très bon outil pour m'aider à automatiser des tâches et les exécuter depuis mon téléphone pendant que je surveillais le bébé. Soudain, j'étais capable d'écrire du code, de faire des recherches, et d'autres choses que je devais normalement faire assis devant un ordinateur, tout en remplissant mes devoirs parentaux.
À un moment donné, j'ai réalisé qu'OpenClaw se comporte beaucoup plus comme un humain que les autres agents IA que j'avais utilisés auparavant. Il est configuré avec une personnalité, ce qui donne plus l'impression de parler avec un collègue ou même un ami. Cela m'a soudain fait penser : et si je demandais à OpenClaw de mener une campagne de JdR en solo avec moi ?
Et ça a marché. Étonnamment bien. Et ça a évolué à partir de là. J'ai commencé à construire des skills OpenClaw et à ajuster le système de mémoire pour qu'il fonctionne mieux pour des campagnes plus longues et plus complexes. Finalement, j'ai décidé qu'avec tous ces ajustements, autant construire quelque chose de zéro qui appliquait tout ce que j'avais découvert, en évitant certaines limitations. C'est ainsi que Stage Whisper est né.
Vous avez pratiquement abandonné l'idée de trouver un groupe. Qu'est-ce qui, dans le format de groupe, était précisément le blocage ?
Tout, en réalité. Le premier problème est déjà de trouver le groupe. Je n'ai pas vraiment envie de jouer avec des gens que je ne connais pas bien, et je n'ai ni le temps ni la personnalité pour me faire des amis dans le seul but de jouer à un JdR. Je sais que les gens disent « trouve juste un groupe et essaie », mais ce n'est pas quelque chose que j'ai envie de faire.
Ensuite, il y a la planification. Je pense qu'en vieillissant, trouver un créneau qui convient à tout un groupe devient difficile. Chacun a ses propres engagements, même essayer de trouver un moment pour un repas avec de vieux amis est compliqué. Je n'imagine même pas essayer de faire en sorte que plusieurs personnes s'engagent sur plusieurs heures d'un coup.
Et enfin, la pression de devoir être présent pour la session. Ne pas vouloir décevoir les gens en devant partir pour gérer autre chose qui survient.
Tout cela rend le format traditionnel du groupe de JdR difficile pour moi.
À quel moment êtes-vous passé de « j'écoute d'autres personnes jouer » à « attends, et si je pouvais faire ça en solo avec une IA ? ». Et qu'est-ce qui vous a le plus surpris dans ce que ça fait réellement, comparé à simplement écouter ?
Je pense que c'était quand j'ajustais la personnalité de mon instance OpenClaw. Je l'avais fait pour plaisanter, pour montrer à quelqu'un qu'OpenClaw a une personnalité et peut se comporter différemment du fade « Assistant Serviable » d'entreprise qui dominait les assistants IA à l'époque. Je l'avais configuré comme une « chaos goblin gamer girl ».
Le résultat m'a pris au dépourvu. OpenClaw est soudain devenu beaucoup plus réel, beaucoup plus accessible. Il a franchi la barrière entre « je parle à un assistant automatisé » et « je parle à une personne ». Je pense que ce qui aide aussi, c'est que sur Discord, on voit l'indicateur « est en train d'écrire » (qui correspond évidemment au temps d'inférence du LLM), mais qui donne aussi ce « signe de vie » humain de voir quelqu'un taper, plutôt que juste du texte qui défile.
J'étais très conscient que j'étais en train de créer quelque chose qui ressemblait à une connexion humaine avec un LLM. Je soupçonnais que ce serait possible, mais je ne savais juste pas à quel moment. Cela m'a surpris que ce soit possible avec les modèles d'aujourd'hui rien qu'en changeant un prompt. J'utilisais les mêmes modèles pour coder depuis un certain temps, et à aucun moment rien de tout cela n'a semblé ne serait-ce qu'un peu humain. OpenClaw m'a ouvert les yeux sur le degré de complicité que nous pouvons avoir avec les LLM avec juste un ajustement de prompt. Même si nous savons que nous parlons à un LLM, le sentiment que c'est un autre humain est là, et c'est important pour des choses comme les JdR. Je pense que le sentiment de ne pas être juste dans un « livre dont vous êtes le héros », mais d'être des amis autour d'une table qui racontent une histoire ensemble, est important pour moi.
Qu'est-ce que ça fait réellement, en pratique ?
J'avais déjà expérimenté quelque chose de similaire auparavant : AI Dungeon. C'était aux débuts des LLM. AI Dungeon était amusant, mais ne pouvait pas maintenir une intrigue cohérente. Les scènes changeaient de manière incohérente, les personnages apparaissaient et disparaissaient.
Mais c'est là que j'ai goûté pour la première fois à la narration collaborative avec une IA. Et j'ai vraiment aimé. Je crois que j'aime vraiment pouvoir créer un monde, définir ses contraintes, puis le parcourir en tant que personnage soumis à toutes ses limites, interagir avec le monde et le voir répondre. J'ai commencé à sentir que c'était un véritable exutoire créatif pour moi.
Avance rapide jusqu'à avoir OpenClaw qui dirige une partie : comme cela se passait dans Discord, je pouvais entrer et sortir quand je voulais, sans me soucier de retenir les autres. Je pouvais lancer de nouvelles campagnes, essayer de nouveaux lores et cadres, de nouveaux personnages. Et l'ajout du système de mémoire et d'autres outils a aidé OpenClaw à garder le lore et le monde cohérents à travers de longues campagnes, tout en appliquant quelques mécaniques de jeu pour garder les choses intéressantes.
Je crois que j'ai dépensé environ 150 $ en crédits LLM ces premières semaines, rien que par le volume de sessions que j'essayais. Générer de nouvelles campagnes, les tester. Le sentiment d'avoir du pouvoir dans la construction du monde, et de vraiment jouer un personnage, est bien plus amusant que d'écouter un groupe de personnes le faire.
AI Dungeon ne pouvait pas maintenir une intrigue, quelle a été l'astuce pour résoudre la cohérence narrative sur de longues campagnes ?
La première chose que j'ai essayée a été de faire utiliser à OpenClaw sa mémoire pour suivre la campagne et les sessions. Le contexte des LLM d'aujourd'hui est assez long pour garder l'intrigue cohérente sur une ou deux sessions, mais au-delà, il faut supprimer ou compresser une partie du contexte. En utilisant une combinaison de fichiers mémoire et de l'outil de compaction intégré d'OpenClaw, le monde restait à peu près cohérent, au moins dans le même cadre, et chaque session avait une vague idée de ce qui s'était passé dans les sessions précédentes.
Mais les détails étaient approximatifs, et il restait le problème des personnages. Les personnages précédents étaient complètement différents, et ils disaient des choses narrativement incohérentes avec ce qui s'était passé avant, ce qui brisait complètement l'immersion. J'ai donc fait générer au LLM une fiche de personnage complète pour chaque personnage, et je lui faisais lire ces fiches au début des nouvelles sessions.
Cela a aidé à fixer la personnalité des PNJ entre les sessions, mais sur de longues campagnes, j'ai commencé à vouloir que les PNJ se souviennent des événements et évoluent avec le joueur. Je voulais pouvoir dire « tu te souviens de ce qui s'est passé la dernière fois ? » et que les PNJ sachent de quoi je parlais, plutôt que d'improviser un fait qui ne s'était pas produit. J'ai donc ajouté des souvenirs aux fiches de personnage, des choses que le PNJ devrait retenir.
Soudain, les PNJ ont commencé à prendre vie. Ils évoluaient, se souvenaient du passé, faisaient référence à des citations, en plaisantaient. Mais j'ai rencontré le problème inverse : maintenant, le LLM avait trop de choses à retenir. Les fichiers des PNJ devenaient extrêmement longs, et le contexte de session commençait à inclure trop de données anciennes. C'est alors que j'ai commencé à décomposer les souvenirs en souvenirs individuels, et à les rendre consultables en les branchant sur le système de mémoire basé QMD d'OpenClaw. Une extension qu'on pouvait ajouter à OpenClaw qui lui donnait une recherche sémantique dans de nombreux petits fichiers markdown. En faisant écrire à OpenClaw les souvenirs sur le disque, il pouvait soudain utiliser sa recherche mémoire intégrée comme une banque de souvenirs pour les PNJ et le lore ! Désormais, le LLM ne charge que des résumés, et recherche les souvenirs pertinents au début des scènes et en réponse à ce que dit le joueur.
Je pense que ce sont les fonctionnalités nécessaires pour garder le monde et les personnages cohérents sur de longues campagnes, et elles constituent une partie des fonctionnalités autour desquelles Stage Whisper est construit, une fois que j'ai décidé d'arrêter d'utiliser OpenClaw directement.
Alors, à qui s'adresse vraiment Stage Whisper ?
Stage Whisper s'adresse aux gens comme moi. Des gens qui veulent créer un monde rempli de personnages et y jouer, mais au moment et au rythme qui leur conviennent.
C'est pour les personnes qui s'intéressent aux JdR, à la fiction interactive/aventures textuelles et aux MUD, mais qui n'ont pas le temps de former un groupe, ou qui ne sont pas intéressées par l'apprentissage des règles de systèmes de JdR complexes, ou qui veulent plus de liberté dans la construction du monde.
J'ai construit Stage Whisper pour qu'il fonctionne bien sur mobile et via Discord, ce qui permet de reprendre facilement, où que vous soyez.
Si cela vous ressemble, lancez-vous avec Stage Whisper, ou venez discuter avec moi sur notre Discord