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

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

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

Cuando publicamos el Dev Blog #1, SkyChart iba por la v0.2.17: un simulador aéreo en marcha con 150 ciudades, 33 aeronaves y un motor que más o menos aguantaba. Dijimos que volveríamos con más. No esperábamos volver con tanto más.

Quince versiones después, el juego ha triplicado su número de ciudades, duplicado su flota, incorporado soporte completo de mando, una revisión de accesibilidad, sistemas de guerra económica que pondrían nerviosa a la OPEP y un motor de renderizado que ya no pide clemencia con 1.600 rutas. Llevamos un tiempo en el hangar. Vamos a repasar qué ha cambiado.

Casey, el guacamayo del estudio, insiste en que mencionemos que ha supervisado personalmente cada actualización. No lo ha hecho. Comía nueces y nos juzgaba.


La revisión del motor que nadie vio (pero todo el mundo notó)

Empecemos por lo poco glamuroso 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 fotogramas por segundo con 1.600 rutas. El mapa redibujaba cada ruta en cada fotograma. 19.000 nodos de línea individuales haciendo su mejor imitación de un pase de diapositivas de PowerPoint.

Reconstruimos entero el motor de renderizado de rutas desde cero. Una sola pasada de dibujo por lotes sustituyó a miles de nodos individuales. Ahora desplazar el mapa cuesta cero llamadas de dibujo, la imagen renderizada simplemente se desliza. Las rutas solo se redibujan cuando la red cambia de verdad. Tras la reconstrucción: 60 FPS bloqueados, incluso con miles de rutas cruzando el globo.

También dejamos en tierra 56.000 sprites de avión invisibles que seguían quemando CPU cada fotograma como pilotos fantasma cobrando horas extra. Los aviones ocultos pierden ahora por completo el permiso para procesar.

Después construimos un benchmark de rendimiento con autoajuste. Pulsa “Ejecutar benchmark” en Ajustes y el juego somete a prueba tu GPU, CPU y canalización de texturas en unos 8 segundos, y luego autoajusta 11 límites de rendimiento para adaptarse a tu hardware. Umbrales de visualización de rutas, tamaños de caché de tiles, densidad meteorológica, número de hilos del recomendador, todo calibrado automáticamente. Empuja un deslizador más allá de la zona recomendada y recibes un aviso amarillo. Hemos visto a capitanes ignorar los indicadores de Casey. No acaba bien.

El panel de benchmark de rendimiento mostrando el nivel de hardware y los ajustes afinados Tu aerolínea tiene ahora un departamento de informática. El benchmark ajusta 11 parámetros por ti.


496 ciudades. 66 aeronaves. Modo sin fin.

El mundo se hizo mucho más grande.

En el mapa hay ahora 496 ciudades, frente a las 150 de antes, de Tombuctú a Petropávlovsk-Kamchatski (nos hicieron falta tres intentos para pronunciarlo). Cada ciudad nueva lleva investigadas sus poblaciones de 1930, tasas de crecimiento, valores económicos, códigos IATA y coordenadas reales de aeropuerto. Un sistema de visibilidad en 4 niveles mantiene el mapa legible: los hubs globales están siempre visibles, las ciudades menores aparecen solo al acercar mucho el zoom.

La flota también se duplicó. 66 aeronaves llenan ya el catálogo, modelos históricamente precisos desde el biplano Cortez Condor (1933) hasta la era moderna, más diseños especulativos futuros como el transporte suborbital Bering Orbital 1 (2085), extrapolados de conceptos del mundo real y tecnologías aeronáuticas emergentes. Desde la hélice hasta los motores de plasma hipersónicos. Las partidas guardadas de versiones anteriores se migran automáticamente sin problemas, sin perder aviones ni traspapelar formularios.

Completa las cuatro eras y desbloqueas el Modo Sin Fin: vuela más allá de 2020 sin límite de tiempo ni objetivos. Reactores de hidrógeno, fuselajes mixtos y saltadores orbitales te esperan en las décadas venideras. Ya no hay un cielo como límite.

