Blog Metlivi

A memória da IA em jogos deve persistir entre capítulos? Um design prático para o que manter e redefinir

Para um jogo baseado em capítulos, a memória da IA só deve cruzar o limite de um capítulo quando representar um fato duradouro que o jogo pretende tornar relevante mais tarde. Mantenha os compromissos do jogador, os relacionamentos estabelecidos e os fatos confirmados do mundo em um registro estruturado e autoral. Deixe a IA recuperar uma visão pequena e relevante desse registro, juntamente com quaisquer recordações retidas intencionalmente. Redefina o contexto específico da cena, os objetivos temporários e os detalhes momentâneos, a menos que o próximo capítulo precise explicitamente deles. O estado salvo do jogo deve permanecer como a autoridade; o diálogo gerado pode descrevê-lo, mas não deve reescrevê-lo silenciosamente.

30 de setembro de 20266 min de leituraLeitura, artes e culturaPor Metlivi Editorial Team
Seção 1

Separe o cânone duradouro da memória de cena

“Memória” pode se referir a coisas diferentes: um registro de eventos, um resumo ou interpretação desses eventos e os fatos que o jogo trata como verdadeiros. Misturá-los torna as transições de capítulo difíceis de raciocinar. Um personagem pode ter ouvido um boato, por exemplo, mas o boato não deve se tornar automaticamente um fato confirmado do mundo simplesmente porque a IA se lembra dele com confiança.

Um design útil é manter duas camadas relacionadas. A primeira é um estado canônico de propriedade do jogo: fatos estruturados como promised_to_return: true, gave_map_to: Mira ou bridge_status: repaired. Esses fatos são salvos e alterados por meio de regras de jogo ou autoria explícita. A segunda é uma visão de recuperação da IA: fatos selecionados, memórias e o contexto da cena atual fornecidos para moldar uma resposta. Essa visão pode ser concisa e específica do personagem sem se tornar o próprio arquivo de salvamento.

Esta recomendação é uma inferência arquitetônica, não um recurso garantido por qualquer motor específico. Sistemas de script de narrativa já distinguem variáveis de história que podem ser lidas ao longo de uma história de valores temporários com um escopo mais restrito; o Ink, por exemplo, documenta variáveis globais e variáveis temporárias separadamente. Seu runtime também expõe uma maneira de serializar e restaurar o estado da história. Essas capacidades fornecem um modelo útil: represente o estado deliberadamente e, em seguida, decida qual escopo e persistência cada valor necessita. Documentação de variáveis e lógica do Ink e documentação de salvamento e carregamento em runtime do Ink

Seção 2

Decida o que ganha um lugar no registro entre capítulos

Para cada memória candidata, pergunte: uma cena posterior poderia legitimamente depender desse fato, e há um evento de jogo claro ou regra autoral que possa confirmá-lo? Se sim, considere armazená-lo como estado duradouro. O nome escolhido por um jogador para um companheiro, uma promessa cumprida ou se um portão foi aberto podem se qualificar quando a história os utilizar mais tarde. Armazene um valor e seu escopo, não uma transcrição ilimitada, sempre que o fato subjacente puder ser expresso com clareza.

Um registro prático pode identificar o sujeito, o fato, o evento de origem e o escopo de persistência. Por exemplo: subject: Mira; fact: player shared the map; source: chapter_2_choice_14; scope: campaign. O evento de origem ajuda a resolver discordâncias: se uma fala gerada posteriormente afirmar que o jogador entregou o mapa, mas a escolha registrada disser o contrário, o jogo pode priorizar o registro do evento. Esse esquema é uma sugestão de design, não um formato obrigatório pelas ferramentas citadas.

Mantenha materiais incertos ou não confirmados distintos. “O guarda suspeita que o jogador pegou a chave” e “o jogador pegou a chave” são fatos diferentes. Um personagem pode se lembrar de uma suspeita após o término de um capítulo, enquanto o registro canônico do mundo ainda afirma que a chave permanece em sua localização original. Use rótulos como boato, observação, inferência e evento confirmado se os diálogos posteriores precisarem preservar essas distinções.

Seção 3

Redefina o que pertence à cena atual

O estado da cena geralmente inclui o tópico imediato da conversa, um objetivo temporário, as últimas falas trocadas, a ambientação local e detalhes de curta duração, como qual porta está aberta no momento. Esses detalhes podem ajudar a IA a responder à próxima fala, mas raramente precisam se tornar memória de campanha. Limpe-os ao sair da cena ou reconstrua-os a partir da configuração autoral da próxima cena.

O limite importa porque persistência tem significados diferentes. O tutorial de persistência de dados da Unity distingue dados que acompanham um jogador entre cenas durante uma sessão do progresso salvo e restaurado entre sessões; ele também observa que dados criados em uma cena são normalmente perdidos ao mudar para outra cena, a menos que o jogo os transfira adiante. A transição de capítulo é, portanto, uma decisão de transferência deliberada, não uma razão automática para preservar todos os valores ativos. Unity Learn: Implementar persistência de dados entre cenas

