Jump to content
Sign in to follow this  
Dornil

Flight model question

Recommended Posts

I have a question:

What defines AI's flight behavoir?  Only the parameters from [FlightControl] section? Or do the aerodynamics values from the rest of data.ini play their role too?

Share this post


Link to post
Share on other sites

Everything in the data.ini file.

The AI aircrafts have their own mode for the flight model behaviour. It's never "hard mode" but some features apply though, that you don't have when flying "normal" as a player.
And the game engine has something to do with the AI flights. You can use some entries in the data.ini file [AIData] but you'll never control them 100% with that part.
There's some cheating as well (20 000 ft on way point 9 and on the glide slop in few seconds..., no collision point between wingmen on the runway, etc...)

  • Thanks 1

Share this post


Link to post
Share on other sites

What I mean is: for example I have data.ini's of, say, F-4 and F-86. If I just copy [FlightControl] section (and everything under AI data) from F-86 to F-4's data, does this mean that AI Phantoms will fly exactly as AI Sabres? Or do they take other airframe/engine figures into account as well?

Another question: some of the modded aircraft have spin and spin recovery modelled. How was this done? I mean, what sections of data.ini are responsible for spin behaviour?

Share this post


Link to post
Share on other sites
53 minutes ago, Dornil said:

If I just copy [FlightControl] section (and everything under AI data) from F-86 to F-4's data, does this mean that AI Phantoms will fly exactly as AI Sabres?

Not at all.
All the parts count : Fuselage / Left & Right Wings / Left & Right Outer wings / VerticalTail / Left & Right Stab - engines - control surfaces - weapon stations - fuel tanks - landing gear
Even "HasAeroCoefficients=FALSE" (Nose or Tail) part has a influence on the flight model when they have "massfraction" and "MinMaxExtents" values.
(When they don't have massfraction entry at all, the weight is divided between parts that don't have massfraction entries. So "massfraction=0.0" is "not having a mass fraction value", and the lack of the entry gives a weight anyway.)

If you want the F-4 to fly like F-86 you just copy/paste the F-86 data.ini and keep the F-4 structural parts (good luck with that...).
It will be a total mess, won't work in game like you wanted at the start, and you'll had lost a huge amount of time doing so.
You're welcome !

53 minutes ago, Dornil said:

some of the modded aircraft have spin and spin recovery modelled. How was this done? I mean, what sections of data.ini are responsible for spin behaviour?

There's some special stall depart /spin lines "CheckStall=TRUE" and what is coming next. But the effect is very artificial. It triggers a stall spin, and several parts can have it (wings / outerwings / stabs)
You can make an aircraft stall and the recovery impossible to do.
You need at least one part of the lift surface in order to have the aircraft landing correctly (L/R wings and/or L/R outer wings) but the best spins that allow realistic recovery are made from a good flight model that don't call for these entries.
Most of the time the less I use these stall entries the better is the stalling - spinning - recovering behaviour (as long as the FM is really working... take-off - flight - landing)

I really don't like when I land and while rolling on the ground, as I slow down, these entries trigger a stall depart and the aircraft crashes on the runway AFTER the landing (ThirdWire Spitfire9 in hard mode)

Edited by Cliff7600
  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

Thank you for clarifying this for me! But I still can't understand the "spin technology"...

For one, this is the extract from KAW F-86F-30 data.ini (LeftWing section):

Quote

