Esempio n. 1
0
 protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
 {
     ProjectileSpeed = genomeWrapper.GetScaledNumber(ProjectileSpeed);
     RandomSpeed     = genomeWrapper.GetScaledNumber(ProjectileSpeed * 0.25f, RandomSpeed);
     LoadTime        = genomeWrapper.GetScaledNumber(LoadTime * 10, LoadTime, 0.1f);
     return(genomeWrapper);
 }
 protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
 {
     ShootAngle                = genomeWrapper.GetScaledNumber(180);
     TorqueMultiplier          = genomeWrapper.GetScaledNumber(TorqueMultiplier);
     LocationAimWeighting      = genomeWrapper.GetScaledNumber(16);
     TimeToTargetForDetonation = genomeWrapper.GetScaledNumber(2, 0, 0.1f);
     return(genomeWrapper);
 }
        protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
        {
            Multiplier = genomeWrapper.GetScaledNumber(Multiplier * 2, AllowNegative ? -Multiplier * 2 : 0);
            Threshold  = genomeWrapper.GetScaledNumber(Threshold * 2);
            FlatBoost  = genomeWrapper.GetScaledNumber(FlatBoost * 2, AllowNegative ? -FlatBoost * 2 : 0);

            return(genomeWrapper);
        }
Esempio n. 4
0
    protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
    {
        TranslateFireAngle             = genomeWrapper.GetScaledNumber(MaxShootAngle);
        TorqueFireAngle                = genomeWrapper.GetScaledNumber(MaxShootAngle);
        FullThrottleTranslateFireAngle = genomeWrapper.GetScaledNumber(MaxShootAngle);
        EngineForce2 = genomeWrapper.GetScaledNumber(EngineForce2);

        return(genomeWrapper);
    }
Esempio n. 5
0
 protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
 {
     RocketGenome    = genomeWrapper.Genome.Substring(genomeWrapper.GetGeneAsInt() ?? 0);
     Velocity       *= genomeWrapper.GetScaledNumber(1);
     RandomStartTime = genomeWrapper.GetScaledNumber(RandomStartTime * 2);
     MinStartTime    = genomeWrapper.GetScaledNumber(MinStartTime * 2);
     RandomSpeed     = genomeWrapper.GetScaledNumber(RandomSpeed * 2, RandomSpeed, 0.1f);
     LoadTime        = genomeWrapper.GetScaledNumber(LoadTime * 2, LoadTime, 0.1f);
     return(genomeWrapper);
 }
Esempio n. 6
0
    protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
    {
        const float MaxVelociyTollerance = 100;
        const float DefaultVelociyTolleranceProportion = 0.1f;

        ShootAngle               = genomeWrapper.GetScaledNumber(180);
        LocationAimWeighting     = genomeWrapper.GetScaledNumber(2);
        SlowdownWeighting        = genomeWrapper.GetScaledNumber(70);
        MaxRange                 = genomeWrapper.GetScaledNumber(5000, 0, 0.1f);
        MinRange                 = genomeWrapper.GetScaledNumber(1000, 0, 0.1f);
        MaxTangentialVelocity    = genomeWrapper.GetScaledNumber(MaxVelociyTollerance, 0, DefaultVelociyTolleranceProportion);
        MinTangentialVelocity    = genomeWrapper.GetScaledNumber(MaxVelociyTollerance, 0, DefaultVelociyTolleranceProportion);
        TangentialSpeedWeighting = genomeWrapper.GetScaledNumber(70);
        AngularDragForTorquers   = genomeWrapper.GetScaledNumber(2, 0, 0.2f);
        RadialSpeedThreshold     = genomeWrapper.GetScaledNumber(MaxVelociyTollerance, 0, DefaultVelociyTolleranceProportion);

        return(genomeWrapper);
    }
    protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
    {
        const float MaxShootAngle = 180;
        const float DefaultShootAngleProportion           = 0.5f;
        const float MaxLocationAimWeighting               = 2;
        const float DefaultLocationAimWeightingProportion = 0.5f;
        const float MaxSlowdownWeighting = 70;
        const float DefaultSlowdownWeightingProportion           = 0.5f;
        const float MaxTangentialVelosityWeighting               = 70;
        const float DefaultTangentialVelosityWeightingProportion = 0.5f;
        const float MaxMaxAndMinRange = 1000;
        const float DefaultMaxAndMinRangeProportion         = 0.1f;
        const float MaxVelociyTollerance                    = 100;
        const float DefaultVelociyTolleranceProportion      = 0.1f;
        const float MaxAngularDragForTorquers               = 2;
        const float DefaultAngularDragForTorquersProportion = 0.2f;

        ShootAngle =
            genomeWrapper.GetScaledNumber(MaxShootAngle, 0, DefaultShootAngleProportion);
        LocationAimWeighting =
            genomeWrapper.GetScaledNumber(MaxLocationAimWeighting, 0, DefaultLocationAimWeightingProportion);
        SlowdownWeighting =
            genomeWrapper.GetScaledNumber(MaxSlowdownWeighting, 0, DefaultSlowdownWeightingProportion);
        MaxRange =
            genomeWrapper.GetScaledNumber(MaxMaxAndMinRange, 0, DefaultMaxAndMinRangeProportion);
        MinRange =
            genomeWrapper.GetScaledNumber(MaxMaxAndMinRange, 0, DefaultMaxAndMinRangeProportion);
        MaxTangentialVelocity =
            genomeWrapper.GetScaledNumber(MaxVelociyTollerance, 0, DefaultVelociyTolleranceProportion);
        MinTangentialVelocity =
            genomeWrapper.GetScaledNumber(MaxVelociyTollerance, 0, DefaultVelociyTolleranceProportion);
        TangentialSpeedWeighting =
            genomeWrapper.GetScaledNumber(MaxTangentialVelosityWeighting, 0, DefaultTangentialVelosityWeightingProportion);
        AngularDragForTorquers =
            genomeWrapper.GetScaledNumber(MaxAngularDragForTorquers, 0, DefaultAngularDragForTorquersProportion);
        RadialSpeedThreshold =
            genomeWrapper.GetScaledNumber(MaxVelociyTollerance, 0, DefaultVelociyTolleranceProportion);

        return(genomeWrapper);
    }
