Module AI_Designate

AI (Release 2.1) -- Management of target designation.

--Banner Image


Global(s)

AI_DESIGNATE

AI_DESIGNATE class, extends Fsm#FSM

AI_DESIGNATE is orchestrating the designation of potential targets executed by a Recce group, and communicates these to a dedicated attacking group of players, so that following a dynamically generated menu system, each detected set of potential targets can be lased or smoked...

Type AI_DESIGNATE

AI_DESIGNATE.Detection
AI_DESIGNATE.GroupSet
AI_DESIGNATE.LaserCodes
AI_DESIGNATE:MenuLaseOff(AttackGroup, Index, Duration)
AI_DESIGNATE:MenuLaseOn(AttackGroup, Index, Duration)
AI_DESIGNATE:MenuSmoke(AttackGroup, Index)
AI_DESIGNATE:New(Detection, GroupSet)

AI_DESIGNATE Constructor.

AI_DESIGNATE.RecceSet
AI_DESIGNATE:SendStatus()

Sends the status to the Attack Groups.

AI_DESIGNATE:SetDesignateMenu()

Sets the Designate Menu.

AI_DESIGNATE:SetLaserCodes(<, LaserCodes)

Set an array of possible laser codes.

AI_DESIGNATE.Spots
AI_DESIGNATE:onafterDetect()
AI_DESIGNATE:onafterLaseOff(From, Event, To, AttackGroup, Index)
AI_DESIGNATE:onafterLaseOn(From, Event, To, AttackGroup, Index, Duration)
AI_DESIGNATE:onafterSmoke(From, Event, To, AttackGroup, Index)

Global(s)

#AI_DESIGNATE AI_DESIGNATE

AI_DESIGNATE class, extends Fsm#FSM

AI_DESIGNATE is orchestrating the designation of potential targets executed by a Recce group, and communicates these to a dedicated attacking group of players, so that following a dynamically generated menu system, each detected set of potential targets can be lased or smoked...

The Recce group is detecting as part of the DETECTION_ class continuously targets. Once targets have been detected, they will be reported. The AI_DESIGNATE object will fire the Detect event in this case! As part of the reporting, the following happens:

  • A message is sent to each GROUP of the Attack SET_GROUP, containing the threat level and the target composition.
  • A menu is created and updated for each GROUP of the Attack SET_GROUP, containing the the treat level and the target composition.

One of the players in one of the Attack GROUPs, can then select a Target Set by selecting one of the menu options. Each menu option has two modes:

  • If the Target Set is not being designated, then the Designate menu for the target Set will provide options to Lase or Smoke the targets.
  • If the Target Set is being designated, then the Designate menu will provide an option to cancel the designation.

In this way, the AI can assist players to designate ground targets for a coordinated attack!

Have FUN!

1. AI_DESIGNATE constructor

2. AI_DESIGNATE is a FSM

Process

2.1 AI_DESIGNATE States

  • Designating ( Group ): The process is not started yet.

2.2 AI_DESIGNATE Events

3. Set laser codes

An array of laser codes can be provided, that will be used by the AI_DESIGNATE when lasing. The laser code is communicated by the Recce when it is lasing a larget. Note that the default laser code is 1113. Working known laser codes are: 1113,1462,1483,1537,1362,1214,1131,1182,1644,1614,1515,1411,1621,1138,1542,1678,1573,1314,1643,1257,1467,1375,1341,1275,1237

Use the method AI_DESIGNATE.SetLaserCodes() to set the possible laser codes to be selected from. One laser code can be given or an sequence of laser codes through an table...

AIDesignate:SetLaserCodes( 1214 )

The above sets one laser code with the value 1214.

AIDesignate:SetLaserCodes( { 1214, 1131, 1614, 1138 } )

The above sets a collection of possible laser codes that can be assigned. Note the { } notation!

Type AI_Designate

Type AI_DESIGNATE

Field(s)

AI_DESIGNATE.Detection
AI_DESIGNATE.GroupSet
AI_DESIGNATE.LaserCodes
AI_DESIGNATE:MenuLaseOff(AttackGroup, Index, Duration)

Parameters

  • AttackGroup :

  • Index :

  • Duration :

AI_DESIGNATE:MenuLaseOn(AttackGroup, Index, Duration)

Parameters

  • AttackGroup :

  • Index :

  • Duration :

AI_DESIGNATE:MenuSmoke(AttackGroup, Index)

Parameters

  • AttackGroup :

  • Index :

AI_DESIGNATE:New(Detection, GroupSet)

AI_DESIGNATE Constructor.

This class is an abstract class and should not be instantiated.

Parameters

Return value

#AI_DESIGNATE:

AI_DESIGNATE.RecceSet
AI_DESIGNATE:SendStatus()

Sends the status to the Attack Groups.

Return value

#AI_DESIGNATE:

AI_DESIGNATE:SetDesignateMenu()

Sets the Designate Menu.

Return value

#AI_DESIGNATE:

AI_DESIGNATE:SetLaserCodes(<, LaserCodes)

Set an array of possible laser codes.

Each new lase will select a code from this table.

Parameters

  • #list < : number> LaserCodes

  • LaserCodes :

Return value

#AI_DESIGNATE:

AI_DESIGNATE.Spots
AI_DESIGNATE:onafterDetect()

Return value

#AI_DESIGNATE:

AI_DESIGNATE:onafterLaseOff(From, Event, To, AttackGroup, Index)

Parameters

  • From :

  • Event :

  • To :

  • AttackGroup :

  • Index :

Return value

#AI_DESIGNATE:

AI_DESIGNATE:onafterLaseOn(From, Event, To, AttackGroup, Index, Duration)

Parameters

  • From :

  • Event :

  • To :

  • AttackGroup :

  • Index :

  • Duration :

Return value

#AI_DESIGNATE:

AI_DESIGNATE:onafterSmoke(From, Event, To, AttackGroup, Index)

Parameters

  • From :

  • Event :

  • To :

  • AttackGroup :

  • Index :

Return value

#AI_DESIGNATE:

Type list