CheckStall=TRUE
CLmax=0.2662
AlphaStall=12.54
AlphaMax=18.04
AlphaDepart=26.12
StallMoment=-0.003
StallDrag=0.000
StallLiftTableNumData=37
StallLiftTableDeltaX=10.00
StallLiftTableStartX=-180.00
StallLiftTableData=0.000,-0.013,-0.028,-0.045,-0.061,-0.057,-0.049,-0.033,-0.014,0.000,0.018,0.052,0.099,0.147,0.213,0.258,0.358,0.559,0.951,0.617,0.381,0.279,0.221,0.176,0.125,0.078,0.040,0.000,-0.014,-0.033,-0.049,-0.057,-0.061,-0.045,-0.028,-0.013,0.000
StallDragTableNumData=37
StallDragTableDeltaX=10.00
StallDragTableStartX=-180.00
StallDragTableData=0.001,0.008,0.021,0.043,0.082,0.123,0.171,0.227,0.292,0.367,0.451,0.562,0.689,0.825,0.937,1.018,1.142,1.122,1.000,1.122,1.142,1.018,0.937,0.825,0.689,0.562,0.451,0.367,0.292,0.227,0.171,0.123,0.082,0.043,0.021,0.008,0.001
StallXacShiftTableNumData=37
StallXacShiftTableDeltaX=10.00
StallXacShiftTableStartX=-180.00
StallXacShiftTableData=-0.441,-0.441,-0.377,-0.339,-0.335,-0.322,-0.300,-0.276,-0.244,-0.220,-0.197,-0.165,-0.141,-0.119,-0.105,-0.102,-0.064,0.000,0.000,0.000,-0.064,-0.102,-0.105,-0.119,-0.141,-0.165,-0.197,-0.220,-0.244,-0.276,-0.300,-0.322,-0.335,-0.339,-0.377,-0.441,-0.441

This one does not spin when stalled.

And this is from Capun's F-86F (same section):

Quote

CheckStall=TRUE
CLmax=0.29084
AlphaStall=17.50
AlphaMax=18.73
AlphaDepart=22.23
StallMoment=-0.002
StallDrag=0.0227
PostStallCma=0.0177
StallHysteresis=0.0037
StallLiftTableNumData=37
StallLiftTableDeltaX=10.00
StallLiftTableStartX=-180.00
StallLiftTableData=0.000,-0.013,-0.028,-0.045,-0.061,-0.057,-0.049,-0.033,-0.014,0.000,0.018,0.052,0.099,0.147,0.213,0.258,0.358,0.559,0.951,0.617,0.381,0.279,0.221,0.176,0.125,0.078,0.040,0.000,-0.014,-0.033,-0.049,-0.057,-0.061,-0.045,-0.028,-0.013,0.000
StallDragTableNumData=37
StallDragTableDeltaX=10.00
StallDragTableStartX=-180.00
StallDragTableData=0.001,0.008,0.021,0.043,0.082,0.123,0.171,0.227,0.292,0.367,0.451,0.562,0.689,0.825,0.937,1.018,1.142,1.122,1.000,1.122,1.142,1.018,0.937,0.825,0.689,0.562,0.451,0.367,0.292,0.227,0.171,0.123,0.082,0.043,0.021,0.008,0.001
StallXacShiftTableNumData=37
StallXacShiftTableDeltaX=10.00
StallXacShiftTableStartX=-180.00
StallXacShiftTableData=-0.427,-0.427,-0.365,-0.329,-0.325,-0.312,-0.290,-0.267,-0.236,-0.214,-0.191,-0.160,-0.137,-0.115,-0.102,-0.099,-0.062,0.000,0.000,0.000,-0.062,-0.099,-0.102,-0.115,-0.137,-0.160,-0.191,-0.214,-0.236,-0.267,-0.290,-0.312,-0.325,-0.329,-0.365,-0.427,-0.427

This one spins. 

What is the difference between them?! Or should there be an assymetry between some post-stall values in left and right surface to produce a spin?

Edited by Dornil

Share this post


Link to post
Share on other sites

TK wanted the SF series to be "light", i.e. fun to fly without horrible handling characteristics. So most stock FMs produce a simple stall that just "mushes" out in a stable way. Since the flight models don't have the elements that are required to accurately model departing controlled flight, asymmetrical data at high AoAs can be used to create a decent effect. The one aircraft TK didn't dumb down the handling characteristics and perhaps made it even harder than reality was the English Electric Lightning. But I complained about it: if a hard-wing F-4 isn't going to depart at high AoA like is should, why should the Lighting? While the Lightning remains one of the more difficult aircraft to fly, TK apparently agreed with my argument and dumbed down the difficulty a bit to be more in line with the other SF2 aircraft that should otherwise be very difficult to fly in some areas of the envelope: i.e. the F-100 and F-104 should be able to kill you instantly under certain conditions, instead they have very docile flight models compared to reality.

