Al fin, primer demo alcanzado

 Ayer completé una primera ronda de pruebas, rectificando y agregando contenido hasta donde fue posible. Con eso he alcanzado la hora y media de juego, distribuidas (no muy bien) a lo largo de tres escenarios con dos locaciones subordinadas adicionales. La introducción a la historia principal del juego está ahí, aunque podrían haber cambios, claro. O sea, al fin estamos listos para un demo cerrado.

El contenido actual incluye las susodichas escenas, casi 300 líneas de diálogo, unas trece misiones, cuarenta ítems, unas cuantas peleas (se agregarán algunas más, aparte de los dos puntos de respawn actuales) y mucho territorio por explorar. Sobre todo eso, les recomiendo explorar. El sistema de combate funciona, aunque estamos escasos de habilidades en ciertas clases, y estoy planificando un refactorizado. Hay una carencia relativamente importante: no es posible reparar los objetos todavía, pero a menos que abuses de ellos, deberían aguantar la hora y media de juego, en especial las armas, que son las que más uso reciben.

Durante los últimos tiempos, he ido chocando con pequeñas limitaciones de Godot. Se echa de menos un sistema de cinemáticas, aunque por ahora se ha ido supliendo eso. El sistema de navegación es, por decirlo de forma amable, una mierda. He tenido que mantener la complejidad de la escena bajo control, porque en cierta ocasión, encontré crasheos del motor al calcular una malla muy extensa. La búsqueda de caminos puede devolver resultados jodidamente ridículos, lamentablemente tendremos que apechugar con eso, porque es lo que hay. Con el nuevo kitbash, el rendimiento se ha ido al carajo, aún cuando ahora tenemos menos polígonos por cada edificio. Godot sigue reportando entre 2 y 3 millones de primitivas en la escena, o varios miles de primitivas en objetos que solo tienen 300 polígonos, no queda claro de dónde saca esa información, o qué entiende Godot por "primitiva". 

Ya veremos qué nos dicen los primeros afortunados (o desgraciados) que prueben el demo.

Más pruebas con O3DE


 Otro video de O3DE. Esta vez reimplemento un sistema traído desde las lejanas tierras de Godot, para ocultar el techo al entrar en las casas y así poder explorar el interior sin problemas.

Reporte de avance

De vuelta con otro reporte de progresos, aunque en realidad no ha sido gran cosa. Mayormente mi trabajo ahora consiste en agregar contenido, y algún que otro bugfix. Al fin se ha integrado al proyecto un primer kitbash para las casas de dos de las escenas. En algún momento debe llegar un segundo. Justamente eso es lo que me está atrasando ahora: el trabajo de rehacer casi todas las edificaciones  suele tomarme muchísimo tiempo. A pesar de que estoy dedicando casi tres horas diarias al trabajo, si los apagones lo permiten, no he conseguido todo el avance que quería para la presentación el día 23.

En cuanto a eso, si estás por la Habana en esa fecha, habrá un encuentro con jugadores en el Joven Club de Plaza. No sé si habrá equipamiento que cumpla los requisitos del juego, pero si lo hay, será posible verlo en acción.

Ahora, vayamos a otra cosa. En concreto, a otro culpable del atraso. En esta semana o la próxima debería salir O3DE 24.09 y he logrado probar el preview en Linux. Ha sido un proceso accidentado, pero de nuevo estoy poniéndome al día con el motor, e incluso hice un reporte de bug. El mes dedicado a estudiar Blueprint me ha servido de base para entender mejor el Script Canvas. Hay grandes diferencias: Script Canvas es orientado a eventos, los get/set están dentro de la línea de ejecución mientras que en BP basta que algún nodo las use, en BP necesitas un Sequence para ejecutar una secuencia de instrucciones y en SC puedes, desde cualquier nodo, conectar hilos de ejecución con varios nodos más, y otras que de momento, no he identificado. Sin embargo, conocer BP me ha abierto un poco la mente a esta forma de programar, y probablemente si hubiera dedicado más tiempo a SC, habría entendido BP mejor desde el principio.


 

Pero volviendo al tema, O3DE ya está casi listo para producción. De hecho, hay varios equipos haciendo cosas comerciales y ha ganado cierto renombre en aplicaciones de robótica. La versión 24.09, tal como esperaba, va a marcar un punto de inflexión, de ahora en adelante marchamos hacia la madurez del motor. Cabe esperar optimización, mejoras de estabilidad, usabilidad y el completamiento de funcionalidades como un sistema de partículas libre (desarrollado por Huawei). Todavía no lo veo como indie friendly, pero para un equipo con varios ingenieros capaces, las posibilidades de personalización de los flujos de trabajo son interesantes.

En cuanto regrese del viaje, pienso dedicar algo de tiempo a dominar Script Canvas y sacar algunos videos cortos con casos de uso básicos, de esos que ayudan más cuando uno está en pañales.