Seleccione su idioma

Eau Rouge
Eau Rouge

De nuevo toca contar cómo voy avanzando en el juego, y qué cosas he estado haciendo para que parezca más real, fluido y, sobre todo, divertido. Para empezar, estoy terminando un nuevo circuito: el legendario Spa-Francorchamps, uno de los más desafiantes del mundo, y ya tiene los suficientes detalles para hacerlo bastante auténtico. Pero no solo eso: también he estado mejorando la física, la IA, los gráficos y la configuración de los controles del jugador. Espero que los detalles sean interesantes.

 

Modelando Spa Francorchamps

Crear este nuevo circuito ha costado bastante. Me planteé una o dos semanas para hacerlo y lo que se puede ver en el video de abajo es el resultado de un mes. De hecho, aún hay unas cuantas cosas que me gustaría mejorar, como añadir alguna zona de árboles y cambiar algunas gradas. Por lo demás, el circuito imita la curvas y desniveles del trazado belga bastante bien, teniendo en cuenta siempre el tipo de juego del que estamos hablando.

Mejoras en la física del coche

Tras publicar la demo en enero y ver algunos comentarios, me puse como objetivo que el coche se comportara de forma algo más realista y creo que lo que se pude ver en estos momentos es bastante mejor. Ahora, cuando te deslizas hacia el exterior de las curvas por la pérdida de adherencia, el coche rebota un poco, algo que antes no pasaba. Es un detalle pequeño, pero hace que el movimiento sea más natural, más realista.

También modifiqué (una vez más) las colisiones. Necesitaba mejorarlas especialmente entre el jugador humano y los coches controlados por IA. Ya no van a colisionar de forma rara o impredecible. Y, por otro lado, el jugador se ve afectado por el choque, sufriendo un efecto de acción - reacción que lo envía hacia el otro lado, perdiendo el control por unos instantes.

Pantallas de configuración

Hasta ahora había que modificar un archivo de texto (un .ini en realidad) para modificar resolución de pantalla, modo pantalla completa y alguna cosa más. Era un poco engorroso así que ya era hora de tener las usuales pantallas de configuración. De hecho, hay más. Se puede configurar el nombre del jugador y las teclas y, o botones y palancas de un gamepad. ¡Ah! también es posible cambiar las acciones de los dos botones de un joystick clásico de Amiga.

GUI Settings
GUI Settings
GUI Settings
GUI Settings

Animaciones y algoritmo de pintado revisado

El efecto del giro de las ruedas es otra de las cosas importantes relacionadas con el movimiento y mayor realismo de los coches. Ahora cada rueda tiene 4 sprites que se van alternando en cada frame para dar sensación de giro. Esto es algo que pienso que da "vida" al coche. De hecho, el resultado me gusta bastante.

Además, mejoré el orden en el que se dibujan los coches IA. Antes, a veces uno se dibujaba por encima del otro. Ahora se respetan las posiciones correctas y no hay (o no deberían haber) superposiciones raras. También he eliminado algunas resoluciones y he dejado otras que me parecen más útiles como 1280x720 y 640x360, para que el juego se vea bien tanto en PCs como en Amiga. 

IA más inteligente

Los coches IA siguen mejor la trazada del circuito, frenan mejor y son algo más inteligentes, así que ahora son más difíciles de batir y, por tanto, es mas divertido competir con ellos. Todo esto teniendo en cuenta que cada coche tiene una IA con características diferentes de agresividad, tiempo de respuesta y técnica que lo hacen comportarse de forma diferente y que sea más o menos fácil quedar por delante de el.

Se avecina una versión demo para Linux

También he estado revisando la construcción y el empaquetado del juego. Estoy preparando el juego para que cualquiera pueda ejecutarlo fácilmente en cualquier sistema. Ahora hay un script para generar un AppImage, que es una forma de empaquetar el juego para que funcione en diferentes distribuciones de Linux sin necesidad de instalar dependencias. 

Corrección de errores y estabilidad

Y como esto es un devlog también toca hablar de la corrección de algunos errores importantes. En la versión para Amiga, por ejemplo, arreglé problemas con comparaciones de punteros. También he actualizado la versión del juego, eliminado archivos obsoletos y agregado nuevos activos de referencia, para que todo esté siempre en su sitio.

También tocó revisar con Valgrind la liberación de los recursos de la interfaz gráfica (GUI), para asegurarse de que las superficies y fuentes se liberaran correctamente. Normalmente siempre hago una revisión de las cosas que detecta Valgrind cuando añado bastantes funcionalidades para no dejar punteros de memoria "olvidados" ya que esto afecta mucho al Amiga haciendo que el juego se cuelgue.

¿Qué viene ahora?

Spa-Francochamps está casi listo, pero la parte negativa de esto es que crear un circuito con un nivel de detalle aceptable me cuesta más o menos un mes. Quería tener unos 20 circuitos, la mayoría de ellos reales, así que el cálculo nos deja más de año y medio solo para crear circuitos. Es algo en lo que tengo que pensar y buscar alguna mejora o alternativa. En lo que respecta al juego en sí, estoy experimentando con mandos analógicos, pero de momento no voy a contar nada más sobre esto.

¿Quieres seguir el desarrollo? Te invito a que me sigas en itch.io, YouTube y bluesky. Allí encontrarás las últimas actualizaciones, vídeos de prueba y mucho más.