BMS Hornet and Mirage Drivers vs Vipers & BFM/ACM
-
Here’s a couple clips, obviously not the ideal handling of the airframes by the AI, but interesting nonetheless. We can see here that sustained turning benefits the Viper like many have said. The AI could have taken advantage of being able to perform high alpha maneuvers/snap turns that would have shown some of the different performance capabilities in the right envelopes, but it was more interested in competing with radius here.
-
So is the dissimilarities between aircraft just a result of AI programming? Will the dissimilarities disappear when it’s human vs. human in dissimilar aircraft?
I thought the aircraft “flys the same” anyway as everything’s just stemming from the F-16’s FM in the first place?
-
So is the dissimilarities between aircraft just a result of AI programming?
Yes, but it’s not that simple, will explain below.
Will the dissimilarities disappear when it’s human vs. human in dissimilar aircraft?
Yes, but that depends on the pilots and their ability to use the aircrafts FM to their advantage.
I thought the aircraft “flys the same” anyway as everything’s just stemming from the F-16’s FM in the first place?
It has nothing to do with the FM’s.
Each aircraft is in one of 9 Combat Classes:
enum ACMnverClass {
MnvrClassF4, // Combat Class 0 in ACD DATA File
MnvrClassF5, // Combat Class 1 in ACD DATA File
MnvrClassBomber, // Combat Class 2 in ACD DATA File
MnvrClassF15, // Combat Class 3 in ACD DATA File
MnvrClassF16, // Combat Class 4 in ACD DATA File
MnvrClassMig25, // Combat Class 5 in ACD DATA File
MnvrClassMig27, // Combat Class 6 in ACD DATA File
MnvrClassIgnored, // Combat Class 7 in ACD DATA File. Ignored by AI
MnvrClassUnused, // Combat Class 8 in ACD DATA File. Ignored by AI
NumMnvrClasses // Means there are 9 combat classes
Above are the classes, contained in the mnvrdata.dat file.
In the mnvrdat file each aircraft combat class is pitted against each other class to determine how they will react to each other combat class of aircraft.
The BVRInterceptType, WVRMergeManeuverType, and SpikeReactionType are also defined as follows.
enum BVRInterceptType {
BvrSingleSideOffset, // 1 in this file
BvrPince, // 2 in this file
BvrPursuit, // 3 in this file
BvrNoIntercept, // 4 in this file
NumInterceptTypes
};
enum WVRMergeManeuverType {
WvrMergeHitAndRun, // 1 in this file
WvrMergeLimited, // 2 in this file
WvrMergeUnlimited, // 3 in this file
NumWVRMergeMnverTypes
};
enum SpikeReactionType {
SpikeReactNone, // 1 in this file
SpikeReactECM, // 2 in this file
SpikeReactBeam, // 3 in this file
SpikeReactDrag, // 4 in this file
NumSpikeReactionTypes
Different aircraft Combat Classes depending on opponent aircraft Combat Class have different maneuver and reaction variables. Some have more options/variables than other classes as seen below:
# F4 v F4 # Num intercepts 3 # Num Merges 2 # Num Spike React 3 # Intercept Types 1 2 3 # Merges 2 3 # Spike Reacts 2 3 4 # # F4 v F5 # Num intercepts 3 # Num Merges 2 # Num Spike React 2 # Intercept Types 1 2 3 # Merges 1 2 # Spike Reacts 1 2 # # F4 v Bomber # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 2 # # F4 v F15 # Num intercepts 2 # Num Merges 2 # Num Spike React 3 # Intercept Types 1 2 # Merges 1 2 # Spike Reacts 2 3 4 # # F4 v F16 # Num intercepts 2 # Num Merges 2 # Num Spike React 2 # Intercept Types 1 2 # Merges 1 2 # Spike Reacts 2 3 # # F4 v Mig25 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 3 # Spike Reacts 2 3 # # F4 v Mig27 # Num intercepts 2 # Num Merges 1 # Num Spike React 2 # Intercept Types 1 2 # Merges 2 # Spike Reacts 1 2 # # F4 v A10 # Num intercepts 1 # Num Merges 2 # Num Spike React 1 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 # # F4 v Bomber # Num intercepts 1 # Num Merges 2 # Num Spike React 1 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 # # F5 Manuever Class Flags 0x737 # # F5 v F4 # Num intercepts 2 # Num Merges 1 # Num Spike React 3 # Intercept Types 1 2 # Merges 3 # Spike Reacts 2 3 4 # # F5 v F5 # Num intercepts 2 # Num Merges 2 # Num Spike React 3 # Intercept Types 1 2 # Merges 2 3 # Spike Reacts 1 2 3 # # F5 v Bomber # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 2 # # F5 v F15 # Num intercepts 2 # Num Merges 2 # Num Spike React 3 # Intercept Types 1 2 # Merges 1 2 # Spike Reacts 2 3 4 # # F5 v F16 # Num intercepts 2 # Num Merges 2 # Num Spike React 2 # Intercept Types 1 2 # Merges 1 2 # Spike Reacts 2 3 # # F5 v Mig25 # Num intercepts 1 # Num Merges 1 # Num Spike React 3 # Intercept Types 3 # Merges 3 # Spike Reacts 2 3 4 # # F5 v Mig27 # Num intercepts 2 # Num Merges 1 # Num Spike React 2 # Intercept Types 1 2 # Merges 3 # Spike Reacts 1 2 # # F5 v Ignored # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 2 # Merges 1 2 # Spike Reacts 1 2 # # F5 v Unused # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 2 # # Bomber Manuever Class Flags 0x523 # # Bomber v F4 # Num intercepts 0 # Num Merges 0 # Num Spike React 3 # Spike Reacts 2 3 4 # # Bomber v F5 # Num intercepts 0 # Num Merges 0 # Num Spike React 3 # Spike Reacts 1 2 3 # # Bomber v Bomber # Num intercepts 0 # Num Merges 0 # Num Spike React 1 # Spike Reacts 1 # # Bomber v F15 # Num intercepts 0 # Num Merges 0 # Num Spike React 3 # Spike Reacts 2 3 4 # # Bomber v F16 # Num intercepts 0 # Num Merges 0 # Num Spike React 3 # Spike Reacts 2 3 4 # # Bomber v Mig25 # Num intercepts 0 # Num Merges 0 # Num Spike React 3 # Spike Reacts 2 3 4 # # Bomber v Mig27 # Num intercepts 0 # Num Merges 0 # Num Spike React 2 # Spike Reacts 1 2 # # Bomber v Ignored # Num intercepts 0 # Num Merges 0 # Num Spike React 2 # Spike Reacts 1 2 # # Bomber v Unused # Num intercepts 0 # Num Merges 0 # Num Spike React 2 # Spike Reacts 1 2 # # F15 Manuever Class Flags 0x727 # # F15 v F4 # Num intercepts 2 # Num Merges 1 # Num Spike React 1 # Intercept Types 2 3 # Merges 3 # Spike Reacts 2 # # F15 v F5 # Num intercepts 2 # Num Merges 1 # Num Spike React 1 # Intercept Types 2 3 # Merges 3 # Spike Reacts 2 # # F15 v Bomber # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 2 3 # Spike Reacts 1 2 # # F15 v F15 # Num intercepts 2 # Num Merges 2 # Num Spike React 2 # Intercept Types 2 3 # Merges 2 3 # Spike Reacts 2 3 # # F15 v F16 # Num intercepts 2 # Num Merges 2 # Num Spike React 2 # Intercept Types 2 3 # Merges 2 3 # Spike Reacts 2 3 # # F15 v Mig25 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 3 # Spike Reacts 2 3 # # F15 v Mig27 # Num intercepts 2 # Num Merges 1 # Num Spike React 1 # Intercept Types 2 3 # Merges 3 # Spike Reacts 2 # # F15 v Ignored # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 2 # # F15 v Unused # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 2 # # F16 Manuever Class Flags 0x737 # # F16 v F4 # Num intercepts 2 # Num Merges 1 # Num Spike React 2 # Intercept Types 1 2 # Merges 3 # Spike Reacts 2 3 # # F16 v F5 # Num intercepts 2 # Num Merges 1 # Num Spike React 1 # Intercept Types 2 3 # Merges 3 # Spike Reacts 2 # # F16 v Bomber # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 2 3 # Spike Reacts 1 2 # # F16 v F15 # Num intercepts 2 # Num Merges 2 # Num Spike React 3 # Intercept Types 1 2 # Merges 2 3 # Spike Reacts 2 3 4 # # F16 v F16 # Num intercepts 2 # Num Merges 2 # Num Spike React 2 # Intercept Types 1 2 # Merges 2 3 # Spike Reacts 2 3 # # F16 v Mig25 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 3 # Spike Reacts 2 3 # # F16 v Mig27 # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 2 # # F16 v Unused # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 2 # # F16 v Ignored # Num intercepts 1 # Num Merges 2 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 # Spike Reacts 1 2 # # Mig 25 Manuever Class Flags 0x627 # # Mig 25 v F4 # Num intercepts 2 # Num Merges 1 # Num Spike React 2 # Intercept Types 2 3 # Merges 1 # Spike Reacts 1 2 # # Mig 25 v F5 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 25 v Bomber # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 25 v F15 # Num intercepts 2 # Num Merges 1 # Num Spike React 2 # Intercept Types 2 3 # Merges 1 # Spike Reacts 1 2 # # Mig 25 v F16 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 25 v Mig25 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 25 v Mig27 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 25 v Unused # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 25 v Ignored # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 27 Manuever Class Flags 0x737 # # Mig 27 v F4 # Num intercepts 0 # Num Merges 1 # Num Spike React 3 # Merges 1 # Spike Reacts 2 3 4 # # Mig 27 v F5 # Num intercepts 0 # Num Merges 1 # Num Spike React 2 # Merges 1 # Spike Reacts 2 3 # # Mig 27 v Bomber # Num intercepts 0 # Num Merges 0 # Num Spike React 2 # Spike Reacts 1 2 # # Mig 27 v F15 # Num intercepts 0 # Num Merges 1 # Num Spike React 3 # Merges 1 # Spike Reacts 2 3 4 # # Mig 27 v F16 # Num intercepts 0 # Num Merges 1 # Num Spike React 3 # Merges 1 # Spike Reacts 2 3 4 # # Mig 27 v Mig25 # Num intercepts 0 # Num Merges 1 # Num Spike React 3 # Merges 1 # Spike Reacts 2 3 4 # # Mig 27 v Mig27 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 27 v Unused # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Mig 27 v Ignored # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 1 2 # # Unused Manuever Class Flags 0x337 # # Unused v F4 # Num intercepts 1 # Num Merges 1 # Num Spike React 1 # Intercept Types 3 # Merges 1 # Spike Reacts 4 # # Unused v F5 # Num intercepts 1 # Num Merges 1 # Num Spike React 1 # Intercept Types 3 # Merges 1 # Spike Reacts 4 # # Unused v Bomber # Num intercepts 1 # Num Merges 1 # Num Spike React 1 # Intercept Types 3 # Merges 1 # Spike Reacts 4 # # Unused v F15 # Num intercepts 1 # Num Merges 1 # Num Spike React 1 # Intercept Types 3 # Merges 1 # Spike Reacts 4 # # Unused v F16 # Num intercepts 1 # Num Merges 1 # Num Spike React 1 # Intercept Types 3 # Merges 1 # Spike Reacts 4 # # Unused v Mig25 # Num intercepts 1 # Num Merges 1 # Num Spike React 1 # Intercept Types 3 # Merges 1 # Spike Reacts 4 # # Unused v Mig27 # Num intercepts 1 # Num Merges 1 # Num Spike React 2 # Intercept Types 3 # Merges 1 # Spike Reacts 3 4 # # Unused v Unused # Num intercepts 1 # Num Merges 3 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 3 # Spike Reacts 1 2 # # Unused v Ignored # Num intercepts 1 # Num Merges 3 # Num Spike React 2 # Intercept Types 3 # Merges 1 2 3 # Spike Reacts 1 2 # # Ignored Manuever Class Flags 0x323 # # Ignored v F4 # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4 # # Ignored v F5 # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4 # # Ignored v Bomber # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4 # # Ignored v F15 # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4 # # Ignored v F16 # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4 # # Ignored v Mig25 # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4 # # Ignored v Mig27 # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4 # # Ignored v Unused # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4 # # Ignored v Ignored # Num intercepts 0 # Num Merges 0 # Num Spike React 4 # Spike Reacts 1 2 3 4
The file is in your \Falcon BMS 4.33 U1\Data\Sim\Acdata\BRAIN folder.
The Combat class of each aircraft is defined in it’s individual DB record.
C9
-
While I totally appreciate the explanation, Cloud 9, I must admit it’s somewhat fuzzy in my brain.
@Cloud:
Yes, but that depends on the pilots and their ability to use the aircrafts FM to their advantage.
You cited 9 Combat classes… but where does the Hornet belong? Or the Mirage 2000?
Basically, what I’m trying to say is “does the Hornet/Mirage have significantly different FM compared to the F16?” -
While I totally appreciate the explanation, Cloud 9, I must admit it’s somewhat fuzzy in my brain.
You cited 9 Combat classes… but where does the Hornet belong? Or the Mirage 2000?
Basically, what I’m trying to say is “does the Hornet/Mirage have significantly different FM compared to the F16?”The hornet does yes
Sent from my SM-G920W8 using Tapatalk
-
I thought the aircraft “flys the same” anyway as everything’s just stemming from the F-16’s FM in the first place?
No
Each aircraft (well most of them) have a correct tailored FM to match RL performance data and em charts.However, the FLCS rules are F-16 derivative. Which means that the mig-17 for example will not pull more then 9Gs. Where in RL at high speed, you will get a warning light in the pit at 12Gs… and leading edge flaps will work like the F-16 will use them rather then whatever aircraft you are flying against. And some more flcs stuff will show up here and there. But then that, they will each have their turn rates, sustained and momentary, their own acceleration and different behaviours in different conditions.
-
While I totally appreciate the explanation, Cloud 9, I must admit it’s somewhat fuzzy in my brain.
It takes some studying for it to become clear. There really is a method to the madness though.
You cited 9 Combat classes… but where does the Hornet belong? Or the Mirage 2000?
They are both Combat Class 4. Same as the F16. LOL
Basically, what I’m trying to say is “does the Hornet/Mirage have significantly different FM compared to the F16?”
There are differences, I wouldn’t say significant overall(Except as Drillin mentioned, the Hornet). But just one aspect of the FM, keeping it simple, lets just say thrust to weight ratio, could be significant.
And also as uri_ba noted.
It would take both studying them not only in their physical FM’s but of course flying them.
C9
-
Thanks for the explanation guys! uri_ba, thanks for giving a specific example as well! Can you make a similar one for the Hornet, citing specific circumstances?
-
@Cloud:
It takes some studying for it to become clear. There really is a method to the madness though.
They are both Combat Class 4. Same as the F16. LOL
There are differences, I wouldn’t say significant overall(Except as Drillin mentioned, the Hornet). But just one aspect of the FM, keeping it simple, lets just say thrust to weight ratio, could be significant.
And also as uri_ba noted.
It would take both studying them not only in their physical FM’s but of course flying them.
C9
Those data metrics only apply to “mock” combat as applied from the 2D though correct? I think what he may have been asking is how does the AI decision tree work/impact effectiveness of the disparate aircraft when they are not aggregated? Maybe I misread his intent though. In those cases I would surmise the AI is limited by the values in the FM only and performs the same AI decision tree as if it were fighting a human player.
-
I think what he may have been asking is how does the AI decision tree work/impact effectiveness of the disparate aircraft when they are not aggregated? Maybe I misread his intent though.
Thanks MorteSil, but my question was more regarding FM and under identical piloting skill levels (ie, AI vs AI or Human vs Human).
-
Thanks MorteSil, but my question was more regarding FM and under identical piloting skill levels (ie, AI vs AI or Human vs Human).
I was referring more to KVs post earlier where he said he was going to pit some AI vs AI and record them to see how they perform differently. But the same still applies to your question, those data points should have no impact on the aircraft at all when you’re in control of it, nor when an AI is in control of it–assuming the AI aircraft is not aggregated. The 2D combat (Read: Outside all bubbles) is all statistically computed and never actually performed in the turn-by-turn 3D sense, so those data points would make sense to combine with other initial data factors such as altitude, heading, speed, avionics available etc… to feed into an algorithm and get a result.
-
From what I’ve gathered is the AI performs similar types of maneuver choices based on player performance, but it has different performance capabilities based on the aircraft it is operating.
The AI taking advantage of dissimilar advantages it may have in different envelopes wouldn’t come by a coded input, but as a consequence of the players performance.
-
@Cloud:
There are differences, I wouldn’t say significant overall(Except as Drillin mentioned, the Hornet). But just one aspect of the FM, keeping it simple, lets just say thrust to weight ratio, could be significant.
The Mirage 2000 FM, like the Hornet FM, is really different. All values (thrust, weight, turn rate, acceleration, etc.) benefit from the huge work done by Topolo and reflect the behaviour of the real plane.
What you don’t have though is Mirage 2000 FLCS laws. It still uses the F-16 ones, though the real Mirage 2000 FLCS is in many ways very comparable to its F-16 counterpart. -
The Mirage 2000 FM, like the Hornet FM, is really different. All values (thrust, weight, turn rate, acceleration, etc.) benefit from the huge work done by Topolo and reflect the behaviour of the real plane.
What you don’t have though is Mirage 2000 FLCS laws. It still uses the F-16 ones, though the real Mirage 2000 FLCS is in many ways very comparable to its F-16 counterpart.Yes, I should have mentioned that aircraft too. Topolo did some great work on it. Just like the stuff he did for FreeFalcon.
C9
-
Are there any EM diagrams that represent the work done to the Mirage 2000C and the F-18C?
-
Yep, for the Mirage 2000. In your Falcon BMS folder : Docs/Other documentation/Flight Models
-
Thanks man!