Mmmkay. So if it is NOT virtualized I can make a script with this:
private _pylons =["PylonRack_Missile_JS_F18_AIM9X_x1","PylonRack_Missile_JS_F18_AIM9X_x1","PylonRack_Missile_AMRAAM_D_x1","PylonRack_Missile_AMRAAM_D_x1","PylonRack_2Rnd_BombCluster_01_F","PylonRack_2Rnd_BombCluster_01_F","PylonRack_Bomb_JS_FA18_GBU12_x1","PylonRack_Bomb_JS_FA18_GBU12_x1","PylonRack_Missile_AMRAAM_D_x1","PylonRack_Missile_AMRAAM_D_x1","js_m_fa18_wing_tank_x1"];
private _pylonPaths = (configProperties [configFile >> "CfgVehicles" >> typeOf JS_JC_FA18E >> "Components" >> "TransportPylonsComponent" >> "Pylons", "isClass _x"]) apply {getArray (_x >> "turret")};
{ t removeWeaponGlobal getText (configFile >> "CfgMagazines" >> _x >> "pylonWeapon") } forEach getPylonMagazines JS_JC_FA18E;
{ JS_JC_FA18E setPylonLoadOut [_forEachIndex + 1, _x, true, _pylonPaths select _forEachIndex] } forEach _pylons;
Running this will make an editor placed plane named JS_JC_FA18E take the given loadout. But not for the class on spawn from virtualized AI system.