Porque Deixei uma IA Gerir a Minha Campanha de RPG de Mesa
Algumas pessoas descobrem os TTRPGs através de amigos à volta de uma mesa. Outras descobrem-nos através de fóruns, ou kits de iniciação, ou aquele amigo que está sempre a querer experimentar. Eu descobri-os através de podcasts: programas de comédia improv actual-play que se tornaram a minha companhia constante durante um período solitário de trabalho remoto numa cidade desconhecida.
Devorava-os durante anos. Nunca joguei uma única sessão.
Eis como isso me levou a construir um MJ IA.
Então nunca jogaste realmente um TTRPG, mas estás a construir um MJ IA. De onde vem isso?
Acho que o meu interesse começou quando tive de me mudar por causa do trabalho. Passava meses do ano numa cidade que não conhecia, longe de amigos e família, e não tinha muito para fazer fora do trabalho. Sou introvertido, por isso não queria realmente fazer aquela coisa de conhecer pessoas novas. Mas viver assim era solitário. Por isso virei-me para os podcasts para me fazerem companhia, particularmente comédia. Descobri podcasts de improv, e eventualmente podcasts de actual-play de Dungeons & Dragons através disso. Foi aí que o meu interesse por TTRPGs cresceu. Devorava-os. São de formato longo, misturavam grande narrativa com comédia estilo improv. É um grande entretenimento!
Avançando muitos anos, os podcasts de actual-play de TTRPG continuam a ser um dos meus entretenimentos favoritos. Mas nunca encontrei um grupo para realmente jogar. Compromissos de trabalho e de vida meteram-se no caminho. Não consigo encontrar o tipo de tempo para me sentar com um grupo por um período prolongado regularmente. Por isso basicamente desisti dessa ideia.
No ano passado, algumas coisas juntaram-se. Primeiro, tivemos o nosso primeiro filho. Isso significou ainda menos tempo para projetos pessoais ou sessões de TTRPG. Ao mesmo tempo, o OpenClaw foi lançado, e percebi que isto era uma ferramenta realmente boa para me ajudar a automatizar tarefas e executá-las a partir do telemóvel enquanto cuidava do bebé. De repente, era capaz de escrever código, fazer pesquisa, e outras coisas que normalmente teria de me sentar ao computador para fazer, tudo enquanto cumpria os meus deveres parentais.
A certa altura percebi que o OpenClaw se comporta muito mais como um humano do que outros agentes de IA que tinha usado antes. É configurado com uma personalidade, o que faz com que pareça mais falar com um colega de trabalho ou até mesmo um amigo. De repente, fez-me pensar: e se eu tivesse o OpenClaw a gerir uma campanha TTRPG a solo comigo?
E funcionou. Surpreendentemente bem. E evoluiu a partir daí. Comecei a construir skills do OpenClaw e a ajustar o sistema de memória para o fazer funcionar melhor para campanhas mais longas e complexas. Eventualmente decidi que com todos os ajustes, mais valia construir algo de raiz que aplicasse tudo o que eu tinha descoberto, e evitasse algumas das limitações. Foi assim que o Stage Whisper nasceu.
Tu basicamente desististe de encontrar um grupo. O que era especificamente no formato de grupo que era o bloqueador?
Tudo, na verdade. O primeiro problema é encontrar o grupo em primeiro lugar. Não quero realmente jogar com pessoas que não conheço bem, e não tenho o tempo nem a personalidade para fazer amigos apenas com o propósito de jogar um TTRPG. Eu sei que as pessoas dizem "encontra um grupo e experimenta", mas isso não me parece algo que eu queira fazer.
Depois há a marcação de horários. Acho que à medida que envelhecemos, tentar encontrar tempo que funcione para um grupo é simplesmente difícil. Todos têm os seus próprios compromissos, até tentar encontrar tempo para uma refeição com velhos amigos é difícil. Não consigo imaginar tentar que várias pessoas se comprometam a várias horas de uma só vez.
E finalmente, a pressão de ter de estar presente para a sessão. Não querer desiludir as pessoas por ter de me ausentar para lidar com outra coisa que surgiu.
Todas estas coisas tornam o formato tradicional de grupo TTRPG difícil para mim.
Em que momento passaste de "estou a ouvir outras pessoas a jogar" para "espera, e se eu pudesse fazer isto a solo com uma IA?". E o que mais te surpreendeu sobre como realmente se sentiu em comparação com apenas ouvir?
Acho que foi quando estava a ajustar a personalidade da minha instância do OpenClaw. Tinha-o feito como uma piada, para mostrar a alguém que o OpenClaw tem personalidade e pode comportar-se de forma diferente do aborrecido "Assistente Prestativo" corporativo que dominava os assistentes de chat de IA na altura. Tinha-o configurado como uma "rapariga gamer goblin do caos."
O resultado apanhou-me desprevenido. O OpenClaw de repente pareceu muito mais real, muito mais relatable. Atravessou a barreira de "estou a falar com um assistente automatizado" para "estou a falar com uma pessoa." Acho que o que também ajuda é que no Discord, recebes o indicador de "a escrever" (que obviamente corresponde ao tempo de inferência do LLM), mas que por acaso também dá aquele "sinal de vida" humano de ver alguém a escrever, em vez de apenas texto a fluir.
Eu estava muito consciente de que estava a criar algo semelhante a uma ligação humana com um LLM. Suspeitava que seria possível, só não sabia em que momento. Surpreendeu-me que fosse possível com os modelos de hoje apenas com uma mudança de prompt. Tinha usado os mesmos modelos para programação durante algum tempo, e em nenhum momento isso pareceu remotamente humano. O OpenClaw abriu-me os olhos para o quanto mais ligação podemos ter com LLMs com apenas um ajuste de prompt. Mesmo que saibamos que estamos a falar com um LLM, a sensação de que é outro humano está lá, e isso é importante para coisas como TTRPGs. Acho que a sensação de que não estás apenas num "escolhe a tua própria aventura", mas que és amigos à volta de uma mesa a contar a história juntos, é importante para mim.
Como é que realmente se sente na prática?
Na verdade, já tinha jogado algo parecido antes: AI Dungeon. Isso foi nos primeiros dias dos LLMs. O AI Dungeon era divertido, mas não conseguia manter um enredo consistente. As cenas mudavam inconsistentemente, as personagens apareciam e desapareciam.
Mas foi aí que tive o meu primeiro gosto de narrativa colaborativa com uma IA. E gostei mesmo muito. Acho que gosto mesmo de ser capaz de criar um mundo, definir as suas restrições, e depois percorrê-lo como uma personagem que está sujeita a todas as suas limitações, e interagir com o mundo e tê-lo a responder de volta. Comecei a sentir que isto era uma saída criativa genuína para mim.
Avançando para ter o OpenClaw a gerir um jogo: como isto estava a correr no Discord, podia entrar e sair sempre que quisesse, sem me preocupar em atrasar outras pessoas. Podia iniciar novas campanhas, experimentar novo lore e configurações, novas personagens. E adicionar o sistema de memória e outras ferramentas ajudou o OpenClaw a manter o lore e o mundo consistentes ao longo de campanhas mais longas, enquanto aplicava algumas mecânicas de jogo para manter as coisas interessantes.
Acho que gastei algo como $150 em créditos de LLM nessas primeiras semanas, só pelo volume enorme de sessões que estava a experimentar. A gerar novas campanhas, a experimentá-las. A sensação de ter agência na construção do mundo, e realmente fazer roleplay de uma personagem, é muito mais divertido do que ouvir um grupo de pessoas a fazê-lo.
O AI Dungeon não conseguia manter um enredo, qual foi o truque para resolver a consistência narrativa ao longo de campanhas longas?
A primeira coisa que tentei foi fazer com que o OpenClaw usasse a sua memória para manter o registo da campanha e das sessões. O contexto dos LLMs de hoje é suficientemente longo para manter o enredo consistente ao longo de uma ou duas sessões, mas além disso tens de descartar ou compactar parte do contexto. Usar uma combinação de ficheiros de memória e a ferramenta de compactação integrada do OpenClaw manteve o mundo aproximadamente consistente, pelo menos o mesmo tipo de cenário, e cada sessão tinha uma vaga ideia do que aconteceu nas sessões anteriores.
Mas os detalhes eram aproximados, e ainda havia o problema das personagens. Personagens anteriores seriam totalmente diferentes, e diriam coisas que eram narrativamente inconsistentes com o que veio antes, o que quebrava muito a imersão. Por isso fiz com que o LLM gerasse uma ficha de personagem completa para cada personagem, e lesse essas fichas no início de novas sessões.
Isto ajudou a fixar a personalidade dos NPCs entre sessões, mas ao longo de campanhas longas, comecei a querer que os NPCs se lembrassem de coisas que aconteceram, e crescessem com o jogador. Queria ser capaz de dizer "lembras-te do que aconteceu da última vez?" e ter os NPCs a saber do que eu estava a falar, em vez de improvisar algum facto que não aconteceu. Por isso adicionei memórias às fichas de personagem, coisas que o NPC deveria lembrar.
De repente, os NPCs começaram a ganhar vida. Cresciam, lembravam-se do passado, referenciavam citações, faziam piadas sobre isso. Mas deparei-me com o problema oposto: agora o LLM tinha demasiado para lembrar. Os ficheiros dos NPCs ficaram extremamente longos, e o contexto da sessão começou a incluir demasiados dados passados. Foi aí que comecei a dividir as memórias em memórias individuais, e a torná-las pesquisáveis ligando-as ao sistema de memória baseado em QMD do OpenClaw. Uma extensão que podias adicionar ao OpenClaw que lhe dava pesquisa semântica através de muitos pequenos ficheiros markdown. Ao fazer com que o OpenClaw escrevesse memórias para o disco, de repente podia usar a sua pesquisa de memória integrada como um banco de memórias para NPCs e lore! Agora o LLM apenas carrega resumos, e pesquisa memórias relevantes no início das cenas, e em resposta ao que o jogador diz.
Acho que essas são as funcionalidades necessárias para manter o mundo e as personagens consistentes em campanhas longas, e essas formam algumas das funcionalidades em torno das quais o Stage Whisper é construído, uma vez que decidi deixar de usar o OpenClaw diretamente.
Então para quem é realmente o Stage Whisper?
O Stage Whisper é para pessoas como eu. Pessoas que querem criar um mundo cheio de personagens e jogar nele, mas a um tempo e ritmo que lhes convém.
É para pessoas que gostam de TTRPGs, ficção interativa/aventuras de texto, e MUDs, mas que não têm tempo para formar um grupo, ou não estão interessadas em aprender as regras de sistemas TTRPG complexos, ou que querem mais agência na construção do mundo.
Construí o Stage Whisper para funcionar bem em dispositivos móveis, e através do Discord, tornando fácil de retomar de onde quer que estejas.
Se isto soa como tu, começa com o Stage Whisper, ou vem falar comigo no nosso discord