diff --git a/Moose Development/Moose/AI/AI_BAI.lua b/Moose Development/Moose/AI/AI_BAI.lua index a83f3b3e3..cd3a028be 100644 --- a/Moose Development/Moose/AI/AI_BAI.lua +++ b/Moose Development/Moose/AI/AI_BAI.lua @@ -146,6 +146,18 @@ -- * **@{#AI_BAI_ZONE.Destroyed}**: The AI has destroyed all target @{Unit}s assigned in the BOMB task. -- * **Status**: The AI is checking status (fuel and damage). When the tresholds have been reached, the AI will RTB. -- +-- ## 3. Modify the Engage Zone behaviour to pinpoint a **map object** or **scenery object** +-- +-- Use the method @{#AI_BAI_ZONE.SearchOff}() to specify that the EngageZone is not to be searched for potential targets (UNITs), but that the center of the zone +-- is the point where a map object is to be destroyed (like a bridge). +-- +-- Example: +-- +-- -- Tell the BAI not to search for potential targets in the BAIEngagementZone, but rather use the center of the BAIEngagementZone as the bombing location. +-- AIBAIZone:SearchOff() +-- +-- Searching can be switched back on with the method @{#AI_BAI_ZONE.SearchOn}(). Use the method @{#AI_BAI_ZONE.SearchOnOff}() to flexibily switch searching on or off. +-- -- === -- -- @field #AI_BAI_ZONE @@ -543,7 +555,6 @@ function AI_BAI_ZONE:onafterEngage( Controllable, From, Event, To, ) EngageRoute[#EngageRoute+1] = CurrentRoutePoint - EngageRoute[#EngageRoute+1] = CurrentRoutePoint local AttackTasks = {} diff --git a/docs/Documentation/AI_BAI.html b/docs/Documentation/AI_BAI.html index 2234f5318..3c74b363d 100644 --- a/docs/Documentation/AI_BAI.html +++ b/docs/Documentation/AI_BAI.html @@ -96,7 +96,7 @@

Module AI_BAI

-

AI -- Provide Battleground Air Interdiction (bombing).

+

AI -- Provide Battlefield Air Interdiction (bombing).

Banner Image

@@ -339,6 +339,30 @@ AI_BAI_ZONE:OnLeaveEngaging(Controllable, From, Event, To)

OnLeave Transition Handler for State Engaging.

+ + + + AI_BAI_ZONE.Search + + + + + + AI_BAI_ZONE:SearchOff() + +

If Search is Off, the current zone coordinate will be the center of the bombing.

+ + + + AI_BAI_ZONE:SearchOn() + +

If Search is On, BAI will search for potential targets in the zone.

+ + + + AI_BAI_ZONE:SearchOnOff(Search) + +

Specifies whether to search for potential targets in the zone, or let the center of the zone be the bombing coordinate.

@@ -489,7 +513,7 @@ Any target that is detected in the Engage Zone will be reported and will be dest

Engage Event

-

When the AI has accomplished the BOMB, it will fly back to the Patrol Zone.

+

When the AI has accomplished the Bombing, it will fly back to the Patrol Zone.

Engage Event

@@ -534,6 +558,19 @@ It can be notified to go RTB through the RTB event.

  • Status: The AI is checking status (fuel and damage). When the tresholds have been reached, the AI will RTB.
  • +

    3. Modify the Engage Zone behaviour to pinpoint a map object or scenery object

    + +

    Use the method AIBAIZONE.SearchOff() to specify that the EngageZone is not to be searched for potential targets (units), but that the center of the zone +is the point where a map object is to be destroyed (like a bridge).

    + +

    Example:

    + +
     -- Tell the BAI not to search for potential targets in the BAIEngagementZone, but rather use the center of the BAIEngagementZone as the bombing location.
    + AIBAIZone:SearchOff()
    +
    + +

    Searching can be switched back on with the method AIBAIZONE.SearchOn(). Use the method AIBAIZONE.SearchOnOff() to flexibily switch searching on or off.

    +
    @@ -1364,6 +1401,85 @@ The To State string.

    #boolean: Return false to cancel Transition.

    + + +
    +
    + + + +AI_BAI_ZONE.Search + +
    +
    + + + +
    +
    +
    +
    + + +AI_BAI_ZONE:SearchOff() + +
    +
    + +

    If Search is Off, the current zone coordinate will be the center of the bombing.

    + +

    Return value

    + +

    #AIBAIZONE:

    + + +
    +
    +
    +
    + + +AI_BAI_ZONE:SearchOn() + +
    +
    + +

    If Search is On, BAI will search for potential targets in the zone.

    + +

    Return value

    + +

    #AIBAIZONE:

    + + +
    +
    +
    +
    + + +AI_BAI_ZONE:SearchOnOff(Search) + +
    +
    + +

    Specifies whether to search for potential targets in the zone, or let the center of the zone be the bombing coordinate.

    + + +

    AIBAIZONE will search for potential targets by default.

    + +

    Parameter

    +
      +
    • + +

      Search :

      + +
    • +
    +

    Return value

    + +

    #AIBAIZONE:

    + +
    diff --git a/docs/Documentation/Controllable.html b/docs/Documentation/Controllable.html index 2d445d50e..c5abef460 100644 --- a/docs/Documentation/Controllable.html +++ b/docs/Documentation/Controllable.html @@ -539,7 +539,7 @@ This is different from the EnRoute tasks, where the targets of the task need to - CONTROLLABLE:TaskAttackMapObject(Vec2, WeaponType, WeaponExpend, AttackQty, Direction, ControllableAttack) + CONTROLLABLE:TaskAttackMapObject(Vec2, GroupAttack, WeaponExpend, AttackQty, Direction, Altitude, WeaponType)

    (AIR) Attacking the map object (building, structure, e.t.c).

    @@ -551,7 +551,7 @@ This is different from the EnRoute tasks, where the targets of the task need to - CONTROLLABLE:TaskBombing(Vec2, GroupAttack, WeaponExpend, AttackQty, Direction, WeaponType) + CONTROLLABLE:TaskBombing(Vec2, GroupAttack, WeaponExpend, AttackQty, Direction, Altitude, WeaponType)

    (AIR) Delivering weapon at the point on the ground.

    @@ -2095,7 +2095,7 @@ The DCS task structure.

    -CONTROLLABLE:TaskAttackMapObject(Vec2, WeaponType, WeaponExpend, AttackQty, Direction, ControllableAttack) +CONTROLLABLE:TaskAttackMapObject(Vec2, GroupAttack, WeaponExpend, AttackQty, Direction, Altitude, WeaponType)
    @@ -2107,13 +2107,13 @@ The DCS task structure.

  • Dcs.DCSTypes#Vec2 Vec2 : -2D-coordinates of the point the map object is closest to. The distance between the point and the map object must not be greater than 2000 meters. Object id is not used here because Mission Editor doesn't support map object identificators.

    +2D-coordinates of the point to deliver weapon at.

  • -

    #number WeaponType : -(optional) Bitmask of weapon types those allowed to use. If parameter is not defined that means no limits on weapon usage.

    +

    #boolean GroupAttack : +(optional) If true, all units in the group will attack the Unit when found.

  • @@ -2136,8 +2136,14 @@ The DCS task structure.

  • -

    #boolean ControllableAttack : -(optional) Flag indicates that the target must be engaged by all aircrafts of the controllable. Has effect only if the task is assigned to a controllable, not to a single aircraft.

    +

    #number Altitude : +(optional) The altitude from where to attack.

    + +
  • +
  • + +

    #number WeaponType : +(optional) The WeaponType.

  • @@ -2221,7 +2227,7 @@ The DCS task structure.

    -CONTROLLABLE:TaskBombing(Vec2, GroupAttack, WeaponExpend, AttackQty, Direction, WeaponType) +CONTROLLABLE:TaskBombing(Vec2, GroupAttack, WeaponExpend, AttackQty, Direction, Altitude, WeaponType)
    @@ -2239,7 +2245,7 @@ The DCS task structure.

  • #boolean GroupAttack : -(optional) Flag indicates that the target must be engaged by all aircrafts of the group. Has effect only if the task is assigned to a group, not to a single aircraft.

    +(optional) If true, all units in the group will attack the Unit when found.

  • @@ -2251,7 +2257,7 @@ The DCS task structure.

  • #number AttackQty : -(optional) Desired quantity of passes. The parameter is not the same in AttackGroup and AttackUnit tasks.

    +(optional) This parameter limits maximal quantity of attack. The aicraft/controllable will not make more attack than allowed even if the target controllable not destroyed and the aicraft/controllable still have ammo. If not defined the aircraft/controllable will attack target until it will be destroyed or until the aircraft/controllable will run out of ammo.

  • @@ -2262,8 +2268,14 @@ The DCS task structure.

  • +

    #number Altitude : +(optional) The altitude from where to attack.

    + +
  • +
  • +

    #number WeaponType : -(optional) Bitmask of weapon types those allowed to use. If parameter is not defined that means no limits on weapon usage.

    +(optional) The WeaponType.

  • diff --git a/docs/Documentation/Database.html b/docs/Documentation/Database.html index 13c610e53..70294483b 100644 --- a/docs/Documentation/Database.html +++ b/docs/Documentation/Database.html @@ -1829,6 +1829,7 @@ self

    + #number DATABASE.UNITS_Position diff --git a/docs/Documentation/Designate.html b/docs/Documentation/Designate.html index 10ff4c243..36af9145f 100644 --- a/docs/Documentation/Designate.html +++ b/docs/Documentation/Designate.html @@ -891,6 +891,7 @@ function below will use the range 1-7 just in case

    + DESIGNATE.LaserCodes diff --git a/docs/Documentation/Detection.html b/docs/Documentation/Detection.html index e512594d8..13499cb5c 100644 --- a/docs/Documentation/Detection.html +++ b/docs/Documentation/Detection.html @@ -2336,7 +2336,6 @@ The index of the DetectedItem.

    - #number DETECTION_BASE.DetectedItemMax diff --git a/docs/Documentation/Fsm.html b/docs/Documentation/Fsm.html index b832094de..a5360ca5f 100644 --- a/docs/Documentation/Fsm.html +++ b/docs/Documentation/Fsm.html @@ -1623,7 +1623,7 @@ A string defining the start state.

    - + #string FSM._StartState @@ -1922,7 +1922,6 @@ A string defining the start state.

    - FSM.current diff --git a/docs/Documentation/Spawn.html b/docs/Documentation/Spawn.html index 6bbc5b660..1d8d862f2 100644 --- a/docs/Documentation/Spawn.html +++ b/docs/Documentation/Spawn.html @@ -771,6 +771,12 @@ and any spaces before and after the resulting name are removed.

    SPAWN:_TranslateRotate(SpawnIndex, SpawnRootX, SpawnRootY, SpawnX, SpawnY, SpawnAngle) + + + + SPAWN.uncontrolled + + @@ -2072,9 +2078,6 @@ The group that was spawned. You can use this group for further actions.

    - -

    Don't repeat the group from Take-Off till Landing and back Take-Off by ReSpawning.

    -
    @@ -2528,9 +2531,6 @@ when nothing was spawned.

    - -

    Overwrite unit names by default with group name.

    -
    @@ -2545,9 +2545,6 @@ when nothing was spawned.

    - -

    By default, no InitLimit

    -
    @@ -2583,7 +2580,7 @@ when nothing was spawned.

    - #number + SPAWN.SpawnMaxGroups @@ -2600,7 +2597,7 @@ when nothing was spawned.

    - #number + SPAWN.SpawnMaxUnitsAlive @@ -2952,7 +2949,7 @@ Spawn_BE_KA50 = SPAWN:New( 'BE KA-50@RAMP-Ground Defense' ):Schedule( 600, 0.5 ) -

    Flag that indicates if all the Groups of the SpawnGroup need to be visible when Spawned.

    +

    When the first Spawn executes, all the Groups need to be made visible before start.

    @@ -3518,6 +3515,20 @@ True = Continue Scheduler

    + +
    +
    +
    + + + +SPAWN.uncontrolled + +
    +
    + + +
    diff --git a/docs/Documentation/Spot.html b/docs/Documentation/Spot.html index acc195246..1ee972150 100644 --- a/docs/Documentation/Spot.html +++ b/docs/Documentation/Spot.html @@ -762,7 +762,6 @@ true if it is lasing

    - SPOT.ScheduleID @@ -776,7 +775,6 @@ true if it is lasing

    - SPOT.SpotIR @@ -790,7 +788,6 @@ true if it is lasing

    - SPOT.SpotLaser @@ -804,7 +801,6 @@ true if it is lasing

    - SPOT.Target diff --git a/docs/Documentation/Task_Cargo.html b/docs/Documentation/Task_Cargo.html index 5cb0f06fd..7b5964a17 100644 --- a/docs/Documentation/Task_Cargo.html +++ b/docs/Documentation/Task_Cargo.html @@ -502,7 +502,7 @@ based on the tasking capabilities defined in Task#TA
    - + Core.Cargo#CARGO FSM_PROCESS.Cargo diff --git a/docs/Documentation/index.html b/docs/Documentation/index.html index 5766ea5a2..9255879bf 100644 --- a/docs/Documentation/index.html +++ b/docs/Documentation/index.html @@ -99,7 +99,7 @@ AI_BAI -

    AI -- Provide Battleground Air Interdiction (bombing).

    +

    AI -- Provide Battlefield Air Interdiction (bombing).

    Banner Image