Diario de Desarrollo. 7 días uniendo estrellas


Escribo esto sobre las 16:00 de la tarde. Ayer a estas horas estaba aún puliendo el juego, para añadir todo lo que debía añadirse y terminar de equilibrar la jugabilidad. Aún a última hora añadí los créditos y ya respiré tranquilo. El juego estaba subido y presentado a la #indiespainjam2023. Trabajo cumplido. Pero eso ya lo sabéis, lo que os voy a contar es cómo fue el desarrollo durante siete días de infarto.

1º Día. Lunes. Termina el directo en Twitch y se anuncia el tema: “Cae la noche”, quizás de los cuatro el que menos me gustaba. Ya había hecho juegos de zombies, momias y hombres lobo, y el tipo de juego que venía preparando a largo plazo encajaba demasiado en el tema. Por lo que decidí hacer algo distinto. Hablando con amigos y con mi pareja, llegamos a la conclusión de que debíamos huir del tópico de “Cae la noche y aparecen monstruos”. Así llegamos a la primera idea: La noche y sus estrellas. Trazar constelaciones.

En un primer momento iba a ser un anciano con un telescopio, de retiro en una tienda de campaña, buscando estrellas fugaces y constelaciones. Un juego muy narrativo con toques de puzle. Pero lo consideré quizás demasiado triste o melancólico. Así que decidí darle una vuelta de tuerca. y si las constelaciones sirvieran para lanzar hechizos. Dos magos enfrentados bajo la luz de las estrellas.  Absorbiendo su poder y lanzado sus ataques hasta derrotar a su oponente.


Primeros diseños en papel, la noche de comienzo.


Antes de comenzar a programar nada, ya hice algunos diseños de la protagonista. Iba a ser una estudiante en una escuela de magia. El diseño final fue luego dibujado directamente en el ordenador utilizando una pequeña tableta de dibujo.

2º Día. Martes. La noche anterior había sacado la idea general. Dediqué toda la mañana a preparar el GDD en Notion (herramienta que recomiendo).  Mi primera inspiración fue la mitología griega, por el nombre de las constelaciones, obviamente, así que me documenté sobre los oráculos griegos en la mitología. Hice una interpretación muy libre y me imaginé un mundo actual sin estrellas, ocultadas por la contaminación. La única guía para el ser humano y su la única esperanza era encontrar un nuevo oráculo, que guiara al mundo.

En el papel, la protagonista, era una estudiante en una academia de aspirantes a oráculo, tipo Howarts. Tendrías tu habitación, tu gestión del tiempo, preparación de hechizos mirando las estrellas y finalmente, los duelos de constelaciones. Llegado a este punto empecé a programar un prototipo básico en GameMaker de unir estrellas.


En este primer prototipo ya tenía la barra de "distancia" que desapareció en el ecuador de la Jam.

Esta primera versión tenía como característica principal, que solo podías unir estrellas dentro de un rango (como en los juegos de naves espaciales, con el rango de salto). Era una manera de equilibrar el poder de tus hechizos y añadir una progresión. Cada turno aumentaría tu rango de "distancia". Fue fácil de programarlo, pero ya en aquel momento me costaba describirlo dentro del juego. Además la funcionalidad inicial era que se consumiera la barra por cada estrella pulsada, pero luego la dejé como "distancia" entre cada estrella.

Ya dediqué todo el día a empezar a montar interfaz y a preparar a dos magos para la batalla. También trasteé con las nuevas opciones de Shaders de GameMaker, que se pueden activar por capas u objetos en la pantalla de juego. Así conseguí efectos de brillo, reflejos en el agua, ondulaciones, sin apenas esfuerzo (aunque el juego empezó a sufrir en rendimiento para una posible versión web).

Así terminó el juego el martes:


En los primeros diseños de la mecánica, era posible encontrar constelaciones ocultas, colocadas entre el resto de estrellas para hacer hechizos especiales más poderosos. Sin embargo, la función fue descartada ante la falta de tiempo,  aunque estuvo integrada en las primeras versiones. Al día siguiente me di cuenta que esa constelación no era Acuario sino Casiopea...

3º Día, Miércoles.  Termino el GDD temprano con ya el plan de lo que quiero plasmar y comienzo con el diseño de los personajes. Tenía claro que quería una chica, así que comencé a trabajarla en PhotoShop por capas, con la intención más tarde de importarla a Spine con el plugin PhotoshopToSpine. Así luego bastaría con configurar los huesos y comenzar a animar. Además el personaje base, al estar hecho en spine, permite el intercambio de piezas, por lo que tendría la base para los enemigos, ya que configurar los esqueletos y sus uniones, para que giren bien los brazos y piernas, es lo más complicado, de lejos. Por eso, un personaje que se mueva bien, sirve a la perfección para crear el resto.


Como curiosidad, "Maia" es el nombre de una estrella que forma parte del cúmulo abierto de las Pléyades en la constelación de Tauro.

Ese mismo día ya tenía animada a Maia y al primer enemigo del juego: La acólita.



El desarrollo iba bien, pero era el momento de comenzar a preparar la jugabilidad y el equilibrio del combate. Entre el resto del miércoles y el jueves por la mañana, pude preparar los personajes dentro del juego y comenzar a implementar los duelos. Comenzaba la parte clave. Las estadísticas. En primer lugar tenía claro una barra de vida como en la captura inferior. Pero ese era el menor de los problemas.

Primer prototipo del combate ya funcional. ¿Ves la barra de Maná/distancia? Estaba condenada  a desaparecer.

4º Día, Jueves.  Este día se celebraba el directo de Twitch de la organización y uno de los comentarios de Daniel y Javi (Delunado), fue: ¿Por qué no ha enlazado más estrellas en el gif? Recapitulamos.

