Blog de Metlivi

¿Debe persistir la memoria de la IA de un juego entre capítulos? Un diseño práctico sobre qué conservar y qué reiniciar

En un juego basado en capítulos, la memoria de la IA solo debe cruzar el límite de un capítulo cuando represente un hecho duradero que el juego pretenda que importe más adelante. Mantén los compromisos del jugador, las relaciones establecidas y los hechos confirmados del mundo en un registro estructurado y creado por los autores. Permite que la IA recupere una vista reducida y relevante de ese registro, junto con los recuerdos retenidos intencionalmente. Reinicia el contexto específico de la escena, los objetivos temporales y los detalles del momento a momento, a menos que el siguiente capítulo los necesite explícitamente. El estado guardado del juego debe seguir siendo la autoridad; el diálogo generado puede describirlo, pero no debe reescribirlo silenciosamente.

30 de septiembre de 20266 min de lecturaLectura, arte y culturaPor Metlivi Editorial Team
Sección 1

Separar el canon perdurable de la memoria de la escena

«Memoria» puede referirse a cosas distintas: un registro de eventos, un resumen o interpretación de esos eventos, y los hechos que el juego considera verdaderos. Mezclarlos hace que las transiciones de capítulo sean difíciles de razonar. Un personaje puede haber oído un rumor, por ejemplo, pero el rumor no debería convertirse automáticamente en un hecho confirmado del mundo simplemente porque la IA lo recuerda con seguridad.

Un diseño útil consiste en mantener dos capas relacionadas. La primera es un estado canónico propiedad del juego: hechos estructurados como promised_to_return: true, gave_map_to: Mira, o bridge_status: repaired. Estos se guardan y modifican mediante las reglas del juego o una autoría explícita. La segunda es una vista de recuperación para la IA: hechos seleccionados, recuerdos y el contexto de la escena actual proporcionados para dar forma a una respuesta. Esta vista puede ser concisa y específica del personaje sin convertirse en el propio archivo de guardado.

Esta recomendación es una inferencia arquitectónica, no una característica garantizada por ningún motor en particular. Los sistemas de scripting narrativo ya distinguen las variables de la historia que se pueden leer a lo largo de toda ella de los valores temporales con un alcance más limitado; Ink, por ejemplo, documenta las variables globales y las variables temporales por separado. Su entorno de ejecución también expone una forma de serializar y restaurar el estado de la historia. Esas capacidades proporcionan un modelo útil: representar el estado de forma deliberada y luego decidir qué alcance y persistencia necesita cada valor. Documentación de variables y lógica de Ink y documentación de guardado y carga en tiempo de ejecución de Ink

Sección 2

Decidir qué se gana un lugar en el registro entre capítulos

Para cada memoria candidata, pregúntate: ¿podría una escena posterior depender correctamente de este hecho y existe un evento del juego claro o una regla de autoría que pueda confirmarlo? Si es así, considera almacenarlo como un estado duradero. El nombre que un jugador eligió para un compañero, una promesa cumplida o si se abrió una puerta pueden ser válidos cuando la historia los utiliza más adelante. Almacena un valor y su alcance, no una transcripción ilimitada, siempre que el hecho subyacente pueda expresarse con claridad.

Un registro práctico puede identificar el sujeto, el hecho, el evento de origen y el alcance de persistencia. Por ejemplo: subject: Mira; fact: el jugador compartió el mapa; source: chapter_2_choice_14; scope: campaign. El evento de origen ayuda a resolver discrepancias: si una línea generada posteriormente afirma que el jugador regaló el mapa pero la opción registrada indica lo contrario, el juego puede dar preferencia al registro del evento. Este esquema es una sugerencia de diseño, no un formato impuesto por las herramientas citadas.

Mantén claramente diferenciado el material incierto o no confirmado. «El guardia sospecha que el jugador se llevó la llave» y «el jugador se llevó la llave» son hechos diferentes. Un personaje puede recordar una sospecha tras finalizar un capítulo, mientras que el registro canónico del mundo sigue indicando que la llave permanece en su ubicación original. Utiliza etiquetas como rumor, observación, inferencia y evento confirmado si el diálogo posterior necesita preservar esas distinciones.

Sección 3

Reiniciar lo que pertenece a la escena actual

El estado de la escena suele incluir el tema inmediato de la conversación, un objetivo temporal, los últimos intercambios, la puesta en escena local y detalles efímeros como qué puerta está abierta en ese momento. Estos detalles pueden ayudar a la IA a responder la siguiente línea, pero rara vez necesitan convertirse en memoria de la campaña. Bórralos al salir de la escena o reconstrúyelos a partir de la configuración creada para la siguiente escena.

El límite es importante porque la persistencia tiene diferentes significados. El tutorial de persistencia de datos de Unity distingue los datos que siguen a un jugador entre escenas durante una misma sesión del progreso guardado y restaurado entre sesiones; también señala que los datos creados en la escena suelen perderse al pasar a otra escena a menos que el juego los traslade. Por lo tanto, una transición de capítulo es una decisión de transferencia deliberada, no un motivo automático para conservar cada valor activo. Unity Learn: Implementar persistencia de datos entre escenas

