Module Task_A2G

Tasking - The TASK_A2G models tasks for players in Air to Ground engagements.


Author: FlightControl

Contributions:


Global(s)

TASK_A2G

TASK_A2G class, extends Task#TASK

The TASK_A2G class defines Air To Ground tasks for a Set of Target Units, based on the tasking capabilities defined in Task#TASK.

TASK_A2G_BAI

TASKA2GBAI class, extends Task_A2G#TASK_A2G

The TASKA2GBAI class defines an Battlefield Air Interdiction task for a human player to be executed.

TASK_A2G_CAS

TASKA2GCAS class, extends Task_A2G#TASK_A2G

The TASKA2GCAS class defines an Close Air Support task for a human player to be executed.

TASK_A2G_SEAD

TASKA2GSEAD class, extends Task_A2G#TASK_A2G

The TASKA2GSEAD class defines an Suppression or Extermination of Air Defenses task for a human player to be executed.

Type TASK_A2G

TASK_A2G:GetGoalTotal()
TASK_A2G:GetPlannedMenuText()
TASK_A2G:GetRendezVousCoordinate(TaskUnit)
TASK_A2G:GetRendezVousZone(TaskUnit)
TASK_A2G:GetTargetCoordinate(TaskUnit)
TASK_A2G:GetTargetZone(TaskUnit)
TASK_A2G:New(Mission, SetGroup, TaskName, UnitSetTargets, TargetDistance, TargetZone, TargetSetUnit, TaskType, TaskBriefing)

Instantiates a new TASK_A2G.

TASK_A2G:ReportOrder(ReportGroup)

Return the relative distance to the target vicinity from the player, in order to sort the targets in the reports per distance from the threats.

TASK_A2G:SetGoalTotal()
TASK_A2G:SetRendezVousCoordinate(RendezVousCoordinate, RendezVousRange, TaskUnit)
TASK_A2G:SetRendezVousZone(RendezVousZone, TaskUnit)
TASK_A2G:SetTargetCoordinate(TargetCoordinate, TaskUnit)
TASK_A2G:SetTargetSetUnit(TargetSetUnit)
TASK_A2G:SetTargetZone(TargetZone, TaskUnit)
TASK_A2G.TargetSetUnit
TASK_A2G:UpdateTaskInfo(DetectedItem)
TASK_A2G:onafterGoal(TaskUnit, From, Event, To)

This method checks every 10 seconds if the goal has been reached of the task.

Type TASK_A2G_BAI

TASK_A2G_BAI:New(Mission, SetGroup, TaskName, TargetSetUnit, TaskBriefing)

Instantiates a new TASKA2GBAI.

TASK_A2G_BAI:SetScoreOnFail(PlayerName, Penalty, TaskUnit)

Set a penalty when the A2G attack has failed.

TASK_A2G_BAI:SetScoreOnProgress(PlayerName, Score, TaskUnit)

Set a score when a target in scope of the A2G attack, has been destroyed .

TASK_A2G_BAI:SetScoreOnSuccess(PlayerName, Score, TaskUnit)

Set a score when all the targets in scope of the A2G attack, have been destroyed.

TASK_A2G_BAI.TargetSetUnit

Type TASK_A2G_CAS

TASK_A2G_CAS:New(Mission, SetGroup, TaskName, TargetSetUnit, TaskBriefing)

Instantiates a new TASKA2GCAS.

TASK_A2G_CAS:SetScoreOnFail(PlayerName, Penalty, TaskUnit)

Set a penalty when the A2G attack has failed.

TASK_A2G_CAS:SetScoreOnProgress(PlayerName, Score, TaskUnit)

Set a score when a target in scope of the A2G attack, has been destroyed .

TASK_A2G_CAS:SetScoreOnSuccess(PlayerName, Score, TaskUnit)

Set a score when all the targets in scope of the A2G attack, have been destroyed.

TASK_A2G_CAS.TargetSetUnit

Type TASK_A2G_SEAD

TASK_A2G_SEAD:New(Mission, SetGroup, TaskName, TargetSetUnit, TaskBriefing)

Instantiates a new TASKA2GSEAD.

TASK_A2G_SEAD:SetScoreOnFail(PlayerName, Penalty, TaskUnit)

Set a penalty when the A2G attack has failed.

TASK_A2G_SEAD:SetScoreOnProgress(PlayerName, Score, TaskUnit)

Set a score when a target in scope of the A2G attack, has been destroyed .

TASK_A2G_SEAD:SetScoreOnSuccess(PlayerName, Score, TaskUnit)

Set a score when all the targets in scope of the A2G attack, have been destroyed.

TASK_A2G_SEAD.TargetSetUnit

Global(s)

#TASK_A2G TASK_A2G

TASK_A2G class, extends Task#TASK