Experimente uma rotina de transição em quatro etapas: finalize os eventos confirmados do capítulo; atualize o registro canônico da campanha; descarte o contexto temporário da cena; e, em seguida, construa o contexto de IA do próximo capítulo a partir de sua configuração autoral somada aos fatos duradouros relevantes. Isso evita que detalhes obsoletos vazem para uma nova cena, preservando a continuidade explicitamente suportada pela história.

Seção 4

Mantenha o estado salvo autoral como autoridade

No início do capítulo, forneça à IA o estado atual como contexto somente leitura para narração e diálogo. Se as ações do jogador puderem alterar fatos duradouros, faça com que o jogo valide a ação em relação às suas próprias regras e atualize o registro de salvamento por meio do fluxo normal de alteração de estado. Trate a saída do modelo como uma fala ou ação proposta, não como prova de que um evento aconteceu. Essa separação é uma recomendação de design derivada da necessidade de distinguir o estado salvo do texto gerado; ela deve ser implementada e testada na própria arquitetura do jogo.

Existe um precedente útil na pesquisa de narrativa: o artigo Generative Agents descreve o armazenamento de experiências, a síntese de reflexões e a recuperação dinâmica de memórias selecionadas para orientar o comportamento. Isso apoia o uso de recuperação e síntese para moldar o que um agente considera. Não estabelece, contudo, que uma recordação gerada deva ser o estado canônico do jogo. A distinção é importante: um resumo pode ser um contexto útil e, ainda assim, ser passível de revisão ou incompleto. Park et al., “Generative Agents: Interactive Simulacra of Human Behavior”

Para salvamentos reproduzíveis, persista os fatos estruturados do jogo e o estado de execução da história que o jogo precisa para retomar. A documentação de runtime do Ink demonstra a serialização do estado da história para JSON e seu carregamento posterior. Um resumo gerado também pode ser armazenado por conveniência, mas reconstrua-o ou verifique-o em relação ao registro estruturado ao carregar; não deixe que um resumo obsoleto anule uma escolha salva mais recente. Ink runtime: Salvamento e carregamento

Seção 5

Torne o limite visível para os jogadores

Os jogadores não precisam ver estruturas internas de memória, mas devem ser capazes de entender quais escolhas foram levadas adiante. Mostre consequências na ficção onde elas pertencem naturalmente: um companheiro se lembra do mapa, ou uma cena posterior reflete a promessa feita anteriormente. Quando o salvamento ou a recapitulação do capítulo fornecer um local adequado, resuma alguns fatos confirmados de impacto em linguagem clara. Evite insinuar que cada fala improvisada se tornou cânone permanente.

Dê aos jogadores uma maneira de corrigir erros com impacto quando o jogo oferecer essa possibilidade: recarregar um salvamento, revisitar uma decisão ou usar uma interação de correção explícita. Se um personagem de IA se lembrar incorretamente de algo, o diálogo não deve forçar o jogador a aceitar esse erro como um novo fato do mundo. A existência ou não de tais opções de correção é uma decisão de produto, mas o princípio subjacente é estável: uma afirmação lembrada e um evento salvo não são intercambiáveis.

Seção 6

Teste transições de capítulo com casos concretos

Construa uma pequena lista de verificação de transição em torno dos fatos que seu jogo realmente monitora. Para cada caso, inspecione tanto o registro salvo quanto o contexto de IA fornecido após a mudança de capítulo.

Uma escolha confirmada do jogador persiste e pode afetar o próximo capítulo onde o conteúdo autoral a utilizar.

Um boato ou inferência de personagem permanece rotulado como incerto em vez de se tornar um evento confirmado.

Um objetivo temporário de cena e detalhes recentes de conversa desaparecem, a menos que a próxima cena exija-os explicitamente.

Um salvamento recém-carregado restaura as mesmas escolhas canônicas, mesmo que a IA tenha gerado anteriormente um texto contraditório.

Um novo capítulo sem nenhuma conexão relevante não recebe memórias não relacionadas apenas porque elas existem.

Essas verificações são um método de diagnóstico proposto, não um experimento relatado. Elas facilitam a identificação de dois defeitos comuns: perda de continuidade, onde fatos duradouros desaparecem, e vazamento de memória, onde detalhes de cenas antigas aparecem em um contexto que deveria ter sido redefinido. Quando qualquer um ocorrer, verifique o escopo de persistência e a etapa de construção de contexto antes de tentar corrigir com um prompt mais longo.

Seção 7

Uma regra compacta para memória baseada em capítulos

Persista um fato quando o jogo autoral puder nomeá-lo, confirmar sua fonte e definir um uso posterior para ele. Mantenha recordações pessoais como contexto recuperado quando elas adicionarem personalidade ou continuidade, preservando ao mesmo tempo a incerteza e a procedência. Redefina o estado local da cena no limite entre capítulos. Em cada estágio, deixe o estado de jogo salvo e autoral determinar o que é verdade; deixe a memória da IA ajudar o personagem a responder a essa verdade.

Leituras relacionadas

Continue explorando o tema