From 6f940fbf461bedd42cdb477faf076544c756eac7 Mon Sep 17 00:00:00 2001 From: Frank Date: Wed, 3 Jun 2020 17:33:14 +0200 Subject: [PATCH] Docs --- Moose Development/Moose/Ops/AirWing.lua | 58 ++++++++++++- Moose Development/Moose/Ops/Auftrag.lua | 100 +++++++++++++++++++++-- Moose Development/Moose/Ops/Squadron.lua | 4 +- 3 files changed, 153 insertions(+), 9 deletions(-) diff --git a/Moose Development/Moose/Ops/AirWing.lua b/Moose Development/Moose/Ops/AirWing.lua index 121b18ca9..e12e082c1 100644 --- a/Moose Development/Moose/Ops/AirWing.lua +++ b/Moose Development/Moose/Ops/AirWing.lua @@ -47,7 +47,63 @@ -- ![Banner Image](..\Presentations\AirWing\AIRWING_Main.jpg) -- -- # The AIRWING Concept --- +-- +-- An AIRWING consists of multiple SQUADRONS. These squadrons "live" in a WAREHOUSE, i.e. a physical structure that is connected to an airbase (airdrome, FRAP or ship). +-- For an airwing to be operational, it needs airframes, weapons/fuel and an airbase. +-- +-- # Create an Airwing +-- +-- ## Constructing the Airwing +-- +-- airwing=AIRWING:New("Warehouse Batumi", "8th Fighter Wing") +-- airwing:Start() +-- +-- The first parameter specified the warehouse, i.e. the static building housing the airwing (or the name of the aircraft carrier). The second parameter is optional +-- and sets an alias. +-- +-- ## Adding Squadrons +-- +-- At this point the airwing does not have any assets (aircraft). In order to add these, one needs to first define SQUADRONS. +-- +-- VFA151=SQUADRON:New("F-14 Group", 8, "VFA-151 (Vigilantes)") +-- VFA151:AddMissonCapability({AUFTRAG.Type.PATROL, AUFTRAG.Type.INTERCEPT}) +-- +-- airwing:AddSquadron(VFA151) +-- +-- This adds eight Tomcat groups beloning to VFA-151 to the airwing. This squadron has the ability to perform combat air patrols and intercepts. +-- +-- ## Adding Payloads +-- +-- Adding pure airframes is not enough. The aircraft also need weapons (and fuel) for certain missions. These must be given to the airwing from template groups +-- defined in the Mission Editor. +-- +-- -- F-14 payloads for CAP and INTERCEPT. Phoenix are first, sparrows are second choice. +-- airwing:NewPayload(GROUP:FindByName("F-14 Payload AIM-54C"), 2, {AUFTRAG.Type.INTERCEPT, AUFTRAG.Type.PATROL}, 80) +-- airwing:NewPayload(GROUP:FindByName("F-14 Payload AIM-7M"), 20, {AUFTRAG.Type.INTERCEPT, AUFTRAG.Type.PATROL}) +-- +-- This will add two AIM-54C and 20 AIM-7M payloads. +-- +-- If the airwing gets an intercept or patrol mission assigned, it will first use the AIM-54s. Once these are consumed, the AIM-7s are attached to the aircraft. +-- +-- When an airwing does not have a payload for a certain mission type, the mission cannot be carried out. +-- +-- You can set the number of payloads to "unlimited" by setting its quantity to -1. +-- +-- # Adding Missions +-- +-- Various mission types can be added easily via the AUFTRAG class. +-- +-- Once you created an AUFTRAG you can add it to the AIRWING with the :AddMission(mission) function. +-- +-- This mission will be put into the AIRWING queue. Once the mission start time is reached and all resources (airframes and pylons) are available, the mission is started. +-- If the mission stop time is over (and the mission is not finished), it will be cancelled and removed from the queue. This applies also to mission that were not even +-- started. +-- +-- # Command an Airwing +-- +-- An airwing can receive missions from a WINGCOMMANDER. See docs of that class for details. +-- +-- However, you are still free to add missions at anytime. -- -- -- @field #AIRWING diff --git a/Moose Development/Moose/Ops/Auftrag.lua b/Moose Development/Moose/Ops/Auftrag.lua index fdcdf5912..34b6cad08 100644 --- a/Moose Development/Moose/Ops/Auftrag.lua +++ b/Moose Development/Moose/Ops/Auftrag.lua @@ -120,44 +120,130 @@ -- As you probably know, setting tasks in DCS is often tedious. The AUFTRAG class significantly simplifies the necessary workflow by using optimized default parameters. -- -- You can think of an AUFTRAG as document, which contains the mission briefing, i.e. information about the target location, mission altitude, speed and various other parameters. --- This document can be handed over directly to a pilot (or multiple pilots) via the --- FLIGHTGROUP class. The pilots will then execute the mission. The AUFTRAG document can also be given to an AIRWING. The airwing will then determine the best assets --- (pilots and payloads) available for the job. One more up the food chain, an AUFTRAG can be passed to a WINGCOMMANDER. The wing commander will find the best AIRWING --- and pass the job over to it. +-- This document can be handed over directly to a pilot (or multiple pilots) via the FLIGHTGROUP class. The pilots will then execute the mission. +-- The AUFTRAG document can also be given to an AIRWING. The airwing will then determine the best assets (pilots and payloads) available for the job. +-- One more up the food chain, an AUFTRAG can be passed to a WINGCOMMANDER. The wing commander will find the best AIRWING and pass the job over to it. -- --- # Mission Types +-- # Airborne Missions +-- +-- Several mission types are supported by this class. -- -- ## Anti-Ship -- +-- An anti-ship mission can be created with the @{#AUFTRAG.NewANTISHIP}(*Target, Altitude*) function. +-- -- ## AWACS -- --- ## Tanker +-- An AWACS mission can be created with the @{#AUFTRAG.NewAWACS}() function. -- -- ## BAI -- +-- A BAI mission can be created with the @{#AUFTRAG.NewBAI}() function. +-- -- ## Bombing -- +-- A bombing mission can be created with the @{#AUFTRAG.NewBOMBING}() function. +-- -- ## Bombing Runway -- +-- A bombing runway mission can be created with the @{#AUFTRAG.NewBOMBRUNWAY}() function. +-- -- ## Bombing Carpet -- +-- A carpet bombing mission can be created with the @{#AUFTRAG.NewBOMBCARPET}() function. +-- -- ## CAP -- +-- A CAP mission can be created with the @{#AUFTRAG.NewCAP}() function. +-- -- ## CAS -- +-- A CAS mission can be created with the @{#AUFTRAG.NewCAS}() function. +-- -- ## Escort -- +-- An escort mission can be created with the @{#AUFTRAG.NewESCORT}() function. +-- -- ## FACA -- +-- An FACA mission can be created with the @{#AUFTRAG.NewFACA}() function. +-- -- ## Ferry -- +-- Not implemented yet. +-- -- ## Intercept -- --- ## +-- An intercept mission can be created with the @{#AUFTRAG.NewINTERCEPT}() function. +-- +-- ## Orbit +-- +-- An orbit mission can be created with the @{#AUFTRAG.NewORBIT}() function. +-- +-- ## PATROL +-- +-- An patrol mission can be created with the @{#AUFTRAG.NewPATROL}() function. +-- +-- ## RECON +-- +-- Not implemented yet. +-- +-- ## RESCUE HELO +-- +-- An rescue helo mission can be created with the @{#AUFTRAG.NewRESCUEHELO}() function. +-- +-- ## SEAD +-- +-- An SEAD mission can be created with the @{#AUFTRAG.NewSEAD}() function. +-- +-- ## STRIKE +-- +-- An strike mission can be created with the @{#AUFTRAG.NewSTRIKE}() function. +-- +-- ## Tanker +-- +-- A refueling tanker mission can be created with the @{#AUFTRAG.NewTANKER}() function. +-- +-- ## TROOPTRANSPORT +-- +-- A troop transport mission can be created with the @{#AUFTRAG.NewTROOPTRANSPORT}() function. +-- +-- # Ground Missions +-- +-- ## ARTY +-- +-- An arty mission can be created with the @{#AUFTRAG.NewARTY}() function. +-- +-- # Options and Parameters +-- +-- +-- # Assigning Missions +-- +-- An AUFTRAG can be assigned to groups, airwings or wingcommanders +-- +-- ## Group Level +-- +-- ### Flight Group +-- +-- Assigning an AUFTRAG to a flight groups is done via the @{Ops.FlightGroup#FLIGHTGROUP.AddMission} function. See FLIGHTGROUP docs for details. +-- +-- ### Navy Group +-- +-- Assigning an AUFTRAG to a navy groups is done via the @{Ops.NavyGroup#NAVYGROUP.AddMission} function. See NAVYGROUP docs for details. +-- +-- ## Airwing Level +-- +-- Adding an AUFTRAG to an airwing is done via the @{Ops.AirWing#AIRWING.AddMission} function. See AIRWING docs for further details. +-- +-- ## Wing Commander Level +-- +-- Assigning an AUFTRAG to a wing commander is done via the @{Ops.WingCommander#WINGCOMMANDER.AddMission} function. See WINGCOMMADER docs for details. -- -- -- # Events -- +-- The AUFTRAG class creates many useful (FSM) events, which can be used in the mission designers script. +-- -- -- # Examples -- diff --git a/Moose Development/Moose/Ops/Squadron.lua b/Moose Development/Moose/Ops/Squadron.lua index 9c4c8ed2e..8f65cf1d5 100644 --- a/Moose Development/Moose/Ops/Squadron.lua +++ b/Moose Development/Moose/Ops/Squadron.lua @@ -44,13 +44,15 @@ -- @field #number radioModu Radio modulation the squad uses. -- @extends Core.Fsm#FSM ---- Be surprised! +--- *It is unbelievable what a squadron of twelve aircraft did to tip the balance.* -- Adolf Galland -- -- === -- -- ![Banner Image](..\Presentations\Squadron\SQUADRON_Main.jpg) -- -- # The SQUADRON Concept +-- +-- A SQUADRON is essential part of an AIRWING and consists of **one** type of aircraft. -- -- --