Prueba con una rutina de transición de cuatro partes: finaliza los eventos confirmados del capítulo; actualiza el registro canónico de la campaña; descarta el contexto temporal de la escena; y luego construye el contexto de IA del siguiente capítulo a partir de su configuración de autoría más los hechos duraderos relevantes. Esto evita que los detalles obsoletos se filtren en una nueva escena, al tiempo que preserva la continuidad que la historia respalda explícitamente.

Sección 4

Mantener el estado de guardado de los autores como la autoridad

Al inicio del capítulo, proporciona a la IA el estado actual como contexto de solo lectura para la narración y los diálogos. Si las acciones del jugador pueden cambiar hechos duraderos, haz que el juego valide la acción contra sus propias reglas y actualice el registro de guardado a través de la vía habitual de modificación de estado. Trata la salida del modelo como una línea o acción propuesta, no como prueba de que un evento sucedió. Esta separación es una recomendación de diseño derivada de la necesidad de distinguir el estado guardado del texto generado; debe implementarse y probarse en la propia arquitectura del juego.

Existe un precedente útil en la investigación narrativa: el artículo sobre Generative Agents describe el almacenamiento de experiencias, la síntesis de reflexiones y la recuperación dinámica de recuerdos seleccionados para guiar el comportamiento. Eso respalda el uso de la recuperación y la síntesis para dar forma a lo que un agente considera. No establece que un recuerdo generado deba ser el estado canónico del juego. La distinción es importante: un resumen puede ser un contexto útil y, aun así, seguir siendo revisable o incompleto. Park et al., «Generative Agents: Interactive Simulacra of Human Behavior»

Para obtener partidas guardadas reproducibles, haz persistir los hechos estructurados del juego y el estado en tiempo de ejecución de la historia que el juego necesita para reanudarse. La documentación del entorno de ejecución de Ink demuestra cómo serializar el estado de la historia a JSON y cargarlo de nuevo. También se puede almacenar un resumen generado por conveniencia, pero reconstrúyelo o compruébalo contra el registro estructurado al cargar; no permitas que un resumen desactualizado se imponga sobre una decisión guardada más reciente. Entorno de ejecución de Ink: Guardar y cargar

Sección 5

Hacer que el límite sea visible para los jugadores

Los jugadores no necesitan ver las estructuras internas de la memoria, pero deberían poder entender qué elecciones tuvieron consecuencias a futuro. Muestra las consecuencias en la ficción donde encajen de forma natural: un compañero recuerda el mapa, o una escena posterior refleja la promesa anterior. Cuando el guardado o el resumen del capítulo ofrezcan un lugar adecuado, resume algunos hechos confirmados trascendentes en un lenguaje sencillo. Evita dar a entender que cada línea improvisada se ha convertido en canon permanente.

Ofrece a los jugadores una forma de corregir errores importantes cuando el juego lo permita: recargar una partida guardada, reconsiderar una decisión o usar una interacción explícita de corrección. Si un personaje controlado por IA recuerda algo mal, el diálogo no debería obligar al jugador a aceptar ese error como un nuevo hecho del mundo. Que existan o no tales opciones de corrección es una decisión de producto, pero el principio subyacente es firme: una afirmación recordada y un evento guardado no son intercambiables.

Sección 6

Probar las transiciones de capítulo con casos concretos

Elabora una pequeña lista de verificación de transición en torno a los hechos que tu juego realmente rastrea. Para cada caso, inspecciona tanto el registro guardado como el contexto de la IA proporcionado tras el cambio de capítulo.

Una elección confirmada del jugador persiste y puede afectar al siguiente capítulo donde el contenido de autoría la utilice.

Un rumor o la inferencia de un personaje se mantiene etiquetado como incierto en lugar de convertirse en un evento confirmado.

Un objetivo temporal de la escena y los detalles conversacionales recientes desaparecen a menos que la siguiente escena los requiera explícitamente.

Una partida guardada recién cargada restaura las mismas elecciones canónicas incluso si la IA generó previamente un texto contradictorio.

Un nuevo capítulo sin ninguna conexión relevante no recibe recuerdos no relacionados solo porque existan.

Estas comprobaciones son un método de diagnóstico propuesto, no un experimento documentado. Facilitan la detección de dos defectos comunes: la pérdida de continuidad, donde los hechos duraderos se desvanecen, y la fuga de memoria, donde los detalles antiguos de la escena aparecen en un contexto que debería haberse reiniciado. Cuando ocurra cualquiera de los dos, revisa el alcance de la persistencia y el paso de construcción del contexto antes de intentar solucionarlo con un prompt más largo.

Sección 7

Una regla compacta para la memoria basada en capítulos

Haz persistir un hecho cuando el diseño de autoría del juego pueda nombrarlo, confirmar su origen y definir un uso posterior para él. Conserva los recuerdos personales como contexto recuperado cuando aporten carácter o continuidad, preservando al mismo tiempo la incertidumbre y la procedencia. Reinicia el estado local de la escena en el límite. En cada etapa, permite que el estado guardado y estructurado del juego determine lo que es verdad; permite que la memoria de la IA ayude al personaje a responder a esa verdad.

Lecturas relacionadas

Sigue explorando este tema