La inteligencia artificial basada en agentes está permitiendo construir sistemas capaces de coordinar tareas complejas mediante la colaboración de múltiples componentes especializados. Uno de los ámbitos donde este enfoque resulta especialmente interesante es la generación narrativa interactiva.
En este contexto hemos desarrollado Agents & Dragons, un sistema de narración de rol basado en agentes de IA que simula el papel de un Dungeon Master en un juego de rol tradicional.
El objetivo del proyecto no es únicamente crear una experiencia de juego dinámica, coherente y desafiante. La arquitectura diseñada también sirve como caso práctico de sistemas multiagente aplicados a flujos complejos, con posibles aplicaciones en otros dominios de inteligencia artificial.
El reto: simular un Dungeon Master con IA
En los juegos de rol de mesa, el Dungeon Master (DM) actúa como narrador y coordinador de la partida.
Su función incluye:
- crear y desarrollar la historia
- controlar los personajes no jugadores (NPCs)
- interpretar el mundo del juego
- aplicar las reglas del sistema
- reaccionar a las decisiones de los jugadores
Simular todo este comportamiento con inteligencia artificial supone un desafío considerable.
Una solución aparentemente sencilla sería pedir a un modelo de lenguaje que actúe como Dungeon Master y vaya generando la historia mientras el usuario interactúa con ella.
Sin embargo, este enfoque presenta problemas importantes.
Limitaciones de un único agente de IA
Aunque en teoría un único agente podría generar la historia, en la práctica surgen rápidamente varios problemas que afectan a la calidad de la experiencia.
- Sobrecarga de responsabilidades
El Dungeon Master debe realizar múltiples tareas simultáneamente:
- narrar la historia
- interpretar personajes
- aplicar reglas del juego
- gestionar el estado del mundo
- responder a las decisiones de los jugadores
Concentrar todas estas responsabilidades en un único agente genera problemas tanto de contexto como de flujo lógico.
El modelo necesitaría un prompt extremadamente complejo y aun así correría el riesgo de perder coherencia a medida que avanza la historia.
Este problema es habitual en los sistemas de IA complejos y explica por qué muchas arquitecturas modernas utilizan enfoques multiagente.
- Falta de coherencia narrativa y desafío
Otro problema habitual es la falta de consistencia.
Cuando un modelo improvisa la historia sin un sistema estructurado:
- pueden aparecer incoherencias narrativas
- las reglas del juego no se aplican correctamente
- el sistema simplemente acepta cualquier acción del jugador
Por ejemplo, si el jugador dice “salgo volando”, el modelo podría aceptarlo sin comprobar si las reglas del juego lo permiten.
Esto elimina el desafío y reduce la calidad de la experiencia de juego.
La solución: una arquitectura multiagente
Para resolver estos problemas, hemos diseñado una arquitectura multiagente utilizando Microsoft Agent Framework.
En este sistema, cada agente tiene una responsabilidad clara y especializada.
Este enfoque permite:
- separar responsabilidades
- mantener coherencia narrativa
- aplicar correctamente las reglas del juego
- mejorar la escalabilidad del sistema
Arquitectura del sistema
El sistema está compuesto por cuatro elementos principales: frontend, backend, estructuras de datos y agentes.
Frontend
El frontend es una aplicación web sencilla desarrollada con:
- Vue.js
- Tailwind CSS
La interfaz incluye:
- un menú donde el usuario selecciona la aventura
- una interfaz de chat donde se desarrolla la partida
Este diseño permite añadir fácilmente nuevas aventuras y ampliar el sistema.
Backend
El backend está construido con FastAPI.
Expone una API REST que gestiona la comunicación entre el frontend y el sistema de agentes.
Estructuras de datos
El sistema mantiene varias estructuras de datos que almacenan el estado del juego.
Estas estructuras se actualizan dinámicamente mediante tools que los agentes pueden invocar durante la partida.
Scene
Contiene el estado actual del juego:
- localización
- personajes presentes
- eventos recientes
- contexto narrativo
Sheet
Almacena las estadísticas de los personajes:
- habilidades
- atributos
- estado actual
Agentes del sistema
El núcleo del sistema está formado por varios agentes especializados.
Orchestrator / Narrador
Este agente actúa como Dungeon Master principal.
Sus responsabilidades incluyen:
- coordinar a los demás agentes
- mantener la coherencia narrativa
- gestionar el estado del juego
Tiene acceso al contexto de la historia y al estado actual de la escena.
Agente de reglas
Este agente se encarga de aplicar el sistema de reglas del juego.
Recibe como entrada:
- una acción
- el estado de la escena
- las estadísticas de los personajes involucrados
Tras aplicar las reglas, devuelve el resultado de la acción.
Esto incluye procesos como:
- tiradas de dados
- comprobaciones de habilidad
- resolución de acciones.
Agente de NPCs
Este agente interpreta a los personajes no jugadores.
Recibe:
- el contexto de la escena
- la personalidad del NPC
Y genera:
- el diálogo
- la acción correspondiente
El narrador invoca este agente de forma independiente para cada NPC.
Agente de generación de imágenes
Este agente se encarga de mejorar la inmersión visual del juego.
Su función consiste en:
- analizar el contexto de la escena
- generar un prompt para un generador de imágenes
- mantener coherencia visual reutilizando la imagen previa
La imagen generada se muestra en la interfaz del jugador.
Consideraciones técnicas
El sistema incorpora varias decisiones técnicas importantes.
Uso de Microsoft Agent Framework
Todos los agentes y tools se han implementado con Microsoft Agent Framework.
Esto permite estructurar fácilmente la interacción entre agentes.
Agentes como tools
Los agentes de Rules y NPC funcionan a su vez como tools invocables por el agente narrador.
Este diseño permite que el narrador los utilice cuando sea necesario dentro del flujo narrativo.
Validación de datos con Pydantic
Todas las herramientas utilizan modelos de Pydantic como entrada y salida.
Esto facilita:
- controlar la información intercambiada entre agentes
- eliminar datos irrelevantes
- mantener consistencia en el flujo de datos.
Gestión de memoria entre agentes
No todos los agentes necesitan memoria.
Por ejemplo:
- el narrador mantiene memoria de interacciones anteriores
- el agente de reglas no necesita memoria, ya que recibe todo el contexto necesario en sus parámetros de entrada
Esto optimiza el uso del contexto y mejora la eficiencia del sistema.
Conclusión
Agents & Dragons demuestra cómo una arquitectura multiagente puede resolver problemas complejos de generación narrativa interactiva.
Más allá del ámbito del entretenimiento, los principios utilizados en este sistema pueden aplicarse a muchos otros escenarios donde la inteligencia artificial debe gestionar flujos complejos, múltiples responsabilidades y coordinación entre agentes especializados.
A medida que las arquitecturas multiagente evolucionan, este tipo de sistemas puede convertirse en un patrón clave para construir aplicaciones avanzadas de inteligencia artificial.
Los sistemas multiagente están abriendo nuevas posibilidades en el desarrollo de soluciones de IA complejas y autónomas.
En Bravent diseñamos arquitecturas basadas en agentes utilizando tecnologías como Microsoft Agent Framework, aplicadas tanto a proyectos de innovación como a casos reales de negocio.
Si estás explorando cómo integrar agentes de IA en tus aplicaciones o procesos, estaremos encantados de analizar tu caso.
📩 Escríbenos a info@bravent.net

Alejandro Fuster Bagetto
Senior AI developer - Bravent



