Documentation
@ -313,11 +313,187 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- A2ADispatcher:SetSquadronGci( "Mozdok", 900, 1200 )
|
||||
--
|
||||
-- ## 7. User Guide:
|
||||
-- ## 7. Other configuration options
|
||||
--
|
||||
-- ## 8. Questionnaire:
|
||||
-- ### 7.1. Set a tactical display panel:
|
||||
--
|
||||
-- ### 8.1. Which countries will be selected for each coalition?
|
||||
-- Every 30 seconds, a tactical display panel can be shown that illustrates what the status is of the different groups controlled by AI\_A2A\_DISPATCHER.
|
||||
-- Use the method @{#AI_A2A_DISPATCHER.SetTacticalDisplay}() to switch on the tactical display panel. The default will not show this panel.
|
||||
-- Note that there may be some performance impact if this panel is shown.
|
||||
--
|
||||
-- ## 8. Mission Editor Guide:
|
||||
--
|
||||
-- The following steps need to be followed, in order to setup the different borders, templates and groups within the mission editor:
|
||||
--
|
||||
-- ### 8.1. Define your EWR network:
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- At strategic positions within the battlefield, position the correct groups of units that have radar detection capability in the battlefield.
|
||||
-- Create the naming of these groups as such, that these can be easily recognized and included as a prefix within your lua MOOSE mission script.
|
||||
-- These prefixes should be unique, so that accidentally no other groups would be incorporated within the EWR network.
|
||||
--
|
||||
-- ### 8.2. Define the border zone:
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- For a cold war situation, define your border zone.
|
||||
-- You can do this in many ways, as the @{Zone} capability within MOOSE outlines. However, the best practice is to create a ZONE_POLYGON class.
|
||||
-- To do this, you need to create a zone using a helicopter group, that is late activated, and has a unique group name.
|
||||
-- Place the helicopter where the border zone should start, and draw using the waypoints the polygon zone around the area that is considered the border.
|
||||
-- The helicopter group name is included as the reference within your lua MOOSE mission script, so ensure that the name is unique and is easily recognizable.
|
||||
--
|
||||
-- ### 8.3. Define the plane templates:
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Define the templates of the planes that define the format of planes that will take part in the A2A defenses of your coalition.
|
||||
-- These plane templates will never be activated, but are used to create a diverse airplane portfolio allocated to your squadrons.
|
||||
--
|
||||
-- IMPORTANT! **Plane templates MUST be of ONE unit, and must have the Late Activated flag switched on!**
|
||||
--
|
||||
-- Plane templates are used to diversify the defending squadrons with:
|
||||
--
|
||||
-- * different airplane types
|
||||
-- * different airplane skins
|
||||
-- * different skill levels
|
||||
-- * different weapon payloads
|
||||
-- * different fuel and other characteristics
|
||||
--
|
||||
-- Place these airplane templates are good visible locations within your mission, so you can easily retrieve them back.
|
||||
--
|
||||
-- ### 8.4. Define the CAP zones:
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Similar as with the border zone, define the CAP zones using helicopter group templates. Its waypoints define the polygon zones.
|
||||
-- But you can also define other zone types instead, like moving zones.
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Or you can define also zones using trigger zones.
|
||||
--
|
||||
-- ### 8.5. "Script it":
|
||||
--
|
||||
-- Find the following mission script as an example:
|
||||
--
|
||||
-- -- Define a SET_GROUP object that builds a collection of groups that define the EWR network.
|
||||
-- -- Here we build the network with all the groups that have a name starting with DF CCCP AWACS and DF CCCP EWR.
|
||||
-- DetectionSetGroup = SET_GROUP:New()
|
||||
-- DetectionSetGroup:FilterPrefixes( { "DF CCCP AWACS", "DF CCCP EWR" } )
|
||||
-- DetectionSetGroup:FilterStart()
|
||||
--
|
||||
-- -- Setup the A2A dispatcher, and initialize it.
|
||||
-- A2ADispatcher = AI_A2A_DISPATCHER:New( DetectionSetGroup, 30000 )
|
||||
--
|
||||
-- -- Initialize the dispatcher, setting up a border zone. This is a polygon,
|
||||
-- -- which takes the waypoints of a late activated group with the name CCCP Border as the boundaries of the border area.
|
||||
-- -- Any enemy crossing this border will be engaged.
|
||||
-- CCCPBorderZone = ZONE_POLYGON:New( "CCCP Border", GROUP:FindByName( "CCCP Border" ) )
|
||||
-- A2ADispatcher:SetBorderZone( { CCCPBorderZone } )
|
||||
--
|
||||
-- -- Initialize the dispatcher, setting up a radius of 100km where any airborne friendly
|
||||
-- -- without an assignment within 100km radius from a detected target, will engage that target.
|
||||
-- A2ADispatcher:SetEngageRadius( 300000 )
|
||||
--
|
||||
-- -- Setup the squadrons.
|
||||
-- A2ADispatcher:SetSquadron( "Mineralnye", AIRBASE.Caucasus.Mineralnye_Vody, { "SQ CCCP SU-27" }, 20 )
|
||||
-- A2ADispatcher:SetSquadron( "Maykop", AIRBASE.Caucasus.Maykop_Khanskaya, { "SQ CCCP MIG-31" }, 20 )
|
||||
-- A2ADispatcher:SetSquadron( "Mozdok", AIRBASE.Caucasus.Mozdok, { "SQ CCCP MIG-31" }, 20 )
|
||||
-- A2ADispatcher:SetSquadron( "Sochi", AIRBASE.Caucasus.Sochi_Adler, { "SQ CCCP SU-27" }, 20 )
|
||||
-- A2ADispatcher:SetSquadron( "Novo", AIRBASE.Caucasus.Novorossiysk, { "SQ CCCP SU-27" }, 20 )
|
||||
--
|
||||
-- -- Setup the overhead
|
||||
-- A2ADispatcher:SetSquadronOverhead( "Mineralnye", 1.2 )
|
||||
-- A2ADispatcher:SetSquadronOverhead( "Maykop", 1 )
|
||||
-- A2ADispatcher:SetSquadronOverhead( "Mozdok", 1.5 )
|
||||
-- A2ADispatcher:SetSquadronOverhead( "Sochi", 1 )
|
||||
-- A2ADispatcher:SetSquadronOverhead( "Novo", 1 )
|
||||
--
|
||||
-- -- Setup the Grouping
|
||||
-- A2ADispatcher:SetSquadronGrouping( "Mineralnye", 2 )
|
||||
-- A2ADispatcher:SetSquadronGrouping( "Sochi", 2 )
|
||||
-- A2ADispatcher:SetSquadronGrouping( "Novo", 3 )
|
||||
--
|
||||
-- -- Setup the Takeoff methods
|
||||
-- A2ADispatcher:SetSquadronTakeoff( "Mineralnye", AI_A2A_DISPATCHER.Takeoff.Air )
|
||||
-- A2ADispatcher:SetSquadronTakeoffInAir( "Sochi" )
|
||||
-- A2ADispatcher:SetSquadronTakeoffFromRunway( "Mozdok" )
|
||||
-- A2ADispatcher:SetSquadronTakeoffFromParkingCold( "Maykop" )
|
||||
-- A2ADispatcher:SetSquadronTakeoffFromParkingHot( "Novo" )
|
||||
--
|
||||
-- -- Setup the Landing methods
|
||||
-- A2ADispatcher:SetSquadronLandingAtRunway( "Mineralnye" )
|
||||
-- A2ADispatcher:SetSquadronLandingNearAirbase( "Sochi" )
|
||||
-- A2ADispatcher:SetSquadronLandingAtEngineShutdown( "Mozdok" )
|
||||
-- A2ADispatcher:SetSquadronLandingNearAirbase( "Maykop" )
|
||||
-- A2ADispatcher:SetSquadronLanding( "Novo", AI_A2A_DISPATCHER.Landing.AtRunway )
|
||||
--
|
||||
--
|
||||
-- -- CAP Squadron execution.
|
||||
-- CAPZoneEast = ZONE_POLYGON:New( "CAP Zone East", GROUP:FindByName( "CAP Zone East" ) )
|
||||
-- A2ADispatcher:SetSquadronCap( "Mineralnye", CAPZoneEast, 4000, 10000, 500, 600, 800, 900 )
|
||||
-- A2ADispatcher:SetSquadronCapInterval( "Mineralnye", 2, 30, 60, 1 )
|
||||
--
|
||||
-- CAPZoneWest = ZONE_POLYGON:New( "CAP Zone West", GROUP:FindByName( "CAP Zone West" ) )
|
||||
-- A2ADispatcher:SetSquadronCap( "Sochi", CAPZoneWest, 4000, 8000, 600, 800, 800, 1200, "BARO" )
|
||||
-- A2ADispatcher:SetSquadronCapInterval( "Sochi", 2, 30, 120, 1 )
|
||||
--
|
||||
-- CAPZoneMiddle = ZONE:New( "CAP Zone Middle")
|
||||
-- A2ADispatcher:SetSquadronCap( "Maykop", CAPZoneMiddle, 4000, 8000, 600, 800, 800, 1200, "RADIO" )
|
||||
-- A2ADispatcher:SetSquadronCapInterval( "Sochi", 2, 30, 120, 1 )
|
||||
--
|
||||
-- -- GCI Squadron execution.
|
||||
-- A2ADispatcher:SetSquadronGci( "Mozdok", 900, 1200 )
|
||||
-- A2ADispatcher:SetSquadronGci( "Novo", 900, 2100 )
|
||||
-- A2ADispatcher:SetSquadronGci( "Maykop", 900, 1200 )
|
||||
--
|
||||
-- #### 8.5.1. Script the EWR network
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- #### 8.5.2. Script the AI\_A2A\_DISPATCHER object and configure it
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- #### 8.5.3. Script the squadrons
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Create the squadrons using the @{#AI_A2A_DISPATCHER.SetSquadron)() method.
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Define the defense overhead of the squadrons using the @{#AI_A2A_DISPATCHER.SetSquadronOverhead)() method.
|
||||
-- Group the squadron units using the @{#AI_A2A_DISPATCHER.SetSquadronGrouping)() method.
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Set the takeoff method of the squadron using the @{#AI_A2A_DISPATCHER.SetSquadronTakeoff)() methods.
|
||||
-- Set the landing method of the squadron using the @{#AI_A2A_DISPATCHER.SetSquadronLanding)() methods.
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Create the @{Zone} objects using:
|
||||
--
|
||||
-- * @{Zone#ZONE} class to create a zone using a trigger zone set in the mission editor.
|
||||
-- * @{Zone#ZONE_UNIT} class to create a zone around a unit object.
|
||||
-- * @{Zone#ZONE_GROUP} class to create a zone around a group object.
|
||||
-- * @{Zone#ZONE_POLYGON} class to create a polygon zone using a late activated group object.
|
||||
--
|
||||
-- Use the @{#AI_A2A_DISPATCHER.SetSquadronCap)() method to define CAP execution for the squadron, within the CAP zone defined.
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Use the @{#AI_A2A_DISPATCHER.SetSquadronCapInterval)() method to define how many CAP groups can be airborne at the same time, and the timing intervals.
|
||||
--
|
||||
-- 
|
||||
--
|
||||
-- Use the @{#AI_A2A_DISPATCHER.SetSquadronGci)() method to define GCI execution for the squadron.
|
||||
--
|
||||
-- ## 9. Q & A:
|
||||
--
|
||||
-- ### 9.1. Which countries will be selected for each coalition?
|
||||
--
|
||||
-- Which countries are assigned to a coalition influences which units are available to the coalition.
|
||||
-- For example because the mission calls for a EWR radar on the blue side the Ukraine might be chosen as a blue country
|
||||
@ -325,7 +501,7 @@ do -- AI_A2A_DISPATCHER
|
||||
-- Some countries assign different tasking to aircraft, for example Germany assigns the CAP task to F-4E Phantoms but the USA does not.
|
||||
-- Therefore if F4s are wanted as a coalition’s CAP or GCI aircraft Germany will need to be assigned to that coalition.
|
||||
--
|
||||
-- ### 8.2.Country, type, load out, skill and skins for CAP and GCI aircraft?
|
||||
-- ### 9.2.Country, type, load out, skill and skins for CAP and GCI aircraft?
|
||||
--
|
||||
-- * Note these can be from any countries within the coalition but must be an aircraft with one of the main tasks being “CAP”.
|
||||
-- * Obviously skins which are selected must be available to all players that join the mission otherwise they will see a default skin.
|
||||
@ -492,6 +668,7 @@ do -- AI_A2A_DISPATCHER
|
||||
self:HandleEvent( EVENTS.Land )
|
||||
self:HandleEvent( EVENTS.EngineShutdown )
|
||||
|
||||
self:SetTacticalDisplay( false )
|
||||
|
||||
self:__Start( 5 )
|
||||
|
||||
|
||||
@ -908,11 +908,177 @@ too short will mean that the intruders may have alraedy passed the ideal interce
|
||||
|
||||
<p> A2ADispatcher:SetSquadronGci( "Mozdok", 900, 1200 )</p>
|
||||
|
||||
<h2>7. User Guide:</h2>
|
||||
<h2>7. Other configuration options</h2>
|
||||
|
||||
<h2>8. Questionnaire:</h2>
|
||||
<h3>7.1. Set a tactical display panel:</h3>
|
||||
|
||||
<h3>8.1. Which countries will be selected for each coalition?</h3>
|
||||
<p>Every 30 seconds, a tactical display panel can be shown that illustrates what the status is of the different groups controlled by AI_A2A_DISPATCHER.
|
||||
Use the method <a href="##(AI_A2A_DISPATCHER).SetTacticalDisplay">AI<em>A2A</em>DISPATCHER.SetTacticalDisplay</a>() to switch on the tactical display panel. The default will not show this panel.
|
||||
Note that there may be some performance impact if this panel is shown.</p>
|
||||
|
||||
<h2>8. Mission Editor Guide:</h2>
|
||||
|
||||
<p>The following steps need to be followed, in order to setup the different borders, templates and groups within the mission editor:</p>
|
||||
|
||||
<h3>8.1. Define your EWR network:</h3>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia14.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<p>At strategic positions within the battlefield, position the correct groups of units that have radar detection capability in the battlefield.
|
||||
Create the naming of these groups as such, that these can be easily recognized and included as a prefix within your lua MOOSE mission script.
|
||||
These prefixes should be unique, so that accidentally no other groups would be incorporated within the EWR network.</p>
|
||||
|
||||
<h3>8.2. Define the border zone:</h3>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia15.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<p>For a cold war situation, define your border zone.
|
||||
You can do this in many ways, as the <a href="Zone.html">Zone</a> capability within MOOSE outlines. However, the best practice is to create a ZONE_POLYGON class.
|
||||
To do this, you need to create a zone using a helicopter group, that is late activated, and has a unique group name.
|
||||
Place the helicopter where the border zone should start, and draw using the waypoints the polygon zone around the area that is considered the border.
|
||||
The helicopter group name is included as the reference within your lua MOOSE mission script, so ensure that the name is unique and is easily recognizable.</p>
|
||||
|
||||
<h3>8.3. Define the plane templates:</h3>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia16.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<p>Define the templates of the planes that define the format of planes that will take part in the A2A defenses of your coalition.
|
||||
These plane templates will never be activated, but are used to create a diverse airplane portfolio allocated to your squadrons.</p>
|
||||
|
||||
<p>IMPORTANT! <strong>Plane templates MUST be of ONE unit, and must have the Late Activated flag switched on!</strong></p>
|
||||
|
||||
<p>Plane templates are used to diversify the defending squadrons with:</p>
|
||||
|
||||
<ul>
|
||||
<li>different airplane types</li>
|
||||
<li>different airplane skins</li>
|
||||
<li>different skill levels</li>
|
||||
<li>different weapon payloads</li>
|
||||
<li>different fuel and other characteristics</li>
|
||||
</ul>
|
||||
|
||||
<p>Place these airplane templates are good visible locations within your mission, so you can easily retrieve them back.</p>
|
||||
|
||||
<h3>8.4. Define the CAP zones:</h3>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia17.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<p>Similar as with the border zone, define the CAP zones using helicopter group templates. Its waypoints define the polygon zones.
|
||||
But you can also define other zone types instead, like moving zones.</p>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia18.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<p>Or you can define also zones using trigger zones.</p>
|
||||
|
||||
<h3>8.5. "Script it":</h3>
|
||||
|
||||
<p>Find the following mission script as an example:</p>
|
||||
|
||||
<p> -- Define a SET<em>GROUP object that builds a collection of groups that define the EWR network.
|
||||
-- Here we build the network with all the groups that have a name starting with DF CCCP AWACS and DF CCCP EWR.
|
||||
DetectionSetGroup = SET</em>GROUP:New()
|
||||
DetectionSetGroup:FilterPrefixes( { "DF CCCP AWACS", "DF CCCP EWR" } )
|
||||
DetectionSetGroup:FilterStart()</p>
|
||||
|
||||
<p> -- Setup the A2A dispatcher, and initialize it.
|
||||
A2ADispatcher = AI<em>A2A</em>DISPATCHER:New( DetectionSetGroup, 30000 )</p>
|
||||
|
||||
<p> -- Initialize the dispatcher, setting up a border zone. This is a polygon,
|
||||
-- which takes the waypoints of a late activated group with the name CCCP Border as the boundaries of the border area.
|
||||
-- Any enemy crossing this border will be engaged.
|
||||
CCCPBorderZone = ZONE_POLYGON:New( "CCCP Border", GROUP:FindByName( "CCCP Border" ) )
|
||||
A2ADispatcher:SetBorderZone( { CCCPBorderZone } )</p>
|
||||
|
||||
<p> -- Initialize the dispatcher, setting up a radius of 100km where any airborne friendly
|
||||
-- without an assignment within 100km radius from a detected target, will engage that target.
|
||||
A2ADispatcher:SetEngageRadius( 300000 )</p>
|
||||
|
||||
<p> -- Setup the squadrons.
|
||||
A2ADispatcher:SetSquadron( "Mineralnye", AIRBASE.Caucasus.Mineralnye<em>Vody, { "SQ CCCP SU-27" }, 20 )
|
||||
A2ADispatcher:SetSquadron( "Maykop", AIRBASE.Caucasus.Maykop</em>Khanskaya, { "SQ CCCP MIG-31" }, 20 )
|
||||
A2ADispatcher:SetSquadron( "Mozdok", AIRBASE.Caucasus.Mozdok, { "SQ CCCP MIG-31" }, 20 )
|
||||
A2ADispatcher:SetSquadron( "Sochi", AIRBASE.Caucasus.Sochi_Adler, { "SQ CCCP SU-27" }, 20 )
|
||||
A2ADispatcher:SetSquadron( "Novo", AIRBASE.Caucasus.Novorossiysk, { "SQ CCCP SU-27" }, 20 )</p>
|
||||
|
||||
<p> -- Setup the overhead
|
||||
A2ADispatcher:SetSquadronOverhead( "Mineralnye", 1.2 )
|
||||
A2ADispatcher:SetSquadronOverhead( "Maykop", 1 )
|
||||
A2ADispatcher:SetSquadronOverhead( "Mozdok", 1.5 )
|
||||
A2ADispatcher:SetSquadronOverhead( "Sochi", 1 )
|
||||
A2ADispatcher:SetSquadronOverhead( "Novo", 1 )</p>
|
||||
|
||||
<p> -- Setup the Grouping
|
||||
A2ADispatcher:SetSquadronGrouping( "Mineralnye", 2 )
|
||||
A2ADispatcher:SetSquadronGrouping( "Sochi", 2 )
|
||||
A2ADispatcher:SetSquadronGrouping( "Novo", 3 )</p>
|
||||
|
||||
<p> -- Setup the Takeoff methods
|
||||
A2ADispatcher:SetSquadronTakeoff( "Mineralnye", AI<em>A2A</em>DISPATCHER.Takeoff.Air )
|
||||
A2ADispatcher:SetSquadronTakeoffInAir( "Sochi" )
|
||||
A2ADispatcher:SetSquadronTakeoffFromRunway( "Mozdok" )
|
||||
A2ADispatcher:SetSquadronTakeoffFromParkingCold( "Maykop" )
|
||||
A2ADispatcher:SetSquadronTakeoffFromParkingHot( "Novo" )</p>
|
||||
|
||||
<p> -- Setup the Landing methods
|
||||
A2ADispatcher:SetSquadronLandingAtRunway( "Mineralnye" )
|
||||
A2ADispatcher:SetSquadronLandingNearAirbase( "Sochi" )
|
||||
A2ADispatcher:SetSquadronLandingAtEngineShutdown( "Mozdok" )
|
||||
A2ADispatcher:SetSquadronLandingNearAirbase( "Maykop" )
|
||||
A2ADispatcher:SetSquadronLanding( "Novo", AI<em>A2A</em>DISPATCHER.Landing.AtRunway )</p>
|
||||
|
||||
|
||||
<p> -- CAP Squadron execution.
|
||||
CAPZoneEast = ZONE_POLYGON:New( "CAP Zone East", GROUP:FindByName( "CAP Zone East" ) )
|
||||
A2ADispatcher:SetSquadronCap( "Mineralnye", CAPZoneEast, 4000, 10000, 500, 600, 800, 900 )
|
||||
A2ADispatcher:SetSquadronCapInterval( "Mineralnye", 2, 30, 60, 1 )</p>
|
||||
|
||||
<p> CAPZoneWest = ZONE_POLYGON:New( "CAP Zone West", GROUP:FindByName( "CAP Zone West" ) )
|
||||
A2ADispatcher:SetSquadronCap( "Sochi", CAPZoneWest, 4000, 8000, 600, 800, 800, 1200, "BARO" )
|
||||
A2ADispatcher:SetSquadronCapInterval( "Sochi", 2, 30, 120, 1 )</p>
|
||||
|
||||
<p> CAPZoneMiddle = ZONE:New( "CAP Zone Middle")
|
||||
A2ADispatcher:SetSquadronCap( "Maykop", CAPZoneMiddle, 4000, 8000, 600, 800, 800, 1200, "RADIO" )
|
||||
A2ADispatcher:SetSquadronCapInterval( "Sochi", 2, 30, 120, 1 )</p>
|
||||
|
||||
<p> -- GCI Squadron execution.
|
||||
A2ADispatcher:SetSquadronGci( "Mozdok", 900, 1200 )
|
||||
A2ADispatcher:SetSquadronGci( "Novo", 900, 2100 )
|
||||
A2ADispatcher:SetSquadronGci( "Maykop", 900, 1200 )</p>
|
||||
|
||||
<h4>8.5.1. Script the EWR network</h4>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia20.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<h4>8.5.2. Script the AI_A2A_DISPATCHER object and configure it</h4>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia21.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<h4>8.5.3. Script the squadrons</h4>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia22.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<p>Create the squadrons using the <a href="##(AI_A2A_DISPATCHER).SetSquadron">AI<em>A2A</em>DISPATCHER.SetSquadron</a> objects using:</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="Zone.html##(ZONE)">Zone#ZONE</a> class to create a zone using a trigger zone set in the mission editor.</li>
|
||||
<li><a href="Zone.html##(ZONE_UNIT)">Zone#ZONE_UNIT</a> class to create a zone around a unit object.</li>
|
||||
<li><a href="Zone.html##(ZONE_GROUP)">Zone#ZONE_GROUP</a> class to create a zone around a group object.</li>
|
||||
<li><a href="Zone.html##(ZONE_POLYGON)">Zone#ZONE_POLYGON</a> class to create a polygon zone using a late activated group object.</li>
|
||||
</ul>
|
||||
|
||||
<p>Use the @{#AI<em>A2A</em>DISPATCHER.SetSquadronCap)() method to define CAP execution for the squadron, within the CAP zone defined.</p>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia26.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<p>Use the @{#AI<em>A2A</em>DISPATCHER.SetSquadronCapInterval)() method to define how many CAP groups can be airborne at the same time, and the timing intervals.</p>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia27.JPG" alt="Banner Image"/></p>
|
||||
|
||||
<p>Use the @{#AI<em>A2A</em>DISPATCHER.SetSquadronGci)() method to define GCI execution for the squadron.</p>
|
||||
|
||||
<h2>9. Q & A:</h2>
|
||||
|
||||
<h3>9.1. Which countries will be selected for each coalition?</h3>
|
||||
|
||||
<p>Which countries are assigned to a coalition influences which units are available to the coalition.
|
||||
For example because the mission calls for a EWR radar on the blue side the Ukraine might be chosen as a blue country
|
||||
@ -920,7 +1086,7 @@ so that the 55G6 EWR radar unit is available to blue. <br/>
|
||||
Some countries assign different tasking to aircraft, for example Germany assigns the CAP task to F-4E Phantoms but the USA does not. <br/>
|
||||
Therefore if F4s are wanted as a coalition’s CAP or GCI aircraft Germany will need to be assigned to that coalition. </p>
|
||||
|
||||
<h3>8.2.Country, type, load out, skill and skins for CAP and GCI aircraft?</h3>
|
||||
<h3>9.2.Country, type, load out, skill and skins for CAP and GCI aircraft?</h3>
|
||||
|
||||
<ul>
|
||||
<li>Note these can be from any countries within the coalition but must be an aircraft with one of the main tasks being “CAP”.</li>
|
||||
|
||||
@ -926,6 +926,9 @@ Use the method <a href="##(AI_PATROL_ZONE).ManageDamage">AI<em>PATROL</em>ZONE.M
|
||||
|
||||
|
||||
|
||||
|
||||
<p> This table contains the targets detected during patrol.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -2387,6 +2387,7 @@ The index of the DetectedItem.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(DETECTION_BASE).DetectedItemCount" >
|
||||
<strong>DETECTION_BASE.DetectedItemCount</strong>
|
||||
</a>
|
||||
|
||||
@ -1604,7 +1604,7 @@ A string defining the start state.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#string</em>
|
||||
<em></em>
|
||||
<a id="#(FSM)._StartState" >
|
||||
<strong>FSM._StartState</strong>
|
||||
</a>
|
||||
@ -1903,6 +1903,7 @@ A string defining the start state.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(FSM).current" >
|
||||
<strong>FSM.current</strong>
|
||||
</a>
|
||||
|
||||
@ -227,7 +227,6 @@ on defined intervals (currently every minute).</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(MOVEMENT).AliveUnits" >
|
||||
<strong>MOVEMENT.AliveUnits</strong>
|
||||
</a>
|
||||
@ -236,9 +235,6 @@ on defined intervals (currently every minute).</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Contains the counter how many units are currently alive</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -1073,7 +1073,7 @@ true if metric.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<em>#boolean</em>
|
||||
<a id="#(SETTINGS).Metric" >
|
||||
<strong>SETTINGS.Metric</strong>
|
||||
</a>
|
||||
|
||||
@ -822,6 +822,12 @@ and any spaces before and after the resulting name are removed.</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(SPAWN)._TranslateRotate">SPAWN:_TranslateRotate(SpawnIndex, SpawnRootX, SpawnRootY, SpawnX, SpawnY, SpawnAngle)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(SPAWN).uncontrolled">SPAWN.uncontrolled</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -2194,9 +2200,6 @@ The group that was spawned. You can use this group for further actions.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Don't repeat the group from Take-Off till Landing and back Take-Off by ReSpawning.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2729,9 +2732,6 @@ when nothing was spawned.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Overwrite unit names by default with group name.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2746,9 +2746,6 @@ when nothing was spawned.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> By default, no InitLimit</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2784,7 +2781,7 @@ when nothing was spawned.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<em></em>
|
||||
<a id="#(SPAWN).SpawnMaxGroups" >
|
||||
<strong>SPAWN.SpawnMaxGroups</strong>
|
||||
</a>
|
||||
@ -2801,7 +2798,7 @@ when nothing was spawned.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<em></em>
|
||||
<a id="#(SPAWN).SpawnMaxUnitsAlive" >
|
||||
<strong>SPAWN.SpawnMaxUnitsAlive</strong>
|
||||
</a>
|
||||
@ -3129,7 +3126,7 @@ Spawn_BE_KA50 = SPAWN:New( 'BE KA-50@RAMP-Ground Defense' ):Schedule( 600, 0.5 )
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#boolean</em>
|
||||
<em></em>
|
||||
<a id="#(SPAWN).SpawnUnControlled" >
|
||||
<strong>SPAWN.SpawnUnControlled</strong>
|
||||
</a>
|
||||
@ -3153,7 +3150,7 @@ Spawn_BE_KA50 = SPAWN:New( 'BE KA-50@RAMP-Ground Defense' ):Schedule( 600, 0.5 )
|
||||
|
||||
|
||||
|
||||
<p> Flag that indicates if all the Groups of the SpawnGroup need to be visible when Spawned.</p>
|
||||
<p> When the first Spawn executes, all the Groups need to be made visible before start.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
@ -3733,6 +3730,20 @@ True = Continue Scheduler</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(SPAWN).uncontrolled" >
|
||||
<strong>SPAWN.uncontrolled</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@ -436,6 +436,7 @@ ptional) The name of the new static.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(SPAWNSTATIC).SpawnIndex" >
|
||||
<strong>SPAWNSTATIC.SpawnIndex</strong>
|
||||
</a>
|
||||
|
||||
@ -510,7 +510,7 @@ based on the tasking capabilities defined in <a href="Task.html##(TASK)">Task#TA
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em><a href="Core.Cargo.html##(CARGO)">Core.Cargo#CARGO</a></em>
|
||||
<em></em>
|
||||
<a id="#(FSM_PROCESS).Cargo" >
|
||||
<strong>FSM_PROCESS.Cargo</strong>
|
||||
</a>
|
||||
@ -524,6 +524,7 @@ based on the tasking capabilities defined in <a href="Task.html##(TASK)">Task#TA
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(FSM_PROCESS).DeployZone" >
|
||||
<strong>FSM_PROCESS.DeployZone</strong>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 122 KiB After Width: | Height: | Size: 125 KiB |
|
Before Width: | Height: | Size: 124 KiB After Width: | Height: | Size: 122 KiB |
|
Before Width: | Height: | Size: 125 KiB After Width: | Height: | Size: 124 KiB |
|
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 72 KiB |