En este momento tenía tres estadísticas base: Vida, Maná (Distancia o como se llame) y Escudo. El enemigo por ahora no tenía Maná, porque no iba a poder hacer constelaciones  (no me daba tiempo en una semana a montarlo bien). La limitación del Maná era una forma de equilibrar y dar una progresión a los combates. Pero, sin querer, estaba limitando el potencial del juego. Lo "chulo", hablando en plata, era llenar el cielo de líneas y tirar super hechizos al enemigo. No lo limitemos. Y así desapareció el Maná. Sin embargo, ahora me faltaba una estadística, ya que necesitaba un mínimo de tres (una por estrella). Así nació el término Concentración: Un multiplicador de poder, que durante unos días afectaba a todos  los hechizos (viva las matemáticas).

El resto del día ya lo dediqué a hacer los ataques principales del personaje y a pelearme con el interfaz, colores, posición de elementos, etc. También la organización del turno era importante ya que tenía todo hecho, pero el enemigo no atacaba aún y tenías que poder preveer qué iba a hacer el enemigo para poder actuar en consecuencia (poder de adivinación), como ocurre en Slay the Spire y otros juegos de combates, donde la clave está en ese conocimiento. Si no supieras qué va a hacer el enemigo, podría pillarte con la guardia baja y atacarte dónde más te duela...


Primera versión del mapa, que tuve que recortar ante la falta de tiempo.

5ºDía, Viernes. En estos momentos tengo el combate terminado y el primer enemigo creado funciona, te ataca y actúa en consecuencia con una simple programación. Si tiene vida baja, se cura, si tiene poco escudo, se lo rellena, o si tiene la concentración baja, se la rellena. También en las primeras versiones, si tenías poca vida, te remataba con su ataque poderoso (todos los enemigos tiene dos ataques y tres maniobras defensivas). Era algo tan injusto que tuve que modificarlo. 

Parte del equilibrio venía con los números de curación, escudo y concentración. Cree un archivo que concentraba todos los datos y fácil de manipular globalmente, ya que equilibrar cada poder es la clave. Si la curación fuera muy poderosa, sería imposible que te derrotaran, igual que usar el escudo. Un escudo te bloquea todo el daño, por muy débil que sea, pero tiene la contrapartida de cortar por la mitad tu concentración: Una decisión arriesgada, pero una característica que también afectaba al enemigo, por lo que se promovía el juego ofensivo.


Sin embargo, esta decisión hacía demasiado poderosa a la concentración, ya que perder un escudo, reduciría tu curación, generación de escudo, etc.. por lo que decidí limitar su efecto únicamente al ámbito ofensivo. También reduje los valores de regeneración de vida y de concentración y escudo en general, ya que de normal vas a atacar con combinaciones de 10-15 estrellas fácilmente, que sumado a tu concentración o rotura de escudo, se convierten en ataques de más de 100 de daño.

A partir de este momento, ya con la jugabilidad terminada, me quedaba todo el fin de semana, por lo que me planteé crear contenido para darle algo más de profundidad al juego.


Imagen del mapa durante el desarrollo, dentro del editor con la posición de todos los artefactos.

6º Día. Sábado. Viendo que aún quedaba tiempo, dedique parte del día a crear más enemigos (nació la sombra), y crear variaciones entre ellos, nuevos ataques y el sistema de mapa. Quería una progresión con distintos caminos y algunas sorpresas. Creando nuevas variaciones nació el personaje de Veria, tu mentora, permitiendo meter algunos diálogos sencillos a la trama y darle algo de contexto sin aburrir demasiado. También permitiría meter una escena de tutorial para que el primer combate fuera fácil y diera tiempo al jugador para hacerse con las mecánicas.

Enb

También añadí el concepto de artefactos, creando el diseño en poco tiempo y buscando la forma de implementarlos. Quería que modificaran la jugabilidad, sin ser demasiado poderosos, pero que pudieran marcar la diferencia de cara a los jefes finales.


Los anillos y colgantes permitirían enfocar tu juego en uno de los colores y el resto de artefactos tendrían efectos también interesantes y que afectaran a la jugabilidad. En total, hay 10 artefactos en el juego implementados.

Para que las partidas se sintieran distintas, los artefactos que aparecen son aleatorios, en la mayoría de cofres del mapa.

7º Día, Domingo. Ya en la recta final. Dediqué el último día a equilibrar el juego, terminar los ataques enemigos, renovando animaciones y poderes, creando nombres, diálogos, escenas y escenarios. Fue una pasada poder meter todo el contenido que tenía previsto, prácticamente en el último momento. También me dio tiempo a meter el jefe final (que pensaba que me iba a ser imposible) y los últimos retoques a la interfaz, con el nuevo diseño del libro, cambios en el personaje principal, variaciones de enemigos y algunas sorpresas (como cierta máscara).


8ºDía, Lunes. A las 18:00 de la tarde se terminaba el plazo. Dediqué todo el día a preparar las escenas finales, la historia con algún giro y escribir los diálogos del final. El resto del tiempo fue testeo, testeo y testeo. Había muchas cosas que no terminaban de funcionar (la magia del código y las matemáticas). Tuve que jugar cada combate y equilibrarlo numerosas veces, probando ataques, hechizos, efectos de artefactos y controlando que los números del duelo fueran los esperados.

¿El resultado? Un juego hecho en una semana del que estoy bastante orgullo. Espero que lo hayas disfrutado. Estaré pendiente de todo el feedback que me estáis dando para ir mejorando el juego tras la Jam. ¡Muchas gracias por leerme!

Files

The book of starry nights.exe (Installer) 37 MB
Sep 25, 2023
The book of starry nights.zip (Unzip and play) 24 MB
Sep 25, 2023

Get The Book of Starry Nights

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.