The TASK_A2G class defines Air To Ground tasks for a Set of Target Units, based on the tasking capabilities defined in Task#TASK.

The TASK_A2G is implemented using a Fsm#FSM_TASK, and has the following statuses:

  • None: Start of the process
  • Planned: The A2G task is planned.
  • Assigned: The A2G task is assigned to a Wrapper.Group#GROUP.
  • Success: The A2G task is successfully completed.
  • Failed: The A2G task has failed. This will happen if the player exists the task early, without communicating a possible cancellation to HQ.

1) Set the scoring of achievements in an A2G attack.

Scoring or penalties can be given in the following circumstances:

#TASK_A2G_BAI TASK_A2G_BAI

TASKA2GBAI class, extends Task_A2G#TASK_A2G

The TASKA2GBAI class defines an Battlefield Air Interdiction task for a human player to be executed.

These tasks are more strategic in nature and are most of the time further away from friendly forces. BAI tasks can also be used to express the abscence of friendly forces near the vicinity.

The TASKA2GBAI is used by the Task_A2G_Dispatcher#TASK_A2G_DISPATCHER to automatically create BAI tasks based on detected enemy ground targets.

#TASK_A2G_CAS TASK_A2G_CAS

TASKA2GCAS class, extends Task_A2G#TASK_A2G

The TASKA2GCAS class defines an Close Air Support task for a human player to be executed.

Friendly forces will be in the vicinity within 6km from the enemy.

The TASKA2GCAS is used by the Task_A2G_Dispatcher#TASK_A2G_DISPATCHER to automatically create CAS tasks based on detected enemy ground targets.

#TASK_A2G_SEAD TASK_A2G_SEAD

TASKA2GSEAD class, extends Task_A2G#TASK_A2G

The TASKA2GSEAD class defines an Suppression or Extermination of Air Defenses task for a human player to be executed.

These tasks are important to be executed as they will help to achieve air superiority at the vicinity.

The TASKA2GSEAD is used by the Task_A2G_Dispatcher#TASK_A2G_DISPATCHER to automatically create SEAD tasks based on detected enemy ground targets.

Type Task_A2G

Type FSM_PROCESS

Type TASK_A2G

Extends Tasking.Task#TASK

The TASK_A2G class

Field(s)

TASK_A2G:GetGoalTotal()
TASK_A2G:GetPlannedMenuText()
TASK_A2G:GetRendezVousCoordinate(TaskUnit)

Parameter

Return values

  1. Core.Point#COORDINATE: The Coordinate object referencing to the 2D point where the RendezVous point is located on the map.

  2. #number: The RendezVousRange that defines when the player is considered to have arrived at the RendezVous point.

TASK_A2G:GetRendezVousZone(TaskUnit)

Parameter

Return value

Core.Zone#ZONE_BASE: The Zone object where the RendezVous is located on the map.

TASK_A2G:GetTargetCoordinate(TaskUnit)

Parameter

Return value

Core.Point#COORDINATE: The Coordinate object where the Target is located on the map.

TASK_A2G:GetTargetZone(TaskUnit)

Parameter

Return value

Core.Zone#ZONE_BASE: The Zone object where the Target is located on the map.

TASK_A2G:New(Mission, SetGroup, TaskName, UnitSetTargets, TargetDistance, TargetZone, TargetSetUnit, TaskType, TaskBriefing)

Instantiates a new TASK_A2G.

Parameters

  • Tasking.Mission#MISSION Mission :

  • Core.Set#SET_GROUP SetGroup : The set of groups for which the Task can be assigned.

  • #string TaskName : The name of the Task.

  • Core.Set#SET_UNIT UnitSetTargets :

  • #number TargetDistance : The distance to Target when the Player is considered to have "arrived" at the engagement range.

  • Core.Zone#ZONE_BASE TargetZone : The target zone, if known. If the TargetZone parameter is specified, the player will be routed to the center of the zone where all the targets are assumed to be.

  • TargetSetUnit :

  • TaskType :

  • TaskBriefing :

Return value

#TASK_A2G: self

TASK_A2G:ReportOrder(ReportGroup)

Return the relative distance to the target vicinity from the player, in order to sort the targets in the reports per distance from the threats.

Parameter

  • ReportGroup :

TASK_A2G:SetGoalTotal()
TASK_A2G:SetRendezVousCoordinate(RendezVousCoordinate, RendezVousRange, TaskUnit)

Parameters

  • Core.Point#COORDINATE RendezVousCoordinate : The Coordinate object referencing to the 2D point where the RendezVous point is located on the map.

  • #number RendezVousRange : The RendezVousRange that defines when the player is considered to have arrived at the RendezVous point.

  • Wrapper.Unit#UNIT TaskUnit :

