Author Topic: Feature request: enhance $Rotation Time moddability  (Read 6616 times)

0 Members and 1 Guest are viewing this topic.

Feature request: enhance $Rotation Time moddability
Currently, all ships move at exactly the same rate along an axis: pitching up will be the same rate as down, yawing left will be the same as yawing right, etc.

I request that we be able to specify up and down, yaw left/right, and roll left/right rates separately. This will allow modders creating atmospheric mods much better control over the handling of their planes, and any ships that are asymmetrical will also be able to handle more realistically.

Here's the source thread if you haven't seen it.

Let me know if that didn't make any sense and I'll try to clarify :)

Whether it's possible or not, thanks!

 

Offline z64555

  • 210
  • Self-proclaimed controls expert
    • Steam
Re: Feature request: enhance $Rotation Time moddability
Some of you may understand the significance of the differences in up/down pitch rates, but are wondering about the left/right yaw and clock/counter clock-wise roll rates.

A prime example is the WW2 era Mitsubishi Zero - a design quirk of the engine and flight controls systems resulted in a very high banking rate in one direction, but a slow rate in the other. Obviously, the pilots of the Zero tried to use this to there favor whenever possible, but later on the US figured out what was going on and developed tactics to force the Zero to commit to the slower bank direction.

Starcraft with odd-numbered (1, 3, 5, etc.) engines may also be susceptible to this phenomenon (since it's mostly a torque-balance issue), assuming their engine technology is similar to modern aircraft engines.
Secure the Source, Contain the Code, Protect the Project
chief1983

------------
funtapaz: Hunchon University biologists prove mankind is evolving to new, higher form of life, known as Homopithecus Juche.
z64555: s/J/Do
BotenAlfred: <funtapaz> Hunchon University biologists prove mankind is evolving to new, higher form of life, known as Homopithecus Douche.

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
Re: Feature request: enhance $Rotation Time moddability
That would be really useful for atmospheric mods. For spacecraft, I'd assume their engines are more like rocket engines, with no big, rotating parts to generate the torque.

 

Offline Tomo

  • 28
Re: Feature request: enhance $Rotation Time moddability
Don't need rotating parts for there to be a difference in manoeuvrability between directions.

Consider a BSG Viper with its three main engines in a triangle - one engine up, two engines down.

To pitch up, it can stop the one upper engine and increase thrust on the two lower engines.
To pitch down, it can stop the two lower engines and increase thrust on the top single engine.

Thus, it can pitch up faster than it can pitch down - and a skilled pilot will roll the craft to take advantage of this.

The same effect holds for any arrangement of thrusters where there's more thrust available on one side of the craft.

 

Offline torc

  • 210
  • Diaspora SFX engineer
Re: Feature request: enhance $Rotation Time moddability
Don't need rotating parts for there to be a difference in manoeuvrability between directions.

Consider a BSG Viper with its three main engines in a triangle - one engine up, two engines down.

To pitch up, it can stop the one upper engine and increase thrust on the two lower engines.
To pitch down, it can stop the two lower engines and increase thrust on the top single engine.

Thus, it can pitch up faster than it can pitch down - and a skilled pilot will roll the craft to take advantage of this.

The same effect holds for any arrangement of thrusters where there's more thrust available on one side of the craft.

exactly....this feature would be very good to simulate RCS thrusters in space :)
indossare una divisa può avere un prezzo alto...ma a volte...è troppo alto!!! Bill Adama

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
Re: Feature request: enhance $Rotation Time moddability
While RCS placement should be fairly equally spread over the ship, the main reason to include different pitch up and down rates would be to limit harmful G-forces. When pitching up, human body can stand around 10G, maybe even up to 20 as long as the duration is short. When pitching down, you can pull up to 4-5G before the blood spills into your brain. In other directions the tolerance isn't much more than 5G. Thus, if you want to pull a lot of Gs (translanting directly to a higher turn rate), you should pitch up. Of course, it only really applies in atmosphere, but in most cases SF fighters fly like in atmo anyway.

Also, different rates could have other benefits. It should be possible to hook them up into scripting and modify them according to subsystem damage. Thus allowing for modeling damage to the RCS system (or flight controls) using scripting.

 

Offline Valathil

  • ...And I would have had a custom title if it wasn't for you meddling kids!
  • 29
  • Custom Title? Wizards need no Custom Title!
Re: Feature request: enhance $Rotation Time moddability
Dragon you might want to look up what the difference between speed and acceleration is.
┏┓╋┏┓╋╋╋╋╋╋╋╋╋┏┓
┃┃╋┃┃╋╋╋╋╋╋╋╋╋┃┃
┃┃┏┫┃┏┳━━┓┏━━┓┃┗━┳━━┳━━┳━━┓
┃┃┣┫┗┛┫┃━┫┃┏┓┃┃┏┓┃┏┓┃━━┫━━┫
┃┗┫┃┏┓┫┃━┫┃┏┓┃┃┗┛┃┗┛┣━━┣━━┃
┗━┻┻┛┗┻━━┛┗┛┗┛┗━━┻━━┻━━┻━━┛

 
Re: Feature request: enhance $Rotation Time moddability
Don't need rotating parts for there to be a difference in manoeuvrability between directions.

