(Must be more fun to do than just hunting down bugs [:)])
The FTR CV looks good, well balanced. A few comments:
Is the cost of the FTR taken into consideration? The FTR3 will likely end up with a higher CV than FTR2, but also be more expensive (this has no impact on combat value, of course, but is important on build).--------------------------------
utFighter: // FTR2 or FTR3.
It is of course a matter of how complex this calculation can be made, but a few things to consider could perhaps be:begin
AU := TAirUnit(U);
Result := (AU.AirAir * 2) +
AU.Tactical +
(AU.Strategic * 0.5) +
(AU.AirSea * 0.5) +
AU.Range;
// ****************************************************************************
// Range bonus for flying a naval air mission.
// ****************************************************************************
if AU.Range > 10 then Result := Result + 3
else if AU.Range > 6 then Result := Result + 2
else if AU.Range > 3 then Result := Result + 1;
- the range/naval air worth varies substantially by power, i.e. for the naval powers it is significantly more important than for e.g. the USSR.
- and also, it varies by overall strategy of the power, e.g. if Germany aims for Sea Lion it is important to protect the transports and naval air range means a lot, but if it is all eastern front, then intercept range is of course important (but taken care of below), while naval range is not.
- I am not sure how great an effect it has (if any), but just in case [:)] : the CV increase here are absolute (+1/+2/+3 - although based on range) while the increases above depends directly on the AA-value etc. of the FTR, which tends to increase during the game. I.e. a starting FTR might have an AA value of 4 (or even 3), resulting in a CV bonus of +8, while a late war FTR might have a value of 8, resulting in +16, meaning the naval bonus will have a smaller relative impact.
Tank buster CV bonus might be a bit low (I find them very valuable cracking the German ARM lines of Europe in the late war) - but again, it depends on the strategic situation and frequency of enemy ARMs, and is probably difficult to take into account.// ****************************************************************************
// Range bonus for flying an interception mission.
// ****************************************************************************
InterceptRange := (AU.Range + 1) div 2; // Fractional part truncated by div.
Result := Result + InterceptRange;
// ****************************************************************************
// Range bonus for flying a naval air support mission.
// ****************************************************************************
NavalAirSupportRange := InterceptRange;
if NavalAirSupportRange > 10 then Result := Result + 3
else if NavalAirSupportRange > 6 then Result := Result + 2
else if NavalAirSupportRange > 3 then Result := Result + 1;
// ****************************************************************************
// Additional effects when using optional rules.
// ****************************************************************************
if OptRules.TwinEnginedFighters and AU.TwinEngine then
Result := Result - 1;
if OptRules.NightMissions and AU.Night then
Result := Result + 0.5;
if OptRules.TankBusters and AU.TankBuster then
Result := Result + (AU.Tactical * 0.5); // Half again.
end;
-----------------------------------------------