Mastodon
← Todas las entradas
por Casey Jones Labs · 10 min de lectura

Construyendo SkyChart Dev Blog #2: quince versiones, una pista muy ocupada

devlogskychartbehind-the-scenes
Este artículo fue traducido automáticamente del inglés. Leer el original
Tabla de contenidos

Cuando publicamos el Dev Blog #1, SkyChart iba en la v0.2.17, un simulador de aerolíneas funcional con 150 ciudades, 33 aeronaves y un motor que más o menos seguía el ritmo. Dijimos que volveríamos con más. No esperábamos volver con tanto más.

Quince versiones después, el juego triplicó su número de ciudades, duplicó la flota, ganó soporte completo de mando, una renovación de accesibilidad, sistemas de guerra económica que pondrían nerviosa a la OPEP y un motor de renderizado que ya no implora piedad con 1.600 rutas. Estuvimos un buen rato metidos en el hangar. Vamos a llevarte por lo que cambió.

Casey, la guacamaya del estudio, insiste en que mencionemos que supervisó personalmente cada actualización. No lo hizo. Comió nueces y nos juzgó.


La renovación del motor que nadie vio (pero todos sintieron)

Empecemos por lo menos glamoroso, eso que hace posible todo lo demás.

En la v0.2.17, alejar el zoom sobre una red grande de rutas era… cinematográfico, en el peor sentido. 9 cuadros por segundo con 1.600 rutas. El mapa redibujaba cada ruta, en cada cuadro. 19.000 nodos de línea individuales haciendo su mejor imitación de una presentación en PowerPoint.

Reconstruimos todo el motor de renderizado de rutas desde cero. Una pasada de dibujo por lotes reemplazó a miles de nodos individuales. Hacer paneo en el mapa ahora cuesta cero draw calls, la imagen renderizada simplemente se desliza. Las rutas solo se redibujan cuando la red de verdad cambia. Después de la reconstrucción: 60 FPS parejos, incluso con miles de rutas cruzándose por el globo.

También pusimos en tierra a 56.000 sprites de avión invisibles que seguían quemando CPU en cada cuadro como pilotos fantasma cobrando horas extra. Los aviones ocultos ahora pierden su licencia de procesamiento por completo.

Después construimos un benchmark de desempeño con autoajuste. Presiona “Ejecutar Benchmark” en Ajustes y el juego estresa tu GPU, CPU y pipeline de texturas en unos 8 segundos, luego ajusta automáticamente 11 límites de desempeño a tu hardware. Umbrales de visualización de rutas, tamaños de caché de tiles, densidad del clima, cantidad de hilos del recomendador, todo calibrado automáticamente. Si empujas un slider más allá de la zona recomendada, aparece una advertencia amarilla. Ya vimos capitanes ignorar los indicadores de Casey antes. Nunca termina bien.

El panel del benchmark de desempeño mostrando el nivel de hardware y los ajustes sintonizados Tu aerolínea ahora tiene departamento de TI. El benchmark ajusta 11 opciones para que tú no tengas que hacerlo.


496 ciudades. 66 aeronaves. Modo Infinito.

El mundo se volvió mucho más grande.

Ahora hay 496 ciudades en el mapa, desde las 150 iniciales, que van de Tombuctú a Petropávlovsk-Kamchatski (nos costó tres intentos pronunciarla). Cada ciudad nueva tiene poblaciones de 1930 investigadas, tasas de crecimiento, valores económicos, códigos IATA y coordenadas reales de aeropuerto. Un sistema de visibilidad de 4 niveles mantiene el mapa legible: los Hubs Globales están siempre visibles, las ciudades Menores solo aparecen cuando haces zoom de cerca.

La flota también se duplicó. Ahora hay 66 aeronaves en el catálogo, modelos históricamente precisos desde el biplano Cortez Condor (1933) hasta la era moderna, más diseños futuros especulativos como el transporte suborbital Bering Orbital 1 (2085), extrapolados a partir de conceptos reales y tecnologías aeronáuticas emergentes. De las hélices a los motores de plasma hipersónicos. Los archivos de guardado de versiones anteriores se migran solos sin problema, sin aeronaves perdidas ni papeleo traspapelado.

Al completar las cuatro eras desbloqueas el Modo Infinito: vuela más allá de 2020 sin límite de tiempo ni objetivos. Jets de hidrógeno, cuerpos de ala mixta y saltadores orbitales te esperan en las décadas por venir. El cielo ya no es el límite.

Y como no todos quieren jugar al mismo ritmo, agregamos cuatro opciones de ritmo de juego: Arcade (45 segundos por mes, para impacientes), Estándar, Extendido y Tiempo Real (30 minutos por mes, para capitanes que disfrutan cada turbulencia). Las animaciones de los aviones se ajustan al ritmo que elijas. Los aviones en Arcade pasan zumbando por el mapa como Casey tras encontrar un plato de nueces sin vigilancia.