Consider a BSG Viper with its three main engines in a triangle - one engine up, two engines down.

To pitch up, it can stop the one upper engine and increase thrust on the two lower engines.
To pitch down, it can stop the two lower engines and increase thrust on the top single engine.

Thus, it can pitch up faster than it can pitch down - and a skilled pilot will roll the craft to take advantage of this.

The same effect holds for any arrangement of thrusters where there's more thrust available on one side of the craft.


uh no! there is no resistance in space, you need an opposite thrust in the other side of the ship for it to turn around, just giving it an acceleration differential wont do it.

Probably the ONLY ever sci fi show to actually show adequate space fighters is babylon 5. where the ships were full of little rockets all around and would spin madly on their own axis shooting idiots trying to pursue them from behind.

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
Re: Feature request: enhance $Rotation Time moddability
Dragon you might want to look up what the difference between speed and acceleration is.
I know what's the difference between them. Obviously, G-forces come from acceleration. In atmosphere, speed and rotational acceleration are linked. In space, they're not. Meaningful G-forces in space only come from lineal acceleration (unless you're spinning, really, really fast and the cockpit isn't centered, that is). In atmosphere, however, the faster you fly when entering a turn, and the smaller the turn radius (dictated by the turn rate), the higher the rotational acceleration. In that case, speed doesn't change, but velocity vector does, and that's what causes G-forces during an atmospheric turn.
uh no! there is no resistance in space, you need an opposite thrust in the other side of the ship for it to turn around, just giving it an acceleration differential wont do it.
Actually, it'd be enough to put a thruster forward or backward of the ship's center of mass for it to cause rotation. The opposite thruster on the other side of the center of mass is there to counteract translation that would result from using only one thruster.

 

Offline Valathil

  • ...And I would have had a custom title if it wasn't for you meddling kids!
  • 29
  • Custom Title? Wizards need no Custom Title!
Re: Feature request: enhance $Rotation Time moddability
Actually you do get G forces when turning in space why shouldn't you. Atmospheric flight has the added complication of where are you turning to. Are you turning away perpendicular to your wings? Means nonlinear acceleration upwards/downwards (in the pilots frame of reference) due to increasing lift on the wings which exacerbate the G-Forces you experience. If you had the same acceleration in space you would feel the same G-force. The G-Force you experience is in no way dependent on if there is an atmosphere or not only on the rate of possible acceleration of the ship your in.
┏┓╋┏┓╋╋╋╋╋╋╋╋╋┏┓
┃┃╋┃┃╋╋╋╋╋╋╋╋╋┃┃
┃┃┏┫┃┏┳━━┓┏━━┓┃┗━┳━━┳━━┳━━┓
┃┃┣┫┗┛┫┃━┫┃┏┓┃┃┏┓┃┏┓┃━━┫━━┫
┃┗┫┃┏┓┫┃━┫┃┏┓┃┃┗┛┃┗┛┣━━┣━━┃
┗━┻┻┛┗┻━━┛┗┛┗┛┗━━┻━━┻━━┻━━┛

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
Re: Feature request: enhance $Rotation Time moddability
That's why I said "meaningful" G-forces. Getting 1G from spinning alone is hard. Of course, the same acceleration equals the same G-force. Atmosphere changes the way forces are applied. In space, it's staraightforward. Thrust=force, so pretty much everything about movement there could be explained by early high-school level mechanics (at least, as long as you don't get into orbital operations). In atmosphere, you can't turn the plane without changing the direction of your flight, and you have entire aerodynamics to worry about. G-forces from turning in atmosphere are much greater than G-forces from lineal acceleration and turning given similar engine parameters. An F-18 can easily pull 10G by turning at high speed, but good luck getting it even remotely close to that value in lineal flight. Also, that's where corner velocity comes from. In theory, you could turn harder and faster above it, but the plane could fall apart, of you could pass out. It's a velocity at which your turn will push either the plane or you to the limits, but not over them. The reason it seems like there's a hard limit on how fast you can turn is that most planes have G limiters to prevent them from breaking up because of a bad maneuver.

 

Offline z64555

  • 210
  • Self-proclaimed controls expert
    • Steam
Re: Feature request: enhance $Rotation Time moddability
Don't need rotating parts for there to be a difference in manoeuvrability between directions.

Consider a BSG Viper with its three main engines in a triangle - one engine up, two engines down.

To pitch up, it can stop the one upper engine and increase thrust on the two lower engines.
To pitch down, it can stop the two lower engines and increase thrust on the top single engine.

Thus, it can pitch up faster than it can pitch down - and a skilled pilot will roll the craft to take advantage of this.


uh no! there is no resistance in space, you need an opposite thrust in the other side of the ship for it to turn around, just giving it an acceleration differential wont do it.

What does resistance have to do with anything? If your thrust vector doesn't point directly towards/away the C.M. (and isn't positioned at the C.M), your going to get a torque about said C.M.

Granted, this torque might not be very much...

The same effect holds for any arrangement of thrusters where there's more thrust available on one side of the craft.