TASK_A2G:SetRendezVousZone(RendezVousZone, TaskUnit)

Parameters

TASK_A2G:SetTargetCoordinate(TargetCoordinate, TaskUnit)

Parameters

TASK_A2G:SetTargetSetUnit(TargetSetUnit)

Parameter

TASK_A2G:SetTargetZone(TargetZone, TaskUnit)

Parameters

Core.Set#SET_UNIT TASK_A2G.TargetSetUnit
TASK_A2G:UpdateTaskInfo(DetectedItem)

Parameter

  • DetectedItem :

TASK_A2G:onafterGoal(TaskUnit, From, Event, To)

This method checks every 10 seconds if the goal has been reached of the task.

Parameters

  • TaskUnit :

  • From :

  • Event :

  • To :

Type TASK_A2G_BAI

Extends Tasking.Task#TASK

The TASKA2GBAI class

Field(s)

TASK_A2G_BAI:New(Mission, SetGroup, TaskName, TargetSetUnit, TaskBriefing)

Instantiates a new TASKA2GBAI.

Parameters

Return value

#TASK_A2G_BAI: self

TASK_A2G_BAI:SetScoreOnFail(PlayerName, Penalty, TaskUnit)

Set a penalty when the A2G attack has failed.

Parameters

  • #string PlayerName : The name of the player.

  • #number Penalty : The penalty in points, must be a negative value!

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_BAI:

TASK_A2G_BAI:SetScoreOnProgress(PlayerName, Score, TaskUnit)

Set a score when a target in scope of the A2G attack, has been destroyed .

Parameters

  • #string PlayerName : The name of the player.

  • #number Score : The score in points to be granted when task process has been achieved.

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_BAI:

TASK_A2G_BAI:SetScoreOnSuccess(PlayerName, Score, TaskUnit)

Set a score when all the targets in scope of the A2G attack, have been destroyed.

Parameters

  • #string PlayerName : The name of the player.

  • #number Score : The score in points.

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_BAI:

Core.Set#SET_UNIT TASK_A2G_BAI.TargetSetUnit

Type TASK_A2G_CAS

Extends Tasking.Task#TASK

The TASKA2GCAS class

Field(s)

TASK_A2G_CAS:New(Mission, SetGroup, TaskName, TargetSetUnit, TaskBriefing)

Instantiates a new TASKA2GCAS.

Parameters

Return value

#TASK_A2G_CAS: self

TASK_A2G_CAS:SetScoreOnFail(PlayerName, Penalty, TaskUnit)

Set a penalty when the A2G attack has failed.

Parameters

  • #string PlayerName : The name of the player.

  • #number Penalty : The penalty in points, must be a negative value!

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_CAS:

TASK_A2G_CAS:SetScoreOnProgress(PlayerName, Score, TaskUnit)

Set a score when a target in scope of the A2G attack, has been destroyed .

Parameters

  • #string PlayerName : The name of the player.

  • #number Score : The score in points to be granted when task process has been achieved.

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_CAS:

TASK_A2G_CAS:SetScoreOnSuccess(PlayerName, Score, TaskUnit)

Set a score when all the targets in scope of the A2G attack, have been destroyed.

Parameters

  • #string PlayerName : The name of the player.

  • #number Score : The score in points.

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_CAS:

Core.Set#SET_UNIT TASK_A2G_CAS.TargetSetUnit

Type TASK_A2G_SEAD

Extends Tasking.Task#TASK

The TASKA2GSEAD class

Field(s)

TASK_A2G_SEAD:New(Mission, SetGroup, TaskName, TargetSetUnit, TaskBriefing)

Instantiates a new TASKA2GSEAD.

Parameters

Return value

#TASK_A2G_SEAD: self

TASK_A2G_SEAD:SetScoreOnFail(PlayerName, Penalty, TaskUnit)

Set a penalty when the A2G attack has failed.

Parameters

  • #string PlayerName : The name of the player.

  • #number Penalty : The penalty in points, must be a negative value!

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_SEAD:

TASK_A2G_SEAD:SetScoreOnProgress(PlayerName, Score, TaskUnit)

Set a score when a target in scope of the A2G attack, has been destroyed .

Parameters

  • #string PlayerName : The name of the player.

  • #number Score : The score in points to be granted when task process has been achieved.

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_SEAD:

TASK_A2G_SEAD:SetScoreOnSuccess(PlayerName, Score, TaskUnit)

Set a score when all the targets in scope of the A2G attack, have been destroyed.

Parameters

  • #string PlayerName : The name of the player.

  • #number Score : The score in points.

  • Wrapper.Unit#UNIT TaskUnit :

Return value

#TASK_A2G_SEAD:

Core.Set#SET_UNIT TASK_A2G_SEAD.TargetSetUnit