When TK started "dumbing down" SF2 in later patches, I gave up trying to make SF2 more realistic. I fly DCS World for the flight models, SF2 for the amazing range of aircraft and historical environments available.

  • Like 4

Share this post


Link to post
Share on other sites
1 hour ago, streakeagle said:

 I gave up trying to make SF2 more realistic.

you know if you ever considered coming back, its been stable for over 8 years now :lol:

  • Haha 2

Share this post


Link to post
Share on other sites

Don't compare capun's crap to what fubar512 did for my Sabres. OUR Sabres fly like they're supposed to.

  • Like 1
  • Haha 1

Share this post


Link to post
Share on other sites
53 minutes ago, Wrench said:

Don't compare capun's crap to what fubar512 did for my Sabres. OUR Sabres fly like they're supposed to.

I trust you all the way, but still, spin makes flying much more interesting:) That's why I'm trying to understand how to add this "function". 

Share this post


Link to post
Share on other sites

As far as I'm concerned, for the F-86A I would say :

[LeftWing]
...
CheckStall=TRUE
CLmax=0.1748
AlphaStall=13.50
AlphaMax=17.00
AlphaDepart=22.00
Chord=2.41
Ymac=-1.38

[RightWing]
...
CheckStall=TRUE
CLmax=0.1748
AlphaStall=13.50
AlphaMax=17.00
AlphaDepart=22.00
Chord=2.41
Ymac=1.38

[LeftOuterWing]
...
CheckStall=TRUE
CLmax=0.2819
AlphaStall=12.50
AlphaMax=17.0
AlphaDepart=22.00
Chord=1.84
Ymac=-4.05

[RightOuterWing]
...
CheckStall=TRUE
CLmax=0.2819
AlphaStall=12.50
AlphaMax=17.0
AlphaDepart=22.00
StallMoment=0.019
Chord=1.84
Ymac=4.05

[LeftStab]
...
CheckStall=TRUE
CLmax=0.0864
AlphaStall=22.0
AlphaMax=28.0
AlphaDepart=32.0
Chord=1.11
Ymac=-0.82

[RightStab]
...
CheckStall=TRUE
CLmax=0.0864
AlphaStall=22.0
AlphaMax=28.0
AlphaDepart=32.0
Chord=1.11
Ymac=0.82

I can't tell for the F-86F, but the only thing I did was deleting the StallMoment / StallDrag / PostStallCma / StallHysteresis / StallLiftTable / StallDragTable / StallXacShiftTable entries and let the good FM do its thing (the KAW one ^^).
For the test flight I did a vertical ressource and waited until it departed. It spinned.

 

  • Thanks 1

Share this post


Link to post
Share on other sites
8 hours ago, Dornil said:

I trust you all the way, but still, spin makes flying much more interesting:) That's why I'm trying to understand how to add this "function". 

Yes you can partialy copy parts of ini from one aircraft to another from DATA to DATA files and it will change the flight model of AI. Try and watch what happens. Its interesting timespending by the way :)

  • Haha 1

Share this post


Link to post
Share on other sites
On 12/1/2021 at 1:47 PM, Dornil said:

Thank you for clarifying this for me! But I still can't understand the "spin technology"...

...

This one does not spin when stalled.

And this is from Capun's F-86F (same section):

This one spins.

...

If you note carefully, the following values are different in those two data inis:

CLmax=0.29084
AlphaStall=17.50
AlphaMax=18.73
AlphaDepart=22.23
StallMoment=-0.002
StallDrag=0.0227

