private Vector3 GetTargetPositionByDamageRatio(MySmallShipBot bot)
        {
            Vector3 targetPos = m_target.GetPosition();

            if (MySession.PlayerShip != null && MyFactions.GetFactionsRelation(bot, MySession.PlayerShip) == MyFactionRelationEnum.Enemy)
            {
                Vector3 botPos         = bot.GetPosition();
                Vector3 botToTarget    = targetPos - botPos;
                Vector3 dir            = Vector3.Normalize(botToTarget);
                float   degrees        = (float)Math.Pow(120, bot.GetDamageRatio() * 1.5 - 1.2) * 4f;
                float   deviatingAngle = MathHelper.ToRadians(degrees);
                dir       = MyUtilRandomVector3ByDeviatingVector.GetRandom(dir, deviatingAngle);
                targetPos = botPos + botToTarget.Length() * dir * 3;
            }
            return(targetPos);
        }
 private Vector3 GetTargetPositionByDamageRatio(MySmallShipBot bot)         
 {
     Vector3 targetPos = m_target.GetPosition();
     if (MySession.PlayerShip != null && MyFactions.GetFactionsRelation(bot, MySession.PlayerShip) == MyFactionRelationEnum.Enemy)
     {
         Vector3 botPos = bot.GetPosition();
         Vector3 botToTarget = targetPos - botPos;
         Vector3 dir = Vector3.Normalize(botToTarget);                
         float degrees = (float)Math.Pow(120, bot.GetDamageRatio() * 1.5 - 1.2) * 4f;
         float deviatingAngle = MathHelper.ToRadians(degrees);
         dir = MyUtilRandomVector3ByDeviatingVector.GetRandom(dir, deviatingAngle);
         targetPos = botPos + botToTarget.Length() * dir * 3;                
     }
     return targetPos;
 }