Dev Post on flight model, check this out



I wasn’t able to make it entirely through this thread, but it was a very interesting debate. I have a few comments.

  1. IFCS models a true control system, which means that it asks thrusters to provide an acceleration based on a velocity feedback control. A real control system has limitations on what acceleration it can support based on the damping of the system. Accelerate too much and you have overshoot and oscillation. Accelerate too little and you have a long settle time. Critical damping provides the optimal acceleration to settle as quickly as possible with zero overshoot. So the acceleration curve is a realistic curve given the type of system we’re simulating. And there is no difference in the settle time whether you’re accelerating to a constant velocity or decelerating to 0. There is a perceived difference because settling into zero velocity is a much more subtle action than accelerating into a constant velocity. You perceive the effect of slide as you come to a full stop. You don’t perceive slide as you settle into a non-zero velocity.

  2. What IFCS asks of thrusters is not always what it gets. This was a primary design consideration for this system. It’s easy to create a system that behaves exactly like you want it to behave. The hard part was designing a system that might not get the response that it asks. That’s why I modeled it after a feedback control system. Because at every step in the simulation, it responds to the true state of the system rather than what it expects it to be. And there are many reasons why the thrusters won’t give IFCS the thrust it requests. An obvious one is damage to thrusters, IFCS or both. Another is a non-optimal mass distribution, since mass distribution changes from the designed norm, especially in the heat of battle. Another is just non-optimal design. You see this in the Hornet. It has vectored thrusters that potentially support multiple control actions. This isn’t a bad thing. It gives ships character. The Hornet performs well, even if it does have some hitches. These hitches come out of its intentional thruster design. The most obvious example of it is when strafing left and right. When you start to strafe left, for example, the top thrusters vector to provide the +X thrust. These thrusters are not balanced by other +X thrusters on the bottom of the ship, so they generate roll torque along with +X translational force. In order to compensation for this, IFCS fires pure torque pairs, which are pairs of thrusters that can generate the needed counter-torque without any residual translation, thus bringing the system to equilibrium. The problem is that the very same thrusters engaged in +X thrust are also used to generate the counter-torque, and it takes a moment for the system to find its natural equilibrium. But it is a natural equilibrium, not a pre-determined state, and that’s the point of this system. IFCS isn’t “smart” so much as it is “adaptive”. At its most basic, it isn’t attempting to fly for you (though it can do that, and advanced systems will do more). It’s merely attempting to use the thrusters it has, without any assumptions about what it has, to achieve the requested action.

  3. The current state of control is not what it will be. Over the past week, I have been refining the response to controller inputs to make the game easier to control without sacrificing realism. I personally cannot play the game as it was released. We had to release it to get the ball rolling, but I’m working on the fix to a lot of these issues as we speak. In fact, I should be working on that instead of reading and responding to this thread.

  4. I happen to agree that the amount of thrust we support, and thus the amount of acceleration, is too high. I would love to see more inertia in these ships. The system supports that, it’s just a question of what the designers decide. But be warned that the stopping time and perceived slide when turning will be higher with less acceleration.

  5. “Main thruster keeps thrusting animation even though you already reached maximum and your cockpit controlls reports no energy waste. (apparently to make it look cool)
    -that, i dont like…”

That’s not actually true. It isn’t thrusting, it’s just in a hot state, ready to thrust. When it’s thrusting, you see a very different effect. It’s like a jet engine that’s on, running hot, but not yet thrusting. Maybe we can improve the effect, but that’s what we were going for.

  1. As for the complaint that there is no mouse mode to point the nose toward the reticle position, there certainly could be, it just hasn’t been implemented. IFCS can accurately point the ship’s nose at any point in space with optimal thrust.

  2. To address the point of the OP, it’s not actually the vectoring of the thrusters that you’re feeling, but instead a combination of the feedback control response, thruster response time and max thrust available, which, btw, fluctuates based on available power. This is highly tunable and will depend on the quality and even health of the systems involved, so different ships will have very different control response.