Easiest way to create a more spin-prone FM is to lower those alpha stall/max/depart values. Of further significance is to pop in a stalldrag value (Capun's data ini has one, the other data ini doesn't). Another interesting bit of info.: those stallmoment values of negative 0.002 are close to no stallmoment value at all - slightly nose-down, mushy stalls when a negative no. is placed there - a nastier, nose-up stall if a positive value is there instead. We have some nicely spin-prone aircraft in FE2 courtesy of toggling and tweaking of the entries listed above.

General suggestions:

default TW stallmoment value (in FE2) = -0.02 (mushy, nose down stall)

never exceed value for harsh, nose-up stalls (have tested this, AI do not like when it goes above this number) = 0.02

recommended values for mushy, nose-down stalls = -0.005 to -0.015

recommended values for harsher, nose-up stalls (such as for WW1 aircraft, also "Widow Makers" (F-104s) and other jet-age pocket rockets) = 0.005 to 0.015

values closer to zero are of course gentler in either range of numbers (positive, nose-up, or negative, nose-down)

For more spin-prone wings, check alphastall/max/depart values, also CLmax values, for tip/middle/root sections of wings (also doesn't hurt to check such values for the left/right stab entries too).

To induce very spin-prone aircraft, avoid alpha-related values higher than about 13.00 or 14.00.

For example:

AlphaStall=11.00

AlphaMax=13.00

AlphaDepart=13.50

One more (obscure) tip: the "Chord" values that are included in some data inis, per wing tip/middle/root sections, while not central to spin characteristics, may be manipulated somewhat for a slightly different FM feel. Chord values are in meters, by the way. I see that the chord value used in those entries you've quoted in this thread is "1.11." If you want a narrower chord and more spin-related oddities, pull that value down to about 0.95 or so. Changes in chord of about +/- 0.2 (20 cm added or removed) do impact (in subtle ways) how things like lift, drag, also stall behavior, work. Recommended however is to leave chord values alone if not comfortable tampering with them, and to manipulate alphastall/max/depart values instead, by values of about 2.00 - until you get desired and/or historical, textbook-recorded stall results. It's possible to get good/realistic FMs in the TW series but it takes time.

Avoid tweaking "CLmax," by the way, unless comfortable with that - because it can improve wing lift too much, into unhistorical values/ranges - particularly for jet-age stuff.

And yes, the AI will "honor" all data ini values implemented in said files - as far as I've been able to see in FE2, there will be no cheating by the AI (except maybe when landing but that's not a major concern).

Cheers to all from your friendly neighborhood WW1 aircraft FM factory :biggrin:,

Von S

Edited by VonS
Edites post.
  • Like 6
  • Thanks 2

Share this post


Link to post
Share on other sites
3 hours ago, VonS said:

as far as I've been able to see in FE2, there will be no cheating by the AI

Come on, there is definitely cheating from the AI !
When you fly with afterburner on and the wingman follow with military power, when you cannot take-off because you're overloaded and the wingman has no problem, etc...
With the debug screen the game engine changes the weight for AI to take-off (I read somewhere in the forum lol )
Maybe less in First Eagle, but definitely in Strike Fighter :biggrin:

  • Haha 3

Share this post


Link to post
Share on other sites

Hey VonS! What do you think on a Fokker DR.1 with F-4 Phantom´s FM? Just kidding...:biggrin:

  • Haha 2

Share this post


Link to post
Share on other sites

hey, it's just copy/paste -- give it a shot!!! :lol:

  • Haha 2

Share this post


Link to post
Share on other sites

Thanks' VonS! That was comprehensive!

Strange thing happenned yesterday, btw: I took everything related to FM from KAW Sabre and put into Capun's data.ini. And it still spinned, while original KAW 86F-30 did not... Some kind of magic involved?:)

