ASW Barrier Patrol

Description

Establish barrier to detect transiting submarines

Lua Implementation

-- Task: ASW Barrier Patrol
-- Operation: Anti-Submarine Warfare (ASW) (SURFACE DOMAIN)
-- Refactored to use TaskRunner

local TaskRunner = require("TaskRunner")

local config = {
    subtasks = {"EstablishPatrolLine", "MaintainSonarWatch", "DetectTransitingSubmarines", "ReportContacts", "ProsecuteIfAuthorized"},
    timeoutSeconds = 300,
    flags = {
        activateSensors = true,
        captureTargetLocation = false,
        enableParallelSensing = true,
        requireAmmoForEngagement = false,
        requireEngagementAuth = false,
        enableAttackFallback = false,
        sendStartReport = true,
        sendFallbackReport = true,
        requestSupport = true,
        sendCompletionReport = true,
        fallbackWaitSeconds = 30
    }
}

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

Behavior Tree

Open full view
  • sequence TaskRoot
    • sequence PreChecks
      • conditional IsOperational cond: IsOperational
      • conditional HasFuel cond: HasFuel
    • parallel SenseAndExecute
      • task ActivateSensors action: ActivateSensors
      • sequence Execution
        • sequence SubtaskSequence
          • task EstablishPatrolLine Subtask #806
          • task MaintainSonarWatch Subtask #807
          • task DetectTransitingSubmarines Subtask #808
          • task ReportContacts Subtask #809
          • task ProsecuteIfAuthorized Subtask #810

Sub-task Records

  • EstablishPatrolLine - Subtask 1 of ASW Barrier Patrol
  • MaintainSonarWatch - Subtask 2 of ASW Barrier Patrol
  • DetectTransitingSubmarines - Subtask 3 of ASW Barrier Patrol
  • ReportContacts - Subtask 4 of ASW Barrier Patrol
  • ProsecuteIfAuthorized - Subtask 5 of ASW Barrier Patrol

Parameters

No parameters defined yet.

Outputs

No outputs defined yet.

Manage Primitives