Esempio n. 8
0
    protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
    {
        TurnTableMotorFoce               = genomeWrapper.GetScaledNumber(TurnTableMotorFoce);
        TurnTableMotorSpeedMultiplier    = genomeWrapper.GetScaledNumber(TurnTableMotorSpeedMultiplier * 2);
        TurnTableMotorSpeedCap           = genomeWrapper.GetScaledNumber(TurnTableMotorSpeedCap * 2);
        ElevationHubMotorFoce            = genomeWrapper.GetScaledNumber(ElevationHubMotorFoce);
        ElevationHubMotorSpeedMultiplier = genomeWrapper.GetScaledNumber(ElevationHubMotorSpeedMultiplier * 2);
        ElevationHubMotorSpeedCap        = genomeWrapper.GetScaledNumber(ElevationHubMotorSpeedCap * 2);

        return(genomeWrapper);
    }
 protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
 {
     Friction = genomeWrapper.GetScaledNumber(Friction * 2);
     return(genomeWrapper);
 }
Esempio n. 10
0
 protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
 {
     Fuel = genomeWrapper.GetScaledNumber(Fuel, 0, 0.9f);
     return(genomeWrapper);
 }
Esempio n. 11
0
 protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
 {
     MotorForce = genomeWrapper.GetScaledNumber(MotorForce * 2);
     return(genomeWrapper);
 }
Esempio n. 12
0
    //private void LogTargetChange(Target old, PotentialTarget newTarget, bool oldWasInvalid)
    //{
    //    var log = transform.name + " has started targeting ";
    //    if (newTarget != null)
    //    {
    //        log += newTarget.Transform.name + " (score=" + newTarget.Score + ") at " + newTarget.Transform.position;
    //    } else
    //    {
    //        log += "nothing";
    //    }
    //    if (oldWasInvalid)
    //    {
    //        log += " because the previous target was invalid";
    //    } else if (old != null)
    //    {
    //        log += ". Previously " + old.Transform.name + " at " + old.Transform.position;
    //        Debug.Log(log); //log only retargets.
    //        return;
    //    }
    //    //Debug.Log(log);
    //}

    protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
    {
        PollInterval = genomeWrapper.GetScaledNumber(10, 1);

        return(genomeWrapper);
    }
    protected override GenomeWrapper SubConfigure(GenomeWrapper genomeWrapper)
    {
        ShootAngle = genomeWrapper.GetScaledNumber(20, 0, 0.01f);

        return(genomeWrapper);
    }