El Asesor Estratégico del Blog #1 solía procesar 11.175 pares de ciudades. Ahora procesa 122.000+. En un pool de hilos en segundo plano. Sin sudar. De eso sí estamos genuinamente orgullosos.

El mapa del mundo mostrando la red dramáticamente expandida de 496 ciudades 496 ciudades. 122.000+ rutas posibles. El Asesor Estratégico se hace cargo para que tú no tengas que hacerlo.


Bienvenido a la sala de guerra

SkyChart siempre fue un juego de estrategia. Pero ahora tiene los instrumentos a la altura.

Doce nuevos dashboards analíticos aterrizaron en la suite ejecutiva. El Reporte de Riesgo de Flota detecta aviones envejecidos antes de que se vuelvan pisapapeles. El Pronóstico de Flujo de Caja proyecta tu saldo a 12 meses con sliders de escenarios. El Buscador de Saturación de Pares de Ciudades clasifica los más de 122.000 pares por puntaje de oportunidad para que dejes de volar dentro de peleas a cuchillazos. La Evaluación de Amenaza de Competidores perfila la estrategia de expansión de cada rival y su superposición con tu red.

Después te armamos.

La guerra económica completa llegó en la v0.2.28 y cambió la sensación del juego por completo. Las economías regionales ahora tienen auges y caídas mes a mes. Las ciudades entran en fiebres del oro de varios trimestres (+40% de demanda) o en caídas por sobresaturación (-30%). Shocks dinámicos de mercado golpean cada trimestre: crisis de combustible, colapsos de hub, recesiones globales, fusiones aéreas gigantescas.

La especialización de hub te permite declarar hubs como Carga, Turismo o Negocios para un +20% de demanda acorde. Las guerras de precios se disparan automáticamente cuando bajas precio debajo de un rival en rutas disputadas. Costos x1,5, +20% de demanda, pura adrenalina. Domina un 40%+ de una región y los rivales de la IA lanzan guerras de mercado predatorias de 6 meses, bajando todo y quitándote tus mejores ciudades.

Subastas de slot a sobre cerrado reemplazaron al primero-que-llega-gana. Alianzas de código compartido con reparto de ingresos real. Espionaje corporativo: contrata informantes para tres niveles de inteligencia, desde datos de rutas hasta finanzas completas hasta el robo corporativo liso y llano. Los rivales también te espían. El nombre clave de Casey es “Trueno Tropical” y se niega a cambiarlo.

La conferencia trimestral de resultados pasó a ser un informe de campo de batalla.

Dashboards de inteligencia estratégica mostrando riesgo de flota y análisis de mercado Doce dashboards nuevos. Energía de terminal Bloomberg para tu imperio aéreo.


Una cabina que todos pueden volar

El Blog #1 mencionaba el soporte de mando como una adición tardía. Ahora es una característica insignia.

La integración completa con la Steam Input API significa que cada mando de Xbox, PlayStation, Switch y Steam Deck tiene soporte automático con los glifos de botón correctos. No placeholders genéricos, sino los íconos exactos de tu mando. Tres conjuntos de acciones sensibles al contexto cambian de forma fluida mientras navegas. Un teclado QWERTY en pantalla aparece automáticamente para usuarios de mando cuando pones foco en cualquier campo de texto. Cada panel responde a la entrada del gamepad.

98 logros de Steam están totalmente conectados, desde Primer Vuelo hasta Cada Asiento, Cada Ciudad. 15 estadísticas de Steam se sincronizan con tu perfil. Los marcadores de Steam Timeline guardan tus mejores momentos para Steam Replay. Tablas de posiciones globales y locales te permiten comparar tu imperio con el del mundo entero.

Pero la actualización de la que más orgullosos estamos es la accesibilidad.

Cinco modos de visualización para daltonismo: Normal, Deuteranopia, Protanopia, Tritanopia y Acromatopsia. Tres niveles de contraste. Un slider de tamaño de texto del 80% al 150%. Soporte de lector de pantalla vía texto a voz. Un interruptor de Reducir Movimiento que congela el ticker de noticias y salta las animaciones flotantes.

Y aquí va el número: 866 llamadas Color() hardcodeadas reemplazadas. Cada panel de UI en todo el juego (gestión de flota, desempeño de rutas, inteligencia estratégica, adquisiciones, alianzas, ajustes, selección de dificultad, selección de era, condición de victoria, reproductor de música, tabla de posiciones, todo) ahora enruta sus colores a través de una AccessibilityPalette centralizada. Los modos de daltonismo y los ajustes de contraste funcionan en todas partes, en cada panel, en tiempo real. Sin necesidad de reiniciar.

Casey probó los cinco modos de daltonismo y descubrió que llevaba años leyendo mal el indicador de combustible.

