From 816d9696b55161d29a3129622a6bddc7bb5377ec Mon Sep 17 00:00:00 2001 From: Walter Date: Mon, 26 Oct 2020 13:59:55 -0500 Subject: [PATCH 1/4] Move Engage targets to ingress point for CAS --- gen/aircraft.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/gen/aircraft.py b/gen/aircraft.py index e51964fa..6b8a2c01 100644 --- a/gen/aircraft.py +++ b/gen/aircraft.py @@ -935,10 +935,6 @@ class AircraftConflictGenerator: roe=OptROE.Values.OpenFireWeaponFree, rtb_winchester=OptRTBOnOutOfAmmo.Values.Unguided, restrict_jettison=True) - group.points[0].tasks.append( - EngageTargets(max_distance=nm_to_meter(10), - targets=[Targets.All.GroundUnits.GroundVehicles]) - ) def configure_sead(self, group: FlyingGroup, package: Package, flight: Flight, @@ -1114,7 +1110,7 @@ class PydcsWaypointBuilder: mission: Mission) -> PydcsWaypointBuilder: builders = { FlightWaypointType.EGRESS: EgressPointBuilder, - FlightWaypointType.INGRESS_CAS: IngressBuilder, + FlightWaypointType.INGRESS_CAS: CasIngressBuilder, FlightWaypointType.INGRESS_ESCORT: IngressBuilder, FlightWaypointType.INGRESS_SEAD: SeadIngressBuilder, FlightWaypointType.INGRESS_STRIKE: StrikeIngressBuilder, @@ -1162,6 +1158,14 @@ class IngressBuilder(PydcsWaypointBuilder): self.set_waypoint_tot(waypoint, self.timing.ingress) return waypoint +class CasIngressBuilder(PydcsWaypointBuilder): + def build(self) -> MovingPoint: + waypoint = super().build() + self.set_waypoint_tot(waypoint, self.timing.ingress) + waypoint.add_task(EngageTargets(max_distance=nm_to_meter(10), + targets=[Targets.All.GroundUnits.GroundVehicles]) + ) + return waypoint class SeadIngressBuilder(IngressBuilder): def build(self) -> MovingPoint: From fdaf3bc30fcb2615b1626c9888d10b52cc4b6eaf Mon Sep 17 00:00:00 2001 From: Walter Date: Mon, 26 Oct 2020 15:07:03 -0500 Subject: [PATCH 2/4] CAS Weapons Hold until Ingress --- gen/aircraft.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gen/aircraft.py b/gen/aircraft.py index 6b8a2c01..90e18c73 100644 --- a/gen/aircraft.py +++ b/gen/aircraft.py @@ -932,7 +932,7 @@ class AircraftConflictGenerator: self.configure_behavior( group, react_on_threat=OptReactOnThreat.Values.EvadeFire, - roe=OptROE.Values.OpenFireWeaponFree, + roe=OptROE.Values.WeaponHold, rtb_winchester=OptRTBOnOutOfAmmo.Values.Unguided, restrict_jettison=True) @@ -1165,6 +1165,7 @@ class CasIngressBuilder(PydcsWaypointBuilder): waypoint.add_task(EngageTargets(max_distance=nm_to_meter(10), targets=[Targets.All.GroundUnits.GroundVehicles]) ) + waypoint.add_task(OptROE(OptROE.Values.OpenFireWeaponFree)) return waypoint class SeadIngressBuilder(IngressBuilder): From 63d510f2ea7aec26254488aa846fa85e1ca8d19b Mon Sep 17 00:00:00 2001 From: Walter Date: Mon, 26 Oct 2020 15:48:22 -0500 Subject: [PATCH 3/4] Add Air Defenses to engage task --- gen/aircraft.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gen/aircraft.py b/gen/aircraft.py index 90e18c73..4d227ad2 100644 --- a/gen/aircraft.py +++ b/gen/aircraft.py @@ -1163,7 +1163,10 @@ class CasIngressBuilder(PydcsWaypointBuilder): waypoint = super().build() self.set_waypoint_tot(waypoint, self.timing.ingress) waypoint.add_task(EngageTargets(max_distance=nm_to_meter(10), - targets=[Targets.All.GroundUnits.GroundVehicles]) + targets=[ + Targets.All.GroundUnits.GroundVehicles, + Targets.All.GroundUnits.AirDefence, + ]) ) waypoint.add_task(OptROE(OptROE.Values.OpenFireWeaponFree)) return waypoint From 8583bbf893a5e21d0b39dcbcda51c31a431b140e Mon Sep 17 00:00:00 2001 From: Walter Date: Mon, 26 Oct 2020 17:19:52 -0500 Subject: [PATCH 4/4] Changed task to add AAA and infantry properly --- gen/aircraft.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gen/aircraft.py b/gen/aircraft.py index 4d227ad2..59774fcf 100644 --- a/gen/aircraft.py +++ b/gen/aircraft.py @@ -1165,7 +1165,8 @@ class CasIngressBuilder(PydcsWaypointBuilder): waypoint.add_task(EngageTargets(max_distance=nm_to_meter(10), targets=[ Targets.All.GroundUnits.GroundVehicles, - Targets.All.GroundUnits.AirDefence, + Targets.All.GroundUnits.AirDefence.AAA, + Targets.All.GroundUnits.Infantry, ]) ) waypoint.add_task(OptROE(OptROE.Values.OpenFireWeaponFree))