A little unrelated note: what do MinExtentPosition/MaxExtentPosition values do? Also, values from [AircraftData] section (EmptyMass, EmptyInertia, ReferenceArea, ReferenceSpan, ReferenceChord, DragArea, CGPosition) - how do they influence the flight behavior of AI or player? Is there some sort of "data.ini for dummies" somewhere?

Share this post


Link to post
Share on other sites

MinExtentPosition/MaxExtentPosition define the hit box for that component or mesh.

 

Edited by KJakker

Share this post


Link to post
Share on other sites
9 hours ago, Dornil said:

Some kind of magic involved?

No it's assymmetric 3D modeling

Edited by Cliff7600

Share this post


Link to post
Share on other sites
11 hours ago, Dornil said:

.. values from [AircraftData] section (EmptyMass, EmptyInertia, ReferenceArea, ReferenceSpan, ReferenceChord, DragArea, CGPosition) - how do they influence the flight behavior of AI or player? Is there some sort of "data.ini for dummies" somewhere? ...

Unfortunately no data.ini for dummies guide available, as far as I know :biggrin: - but you might also find this thread and the responses there helpful, regarding yaw instability corrections, rudder tweaks, etc. As well, there is a "doc" file available on CombatAce (for SF Wings over Vietnam), about 50 pages in length, and that contains lots of info. about data inis - click here for that file.

In terms of those values you've asked about, here's a snippet, with comments, from the Alb. D.II file for FE2:

[AircraftData]
EmptyMass=673.0 ---> value in kg, empty weight of aircraft
//EmptyInertia=1409.22,2044.98,2815.56
EmptyInertia=564.0,439.6,921.1 ---> these are best not tampered with, since changing these values impacts things like acceleration/deceleration in dives, inertia when looping, etc. (reducing these numbers gives a lighter, floating FM feeling with smaller numbers more suitable for wooden aircraft, and so on; very general rule of thumb is that the inertia values, in the x,y,z string/axes of values, should be of the following sizes - x larger than y by about 10-20%, y smallest, z largest, larger than x by about 30-40% or so - such proportions were tested for WW1 aircraft in FE2 - no guarantees that such ratios work well in SF2 for jet-age stuff)
ReferenceArea=24.5 ----> total area, in meters, for the aircraft, including from front to back of fuselage, and from wingtip to wingtip
ReferenceSpan=8.5 ----> reference span in meters, from wingtip to wingtip
ReferenceChord=1.75 ----> highest value for chord width of wings, in meters, should be used as reference if applying chord values to wing/stab sections and whatnot; the value may change to a slightly smaller number, depending where the chord value is used in what wing section, for left/right stabs, etc., but ideally should never exceed the value included for "ReferenceChord"
CGPosition=0.00,0.00,0.00 -----> center of gravity position for aircraft (x,y,z string/axes), best left alone unless you are having trouble with take offs with aircraft too nose-heavy, etc. (this is a helpful value to tamper with on WW1 aircraft, to get their tails up while accelerating to take off --- otherwise best left alone)

NOTE: tampering with "CGPosition" to get aircraft to take off/land more smoothly is the crude approach to that problem -- the more "professional" approach is to manipulate "CL0MachTableData" values (usually a series of four, five, or six numbers) located in the LeftStab and RightStab sections of a data.ini file --- recommended is not to touch those table data values if aircraft land/take off well --- since manipulation of those numbers alters pitch up/down capability of elevators, etc.

Cheers all,

Von S :buba:

Edited by VonS
Added info.
  • Like 1

Share this post


Link to post
Share on other sites
On 3.12.2021 at 1:36 AM, Wilches said:

Hey VonS! What do you think on a Fokker DR.1 with F-4 Phantom´s FM? Just kidding...:biggrin:

The FM in First Eagles World behaves a little bit different than in SF2 world. Its a fun to copy a F-4 from SF2 into FE2 and fly it there. Especially when flying very low in a mountain area.

  • Like 1

Share this post


Link to post
Share on other sites

I did the other way around, I brought the SPAD 13 into SF2!! (both aircraft are 94th Aero/FIS )

