Yep, I've tested with the 0 values in front. It seems better. It's still not the best result, but I will try to play a bit with those values. Thanks a lot!
I've been thinking more, and considering the fact that the 'random' adjustment is still using the original TurnRate to figure an amount to slightly alter every unique ship's numbers, which in theory, could make the occasional ship get a huge jump above others of its same type (because you are reducing turn rate so much), it might be better to change it first, then let it do the random part like this:
//Add 2 lines to adjust first
rRealShip.TurnRate = stf(rRealShip.TurnRate) * 0.35;
rRealShip.SpeedRate = stf(rRealShip.SpeedRate) * 0.95;
//Now let it do the normal calc
rRealShip.TurnRate = stf(rRealShip.TurnRate) + frandSmall(stf(rRealShip.TurnRate) / 5.0) - stf(rRealShip.TurnRate) / 10.0;
rRealShip.SpeedRate = stf(rRealShip.SpeedRate) + frandSmall(stf(rRealShip.SpeedRate) / 5.0) - stf(rRealShip.SpeedRate) / 10.0;
It's almost the same thing, but now the frandSmall(stf(rRealShip.TurnRate) / 5.0) - stf(rRealShip.TurnRate) / 10.0; part is also using the smaller number to do it's alteration, rather than the larger, original number.