This is an old revision of the document!
All the values and ranges I'm using are all calculated relative to the BIS Short Range missile class:
Just like the SRAAMs most of BIS' values for MRAAM aren't much different than the ammo_Missile_MediumRangeAABase class values. This time we dont have to assume as much.
BIS actually has an AIM-120C and D. But we will use the AIM-120C as our datum.
Assumption #1 - the real world The AIM-120B range is 75km, AIM-120C range is 90km and the AIM-120D range is 130km.
Assumption #2 - The Armaverse AIM-120C(class ammo_Missile_AMRAAM_C) has a 12000m (12Km) max range.
Now comes the maths here is an example
(Range of your other weapon) / (AIM-120C Real World MAX Range) = "RangeRatio"
So:
AIM-120B (75km) / (90km) = "0.8333" AIM-120C (90km) / (90km) = "1" AIM-120D (130km) / (90km) = "1.44"
Now we have the “RangeRatio” we can multiply that by BIS's 5km max range value to give us the 'Adjusted/scaled range' for our new missile.
(BIS MaxRange) * (RangeRatio) = "NewScaledRange" AIM-120B = (12km) / (0.83) = "10 (Km)" = "10000m" AIM-120C = (12km) / (1.00) = "12 (Km)" = "12000m" AIM-120D = (12km) / (1.44) = "12 (Km)" = "17333m"
Ammo class from \A3\weapons_f_jets\config.cpp ~Line 144
class ammo_Missile_MediumRangeAABase: MissileBase { model = "\A3\weapons_f\empty"; proxyShape = "\A3\weapons_f\empty"; hit = 200; indirectHit = 125; indirectHitRange = 13; warheadName = "HE"; proximityExplosionDistance = 30; fuseDistance = 750; maneuvrability = 23; airFriction = 0.07; sideAirFriction = 0.18; trackOversteer = 1.1; trackLead = 1.06; initTime = 0.6; timeToLive = 35; thrustTime = 7; thrust = 210; maxSpeed = 900; simulationStep = 0.002; activeSensorAlwaysOn = 0; airLock = 2; lockType = 0; cmimmunity = 0.95; weaponLockSystem = "8 + 16"; missileLockCone = 70; missileKeepLockedCone = 90; missileLockMaxDistance = 12000; missileLockMinDistance = 800; missileLockMaxSpeed = 777.778; autoSeekTarget = 1; flightProfiles[] = {"LoalDistance"}; class LoalDistance { lockSeekDistanceFromParent = 2000; }; class Components: Components { class SensorsManagerComponent { class Components { class ActiveRadarSensorComponent: SensorTemplateActiveRadar { class AirTarget { minRange = 12000; maxRange = 12000; objectDistanceLimitCoef = -1; viewDistanceLimitCoef = -1; }; class GroundTarget { minRange = 8000; maxRange = 8000; objectDistanceLimitCoef = -1; viewDistanceLimitCoef = -1; }; angleRangeHorizontal = 50; angleRangeVertical = 50; groundNoiseDistanceCoef = 0.2; minSpeedThreshold = 30; maxSpeedThreshold = 40; maxTrackableSpeed = 777.778; minTrackableATL = 10; }; class DataLinkSensorComponent: ActiveRadarSensorComponent { componentType = "DataLinkSensorComponent"; }; }; }; }; cost = 1500; aiAmmoUsageFlags = 256; missileFireAnim = "rocket_fire_hide"; CraterEffects = "AAMissileCrater"; explosionEffects = "AAMissileExplosion"; effectsMissile = "FX_Missile_AA"; muzzleEffect = ""; }; class ammo_Missile_AMRAAM_C: ammo_Missile_MediumRangeAABase { model = "\A3\Weapons_F_Jets\Ammo\Missile_AA_10_fly_F"; proxyShape = "\A3\Weapons_F_Jets\Ammo\Missile_AA_10_F"; };