Introducción a eChargen : Generador de personajes modular para narradores ocupados
¿Necesitas ahorrar tiempo o salir de un apuro cuando te hace falta un personaje extra en tus narraciones? ¿Tienes en tus manos miles de generadores distintos pero ninguno sirve exactamente para lo que necesitas? En esta entrada, vamos a introducir proyecto eChargen. La aplicación que aspira a resolver todos estos problemas.
La creación de personajes es una de las partes más complejas del proceso creativo, el tiempo necesario para llevarlo a cabo es proporcional a lo metódico que seamos y si somos ya tan solo un poco detallistas, puede llevarnos a una espiral descendente de frustración y locura. ¿Quien tiene tiempo de darle una personalidad única a personajes incidentales como el panadero del pueblo o el dueño de la tienda de pociones? Es cierto que el impacto de estos personajes apenas es anecdótico en la trama y por ello no deseamos dedicarles más tiempo del que merecen… ¿Y si pudieramos reducir el tiempo para crear un personaje coherente a un solo click que lo dejase listo para ser interpretado?
Existen herramientas que ya generan personajes, aunque son genéricas y no se adaptan del todo a nuestros propósitos. También es algo que podemos pedir a ChatGPT, en cuyo caso debemos dedicar un tiempo a ponerlo en contexto, hablando en un lenguaje claro y conciso para que sepa qué es lo que necesitamos. Parece que una solución de complejidad intermedia podría ser de ayuda para todos aquellos narradores que quieren ahorrar tiempo al crear personajes incidentales. Los protagonistas seguirán necesitando el mimo que solo su autor puede darles.
Esa herramienta de la que hablamos está en proceso y se llamará eChargen (Elrikpiro’s Character Generator). Con eChargen será posible crear una plantilla de personaje utilizando módulos con los cuales podremos definir que información queremos que se genere y de que modo. Con esta plantilla podrán generarse personajes, no solo en casos aislados, si no también interrelacionados entre ellos. ¿A que era tedioso detallar un solo personaje incidental? Pues imagina que puedes tener ese personaje y toda su familia si te hace falta, tan solo pulsando un botón.
¿Y por qué desarrollar esto?

En realidad, eChargen ya existe en una versión preeliminar. Lo hice como un proyecto para automatizar algunas tareas rutinarias de worldbuilding. Podía hacer cosas simples como generar un personaje y darte su nombre o cosas complejas como generar toda la población de un asentamiento humano 1000 años después de que sus familias originarias se establecieran y empezasen a relacionarse y formar nuevos nucleos familiares entre ellos.
En usabilidad y mantenibilidad, era un desastre. Lo hice para practicar un lenguaje de scripting —Python— y debió haberse quedado en un pequeño script que me facilitase el trabajo, pero creció hasta convertirse en un monolito indomable. Le veía potencial, pero carecía de una interfaz amigable y estaba muy acoplado a mis necesidades.
Me pareció que hacer un planteamiento modular para que pudiera ser utilizado en cualquier clase de proyecto podría ser interesante, así que me puse manos a la obra.
Desafíos

Desarrollar un proyecto que se adapte al mayor número posible de escenarios presenta un reto importante: A mayor flexibilidad, mayor complejidad. Por ello no se puede desarrollar un generador de personajes modular y ampliable sin una base sólida. Una arquitectura que funcione tanto para personajes muy simples —únicamente un nombre—, hasta personajes de complejidad inmanejable a tracción animal.
Debe servir a todo tipo de narradores, para sus historias y también para sus juegos de rol.
Pero lo más complicado, especialmente para alguien tan obtuso con las interfaces gráficas como yo es que debe ser fácil de usar.
Oportunidades
Este proyecto puede ser un buen ejercicio de desarrollo para mi tiempo libre, pero también una utilidad que sirva a narradores para salir de un apuro o romper un bloqueo. Que no todo en esta vida puede ser ChatGPT. Hablando de éste último, es posible integrarlo en la generación de personajes, otra cosa será qué utilidad queramos darle ya que el nivel de abstracción de los modelos de lenguaje GPT es muy limitada —aunque parezca lo contrario— y puede tener una mayor potencia en tareas más específicas del proceso de generación.
Desde la definición de personajes no jugadores improvisados hasta la lluvia de ideas para historias de una pequeña aldea, generada por completo usando este sistema —capacidad que ya tenía la primera versión—, si rompemos las barreras de la usabilidad, este proyecto puede hacer más liviana la carga de detallar nuestros mundos, para que no se limiten a ser un iceberg hueco y puedan sorprendernos incluso a nosotros, sus creadores.

Próximas entradas
Un proyecto de esta magnitud a dos horas semanales de dedicación de un único picateclas tendrá un tiempo de desarrollo demasiado alto si esperamos a que el generador esté completo. En lugar de esperar tanto, trabajaremos mediante pequeñas metas.
La primera versión de la herramienta será un generador de nombres configurable. Esa versión está ya en desarrollo e incluirá una infraestructura base a partir de la cual seguiremos desarrollando características. Será publicada y compartida en esta misma sección tan pronto como esté disponible.
Si te interesa estar al día del progreso del proyecto puedes meter éste blog en tu feed reader, seguirme en twitter o marcar como favorito el repositorio de github. Sea cual sea vuestra elección, gracias por llegar hasta aquí.
Un saludo y escribid, que no os hará daño.