Y como no todo el mundo quiere jugar al mismo ritmo, añadimos cuatro opciones de ritmo de juego: Arcade (45 segundos por mes, para los impacientes), Estándar, Extendido y Tiempo Real (30 minutos por mes, para capitanes que saborean cada sacudida de turbulencia). Las animaciones de los aviones se acompasan al ritmo elegido. Los aviones en Arcade cruzan el mapa como Casey tras encontrar un cuenco de nueces sin vigilar.

El Asesor Estratégico del Blog #1 procesaba 11.175 pares de ciudades. Ahora procesa más de 122.000. En un pool de hilos en segundo plano. Sin despeinarse. Estamos muy orgullosos de ese.

El mapa del mundo mostrando la red ampliada de 496 ciudades 496 ciudades. Más de 122.000 rutas posibles. El Asesor Estratégico lo gestiona por ti.


Bienvenido al centro de mando

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

Doce nuevos paneles analíticos aterrizaron en la suite ejecutiva. El Informe de Riesgo de Flota detecta aeronaves envejecidas antes de que se conviertan en pisapapeles. La Previsión de Flujo de Caja proyecta el saldo bancario a 12 meses vista con controles de escenario. El Buscador de Saturación de Pares de Ciudades ordena los más de 122.000 pares por puntuación de oportunidad para que dejes de meterte en peleas de cuchillos. La Evaluación de Amenaza de Competidor perfila la estrategia de expansión de cada rival y su solapamiento con tu red.

Después te armamos.

La guerra económica completa llegó en la v0.2.28 y cambió por completo la sensación del juego. Las economías regionales ahora suben y bajan cada mes. Las ciudades entran en fiebres del oro de varios trimestres (+40 % de demanda) o en crisis por sobresaturación (-30 %). Los shocks dinámicos de mercado llegan cada trimestre: crisis de combustible, colapsos de hubs, recesiones globales, megafusiones aéreas.

La especialización de hubs te permite declarar hubs como de Carga, Turismo o Negocios para un +20 % de demanda correspondiente. Las guerras de precios se activan automáticamente cuando bajas tarifas por debajo de un rival en rutas disputadas. Costes x1,5, +20 % de demanda, pura adrenalina. Domina más del 40 % de una región y los rivales de IA lanzan guerras de mercado depredadoras de 6 meses, bajando precios por todas partes y robándote las mejores ciudades.

Las subastas de slots por sobre cerrado sustituyeron al sistema por orden de llegada. Acuerdos de código compartido con reparto real de ingresos. Espionaje corporativo: contrata informantes para tres niveles de inteligencia, desde datos de rutas hasta financieros completos o directamente robo corporativo. Los rivales también espían. El nombre en clave de Casey es “Tropical Thunder” y se niega a cambiarlo.

La llamada trimestral de resultados se ha convertido en un briefing de batalla.

Paneles de inteligencia estratégica que muestran riesgo de flota y análisis de mercado Doce nuevos paneles. Energía de terminal Bloomberg para tu imperio aéreo.


Una cabina que puede pilotar todo el mundo

El Blog #1 mencionaba el soporte para mando como una incorporación tardía. Ahora es una función estrella.

La integración completa con la Steam Input API significa que cada mando de Xbox, PlayStation, Switch y Steam Deck está automáticamente soportado con los glifos de botón correctos. No marcadores genéricos, sino los iconos exactos de tu mando. Tres conjuntos de acciones sensibles al contexto se alternan sin costuras a medida que navegas. Aparece un teclado QWERTY en pantalla para quienes juegan con mando al poner el foco en cualquier campo de texto. Cada uno de los paneles responde a la entrada de mando.

98 logros de Steam están totalmente cableados, desde First Flight hasta Every Seat, Every City. 15 estadísticas de Steam se sincronizan con tu perfil. Los marcadores de Steam Timeline registran tus mejores momentos para Steam Replay. Las tablas de clasificación globales y locales te permiten comparar tu imperio con el del mundo.

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

Cinco modos de visualización para daltonismo: Normal, Deuteranopia, Protanopia, Tritanopia y Acromatopsia. Tres niveles de contraste. Un deslizador 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 teletipo de noticias y omite las animaciones flotantes.