Ajustes de accesibilidad mostrando el modo de daltonismo y las opciones de contraste Cinco modos de daltonismo, tres niveles de contraste y 866 llamadas de color reescritas. La cabina ahora es para todos.


Comprarlo o arrendarlo

Allá por la v0.2.17, entregamos un sistema que cambió calladamente cómo se juega: el arriendo de aeronaves.

¿Corto de efectivo pero necesitas abrir una ruta? Arrienda un avión. Plazos de 1, 3 o 5 años. Los plazos más cortos cuestan más por mes pero te dan flexibilidad. Los arriendos expiran y suspenden automáticamente la ruta hasta que renueves, compres o te alejes. Los rivales de la IA también arriendan, igual que las aerolíneas de bajo costo reales.

Junto con los arriendos llegó un hangar de aeronaves como corresponde. Los aviones propios ahora persisten cuando los sacas de una ruta en vez de desaparecer en el aire. Guárdalos, reutilízalos o véndelos a valor de mercado depreciado. La refurbición de aeronaves te permite extender 10 años la vida útil de un avión rentable por un 30% de su precio.

También entregamos la progresión por era: las eras superiores están bloqueadas hasta que completes la anterior. Domina el Amanecer del Vuelo antes de encarar la Era del Jet. Supera cualquier era en modo Pasajeros y desbloqueas Carga. Supera Carga, desbloqueas Combinado. Completa tu primera era y se abre el Modo Sandbox. Sin quiebra, sin presión de tiempo, solo construir.


Caja negra, Spotify y el fregadero de la cocina

Una ronda rápida con todo lo demás que mejora el juego:

Soporte para Epic Games Store. Una nueva abstracción PlatformManager enruta logros, estadísticas, tablas de posiciones y saves en la nube hacia la tienda desde la que estés volando. Un solo código base, múltiples terminales.

La caja negra. Un gestor de migraciones ahora corre antes de que Steam se conecte, reconstruyendo los valores de la compañía desde tus archivos de guardado y limpiando datos malos de tabla de posiciones. Cada save estampa la versión del juego. Las estadísticas de carrera registran de forma permanente cada era completada. Los contadores de por vida rastrean hubs construidos, inversiones hechas, adquisiciones cerradas, alianzas formadas y guerras comerciales capeadas.

Spotify se conecta automáticamente al arrancar. Si ya te autenticaste, el reproductor de música retoma donde lo dejaste. No más tener que volver a pasar tu pase de abordar en cada sesión.

Las ranuras de guardado pasaron de 5 a 10 con etiquetas tipo píldora con código de color (dificultad, modo de juego, sandbox) y marcas de tiempo reales. El HUD se reorganizó: Rutas y Flota, Compañía, y un nuevo desplegable de Rivales con encabezados de sección etiquetados. Las notificaciones tipo toast ahora se apilan verticalmente en cascada en vez de apilarse invisiblemente una sobre otra. Y 14 nuevos atajos de teclado cubren cada panel estratégico.

Incluso los detalles chicos recibieron atención: las inversiones en Compensación de Carbono ahora están bloqueadas por era a 2005 (nadie compensaba carbono en la era de la hélice), el modo carga muestra toneladas y tarifas en lugar de “pasajeros”, y el diálogo de salida ahora te ofrece autoguardar antes de que te vayas.


Autorizados para aproximación

Vamos en la v0.2.32.10. El juego que en la v0.2.17 era “completo y muy jugable” se transformó en algo significativamente más grande: un simulador de imperio aéreo de 496 ciudades, 66 aeronaves, nativo de mando, con la accesibilidad primero, con guerra económica, espionaje corporativo y un motor de desempeño que lo sostiene todo a 60 FPS.

Esto es lo que está en la pista:

  • Diseño de sonido: efectos de UI, paisajes sonoros de aeropuerto, el satisfactorio clic de cada botón
  • Tutorial: una experiencia de primer vuelo guiada para que los nuevos jugadores no tengan que aprender quebrando
  • Página de tienda en Steam: logros, saves en la nube y el empujón final hacia el lanzamiento

Seguimos construyendo SkyChart con la misma filosofía: los sims de gestión merecen el mismo pulido que reciben los juegos de acción. Cada tooltip, cada animación, cada opción de accesibilidad existe porque nos preguntamos qué nos haría a nosotros no querer usar alt-tab.

Gracias por acompañarnos en el viaje. Mantén las mesitas plegables arriba y tus redes de rutas rentables.

El equipo de Casey Jones Labs

Casey dice que quiere un aumento y una oficina con ventana. Ya tiene su nombre en la pantalla de inicio y no nos deja olvidarlo. Le están dando más nueces.

El menú principal de SkyChart con aviones animados cruzando el mapa de fondo SkyChart: Airline Executive, llegando a Steam para Windows, macOS y Linux. Construido con Godot 4.