MODELO DE VUELO Y CONTROLES DE VUELO
Chris Roberts os explica el modelo de físicas de Arena Commander
¡Saludos, Ciudadanos!
Es fantástico ver como tantos de vosotros salís al espacio a probar vuestro primer bocado de cómo será el combate en Star Citizen. Yo y el resto del equipo hemos estado observando ávidamente los streams de Twitch en que los backers de Star Citizen prueban Arena Commander y por supuesto leyendo vuestras opiniones en los foros. Dos de los temas más candentes que se han debatido han tratado sobre el Modelo de Vuelo y la ventaja o desventaja de los diferentes periféricos de control. Así que pensé que podría coger un poco de vuestro tiempo para compartir algunos detalles sobre ambos temas.
MODELO DE VUELO
La mayor parte de los juegos espaciales (incluyendo mis viejos juegos) simplifican grandemente la simulación, generalmente mediante el uso de un modelo de vuelo atmosférico que carece de gravedad y de resistencia del aire: las naves tienen un ratio predefinido de guiñada, alabeo y cabeceo, aceleración lineal (que es aplicada a una masa simplificada a un punto) y ven su velocidad máxima limitada a una cifra. Cuando quieres girar, tus movimientos en el joystick o el ratón son asignados directamente al ratio de giro de la nave sin tener en cuenta su momento de inercia. El daño es tratado habitualmente como un multiplicador a los índices de giro y a la aceleración lineal.
Star Citizen no hace eso. Nosotros modelamos lo que sería necesario para una nave espacial real, incluyendo la correcta aplicación del empuje en los lugares donde están conectados al casco de la nave: en nuestro modelo el momento de inercia, los cambios de masa y los retroimpulsos son MUY necesarios. La simulación físical del vuelo espacial de Star Citizen está basada en lo que sucedería de verdad en el espacio.
Hay un par de razones por las que fuimos en esta dirección:
Ya que nosotros estábamos planeando en modelar y simular naves espaciales con una fidelidad que no se había visto antes, pensé que era necesaria una simulación que dejase al jugador tener diferentes comportamientos de vuelo si un impulsor era dañado, una ala era destruída o el piloto sobrecargaba su nave con armas y munición. Quería un sistema que se sintiese distinto para una enorme variedad de naves, con dimensiones y roles radicalmente distintos; porque en Star Citizen podrías pasar de una nave monoplaza de sólo 15 metros de longitud a una gargantuesca nave capital de más de un kilómetro de longitud tripulada por múltiples jugadores. Yo quería que estas naves tuviesen su propia identidad y se comportasen como coches de tamaños similares, aunque la equivalencia de masa fuese radicalmente distinta. Quería que las naves tuviesen su propia personalidad, no que fuesen una versión más lenta o más rápida de la nave básica.
La segunda razón es que Star Citizen tendrá una importante cantidad de combate entre jugadores. No sé cuantos de vosotros jugasteis a Wing Commander Armada (el primer juego de Wing Commander que presumía de multiplayer) pero no era muy divertido en modo batalla (el modo cara a cara). Cuando se diseña un juego para un sólo jugador puede hacer que su inteligencia artificial sea deliberadamente estúpida para permitir que el jugador se ponga en la cola y derribe múltiples enemigos, lo cual le proporciona al jugador una sensación de que ha logrado algo. No hay nada más divertido que derribar en solitario toda una escuadrilla de diez cazas Kilrathi.
Pero seamos honestos: la capacidad de un jugador de tirotear a oleadas de enemigos en estos juegos tiene poco que ver con su habilidad, porque su personaje/nave es superpoderoso en comparación con los enemigos básicos a los que se enfrentará. Tú no puedes hacer esto en un combate de un jugador contra otro, y es probable que múltiples jugadores tengan la misma nave. Sin una sofisticada simulación y modelo de vuelo, con montones de opciones tácticas mediante las cuales se pueda alterar de manera fluida tu situación, las batallas se pueden convertir en un frustrante empate técnico porque ninguno de los dos se puede poner a la cola del otro al no existir las mismas fuerzas que afectan al combate aéreo (gravedad y resistencia del aire) drenando la energía de las maniobras.
Estas razones son las que nos centramos en simular las físicas que están implicadas en controlar y mover una nave en el espacio sin ningún tipo de trucos.
De la misma manera también simulamos los sistemas de las naves. Cada función está unida a objetos por separado que están "enchufados" a la nave: las armas, los impulsores, la planta de potencia, los disipadores térmicos, radar, tanque de fuel, baterías, sistema de apuntado, CPU, HUD e incluso el Sistema Inteligente de Control de Vuelo (IFCS) son todos objetos que se unen a unos "canales" que conectan los sistemas entre si: hay un canal para la potencia, otro para la disipación de calor, otro para el fuel y otro para los ciclos de la CPU. La computadora del sistema de apuntado necesita energía de la planta de potencia y ciclos de CPU de la Computadora de la Nave e información posicional del Radar para fijar un objetivo. Si no hay suficientes ciclos de la CPU en los canales los fijados se harán de manera más lenta, y si no hay suficiente potencia la computadora del sistema de apuntado podría dejar de funcionar. Si no consigues disipar suficiente calor de las armas, estas se pueden sobrecalentar, funcionar mal o incluso dañarse. Si una de tus alas es destruída junto a sus disipadores de calor, sería buena idea reducir la producción de calor en tu nave.
Al simular por completo tanto los sistemas como las físicas del vuelo espacial permitimos que aparezca una enorme cantidad de comportamiento emergente y variedad en el juego final. La configuración del equipo de una nave se convierte en algo muy importante, no sólo por sus funcionalidades, si no por cómo este afecta al vuelo en sí y a su respuesta. De la misma manera que en un diseño de aviación militar, podrías decidir invertir en sistemas redundantes para incrementar la supervivencia en batalla o podrías maximizar tu potencia de fuego a expensas de la maniobrabilidad.
Tiene buena pinta, ¿verdad? ¿Por qué tanto jaleo?
La simulación de vuelo espacial real es inherentemente distinta que un modelo de vuelo atmosférico. En el espacio no hay fuerzas aerodinámicas (sustentación o resistencia) y por ello la inercia tanto angular como lineal se vuelve mucho más importante. A no ser que se aplique una fuerza contraria para contrarrestar el momento angular o lineal de un objeto en el espacio, este seguirá adelante y lo conservará. Cuando un jugador tira hacia atrás en su stick los impulsores aplican empuje para crear esa rotación, lo cual acelera la velocidad angular de la nave. Cuando dejas que el stick vuelva a su posición neutral o lo mueves en otra dirección, el IFCS tiene que aplicar ahora un empuje contrario para primero contrarrestar la velocidad angular que tiene en estos momentos y luego moverte en la nueva dirección angular que desees. A no ser que la nave tenga unos impulsores enormemente potentes, esto no sucederá instantáneamente. Como el IFCS no ve el futuro y no puede predecir cuando querrás cambiar tu velocidad angular, no puede anticipar tus acciones, por lo que a no ser que el piloto controle su orientación deseada... lo más probable es que se pase de largo de ella.
Pensad en esto como si se tratase de frenar un coche. Normalmente un conductor sabe de sobra cual es la distancia de frenado y cuando te aproximas a una señal de Stop empiezas a frenar. No esperas de tu coche que pase de 75 km/h a cero instantáneamente. Este comportamiento es muy distinto del que tiene un aeroplano, el cual utiliza sus superficies de control para alterar el flujo del aire sobre su cola y alas para maniobrar. En este caso el cambio de velocidad angular es normalmente proporcional a la posición del timón y los flaps.
Esto significa que hasta cierto punto necesitas anticipar donde quieres estar y moderar tu ángulo de giro para alcanzar la posición de giro deseada. Si se está acostumbrado a un modelo de vuelo atmosférico es fácil sobrepasar la dirección deseada. Entonces se suele intentar aplicar una corrección y esta de nuevo se pasa de largo en la dirección contraria por su brusquedad. Esta es la razón por la que las naves pueden notarse algo "saltarinas" cuando se intenta fijar un blanco.
Ya que esto es distinto a lo que la gente está acostumbrada, una porción de nuestra comunidad claramente siente que nuestro modelo de vuelo está "equivocado".
Pero si pensáis en lo que estamos haciendo, estamos permitiendo MUCHA más variedad y matices de vuelo y combate que un simplificado modelo de vuelo como el de los Wing Commander o X-Wing. Como aprender a conducir un coche bien.. esto requiere algo de aprendizaje. Tienes que anticipar dónde quieres estar y planear en ello.
¿Significa esto que yo pienso que nuestro sistema es perfecto?
¡No!
Esta es una de las grandes razones por la que queríamos poner todo esto en vuestras manos. Ha estado genial ver cómo la gente probaba el juego por primera vez y expresaba sus opiniones. Ha sido fantástico ver como algunos de los que al principio odiaban el modelo de vuelo han cambiado de opinión y ahora ven su potencial tras haber leído sobre las experiencias personales de otros miembros de la comunidad. Esto no quiere decir que todo el mundo lo acepta, pero siempre es alentador ver cómo alguna gente está mas abierta ante nuevas posibilidades.
Pero esto no quiere decir que esté satisfecho con nuestra situación actual. Mi objetivo es que estén en el juego todos los matices que describí más arriba y que los jugadores puedan ajustarlos con profundidad... pero también hacerlo accesible de la misma manera que el Wing Commander lo era para aquellos recién llegados a la saga (y al género).
Los más importante es recordar que el Sistema Inteligente de Control de Vuelo es sólo un interfaz que existe entre la simulación física del movimiento de la nave a través de sus impulsores y la fuerza que estos aplican. No es el modelo. Veo que hay muchos modelos que hablan sobre un deseo de que exista un modo "Newtoniano". La simulación física ya es una simulación de cuerpos rígidos completamente Newtoniana. Para lo que estamos intentando conseguir siempre existirá la necesidad de un interfaz fly by wire entre los periféricos de los jugadores y las físicas reales detrás del modelo de juego, ya que no hay manera humana de controlar directamente a ocho impulsores a la vez, especificando su empuje y dirección para lograr el movimiento deseado. Dentro de los límites de la realidad física, el IFCS puede hacer prácticamente todo lo que deseemos. La clave se encuentra en determinar la manera en cómo asignar el control del jugador a esto.
La primera pasada sobre los distintos modos: IFCS básico, Desacoplado, Seguridad de Fuerzas-G y Control de Dirección son todos modos distintos que pensamos que serían útiles en distintas situaciones. Esto no quiere decir que sea el fin los modos de vuelo, o que cómo están implementados sea la única versión que existirá. Un montón de gente ha estado pidiendo tener en todo momento una "auténtica" libertad en los 6 ejes: básicamente tener a su alcance la capacidad de desplazarse lateral o verticalmente durante el modo de vuelo normal de IFCS y hacer que el desplazamiento se añada a la velocidad de la nave. Con todas estas cosas se experimentará, junto con algunas otras opciones, como por ejemplo un sistema de seguridad de fuerzas G adicional que estará limitado a los giros en vez de a la velocidad y también vamos a jugar con la potencia de los impulsores ya que actualmente los impulsores de maniobra tienen de la mitad a un tercio de potencia que el impulsor principal, lo cual es muy fuerte. Sólo quiero avisar que cuanto más débiles hagamos los impulsores de maniobra, mayor será el efecto de "deslizamiento" que tendrá la nave al vectorizar la orientación a la dirección deseada.
Para daros todavía más detalles sobre cómo funciona el IFCS, John Pritchet, el ingeniero que codifico la implementación actual del IFCS ha escrito un ensayo de cierta profundidad que trata al detalle cómo trabaja el sistema. Espero que todos apreciéis el nivel de detalle al que estamos creando Star Citizen. No os olvidéis de que mucho mas en este juego que el Arena Commander - e incluso hay muchas cosas en el Arena Commander que no podéis apreciar al estar bloqueadas por una HUD en proceso de construcción y al no tener todos los items adecuados para equipar tu nave.... y ambas cosas abrirán las puertas a nuevas posibilidades y tácticas.
PERIFÉRICOS DE CONTROL
Ha existido mucho debate en torno al control del ratón frente al de un joystick y la preocupación de que el sistema de control del ratón hace el juego demasiado "arcade" y que los usarios de HOTAS sienten que su mecanismo de control no ha sido apoyado apropiadamente.
Primero dejad que declare que el objetivo de Star Citizen es ser agnóstico a nivel de controles. No va a existir un periférico que deba tener una ventaja sobre los demás. Personalmente yo (Chris Roberts) soy un piloto de Joysticks (sea mediante un HOTAS o un Gamepad) y no me gusta mucho pilotar con un ratón. Siento que tengo un mayor control de vuelo con un joystick. En nuestros varios estudios hay una enorme variedad a la hora de usar controladores: algunos prefieren el ratón, otros el joystick, otros HOTAS y algunos el pad. Esta es la mayor garantía que os puedo dar de que ningún modo de control dominará a los demás.
Tras haber dicho esto reconocemos que los perfiles de control de los periféricos necesitan mejorar su flexibilidad y personalización para cumplir este objetivo.
Una de nuestras mayores prioridades para el Arena Commander es permitir a los usuarios que personalicen sus key bindings (controles) desde dentro del juego. Estamos activamente trabajando en esto y esperamos poder entregar algo el próximo mes (Julio).
También hemos estado trabajando en los varios perfiles de HOTAS, así como en ajustar con cuidado el filtro de control de los joysticks para, con suerte, permitir una maniobrabilidad más precisa durante los pequeños toques al stick. Hay también algunos modos adicionales de movimiento de la cabeza que todavía no han sido implementados todavía y que permitirán a un usuario de joystick utilizar sus armas articuladas (clase 2/4) de la misma manera que un jugador de ratón. Y por supuesto, si crees que el ratón con su mayor precisión permite disparar mejor, ¡siempre podrías volar la nave con el joystick y mirar/apuntar con el ratón!
GUIÑADA CONTRA ALABEO
Ha existido algo de discusión sobre el hecho de que guiñar no afecta al piloto en términos de fuerzas G negativas para su vuelo (por ej, la inconsciencia o eritropsia que provocan las fuerzas G verticales). Hay algunas que hay que tener en cuenta aquí.
Primero, giros basados en guiñada, sin ningún alabeo, son ciertamente posibles en el espacio, pero esa no es la manera más óptima de girar. Puedes generar más empuje combinando los impulsores laterales e inferiores de lo que podrías con sólo tus impulsores laterales. El IFCS automáticamente alabea una nave para optimizar su giro de impulsión, y esta es la situación en la que las fuerzas G verticales entran en el juego (fijaos que esto es distinto que en un vuelo atmosférico, donde el alabeo es necesario para la estabilidad del giro).
Segundo, la cantidad de alabeo necesaria en cualquier giro de guiñada depende de la cantidad de impulso lateral que tu nave puede proveer, lo cual significa que la cantidad de fuerzas G verticales en una guiñada variarán según la situación.
Tercero, inconsciencia/eritropsia y pérdida de conciencia son sólo a consecuencia de la exposición a fuerzas G verticales, en las que la sangre esta siendo drenada de la cabeza del piloto o empujada hacia ella. Pilotos apropiadamente sujetos pueden soportar altos niveles de fuerzas G horizontales sin una perdida significativa de capacidad cognitiva.
Para las fuerzas G horizontales, el factor limitador es estructural. Desafortunadamente, esa limitación todavía no ha sido implementada en nuestro modelo. Una vez haya sido aplicada, habrá consecuencias para guiñadas extremas sin ningún tipo de alabeo. En vez de caer inconsciente, podrías arrancar de cuajo algún impulsor o una ala por la grandes magnitudes de las fuerzas G laterales que se hayan aplicado. Si está activado, la Seguridad-G te garantizaría la integridad estructural de tu nave limitando la cantidad de empuje en cualquier maniobra.
TORRETEO
Una parte de la comunidad se ha mostrado preocupada por la habilidad de los jugadores de "torretear" pasando a modo de vuelo desacoplado y girar para poder disparar a su objetivo, sintiendo que esto elimina la habilidad de la ecuación de una dogfight. Se que hay gente que cree esto; pero os puedo asegurar que en nuestros test internos multijugador casi nadie usa exclusivamente el modo desacoplado y torretea, ya que son destruidos muy rápidamente. El secreto para sobrevivir a una dogfight está en estar siempre en movimiento y en que estos no sean predecibles: quedarse quieto o moverse en un vector constante (que es lo que pasa cuando te desacoplas) te hace morir. El modo desacoplado se utiliza mejor cuando brevemente se pasa a él para hacer un cambio rápido de orientación y entonces se pasa de nuevo a modo acoplado. A medida que ajustemos la potencia de los impulsores de maniobra para hacer que el motor principal sea más importante, hacer un rápido cambio de orientación y pasar de nuevo a un modo de vuelo normal será una gran manera de maximizar tu empuje disponible para un rápido cambio de vector. Se que hay alguna gente que piensa que ser capaz de cambiar tu orientación mucho más rápidamente de lo que se puede en un simulador de vuelo atmosférico hace al juego fácil, pero esto es una simulación de combate espacial, NO una simulación de vuelo atmosférico y la habilidad de desacoplar tu orientación del vector de velocidad es algo que sería utilizada por seguro en una situación como esta... ¡y no os olvidéis que una gran parte de la comunidad demandaba ser capaz de hacer las maniobras que os gustaban en Battlestar Galactica!
ARMAS ARTICULADAS CONTRA ARMAS FIJAS
En Arena Commander V1.0 (Y Star Citizen en si) habrá tanto armas fijas como armas articuladas o en torretas. Las armas fijas tendrán un lento sistema de autoconvergencia o quizás un ángulo de más o menos cinco grados para permitirles centrarse en un punto que sea definible por el usuario (de serie sería la mitad de su alcance máximo) o se ajustarán a la distancia a la que se encuentra el objetivo actual. No tuvimos tiempo de finalizar esta característica para 0.8 por lo que pasamos todas las armas Clase 1 (fijas) a Clase 2 (articuladas) para no darle al Hornet una enorme ventaja sobre la Aurora y la 300i. Este no es el plan a largo plazo.
Las armas fijas tendrán un indicador para guiar tu disparo (como en una nave de combate real). También estamos considerando alterar cómo funciona la retícula de disparo para las armas articuladas. Ahora mismo, sólo tienes que ponerla sobre tu objetivo y la computador de tiro ajusta las armas para conseguir la solución de tiro apropiada, cuando las líneas de puntos se colapsan dentro de la retícula significa que todas las armas han logrado una solución de fuego perfecta. Estamos pensando en cómo hacerlo de manera que tengas que poner la retícula de fuego sobre el indicador de dirección para obtener la solución de tiro.
Esto permitiría a un piloto que no está usando la potencia de sus armas articuladas por completo (no siempre es fácil apuntar y volar en dos direcciones distintas o si te encuentras en un modo combinado de vuelo y vista libre como el modo de ratón estilo Freelancer) volar de una manera más óptima guiando los disparos (quieres poder apuntar tu nave en la dirección en que tu enemigo se encontrará, no donde está ahora).
Para aquella gente que piensa que las armas articuladas estropean la "habilidad" en el juego, tengo que recordarles que las armas articuladas o en torretas son generalizadas en el equipo militar de hoy en día y esto probablemente también será así en el futuro. Ello no quiere decir que disparar sea automático. El arma todavía debe ser apuntada a su objetivo y todavía tienes que apuntar el morro de tu nave d euna manera que la solución de disparo sea posible. ¡Y eso asumiendo que tu objetivo no se ponga a cambiar de dirección o acelerar erráticamente!
— Chris Roberts
Nota: el video ya tiene unos meses, pero es ilustrativo.
INTELLIGENT FLIGHT CONTROL SYSTEM OVERVIEW
En Star Citizen, el sistema de control de vuelo IFCS ha sido diseñado para asistir al piloto a operar su nave espacial. Traduce las intenciones de control del piloto en operaciones que los impulsores obedecen para lograr cumplir la orden designada, incluso en situaciones poco óptimas o con sistemas de propulsión que están fallando. Es un sistema adaptativo que usa una combinación de sensores y respuestas de los controles para intentar reducir a cero la cantidad de errores entre el objetivo exigido y el estado actual de la nave. Es tolerante ante los errores, en el sentido de que puede utilizar adaptativamente cualquier combinación de impulsores y sus Giroscopios de Control de Momento de reserva para compensar por el fallo o pérdida de uno o más de los impulsores y mantener la nave estabilizada y, si es posible, bajo el control del piloto. Incluso con sólo un impulsor en el casco, un piloto puede, con algo de dificultad, controlar activamente su nave.
SUBSISTEMAS DEL IFCS
El IFCS está formado por muchos subsistemas que trabajan juntos para proporcionar al piloto control y estabilidad con su nave espacial. Estos incluyen:
Control de Propulsión y Posición (PAC en inglés): el PAC incluye, típicamente, el conjunto de los impulsores, los cuales proporcionan tanto acciones translacionales como rotacionales, y una unidad auxiliar de Control de Momento mediante un Giroscopio (CMG) que proporciona control posicional adicional. Esto también incluye la circuitería y el software de control que maneja estas unidades.
Sistema de Control Principal (PCS en inglés): el PCS proporciona un interfaz entre el piloto y el IFCS. Este traduce las órdenes del piloto en acciones de control que son aplicadas a un cuadro de control virtual que representa la acción ideal para el objetivo del piloto. El sistema marco virtual consiste tanto en una velocidad objetivo a lo largo de una combinación de ejes, índices de rotación necesarios entre cualquier combinación de ejes, así como de un posicionamiento de referencia. Este cuadro virtual representa el estado ideal de la nave bajo un control perfecto, y todo los deseos del piloto son aplicados relativamente a este cuadro virtual, limitándose por lo tanto los efectos de errores externos por parte del control del piloto.
Sistema de Control de Reacción (RCS en ingles): el estado físico del cuadro virtual del PCS está controlado por los impulsores previstos y el empuje producido por el CMG en respuesta a los controles del piloto. Bajo ideales condiciones, el posicionamiento del cuadro del PCS estaría perfectamente sincronizada con la posición real de la nave. Sin embargo, factores como respuesta poco óptima de los impulsores o fallo de los mismos, fuerzas externas como el disparo de armas, explosiones de misiles, etc... pueden causar que el posicionamiento real de la nave se desvía del posicionamiento virtual. Cuando esto sucede, es trabajo del Sistema de Control de Reacción para reducir el número de errores entre ambos posicionamientos a cero. Este intenta hacerlo utilizando tanto los impulsores como los Giroscopios de Control de Momento. Si este no consigue sincronizar las posiciones en un tiempo razonable, este puede resetear el posicionamiento del cuadro virtual para aquel real para la nave de manera que se evite la desorientación del piloto.
Sistema Anti-Gravedad (AGS en inglés): el AGS detecta y compensa los efectos de la gravedad, y, en general, cual fuerza externa, permitiendo a la nave mantener su posición relativa al campo de origen.
Sistema de Control de Giro (TCS en inglés): El TCS asiste al piloto para permitirle conseguir giros más estables. A altas velocidades, los impulsores de una nave espacial no pueden proporcionar suficiente empuje para mantener un giro estable, haciendo que la nave se deslice, y a menudo esto resulta en una colisión. Un piloto normalmente reduciría su velocidad cuando gira, pero el TCS puede controlar la aceleración por ti ajustando la velocidad para alcanzar el ángulo de giro deseando dado el nivel de empuje disponible actualmente. El sistema tiene en cuentan el empuje de desplazamiento lateral óptimo para calcular una velocidad de giro sostenible.
Modo de Control de Fuerzas-G (GCM en inglés): GCM es un modo de seguridad que intenta limitar la exposición de un piloto frente a niveles peligrosos de fuerzas G. El principal peligro para un piloto bien sujeto es una exposición prolongada a fuerzas G verticales,las cuales pueden provocar inconsciencia, eritropsia, desmayos, desorientación, y si no es corregida, incluso la muerte. Las fuerzas G horizontales de naturaleza más extrema también deben ser evitadas, ya que pueden causar tanto taño físico al piloto como daño estructural a la nave espacial.
Además de todos estos subsistemas estándar, otras funcionalidades pueden ser implementadas en los sistemas más avanzados.
OPERACIÓN DEL IFCS
El IFCS toma las órdenes del piloto, lo cual puede incluir una variedad de operaciones, pero son finalmente traducidas en tres grados de translación y tres grados de rotación. Adicionalmente, otras órdenes pueden ser utilizadas como parámetros en varias fases del sistema de control del IFCS:
Una vez los valores de entrada son modificados por modos del IFCS tales como el Control de Giro o el Sistema de Control de Fuerzas-G, los límites de velocidad son impuestos, etc., las órdenes de entrada modificadas son pasadas al Sistema de Control Principal, el cual incluye un controlador PID de velocidad linear y angular. Estas funciones de control calculan las fuerzas y las torsiones óptimas que, si son aplicadas al centro de masa de la nave, le proporcionarán el movimiento exigido por el piloto.
Simultáneamente, las lecturas de posición son pasadas al Sistema de Control de Reacción, donde un controlador PID de posición es usado para controlar la posición real de la nave respecto al objetivo posicional proporcionado por el PCS. Esta función de control envía una torsión que reducirá óptimamente el error de posición a lo largo del siguiente paso.
Finalmente, una lectura de los campos de fuerza persistentes, como la típica gravedad, es pasada al Sistema de Anti-Gravedad, el cual calcula la contrafuerza necesaria para negar sus efectos sobre la nave.
Una vez que las fuerzas y torsiones necesarias han sido calculadas, los recursos de propulsión son dispuestos para ellos por orden de prioridad, de más alta a más baja. La Fuerza AGS es asignada primero, ya que un fracaso a la hora de generar suficiente contra-propulsión podría ser catastrófico. Después, la torsión del RCS es asignada , primero del impulsor principal y después pasando a depender de la torsión del CMG si no hay suficiente propulsión. Lo siguiente es asignada la rotación de control PCS, de nuevo cogiendo recursos de la impulsión principal y torsión de los CMG después. Y finalmente, con la menor prioridad, el control de translación es asignado.
Después de un corto tiempo, una vez que el sistema de propulsión ha actuado bajo las órdenes del IFCS, los sensores informan del estado actual de la nave, el cual puede variar del estado en que suponía debía encontrarse por razones de malfunción de impulsores, fuerzas externas que no han sido compensadas, etc... entonces los resultados se devuelven al sistema de control del IFCS y el proceso se repite.
VELOCIDAD Y CONTROL DE POSICIÓN
Ya que el IFCS no se puede fiar del sistema de propulsión para entregar el control solicitado, este utiliza un sistema de control de reacción PID que minimiza el error entre el estado deseado y el estado que ha sido medido. Estos controles son utilizados por el Sistema de Control Principal para calcular la fuerza y torsión óptima para llevar a buen puerto las órdenes del piloto, así como el Sistema de Control de Reacción para mantener la estabilidad de la posición.
Los controladores PID pueden ser ajustados parar proporcionar un abanico de características de respuestas. Usando el control de velocidad como un ejemplo, un controlador que amortiguase mucho aceleraría muy rápidamente hacia la velocidad de referencia, sobrepasándola, luego oscilando arriba y abajo hasta que obtuviese la velocidad final deseada. Un controlador que amortiguase poco aceleraría más despacio, ajustándose finalmente a la velocidad de referencia sin sobrepasarla. Un controlador críticamente amortiguado aceleraría a la velocidad óptima para ajustarse en el menor tiempo posible y sin sobrepasar la velocidad de referencia. Los controladores del Sistema de Control Principal que proporcionan la velocidad linear y angular son ajustados dinámicamente. Basándose en la magnitud de entrada de datos del piloto, podrían pasar de ser sutiles a agresivos en respuesta a la aceleración. Además, algunos pilotos pueden preferir una respuesta de aceleración más rígida.
El sistema presente de respuesta de los controladores del IFCS depende no sólo de los parámetros de ajuste, si no también del tiempo de respuesta de los componentes del sistema de propulsión.
SISTEMA DE PROPULSIÓN
Impulsores
El principal componente de propulsión en la mayor parte de las naves sería el impulsor. El modelo de vuelo de Star Citizen proporciona un modelo de impulsores 100% realista que tienen en cuenta la localización de cada impulsor en relación con el auténtico centro de masa de la nave, y la máxima capacidad de empuje y tiempo de respuesta de cada impulsor. Bajo condiciones ideales, los impulsores debería estar repartidos de manera equilibrada en en torno al centro de masa de la nave. Esto permite un control óptimo de los impulsores. En esta imagen de ejemplo, los impulsores dorsales de popa están equilibrados respecto al centro de la masa y generarían una torsión en el eje Z perfectamente equilibrada.
Tras sufrir daño, el centro de masa podría cambiar, desestabilizando el sistema de impulsores. En la siguiente imagen, los impulsores ya no están equilibrados en torno al centro de masa. Cuando se disparasen los impulsores, la nave estaría sujeto a una torsión imperfecta, lo cual resultaría en una guiñada no deseada. El IFCS intentaría compensar para este error de torsión usando otros pares de impulsores para generar una contratorsión y, si es incapaz de hacer eso, intentaría limitar el error reduciendo la cantidad de empuje generada por los impulsores.
El daño y otras condiciones pueden cambiar también la capacidad de empuje disponible, tiempo de respuesta e incluso la precisión de cada impulsor, o un impulsor podría dejar de funcionar por completo o perdido. Cualquiera de estos cambios tendrían un ejecto en el equilibrio de impulsores y por lo tanto cambiaría el comportamiento de la nave bajo el control del piloto.
Giroscopio de Control de Momento
Cada nave tiene una pequeña cantidad de capacidad de torsión de emergencia incluso si todos los impulsores han sido perdidos. Esta torsión es proporcionada por un conjunto de Giróscopos de Control de Momento. Mientras que los CMGs estén funcionales, el piloto siempre tendrá una cantidad de torsión mínima en cada eje de rotación. Esta torsión es suficiente para estabilidad la posición de la nave, y puede ser utilizada para girar o dejar de girar bajo el control directo del piloto.
NOTAS FINALES
Este documento no es una descripción dentro de la ficción del IFCS de Star Citizen, si no que es una descripción precisa del auténtico modelo de control de vuelo implementado para el juego. Este nivel de realismo fue necesario para crear un sistema de control de vuelo que puede ser integrado e influenciado por el entorno, los estados de daño, el cambio en la distribución de la masa, la asignación de potencia, la posición de los impulsores, etc. El IFCS es un sistema emergente y por lo tanto puede ser imperfecto a veces. Pero esto, a su vez, imita la realidad.
Y para acabar, una gran cantidad de esfuerzo ha sido puesta a la hora de limitar el control de la nave sólo a las líneas de mando proporcionadas por el IFCS. Ningún jugador, IA o incluso el propio IFCS en si podría modificar la posición, velocidad, rotación o velocidad de rotación de una nave de manera directa, con la excepción de la inicialización y corrección de la red. Esto garantiza que el control de las naves espaciales sea consistente y que el juego nunca tenga una ventaja injusta sobre el jugador.
Espero con ganas vuestras opiniones a medida que trabajamos para refinar y pulir este sistema. Después de todo, esto es sólo el principio. ¡Acabamos de empezar!
John Pritchett
Programador de Física de CIG
Ndt: Algunos de los términos pueden no ser muy católicos, pero se he hecho lo que se ha podido. X)