94thfis-spad13-f86a.JPG

  • Like 2

Share this post


Link to post
Share on other sites
On 12/3/2021 at 5:40 PM, Cliff7600 said:

No it's assymmetric 3D modeling

So, does this mean that the 3D model somehow influence the flight model?

On 12/3/2021 at 10:46 PM, VonS said:

In terms of those values you've asked about

Thanks! But what do they do exactly? I mean, does EmptyMass have to be a sum of MassFraction values of all hte components? If the [AircraftData] values contradict those in specific components sections, the what takes priority?

Share this post


Link to post
Share on other sites
On 09/12/2021 at 4:17 PM, Dornil said:

the 3D model somehow influence the flight model?

Yes when the control surface meshes are not the exact same mirrored replicas left and right.
[It tends to make the plane turn] ----> That is proved to be wrong further in the thread but I'm still thinking the same for what is written above.
Most of the time it's the pylons for weapons that are not fully symmetrical and then the aircraft cannot go straight when the pylons are used in the weapon stations entries.
It's a 3D flaw. It cannot be corrected by MinMaxExtent values (already tried...)

---

EmptyMass is the weight of the aircraft.
MassFraction values are the dispatching of this weight between the component. And the total of all MassFraction values is supposed to be equal to 1 (empty mass x 1).
The way MassFraction values are used is all components have a value except the fuselage that takes the remaining fraction.
You can give the fuselage a MassFraction value as well.
But when components don't have MassFraction value the remaining weight fraction is divided. So the calculations must be correct with all the components lol

example (F-4E) :

EmptyMass=14046.3

[Nose]
...
MassFraction=0.276

So the nose component weights 14046.3 x 0.276 = 3878,7788 kg
Is that the right value ? I don't know, but that's how it is.
If you know what is the exact value you can adjust it.
I know for sure that the nose section of a F-8E(FN) weights 4099 kg, but it's not easy to find the actual figures usually. And it needs to match the MinMaxExtent position values for "what is the nose section of the F-8E(FN)".

 

Edited by Cliff7600
One line is wrong

Share this post


Link to post
Share on other sites

@Dornil, speaking from experience in FE2 data inis only -- empty mass is empty historical weight in kg, for the aircraft. Have never bothered to check if mass fraction values in FE2 data inis add up to 1 x empty weight since most of those fraction values were left in stock form in my data ini FM tweaks. Having said that, you will notice that smaller mass fraction numbers, for components, make those components more fragile and easier to destroy. High mass fraction numbers function as bullet-proofing but I don't recommend tampering with mass fraction numbers to achieve such effects - you are better off implementing structural factor, also MaxG values, per aircraft components, if you want to induce limitations or limits (also to narrow down limits) prior to structural damage happening.

(As far as I remember, numbers and data entries plugged into different aircraft components, panels, wings, etc., take priority over more general data sections such as "[AircraftData].")

Too bad there isn't a one-size-fits-all data ini tweaking manual for the TW sims - but it is what it is. Also take note that the flight engine in FE2 models air density and a few other things (possibly) differently than SF2 does (for example, an F4U Corsair with a top speed of about 750 kph in SF2, dropped into FE2, will have a top speed of about 880 kph -- moral of story, data inis between FE2 and SF2 are not interchangeable -- and it is easier to modify FE2 data inis for SF2 than it is to back-port data inis from SF2 into FE2 -- requires more work to go backwards to FE2).

Cheers all,

Von S :smile:

Edited by VonS
Edited post.

Share this post


Link to post
Share on other sites

Thanks for the infor guys!

One question, unrelated to FM: the F-86K available here, in downloads, has its aelirons and flaps somewhat misaligned in-game. However, their positioning is just fine when viewed in LODviewer. I tried tweaking some values in data.ini, but did not succeed. Is it even possible to fix this in data, or does this require access to original 3D model?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site, you agree to our Terms of Use, Privacy Policy, and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..