Fighter Sweep Operations

Description

Offensive mission to seek out and destroy enemy aircraft in a designated area before friendly strike packages arrive.

Lua Implementation

-- Task: Fighter Sweep Operations
-- Operation: Air Superiority (AIR DOMAIN)
-- Refactored to use TaskRunner

local TaskRunner = require("TaskRunner")

local config = {
    subtasks = {"PlanSweepRoute", "CoordinateWithAWACS", "ExecuteSweep", "ReportContacts"},
    timeoutSeconds = 300,
    flags = {
        activateSensors = false,
        captureTargetLocation = false,
        enableParallelSensing = false,
        requireAmmoForEngagement = true,
        requireEngagementAuth = true,
        enableAttackFallback = true,
        sendStartReport = false,
        sendFallbackReport = false,
        requestSupport = true,
        sendCompletionReport = false,
        fallbackWaitSeconds = 30
    }
}

return TaskRunner.create(config)
8 actions (clickable in blue) 15 predicates (clickable in green)

Behavior Tree

Open full view
  • sequence TaskRoot
    • sequence PreChecks
      • conditional IsOperational cond: IsOperational
      • conditional HasFuel cond: HasFuel
      • conditional HasAmmo cond: HasAmmo
    • sequence Execution
      • selector EngageOrFallback
        • sequence EngagementSequence
          • conditional CanEngage cond: CanEngage
          • task EngageTarget action: EngageTarget
        • sequence FallbackSequence
          • send RequestSupport
          • task HoldPosition action: Wait
      • sequence SubtaskSequence
        • task PlanSweepRoute Subtask #1
        • task CoordinateWithAWACS Subtask #2
        • task ExecuteSweep Subtask #3
        • task ReportContacts Subtask #4

Sub-task Records

  • PlanSweepRoute - Define ingress/egress routes avoiding known threats
  • CoordinateWithAWACS - Establish datalink and comms with airborne control
  • ExecuteSweep - Fly designated route engaging targets of opportunity
  • ReportContacts - Relay enemy positions to following forces

Parameters

No parameters defined yet.

Outputs

No outputs defined yet.

Manage Primitives