Sin embargo, el argumento es un pilar fundamental para la experiencia en juegos de tipo narrativo, RPG o de aventuras. En estos juegos, el argumento es importante por múltiples razones. Un buen argumento crea un mundo creíble y personajes con los que los jugadores pueden empatizar, aumentando la inmersión. Historias bien desarrolladas generan emociones, motivando a los jugadores a continuar para descubrir qué pasa. El argumento proporciona un marco narrativo que da sentido a las acciones del jugador. Sin una historia, las mecánicas pueden sentirse vacías o repetitivas. Por ejemplo, en juegos como The Last of Us, el argumento impulsa las decisiones y hace que las mecánicas tengan peso emocional. Una narrativa sólida ofrece objetivos claros y razones para avanzar, ya sea salvar un mundo, vengar a un personaje o desentrañar un misterio. Esto mantiene el interés, especialmente en juegos largos. En un mercado saturado, un argumento original o bien ejecutado puede destacar un videojuego frente a otros con mecánicas similares. Títulos como Hollow Knight o Disco Elysium son ejemplos donde la narrativa eleva la experiencia. Un argumento con ramificaciones, elecciones morales o finales múltiples (como en Mass Effect o The Witcher 3) fomenta la rejugabilidad, ya que los jugadores quieren explorar diferentes desenlaces.
Por tanto, el proceso de desarrollo del argumento del juego es tan importante como el de la programación o el modelado de assets. En este artículo vamos a ver algunas herramientas especializadas que nos pueden ser útiles para crear el argumento de nuestro juego, así como para diseñar sus conversaciones.
Obsidian
Obsidian es una aplicación de toma de notas y gestión del conocimiento diseñada para crear y organizar contenido a través de notas interconectadas, utilizando un sistema basado en Markdown y un enfoque de "grafo de conocimiento" que visualiza las relaciones entre ideas. Aunque no está específicamente diseñada para el desarrollo de videojuegos, su flexibilidad, personalización y capacidad para manejar grandes cantidades de información la convierten en una herramienta valiosa para escritores, diseñadores narrativos y desarrolladores que trabajan en la planificación de historias, lore, guiones y documentación de proyectos de videojuegos.
Logo de Obsidian |
Obsidian destaca como una solución ligera y versátil para la preproducción y organización, especialmente para proyectos indie o equipos pequeños.
Con Obsidian cada nota puede enlazarse a otras mediante vínculos bidireccionales (similar a un wiki personal). Su vista de grafo muestra conexiones visuales entre notas, facilitando la exploración de ideas complejas. Por tanto, se trata de una herramienta ideal para mapear relaciones entre personajes, eventos y quests.
A la hora de editar, tienes dos modos principales: un editor de texto plano en el que empleas formato Markdown, y un modo Canvas que te ofrece un lienzo visual para conectar notas con flechas, similar a un tablero de ideas. Al crear una nueva nota, los enlaces a otras notas se crean usando enlaces de Markdown. Cuando creas un Canvas puedes crear dos tipos de nodos: cards, que vienen a ser nodos pequeños con apenas un título, y notas que ya tienen un texto completo de Markdown (puedes incluso importar una nota que haya creado aparte). Al final, el Canvas es un espacio visual para organizar notas como nodos conectados, ideal para mapear historias ramificadas o flujos narrativos.
Editando notas en Obsidian |
El modo Canvas de Obsidian |
Un posible flujo de trabajo podría ser hacer una lluvia de ideas y recoger las ideas sueltas en notas, para luego estructurarlas en un Canvas.
Luego, al margen del Canvas, si necesitases una vista de alto nivel de todas tus notas, puedes abrir la vista de grafo que que muestra el árbol de una nota y sus enlaces con otras notas.
Otra característica muy potente es que permite etiquetar los elementos lo que facilita búsquedas avanzadas usando operadores booleanos.
Por defecto, Obsidian lo guarda todo en local, en archivos locales de texto plano que aseguran la portabilidad y el bajo consumo de recursos. Esos datos se pueden exportar a Markdown, HTML, PDF o Word. Sincroniza con Dropbox, iCloud.
Obsidian es gratuito, pero si quisieses sincronización entre todos tus dispositivos tendrías que pagar una pequeña subscripción. Si quisieses publicar notas en el sitio web de Obsidian Publish habría que pagar otra subscripción.
Todo lo anterior ya lo hacen una opción muy interesante para lo que buscamos en este artículo, pero es que, además, Obsidian cuenta con una comunidad hiperactiva en foros, discord y Reddit, donde ofrecen plantillas, ejemplos de flujos de trabajo específicos (por ejemplo para narrativa de videojuegos). Dicha actividad ha creado ya más de 2.600 plugins comunitarios, como por ejemplo:
- Dataview: Crea tablas dinámicas para gestionar personajes, quests o ítems (e.g., "muestra todos los NPCs con estado 'aliado'").
- Obsidian Tasks: Seguimiento de tareas para planificación de desarrollo.
- Kanban: Tableros para gestionar sprints o milestones.
- Excalidraw: Dibujos para storyboards o mapas.
Al final, no hay dos instalaciones de Obsidian iguales. Casa usuario se lo personaliza con múltiples plugins para personalizarse la herramienta a sus gustos particulares, lo que la hace una herramienta tremendamente potente.
Ink
Inkle Studios es un estudio independiente de desarrollo de videojuegos. Se especializan en juegos narrativos interactivos, es decir, títulos centrados en historias ramificadas, decisiones del jugador y narrativas no lineales, donde el texto y las elecciones del usuario son elementos clave para avanzar en la trama.
El fruto de su labor no se limita a los videojuegos, sino que también han creado herramientas para su desarrollo. Entre ellas se encuentra Ink, un lenguaje de scripting narrativo open-source (bajo licencia MIT), diseñado específicamente para escribir historias altamente ramificadas en juegos. Ink no es un lenguaje de programación tradicional, sino un markup simple y elegante que permite a escritores y desarrolladores crear diálogos, elecciones y tramas complejas de manera eficiente. Ink se integra fácilmente con motores como Unity (a través de un plugin gratuito), Unreal Engine y Godot, y ha sido adoptado por estudios grandes e independientes.
Logo de Ink |
Para que nos entendamos, Ink sería lo que utilizarían los autores de la popular serie de libros "Elige tu propia aventura" si quisieran escribir sus historias hoy. Con él puedes ofrecer elecciones al lector y dejar que la historia se vaya ramificando conforme se sucedan dichas elecciones.
Ink ofrece una sintaxis fácil de aprender para no programadores, pero potente para estructuras avanzadas (como bucles, listas y lógica condicional). Además, es muy ligero, por lo que el flujo de trabajo con él es muy rápido permitiendo ver los cambios prácticamente conforme se escriben.
Sintaxis de Ink |
Todas esas ventajas han propiciado que haya sido ampliamente usado en multitud de juegos (como Haven, NeoCab, Sable, Sea of Thieves y The Banner Saga 3, por ejemplo) y que haya abundantes recursos en Internet para aprender a usarlo.
Para facilitar más su uso, Inkle ofrece también un editor gratuito llamado Inky, disponible en la misma página que Ink. Es un editor minimalista, que ofrece una ventana de preview en la que puedes probar las opciones y ramificaciones que vayas escribiendo. También te alerta de los errores de sintaxis de Ink que cometas al escribir. Tiene versiones tanto para Windows, como para Linux y Mac.Y finalmente, lo más importante, te permite exportar a JSON para que puedas cargar toda la información de la historia desde el juego que estés desarrollando.
Twine
Twine es una herramienta gratuita y de código abierto diseñada para crear ficción interactiva y juegos narrativos basados en texto, especialmente historias no lineales donde las elecciones del jugador determinan el rumbo de la narrativa. Creada en 2009 por Chris Klimas, es ampliamente utilizada tanto por desarrolladores principiantes como por profesionales en el desarrollo de videojuegos, escritura creativa, educación y proyectos artísticos. Lo que ofrece es similar a Ink, en el sentido de que permite crear historias interactivas en formato hipertextual, donde el jugador navega a través de nodos de texto (llamados "pasajes") conectados por enlaces. Cada pasaje contiene texto, opciones y, opcionalmente, código para manejar lógica, variables o multimedia.
El problema que tiene es que no hay un camino claro y fácil para importar la historia desde un game engine (como sí había con Ink), por lo que el uso de Twine está más indicado para limitarse a darle forma al guion del juego o para crear un prototipo hiper sencillo para mostrar las posibles ramificaciones de dicho guion.
Logo de Twine |
Twine es conocida por su simplicidad, accesibilidad y flexibilidad. Su editor visual permite arrastrar y conectar nodos, creando un mapa de la narrativa. También tiene un modo de código para personalizar la lógica del juego.
Los historias interactivas creadas en Twine se publican como archivos HTML, jugables en navegadores web, lo que los hace altamente portátiles. También se pueden exportar a otras plataformas con herramientas adicionales. Los archivos de salida se pueden volcar en varios formatos soportados, para permitir el posterior tratamiento y personalización de la historia.
El uso de un editor visual permite que la edición de texto en sí sea mucho más sencilla que en le caso de Ink. Al final, la redacción se limita a escribir texto y añadir enlaces simples (por ejemplo, [[Ir a la cueva]]) para conectar pasajes. Aunque también se puede recurrir a JavaScript y macros para hacer cosas más avanzadas.
El editor de Twine |
Con todo ello se pueden crear historias altamente ramificadas, desde aventuras de "elige tu propia aventura" hasta narrativas complejas con variables (por ejemplo, puntos de salud, inventarios) y lógica condicional.
La herramienta y su código están disponibles bajo licencia abierta GPL-3. Se puede usar en línea (twinery.org) o descargar para Windows, macOS y Linux. Cuenta, además, con una comunidad activa, tutoriales (como los de twinery.org), foros, y plantillas en plataformas como itch.io. También hay extensiones y complementos creados por la comunidad.
Yarn Spinner
Yarn Spinner es una herramienta desarrollada originalmente por el estudio australiano Secret Lab (creadores de Night in the Woods), aunque posteriormente parte del equipo se escindió del estudio de videojuegos, para centrarse en el desarrollo de la herramienta, pasando a llamarse como esta.
A medio camino entre el lenguaje de scripting de Ink, y la herramienta visual de Twine, utiliza un lenguaje de scripting simple llamado Yarn, inspirado en formatos como guiones de cine o teatro, que permite escribir diálogos en texto plano con elementos de control de flujo, variables y comandos. Luego, un plugin integrado con el engine se encarga de actuar como un intérprete que ejecuta estos scripts en tiempo de juego, enviando líneas de diálogo, opciones y comandos al engine.
Portada de la página web de Yarn Spinner |
Algunos juegos realizados con Yarn Spinner son Night in the Woods, A Short Hike, DREDGE, Lost in Random, Frog Detective, Button City o Escape Academy.
Para la edición de los scripts, tienen una extensión para Visual Studio Code que ofrece un editor de texto con resaltado, para crear los scripts en Yarn, así como una ventana de grafo con la que ver las ramificaciones de la historia.
Extensión de Yarn Spinner para Visual Studio Code |
También cuentan con una página web, en la que editar y probar scripts sencillos.
Las principales ventajas de Yarn Spinner son:
- Flexibilidad Narrativa: Soporta historias altamente ramificadas, con memoria de elecciones previas (por defecto), storylets (contenido dinámico basado en saliencia) y grupos de nodos/líneas para organización.
- Personalización: Integra multimedia (imágenes, audio, video) vía comandos. Incluye UIs prehechas (e.g., burbujas de diálogo, ruedas de opciones) y samples para customización.
- Localización: Soporte robusto para traducciones, extrayendo strings a archivos separados (e.g., JSON o CSV) para herramientas como Unity Localization o I2 Localization, facilitando workflows multilingües.
- Depuración y Herramientas: Errores con números de línea, vista previa en navegador, y soporte para voice-over (sincronización con líneas). Comunidad activa en Discord y GitHub.
Si usas Unity, estás de enhorabuena, porque es el único engine con el que tienen un plugin de integración oficial. El código del plugin para Unity está disponible en GitHub, con licencia MIT, por lo que puedes descargártelo e instalarlo en Unity de manera gratuita. Otra opción es recurrir al Unity Asset Store para comprar plugin para Unity, su importe no es muy elevado y sirve para financiar el desarrollo de la herramienta. También ofrecen otros complementos para Unity, como uno que permite mostrar el texto de las conversaciones en bocadillos tipo comic, y otro que permite tomar las decisiones usando una rueda de selección.
También hay plugin para Unreal, y otro para Godot, pero aún se encuentran en fase Beta y no los recomiendan para producción.
Articy Draft
Articy:draft (ahora conocido principalmente como articy:draft X en su versión más reciente) es una herramienta profesional de diseño narrativo y organización de contenido interactivo, desarrollada por Articy Software GmbH, una empresa alemana fundada en 2009.
Se trata de un software visual que actúa como una base de datos centralizada para crear, gestionar y planificar historias ramificadas, diálogos, misiones, personajes y otros elementos narrativos en proyectos interactivos, con un enfoque especial en el desarrollo de videojuegos. A diferencia de herramientas de scripting puro como Ink o Yarn Spinner, Articy:draft es más un entorno visual integral (similar a un "CMS narrativo" o sistema de gestión de contenido para juegos), que combina edición de flujos de historia, bases de datos de objetos y colaboración en equipo.
Logo de Articy Draft |
Es ampliamente utilizado en la industria por estudios indie y AAA para manejar narrativas complejas, y ha sido clave en títulos como Disco Elysium, Suzerain, HipWitch, Saint Kotar, Garden Scapes y Spell Force III.
Cuenta con un editor visual no lineal para el diseño de contenido interactivo, que unifica editores especializados (para diálogos, misiones, objetos, ubicaciones) en una sola interfaz. Permite representar gráficamente entidades de juego (como NPCs, ítems o quests) con automatizaciones, variables y lógica condicional, actuando como un "frontend visual" para datos de juego. No genera código ejecutable directamente, sino que exporta datos estructurados para integrarlos en motores de juego.
El editor visual de Articy Draft |
Anidación de vistas en ArticyDraft |
Ofrece un modo de simulación que reproduce la historia con voz, idiomas y lógica, ideal para iterar antes de exportar. El modo de simulación permite comprobar la evolución de las variables que hayamos ligado a los diálogos y a las distintas elecciones, así como comprobar el efecto que tienen estas variables en la ruta a través de las historias.
Modo simulación de Articy Draft |
Otras herramientas adicionales con las que cuenta son un panel de storyboarding; un editor de ubicaciones (útil para planificar niveles o quests); soporte para voz en off (generación TTS para prototipos y sincronización); localización integrada (exporta strings para traducción y reimporta); y extensiones de IA para generar diálogos, imágenes o traducciones automáticas (e.g., con DeepL).
Storyboarding en ArticyDraft |
Editor de ubicaciones |
También sirve de base de datos en la que guardar la configuración de todos los NPC y objetos del juego. La idea es que los diseñadores del juego puedan manipular los datos desde la interfaz de Articy Draft, para luego exportar todos los datos de una vez y cargarlos desde el game engine.
Base de datos de personajes y objetos del juego |
En cuanto a integraciones con game engines, Articy Draft cuenta con assets oficiales para integrarse tanto con Unity como con Unreal. Para otros engines, Articy Draft también permite exportar a XML y a JSON. Si no fuera suficiente con lo anterior, también ofrecen un paquete de NuGet para hacerte tu propio paquete de integración.
Articy Draft sigue un modelo de licenciamiento por subscripción, pero tiene una modalidad gratuita, con todas las funcionalidades, y que incluso puede usarse para proyectos comerciales, con la única limitación de un máximo de 700 objetos a gestionar por proyecto. Aun así, esa cantidad de objeto es muy generosa, y probablemente más que suficiente para la mayor parte de los proyectos medianos y pequeños. En todo caso, es más que suficiente para probar la herramienta y decidir si merece la pena. Si necesitásemos más de 700 objetos en nuestro juego, podríamos acudir a cualquiera de las licencias de pago (las individuales son bastante asumibles).
Dialogic
La herramienta anterior sólo tenía integración directa con Unity y Unreal, así que, para equilibrar la cosa, ahora vamos a hablar de una que sólo existe para Godot: Dialogic.
Dialogic es un plugin para Godot orientado a hacer sistemas de diálogo interactivos, novelas visuales (visual novels), RPGs y gestión de personajes. Desarrollado inicialmente por Emilio Coppola en 2021 como una solución para agregar conversaciones ramificadas de manera sencilla, ha evolucionado hasta convertirse en una herramienta madura y popular en la comunidad de Godot, especialmente para desarrolladores indie que buscan integrar narrativas complejas sin escribir código extenso desde cero. Está disponible bajo licencia MIT, lo que permite modificaciones y uso comercial libre.
Logo de Dialogic |
Proporciona un editor integrado en Godot para diseñar "timelines" (líneas de tiempo de diálogo), que son secuencias de eventos como texto, opciones del jugador, animaciones, condiciones lógicas y señales. Estos timelines se ejecutan en tiempo de juego para mostrar conversaciones dinámicas y con ramificaciones, eventos y elecciones. Se pueden añadir condiciones (if/else con variables), señales (para triggers en el juego), animaciones y fondos a dichas conversaciones.
Editor del Timeline de Dialogic |
Incluye un sistema de gestión de personajes con retratos, expresiones y colores personalizados, y soporta extensiones para eventos customizados.
Editor de personajes de Dialogic |
Visualmente es completamente personalizable, con temas editables (colores, fuentes, estilos de burbujas de texto), soporte para audio (voz en off, SFX), animaciones (e.g., shake de pantalla) y eventos customizados con poco código GDScript. Incluye estilos prehechos como "text bubble" para novelas visuales.
También contempla la localización, permitiendo traducciones integradas con glosarios traducibles.
Cuenta con una comunidad muy activa que lo ha dotado de extensiones para que pueda interactuar con otros plugins como SmartShape2D para terrenos o Godot Steamworks para logros.
Si vas a desarrollar con Godot, Dialogic es la opción más sencilla y económica dado que está repleta de funcionalidades, ya está más que probada en multitud de juegos de Godot y es gratuita.
Scrivener
Todas las herramientas anteriores, salvo quizás Twine, contemplan cierto nivel de integración o compatilidad con game engines. Scrivener es una algo muy diferente. Se trata de una herramienta 100% pensada en escritores y guionistas.
Desarrollada por la compañía Literature & Latte, aunque no esté específicamente creado para el desarrollo de videojuegos, es una herramienta versátil que puede ser extremadamente útil para escribir y estructurar guiones de videojuegos, especialmente para proyectos narrativos como RPGs, aventuras gráficas, novelas visuales o cualquier juego con historias ramificadas
Logo de Scrivener |
Toma la forma de un procesador de texto avanzado y herramienta de gestión de proyectos que combina escritura con organización de notas, investigación y estructuración no lineal. Permite dividir un proyecto en secciones manejables (capítulos, escenas, etc.), gestionar materiales de referencia (imágenes, PDFs, notas) y exportar en múltiples formatos. Además cada uno de los contenidos que se creen con Scrivener pueden ser enriquecidos con metadatos, notas, etiqueta y referencias.
Para planificar arcos narrativos ofrece un modo de visualización similar a un corcho en el que cada una de las secciones se visualiza como una tarjeta.
El corcho de Scrivener |
Todo el interfaz es muy flexible, jugando con él, y haciendo un uso adecuado de las etiquetas, se pueden configurar líneas de tiempo con la que desarrollar líneas argumentales paralelas.
Líneas de tiempo con Scrivener |
No esperes herramientas para darle formato. En ese sentido, Scrivener es muy sencillo, casi primitivo. En realidad, está pensado para concentrarse en generar el contenido y luego exportarlo para darle formato en otras herramientas. Por ejemplo, mucha gente configura Scrivener para exportar el contenido generado a LaTeX y luego, desde un editor de LaTex, exportan a PDF con todo el formato de la plantilla de LaTeX empleada.
Por tanto, Scrivener es una excelente herramienta para escribir y organizar el guion de un videojuego en la fase de preproducción, especialmente para estructurar narrativas complejas y mantener el lore organizado. Sin embargo, no está diseñado para simular interactividad ni integrarse directamente con motores de juego, por lo que necesitarás combinarlo con herramientas como Twine (para prototipos rápidos), Dialogic (para Godot), Yarn Spinner (para Unity) o Articy:draft (para proyectos AAA). Si tu enfoque es escribir un guion detallado antes de la implementación técnica, Scrivener es una gran elección; si necesitas interactividad inmediata, opta por una herramienta específica para videojuegos.