Y aquí está el número: 866 llamadas a Color() hardcodeadas reemplazadas. Cada panel de UI de todo el juego (gestión de flota, rendimiento de rutas, intel estratégica, adquisiciones, alianzas, ajustes, selector de dificultad, selector de era, condición de victoria, reproductor de música, tabla de clasificación, todo) enruta ahora sus colores a través de una AccessibilityPalette centralizada. Los modos para 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 para daltonismo y descubrió que llevaba años leyendo mal el indicador de combustible.

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


Comprarlo o alquilarlo

Allá por la v0.2.17 pusimos en marcha un sistema que cambió en silencio cómo se juega: el alquiler de aeronaves.

¿Sin liquidez pero necesitas abrir una ruta? Alquila un avión. Contratos de 1, 3 o 5 años. Los plazos más cortos cuestan más al mes pero te dan flexibilidad. Los arrendamientos caducan y suspenden la ruta de forma automática hasta que renueves, ejecutes la compra o desistas. Los rivales de IA también alquilan, igual que las low cost reales.

Junto al alquiler llegó un hangar de aeronaves en condiciones. Los aviones propios persisten ahora cuando se retiran de una ruta en lugar de desvanecerse. Guárdalos, reutilízalos o véndelos al valor de mercado depreciado. La renovación de aeronaves te permite alargar 10 años la vida útil de un avión rentable por el 30 % de su precio.

También incorporamos la progresión por eras: las eras superiores están bloqueadas hasta que completes la anterior. Domina el Amanecer del Vuelo antes de meterte con la Era del Jet. Supera cualquier era en modo Pasajeros y desbloqueas Carga. Supera Carga y desbloqueas Combinado. Completa tu primera era y se abre el Modo Sandbox. Sin bancarrota, 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 de Epic Games Store. Una nueva abstracción PlatformManager enruta los logros, estadísticas, tablas de clasificación y guardados en la nube a la tienda desde la que estés volando. Una sola base de código, varias terminales.

La Caja Negra. Ahora corre un gestor de migraciones antes de que Steam se conecte, reconstruyendo los valores de la compañía a partir de tus partidas guardadas y depurando datos erróneos de tablas de clasificación. Cada guardado marca la versión del juego. Las estadísticas de carrera registran de forma permanente cada era completada. Los contadores vitalicios siguen hubs construidos, inversiones realizadas, adquisiciones cerradas, alianzas formadas y guerras comerciales capeadas.

Spotify se conecta automáticamente al inicio. Si ya te has autenticado, el Reproductor de Música retoma donde lo dejaste. Se acabó volver a pasar la tarjeta de embarque cada sesión.

Los slots de guardado pasan de 5 a 10, con etiquetas en 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 toast se apilan ahora en vertical en lugar de amontonarse invisibles unas sobre otras. Y 14 nuevos atajos de teclado cubren cada panel estratégico.

Incluso los detalles pequeños recibieron atención: las inversiones en compensación de carbono están ahora bloqueadas a partir de 2005 por era (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 ofrece guardar automáticamente antes de cerrar.


Autorizados para aterrizar

Estamos ahora en la v0.2.32.10. El juego que era “completo y muy jugable” en la v0.2.17 se ha convertido en algo bastante más grande: un simulador de imperio aéreo de 496 ciudades, 66 aeronaves, nativo de mando, con la accesibilidad como prioridad, guerra económica, espionaje corporativo y un motor de rendimiento que aguanta todo a 60 FPS.

Esto es lo que tenemos en pista:

  • Diseño de sonido: efectos de UI, paisajes sonoros ambientales de aeropuerto, el clic satisfactorio de cada botón
  • Tutorial: una experiencia guiada de primer vuelo para que los jugadores nuevos no tengan que aprender a base de quebrar
  • Ficha de Steam: logros, guardados en la nube y el empujón final al 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 alt-tabular.

Gracias por seguir el viaje. Mantén las mesas plegables subidas y tus redes de rutas rentables.

El equipo de Casey Jones Labs

Casey dice que quiere un aumento y un despacho de esquina. Ya le pusimos su nombre en la pantalla de inicio y no nos lo deja olvidar. Le daremos más nueces.

El menú principal de SkyChart con aviones animados cruzando el mapa de fondo SkyChart: Airline Executive, próximamente en Steam para Windows, macOS y Linux. Hecho con Godot 4.