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:
Here is the logic.
Most of BIS' values for SRAAM aren't much different than the ammo_Missile_ShortRangeAABase class values. So lets assume:
Assumption #1 - With a bit of research you can find that the 'average' range of the real world short range air-to-air missiles (SRAAM) comes to something like 16km.
Assumption #2 - In the armaverse 5000m (5Km) is equivalent to 14000m (14km). The 5000m comes from the max range BIS specified.
Now comes the maths:
(Real World MAX Range) / (Assumed Average Range) = “RangeRatio”
For example the Aim-9M max range is given as ~20km. So:
(20km) / (16km) = 1.25
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”
(5km) / (1.25) = 6.25 (Km) = 6250m
class ammo_Missile_ShortRangeAABase: MissileBase { model = "\A3\weapons_f\empty"; proxyShape = "\A3\weapons_f\empty"; hit = 130; indirectHit = 85; indirectHitRange = 10; warheadName = "HE"; proximityExplosionDistance = 20; fuseDistance = 100; maneuvrability = 42; airFriction = 0.14; sideAirFriction = 0.23; trackOversteer = 1.6; trackLead = 0.9; initTime = 0; timeToLive = 20; thrustTime = 5; thrust = 250; maxSpeed = 700; simulationStep = 0.002; airLock = 2; lockType = 0; cmimmunity = 0.92; weaponLockSystem = "2 + 16"; missileLockCone = 180; missileKeepLockedCone = 180; missileLockMaxDistance = 5000; <<< -----------------Max Lock range missileLockMinDistance = 250; <<< -----------------Min Lock range missileLockMaxSpeed = 600; class Components: Components { class SensorsManagerComponent { class Components { class IRSensorComponent: SensorTemplateIR { class AirTarget { minRange = 500; <<< -----------------Min Lock range maxRange = 5000; <<< -----------------Max Lock range objectDistanceLimitCoef = -1; viewDistanceLimitCoef = 1; }; class GroundTarget { minRange = 500; maxRange = 4000; objectDistanceLimitCoef = 1; viewDistanceLimitCoef = 1; }; angleRangeHorizontal = 180; angleRangeVertical = 180; maxTrackableSpeed = 600; minTrackableATL = 3; }; }; }; }; cost = 1000; whistleDist = 20; aiAmmoUsageFlags = 256; missileFireAnim = "rocket_fire_hide"; CraterEffects = "AAMissileCrater"; explosionEffects = "AAMissileExplosion"; effectsMissile = "FX_Missile_AA"; muzzleEffect = "B01_fnc_effectFiredJetMissile"; };