It's not just about the amount of thrust, but also about where said thruster are in relation to the C.M. and where they're directed towards.



Now that the bickering about specifics is aside... :lol:
Secure the Source, Contain the Code, Protect the Project
chief1983

------------
funtapaz: Hunchon University biologists prove mankind is evolving to new, higher form of life, known as Homopithecus Juche.
z64555: s/J/Do
BotenAlfred: <funtapaz> Hunchon University biologists prove mankind is evolving to new, higher form of life, known as Homopithecus Douche.

 
Re: Feature request: enhance $Rotation Time moddability
Possible table entry:

Code: [Select]
$Rotation Time:              3.0, 2.6, 5.0
$E Rotation Time:           3.0, 4.0, 2.6, 2.4, 5.0, 5.1         
Using $E Rotation Time will override $Rotation Time if present. Values are x (pitch) down, x up, y (yaw) left, y right, z (roll) left, z right

or perhaps
Code: [Select]
$Rotation Time:              3.0, 2.6, 5.0
$E Rotation Time:          4.0, 2.4, 5.1
$E Rotation Time values specify separate values for x up, y right, z right. Original $Rotation Time values used for x down, y left, z left, respectively.

("E" stands for "Enhanced")

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: Feature request: enhance $Rotation Time moddability
I swear I posted this earlier but I don't see it on the thread.

That table entry isn't going to work cause sooner or later someone is going to try to use the system on a ship with more than one engine subsystem and realise that it doesn't make the blindest bit of sense for the times not to be affected by the complete destruction of one subsystem.
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 
Re: Feature request: enhance $Rotation Time moddability
so how about tying the ships turning performance to what special maneuvering subsystems are installed?

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: Feature request: enhance $Rotation Time moddability
Well I'll leave it for the modders and coders involved to decide how it should work. It was just I noticed what appeared to be a rather huge flaw in the design and I didn't want anyone to start coding and then realise the problem later.
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 
Re: Feature request: enhance $Rotation Time moddability
That table entry isn't going to work cause sooner or later someone is going to try to use the system on a ship with more than one engine subsystem and realise that it doesn't make the blindest bit of sense for the times not to be affected by the complete destruction of one subsystem.

That is true, but then that modder would have to decide how to handle it. Maybe don't use the enhanced version if there's a chance the ship could lose some engines?

The possibility of someone using a feature in a way that doesn't make sense shouldn't really prevent the feature from being included, should it?

 

Offline z64555

  • 210
  • Self-proclaimed controls expert
    • Steam
Re: Feature request: enhance $Rotation Time moddability
That table entry isn't going to work cause sooner or later someone is going to try to use the system on a ship with more than one engine subsystem and realise that it doesn't make the blindest bit of sense for the times not to be affected by the complete destruction of one subsystem.

How does the current multi-engine system work, then? Might it be possible to reduce the performance of the RCS thrusters, by like, scaling it down whenever an engine is destroyed/disabled?

i.e. Roll_Rate_Positive = (number_of_live_engines / total_number_of_engines) * Roll_Rate_Positive_Maximum

Maybe could make an RCS damage system per engine, so particular engines have more/less effect on the RCS performance?
Secure the Source, Contain the Code, Protect the Project
chief1983

------------
funtapaz: Hunchon University biologists prove mankind is evolving to new, higher form of life, known as Homopithecus Juche.
z64555: s/J/Do
BotenAlfred: <funtapaz> Hunchon University biologists prove mankind is evolving to new, higher form of life, known as Homopithecus Douche.

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: Feature request: enhance $Rotation Time moddability
That table entry isn't going to work cause sooner or later someone is going to try to use the system on a ship with more than one engine subsystem and realise that it doesn't make the blindest bit of sense for the times not to be affected by the complete destruction of one subsystem.

That is true, but then that modder would have to decide how to handle it. Maybe don't use the enhanced version if there's a chance the ship could lose some engines?

The possibility of someone using a feature in a way that doesn't make sense shouldn't really prevent the feature from being included, should it?

So the smarter solution is to implement the feature in a way that it does work. Not to implement it in the wrong way and then say "If you did x, you can't use it"
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 
Re: Feature request: enhance $Rotation Time moddability
OK try this on for size:

Code: [Select]
$Rotation Time:              3.0, 2.6, 5.0
$E Rotation Time:           3.0, 4.0, 2.6, 2.4, 5.0, 5.1
      +engine01:      0, 0, -2, 2, -0.5, 0.5
      +engine02:      0, 0, 2, -2, 0.5, -0.5
      +wing01:         0.5, 0.5, 1, -1, -1, 1
      +wing02:         0.5, 0.5, -1, 1, 1, -1
Using $E Rotation Time will override $Rotation Time if present. Values are x (pitch) down, x up, y (yaw) left, y right, z (roll) left, z right
Specifying a subsystem after $E Rotation will tell the game to: If that subsystem is destroyed, to add or subtract seconds to/from the $E Rotation Time, with a minimum total of 0.5 seconds, and maximum of, say, 100.

EDIT: Please note that the above is only a concept of how the table could work.
« Last Edit: September 19, 2012, 02:48:40 pm by Scourge of Ages »