Welcome to Keen Software House Forums! Log in or Sign up to interact with the KSH community.
  1. You are currently browsing our forum as a guest. Create your own forum account to access all forum functionality.

Thrusters applying force relative to center of mass

Discussion in 'Suggestions and Feedback' started by kuro11, Oct 18, 2013.

Thread Status:
This last post in this thread was made more than 31 days old.
  1. vasvadum Apprentice Engineer

    Why do moderators say "remove poll please" when it's impossible for a normal non-modded user to remove a poll? :p Only mods can do it. Right?

    EDIT: Ah, just now saw "removed", missed the D. Hah. It happened to me in my topic before so I got a bit confused.
  2. Victoriesx42 Trainee Engineer

    I agree wholeheartedly. Bending and torsion should be accounted for.
  3. kuro11 Apprentice Engineer

    I posted this prior to the rule changes.
  4. MrBlack103 Trainee Engineer

    Dingo-J's above post needs a larger show of support. From my perspective this would be the perfect system.

    I would only add the minor note that only structural blocks like hull should affect the centre of mass. It would be infuriating to be altering the ship's performance every time I place down a trivial item like a control panel or a chair.
  5. JamesL86 Senior Engineer

    One thing that could help immensely with realistic thruster physics would be to have an overlay that you can toggle while building that visually shows where the center mass is. I am thinking of something simple like a six-way "+" symbol with a little glowing bit in the middle. The arms of the "+" symbol could be programmed to automatically extend just beyond the hull just like the symmetry mode planes do now. Be fairly easy to get real creative and still build efficiently.
  6. Mac D Junior Engineer

    I already suggested this. No worries, your description sounds better and I hope we get this overlay.


    I was all for "thrusters applying force relative to centre of mass" until I was flying ships with attached throwing weapons (give it a go and find out what effect centre of mass and thruster torque would have on ship flight if unbalanced).


    I was thinking if we had a "fly-straight" computer like the inertial dampeners, but compensates for unbalanced thruster and mass distribution and realistically reduces overall thruster efficiency (as they are trying to compensate all the time).

    Think about trying to fly a ship if we get a few thrusters or armor blocks blaster off one side in combat, we will wish we installed some sort of "compensation/fly-straight computer".
  7. MrBlack103 Trainee Engineer

    I'm sure there'll be many lamenting with you for your lost hopes of axe-throwing spaceships.

    As others have said, achieving a task by working around limitations is what makes achieving that task all the more satisfying.
  8. Nilat Apprentice Engineer

    Many things to say.


    In this thread, many people said realistic thrust is a bad idea because it will be impossible to pilot these things straight. They are wrong. And I'm not even saying "they can balance their thrusters (noobs, lol)", that'd be condescending, as there are real solutions.

    There are many ways to compensate for unbalanced thrusters. I'm not talking about what is already ingame but what could be done. Also, I'm only talking about automatic or semi-automatic compensation.

    First, for each orientation independently, you can reduce (in part or entirely) the output of certains thrusters in order to maintain balance.
    This solution works only if there are thrusters of the same orientation at each side of the ship (for example, with forward thruster, we need them at the top, bottom, left and right sides, which makes at least 3 thrusters)

    Second, in addition to the first solution, you can use thrusters of different orientations to compensate for a roll induced by unbalances (side(s) without thrusters). It's more complicated to compute but still very easy compared to many other things already in the game.
    This solution works only if thrusters are placed in a sufficiently large set of distinct couples (side, orientation) to allow for an equilibrium.
    Note: the same algorithm could be used for angular velocity dampening as an emergency substitute for gyros. Easily.

    Third, you can use the gyros dampening, of course.

    The first two solutions require some knowledge of the current center of mass.
    Of course, a computer system which magicaly knows this info about the ship would be... Magical. Except, maybe, if we assume that each block of the ship communicates with its surrounding blocks, declare its mass and relay this info further, each block acting as both an agent and a network node (which they are supposed to be according to the devs IIRC) ; then the computer could easily compute the center of mass out of this. Note: this network thing is not to be simulated/computed, that's just a credible background explanation for a convenient feature.
    Otherwise, JamesL86 / Mac D's idea of a GUI to manually configure / calibrate a virtual center of mass is very good. Another solution would be an autocalibration using the gyro's accelerometers feedback while thrusting in various directions.

    TL;DR: There is no reason left to not do this.
  9. OracleTX Apprentice Engineer

    I'd want it to be optional. Thinking about all the ships I've built so far, most of them would slew to one side or another a little bit if realistic thrust was enabled for everything. If you think about the gyros and other thrusters counteracting any off axis thrust automatically, then you'd end up in about the same place, but with uglier ships as people make easy to calculate and efficient balls with thrusters wrapped around the equator.
  10. randomjack48 Trainee Engineer

    benefit/cost ratio

    I think placement of engines should influence how well they work "pivot principle", ie spaced out thrusters = more torque when turning. But taking them out shouldn't render your ship spinning aimlessly in space, either.

    Play KSP and you know when I say realism is annoying, you have to build symmetrically in that game. Even shifting fuel can mess things up.
  11. fabiozaza Apprentice Engineer

    I completely agree to having the thrusters placement with respect to the center of mass should make a big difference. It is clear that the dev team wants to make a realistic-physics game and this is some of the fundamentals of physics.

    Personally I dont agree with using gyroscopes for rotation of the ship as this would impose its own limitations. by spinning a mass faster and slower would cause the ship to rotate, but there would be a mechanically limitation an how fast you could spin the mass and thus you would have to limit how your ships rotation.

    Whereas if the ship uses thrusters to rotate, this would make for very interesting thruster effects, but would allow for much more rotation than what would be offered by gyroscope.

    Placement of thrusters should always form part of you design anyway.. its like putting all four wheels on the front of you car, just wouldn't look great or work.
  12. Kiccsavo Apprentice Engineer


    Agreed. The most important is to make the game still playable for everybody, but when you make well planned designs you should have advantage over those who just build a thing what looks cool but totaly unpractical.
  13. JNC Apprentice Engineer

    As for flying straight, if joysticks were ingame or the mouse was improved some than we could have variable inputs rather than the keyboard 'all or nothing.'
    ALSO can we have thrusters produce the maneuvering forces rather than the gyro? As I understand it, gyro's resist directional changes, not produce them? If you pitch up or yaw right, etc, why not have thrusters provide for that movement?
  14. tomxp411 Apprentice Engineer

    It's not that hard to calculate the center of mass; after all, it only needs to be done when the object changes its geometry.

    As to applying thrust relative to the center of mass: that's not hard either. It requires just a little bit more coding than the current thruster logic.
  15. ctiberious Apprentice Engineer

    I definitely like the idea of more realistic thrust vectoring. That said, it should be noted that in zero g you shouldn't need to have an absolutely symetrical ship. As has already been commented on, gyroscopes would be able to compensate for some asymetry. The thrusters themselves would also be able to compensate to a degree. After all, the engine bell on a modern rocket doesn't point in just one static direction. They are able to turn/rotate by a few degrees. I therefore have to assume that the thrusters in SE would have the same capabilities. So you'd really only have to worry about thrusters that were extremely out of balance. For instance:

    =--|--= would be in balance and optimal
    =---|--= would be slightly out of balance but between gyros and the thrusters themselves, youd still fly straight
    =---------| would be wildly out of balance and would likely not fly straight regardless of how many gyros you installed

    ^^^^ is direction of travel
    = is thruster
    - is random blocks
    | is center of mass

    So some creativity of thruster placement would still be allowed. It's only the exceedingly out of whak designs that you couldn't use.

    I'd also like to suggest an extra flight mode. Being able to change the direction you're facing by gyros alone is fine and perfectly feasible in zero g. After all, there's nothing wrong with being able to turn your ship 180 degees while still moving "forward". But we need a second flight mode that allows us to actually turn (left, right, up, down). When in this alternate flight mode, using the mouse or arrow keys to change our facing would have the computer automatically fire the appropriate thrusters to cause the ship to change it's direction of travel. This should include automatic banking as needed so that the centrifugal force of a turn could be used to keep "stuff" from flying around inside our ships. This would be especially useful to large carriers so that fighters don't get turned to debris during a "turn" as easily as they do now. I think a couple others have made this suggestion in this thread, but I think it's worth reiterating.
  16. tomxp411 Apprentice Engineer

    If I understand your "flight mode" suggestion correctly, the flight mode you're asking for is already handled by the intertial dampeners... however, the ID will also arrest all forward motion when you let off the thruster.

    What we really need is a comprehensive ID overhaul. ID's should be able to match velocity with any moving or stationary object, as well as allow for "nose forward" flight by firing lateral thrusters to damp out side motion. In either case, there should be an easy way to set the reference frame.

    As it is, it's virtually impossible to match velocities with a moving object. I always end up slightly too fast or slow; without being able to adjust the ID's frame of reference or have some sort of fine thruster control, we can't do proper intercepts in space.
  17. ctiberious Apprentice Engineer

    I'm under the impression that your previous forward momentum doesn't get removed unless you either stop pressing a movement button or intentionally use opposite thrust. Maybe that's not the case and I've just not noticed but I seem to have bounced off of quite a few asteroids because my previous momentum was still moving me in my old direction even though I'd turned in what seemed plenty of time.

    But even if ID is partly handling this, I still think automatic banking should be included. In space we may not have to bank in order to turn, but imagine what would actually happen to our engineer if we tried to do a flat turn at 104.4m/s. We'd have trouble staying in our seats let alone controling the ship. But if we banked into the turn, centrifugal force would be pushing us "down" into our seats during the turn.

    For larger ships, doing a flat turn means fighters (or any other "docked" ship) can be sheared off the deck unless you have plenty of landing gear and/or a relatively light docked vessel. But if a large ship could bank into a turn, those docked ships would be forced "down" which should greatly limit the possibilty of fighters turning into rubble just because a carrier turned a bit too quickly.

    I do like the idea of being able to match velocity. But only if the object you're trying to match speed with is moving at a constant velocity.
  18. Helmic Trainee Engineer

    Computationally, I don't think it's a big deal, that's something the devs can figure out with what they know how to do. As far as gameplay, I REALLY don't want this to be KSP in deep space - it's really goddamn hard to make fighter/carrier-looking ships in KSP, the space penis is pretty much all there is without sinking a lot of hours into your design. Remember that this is also a voxel-based game, everything has to snap to a grid. We can't precisely place thrusters to put the center of thrust right behind the center of mass.

    I think ignoring the center of thrust is a necessary abstraction for what this game is trying to be. As "realistic" as this game is trying to be, it's not actual reality. It's Hollywood realism, there's factors that are neat to consider but some stuff just has to be glossed over for the sake of the medium. Being able to easily make a cool-looking spaceship and fly it around and shoot bad guys and eventually tear it to bits is a big part of the appeal. People enjoy making collossal carriers and reproduction ships from sci-fi games and movies and this is the only game that can do that while looking decent.

    There's plenty of other things to tweak for functionality at the moment - I like that not having a center of thrust means you can attach something that works on one ship and stick it on another. It means you can have wings on your ship to hold guns or act as docking/launching aids and not worry about your ship spinning out of control should one ever get damaged.

    I mean, the way rotors work isn't terribly popular for a reason. It's not fun when your neat manned turrets can't actually be attached to a ship without absolutely wrecking its flight.
  19. Decius Trainee Engineer

    Thrusters applying force relative to center of mass would ultimately be a bad idea.

    I have two reasons for this: fewer designs become possible, and reduced accessibility.

    Fewer Designs Possible
    Reduces the quantity of functional designs possible in the game. In fact, the number of functional designs approaches 1.
    - Currently, realistic designs and creative designs are possible. With this proposed change, only realistic designs are possible.
    - Players that wished to re-create ships from heir favourite brand of sci-fi would no longer be able to.
    - Players that wished to create a bizarre design would no longer be able to.
    - Correct me if I'm wrong, but would this change mean that a cube/sphere would become the best/only viable design for a ship? If players loath seeing cubes now, while it is optional, how would these same players feel when cubes become obligatory?

    Reduced Accessibility
    - By making ship construction more complex, new players will face a more daunting learning curve, increasing the chance to be put off by the game.
    - Player would be put off with the reduced ship possibilities.
    - Reduced accessibility leads to reduced community size and customer base. These in turn hurt future game growth.

    Minecraft, a very successful title I'm sure we are all aware of, has a large community. Part of this is because it is accessible and accommodates different play styles. Creative players, artistic players, inventive players, or adventurous players. A variety of people, with a variety of play styles, can enjoy Minecraft.

    Naturally, simply changing the way the thrusters operate will not "kill the community". However, it is an impediment to accessibility and community growth.

    "Why not have 2 game modes? One with simple physics and one with realistic physics?"
    A possible solution, but I have my doubts. This has the potential to result in tiered game play and, I believe, would be divisive to the community; separating the "realistic" players from the "simple" players. While, yes, Minecraft has "creative mode" (CM) and "survival mode" (SM), both modes have the same game physics. Almost without exception, the same creations are possible in both modes. CM worlds can even be exported to SM worlds, and CM can even function as a testing ground for future builds in SM. Thus, CM and SM compliment each other. "Realistic physics" and "simple physic" would not.

    I believe that the addition of center-of-mass thrusters, though increasing realism, does short term and long term harm to the overall game experience.
  20. mctroyd Trainee Engineer

    One of the first things I had asked a friend of mine, when I started my first build, was "how do you map the thrusters for movement?" I was expecting this center-of-mass issue and was shocked when my initial design "just worked." Neat. However, having tried to fly the "red ship" that comes with one of the base maps, I learned immediately how annoying gyros can be on a large, heavy vessel.

    I don't think it's a question of more or less creative, or even a question of aesthetic vs. engineering. To me, it's simply a question of thought process. A ship doesn't just have to be a single cylinder, or sphere, or cube. If modern ships stuck to a single-hull design, we wouldn't have things like the hydrofoil, or hovercraft. Center of mass makes it possible to design a massive vessel, which is maneuverable, without having to use 26 gyros to make it so. Low-power ships with minimal thrusters would also work. Even ships specificially designed to "look cool" could be built, with thrusters engineered into the aesthetic after the fact. (Perhaps additional types of thrusters could mitigate some of the aesthetic factors here.)

    @Decius does make a good point about balancing game play to minimize divisiveness, but that's why Space Engineers is still in alpha, right? This is a great opportunity to try new things and find where that line is. I vote in favor of making this toggle-able.
  21. Pikas Pilate Trainee Engineer

    I'm sure it wouldnt be hard. as i see them now, gyros really only tell me how fast i'm going to turn using my mouse. I'd like to know that something is wrong when i have to manually adjust my movements to compensate to ship damage. Still, the point that this could kill some creativity is... in some way bad. takes the fun-scifi feel out of the game and that kinda kills a good deal of it just as much as the lack of realism 'could'. But not a bad idea, guns already throw off a ship's course based on where they are so why not? let's try it! if we hate it ppl will ask to have it changed back!

    ALTERNATIVELY: ship accelerate and max speed are hindered because thrusters have to "compensate" for an awkward/unbalanced design. and then the gyros correct it that way as opposed to someone having to constantly shift their mouse just to fly straight because their vertical design ship is slighly off balance even with multiple gyros. because that is when i feel this will become a bad thing.

    I've played too many games where the freedom of playing with choices were limited to simply choosing the 'best' stuff which was a few out of thousands of items in millions of combinations down to simply three winning combos anyone ever used. THAT is what i am afraid of. but, that being said, lets give it a try. so long as creativity is NOT hindered. I think this is a good idea.
  22. iron_dinges Apprentice Engineer

    This I like a lot.

    Implementing it wouldn't be too difficult either, its a trivial set of moment calculations.

    Upon entering a craft (or when a thruster is lost), the moments are all calculated (to prevent the excessive lag of calculating it all the time), and that determines the ship's

    So for example if you ship has two wings with a forward thruster on only one, the ship's gyro has to work to counteract the rotation caused by the thruster. The thruster is automatically throttled to only go as fast as the gyro is able to counteract.

    It will end up being realistic, because every ship will have at least a thruster in each direction and a gyro or two, so there is always a force to compensate for what you are doing.

    I don't think it will chase many new players away. The joy of this game is figuring out things, and this would allow much more figuring out. For those not physics-inclined, other players or youtube vids could explain the simple idea that you must put thrusters in these directions at these positions.
  23. Ver Apprentice Engineer

    I agree with OP on this matter, the only detail I might add is that I'd very much hope the center of mass adjustments happen on a block-by-block basis, and not in small increments. I know that is unrealistic, but it would make compensating for this 100x easier.
  24. Syzygy Trainee Engineer

    Why not just include a toggle for the server host? That way we all get our cakes and eat them too.
    I would LOVE to challenge myself and design a ship around proper placement of rockets/engines, as well as weight distribution.
    But I also like to just cut loose and design awesome looking ships, realism be damned.
    Just put in an on/off switch, or have a suite of options controlling the physics of the given map instance.
  25. Qestroy Trainee Engineer

    Any update with this? I feel with the solar panels and thruster damage the devs are working a lot better towards what the players want and what is more realistic, and this is definitely something I'd definitely want. Most people probably wouldn't notice a difference, they tend to build symmetrical ships anyway, and given the turning force a gyro can provide, what little asymmetry that is seen could probably be easily compensated for by the gyro.
    That way the thrusters would aid turning on ships with thrusters placed with that in mind, and they wouldn't stop people moving in straight lines, because the gyro would compensate when the motion command is given
  26. toxi Apprentice Engineer

    it is one thing to make solarpanels ... its n other thing to reconstruct the game engine .. 'caus that will be needed to make this possible.
  27. pirate Apprentice Engineer

    Ondrej said on the first page it's possible without changing much.

    Basically, I perceive the system to work like this.


    In the first example, we only have thrust on one side of the center of gravity, causing a spin.

    In the second example, we have balanced thrust potential on both sides, resulting in perfect forward efficiency and maximum thrust.

    In the third example, we have unbalanced thrust potential on both sides, so the ship's computer automatically reduces thrust from the left engine for forward flight.

    In this way, better-balanced ships are more efficient and therefore faster, but as long as you have thrusters on each side of the center of gravity on every plane, you can achieve balanced thrust and therefore, flight in that direction.
  28. FatalPapercut Senior Engineer

    Forgive me if i'm missing something here, but what if thruster placement mattered in terms of center of mass, but the actual DISTANCE was irrelevant? Would it be a workable compromise to just say for example that too many thrusters above the axis, facing backwards, causes you to arc downward when flying forward? If that's the case, then you need an equal amount BELOW the axis. Or, alternatively, place the thrusters only ON the axis.

    So in effect, you would need at least 6 thrusters, mounted where the front/back, left/right, and up/down axis meet, or 24 thrusters, one in each direction in each quadrant.

    This way, you still get to build non-geometrically restricted designs, but placement still matters.
  29. Cronos988 Junior Engineer

    I have to wonder what Sci-Fi ship recreations people talk about that would not be at least somewhat feasible with CoM/CoT calculations? Do not most Sci-Fi ships have at least plausible thruster placements?

    Other than that, I quite like the Gyroscope idea: Make imperfect thruster placement a performance issue, but have them react normally to control impulses by the player. Only a ship like the one in the OP should be completely unable to fly.
  30. pirate Apprentice Engineer

    A good example is Enterprise whose only forward thrusters are high above her center of gravity, which would cause an imbalance that would be difficult at best to correct with RCS and gyros.
Thread Status:
This last post in this thread was made more than 31 days old.