Overwatch Positioning

Description

Placing armor to provide covering fire.

Lua Implementation

-- Task: Overwatch Positioning
-- Operation: Armored Warfare (LAND DOMAIN)
-- Refactored to use TaskRunner

local TaskRunner = require("TaskRunner")

local config = {
    subtasks = {"SelectPosition", "OccupyPosition", "EstablishSector", "ProvideOverwatch", "DisplaceOnOrder"},
    timeoutSeconds = 300,
    flags = {
        activateSensors = false,
        captureTargetLocation = true,
        enableParallelSensing = false,
        requireAmmoForEngagement = true,
        requireEngagementAuth = true,
        enableAttackFallback = true,
        sendStartReport = false,
        sendFallbackReport = false,
        requestSupport = true,
        sendCompletionReport = false,
        fallbackWaitSeconds = 30
    }
}

return TaskRunner.create(config)
9 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
      • conditional HasAmmo cond: HasAmmo
    • sequence Execution
      • selector EngageOrFallback
        • sequence EngagementSequence
          • conditional CanEngage cond: CanEngage
          • task EngageTarget action: EngageTarget
        • sequence FallbackSequence
          • send RequestSupport
          • task Reposition action: MoveToLocation
      • sequence SubtaskSequence
        • task SelectPosition Subtask #586
        • task OccupyPosition Subtask #587
        • task EstablishSector Subtask #588
        • task ProvideOverwatch Subtask #589
        • task DisplaceOnOrder Subtask #590

Sub-task Records

  • SelectPosition - Choose overwatch site
  • OccupyPosition - Move into position
  • EstablishSector - Assign fire sector
  • ProvideOverwatch - Cover friendly movement
  • DisplaceOnOrder - Move when directed

Parameters

No parameters defined yet.

Outputs

No outputs defined yet.

Manage Primitives