Banner Image

Module Ops.Airboss

Ops - Manages aircraft CASE X recoveries for carrier operations (X=I, II, III).

The AIRBOSS class manages recoveries of human pilots and AI aircraft on aircraft carriers.

Main Features:

  • CASE I, II and III recoveries.
  • Supports human pilots as well as AI flight groups.
  • Automatic LSO grading including (optional) live grading while in the groove.
  • Different skill levels from on-the-fly tips for flight students to ziplip for pros. Can be set for each player individually.
  • Define recovery time windows with individual recovery cases in the same mission.
  • Option to let the carrier steam into the wind automatically.
  • Automatic TACAN and ICLS channel setting of carrier.
  • Separate radio channels for LSO and Marshal transmissions.
  • Voice over support for LSO and Marshal radio transmissions.
  • Advanced F10 radio menu including carrier info, weather, radio frequencies, TACAN/ICLS channels, player LSO grades, marking of zones etc.
  • Recovery tanker and refueling option via integration of Ops.RecoveryTanker class.
  • Rescue helicopter option via Ops.RescueHelo class.
  • Combine multiple human players to sections.
  • Many parameters customizable by convenient user API functions.
  • Multiple carrier support due to object oriented approach.
  • Unlimited number of players.
  • Persistence of player results (optional). LSO grading data is saved to csv file.
  • Trap sheet (optional).
  • Finite State Machine (FSM) implementation.

Supported Carriers:

Supported Aircraft:

At the moment, optimized parameters are available for the F/A-18C Hornet (Lot 20) and A-4E community mod as aircraft and the USS John C. Stennis as carrier.

The AV-8B Harrier, HMS Hermes, HMS Invincible, the USS Tarawa, USS America, HMAS Canberra, and Juan Carlos I are WIP. The AV-8B harrier and the LHA's and LHD can only be used together, i.e. these ships are the only carriers the harrier is supposed to land on and no other fixed wing aircraft (human or AI controlled) are supposed to land on these ships. Currently only Case I is supported. Case II/III take slightly different steps from the CVN carrier. However, if no offset is used for the holding radial this provides a very close representation of the V/STOL Case III, allowing for an approach to over the deck and a vertical landing.

Heatblur's mighty F-14B Tomcat has been added (March 13th 2019) as well. Same goes for the A version.

The DCS Supercarriers are also supported.

Discussion

If you have questions or suggestions, please visit the MOOSE Discord #ops-airboss channel. There you also find an example mission and the necessary voice over sound files. Check out the pinned messages.

Example Missions

Example missions can be found here. They contain the latest development Moose.lua file.

IMPORTANT

Some important restrictions (of DCS) you should be aware of:

  • Each player slot (client) should be in a separate group as DCS does only allow for sending messages to groups and not individual units.
  • Players are identified by their player name. Hence, ensure that no two player have the same name, e.g. "New Callsign", as this will lead to unexpected results.
  • The modex (tail number) of an aircraft should not be changed dynamically in the mission by a player. Unfortunately, there is no way to get this information via scripting API functions.
  • The A-4E-C mod needs easy comms activated to interact with the F10 radio menu.

Youtube Videos

AIRBOSS videos:

Jabbers Case I and III Recovery Tutorials:

Wags DCS Hornet Videos:

AV-8B Harrier and V/STOL Operations:


Author: funkyfranky LHA and LHD V/STOL additions by Pene

Special Thanks To Bankler

For his great Recovery Trainer mission and script! His work was the initial inspiration for this class. Also note that this implementation uses some routines for determining the player position in Case I recoveries he developed. Bankler was kind enough to allow me to add this to the class - thanks again!

Global(s)

Global AIRBOSS

Be the boss!


Banner Image

The AIRBOSS Concept

On a carrier, the AIRBOSS is guy who is really in charge - don't mess with him!

Recovery Cases

The AIRBOSS class supports all three commonly used recovery cases, i.e.

#AIRBOSS AIRBOSS

Be the boss!


Banner Image

The AIRBOSS Concept

On a carrier, the AIRBOSS is guy who is really in charge - don't mess with him!

Recovery Cases

The AIRBOSS class supports all three commonly used recovery cases, i.e.

  • CASE I during daytime and good weather (ceiling > 3000 ft, visibility > 5 NM),
  • CASE II during daytime but poor visibility conditions (ceiling > 1000 ft, visibility > 5NM),
  • CASE III when below Case II conditions and during nighttime (ceiling < 1000 ft, visibility < 5 NM).

That being said, this script allows you to use any of the three cases to be used at any time. Or, in other words, you need to specify when which case is safe and appropriate.

This is a lot of responsibility. You are the boss, but you need to make the right decisions or things will go terribly wrong!

Recovery windows can be set up via the AIRBOSS.AddRecoveryWindow function as explained below. With this it is possible to seamlessly (within reason!) switch recovery cases in the same mission.

CASE I

As mentioned before, Case I recovery is the standard procedure during daytime and good visibility conditions.

Holding Pattern

Banner Image

The graphic depicts a the standard holding pattern during a Case I recovery. Incoming aircraft enter the holding pattern, which is a counter clockwise turn with a diameter of 5 NM, at their assigned altitude. The holding altitude of the first stack is 2000 ft. The interval between stacks is 1000 ft.

Once a recovery window opens, the aircraft of the lowest stack commence their landing approach and the rest of the Marshal stack collapses, i.e. aircraft switch from their current stack to the next lower stack.

The flight that transitions form the holding pattern to the landing approach, it should leave the Marshal stack at the 3 position and make a left hand turn to the Initial position, which is 3 NM astern of the boat. Note that you need to be below 1300 feet to be registered in the initial zone. The altitude can be set via the function AIRBOSS.SetInitialMaxAlt(altitude) function. As described below, the initial zone can be smoked or flared via the AIRBOSS F10 Help radio menu.

Landing Pattern

Banner Image

Once the aircraft reaches the Initial, the landing pattern begins. The important steps of the pattern are shown in the image above. The AV-8B Harrier pattern is very similar, the only differences are as there is no angled deck there is no wake check. from the ninety you wil fly a straight approach offset 26 ft to port (left) of the tram line. The aim is to arrive abeam the landing spot in a stable hover at 120 ft with forward speed matched to the boat. From there the LSO will call "cleared to land". You then level cross to the tram line at the designated landing spot at land vertcally. When you stabalise over the landing spot LSO will call Stabalise to indicate you are centered at the correct spot.

CASE III

Banner Image

A Case III recovery is conducted during nighttime or when the visibility is below CASE II minima during the day. The holding position and the landing pattern are rather different from a Case I recovery as can be seen in the image above.

The first holding zone starts 21 NM astern the carrier at angels 6. The separation between the stacks is 1000 ft just like in Case I. However, the distance to the boat increases by 1 NM with each stack. The general form can be written as D=15+6+(N-1), where D is the distance to the boat in NM and N the number of the stack starting at N=1.

Once the aircraft of the lowest stack is allowed to commence to the landing pattern, it starts a descent at 4000 ft/min until it reaches the "Platform" at 5000 ft and ~19 NM DME. From there a shallower descent at 2000 ft/min should be performed. At an altitude of 1200 ft the aircraft should level out and "Dirty Up" (gear, flaps & hook down).

At 3 NM distance to the carrier, the aircraft should intercept the 3.5 degrees glideslope at the "Bullseye". From there the pilot should "follow the needles" of the ICLS.

CASE II

Banner Image

Case II is the common recovery procedure at daytime if visibility conditions are poor. It can be viewed as hybrid between Case I and III. The holding pattern is very similar to that of the Case III recovery with the difference the the radial is the inverse of the BRC instead of the FB. From the holding zone aircraft are follow the Case III path until they reach the Initial position 3 NM astern the boat. From there a standard Case I recovery procedure is in place.

Note that the image depicts the case, where the holding zone has an angle offset of 30 degrees with respect to the BRC. This is optional. Commonly used offset angels are 0 (no offset), +-15 or +-30 degrees. The AIRBOSS class supports all these scenarios which are used during Case II and III recoveries.


The F10 Radio Menu

The F10 radio menu can be used to post requests to Marshal but also provides information about the player and carrier status. Additionally, helper functions can be called.

Banner Image

By default, the script creates a submenu "Airboss" in the "F10 Other ..." menu and each #AIRBOSS carrier gets its own submenu. If you intend to have only one carrier, you can simplify the menu structure using the AIRBOSS.SetMenuSingleCarrier function, which will create all carrier specific menu entries directly in the "Airboss" submenu. (Needless to say, that if you enable this and define multiple carriers, the menu structure will get completely screwed up.)

Root Menu

Banner Image

The general structure

  • F1 Help... (Help submenu, see below.)
  • F2 Kneeboard... (Kneeboard submenu, see below. Carrier information, weather report, player status.)
  • F3 Request Marshal
  • F4 Request Commence
  • F5 Request Refueling
  • F6 Spinning
  • F7 Emergency Landing
  • F8 [Reset My Status]

Request Marshal

This radio command can be used to request a stack in the holding pattern from Marshal. Necessary conditions are that the flight is inside the Carrier Controlled Area (CCA) (see AIRBOSS.SetCarrierControlledArea).

Marshal will assign an individual stack for each player group depending on the current or next open recovery case window. If multiple players have registered as a section, the section lead will be assigned a stack and is responsible to guide his section to the assigned holding position.

Request Commence

This command can be used to request commencing from the marshal stack to the landing pattern. Necessary condition is that the player is in the lowest marshal stack and that the number of aircraft in the landing pattern is smaller than four (or the number set by the mission designer).

Banner Image

The image displays the standard Case I Marshal pattern recovery. Pilots are supposed to fly a clockwise circle and descent between the 3 and 1 positions.

Commence should be performed at around the 3 position. If the pilot is in the lowest Marshal stack, and flies through this area, he is automatically cleared for the landing pattern. In other words, there is no need for the "Request Commence" radio command. The zone can be marked via smoke or flared using the player's F10 radio menu.

A player can also request commencing if he is not registered in a marshal stack yet. If the pattern is free, Marshal will allow him to directly enter the landing pattern. However, this is only possible when the Airboss has a nice day - see AIRBOSS.SetAirbossNiceGuy.

Request Refueling

If a recovery tanker has been set up via the AIRBOSS.SetRecoveryTanker, the player can request refueling at any time. If currently in the marshal stack, the stack above will collapse. The player will be informed if the tanker is currently busy or going RTB to refuel itself at its home base. Once the re-fueling is complete, the player has to re-register to the marshal stack.

Spinning

If the pattern is full, players can go into the spinning pattern. This step is only allowed, if the player is in the pattern and his next step is initial, break entry, early/late break. At this point, the player should climb to 1200 ft a fly on the port side of the boat to go back to the initial again.

If a player is in the spin pattern, flights in the Marshal queue should hold their altitude and are not allowed into the pattern until the spinning aircraft proceeds.

Once the player reaches a point 100 meters behind the boat and at least 1 NM port, his step is set to "Initial" and he can resume the normal pattern approach.

If necessary, the player can call "Spinning" again when in the above mentioned steps.

Emergency Landing

Request an emergency landing, i.e. bypass all pattern steps and go directly to the final approach.

All section members are supposed to follow. Player (or section lead) is removed from all other queues and automatically added to the landing pattern queue.

If this command is called while the player is currently on the carrier, he will be put in the bolter pattern. So the next expected step after take of is the abeam position. This allows for quick landing training exercises without having to go through the whole pattern.

The mission designer can forbid this option my setting AIRBOSS.SetEmergencyLandings(false) in the script.

[Reset My Status]

This will reset the current player status. If player is currently in a marshal stack, he will be removed from the marshal queue and the stack above will collapse. The player needs to re-register later if desired. If player is currently in the landing pattern, he will be removed from the pattern queue.

Help Menu

Banner Image

This menu provides commands to help the player.

Mark Zones Submenu

Banner Image

These commands can be used to mark marshal or landing pattern zones.

  • Smoke Pattern Zones Smoke is used to mark the landing pattern zone of the player depending on his recovery case. For Case I this is the initial zone. For Case II/III and three these are the Platform, Arc turn, Dirty Up, Bullseye/Initial zones as well as the approach corridor.
  • Flare Pattern Zones Similar to smoke but uses flares to mark the pattern zones.
  • Smoke Marshal Zone This smokes the surrounding area of the currently assigned Marshal zone of the player. Player has to be registered in Marshal queue.
  • Flare Marshal Zone Similar to smoke but uses flares to mark the Marshal zone.

Note that the smoke lasts ~5 minutes but the zones are moving along with the carrier. So after some time, the smoke gives shows you a picture of the past.

Banner Image

Skill Level Submenu

Banner Image

The player can choose between three skill or difficulty levels.

  • Flight Student: The player receives tips at certain stages of the pattern, e.g. if he is at the right altitude, speed, etc.
  • Naval Aviator: Less tips are show. Player should be familiar with the procedures and its aircraft parameters.
  • TOPGUN Graduate: Only very few information is provided to the player. This is for the pros.
  • Hints On/Off: Toggle displaying hints.

My Status

Banner Image

This command provides information about the current player status. For example, his current step in the pattern.

Attitude Monitor

Banner Image

This command displays the current aircraft attitude of the player aircraft in short intervals as message on the screen. It provides information about current pitch, roll, yaw, orientation of the plane with respect to the carrier's orientation (Gamma) etc.

If you are in the groove, current lineup and glideslope errors are displayed and you get an on-the-fly LSO grade.

LSO Radio Check

LSO will transmit a short message on his radio frequency. See AIRBOSS.SetLSORadio. Note that in the A-4E you will not hear the message unless you are in the pattern.

Marshal Radio Check

Marshal will transmit a short message on his radio frequency. See AIRBOSS.SetMarshalRadio.

Subtitles On/Off

This command toggles the display of radio message subtitles if no radio relay unit is used. By default subtitles are on. Note that subtitles for radio messages which do not have a complete voice over are always displayed.

Trapsheet On/Off

Each player can activated or deactivate the recording of his flight data (AoA, glideslope, lineup, etc.) during his landing approaches. Note that this feature also has to be enabled by the mission designer.

Kneeboard Menu

Banner Image

The Kneeboard menu provides information about the carrier, weather and player results.

Results Submenu

Banner Image

Here you find your LSO grading results as well as scores of other players.

  • Greenie Board lists average scores of all players obtained during landing approaches.
  • My LSO Grades lists all grades the player has received for his approaches in this mission.
  • Last Debrief shows the detailed debriefing of the player's last approach.

Carrier Info

Banner Image

Information about the current carrier status is displayed. This includes current BRC, FB, LSO and Marshal frequencies, list of next recovery windows.

Weather Report

Banner Image

Displays information about the current weather at the carrier such as QFE, wind and temperature.

For missions using static weather, more information such as cloud base, thickness, precipitation, visibility distance, fog and dust are displayed. If your mission uses dynamic weather, you can disable this output via the AIRBOSS.SetStaticWeather(false) function.

Set Section

With this command, you can define a section of human flights. The player who issues the command becomes the section lead and all other human players within a radius of 100 meters become members of the section.

The responsibilities of the section leader are:

  • To request Marshal. The section members are not allowed to do this and have to follow the lead to his assigned stack.
  • To lead the right way to the pattern if the flight is allowed to commence.
  • The lead is also the only one who can request commence if the flight wants to bypass the Marshal stack.

Each time the command is issued by the lead, the complete section is set up from scratch. Members which are not inside the 100 m radius any more are removed and/or new members which are now in range are added.

If a section member issues this command, it is removed from the section of his lead. All flights which are not yet in another section will become members.

The default maximum size of a section is two human players. This can be adjusted by the AIRBOSS.SetMaxSectionSize(size) function. The maximum allowed size is four.

Marshal Queue

Banner Image

Lists all flights currently in the Marshal queue including their assigned stack, recovery case and Charlie time estimate. By default, the number of available Case I stacks is three, i.e. at angels 2, 3 and 4. Usually, the recovery thanker orbits at angels 6. The number of available stacks can be set by the AIRBOSS.SetMaxMarshalStack function.

The default number of human players per stack is two. This can be set via the AIRBOSS.SetMaxFlightsPerStack function but has to be between one and four.

Due to technical reasons, each AI group always gets its own stack. DCS does not allow to control the AI in a manner that more than one group per stack would make sense unfortunately.

Pattern Queue

Banner Image

Lists all flights currently in the landing pattern queue showing the time since they entered the pattern. By default, a maximum of four flights is allowed to enter the pattern. This can be set via the AIRBOSS.SetMaxLandingPattern function.

Waiting Queue

Lists all flights currently waiting for a free Case I Marshal stack. Note, stacks are limited only for Case I recovery ops but not for Case II or III. If the carrier is switches recovery ops form Case I to Case II or III, all waiting flights will be assigned a stack.

Landing Signal Officer (LSO)

The LSO will first contact you on his radio channel when you are at the the abeam position (Case I) with the phrase "Paddles, contact.". Once you are in the groove the LSO will ask you to "Call the ball." and then acknowledge your ball call by "Roger Ball."

During the groove the LSO will give you advice if you deviate from the correct landing path. These advices will be given when you are

  • too low or too high with respect to the glideslope,
  • too fast or too slow with respect to the optimal AoA,
  • too far left or too far right with respect to the lineup of the (angled) runway.

LSO Grading

LSO grading starts when the player enters the groove. The flight path and aircraft attitude is evaluated at certain steps (distances measured from rundown):

  • X At the Start (0.75 NM = 1390 m).
  • IM In the Middle (0.5 NM = 926 m), middle one third of the glideslope.
  • IC In Close (0.25 NM = 463 m), last one third of the glideslope.
  • AR At the Ramp (0.027 NM = 50 m).
  • IW In the Wires (at the landing position).

Grading at each step includes the above calls, i.e.

  • Lined Up Left or Right: LUL, LUR
  • Too High or too LOw: H, LO
  • Too Fast or too SLOw: F, SLO
  • OverShoot: OS, only referenced during X
  • Fly through glideslope down or up: \ , /, advisory only
  • Drift Left or Right:DL, DR, advisory only
  • Angled Approach: Angled approach (wings level and LUL): AA, advisory only

Each grading, x, is subdivided by

  • (x): parenthesis, indicating "a little" for a minor deviation and
  • _x_: underline, indicating "a lot" for major deviations.

The position at the landing event is analyzed and the corresponding trapped wire calculated. If no wire was caught, the LSO will give the bolter call.

If a player is significantly off from the ideal parameters from IC to AR, the LSO will wave the player off. Thresholds for wave off are

  • Line up error > 3.0 degrees left or right and/or
  • Glideslope error < -1.2 degrees or > 1.8 degrees and/or
  • AOA depending on aircraft type and only applied if skill level is "TOPGUN graduate".

Banner Image

Line up and glideslope error thresholds were tested extensively using VFA-113 Stingers LSO Mod, if the aircraft is outside the red box. In the picture above, blue numbers denote the line up thresholds while the blacks refer to the glideslope.

A wave off is called, when the aircraft is outside the red rectangle. The measurement stops already ~50 m before the rundown, since the error in the calculation increases the closer the aircraft gets to the origin/reference point.

The optimal glideslope is assumed to be 3.5 degrees leading to a touch down point between the second and third wire. The height of the carrier deck and the exact wire locations are taken into account in the calculations.

Pattern Waveoff

The player's aircraft position is evaluated at certain critical locations in the landing pattern. If the player is far off from the ideal approach, the LSO will issue a pattern wave off. Currently, this is only implemented for Case I recoveries and the Case I part in the Case II recovery, i.e.

  • Break Entry
  • Early Break
  • Late Break
  • Abeam
  • Ninety
  • Wake
  • Groove

At these points it is also checked if a player comes too close to another aircraft ahead of him in the pattern.

Grading Points

Currently grades are given by as follows

  • 5.0 Points _OK_: "Okay underline", given only for a perfect pass, i.e. when no deviations at all were observed by the LSO. The unicorn!
  • 4.0 Points OK: "Okay pass" when only minor () deviations happened.
  • 3.0 Points (OK): "Fair pass", when only "normal" deviations were detected.
  • 2.0 Points --: "No grade", for larger deviations.

Furthermore, we have the cases:

  • 2.5 Points B: "Bolter", when the player landed but did not catch a wire.
  • 2.0 Points WOP: "Pattern Wave-Off", when pilot was far away from where he should be in the pattern.
  • 2.0 Points OWO: "Own Wave-Off**, when pilot flies past the deck without touching it.
  • 1.0 Points WO: "Technique Wave-Off": Player got waved off in the final parts of the groove.
  • 1.0 Points LIG: "Long In the Groove", when pilot extents the downwind leg too far and screws up the timing for the following aircraft.
  • 0.0 Points CUT: "Cut pass", when player was waved off but landed anyway. In addition if a V/STOL lands without having been Cleared to Land.

Foul Deck Waveoff

A foul deck waveoff is called by the LSO if an aircraft is detected within the landing area when an approaching aircraft is at position IM-IC during Case I/II operations, or with an aircraft approaching the 3/4 NM during Case III operations.

The approaching aircraft will be notified via LSO radio comms and is supposed to overfly the landing area to enter the Bolter pattern. This pass is not graded.


Scripting

Writing a basic script is easy and can be done in two lines.

local airbossStennis=AIRBOSS:New("USS Stennis", "Stennis")
airbossStennis:Start()

The first line creates and AIRBOSS object via the AIRBOSS.New(carriername, alias) constructor. The first parameter carriername is name of the carrier unit as defined in the mission editor. The second parameter alias is optional. This name will, e.g., be used for the F10 radio menu entry. If not given, the alias is identical to the carriername of the first parameter.

This simple script initializes a lot of parameters with default values:

The second line starts the AIRBOSS class. If you set options this should happen after the AIRBOSS.New and before AIRBOSS.Start command.

However, good mission planning involves also planning when aircraft are supposed to be launched or recovered. The definition of case specific recovery ops within the same mission is described in the next section.

Recovery Windows

Recovery of aircraft is only allowed during defined time slots. You can define these slots via the AIRBOSS.AddRecoveryWindow(start, stop, case, holdingoffset) function. The parameters are:

  • start: The start time as a string. For example "8:00" for a window opening at 8 am. Or "13:30+1" for half past one on the next day. Default (nil) is ASAP.
  • stop: Time when the window closes as a string. Same format as start. Default is 90 minutes after start time.
  • case: The recovery case during that window (1, 2 or 3). Default 1.
  • holdingoffset: Holding offset angle in degrees. Only for Case II or III recoveries. Default 0 deg. Common +-15 deg or +-30 deg.

If recovery is closed, AI flights will be send to marshal stacks and orbit there until the next window opens. Players can request marshal via the F10 menu and will also be given a marshal stack. Currently, human players can request commence via the F10 radio regardless of whether a window is open or not and will be allowed to enter the pattern (if not already full). This will probably change in the future.

At the moment there is no automatic recovery case set depending on weather or daytime. So it is the AIRBOSS (i.e. you as mission designer) who needs to make that decision. It is probably a good idea to synchronize the timing with the waypoints of the carrier. For example, setting up the waypoints such that the carrier already has turning into the wind, when a recovery window opens.

The code for setting up multiple recovery windows could look like this

local airbossStennis=AIRBOSS:New("USS Stennis", "Stennis")
airbossStennis:AddRecoveryWindow("8:30", "9:30", 1)
airbossStennis:AddRecoveryWindow("12:00", "13:15", 2, 15)
airbossStennis:AddRecoveryWindow("23:30", "00:30+1", 3, -30)
airbossStennis:Start()

This will open a Case I recovery window from 8:30 to 9:30. Then a Case II recovery from 12:00 to 13:15, where the holing offset is +15 degrees wrt BRC. Finally, a Case III window opens 23:30 on the day the mission starts and closes 0:30 on the following day. The holding offset is -30 degrees wrt FB.

Note that incoming flights will be assigned a holding pattern for the next opening window case if no window is open at the moment. So in the above example, all flights incoming after 13:15 will be assigned to a Case III marshal stack. Therefore, you should make sure that no flights are incoming long before the next window opens or adjust the recovery planning accordingly.

The following example shows how you set up a recovery window for the next week:

for i=0,7 do
   airbossStennis:AddRecoveryWindow(string.format("08:05:00+%d", i), string.format("08:50:00+%d", i))
end

Turning into the Wind

For each recovery window, you can define if the carrier should automatically turn into the wind. This is done by passing one or two additional arguments to the AIRBOSS.AddRecoveryWindow function:

airbossStennis:AddRecoveryWindow("8:30", "9:30", 1, nil, true, 20)

Setting the fifth parameter to true enables the automatic turning into the wind. The sixth parameter (here 20) specifies the speed in knots the carrier will go so that to total wind above the deck corresponds to this wind speed. For example, if the is blowing with 5 knots, the carrier will go 15 knots so that the total velocity adds up to the specified 20 knots for the pilot.

The carrier will steam into the wind for as long as the recovery window is open. The distance up to which possible collisions are detected can be set by the AIRBOSS.SetCollisionDistance function.

However, the AIRBOSS scans the type of the surface up to 5 NM in the direction of movement of the carrier. If he detects anything but deep water, he will stop the current course and head back to the point where he initially turned into the wind.

The same holds true after the recovery window closes. The carrier will head back to the place where he left its assigned route and resume the path to the next waypoint defined in the mission editor.

Note that the carrier will only head into the wind, if the wind direction is different by more than 5° from the current heading of the carrier (the angled runway, if any, fis taken into account here).


Persistence of Player Results

LSO grades of players can be saved to disk and later reloaded when a new mission is started.

Prerequisites

Important By default, DCS does not allow for writing data to files. Therefore, one first has to comment out the line "sanitizeModule('io')" and "sanitizeModule('lfs')", i.e.

do
  sanitizeModule('os')
  --sanitizeModule('io')    -- required for saving files
  --sanitizeModule('lfs')   -- optional for setting the default path to your "Saved Games\DCS" folder
  require = nil
  loadlib = nil
end

in the file "MissionScripting.lua", which is located in the subdirectory "Scripts" of your DCS installation root directory.

WARNING Desanitizing the "io" and "lfs" modules makes your machine or server vulnerable to attacks from the outside! Use this at your own risk.

Save Results

Saving asset data to file is achieved by the AIRBOSS.Save(path, filename) function.

The parameter path specifies the path on the file system where the player grades are saved. If you do not specify a path, the file is saved your the DCS installation root directory if the lfs module is not desanizied or your "Saved Games\DCS" folder in case you did desanitize the lfs module.

The parameter filename is optional and defines the name of the saved file. By default this is automatically created from the AIRBOSS carrier name/alias, i.e. "Airboss-USS Stennis_LSOgrades.csv", if the alias is "USS Stennis".

In the easiest case, you desanitize the io and lfs modules and just add the line

airbossStennis:Save()

If you want to specify an explicit path you can do this by

airbossStennis:Save("D:\\My Airboss Data\\")

This will save all player grades to in "D:\My Airboss Data\Airboss-USS Stennis_LSOgrades.csv".

Automatic Saving

The player grades can be saved automatically after each graded player pass via the AIRBOSS.SetAutoSave(path, filename) function. Again the parameters path and filename are optional. In the simplest case, you desanitize the lfs module and just add

airbossStennis:SetAutoSave()

Note that the the stats are saved after the final grade has been given, i.e. the player has landed on the carrier. After intermediate results such as bolters or waveoffs the stats are not automatically saved.

In case you want to specify an explicit path, you can write

airbossStennis:SetAutoSave("D:\\My Airboss Data\\")

Results Output

Banner Image

The results file is stored as comma separated file. The columns are

  • Name: The player name.
  • Pass: A running number counting the passes of the player
  • Points Final: The final points (i.e. when the player has landed). This is the average over all previous bolters or waveoffs, if any.
  • Points Pass: The points of each pass including bolters and waveoffs.
  • Grade: LSO grade.
  • Details: Detailed analysis of deviations within the groove.
  • Wire: Trapped wire, if any.
  • Tgroove: Time in the groove in seconds (not applicable during Case III).
  • Case: The recovery case operations in progress during the pass.
  • Wind: Wind on deck in knots during approach.
  • Modex: Tail number of the player.
  • Airframe: Aircraft type used in the recovery.
  • Carrier Type: Type name of the carrier.
  • Carrier Name: Name/alias of the carrier.
  • Theatre: DCS map.
  • Mission Time: Mission time at the end of the approach.
  • Mission Date: Mission date in yyyy/mm/dd format.
  • OS Date: Real life date from os.date(). Needs os to be desanitized.

Load Results

Loading player grades from file is achieved by the AIRBOSS.Load(path, filename) function. The parameter path specifies the path on the file system where the data is loaded from. If you do not specify a path, the file is loaded from your the DCS installation root directory or, if lfs was desanitized from you "Saved Games\DCS" directory. The parameter filename is optional and defines the name of the file to load. By default this is automatically generated from the AIBOSS carrier name/alias, for example "Airboss-USS Stennis_LSOgrades.csv".

Note that the AIRBOSS FSM must not be started in order to load the data. In other words, loading should happen after the AIRBOSS.New command is specified in the code but before the AIRBOSS.Start command is given.

The easiest was to load player results is

airbossStennis:New("USS Stennis")
airbossStennis:Load()
airbossStennis:SetAutoSave()
-- Additional specification of parameters such as recovery windows etc, if required.
airbossStennis:Start()

This sequence loads all available player grades from the default file and automatically saved them when a player received a (final) grade. Again, if lfs was desanitized, the files are save to and loaded from the "Saved Games\DCS" directory. If lfs was not desanitized, the DCS root installation folder is the default path.

Trap Sheet

Important aircraft attitude parameters during the Groove can be saved to file for later analysis. This also requires the io and optionally lfs modules to be desanitized.

In the script you have to add the AIRBOSS.SetTrapSheet(path) function to activate this feature.

Banner Image

Data the is written to a file in csv format and contains the following information:

  • Time: time in seconds since start.
  • Rho: distance from rundown to player aircraft in NM.
  • X : distance parallel to the carrier in meters.
  • Z : distance perpendicular to the carrier in meters.
  • Alt: altitude of player aircraft in feet.
  • AoA: angle of attack in degrees.
  • GSE: glideslope error in degrees.
  • LUE: lineup error in degrees.
  • Vtot: total velocity of player aircraft in knots.
  • Vy: vertical (descent) velocity in ft/min.
  • Gamma: angle between vector of aircraft nose and vector point in the direction of the carrier runway in degrees.
  • Pitch: pitch angle of player aircraft in degrees.
  • Roll: roll angle of player aircraft in degrees.
  • Yaw: yaw angle of player aircraft in degrees.
  • Step: Step in the groove.
  • Grade: Current LSO grade.
  • Points: Current points for the pass.
  • Details: Detailed grading analysis.

Lineup Error

Banner Image

The graph displays the lineup error (LUE) as a function of the distance to the carrier.

The pilot approaches the carrier from the port side, LUE>0°, at a distance of ~1 NM. At the beginning of the groove (X), he significantly overshoots to the starboard side (LUE<5°). In the middle (IM), he performs good corrections and smoothly reduces the lineup error. Finally, at a distance of ~0.3 NM (IC) he has corrected his lineup with the runway to a reasonable level, |LUE|<0.5°.

Glideslope Error

Banner Image

The graph displays the glideslope error (GSE) as a function of the distance to the carrier.

In this case the pilot already enters the groove (X) below the optimal glideslope. He is not able to correct his height in the IM part and stays significantly too low. In close, he performs a harsh correction to gain altitude and ends up even slightly too high (GSE>0.5°). At his point further corrections are necessary.

Angle of Attack

Banner Image

The graph displays the angle of attack (AoA) as a function of the distance to the carrier.

The pilot starts off being on speed after the ball call. Then he get way to fast troughout the most part of the groove. He manages to correct this somewhat short before touchdown.


Sound Files

An important aspect of the AIRBOSS is that it uses voice overs for greater immersion. The necessary sound files can be obtained from the MOOSE Discord in the #ops-airboss channel. Check out the pinned messages.

However, including sound files into a new mission is tedious as these usually need to be included into the mission miz file via (unused) triggers.

The default location inside the miz file is "l10n/DEFAULT/". But simply opening the miz file with e.g. 7-zip and copying the files into that folder does not work. The next time the mission is saved, files not included via trigger are automatically removed by DCS.

However, if you create a new folder inside the miz file, which contains the sounds, it will not be deleted and can be used. The location of the sound files can be specified via the AIRBOSS.SetSoundfilesFolder(folderpath) function. The parameter folderpath defines the location of the sound files folder within the mission miz file.

Banner Image

For example as

airbossStennis:SetSoundfilesFolder("Airboss Soundfiles/")

Carrier Specific Voice Overs

It is possible to use different sound files for different carriers. If you have set up two (or more) AIRBOSS objects at different carriers - say Stennis and Tarawa - each carrier would use the files in the specified directory, e.g.

airbossStennis:SetSoundfilesFolder("Airboss Soundfiles Stennis/")
airbossTarawa:SetSoundfilesFolder("Airboss Soundfiles Tarawa/")

Sound Packs

The AIRBOSS currently has two different "sound packs" for LSO and three different "sound Packs" for Marshal radios. These contain voice overs by different actors. These can be set by AIRBOSS.SetVoiceOversLSOByRaynor() and AIRBOSS.SetVoiceOversMarshalByRaynor(). These are the default settings. The other sound files can be set by AIRBOSS.SetVoiceOversLSOByFF(), AIRBOSS.SetVoiceOversMarshalByGabriella() and AIRBOSS.SetVoiceOversMarshalByFF(). Also combinations can be used, e.g.

airbossStennis:SetVoiceOversLSOByFF()
airbossStennis:SetVoiceOversMarshalByRaynor()

In this example LSO voice overs by FF and Marshal voice overs by Raynor are used.

Note that this only initializes the correct parameters parameters of sound files, i.e. the duration. The correct files have to be in the directory set by the AIRBOSS.SetSoundfilesFolder(folder) function.

How To Use Your Own Voice Overs

If you have a set of AIRBOSS sound files recorded or got it from elsewhere it is possible to use those instead of the default ones. I recommend to use exactly the same file names as the original sound files have.

However, the timing is critical! As sometimes sounds are played directly after one another, e.g. by saying the modex but also on other occations, the airboss script has a radio queue implemented (actually two - one for the LSO and one for the Marshal/Airboss radio). By this it is automatically taken care that played messages are not overlapping and played over each other. The disadvantage is, that the script needs to know the exact duration of each voice over. For the default sounds this is hard coded in the source code. For your own files, you need to give that bit of information to the script via the AIRBOSS.SetVoiceOver(radiocall, duration, subtitle, subduration, filename, suffix) function. Only the first two parameters radiocall and duration are usually important to adjust here.

For example, if you want to change the LSO "Call the Ball" and "Roger Ball" calls:

airbossStennis:SetVoiceOver(airbossStennis.LSOCall.CALLTHEBALL, 0.6)
airbossStennis:SetVoiceOver(airbossStennis.LSOCall.ROGERBALL, 0.7)

Again, changing the file name, subtitle, subtitle duration is not required if you name the file exactly like the original one, which is this case would be "LSO-RogerBall.ogg".

The Radio Dilemma

DCS offers two (actually three) ways to send radio messages. Each one has its advantages and disadvantages and it is important to understand the differences.

Transmission via Command

In principle, the best way to transmit messages is via the TransmitMessage command. This method has the advantage that subtitles can be used and these subtitles are only displayed to the players who dialed in the same radio frequency as used for the transmission. However, this method unfortunately only works if the sending unit is an aircraft. Therefore, it is not usable by the AIRBOSS per se as the transmission comes from a naval unit (i.e. the carrier).

As a workaround, you can put an aircraft, e.g. a Helicopter on the deck of the carrier or another ship of the strike group. The aircraft should be set to uncontrolled and maybe even to immortal. With the AIRBOSS.SetRadioUnitName(unitname) function you can use this unit as "radio repeater" for both Marshal and LSO radio channels. However, this might lead to interruptions in the transmission if both channels transmit simultaniously. Therefore, it is better to assign a unit for each radio via the AIRBOSS.SetRadioRelayLSO(unitname) and AIRBOSS.SetRadioRelayMarshal(unitname) functions.

Of course you can also use any other aircraft in the vicinity of the carrier, e.g. a rescue helo or a recovery tanker. It is just important that this unit is and stays close the the boat as the distance from the sender to the receiver is modeled in DCS. So messages from too far away might not reach the players.

Note that not all radio messages the airboss sends have voice overs. Therefore, if you use a radio relay unit, users should not disable the subtitles in the DCS game menu.

Transmission via Trigger

Another way to broadcast messages is via the radio transmission trigger. This method can be used for all units (land, air, naval). However, messages cannot be subtitled. Therefore, subtitles are displayed to the players via normal textout messages. The disadvantage is that is is impossible to know which players have the right radio frequencies dialed in. Therefore, subtitles of the Marshal radio calls are displayed to all players inside the CCA. Subtitles on the LSO radio frequency are displayed to all players in the pattern.

Sound to User

The third way to play sounds to the user via the outsound trigger. These sounds are not coming from a radio station and therefore can be heard by players independent of their actual radio frequency setting. The AIRBOSS class uses this method to play sounds to players which are of a more "private" nature - for example when a player has left his assigned altitude in the Marshal stack. Often this is the modex of the player in combination with a textout messaged displayed on screen.

If you want to use this method for all radio messages you can enable it via the AIRBOSS.SetUserSoundRadio() function. This is the analogue of activating easy comms in DCS.

Note that this method is used for all players who are in the A-4E community mod as this mod does not have the ability to use radios due to current DCS restrictions. Therefore, A-4E drivers will hear all radio transmissions from the Marshal/Airboss and all LSO messages as soon as their commence the pattern.


AI Handling

The #AIRBOSS class allows to handle incoming AI units and integrate them into the marshal and landing pattern.

By default, incoming carrier capable aircraft which are detecting inside the Carrier Controlled Area (CCA) and approach the carrier by more than 5 NM are automatically guided to the holding zone. Each AI group gets its own marshal stack in the holding pattern. Once a recovery window opens, the AI group of the lowest stack is transitioning to the landing pattern and the Marshal stack collapses.

If no AI handling is desired, this can be turned off via the AIRBOSS.SetHandleAIOFF function.

In case only specifc AI groups shall be excluded, it can be done by adding the groups to a set, e.g.

-- AI groups explicitly excluded from handling by the Airboss
local CarrierExcludeSet=SET_GROUP:New():FilterPrefixes("E-2D Wizard Group"):FilterStart()
AirbossStennis:SetExcludeAI(CarrierExcludeSet)

Similarly, to the AIRBOSS.SetExcludeAI function, AI groups can be explicitly included via the AIRBOSS.SetSquadronAI function. If this is used, only the included groups are handled by the AIRBOSS.

Keep the Deck Clean

Once the AI groups have landed on the carrier, they can be despawned automatically after they shut down their engines. This is achieved by the AIRBOSS.SetDespawnOnEngineShutdown() function.

Refueling

AI groups in the marshal pattern can be send to refuel at the recovery tanker or if none is defined to the nearest divert airfield. This can be enabled by the AIRBOSS.SetRefuelAI(lowfuelthreshold). The parameter lowfuelthreshold is the threshold of fuel in percent. If the fuel drops below this value, the group will go for refueling. If refueling is performed at the recovery tanker, the group will return to the marshal stack when done. The aircraft will not return from the divert airfield however.

Note that this feature is not enabled by default as there might be bugs in DCS that prevent a smooth refueling of the AI. Enable at your own risk.

Respawning - DCS Landing Bug

AI groups that enter the CCA are usually guided to Marshal stack. However, due to DCS limitations they might not obey the landing task if they have another airfield as departure and/or destination in their mission task. Therefore, AI groups can be respawned when detected in the CCA. This should clear all other airfields and allow the aircraft to land on the carrier. This is achieved by the AIRBOSS.SetRespawnAI() function.

Known Issues

Dealing with the DCS AI is a big challenge and there is only so much one can do. Please bear this in mind!

Pattern Updates

The holding position of the AI is updated regularly when the carrier has changed its position by more then 2.5 NM or changed its course significantly. The patterns are realized by orbit or racetrack patterns of the DCS scripting API. However, when the position is updated or the marshal stack collapses, it comes to disruptions of the regular orbit because a new waypoint with a new orbit task needs to be created.

Recovery Cases

The AI performs a very realistic Case I recovery. Therefore, we already have a good Case I and II recovery simulation since the final part of Case II is a Case I recovery. However, I don't think the AI can do a proper Case III recovery. If you give the AI the landing command, it is out of our hands and will always go for a Case I in the final pattern part. Maybe this will improve in future DCS version but right now, there is not much we can do about it.


Finite State Machine (FSM)

The AIRBOSS class has a Finite State Machine (FSM) implementation for the carrier. This allows mission designers to hook into certain events and helps simulate complex behaviour easier.

FSM events are:

These events can be used in the user script. When the event is triggered, it is automatically a function OnAfterEventname called. For example

--- Carrier just passed waypoint *n*.
function AirbossStennis:OnAfterPassingWaypoint(From, Event, To, n)
 -- Launch green flare.
 self.carrier:FlareGreen()
end

In this example, we only launch a green flare every time the carrier passes a waypoint defined in the mission editor. But, of course, you can also use it to add new recovery windows each time a carrier passes a waypoint. Therefore, you can create an "infinite" number of windows easily.


Examples

In this section a few simple examples are given to illustrate the scripting part.

Simple Case

-- Create AIRBOSS object.
local AirbossStennis=AIRBOSS:New("USS Stennis")

-- Add recovery windows:
-- Case I from 9 to 10 am. Carrier will turn into the wind 5 min before window opens and go at a speed so that wind over the deck is 25 knots.
local window1=AirbossStennis:AddRecoveryWindow("9:00",  "10:00", 1, nil, true, 25)
-- Case II with +15 degrees holding offset from 15:00 for 60 min.
local window2=AirbossStennis:AddRecoveryWindow("15:00", "16:00", 2, 15)
-- Case III with +30 degrees holding offset from 21:00 to 23:30.
local window3=AirbossStennis:AddRecoveryWindow("21:00", "23:30", 3, 30)

-- Load all saved player grades from your "Saved Games\DCS" folder (if lfs was desanitized).
AirbossStennis:Load()

-- Automatically save player results to your "Saved Games\DCS" folder each time a player get a final grade from the LSO.
AirbossStennis:SetAutoSave()

-- Start airboss class.
AirbossStennis:Start()

Debugging

In case you have problems, it is always a good idea to have a look at your DCS log file. You find it in your "Saved Games" folder, so for example in

C:\Users\<yourname>\Saved Games\DCS\Logs\dcs.log

All output concerning the #AIRBOSS class should have the string "AIRBOSS" in the corresponding line. Searching for lines that contain the string "error" or "nil" can also give you a hint what's wrong.

The verbosity of the output can be increased by adding the following lines to your script:

BASE:TraceOnOff(true)
BASE:TraceLevel(1)
BASE:TraceClass("AIRBOSS")

To get even more output you can increase the trace level to 2 or even 3, c.f. Core.Base#BASE for more details.

Debug Mode

You have the option to enable the debug mode for this class via the AIRBOSS.SetDebugModeON function. If enabled, status and debug text messages will be displayed on the screen. Also informative marks on the F10 map are created.

Type(s)

AIRBOSS , extends Core.Fsm#FSM
Fields and Methods inherited from AIRBOSS Description

AIRBOSS.Abeam

Abeam checkpoint.

AIRBOSS:AddExcludeAI(Group)

Add a group to the exclude set.

AIRBOSS:AddRecoveryWindow(starttime, stoptime, case, holdingoffset, turnintowind, speed, uturn)

Add aircraft recovery time window and recovery case.

AIRBOSS.AirbossFreq

Airboss radio frequency in MHz.

AIRBOSS.AirbossModu

Airboss radio modulation "AM" or "FM".

AIRBOSS.AirbossRadio

Radio for carrier calls.

AIRBOSS.AircraftCarrier

AIRBOSS.BreakEarly

Early break checkpoint.

AIRBOSS.BreakEntry

Break entry checkpoint.

AIRBOSS.BreakLate

Late break checkpoint.

AIRBOSS:Broadcast(radio, call, loud)

Broadcast radio message.

AIRBOSS.Bullseye

Case III intercept glideslope and follow ICLS aka "bullseye".

AIRBOSS:CarrierDetour(coord, speed, uturn, uspeed, tcoord)

Let the carrier make a detour to a given point.

AIRBOSS:CarrierResumeRoute(gotocoord)

Carrier resumes the route at its next waypoint.

AIRBOSS:CarrierTurnIntoWind(time, vdeck, uturn)

Let the carrier turn into the wind.

AIRBOSS.CarrierType

AIRBOSS.ClassName

Name of the class.

AIRBOSS:CloseCurrentRecoveryWindow(Delay)

Close currently running recovery window and stop recovery ops.

AIRBOSS.Corientation

Carrier orientation in space.

AIRBOSS.Corientlast

Last known carrier orientation.

AIRBOSS.Cposition

Carrier position.

AIRBOSS.Creturnto

Position to return to after turn into the wind leg is over.

AIRBOSS.Debug

Debug mode. Messages to all about status.

AIRBOSS:DeleteAllRecoveryWindows(Delay)

Delete all recovery windows.

AIRBOSS:DeleteRecoveryWindow(Window, Delay)

Delete a recovery window.

AIRBOSS.Difficulty

AIRBOSS.DirtyUp

Case II/III dirty up and on speed position at 1200 ft and 10-12 NM from the carrier.

AIRBOSS:EnableSRS(PathToSRS, Port, Culture, Gender, Voice, GoogleCreds, Volume, AltBackend)

Set up SRS for usage without sound files

AIRBOSS.Final

Checkpoint when turning to final.

AIRBOSS:GetBRC()

Get base recovery course (BRC) of carrier.

AIRBOSS:GetBRCintoWind(vdeck)

Get base recovery course (BRC) when the carrier would head into the wind.

AIRBOSS:GetCoalition()

Get carrier coalition.

AIRBOSS:GetCoord()

Get carrier coordinate.

AIRBOSS:GetCoordinate()

Get carrier coordinate.

AIRBOSS:GetFinalBearing(magnetic)

Get final bearing (FB) of carrier.

AIRBOSS:GetHeading(magnetic)

Get true (or magnetic) heading of carrier.

AIRBOSS:GetHeadingIntoWind(vdeck, magnetic, coord)

Get true (or magnetic) heading of carrier into the wind.

AIRBOSS:GetHeadingIntoWind_new(vdeck, magnetic, coord)

Get true (or magnetic) heading of carrier into the wind.

AIRBOSS:GetHeadingIntoWind_old(vdeck, magnetic, coord)

Get true (or magnetic) heading of carrier into the wind.

AIRBOSS:GetNextRecoveryTime(InSeconds)

Get next time the carrier will start recovering aircraft.

AIRBOSS:GetRadial(case, magnetic, offset, inverse)

Get radial with respect to carrier BRC or FB and (optionally) holding offset.

AIRBOSS:GetRecoveryWindowByID(id)

Return the recovery window of the given ID.

AIRBOSS:GetWind(alt, magnetic, coord)

Get wind direction and speed at carrier position.

AIRBOSS:GetWindOnDeck(alt)

Get wind speed on carrier deck parallel and perpendicular to runway.

AIRBOSS.Groove

In the groove checkpoint.

AIRBOSS.GroovePos

AIRBOSS.ICLSchannel

ICLS channel.

AIRBOSS.ICLSmorse

ICLS morse code, e.g. "STN".

AIRBOSS.ICLSon

Automatic ICLS is activated.

AIRBOSS:Idle()

Triggers the FSM event "Idle" that puts the carrier into state "Idle" where no recoveries are carried out.

AIRBOSS:IsIdle()

Check if carrier is idle, i.e.

AIRBOSS:IsPaused()

Check if recovery of aircraft is paused.

AIRBOSS:IsRecovering()

Check if carrier is recovering aircraft.

AIRBOSS.LSOCall

Radio voice overs of the LSO.

AIRBOSS.LSOFreq

LSO radio frequency in MHz.

AIRBOSS:LSOGrade(playerData, grade)

Triggers the FSM event "LSOGrade".

AIRBOSS.LSOModu

LSO radio modulation "AM" or "FM".

AIRBOSS.LSORadio

Radio for LSO calls.

AIRBOSS.LSOdT

Time interval in seconds before the LSO will make its next call.

AIRBOSS:Load(path, filename)

Triggers the FSM event "Load" that loads the player scores from a file.

AIRBOSS:Marshal(flight)

Triggers the FSM event "Marshal".

AIRBOSS.MarshalCall

Radio voice over of the Marshal/Airboss.

AIRBOSS.MarshalFreq

Marshal radio frequency in MHz.

AIRBOSS.MarshalModu

Marshal radio modulation "AM" or "FM".

AIRBOSS.MarshalRadio

Radio for carrier calls.

AIRBOSS.MenuF10

Main group level radio menu: F10 Other/Airboss.

AIRBOSS.MenuF10Root

Airboss mission level F10 root menu.

AIRBOSS:MessageToMarshal(message, sender, receiver, duration, clear, delay)

Send text message to all players in the marshal queue.

AIRBOSS:MessageToPattern(message, sender, receiver, duration, clear, delay)

Send text message to all players in the pattern queue.

AIRBOSS:MessageToPlayer(playerData, message, sender, receiver, duration, clear, delay)

Send text message to player client.

AIRBOSS:New(carriername, alias)

Create a new AIRBOSS class object for a specific aircraft carrier unit.

AIRBOSS.Ninety

At the ninety checkpoint.

AIRBOSS.NmaxSection

Number of max section members (excluding the lead itself), i.e. NmaxSection=1 is a section of two.

AIRBOSS.NmaxStack

Number of max flights per stack. Default 2.

AIRBOSS.Nmaxmarshal

Number of max Case I Marshal stacks available. Default 3, i.e. angels 2, 3 and 4.

AIRBOSS.Nmaxpattern

Max number of aircraft in landing pattern.

AIRBOSS:OnAfterLSOGrade(From, Event, To, playerData, grade)

On after "LSOGrade" user function.

AIRBOSS:OnAfterLoad(From, Event, To, path, filename)

On after "Load" event user function.

AIRBOSS:OnAfterMarshal(From, Event, To, flight)

On after "Marshal" user function.

AIRBOSS:OnAfterPassingWaypoint(From, Event, To, waypoint)

On after "PassingWaypoint" user function.

AIRBOSS:OnAfterRecoveryStart(From, Event, To, Case, Offset)

On after "RecoveryStart" user function.

AIRBOSS:OnAfterRecoveryStop(From, Event, To)

On after "RecoveryStop" user function.

AIRBOSS:OnAfterSave(From, Event, To, path, filename)

On after "Save" event user function.

AIRBOSS:OnAfterStart(From, Event, To)

On after "Start" user function.

AIRBOSS:OnEventBirth(EventData)

Airboss event handler for event birth.

AIRBOSS:OnEventCrash(EventData)

Airboss event handler for event crash.

AIRBOSS:OnEventEjection(EventData)

Airboss event handler for event Ejection.

AIRBOSS:OnEventEngineShutdown(EventData)

Airboss event handler for event that a unit shuts down its engines.

AIRBOSS:OnEventMissionEnd(EventData)

Airboss event function handling the mission end event.

AIRBOSS:OnEventRemoveUnit(EventData)

Airboss event handler for event REMOVEUNIT.

AIRBOSS:OnEventRunwayTouch(EventData)

Airboss event handler for event land.

AIRBOSS:OnEventTakeoff(EventData)

Airboss event handler for event that a unit takes off.

AIRBOSS:PassingWaypoint(waypoint)

Triggers the FSM event "PassingWaypoint".

AIRBOSS.PatternStep

AIRBOSS.PilotCall

Radio voice over from AI pilots.

AIRBOSS.PilotRadio

Radio for Pilot calls.

AIRBOSS.Platform

Case II/III descent at 2000 ft/min at 5000 ft platform.

AIRBOSS.Qmarshal

Queue of marshalling aircraft groups.

AIRBOSS.Qpattern

Queue of aircraft groups in the landing pattern.

AIRBOSS.Qspinning

Queue of aircraft currently spinning.

AIRBOSS.Qwaiting

Queue of aircraft groups waiting outside 10 NM zone for the next free Marshal stack.

AIRBOSS.RQLSO

Radio queue of LSO.

AIRBOSS.RQLid

AIRBOSS.RQMarshal

Radio queue of marshal.

AIRBOSS.RQMid

AIRBOSS:RadioTransmission(radio, call, loud, delay, interval, click, pilotcall)

Add Radio transmission to radio queue.

AIRBOSS:RecoveryCase(Case, Offset)

Triggers the FSM event "RecoveryCase" that switches the aircraft recovery case.

AIRBOSS:RecoveryPause(duration)

Triggers the FSM event "RecoveryPause" that pauses the recovery of aircraft.

AIRBOSS:RecoveryStart(Case, Offset)

Triggers the FSM event "RecoveryStart" that starts the recovery of aircraft.

AIRBOSS:RecoveryStop()

Triggers the FSM event "RecoveryStop" that stops the recovery of aircraft.

AIRBOSS:RecoveryUnpause()

Triggers the FSM event "RecoveryUnpause" that resumes the recovery of aircraft if it was paused.

AIRBOSS.SRS

AIRBOSS.SRSQ

AIRBOSS:Save(path, filename)

Triggers the FSM event "Save" that saved the player scores to a file.

AIRBOSS:SetAWACS(awacs)

Define an AWACS associated with the carrier.

AIRBOSS:SetAirbossNiceGuy(Switch)

Airboss is a rather nice guy and not strictly following the rules.

AIRBOSS:SetAirbossRadio(Frequency, Modulation, Voice, Gender, Culture)

Set Airboss radio frequency and modulation.

AIRBOSS:SetAutoSave(path, filename)

Enable auto save of player results each time a player is finally graded.

AIRBOSS:SetBeaconRefresh(TimeInterval)

Set beacon (TACAN/ICLS) time refresh interfal in case the beacons die.

AIRBOSS:SetCarrierControlledArea(Radius)

Set carrier controlled area (CCA).

AIRBOSS:SetCarrierControlledZone(Radius)

Set carrier controlled zone (CCZ).

AIRBOSS:SetCollisionDistance(Distance)

Set distance up to which water ahead is scanned for collisions.

AIRBOSS:SetDebugModeOFF()

Deactivate debug mode.

AIRBOSS:SetDebugModeON()

Activate debug mode.

AIRBOSS:SetDefaultMessageDuration(Duration)

Set duration how long messages are displayed to players.

AIRBOSS:SetDefaultPlayerSkill(skill)

Set default player skill.

AIRBOSS:SetDespawnOnEngineShutdown(Switch)

Despawn AI groups after they they shut down their engines.

AIRBOSS:SetEmergencyLandings(Switch)

Allow emergency landings, i.e.

AIRBOSS:SetExcludeAI(SetGroup)

Define a set of AI groups that excluded from AI handling.

AIRBOSS:SetExtraVoiceOvers(status)

Will play the inbound calls, commencing, initial, etc.

AIRBOSS:SetExtraVoiceOversAI(status)

Will simulate the inbound call, commencing, initial, etc from the AI when requested by Airboss

AIRBOSS:SetFunkManOn(Port, Host)

Set FunkMan socket.

AIRBOSS:SetGlideslopeErrorThresholds(_max, _min, High, HIGH, Low, LOW)

AIRBOSS:SetHandleAIOFF()

Do not handle AI aircraft.

AIRBOSS:SetHandleAION()

Handle AI aircraft.

AIRBOSS:SetHoldingOffsetAngle(Offset)

Set holding pattern offset from final bearing for Case II/III recoveries.

AIRBOSS:SetICLS(Channel, MorseCode)

Set ICLS channel of carrier.

AIRBOSS:SetICLSoff()

Disable automatic ICLS activation.

AIRBOSS:SetInitialMaxAlt(MaxAltitude)

Set max altitude to register flights in the initial zone.

AIRBOSS:SetIntoWindLegacy(SwitchOn)

Set if old into wind calculation is used when carrier turns into the wind for a recovery.

AIRBOSS:SetLSOCallInterval(TimeInterval)

Set time interval between LSO calls.

AIRBOSS:SetLSORadio(Frequency, Modulation, Voice, Gender, Culture)

Set LSO radio frequency and modulation.

AIRBOSS:SetLineupErrorThresholds(_max, _min, Left, LeftMed, LEFT, Right, RightMed, RIGHT)

AIRBOSS:SetMPWireCorrection(Dcorr)

Set multiplayer environment wire correction.

AIRBOSS:SetMagneticDeclination(declination)

Set the magnetic declination (or variation).

AIRBOSS:SetMarshalRadio(Frequency, Modulation, Voice, Gender, Culture)

Set Marshal radio frequency and modulation.

AIRBOSS:SetMarshalRadius(Radius)

Set Case I Marshal radius.

AIRBOSS:SetMaxFlightsPerStack(nmax)

Set max number of flights per stack.

AIRBOSS:SetMaxLandingPattern(nmax)

Set number of aircraft units, which can be in the landing pattern before the pattern is full.

AIRBOSS:SetMaxMarshalStacks(nmax)

Set number available Case I Marshal stacks.

AIRBOSS:SetMaxSectionSize(nmax)

Set max number of section members.

AIRBOSS:SetMenuMarkZones(Switch)

Enable or disable F10 radio menu for marking zones via smoke or flares.

AIRBOSS:SetMenuRecovery(Duration, WindOnDeck, Uturn, Offset)

Enable F10 menu to manually start recoveries.

AIRBOSS:SetMenuSingleCarrier(Switch)

Optimized F10 radio menu for a single carrier.

AIRBOSS:SetMenuSmokeZones(Switch)

Enable or disable F10 radio menu for marking zones via smoke.

AIRBOSS:SetPatrolAdInfinitum(switch)

Carrier patrols ad inifintum.

AIRBOSS:SetQueueUpdateTime(TimeInterval)

Set time interval for updating queues and other stuff.

AIRBOSS:SetRadioRelayLSO(unitname)

Set unit acting as radio relay for the LSO radio.

AIRBOSS:SetRadioRelayMarshal(unitname)

Set unit acting as radio relay for the Marshal radio.

AIRBOSS:SetRadioUnitName(unitname)

Set unit name for sending radio messages.

AIRBOSS:SetRecoveryCase(Case)

Set the default recovery case.

AIRBOSS:SetRecoveryTanker(recoverytanker)

Define recovery tanker associated with the carrier.

AIRBOSS:SetRecoveryTurnTime(Interval)

Set time before carrier turns and recovery window opens.

AIRBOSS:SetRefuelAI(LowFuelThreshold)

Give AI aircraft the refueling task if a recovery tanker is present or send them to the nearest divert airfield.

AIRBOSS:SetRespawnAI(Switch)

Respawn AI groups once they reach the CCA.

AIRBOSS:SetSRSPilotVoice(Voice, Gender, Culture)

Set SRS voice for the pilot calls.

AIRBOSS:SetSoundfilesFolder(FolderPath)

Set folder path where the airboss sound files are located within you mission (miz) file.

AIRBOSS:SetSquadronAI(SetGroup)

Define a set of AI groups that are handled by the airboss.

AIRBOSS:SetStaticWeather(Switch)

Specify weather the mission has set static or dynamic weather.

AIRBOSS:SetStatusUpdateTime(TimeInterval)

Set time interval for updating player status and other things.

AIRBOSS:SetTACAN(Channel, Mode, MorseCode)

Set TACAN channel of carrier and switches TACAN on.

AIRBOSS:SetTACANoff()

Disable automatic TACAN activation

AIRBOSS:SetTrapSheet(Path, Prefix)

Enable saving of player's trap sheets and specify an optional directory path.

AIRBOSS:SetUserSoundRadio()

Use user sound output instead of radio transmission for messages.

AIRBOSS:SetVoiceOver(radiocall, duration, subtitle, subduration, filename, suffix)

Init voice over radio transmission call.

AIRBOSS:SetVoiceOversLSOByFF(mizfolder)

Set parameters for LSO Voice overs by funkyfranky.

AIRBOSS:SetVoiceOversLSOByRaynor(mizfolder)

Set parameters for LSO Voice overs by Raynor.

AIRBOSS:SetVoiceOversMarshalByFF(mizfolder)

Intit parameters for Marshal Voice overs by funkyfranky.

AIRBOSS:SetVoiceOversMarshalByGabriella(mizfolder)

Init parameters for Marshal Voice overs Gabriella by HighwaymanEd.

AIRBOSS:SetVoiceOversMarshalByRaynor(mizfolder)

Init parameters for Marshal Voice overs by Raynor.

AIRBOSS:SetWelcomePlayers(Switch)

Set welcome messages for players.

AIRBOSS:Sound2Player(playerData, radio, call, loud, delay)

Player user sound to player if he is inside the CCA.

AIRBOSS:SoundCheckLSO(delay)

Test LSO radio sounds.

AIRBOSS:SoundCheckMarshal(delay)

Test Marshal radio sounds.

AIRBOSS:Start()

Triggers the FSM event "Start" that starts the airboss.

AIRBOSS.StatusTimer

AIRBOSS:Stop()

Triggers the FSM event "Stop" that stops the airboss.

AIRBOSS.TACANchannel

TACAN channel.

AIRBOSS.TACANmode

TACAN mode, i.e. "X" or "Y".

AIRBOSS.TACANmorse

TACAN morse code, e.g. "STN".

AIRBOSS.TACANon

Automatic TACAN is activated.

AIRBOSS.TQLSO

Abs mission time, the last transmission ended.

AIRBOSS.TQMarshal

Abs mission time, the last transmission ended.

AIRBOSS.Tbeacon

Last time the beacons were refeshed.

AIRBOSS.Tcollapse

Last time timer.gettime() the stack collapsed.

AIRBOSS.Tmessage

Default duration in seconds messages are displayed to players.

AIRBOSS.TowerFreq

Tower radio frequency in MHz.

AIRBOSS.Tpupdate

AIRBOSS.Tqueue

Last time in seconds of timer.getTime() the queue was updated.

AIRBOSS.Wake

Checkpoint right behind the carrier.

AIRBOSS:_Abeam(playerData)

Abeam position.

AIRBOSS:_AbortPattern(playerData, X, Z, posData, patternwo)

Pattern aborted.

AIRBOSS:_ActivateBeacons()

Activate TACAN and ICLS beacons.

AIRBOSS:_AddF10Commands(_unitName)

Add menu commands for player.

AIRBOSS:_AddFlightToPatternQueue(Flight, flight)

Add flight to pattern queue and set recoverd to false for all elements of the flight and its section members.

AIRBOSS:_AddMarshalGroup(flight, stack)

Add a flight group to the Marshal queue at a specific stack.

AIRBOSS:_AddToDebrief(playerData, hint, step)

Append text to debriefing.

AIRBOSS:_AltitudeCheck(playerData, altopt)

Evaluate player's altitude at checkpoint.

AIRBOSS:_AoACheck(playerData, optaoa)

Score for correct AoA.

AIRBOSS:_AoADeg2Units(playerData, degrees)

Convert AoA from degrees to arbitrary units.

AIRBOSS:_AoAUnit2Deg(playerData, aoaunits)

Convert AoA from arbitrary units to degrees.

AIRBOSS:_ArcInTurn(playerData)

Arc in turn for case II/III recoveries.

AIRBOSS:_ArcOutTurn(playerData)

Arc out turn for case II/III recoveries.

AIRBOSS:_AttitudeMonitor(playerData)

Provide info about player status on the fly.

AIRBOSS:_BolterPattern(playerData)

Bolter pattern.

AIRBOSS:_Break(playerData, part)

Break.

AIRBOSS:_BreakEntry(playerData)

Break entry for case I/II recoveries.

AIRBOSS:_Bullseye(playerData)

Intercept glide slop and follow ICLS, aka Bullseye for case III recovery.

AIRBOSS:_CheckAIStatus()

Check AI status.

AIRBOSS:_CheckAbort(X, Z, pos)

Check if a player is within the right area.

AIRBOSS:_CheckCarrierTurning()

Check if carrier is turning.

AIRBOSS:_CheckCollisionCoord(coordto, coordfrom)

Check for possible collisions between two coordinates.

AIRBOSS:_CheckCorridor(playerData)

Check if player is in CASE II/III approach corridor.

AIRBOSS:_CheckForLongDownwind(playerData)

Long downwind leg check.

AIRBOSS:_CheckFoulDeck(playerData)

Check if other aircraft are currently on the landing runway.

AIRBOSS:_CheckFreePathToNextWP(fromcoord)

Check Collision.

AIRBOSS:_CheckLimits(X, Z, check)

Check limits for reaching next step.

AIRBOSS:_CheckMissedStepOnEntry(playerData)

Checks if a player is in the pattern queue and has missed a step in Case II/III approach.

AIRBOSS:_CheckPatternUpdate()

Check if heading or position of carrier have changed significantly.

AIRBOSS:_CheckPlayerPatternDistance(player)

Check if player in the landing pattern is too close to another aircarft in the pattern.

AIRBOSS:_CheckPlayerStatus()

Check current player status.

AIRBOSS:_CheckQueue()

Check marshal and pattern queues.

AIRBOSS:_CheckRadioQueue(radioqueue, name)

Check radio queue for transmissions to be broadcasted.

AIRBOSS._CheckRadioQueueT(param, time)

Function called by DCS timer.

AIRBOSS:_CheckRecoveryTimes()

Check recovery times and start/stop recovery mode of aircraft.

AIRBOSS:_CheckSectionRecovered(flight)

Check if all elements of a flight were recovered.

AIRBOSS:_CheckWaveOff(glideslopeError, lineupError, AoA, playerData)

LSO check if player needs to wave off.

AIRBOSS:_ClearForLanding(flight)

Clear flight for landing.

AIRBOSS:_CollapseMarshalStack(flight, nopattern)

Collapse marshal stack.

AIRBOSS:_Commencing(playerData, zonecheck)

Commence approach.

AIRBOSS:_CommencingCall(modex, unit)

Aircraft commencing call (both for players and AI).

AIRBOSS:_CreateFlightGroup(group)

Create a new flight group.

AIRBOSS:_Debrief(playerData)

Debrief player and set next step.

AIRBOSS:_DirtyUp(playerData)

Dirty up and level out at 1200 ft for case III recovery.

AIRBOSS:_DisplayAttitude(_unitname)

Turn player's aircraft attitude display on or off.

AIRBOSS:_DisplayCarrierInfo(_unitname)

Report information about carrier.

AIRBOSS:_DisplayCarrierWeather(_unitname)

Report weather conditions at the carrier location.

AIRBOSS:_DisplayDebriefing(_unitName)

Display last debriefing.

AIRBOSS:_DisplayPlayerGrades(_unitName)

Display top 10 player scores.

AIRBOSS:_DisplayPlayerStatus(_unitName)

Display player status.

AIRBOSS:_DisplayQueue(_unitname, qname)

Display marshal or pattern queue.

AIRBOSS:_DisplayScoreBoard(_unitName)

Display top 10 player scores.

AIRBOSS:_DistanceCheck(playerData, optdist)

Evaluate player's distance to the boat at checkpoint.

AIRBOSS:_EvalGrooveTime(playerData)

Grade player time in the groove - from turning to final until touchdown.

AIRBOSS:_Final(playerData, nocheck)

Turn to final.

AIRBOSS:_Flightdata2Text(playerData, groovestep, fdata)

Grade flight data.

AIRBOSS:_GS(step, n)

Get short name of the grove step.

AIRBOSS:_GetACNickname(actype)

Get aircraft nickname.

AIRBOSS:_GetAircraftAoA(playerData)

Get optimal aircraft AoA parameters..

AIRBOSS:_GetAircraftParameters(playerData, step)

Get optimal aircraft flight parameters at checkpoint.

AIRBOSS:_GetAltCarrier(unit)

Get altitude of aircraft wrt carrier deck.

AIRBOSS:_GetAngels(alt)

Convert altitude from meters to angels (thousands of feet).

AIRBOSS:_GetCharlieTime(flightgroup)

Calculate an estimate of the charlie time of the player based on how many other aircraft are in the marshal or pattern queue before him.

AIRBOSS:_GetDeltaHeading(hdg1, hdg2)

Get difference between to headings in degrees taking into accound the [0,360) periodocity.

AIRBOSS:_GetDistances(unit)

Calculate distances between carrier and aircraft unit.

AIRBOSS:_GetETAatNextWP()

Estimated the carrier position at some point in the future given the current waypoints and speeds.

AIRBOSS:_GetFlightElement(unitname)

Get element in flight.

AIRBOSS:_GetFlightFromGroupInQueue(group, queue)

Get flight from group in a queue.

AIRBOSS:_GetFlightLead(flight)

Get section lead of a flight.

AIRBOSS:_GetFlightUnits(flight, onground)

Get number of (airborne) units in a flight.

AIRBOSS:_GetFreeStack(ai, case, empty)

Get next free Marshal stack.

AIRBOSS:_GetFreeStack_Old(ai, case, empty)

Get next free Marshal stack.

AIRBOSS:_GetFuelState(unit)

Get fuel state in pounds.

AIRBOSS:_GetGoodBadScore(playerData)

Get error margin depending on player skill.

AIRBOSS:_GetGrooveData(playerData)

Get groove data.

AIRBOSS:_GetLandingSpotCoordinate()

Get landing spot on Tarawa and others.

AIRBOSS:_GetLeadFlight(flight)

Get the lead flight group of a flight group.

AIRBOSS:_GetMarshalAltitude(stack, case)

Get marshal altitude and two positions of a counter-clockwise race track pattern.

AIRBOSS:_GetNextMarshalFight()

Get next marshal flight which is ready to enter the landing pattern.

AIRBOSS:_GetNextWaypoint()

Get next waypoint of the carrier.

AIRBOSS:_GetNiceSRSText(text)

Format text into SRS friendly string

AIRBOSS:_GetOnboardNumberPlayer(group)

Get onboard number of player or client.

AIRBOSS:_GetOnboardNumbers(group, playeronly)

Get onboard numbers of all units in a group.

AIRBOSS:_GetOptLandingCoordinate()

Get optimal landing position of the aircraft.

AIRBOSS:_GetPlayerDataGroup(group)

Get player data from group object.

AIRBOSS:_GetPlayerDataUnit(unit)

Get player data from unit object

AIRBOSS:_GetPlayerUnit(_unitName)

Returns the unit of a player and the player name from the self.players table if it exists.

AIRBOSS:_GetPlayerUnitAndName(_unitName)

Returns the unit of a player and the player name.

AIRBOSS:_GetQueueInfo(queue, case)

Get number of groups and units in queue, which are alive and airborne.

AIRBOSS:_GetRadioSender(radio)

Get unit from which we want to transmit a radio message.

AIRBOSS:_GetRelativeHeading(unit, runway)

Get relative heading of player wrt carrier.

AIRBOSS:_GetRelativeVelocity(unit)

Get relative velocity of player unit wrt to carrier

AIRBOSS:_GetStaticWeather(Clouds, Visibility, Fog, Dust)

Get static weather of this mission from env.mission.weather.

AIRBOSS:_GetSternCoord()

Get "stern" coordinate.

AIRBOSS:_GetTimeInGroove(playerData)

Get time in the groove of player.

AIRBOSS:_GetTowerFrequency()

Get Tower frequency of carrier.

AIRBOSS:_GetUnitMasses(unit)

Get unit masses especially fuel from DCS descriptor values.

AIRBOSS:_GetWire(Lcoord, dc)

Get wire from landing position.

AIRBOSS:_GetWireFromDrawArg(Lcoord)

Get wire from draw argument.

AIRBOSS:_GetZoneAbeamLandingSpot()

Allow for Clear to land call from LSO approaching abeam the landing spot if stable as per NATOPS 00-80T

AIRBOSS:_GetZoneArcIn(case)

Get arc in zone with radius 1 NM and DME 14 NM from the carrier.

AIRBOSS:_GetZoneArcOut(case)

Get arc out zone with radius 1 NM and DME 12 NM from the carrier.

AIRBOSS:_GetZoneBullseye(case)

Get Bullseye zone with radius 1 NM and DME 3 NM from the carrier.

AIRBOSS:_GetZoneCarrierBox()

Get zone of carrier.

AIRBOSS:_GetZoneCommence(case, stack)

Get zone where player are automatically commence when enter.

AIRBOSS:_GetZoneCorridor(case, l)

Get approach corridor zone.

AIRBOSS:_GetZoneDirtyUp(case)

Get dirty up zone with radius 1 NM and DME 9 NM from the carrier.

AIRBOSS:_GetZoneGroove(l, w, b)

Get groove zone.

AIRBOSS:_GetZoneHolding(case, stack)

Get holding zone of player.

AIRBOSS:_GetZoneInitial(case)

Get Initial zone for Case I or II.

AIRBOSS:_GetZoneLandingSpot()

Get zone of the primary landing spot of the USS Tarawa.

AIRBOSS:_GetZoneLineup()

Get lineup groove zone.

AIRBOSS:_GetZonePlatform(case)

Get platform zone with radius 1 NM and DME 19 NM from the carrier.

AIRBOSS:_GetZoneRunwayBox()

Get zone of landing runway.

AIRBOSS:_Glideslope(unit, optangle)

Get glide slope of aircraft unit.

AIRBOSS:_Glideslope2(unit, optangle)

Get glide slope of aircraft unit.

AIRBOSS:_Groove(playerData)

In the groove.

AIRBOSS:_Holding(playerData)

Holding.

AIRBOSS:_InQueue(queue, group)

Check if a group is in a queue.

AIRBOSS:_InitAmerica()

Init parameters for LHA-6 America carrier.

AIRBOSS:_InitCanberra()

Init parameters for L02 Canberra carrier.

AIRBOSS:_InitForrestal()

Init parameters for Forrestal class super carriers.

AIRBOSS:_InitHermes()

Init parameters for R12 HMS Hermes carrier.

AIRBOSS:_InitInvincible()

Init parameters for R05 HMS Invincible carrier.

AIRBOSS:_InitJcarlos()

Init parameters for L61 Juan Carlos carrier.

AIRBOSS:_InitNimitz()

Init parameters for Nimitz class super carriers.

AIRBOSS:_InitPlayer(playerData, step)

Initialize player data by (re-)setting parmeters to initial values.

AIRBOSS:_InitStennis()

Init parameters for USS Stennis carrier.

AIRBOSS:_InitTarawa()

Init parameters for LHA-1 Tarawa carrier.

AIRBOSS:_InitVoiceOvers()

Init voice over radio transmission call.

AIRBOSS:_InitWaypoints()

Initialize Mission Editor waypoints.

AIRBOSS:_Initial(playerData)

Start pattern when player enters the initial zone in case I/II recoveries.

AIRBOSS:_IsCarrierAircraft(unit)

Check if aircraft is capable of landing on this aircraft carrier.

AIRBOSS:_IsHuman(group)

Checks if a group has a human player.

AIRBOSS:_IsHumanUnit(unit)

Checks if a human player sits in the unit.

AIRBOSS:_IsOnboard(text)

Check if text is an onboard number of a flight.

AIRBOSS:_LSOCallAircraftBall(modex, nickname, fuelstate)

AI aircraft calls the ball.

AIRBOSS:_LSORadioCheck(_unitName)

LSO radio check.

AIRBOSS:_LSOadvice(playerData, glideslopeError, lineupError)

LSO advice radio call.

AIRBOSS:_LSOgrade(playerData)

Grade approach.

AIRBOSS:_LandAI(flight)

Tell AI to land on the carrier.

AIRBOSS:_Lineup(unit, runway)

Get line up of player wrt to carrier.

AIRBOSS:_MarkCaseZones(_unitName, flare)

Mark CASE I or II/II zones by either smoke or flares.

AIRBOSS:_MarkMarshalZone(_unitName, flare)

Mark current marshal zone of player by either smoke or flares.

AIRBOSS:_MarshalAI(flight, nstack, respawn)

Command AI flight to orbit at a specified position at a specified altitude with a specified speed.

AIRBOSS:_MarshalCallArrived(modex, case, brc, altitude, charlie, qfe)

Compile a radio call when Marshal tells a flight the holding altitude.

AIRBOSS:_MarshalCallCarrierTurnTo(hdg)

Compile a radio call when Marshal tells a flight the holding altitude.

AIRBOSS:_MarshalCallClearedForRecovery(modex, case)

Inform flight that he is cleared for recovery.

AIRBOSS:_MarshalCallGasAtDivert(modex, divertname)

AI is bingo and goes to the divert field.

AIRBOSS:_MarshalCallGasAtTanker(modex)

AI is bingo and goes to the recovery tanker.

AIRBOSS:_MarshalCallNewFinalBearing(FB)

Inform everyone about new final bearing.

AIRBOSS:_MarshalCallRecoveryPausedResumedAt(clock)

Inform everyone that recovery is paused and will resume at a certain time.

AIRBOSS:_MarshalCallRecoveryPausedUntilFurtherNotice()

Inform everyone that recovery is paused and will resume at a certain time.

AIRBOSS:_MarshalCallRecoveryStart(case)

Compile a radio call when Marshal tells a flight the holding altitude.

AIRBOSS:_MarshalCallRecoveryStopped(case)

Inform everyone that recovery ops are stopped and deck is closed.

AIRBOSS:_MarshalCallResumeRecovery()

Inform everyone that recovery is resumed after pause.

AIRBOSS:_MarshalCallStackFull(modex, nwaiting)

Compile a radio call when Marshal tells a flight the holding altitude.

AIRBOSS:_MarshalPlayer(playerData, stack)

Orbit at a specified position at a specified altitude with a specified speed.

AIRBOSS:_MarshalRadioCheck(_unitName)

Marshal radio check.

AIRBOSS:_MarshallInboundCall(modex, unit)

Aircraft request marshal (Inbound call both for players and AI).

AIRBOSS:_NeedsSubtitle(call)

Check if a call needs a subtitle because the complete voice overs are not available.

AIRBOSS:_NewPlayer(unitname)

Initialize player data after birth event of player unit.

AIRBOSS:_NewRadioCall(call, sender, subtitle, subduration, modexreceiver, modexsender)

Generate a new radio call (deepcopy) from an existing default call.

AIRBOSS:_Ninety(playerData)

At the Ninety.

AIRBOSS:_Number2Radio(radio, number, delay, interval, pilotcall)

Convert a number (as string) into a radio message.

AIRBOSS:_Number2Sound(playerData, sender, number, delay)

Convert a number (as string) into an outsound and play it to a player group.

AIRBOSS._PassingWaypoint(group, airboss, i, final)

Function called when a group is passing a waypoint.

AIRBOSS:_Pathfinder()

Find free path to the next waypoint.

AIRBOSS:_PatrolRoute(n)

Patrol carrier.

AIRBOSS:_Platform(playerData)

Platform at 5k ft for case II/III recoveries.

AIRBOSS:_PlayerHint(playerData, delay, soundoff)

Display hint to player.

AIRBOSS:_PlayerLeft(EventData)

Airboss event handler for event player leave unit.

AIRBOSS:_PrintQueue(queue, name)

Print holding queue.

AIRBOSS:_RadioFilename(call, loud, channel)

Get full file name for radio call.

AIRBOSS:_RadioSubtitle(radio, call, loud)

Create radio subtitle from radio call.

AIRBOSS._ReachedHoldingZone(group, airboss, flight)

Function called when a group has reached the holding zone.

AIRBOSS:_RecoveredElement(unit)

Sets flag recovered=true for a flight element, which was successfully recovered (landed).

AIRBOSS:_RefuelAI(flight)

Tell AI to refuel.

AIRBOSS:_RemoveDeadFlightGroups(group)

Remove dead flight groups from all queues.

AIRBOSS:_RemoveFlight(flight, completely)

Remove a flight from Marshal, Pattern and Waiting queues.

AIRBOSS:_RemoveFlightElement(unitname)

Get element in flight.

AIRBOSS:_RemoveFlightFromMarshalQueue(flight, nopattern)

Remove a flight group from the Marshal queue.

AIRBOSS:_RemoveFlightFromQueue(queue, flight)

Remove a flight group from a queue.

AIRBOSS:_RemoveFlightFromSection(flight)

Remove a flight, which is a member of a section, from this section.

AIRBOSS:_RemoveSectionMember(playerData, sectionmember)

Remove a member from the player's section.

AIRBOSS:_RemoveUnitFromFlight(unit)

Remove a unit and its element from a flight group (e.g.

AIRBOSS:_RequestCommence(_unitName)

Request to commence landing approach.

AIRBOSS:_RequestEmergency(_unitName)

Request emergency landing.

AIRBOSS:_RequestMarshal(_unitName)

Request marshal.

AIRBOSS:_RequestRefueling(_unitName)

Player requests refueling.

AIRBOSS:_RequestSpinning(_unitName)

Request spinning.

AIRBOSS:_ResetPlayerStatus(_unitName)

Reset player status.

AIRBOSS._ResumeRoute(group, airboss, gotocoord)

Carrier Strike Group resumes the route of the waypoints defined in the mission editor.

AIRBOSS:_SaveTrapSheet(playerData, grade)

Save trapsheet data.

AIRBOSS:_ScanCarrierZone()

Scan carrier zone for (new) units.

AIRBOSS:_SetDifficulty(_unitname, difficulty)

Set difficulty level.

AIRBOSS:_SetHintsOnOff(_unitname)

Turn player's aircraft attitude display on or off.

AIRBOSS:_SetPlayerStep(playerData, step, delay)

Set player step.

AIRBOSS:_SetSection(_unitName)

Set all flights within 100 meters to be part of my section.

AIRBOSS:_SetTimeInGroove(playerData)

Set time in the groove for player.

AIRBOSS:_SkipperRecoveryOffset(_unitName, offset)

Skipper set recovery offset angle.

AIRBOSS:_SkipperRecoverySpeed(_unitName, speed)

Skipper set recovery speed.

AIRBOSS:_SkipperRecoveryTime(_unitName, time)

Skipper set recovery time.

AIRBOSS:_SkipperRecoveryUturn(_unitName)

Skipper set recovery speed.

AIRBOSS:_SkipperStartRecovery(_unitName, case)

Reset player status.

AIRBOSS:_SkipperStopRecovery(_unitName)

Skipper Stop recovery function.

AIRBOSS:_SpeedCheck(playerData, speedopt)

Evaluate player's speed.

AIRBOSS:_Spinning(playerData)

Spinning

AIRBOSS:_Status()

Check AI status.

AIRBOSS:_StepHint(playerData, step)

Display hint for flight students about the (next) step.

AIRBOSS:_SubtitlesOnOff(_unitname)

Turn radio subtitles of player on or off.

AIRBOSS._TaskFunctionMarshalAI(group, airboss, flight)

Function called when a group should be send to the Marshal stack.

AIRBOSS:_TooFarOutText(X, Z, posData)

Generate a text if a player is too far from where he should be.

AIRBOSS:_Trapped(playerData)

Trapped?

AIRBOSS:_TrapsheetOnOff(_unitname)

Turn radio subtitles of player on or off.

AIRBOSS:_UpdateFlightSection(flight)

Update section if a flight is removed.

AIRBOSS:_WaitAI(flight, respawn)

Command AI flight to orbit outside the 10 NM zone and wait for a free Marshal stack.

AIRBOSS:_WaitPlayer(playerData)

Tell player to wait outside the 10 NM zone until a Marshal stack is available.

AIRBOSS:_Waiting(playerData)

Waiting outside 10 NM zone for free Marshal stack.

AIRBOSS:_Wake(playerData)

At the Wake.

AIRBOSS:__Idle(delay)

Triggers the FSM delayed event "Idle" that puts the carrier into state "Idle" where no recoveries are carried out.

AIRBOSS:__LSOGrade(delay, playerData, grade)

Triggers the FSM event "LSOGrade".

AIRBOSS:__Load(delay, path, filename)

Triggers the FSM delayed event "Load" that loads the player scores from a file.

AIRBOSS:__Marshal(delay, flight)

Triggers the FSM event "Marshal".

AIRBOSS:__PassingWaypoint(delay, Case, Offset)

Triggers the FSM delayed event "PassingWaypoint".

AIRBOSS:__RecoveryCase(delay, Case, Offset)

Triggers the delayed FSM event "RecoveryCase" that sets the used aircraft recovery case.

AIRBOSS:__RecoveryPause(delay, duration)

Triggers the FSM delayed event "RecoveryPause" that pauses the recovery of aircraft.

AIRBOSS:__RecoveryStart(delay, Case, Offset)

Triggers the FSM delayed event "RecoveryStart" that starts the recovery of aircraft.

AIRBOSS:__RecoveryStop(delay)

Triggers the FSM delayed event "RecoveryStop" that stops the recovery of aircraft.

AIRBOSS:__RecoveryUnpause(delay)

Triggers the FSM delayed event "RecoveryUnpause" that resumes the recovery of aircraft if it was paused.

AIRBOSS:__Save(delay, path, filename)

Triggers the FSM delayed event "Save" that saved the player scores to a file.

AIRBOSS:__Start(delay)

Triggers the FSM event "Start" that starts the airboss after a delay.

AIRBOSS:__Stop(delay)

Triggers the FSM event "Stop" that stops the airboss after a delay.

AIRBOSS.adinfinitum

If true, carrier patrols ad infinitum, i.e. when reaching its last waypoint it starts at waypoint one again.

AIRBOSS.airbase

Carrier airbase object.

AIRBOSS.airbossnice

Airboss is a nice guy.

AIRBOSS.alias

Alias of the carrier.

AIRBOSS.autosave

If true, all player grades are automatically saved to a file on disk.

AIRBOSS.autosavefile

AIRBOSS.autosavefilename

File name of the auto player grades save file. Default is auto generated from carrier name/alias.

AIRBOSS.autosavepath

Path where the player grades file is saved on auto save.

AIRBOSS.awacs

AIRBOSS.beacon

Carrier beacon for TACAN and ICLS.

AIRBOSS.carrier

Aircraft carrier unit on which we want to practice.

AIRBOSS.carrierparam

Carrier specific parameters.

AIRBOSS.carriertype

Type name of aircraft carrier.

AIRBOSS.case

Recovery case I, II or III currently in progress.

AIRBOSS.collisiondist

Distance up to which collision checks are done.

AIRBOSS.currentwp

Current waypoint, i.e. the one that has been passed last.

AIRBOSS.dTbeacon

Time interval to refresh the beacons. Default 5 minutes.

AIRBOSS.dTqueue

Time interval in seconds for updating the queues etc.

AIRBOSS.dTstatus

Time interval for call FSM status updates.

AIRBOSS.dTturn

AIRBOSS.defaultcase

Default recovery case. This is the case used if not specified otherwise.

AIRBOSS.defaultoffset

Default holding pattern update if not specified otherwise.

AIRBOSS.defaultskill

Default player skill AIRBOSS.Difficulty.

AIRBOSS.despawnshutdown

Despawn group after engine shutdown.

AIRBOSS.detour

If true, carrier is currently making a detour from its path along the ME waypoints.

AIRBOSS.emergency

If true (default), allow emergency landings, i.e. bypass any pattern and go for final approach.

AIRBOSS.excludesetAI

AI groups in this set will be explicitly excluded from handling by the airboss and not forced into the Marshal pattern.

AIRBOSS.flights

List of all flights in the CCA.

AIRBOSS.funkmanSocket

AIRBOSS.gle

Glidesope error thresholds.

AIRBOSS.handleai

If true (default), handle AI aircraft.

AIRBOSS.holdingoffset

Offset [degrees] of Case II/III holding pattern.

AIRBOSS.holdtimestamp

Timestamp when the carrier first came to an unexpected hold.

AIRBOSS.initialmaxalt

Max altitude in meters to register in the inital zone.

AIRBOSS.intowindold

If true, use old into wind calculation.

AIRBOSS.landingcoord

AIRBOSS.landingspotcoord

AIRBOSS.lid

Class id string for output to DCS log file.

AIRBOSS.lowfuelAI

Low fuel threshold for AI groups in percent.

AIRBOSS.lue

Lineup error thresholds.

AIRBOSS.magvar

Magnetic declination in degrees.

AIRBOSS.marshalradius

Radius of the Marshal stack zone.

AIRBOSS.menuadded

Table of units where the F10 radio menu was added.

AIRBOSS.menumarkzones

If false, disables the option to mark zones via smoke or flares.

AIRBOSS.menusingle

If true, menu is optimized for a single carrier.

AIRBOSS.menusmokezones

If false, disables the option to mark zones via smoke.

AIRBOSS.mpWireCorrection

AIRBOSS:onafterIdle(From, Event, To)

On after "Idle" event.

AIRBOSS:onafterLSOGrade(From, Event, To, playerData, grade)

On after "LSOGrade" event.

AIRBOSS:onafterLoad(From, Event, To, path, filename)

On after "Load" event.

AIRBOSS:onafterPassingWaypoint(From, Event, To, n)

On after "PassingWaypoint" event.

AIRBOSS:onafterRecoveryCase(From, Event, To, Case, Offset)

On after "RecoveryCase" event.

AIRBOSS:onafterRecoveryPause(From, Event, To, duration)

On after "RecoveryPause" event.

AIRBOSS:onafterRecoveryStart(From, Event, To, Case, Offset)

On after "RecoveryStart" event.

AIRBOSS:onafterRecoveryStop(From, Event, To)

On after "RecoveryStop" event.

AIRBOSS:onafterRecoveryUnpause(From, Event, To)

On after "RecoveryUnpause" event.

AIRBOSS:onafterSave(From, Event, To, path, filename)

On after "Save" event.

AIRBOSS:onafterStart(From, Event, To)

On after Start event.

AIRBOSS:onafterStatus(From, Event, To)

On after Status event.

AIRBOSS:onafterStop(From, Event, To)

On after Stop event.

AIRBOSS:onbeforeLoad(From, Event, To, path, filename)

On before "Load" event.

AIRBOSS:onbeforeRecoveryCase(From, Event, To, Case, Offset)

On before "RecoveryCase" event.

AIRBOSS:onbeforeSave(From, Event, To, path, filename)

On before "Save" event.

AIRBOSS.players

Table of players.

AIRBOSS.playerscores

Table holding all player scores and grades.

AIRBOSS.radiorelayLSO

Name of the aircraft acting as sender for broadcasting LSO radio messages from the carrier. DCS shortcoming workaround.

AIRBOSS.radiorelayMSH

Name of the aircraft acting as sender for broadcasting Marhsal radio messages from the carrier. DCS shortcoming workaround.

AIRBOSS.radiotimer

Radio queue scheduler.

AIRBOSS.recoverytimes

List of time windows when aircraft are recovered including the recovery case and holding offset.

AIRBOSS.recoverywindow

Current or next recovery window opened.

AIRBOSS.respawnAI

If true, respawn AI flights as they enter the CCA to detach and airfields from the mission plan. Default false.

AIRBOSS.senderac

Name of the aircraft acting as sender for broadcasting radio messages from the carrier. DCS shortcoming workaround.

AIRBOSS.skipperCase

Manual recovery case.

AIRBOSS.skipperMenu

If true, add skipper menu.

AIRBOSS.skipperOffset

Holding offset angle in degrees for Case II/III manual recoveries.

AIRBOSS.skipperSpeed

Speed in knots for manual recovery start.

AIRBOSS.skipperTime

Recovery time in min for manual recovery.

AIRBOSS.skipperUturn

U-turn on/off via menu.

AIRBOSS.soundfolder

Folder within the mission (miz) file where airboss sound files are located.

AIRBOSS.soundfolderLSO

Folder withing the mission (miz) file where LSO sound files are stored.

AIRBOSS.soundfolderMSH

Folder withing the mission (miz) file where Marshal sound files are stored.

AIRBOSS.squadsetAI

AI groups in this set will be handled by the airboss.

AIRBOSS.staticweather

Mission uses static rather than dynamic weather.

AIRBOSS.sterncoord

AIRBOSS.tanker

Recovery tanker flying overhead of carrier.

AIRBOSS.theatre

The DCS map used in the mission.

AIRBOSS.trappath

Path where to save the trap sheets.

AIRBOSS.trapprefix

File prefix for trap sheet files.

AIRBOSS.trapsheet

If true, players can save their trap sheets.

AIRBOSS.turning

If true, carrier is currently turning.

AIRBOSS.turnintowind

If true, carrier is currently turning into the wind.

AIRBOSS.usersoundradio

Use user sound output instead of radio transmissions.

AIRBOSS.version

Airboss class version.

AIRBOSS.waypoints

Waypoint coordinates of carrier.

AIRBOSS.welcome

If true, display welcome message to player.

AIRBOSS.windowcount

Running number counting the recovery windows.

AIRBOSS.xtVoiceOvers

AIRBOSS.xtVoiceOversAI

AIRBOSS.zoneCCA

Carrier controlled area (CCA), i.e. a zone of 50 NM radius around the carrier.

AIRBOSS.zoneCCZ

Carrier controlled zone (CCZ), i.e. a zone of 5 NM radius around the carrier.

AIRBOSS.zoneCarrierbox

AIRBOSS.zoneCommence

AIRBOSS.zoneGroove

AIRBOSS.zoneHolding

AIRBOSS.zoneInitial

AIRBOSS.zoneLineup

AIRBOSS.zoneRunwaybox

Fields and Methods inherited from FSM Description

AIRBOSS:AddEndState(State)

Adds an End state.

AIRBOSS:AddProcess(From, Event, Process, ReturnEvents)

Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task.

AIRBOSS:AddScore(State, ScoreText, Score)

Adds a score for the FSM to be achieved.

AIRBOSS:AddScoreProcess(From, Event, State, ScoreText, Score)

Adds a score for the FSM_PROCESS to be achieved.

AIRBOSS:AddTransition(From, Event, To)

Add a new transition rule to the FSM.

AIRBOSS.CallScheduler

AIRBOSS.Events

AIRBOSS:GetCurrentState()

Get current state.

AIRBOSS:GetEndStates()

Returns the End states.

AIRBOSS:GetProcess(From, Event)

AIRBOSS:GetProcesses()

Returns a table of the SubFSM rules defined within the FSM.

AIRBOSS:GetScores()

Returns a table with the scores defined.

AIRBOSS:GetStartState()

Returns the start state of the FSM.

AIRBOSS:GetState()

Get current state.

AIRBOSS:GetSubs()

Returns a table with the Subs defined.

AIRBOSS:GetTransitions()

Returns a table of the transition rules defined within the FSM.

AIRBOSS:Is(State)

Check if FSM is in state.

AIRBOSS:LoadCallBacks(CallBackTable)

Load call backs.

AIRBOSS:New()

Creates a new FSM object.

AIRBOSS.Scores

AIRBOSS:SetProcess(From, Event, Fsm)

AIRBOSS:SetStartState(State)

Sets the start state of the FSM.

AIRBOSS._EndStates

AIRBOSS._EventSchedules

AIRBOSS._Processes

AIRBOSS._Scores

AIRBOSS._StartState

AIRBOSS._Transitions

AIRBOSS:_add_to_map(Map, Event)

Add to map.

AIRBOSS:_call_handler(step, trigger, params, EventName)

Call handler.

AIRBOSS:_create_transition(EventName)

Create transition.

AIRBOSS:_delayed_transition(EventName)

Delayed transition.

AIRBOSS:_eventmap(Events, EventStructure)

Event map.

AIRBOSS:_gosub(ParentFrom, ParentEvent)

Go sub.

AIRBOSS:_handler(EventName, ...)

Handler.

AIRBOSS:_isendstate(Current)

Is end state.

AIRBOSS:_submap(subs, sub, name)

Sub maps.

AIRBOSS:can(e)

Check if can do an event.

AIRBOSS:cannot(e)

Check if cannot do an event.

AIRBOSS.current

AIRBOSS.endstates

AIRBOSS:is(State, state)

Check if FSM is in state.

AIRBOSS.options

AIRBOSS.subs

Fields and Methods inherited from AIRBOSS.AircraftAoA Description

AIRBOSS.AircraftAoA.FAST

Really fast AoA threshold.

AIRBOSS.AircraftAoA.Fast

Fast AoA threshold. Smaller means faster.

AIRBOSS.AircraftAoA.OnSpeed

Optimal on-speed AoA.

AIRBOSS.AircraftAoA.OnSpeedMax

Maximum on speed AoA. Values above are slow.

AIRBOSS.AircraftAoA.OnSpeedMin

Minimum on speed AoA. Values below are fast

AIRBOSS.AircraftAoA.SLOW

Really slow AoA threshold.

AIRBOSS.AircraftAoA.Slow

Slow AoA threshold. Larger means slower.

Fields and Methods inherited from AIRBOSS.AircraftCarrier Description

AIRBOSS.AircraftCarrier.A4EC

A-4E Community mod.

AIRBOSS.AircraftCarrier.AV8B

AV-8B Night Harrier. Works only with the HMS Hermes, HMS Invincible, USS Tarawa, USS America, and Juan Carlos I.

AIRBOSS.AircraftCarrier.C2A

Grumman C-2A Greyhound from Military Aircraft Mod.

AIRBOSS.AircraftCarrier.E2D

Grumman E-2D Hawkeye AWACS.

AIRBOSS.AircraftCarrier.F14A

F-14A by Heatblur.

AIRBOSS.AircraftCarrier.F14A_AI

F-14A Tomcat (AI).

AIRBOSS.AircraftCarrier.F14B

F-14B by Heatblur.

AIRBOSS.AircraftCarrier.FA18C

F/A-18C Hornet (AI).

AIRBOSS.AircraftCarrier.GROWLER

FEA-18G Superhornet (mod).

AIRBOSS.AircraftCarrier.HORNET

F/A-18C Lot 20 Hornet by Eagle Dynamics.

AIRBOSS.AircraftCarrier.RHINOE

F/A-18E Superhornet (mod).

AIRBOSS.AircraftCarrier.RHINOF

F/A-18F Superhornet (mod).

AIRBOSS.AircraftCarrier.S3B

Lockheed S-3B Viking.

AIRBOSS.AircraftCarrier.S3BTANKER

Lockheed S-3B Viking tanker.

AIRBOSS.AircraftCarrier.T45C

T-45C by VNAO.

Fields and Methods inherited from AIRBOSS.CarrierParameters Description

AIRBOSS.CarrierParameters.deckheight

Height of deck in meters. For USS Stennis ~63 ft = 19 meters.

AIRBOSS.CarrierParameters.landingdist

Distance in meeters to the landing position.

AIRBOSS.CarrierParameters.landingspot

AIRBOSS.CarrierParameters.rwyangle

Runway angle in degrees. for carriers with angled deck. For USS Stennis -9 degrees.

AIRBOSS.CarrierParameters.rwylength

Length of the landing runway in meters.

AIRBOSS.CarrierParameters.rwywidth

Width of the landing runway in meters.

AIRBOSS.CarrierParameters.sterndist

Distance in meters from carrier position to stern of carrier. For USS Stennis -150 meters.

AIRBOSS.CarrierParameters.totlength

Total length of carrier.

AIRBOSS.CarrierParameters.totwidthport

Total with of the carrier from stern position to port side (asymmetric carriers).

AIRBOSS.CarrierParameters.totwidthstarboard

Total with of the carrier from stern position to starboard side (asymmetric carriers).

AIRBOSS.CarrierParameters.wire1

Distance in meters from carrier position to first wire.

AIRBOSS.CarrierParameters.wire2

Distance in meters from carrier position to second wire.

AIRBOSS.CarrierParameters.wire3

Distance in meters from carrier position to third wire.

AIRBOSS.CarrierParameters.wire4

Distance in meters from carrier position to fourth wire.

Fields and Methods inherited from AIRBOSS.CarrierType Description

AIRBOSS.CarrierType.AMERICA

USS America (LHA-6) [V/STOL Carrier]

AIRBOSS.CarrierType.CANBERRA

AIRBOSS.CarrierType.FORRESTAL

USS Forrestal (CV-59) [Heatblur Carrier Module]

AIRBOSS.CarrierType.HERMES

HMS Hermes (R12) [V/STOL Carrier]

AIRBOSS.CarrierType.HMAS

Canberra (L02) [V/STOL Carrier]

AIRBOSS.CarrierType.INVINCIBLE

HMS Invincible (R05) [V/STOL Carrier]

AIRBOSS.CarrierType.JCARLOS

Juan Carlos I (L61) [V/STOL Carrier]

AIRBOSS.CarrierType.KUZNETSOV

Admiral Kuznetsov (CV 1143.5)

AIRBOSS.CarrierType.LINCOLN

USS Abraham Lincoln (CVN-72) [Super Carrier Module]

AIRBOSS.CarrierType.ROOSEVELT

USS Theodore Roosevelt (CVN-71) [Super Carrier Module]

AIRBOSS.CarrierType.STENNIS

USS John C. Stennis (CVN-74)

AIRBOSS.CarrierType.TARAWA

USS Tarawa (LHA-1) [V/STOL Carrier]

AIRBOSS.CarrierType.TRUMAN

USS Harry S. Truman (CVN-75) [Super Carrier Module]

AIRBOSS.CarrierType.VINSON

USS Carl Vinson (CVN-70) [Deprecated!]

AIRBOSS.CarrierType.WASHINGTON

USS George Washington (CVN-73) [Super Carrier Module]

Fields and Methods inherited from AIRBOSS.Checkpoint Description

AIRBOSS.Checkpoint.LimitXmax

Latitudal threshold for triggering the next step if X>Xmax.

AIRBOSS.Checkpoint.LimitXmin

Latitudal threshold for triggering the next step if X

AIRBOSS.Checkpoint.LimitZmax

Latitudal threshold for triggering the next step if Z>Zmax.

AIRBOSS.Checkpoint.LimitZmin

Latitudal threshold for triggering the next step if Z

AIRBOSS.Checkpoint.Xmax

Maximum allowed longitual distance to carrier.

AIRBOSS.Checkpoint.Xmin

Minimum allowed longitual distance to carrier.

AIRBOSS.Checkpoint.Zmax

Maximum allowed latitudal distance to carrier.

AIRBOSS.Checkpoint.Zmin

Minimum allowed latitudal distance to carrier.

AIRBOSS.Checkpoint.name

Name of checkpoint.

Fields and Methods inherited from AIRBOSS.Difficulty Description

AIRBOSS.Difficulty.EASY

Flight Student. Shows tips and hints in important phases of the approach.

AIRBOSS.Difficulty.HARD

TOPGUN graduate. For people who know what they are doing. Nearly ziplip.

AIRBOSS.Difficulty.NORMAL

Naval aviator. Moderate number of hints but not really zip lip.

Fields and Methods inherited from AIRBOSS.FlightElement Description

AIRBOSS.FlightElement.ai

If true, AI sits inside. If false, human player is flying.

AIRBOSS.FlightElement.ballcall

If true, flight called the ball in the groove.

AIRBOSS.FlightElement.onboard

Onboard number of the aircraft.

AIRBOSS.FlightElement.recovered

If true, element was successfully recovered.

AIRBOSS.FlightElement.unit

Aircraft unit.

AIRBOSS.FlightElement.unitname

Name of the unit.

Fields and Methods inherited from AIRBOSS.FlightGroup Description

AIRBOSS.FlightGroup.Tcharlie

Charlie (abs) time in seconds.

AIRBOSS.FlightGroup.actype

Aircraft type name.

AIRBOSS.FlightGroup.ai

If true, flight is purly AI.

AIRBOSS.FlightGroup.ballcall

If true, flight called the ball in the groove.

AIRBOSS.FlightGroup.case

Recovery case of flight.

AIRBOSS.FlightGroup.dist0

Distance to carrier in meters when the group was first detected inside the CCA.

AIRBOSS.FlightGroup.elements

Flight group elements.

AIRBOSS.FlightGroup.flag

Flag value describing the current stack.

AIRBOSS.FlightGroup.group

Flight group.

AIRBOSS.FlightGroup.groupname

Name of the group.

AIRBOSS.FlightGroup.holding

If true, flight is in holding zone.

AIRBOSS.FlightGroup.name

Player name or name of first AI unit.

AIRBOSS.FlightGroup.nunits

Number of units in group.

AIRBOSS.FlightGroup.onboard

Onboard number of player or first unit in group.

AIRBOSS.FlightGroup.onboardnumbers

Onboard numbers of aircraft in the group.

AIRBOSS.FlightGroup.recovered

AIRBOSS.FlightGroup.refueling

Flight is refueling.

AIRBOSS.FlightGroup.seclead

Name of section lead.

AIRBOSS.FlightGroup.section

Other human flight groups belonging to this flight. This flight is the lead.

AIRBOSS.FlightGroup.time

Timestamp in seconds of timer.getAbsTime() of the last important event, e.g. added to the queue.

Fields and Methods inherited from AIRBOSS.GLE Description

AIRBOSS.GLE.HIGH

H threshold. Default 1.5 deg.

AIRBOSS.GLE.High

(H) threshold. Default 0.8 deg.

AIRBOSS.GLE.LOW

L threshold. Default -0.9 deg.

AIRBOSS.GLE.Low

(L) threshold. Default -0.6 deg.

AIRBOSS.GLE._max

Max OK value. Default 0.4 deg.

AIRBOSS.GLE._min

Min OK value. Default -0.3 deg.

Fields and Methods inherited from AIRBOSS.GrooveData Description

AIRBOSS.GrooveData.Alt

Altitude in meters.

AIRBOSS.GrooveData.AoA

Angle of Attack.

AIRBOSS.GrooveData.Drift

AIRBOSS.GrooveData.FlyThrough

Fly through up "/" or fly through down "\".

AIRBOSS.GrooveData.GSE

Glideslope error in degrees.

AIRBOSS.GrooveData.Gamma

Relative heading player to carrier's runway. 0=parallel, +-90=perpendicular.

AIRBOSS.GrooveData.Grade

LSO grade.

AIRBOSS.GrooveData.GradeDetail

LSO grade details.

AIRBOSS.GrooveData.GradePoints

LSO grade points

AIRBOSS.GrooveData.LUE

Lineup error in degrees.

AIRBOSS.GrooveData.Pitch

Pitch angle in degrees.

AIRBOSS.GrooveData.Rho

Distance in meters.

AIRBOSS.GrooveData.Roll

Roll angle in degrees.

AIRBOSS.GrooveData.Step

Current step.

AIRBOSS.GrooveData.Time

Time in seconds.

AIRBOSS.GrooveData.Vel

Total velocity in m/s.

AIRBOSS.GrooveData.Vy

Vertical velocity in m/s.

AIRBOSS.GrooveData.X

Distance in meters.

AIRBOSS.GrooveData.Yaw

Yaw angle in degrees.

AIRBOSS.GrooveData.Z

Distance in meters.

Fields and Methods inherited from AIRBOSS.GroovePos Description

AIRBOSS.GroovePos.AL

"AL": Abeam landing position (V/STOL).

AIRBOSS.GroovePos.AR

"AR": At the ramp.

AIRBOSS.GroovePos.IC

"IC": In close.

AIRBOSS.GroovePos.IM

"IM": In the middle.

AIRBOSS.GroovePos.IW

"IW": In the wires.

AIRBOSS.GroovePos.LC

"LC": Level crossing (V/STOL).

AIRBOSS.GroovePos.X0

"X0": Entering the groove.

AIRBOSS.GroovePos.XX

"XX": At the start, i.e. 3/4 from the run down.

Fields and Methods inherited from AIRBOSS.LSOCalls Description

AIRBOSS.LSOCalls.BOLTER

"Bolter, Bolter" call.

AIRBOSS.LSOCalls.CALLTHEBALL

"Call the Ball" call.

AIRBOSS.LSOCalls.CHECK

"CHECK" call.

AIRBOSS.LSOCalls.CLEAREDTOLAND

"Cleared to land" call.

AIRBOSS.LSOCalls.CLICK

Radio end transmission click sound.

AIRBOSS.LSOCalls.COMELEFT

"Come left" call.

AIRBOSS.LSOCalls.DEPARTANDREENTER

"Depart and re-enter" call.

AIRBOSS.LSOCalls.EXPECTHEAVYWAVEOFF

"Expect heavy wavoff" call.

AIRBOSS.LSOCalls.EXPECTSPOT5

"Expect spot 5" call.

AIRBOSS.LSOCalls.EXPECTSPOT75

"Expect spot 7.5" call.

AIRBOSS.LSOCalls.FAST

"You're fast" call.

AIRBOSS.LSOCalls.FOULDECK

"Foul Deck" call.

AIRBOSS.LSOCalls.HIGH

"You're high" call.

AIRBOSS.LSOCalls.IDLE

"Idle" call.

AIRBOSS.LSOCalls.LONGINGROOVE

"You're long in the groove" call.

AIRBOSS.LSOCalls.LOW

"You're low" call.

AIRBOSS.LSOCalls.N0

"Zero" call.

AIRBOSS.LSOCalls.N1

"One" call.

AIRBOSS.LSOCalls.N2

"Two" call.

AIRBOSS.LSOCalls.N3

"Three" call.

AIRBOSS.LSOCalls.N4

"Four" call.

AIRBOSS.LSOCalls.N5

"Five" call.

AIRBOSS.LSOCalls.N6

"Six" call.

AIRBOSS.LSOCalls.N7

"Seven" call.

AIRBOSS.LSOCalls.N8

"Eight" call.

AIRBOSS.LSOCalls.N9

"Nine" call.

AIRBOSS.LSOCalls.NOISE

Static noise sound.

AIRBOSS.LSOCalls.PADDLESCONTACT

"Paddles, contact" call.

AIRBOSS.LSOCalls.POWER

"Power" call.

AIRBOSS.LSOCalls.RADIOCHECK

"Paddles, radio check" call.

AIRBOSS.LSOCalls.RIGHTFORLINEUP

"Right for line up" call.

AIRBOSS.LSOCalls.ROGERBALL

"Roger ball" call.

AIRBOSS.LSOCalls.SLOW

"You're slow" call.

AIRBOSS.LSOCalls.SPINIT

"Spin it" call.

AIRBOSS.LSOCalls.STABILIZED

"Stabilized" call.

AIRBOSS.LSOCalls.WAVEOFF

"Wave off" call.

AIRBOSS.LSOCalls.WELCOMEABOARD

"Welcome aboard" call.

Fields and Methods inherited from AIRBOSS.LSOgrade Description

AIRBOSS.LSOgrade.Tgroove

Time in the groove in seconds.

AIRBOSS.LSOgrade.airframe

Aircraft type name of player.

AIRBOSS.LSOgrade.carriername

Carrier name/alias.

AIRBOSS.LSOgrade.carrierrwy

AIRBOSS.LSOgrade.carriertype

Carrier type name.

AIRBOSS.LSOgrade.case

Recovery case.

AIRBOSS.LSOgrade.details

Detailed flight analysis.

AIRBOSS.LSOgrade.finalscore

Points received after player has finally landed. This is the average over all incomplete passes (bolter, waveoff) before.

AIRBOSS.LSOgrade.grade

LSO grade, i.e. OK, OK, (OK), --, CUT

AIRBOSS.LSOgrade.midate

Mission date in yyyy/mm/dd format.

AIRBOSS.LSOgrade.mitime

Mission time in hh:mm:ss+d format

AIRBOSS.LSOgrade.modex

Onboard number.

AIRBOSS.LSOgrade.osdate

Real live date. Needs os to be desanitized.

AIRBOSS.LSOgrade.points

Points received.

AIRBOSS.LSOgrade.theatre

DCS map.

AIRBOSS.LSOgrade.wind

Wind speed on deck in knots.

AIRBOSS.LSOgrade.wire

Wire caught.

Fields and Methods inherited from AIRBOSS.LUE Description

AIRBOSS.LUE.LEFT

LUR threshold. Default -3.0 deg.

AIRBOSS.LUE.Left

(LUR) threshold. Default -1.0 deg.

AIRBOSS.LUE.LeftMed

threshold for AA/OS measuring. Default -2.0 deg.

AIRBOSS.LUE.RIGHT

LUL threshold. Default 3.0 deg.

AIRBOSS.LUE.Right

(LUL) threshold. Default 1.0 deg.

AIRBOSS.LUE.RightMed

threshold for AA/OS measuring. Default 2.0 deg.

AIRBOSS.LUE._max

Max OK value. Default 0.5 deg.

AIRBOSS.LUE._min

Min OK value. Default -0.5 deg.

Fields and Methods inherited from AIRBOSS.MarshalCalls Description

AIRBOSS.MarshalCalls.AFFIRMATIVE

"Affirmative" call.

AIRBOSS.MarshalCalls.ALTIMETER

"Altimeter" call.

AIRBOSS.MarshalCalls.BRC

"BRC" call.

AIRBOSS.MarshalCalls.CARRIERTURNTOHEADING

"Turn to heading" call.

AIRBOSS.MarshalCalls.CASE

"Case" call.

AIRBOSS.MarshalCalls.CHARLIETIME

"Charlie Time" call.

AIRBOSS.MarshalCalls.CLEAREDFORRECOVERY

"You're cleared for case" call.

AIRBOSS.MarshalCalls.CLICK

Radio end transmission click sound.

AIRBOSS.MarshalCalls.DECKCLOSED

"Deck closed" sound.

AIRBOSS.MarshalCalls.DEGREES

"Degrees" call.

AIRBOSS.MarshalCalls.EXPECTED

"Expected" call.

AIRBOSS.MarshalCalls.FLYNEEDLES

"Fly your needles" call.

AIRBOSS.MarshalCalls.HOLDATANGELS

"Hold at angels" call.

AIRBOSS.MarshalCalls.HOURS

"Hours" sound.

AIRBOSS.MarshalCalls.MARSHALRADIAL

"Marshal radial" call.

AIRBOSS.MarshalCalls.N0

"Zero" call.

AIRBOSS.MarshalCalls.N1

"One" call.

AIRBOSS.MarshalCalls.N2

"Two" call.

AIRBOSS.MarshalCalls.N3

"Three" call.

AIRBOSS.MarshalCalls.N4

"Four" call.

AIRBOSS.MarshalCalls.N5

"Five" call.

AIRBOSS.MarshalCalls.N6

"Six" call.

AIRBOSS.MarshalCalls.N7

"Seven" call.

AIRBOSS.MarshalCalls.N8

"Eight" call.

AIRBOSS.MarshalCalls.N9

"Nine" call.

AIRBOSS.MarshalCalls.NEGATIVE

"Negative" sound.

AIRBOSS.MarshalCalls.NEWFB

"New final bearing" call.

AIRBOSS.MarshalCalls.NOISE

Static noise sound.

AIRBOSS.MarshalCalls.OBS

"Obs" call.

AIRBOSS.MarshalCalls.POINT

"Point" call.

AIRBOSS.MarshalCalls.RADIOCHECK

"Radio check" call.

AIRBOSS.MarshalCalls.RECOVERY

"Recovery" call.

AIRBOSS.MarshalCalls.RECOVERYOPSSTOPPED

"Recovery ops stopped" sound.

AIRBOSS.MarshalCalls.RECOVERYPAUSEDNOTICE

"Recovery paused until further notice" call.

AIRBOSS.MarshalCalls.RECOVERYPAUSEDRESUMED

"Recovery paused and will be resumed at" call.

AIRBOSS.MarshalCalls.REPORTSEEME

"Report see me" call.

AIRBOSS.MarshalCalls.RESUMERECOVERY

"Resuming aircraft recovery" call.

AIRBOSS.MarshalCalls.ROGER

"Roger" call.

AIRBOSS.MarshalCalls.SAYNEEDLES

"Say needles" call.

AIRBOSS.MarshalCalls.STACKFULL

"Marshal stack is currently full. Hold outside 10 NM zone and wait for further instructions" call.

AIRBOSS.MarshalCalls.STARTINGRECOVERY

"Starting aircraft recovery" call.

Fields and Methods inherited from AIRBOSS.PatternStep Description

AIRBOSS.PatternStep.ABEAM

"Abeam".

AIRBOSS.PatternStep.ARCIN

"Arc Turn In".

AIRBOSS.PatternStep.ARCOUT

"Arc Turn Out".

AIRBOSS.PatternStep.BOLTER

"Bolter Pattern".

AIRBOSS.PatternStep.BREAKENTRY

"Break Entry".

AIRBOSS.PatternStep.BULLSEYE

"Bullseye".

AIRBOSS.PatternStep.COMMENCING

"Commencing".

AIRBOSS.PatternStep.DEBRIEF

"Debrief".

AIRBOSS.PatternStep.DIRTYUP

"Dirty Up".

AIRBOSS.PatternStep.EARLYBREAK

"Early Break".

AIRBOSS.PatternStep.EMERGENCY

"Emergency Landing".

AIRBOSS.PatternStep.FINAL

"Final".

AIRBOSS.PatternStep.GROOVE_AL

"Groove Abeam Landing Spot".

AIRBOSS.PatternStep.GROOVE_AR

"Groove At the Ramp".

AIRBOSS.PatternStep.GROOVE_IC

"Groove In Close".

AIRBOSS.PatternStep.GROOVE_IM

"Groove In the Middle".

AIRBOSS.PatternStep.GROOVE_IW

"Groove In the Wires".

AIRBOSS.PatternStep.GROOVE_LC

"Groove Level Cross".

AIRBOSS.PatternStep.GROOVE_XX

"Groove X".

AIRBOSS.PatternStep.HOLDING

"Holding".

AIRBOSS.PatternStep.INITIAL

"Initial".

AIRBOSS.PatternStep.LATEBREAK

"Late Break".

AIRBOSS.PatternStep.NINETY

"Ninety".

AIRBOSS.PatternStep.PLATFORM

"Platform".

AIRBOSS.PatternStep.REFUELING

"Refueling".

AIRBOSS.PatternStep.SPINNING

"Spinning".

AIRBOSS.PatternStep.UNDEFINED

"Undefined".

AIRBOSS.PatternStep.WAITING

"Waiting for free Marshal stack".

AIRBOSS.PatternStep.WAKE

"Wake".

Fields and Methods inherited from AIRBOSS.PlayerData Description

AIRBOSS.PlayerData.SRS

AIRBOSS.PlayerData.SRSQ

AIRBOSS.PlayerData.TIG0

Time in groove start timer.getTime().

AIRBOSS.PlayerData.Tgroove

Time in the groove in seconds.

AIRBOSS.PlayerData.Tlso

Last time the LSO gave an advice.

AIRBOSS.PlayerData.airframe

AIRBOSS.PlayerData.attitudemonitor

If true, display aircraft attitude and other parameters constantly.

AIRBOSS.PlayerData.boltered

If true, player boltered.

AIRBOSS.PlayerData.callsign

Callsign of player.

AIRBOSS.PlayerData.case

AIRBOSS.PlayerData.client

Client object of player.

AIRBOSS.PlayerData.debrief

Debrief analysis of the current step of this pass.

AIRBOSS.PlayerData.debriefschedulerID

Debrief scheduler ID.

AIRBOSS.PlayerData.difficulty

Difficulty level.

AIRBOSS.PlayerData.finalscore

Final score if points are averaged over multiple passes.

AIRBOSS.PlayerData.flag

AIRBOSS.PlayerData.grade

AIRBOSS.PlayerData.groove

Data table at each position in the groove. Elements are of type AIRBOSS.GrooveData.

AIRBOSS.PlayerData.holding

AIRBOSS.PlayerData.hover

AIRBOSS.PlayerData.landed

If true, player landed or attempted to land.

AIRBOSS.PlayerData.lastdebrief

Debrief of player performance of last completed pass.

AIRBOSS.PlayerData.lig

If true, player was long in the groove.

AIRBOSS.PlayerData.messages

AIRBOSS.PlayerData.modex

AIRBOSS.PlayerData.name

AIRBOSS.PlayerData.owo

If true, own waveoff by player.

AIRBOSS.PlayerData.passes

Number of passes.

AIRBOSS.PlayerData.points

Points of passes until finally landed.

AIRBOSS.PlayerData.refueling

AIRBOSS.PlayerData.seclead

AIRBOSS.PlayerData.showhints

If true, show step hints.

AIRBOSS.PlayerData.stable

AIRBOSS.PlayerData.step

Current/next pattern step.

AIRBOSS.PlayerData.subtitles

If true, display subtitles of radio messages.

AIRBOSS.PlayerData.time

AIRBOSS.PlayerData.trapon

If true, save trap sheets.

AIRBOSS.PlayerData.trapsheet

Groove data table recorded every 0.5 seconds.

AIRBOSS.PlayerData.unit

Aircraft of the player.

AIRBOSS.PlayerData.unitname

Name of the unit.

AIRBOSS.PlayerData.valid

If true, player made a valid approach. Is set true on start of Groove X.

AIRBOSS.PlayerData.warning

Set true once the player got a warning.

AIRBOSS.PlayerData.waveoff

If true, player was waved off during final approach.

AIRBOSS.PlayerData.wire

Wire caught by player when trapped.

AIRBOSS.PlayerData.wofd

If true, player was waved off because of a foul deck.

AIRBOSS.PlayerData.wop

If true, player was waved off during the pattern.

Fields and Methods inherited from AIRBOSS.Radio Description

AIRBOSS.Radio.alias

Radio alias.

AIRBOSS.Radio.culture

AIRBOSS.Radio.frequency

Frequency in Hz.

AIRBOSS.Radio.gender

AIRBOSS.Radio.modulation

Band modulation.

AIRBOSS.Radio.voice

Fields and Methods inherited from AIRBOSS.RadioCall Description

AIRBOSS.RadioCall.duration

Duration of the sound in seconds. This is also the duration the subtitle is displayed.

AIRBOSS.RadioCall.file

Sound file name without suffix.

AIRBOSS.RadioCall.loud

Loud version of sound file available.

AIRBOSS.RadioCall.modexreceiver

Onboard number of the receiver (optional).

AIRBOSS.RadioCall.modexsender

Onboard number of the sender (optional).

AIRBOSS.RadioCall.sender

Sender of the message (optional). Default radio alias.

AIRBOSS.RadioCall.subduration

Duration in seconds the subtitle is displayed.

AIRBOSS.RadioCall.subtitle

Subtitle displayed during transmission.

AIRBOSS.RadioCall.suffix

File suffix/extension, e.g. "ogg".

Fields and Methods inherited from AIRBOSS.Radioitem Description

AIRBOSS.Radioitem.Tplay

Abs time when transmission should be played.

AIRBOSS.Radioitem.Tstarted

Abs time when transmission began to play.

AIRBOSS.Radioitem.call

Radio call.

AIRBOSS.Radioitem.interval

Interval in seconds after the last sound was played.

AIRBOSS.Radioitem.isplaying

Currently playing.

AIRBOSS.Radioitem.loud

If true, play loud version of file.

AIRBOSS.Radioitem.radio

Radio object.

Fields and Methods inherited from AIRBOSS.Recovery Description

AIRBOSS.Recovery.CASE

Recovery case (1-3) of that time slot.

AIRBOSS.Recovery.ID

Recovery window ID.

AIRBOSS.Recovery.OFFSET

Angle offset of the holding pattern in degrees. Usually 0, +-15, or +-30 degrees.

AIRBOSS.Recovery.OPEN

Recovery window is currently open.

AIRBOSS.Recovery.OVER

Recovery window is over and closed.

AIRBOSS.Recovery.SPEED

The speed in knots the carrier has during the recovery.

AIRBOSS.Recovery.START

Start of recovery in seconds of abs mission time.

AIRBOSS.Recovery.STOP

End of recovery in seconds of abs mission time.

AIRBOSS.Recovery.UTURN

If true, carrier makes a U-turn to the point it came from before resuming its route to the next waypoint.

AIRBOSS.Recovery.WIND

Carrier will turn into the wind.

AIRBOSS class.

Field(s)

#number AIRBOSS.AirbossFreq

Airboss radio frequency in MHz.

#string AIRBOSS.AirbossModu

Airboss radio modulation "AM" or "FM".

#AIRBOSS.Radio AIRBOSS.AirbossRadio

Radio for carrier calls.

#AIRBOSS.Checkpoint AIRBOSS.BreakEarly

Early break checkpoint.

#AIRBOSS.Checkpoint AIRBOSS.BreakEntry

Break entry checkpoint.

#AIRBOSS.Checkpoint AIRBOSS.BreakLate

Late break checkpoint.

#AIRBOSS.Checkpoint AIRBOSS.Bullseye

Case III intercept glideslope and follow ICLS aka "bullseye".

#string AIRBOSS.ClassName

Name of the class.

DCS#Vec3 AIRBOSS.Corientation

Carrier orientation in space.

DCS#Vec3 AIRBOSS.Corientlast

Last known carrier orientation.

Core.Point#COORDINATE AIRBOSS.Creturnto

Position to return to after turn into the wind leg is over.

#boolean AIRBOSS.Debug

Debug mode. Messages to all about status.

#AIRBOSS.Checkpoint AIRBOSS.DirtyUp

Case II/III dirty up and on speed position at 1200 ft and 10-12 NM from the carrier.

#AIRBOSS.Checkpoint AIRBOSS.Final

Checkpoint when turning to final.

#AIRBOSS.Checkpoint AIRBOSS.Groove

In the groove checkpoint.

#number AIRBOSS.ICLSchannel

ICLS channel.

#string AIRBOSS.ICLSmorse

ICLS morse code, e.g. "STN".

#boolean AIRBOSS.ICLSon

Automatic ICLS is activated.

#AIRBOSS.LSOCalls AIRBOSS.LSOCall

Radio voice overs of the LSO.

#number AIRBOSS.LSOFreq

LSO radio frequency in MHz.

#string AIRBOSS.LSOModu

LSO radio modulation "AM" or "FM".

#AIRBOSS.Radio AIRBOSS.LSORadio

Radio for LSO calls.

#number AIRBOSS.LSOdT

Time interval in seconds before the LSO will make its next call.

#AIRBOSS.MarshalCalls AIRBOSS.MarshalCall

Radio voice over of the Marshal/Airboss.

#number AIRBOSS.MarshalFreq

Marshal radio frequency in MHz.

#string AIRBOSS.MarshalModu

Marshal radio modulation "AM" or "FM".

#AIRBOSS.Radio AIRBOSS.MarshalRadio

Radio for carrier calls.

#table AIRBOSS.MenuF10

Main group level radio menu: F10 Other/Airboss.

#table AIRBOSS.MenuF10Root

Airboss mission level F10 root menu.

#AIRBOSS.Checkpoint AIRBOSS.Ninety

At the ninety checkpoint.

#number AIRBOSS.NmaxSection

Number of max section members (excluding the lead itself), i.e. NmaxSection=1 is a section of two.

#number AIRBOSS.NmaxStack

Number of max flights per stack. Default 2.

#number AIRBOSS.Nmaxmarshal

Number of max Case I Marshal stacks available. Default 3, i.e. angels 2, 3 and 4.

#number AIRBOSS.Nmaxpattern

Max number of aircraft in landing pattern.

#AIRBOSS.PilotCalls AIRBOSS.PilotCall

Radio voice over from AI pilots.

#AIRBOSS.Radio AIRBOSS.PilotRadio

Radio for Pilot calls.

#AIRBOSS.Checkpoint AIRBOSS.Platform

Case II/III descent at 2000 ft/min at 5000 ft platform.

#table AIRBOSS.Qmarshal

Queue of marshalling aircraft groups.

#table AIRBOSS.Qpattern

Queue of aircraft groups in the landing pattern.

#table AIRBOSS.Qspinning

Queue of aircraft currently spinning.

#table AIRBOSS.Qwaiting

Queue of aircraft groups waiting outside 10 NM zone for the next free Marshal stack.

#table AIRBOSS.RQLSO

Radio queue of LSO.

#table AIRBOSS.RQMarshal

Radio queue of marshal.

AIRBOSS.SRSQ

SRSQUEUE

#number AIRBOSS.TACANchannel

TACAN channel.

#string AIRBOSS.TACANmode

TACAN mode, i.e. "X" or "Y".

#string AIRBOSS.TACANmorse

TACAN morse code, e.g. "STN".

#boolean AIRBOSS.TACANon

Automatic TACAN is activated.

#number AIRBOSS.TQLSO

Abs mission time, the last transmission ended.

#number AIRBOSS.TQMarshal

Abs mission time, the last transmission ended.

#number AIRBOSS.Tbeacon

Last time the beacons were refeshed.

#number AIRBOSS.Tcollapse

Last time timer.gettime() the stack collapsed.

#number AIRBOSS.Tmessage

Default duration in seconds messages are displayed to players.

#number AIRBOSS.TowerFreq

Tower radio frequency in MHz.

#number AIRBOSS.Tqueue

Last time in seconds of timer.getTime() the queue was updated.

#AIRBOSS.Checkpoint AIRBOSS.Wake

Checkpoint right behind the carrier.

#boolean AIRBOSS.adinfinitum

If true, carrier patrols ad infinitum, i.e. when reaching its last waypoint it starts at waypoint one again.

Wrapper.Airbase#AIRBASE AIRBOSS.airbase

Carrier airbase object.

#boolean AIRBOSS.airbossnice

Airboss is a nice guy.

#string AIRBOSS.alias

Alias of the carrier.

#boolean AIRBOSS.autosave

If true, all player grades are automatically saved to a file on disk.

#string AIRBOSS.autosavefilename

File name of the auto player grades save file. Default is auto generated from carrier name/alias.

#string AIRBOSS.autosavepath

Path where the player grades file is saved on auto save.

Core.Beacon#BEACON AIRBOSS.beacon

Carrier beacon for TACAN and ICLS.

Wrapper.Unit#UNIT AIRBOSS.carrier

Aircraft carrier unit on which we want to practice.

#AIRBOSS.CarrierParameters AIRBOSS.carrierparam

Carrier specific parameters.

#string AIRBOSS.carriertype

Type name of aircraft carrier.

#number AIRBOSS.case

Recovery case I, II or III currently in progress.

#number AIRBOSS.collisiondist

Distance up to which collision checks are done.

#number AIRBOSS.currentwp

Current waypoint, i.e. the one that has been passed last.

#number AIRBOSS.dTbeacon

Time interval to refresh the beacons. Default 5 minutes.

#number AIRBOSS.dTqueue

Time interval in seconds for updating the queues etc.

#number AIRBOSS.dTstatus

Time interval for call FSM status updates.

#number AIRBOSS.defaultcase

Default recovery case. This is the case used if not specified otherwise.

#number AIRBOSS.defaultoffset

Default holding pattern update if not specified otherwise.

#string AIRBOSS.defaultskill

Default player skill AIRBOSS.Difficulty.

#boolean AIRBOSS.despawnshutdown

Despawn group after engine shutdown.

#boolean AIRBOSS.detour

If true, carrier is currently making a detour from its path along the ME waypoints.

#boolean AIRBOSS.emergency

If true (default), allow emergency landings, i.e. bypass any pattern and go for final approach.

Core.Set#SET_GROUP AIRBOSS.excludesetAI

AI groups in this set will be explicitly excluded from handling by the airboss and not forced into the Marshal pattern.

#table AIRBOSS.flights

List of all flights in the CCA.

#AIRBOSS.GLE AIRBOSS.gle

Glidesope error thresholds.

#boolean AIRBOSS.handleai

If true (default), handle AI aircraft.

#number AIRBOSS.holdingoffset

Offset [degrees] of Case II/III holding pattern.

#number AIRBOSS.holdtimestamp

Timestamp when the carrier first came to an unexpected hold.

#number AIRBOSS.initialmaxalt

Max altitude in meters to register in the inital zone.

#boolean AIRBOSS.intowindold

If true, use old into wind calculation.

#string AIRBOSS.lid

Class id string for output to DCS log file.

#number AIRBOSS.lowfuelAI

Low fuel threshold for AI groups in percent.

#AIRBOSS.LUE AIRBOSS.lue

Lineup error thresholds.

#number AIRBOSS.magvar

Magnetic declination in degrees.

#number AIRBOSS.marshalradius

Radius of the Marshal stack zone.

#table AIRBOSS.menuadded

Table of units where the F10 radio menu was added.

#boolean AIRBOSS.menumarkzones

If false, disables the option to mark zones via smoke or flares.

#boolean AIRBOSS.menusingle

If true, menu is optimized for a single carrier.

#boolean AIRBOSS.menusmokezones

If false, disables the option to mark zones via smoke.

#table AIRBOSS.players

Table of players.

#table AIRBOSS.playerscores

Table holding all player scores and grades.

#string AIRBOSS.radiorelayLSO

Name of the aircraft acting as sender for broadcasting LSO radio messages from the carrier. DCS shortcoming workaround.

#string AIRBOSS.radiorelayMSH

Name of the aircraft acting as sender for broadcasting Marhsal radio messages from the carrier. DCS shortcoming workaround.

#table AIRBOSS.recoverytimes

List of time windows when aircraft are recovered including the recovery case and holding offset.

#AIRBOSS.Recovery AIRBOSS.recoverywindow

Current or next recovery window opened.

#boolean AIRBOSS.respawnAI

If true, respawn AI flights as they enter the CCA to detach and airfields from the mission plan. Default false.

#string AIRBOSS.senderac

Name of the aircraft acting as sender for broadcasting radio messages from the carrier. DCS shortcoming workaround.

#number AIRBOSS.skipperCase

Manual recovery case.

#boolean AIRBOSS.skipperMenu

If true, add skipper menu.

#number AIRBOSS.skipperOffset

Holding offset angle in degrees for Case II/III manual recoveries.

#number AIRBOSS.skipperSpeed

Speed in knots for manual recovery start.

#number AIRBOSS.skipperTime

Recovery time in min for manual recovery.

#boolean AIRBOSS.skipperUturn

U-turn on/off via menu.

#string AIRBOSS.soundfolder

Folder within the mission (miz) file where airboss sound files are located.

#string AIRBOSS.soundfolderLSO

Folder withing the mission (miz) file where LSO sound files are stored.

#string AIRBOSS.soundfolderMSH

Folder withing the mission (miz) file where Marshal sound files are stored.

Core.Set#SET_GROUP AIRBOSS.squadsetAI

AI groups in this set will be handled by the airboss.

#boolean AIRBOSS.staticweather

Mission uses static rather than dynamic weather.

Ops.RecoveryTanker#RECOVERYTANKER AIRBOSS.tanker

Recovery tanker flying overhead of carrier.

#string AIRBOSS.theatre

The DCS map used in the mission.

#string AIRBOSS.trappath

Path where to save the trap sheets.

#string AIRBOSS.trapprefix

File prefix for trap sheet files.

#boolean AIRBOSS.trapsheet

If true, players can save their trap sheets.

#boolean AIRBOSS.turning

If true, carrier is currently turning.

#boolean AIRBOSS.turnintowind

If true, carrier is currently turning into the wind.

#boolean AIRBOSS.usersoundradio

Use user sound output instead of radio transmissions.

#string AIRBOSS.version

Airboss class version.

#table AIRBOSS.waypoints

Waypoint coordinates of carrier.

#boolean AIRBOSS.welcome

If true, display welcome message to player.

#number AIRBOSS.windowcount

Running number counting the recovery windows.

Core.Zone#ZONE_UNIT AIRBOSS.zoneCCA

Carrier controlled area (CCA), i.e. a zone of 50 NM radius around the carrier.

Core.Zone#ZONE_UNIT AIRBOSS.zoneCCZ

Carrier controlled zone (CCZ), i.e. a zone of 5 NM radius around the carrier.

AIRBOSS.zoneHolding

Create holding zone.

Function(s)

Add a group to the exclude set.

If no set exists, it is created.

Defined in:

AIRBOSS

Parameter:

The group to be excluded.

Return value:

self

Add aircraft recovery time window and recovery case.

Defined in:

AIRBOSS

Parameters:

#string starttime

Start time, e.g. "8:00" for eight o'clock. Default now.

#string stoptime

Stop time, e.g. "9:00" for nine o'clock. Default 90 minutes after start time.

#number case

Recovery case for that time slot. Number between one and three.

#number holdingoffset

Only for CASE II/III: Angle in degrees the holding pattern is offset.

#boolean turnintowind

If true, carrier will turn into the wind 5 minutes before the recovery window opens.

#number speed

Speed in knots during turn into wind leg.

#boolean uturn

If true (or nil), carrier wil perform a U-turn and go back to where it came from before resuming its route to the next waypoint. If false, it will go directly to the next waypoint.

Return value:

Recovery window.

Broadcast radio message.

Defined in:

AIRBOSS

Parameters:

Radio sending transmission.

Radio sound files and subtitles.

#boolean loud

Play loud version of file.

Let the carrier make a detour to a given point.

When it reaches the point, it will resume its normal route.

Defined in:

AIRBOSS

Parameters:

Coordinate of the detour.

#number speed

Speed in knots. Default is current carrier velocity.

#boolean uturn

(Optional) If true, carrier will go back to where it came from before it resumes its route to the next waypoint.

#number uspeed

Speed in knots after U-turn. Default is same as before.

Additional coordinate to make turn smoother.

Return value:

self

Carrier resumes the route at its next waypoint.

Defined in:

AIRBOSS

Parameter:

(Optional) First goto this coordinate before resuming route.

Return value:

self

Let the carrier turn into the wind.

Defined in:

AIRBOSS

Parameters:

#number time

Time in seconds.

#number vdeck

Speed on deck m/s. Carrier will

#boolean uturn

Make U-turn and go back to initial after downwind leg.

Return value:

self

Close currently running recovery window and stop recovery ops.

Recovery window is deleted.

Defined in:

AIRBOSS

Parameter:

#number Delay

(Optional) Delay in seconds before the window is deleted.

Delete all recovery windows.

Defined in:

AIRBOSS

Parameter:

#number Delay

(Optional) Delay in seconds before the windows are deleted.

Return value:

self

Delete a recovery window.

If the window is currently open, it is closed and the recovery stopped.

Defined in:

AIRBOSS

Parameters:

Recovery window.

#number Delay

Delay in seconds, before the window is deleted.

Set up SRS for usage without sound files

Defined in:

AIRBOSS

Parameters:

#string PathToSRS

Path to SRS folder, e.g. "C:\Program Files\DCS-SimpleRadio-Standalone".

#number Port

Port of the SRS server, defaults to 5002.

#string Culture

(Optional, Airboss Culture) Culture, defaults to "en-US".

#string Gender

(Optional, Airboss Gender) Gender, e.g. "male" or "female". Defaults to "male".

#string Voice

(Optional, Airboss Voice) Set to use a specific voice. Will override gender and culture settings.

#string GoogleCreds

(Optional) Path to Google credentials, e.g. "C:\Program Files\DCS-SimpleRadio-Standalone\yourgooglekey.json".

#number Volume

(Optional) E.g. 0.75. Defaults to 1.0 (loudest).

#table AltBackend

(Optional) See MSRS for details.

Return value:

self

Get base recovery course (BRC) of carrier.

The is the magnetic heading of the carrier.

Defined in:

AIRBOSS

Return value:

#number:

BRC in degrees.

Get base recovery course (BRC) when the carrier would head into the wind.

This includes the current wind direction and accounts for the angled runway.

Defined in:

AIRBOSS

Parameter:

#number vdeck

Desired wind velocity over deck in knots.

Return value:

#number:

BRC into the wind in degrees.

Get carrier coalition.

Defined in:

AIRBOSS

Return value:

#number:

Coalition side of carrier.

Get carrier coordinate.

Defined in:

AIRBOSS

Return value:

Carrier coordinate.

Get carrier coordinate.

Defined in:

AIRBOSS

Return value:

Carrier coordinate.

Get final bearing (FB) of carrier.

By default, the routine returns the magnetic FB depending on the current map (Caucasus, NTTR, Normandy, Persion Gulf etc). The true bearing can be obtained by setting the TrueNorth parameter to true.

Defined in:

AIRBOSS

Parameter:

#boolean magnetic

If true, magnetic FB is returned.

Return value:

#number:

FB in degrees.

Get true (or magnetic) heading of carrier.

Defined in:

AIRBOSS

Parameter:

#boolean magnetic

If true, calculate magnetic heading. By default true heading is returned.

Return value:

#number:

Carrier heading in degrees.

Get true (or magnetic) heading of carrier into the wind.

This accounts for the angled runway.

Defined in:

AIRBOSS

Parameters:

#number vdeck

Desired wind velocity over deck in knots.

#boolean magnetic

If true, calculate magnetic heading. By default true heading is returned.

(Optional) Coordinate from which heading is calculated. Default is current carrier position.

Return values:

#number:

Carrier heading in degrees.

#number:

Carrier speed in knots to reach desired wind speed on deck.

Get true (or magnetic) heading of carrier into the wind.

This accounts for the angled runway. Implementation based on Mags & Bambi.

Defined in:

AIRBOSS

Parameters:

#number vdeck

Desired wind velocity over deck in knots.

#boolean magnetic

If true, calculate magnetic heading. By default true heading is returned.

(Optional) Coordinate from which heading is calculated. Default is current carrier position.

Return values:

#number:

Carrier heading in degrees.

#number:

Carrier speed in knots to reach desired wind speed on deck.

Get true (or magnetic) heading of carrier into the wind.

This accounts for the angled runway.

Defined in:

AIRBOSS

Parameters:

#number vdeck

Desired wind velocity over deck in knots.

#boolean magnetic

If true, calculate magnetic heading. By default true heading is returned.

(Optional) Coordinate from which heading is calculated. Default is current carrier position.

Return value:

#number:

Carrier heading in degrees.

Get next time the carrier will start recovering aircraft.

Defined in:

AIRBOSS

Parameter:

#boolean InSeconds

If true, abs. mission time seconds is returned. Default is a clock #string.

Return values:

#string:

Clock start (or start time in abs. seconds).

#string:

Clock stop (or stop time in abs. seconds).

Get radial with respect to carrier BRC or FB and (optionally) holding offset.

  • case=1: radial=FB-180
  • case=2: radial=HDG-180 (+offset)
  • case=3: radial=FB-180 (+offset)

Defined in:

AIRBOSS

Parameters:

#number case

Recovery case.

#boolean magnetic

If true, magnetic radial is returned. Default is true radial.

#boolean offset

If true, inlcude holding offset.

#boolean inverse

Return inverse, i.e. radial-180 degrees.

Return value:

#number:

Radial in degrees.

Return the recovery window of the given ID.

Defined in:

AIRBOSS

Parameter:

#number id

The ID of the recovery window.

Return value:

Recovery window with the right ID or nil if no such window exists.

Get wind direction and speed at carrier position.

Defined in:

AIRBOSS

Parameters:

#number alt

Altitude ASL in meters. Default 18 m.

#boolean magnetic

Direction including magnetic declination.

(Optional) Coordinate at which to get the wind. Default is current carrier position.

Return values:

#number:

Direction the wind is blowing from in degrees.

#number:

Wind speed in m/s.

Get wind speed on carrier deck parallel and perpendicular to runway.

Defined in:

AIRBOSS

Parameter:

#number alt

Altitude in meters. Default 18 m.

Return values:

#number:

Wind component parallel to runway im m/s.

#number:

Wind component perpendicular to runway in m/s.

#number:

Total wind strength in m/s.

Triggers the FSM event "Idle" that puts the carrier into state "Idle" where no recoveries are carried out.

Defined in:

AIRBOSS

Check if carrier is idle, i.e.

no operations are carried out.

Defined in:

AIRBOSS

Return value:

#boolean:

If true, carrier is in idle state.

Check if recovery of aircraft is paused.

Defined in:

AIRBOSS

Return value:

#boolean:

If true, recovery is paused

Check if carrier is recovering aircraft.

Defined in:

AIRBOSS

Return value:

#boolean:

If true, time slot for recovery is open.

Triggers the FSM event "LSOGrade".

Called when the LSO grades a player

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player Data.

LSO grade.

Triggers the FSM event "Load" that loads the player scores from a file.

AIRBOSS FSM must not be started at this point.

Defined in:

AIRBOSS

Parameters:

#string path

Path where the file is located. Default is the DCS installation root directory.

#string filename

(Optional) File name. Default is AIRBOSS-_LSOgrades.csv.

Triggers the FSM event "Marshal".

Called when a flight is send to the Marshal stack.

Defined in:

AIRBOSS

Parameter:

The flight group data.

Send text message to all players in the marshal queue.

Message format will be "SENDER: RECCEIVER, MESSAGE".

Defined in:

AIRBOSS

Parameters:

#string message

The message to send.

#string sender

The person who sends the message or nil.

#string receiver

The person who receives the message. Default player's onboard number. Set to "" for no receiver.

#number duration

Display message duration. Default 10 seconds.

#boolean clear

If true, clear screen from previous messages.

#number delay

Delay in seconds, before the message is displayed.

Send text message to all players in the pattern queue.

Message format will be "SENDER: RECCEIVER, MESSAGE".

Defined in:

AIRBOSS

Parameters:

#string message

The message to send.

#string sender

The person who sends the message or nil.

#string receiver

The person who receives the message. Default player's onboard number. Set to "" for no receiver.

#number duration

Display message duration. Default 10 seconds.

#boolean clear

If true, clear screen from previous messages.

#number delay

Delay in seconds, before the message is displayed.

Send text message to player client.

Message format will be "SENDER: RECCEIVER, MESSAGE".

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#string message

The message to send.

#string sender

The person who sends the message or nil.

#string receiver

The person who receives the message. Default player's onboard number. Set to "" for no receiver.

#number duration

Display message duration. Default 10 seconds.

#boolean clear

If true, clear screen from previous messages.

#number delay

Delay in seconds, before the message is displayed.

Create a new AIRBOSS class object for a specific aircraft carrier unit.

Defined in:

AIRBOSS

Parameters:

carriername

Name of the aircraft carrier unit as defined in the mission editor.

alias

(Optional) Alias for the carrier. This will be used for radio messages and the F10 radius menu. Default is the carrier name as defined in the mission editor.

Return value:

self or nil if carrier unit does not exist.

On after "LSOGrade" user function.

Called when the carrier passes a waypoint of its route.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#AIRBOSS.PlayerData playerData

Player Data.

LSO grade.

On after "Load" event user function.

Called when the player scores are loaded from disk.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#string path

Path where the file is located. Default is the DCS installation root directory or your "Saved Games\DCS" folder if lfs was desanitized.

#string filename

(Optional) File name. Default is AIRBOSS-ALIAS_LSOgrades.csv.

On after "Marshal" user function.

Called when a flight is send to the Marshal stack.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The flight group data.

On after "PassingWaypoint" user function.

Called when the carrier passes a waypoint of its route.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number waypoint

Number of waypoint.

On after "RecoveryStart" user function.

Called when recovery of aircraft is started and carrier switches to state "Recovering".

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number Case

The recovery case (1, 2 or 3) to start.

#number Offset

Holding pattern offset angle in degrees for CASE II/III recoveries.

On after "RecoveryStop" user function.

Called when recovery of aircraft is stopped.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "Save" event user function.

Called when the player scores are saved to disk.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#string path

Path where the file is saved. Default is the DCS installation root directory or your "Saved Games\DCS" folder if lfs was desanitized.

#string filename

(Optional) File name. Default is AIRBOSS-ALIAS_LSOgrades.csv.

On after "Start" user function.

Called when the AIRBOSS FSM is started.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

Airboss event handler for event birth.

Defined in:

AIRBOSS

Parameter:

Airboss event handler for event crash.

Defined in:

AIRBOSS

Parameter:

Airboss event handler for event Ejection.

Defined in:

AIRBOSS

Parameter:

Airboss event handler for event that a unit shuts down its engines.

Defined in:

AIRBOSS

Parameter:

Airboss event function handling the mission end event.

Handles the case when the mission is ended.

Defined in:

AIRBOSS

Parameter:

Event data.

Airboss event handler for event REMOVEUNIT.

Defined in:

AIRBOSS

Parameter:

Airboss event handler for event land.

Defined in:

AIRBOSS

Parameter:

Airboss event handler for event that a unit takes off.

Defined in:

AIRBOSS

Parameter:

Triggers the FSM event "PassingWaypoint".

Called when the carrier passes a waypoint.

Defined in:

AIRBOSS

Parameter:

#number waypoint

Number of waypoint.

Add Radio transmission to radio queue.

Defined in:

AIRBOSS

Parameters:

Radio sending the transmission.

Radio sound files and subtitles.

#boolean loud

If true, play loud sound file version.

#number delay

Delay in seconds, before the message is broadcasted.

#number interval

Interval in seconds after the last sound has been played.

#boolean click

If true, play radio click at the end.

#boolean pilotcall

If true, it's a pilot call.

Triggers the FSM event "RecoveryCase" that switches the aircraft recovery case.

Defined in:

AIRBOSS

Parameters:

#number Case

The new recovery case (1, 2 or 3).

#number Offset

Holding pattern offset angle in degrees for CASE II/III recoveries.

Triggers the FSM event "RecoveryPause" that pauses the recovery of aircraft.

Defined in:

AIRBOSS

Parameter:

#number duration

Duration of pause in seconds. After that recovery is automatically resumed.

Triggers the FSM event "RecoveryStart" that starts the recovery of aircraft.

Marshalling aircraft are send to the landing pattern.

Defined in:

AIRBOSS

Parameters:

#number Case

Recovery case (1, 2 or 3) that is started.

#number Offset

Holding pattern offset angle in degrees for CASE II/III recoveries.

Triggers the FSM event "RecoveryStop" that stops the recovery of aircraft.

Defined in:

AIRBOSS

Triggers the FSM event "RecoveryUnpause" that resumes the recovery of aircraft if it was paused.

Defined in:

AIRBOSS

Triggers the FSM event "Save" that saved the player scores to a file.

Defined in:

AIRBOSS

Parameters:

#string path

Path where the file is saved. Default is the DCS installation root directory or your "Saved Games\DCS" folder if lfs was desanitized.

#string filename

(Optional) File name. Default is AIRBOSS-ALIAS_LSOgrades.csv.

Define an AWACS associated with the carrier.

Defined in:

AIRBOSS

Parameter:

AWACS (recovery tanker) object.

Return value:

self

Airboss is a rather nice guy and not strictly following the rules.

Fore example, he does allow you into the landing pattern if you are not coming from the Marshal stack.

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true or nil, Airboss bends the rules a bit.

Return value:

self

Set Airboss radio frequency and modulation.

Default frequency is Tower frequency.

Defined in:

AIRBOSS

Parameters:

#number Frequency

(Optional) Frequency in MHz. Default frequency is Tower frequency.

#string Modulation

(Optional) Modulation, "AM" or "FM". Default "AM".

#string Voice

(Optional) SRS specific voice

#string Gender

(Optional) SRS specific gender

#string Culture

(Optional) SRS specific culture

Return value:

self

Usage:

   -- Set single frequency
   myairboss:SetAirbossRadio(127.5,"AM",MSRS.Voices.Google.Standard.en_GB_Standard_F)

   -- Set multiple frequencies, note you **need** to pass one modulation per frequency given!
   myairboss:SetAirbossRadio({127.5,243},{radio.modulation.AM,radio.modulation.AM},MSRS.Voices.Google.Standard.en_GB_Standard_F)

Enable auto save of player results each time a player is finally graded.

Finally means after the player landed on the carrier! After intermediate passes (bolter or waveoff) the stats are not saved.

Defined in:

AIRBOSS

Parameters:

#string path

Path where to save the asset data file. Default is the DCS root installation directory or your "Saved Games\DCS" folder if lfs was desanitized.

#string filename

File name. Default is generated automatically from airboss carrier name/alias.

Return value:

self

Set beacon (TACAN/ICLS) time refresh interfal in case the beacons die.

Defined in:

AIRBOSS

Parameter:

#number TimeInterval

(Optional) Time interval in seconds. Default 1200 sec = 20 min.

Return value:

self

Set carrier controlled area (CCA).

This is a large zone around the carrier, which is constantly updated wrt the carrier position.

Defined in:

AIRBOSS

Parameter:

#number Radius

Radius of zone in nautical miles (NM). Default 50 NM.

Return value:

self

Set carrier controlled zone (CCZ).

This is a small zone (usually 5 NM radius) around the carrier, which is constantly updated wrt the carrier position.

Defined in:

AIRBOSS

Parameter:

#number Radius

Radius of zone in nautical miles (NM). Default 5 NM.

Return value:

self

Set distance up to which water ahead is scanned for collisions.

Defined in:

AIRBOSS

Parameter:

#number Distance

Distance in NM. Default 5 NM.

Return value:

self

Deactivate debug mode.

This is also the default setting.

Defined in:

AIRBOSS

Return value:

self

Activate debug mode.

Display debug messages on screen.

Defined in:

AIRBOSS

Return value:

self

Set duration how long messages are displayed to players.

Defined in:

AIRBOSS

Parameter:

#number Duration

Duration in seconds. Default 10 sec.

Return value:

self

Set default player skill.

New players will be initialized with this skill.

Defined in:

AIRBOSS

Parameter:

#string skill

Player skill. Default "Naval Aviator".

Return value:

self

Despawn AI groups after they they shut down their engines.

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true or nil, AI groups are despawned.

Return value:

self

Allow emergency landings, i.e.

bypassing any pattern and go directly to final approach.

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true or nil, emergency landings are okay.

Return value:

self

Define a set of AI groups that excluded from AI handling.

Members of this set will be left allone by the airboss and not forced into the Marshal pattern.

Defined in:

AIRBOSS

Parameter:

The set of AI groups which are excluded.

Return value:

self

Will play the inbound calls, commencing, initial, etc.

from the player when requesteing marshal

Defined in:

AIRBOSS

Parameter:

#AIRBOSS status

Boolean to activate (true) / deactivate (false) the radio inbound calls (default is ON)

Return value:

self

Will simulate the inbound call, commencing, initial, etc from the AI when requested by Airboss

Defined in:

AIRBOSS

Parameter:

#AIRBOSS status

Boolean to activate (true) / deactivate (false) the radio inbound calls (default is ON)

Return value:

self

Set FunkMan socket.

LSO grades and trap sheets will be send to your Discord bot. Requires running FunkMan program.

Defined in:

AIRBOSS

Parameters:

#number Port

Port. Default 10042.

#string Host

Host. Default "127.0.0.1".

Return value:

self

Defined in:

AIRBOSS

Parameters:

_max

_min

High

HIGH

Low

LOW

Do not handle AI aircraft.

Defined in:

AIRBOSS

Return value:

self

Handle AI aircraft.

Defined in:

AIRBOSS

Return value:

self

Set holding pattern offset from final bearing for Case II/III recoveries.

Usually, this is +-15 or +-30 degrees. You should not use and offset angle >= 90 degrees, because this will cause a devision by zero in some of the equations used to calculate the approach corridor. So best stick to the defaults up to 30 degrees.

Defined in:

AIRBOSS

Parameter:

#number Offset

Offset angle in degrees. Default 0.

Return value:

self

Set ICLS channel of carrier.

Defined in:

AIRBOSS

Parameters:

#number Channel

(Optional) ICLS channel. Default 1.

#string MorseCode

(Optional) Morse code identifier. Three letters, e.g. "STN". Default "STN".

Return value:

self

Disable automatic ICLS activation.

Defined in:

AIRBOSS

Return value:

self

Set max altitude to register flights in the initial zone.

Aircraft above this altitude will not be registerered.

Defined in:

AIRBOSS

Parameter:

#number MaxAltitude

Max altitude in feet. Default 1300 ft.

Return value:

self

Set if old into wind calculation is used when carrier turns into the wind for a recovery.

Defined in:

AIRBOSS

Parameter:

#boolean SwitchOn

If true or nil, use old into wind calculation.

Return value:

self

Set time interval between LSO calls.

Optimal time in the groove is ~16 seconds. So the default of 4 seconds gives around 3-4 correction calls in the groove.

Defined in:

AIRBOSS

Parameter:

#number TimeInterval

Time interval in seconds between LSO calls. Default 4 sec.

Return value:

self

Set LSO radio frequency and modulation.

Default frequency is 264 MHz AM.

Defined in:

AIRBOSS

Parameters:

#number Frequency

(Optional) Frequency in MHz. Default 264 MHz.

#string Modulation

(Optional) Modulation, "AM" or "FM". Default "AM".

#string Voice

(Optional) SRS specific voice

#string Gender

(Optional) SRS specific gender

#string Culture

(Optional) SRS specific culture

Return value:

self

Defined in:

AIRBOSS

Parameters:

_max

_min

Left

LeftMed

LEFT

Right

RightMed

RIGHT

Set multiplayer environment wire correction.

Defined in:

AIRBOSS

Parameter:

#number Dcorr

Correction distance in meters. Default 12 m.

Return value:

self

Set the magnetic declination (or variation).

By default this is set to the standard declination of the map.

Defined in:

AIRBOSS

Parameter:

#number declination

Declination in degrees or nil for default declination of the map.

Return value:

self

Set Marshal radio frequency and modulation.

Default frequency is 305 MHz AM.

Defined in:

AIRBOSS

Parameters:

#number Frequency

(Optional) Frequency in MHz. Default 305 MHz.

#string Modulation

(Optional) Modulation, "AM" or "FM". Default "AM".

#string Voice

(Optional) SRS specific voice

#string Gender

(Optional) SRS specific gender

#string Culture

(Optional) SRS specific culture

Return value:

self

Set Case I Marshal radius.

This is the radius of the valid zone around "the post" aircraft are supposed to be holding in the Case I Marshal stack. The post is 2.5 NM port of the carrier.

Defined in:

AIRBOSS

Parameter:

#number Radius

Radius in NM. Default 2.8 NM, which gives a diameter of 5.6 NM.

Return value:

self

Set max number of flights per stack.

All members of a section count as one "flight".

Defined in:

AIRBOSS

Parameter:

#number nmax

Number of max allowed flights per stack. Default is two. Minimum is one, maximum is 4.

Return value:

self

Set number of aircraft units, which can be in the landing pattern before the pattern is full.

Defined in:

AIRBOSS

Parameter:

#number nmax

Max number. Default 4. Minimum is 1, maximum is 6.

Return value:

self

Set number available Case I Marshal stacks.

If Marshal stacks are full, flights requesting Marshal will be told to hold outside 10 NM zone until a stack becomes available again. Marshal stacks for Case II/III are unlimited.

Defined in:

AIRBOSS

Parameter:

#number nmax

Max number of stacks available to players and AI flights. Default 3, i.e. angels 2, 3, 4. Minimum is 1.

Return value:

self

Set max number of section members.

Minimum is one, i.e. the section lead itself. Maximum number is four. Default is two, i.e. the lead and one other human flight.

Defined in:

AIRBOSS

Parameter:

#number nmax

Number of max allowed members including the lead itself. For example, Nmax=2 means a section lead plus one member.

Return value:

self

Enable or disable F10 radio menu for marking zones via smoke or flares.

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true or nil, menu is enabled. If false, menu is not available to players.

Return value:

self

Enable F10 menu to manually start recoveries.

Defined in:

AIRBOSS

Parameters:

#number Duration

Default duration of the recovery in minutes. Default 30 min.

#number WindOnDeck

Default wind on deck in knots. Default 25 knots.

#boolean Uturn

U-turn after recovery window closes on=true or off=false/nil. Default off.

#number Offset

Relative Marshal radial in degrees for Case II/III recoveries. Default 30°.

Return value:

self

Optimized F10 radio menu for a single carrier.

The menu entries will be stored directly under F10 Other/Airboss/ and not F10 Other/Airboss/"Carrier Alias"/. WARNING: If you use this with two airboss objects/carriers, the radio menu will be screwed up!

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true or nil single menu is enabled. If false, menu is for multiple carriers in the mission.

Return value:

self

Enable or disable F10 radio menu for marking zones via smoke.

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true or nil, menu is enabled. If false, menu is not available to players.

Return value:

self

Carrier patrols ad inifintum.

If the last waypoint is reached, it will go to waypoint one and repeat its route.

Defined in:

AIRBOSS

Parameter:

#boolean switch

If true or nil, patrol until the end of time. If false, go along the waypoints once and stop.

Return value:

self

Set time interval for updating queues and other stuff.

Defined in:

AIRBOSS

Parameter:

#number TimeInterval

Time interval in seconds. Default 30 sec.

Return value:

self

Set unit acting as radio relay for the LSO radio.

Defined in:

AIRBOSS

Parameter:

#string unitname

Name of the unit.

Return value:

self

Set unit acting as radio relay for the Marshal radio.

Defined in:

AIRBOSS

Parameter:

#string unitname

Name of the unit.

Return value:

self

Set unit name for sending radio messages.

Defined in:

AIRBOSS

Parameter:

#string unitname

Name of the unit.

Return value:

self

Set the default recovery case.

Defined in:

AIRBOSS

Parameter:

#number Case

Case of recovery. Either 1, 2 or 3. Default 1.

Return value:

self

Define recovery tanker associated with the carrier.

Defined in:

AIRBOSS

Parameter:

Recovery tanker object.

Return value:

self

Set time before carrier turns and recovery window opens.

Defined in:

AIRBOSS

Parameter:

#number Interval

Time interval in seconds. Default 300 sec.

Return value:

self

Give AI aircraft the refueling task if a recovery tanker is present or send them to the nearest divert airfield.

Defined in:

AIRBOSS

Parameter:

#number LowFuelThreshold

Low fuel threshold in percent. AI will go refueling if their fuel level drops below this value. Default 10 %.

Return value:

self

Respawn AI groups once they reach the CCA.

Clears any attached airbases and allows making them land on the carrier via script.

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true or nil, AI groups are respawned.

Return value:

self

Set SRS voice for the pilot calls.

Defined in:

AIRBOSS

Parameters:

#string Voice

(Optional) SRS specific voice

#string Gender

(Optional) SRS specific gender

#string Culture

(Optional) SRS specific culture

Return value:

self

Set folder path where the airboss sound files are located within you mission (miz) file.

The default path is "l10n/DEFAULT/" but sound files simply copied there will be removed by DCS the next time you save the mission. However, if you create a new folder inside the miz file, which contains the sounds, it will not be deleted and can be used.

Defined in:

AIRBOSS

Parameter:

#string FolderPath

The path to the sound files, e.g. "Airboss Soundfiles/".

Return value:

self

Define a set of AI groups that are handled by the airboss.

Defined in:

AIRBOSS

Parameter:

The set of AI groups which are handled by the airboss.

Return value:

self

Specify weather the mission has set static or dynamic weather.

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true or nil, mission uses static weather. If false, dynamic weather is used in this mission.

Return value:

self

Set time interval for updating player status and other things.

Defined in:

AIRBOSS

Parameter:

#number TimeInterval

Time interval in seconds. Default 0.5 sec.

Return value:

self

Set TACAN channel of carrier and switches TACAN on.

Defined in:

AIRBOSS

Parameters:

#number Channel

(Optional) TACAN channel. Default 74.

#string Mode

(Optional) TACAN mode, i.e. "X" or "Y". Default "X".

#string MorseCode

(Optional) Morse code identifier. Three letters, e.g. "STN". Default "STN".

Return value:

self

Disable automatic TACAN activation

Defined in:

AIRBOSS

Return value:

self

Enable saving of player's trap sheets and specify an optional directory path.

Defined in:

AIRBOSS

Parameters:

#string Path

(Optional) Path where to save the trap sheets.

#string Prefix

(Optional) Prefix for trap sheet files. File name will be saved as *prefix_aircrafttype-0001.csv*, *prefix_aircrafttype-0002.csv*, etc.

Return value:

self

Use user sound output instead of radio transmission for messages.

Might be handy if radio transmissions are broken.

Defined in:

AIRBOSS

Return value:

self

Init voice over radio transmission call.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.RadioCall radiocall

LSO or Marshal radio call object.

#number duration

Duration of the voice over in seconds.

#string subtitle

(Optional) Subtitle to be displayed along with voice over.

#number subduration

(Optional) Duration how long the subtitle is displayed.

#string filename

(Optional) Name of the voice over sound file.

#string suffix

(Optional) Extention of file. Default ".ogg".

Set parameters for LSO Voice overs by funkyfranky.

Defined in:

AIRBOSS

Parameter:

#string mizfolder

(Optional) Folder within miz file where the sound files are located.

Set parameters for LSO Voice overs by Raynor.

Defined in:

AIRBOSS

Parameter:

#string mizfolder

(Optional) Folder within miz file where the sound files are located.

Intit parameters for Marshal Voice overs by funkyfranky.

Defined in:

AIRBOSS

Parameter:

#string mizfolder

(Optional) Folder within miz file where the sound files are located.

Init parameters for Marshal Voice overs Gabriella by HighwaymanEd.

Defined in:

AIRBOSS

Parameter:

#string mizfolder

(Optional) Folder within miz file where the sound files are located.

Init parameters for Marshal Voice overs by Raynor.

Defined in:

AIRBOSS

Parameter:

#string mizfolder

(Optional) Folder within miz file where the sound files are located.

Set welcome messages for players.

Defined in:

AIRBOSS

Parameter:

#boolean Switch

If true, display welcome message to player.

Return value:

self

Player user sound to player if he is inside the CCA.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

The radio used for transmission.

Radio sound files and subtitles.

#boolean loud

If true, play loud sound file version.

#number delay

Delay in seconds, before the message is broadcasted.

Test LSO radio sounds.

Defined in:

AIRBOSS

Parameter:

#number delay

Delay in seconds be sound check starts.

Return value:

self

Test Marshal radio sounds.

Defined in:

AIRBOSS

Parameter:

#number delay

Delay in seconds be sound check starts.

Return value:

self

Triggers the FSM event "Start" that starts the airboss.

Initializes parameters and starts event handlers.

Defined in:

AIRBOSS

Triggers the FSM event "Stop" that stops the airboss.

Event handlers are stopped.

Defined in:

AIRBOSS

Abeam position.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Pattern aborted.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#number X

X distance player to carrier.

#number Z

Z distance player to carrier.

Checkpoint data.

#boolean patternwo

(Optional) Pattern wave off.

Activate TACAN and ICLS beacons.

Defined in:

AIRBOSS

Add menu commands for player.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name of player unit.

Add flight to pattern queue and set recoverd to false for all elements of the flight and its section members.

Defined in:

AIRBOSS

Parameters:

group of element.

flight

Add a flight group to the Marshal queue at a specific stack.

Flight is informed via message. This fixes the recovery case to the current case ops in progress self.case).

Defined in:

AIRBOSS

Parameters:

Flight group.

#number stack

Marshal stack. This (re-)sets the flag value.

Append text to debriefing.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#string hint

Debrief text of this step.

#string step

(Optional) Current step in the pattern. Default from playerData.

Evaluate player's altitude at checkpoint.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#number altopt

Optimal altitude in meters.

Return values:

#string:

Feedback text.

#string:

Debriefing text.

Radio call.

Score for correct AoA.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#number optaoa

Optimal AoA.

Return values:

#string:

Feedback message text or easy and normal difficulty level or nil for hard.

#string:

Debriefing text.

Radio call.

Convert AoA from degrees to arbitrary units.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#number degrees

AoA in degrees.

Return value:

#number:

AoA in arbitrary units.

Convert AoA from arbitrary units to degrees.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#number aoaunits

AoA in arbitrary units.

Return value:

#number:

AoA in degrees.

Arc in turn for case II/III recoveries.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Arc out turn for case II/III recoveries.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Provide info about player status on the fly.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Bolter pattern.

Sends player to abeam for Case I/II or Bullseye for Case III ops.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Break.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#string part

Part of the break.

Break entry for case I/II recoveries.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Intercept glide slop and follow ICLS, aka Bullseye for case III recovery.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Return value:

#boolean:

If true, player is in bullseye zone.

Check AI status.

Pattern queue AI in the groove? Marshal queue AI arrived in holding zone?

Defined in:

AIRBOSS

Check if a player is within the right area.

Defined in:

AIRBOSS

Parameters:

#number X

X distance player to carrier.

#number Z

Z distance player to carrier.

Position data limits.

Return value:

#boolean:

If true, approach should be aborted.

Check if carrier is turning.

If turning started or stopped, we inform the players via radio message.

Defined in:

AIRBOSS

Check for possible collisions between two coordinates.

Defined in:

AIRBOSS

Parameters:

Coordinate to which the collision is check.

Coordinate from which the collision is check.

Return values:

#boolean:

If true, surface type ahead is not deep water.

#number:

Max free distance in meters.

Check if player is in CASE II/III approach corridor.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Long downwind leg check.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Check if other aircraft are currently on the landing runway.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Return value:

boolean If true, we have a foul deck.

Check Collision.

Defined in:

AIRBOSS

Parameter:

Coordinate from which the path to the next WP is calculated. Default current carrier position.

Return value:

#boolean:

If true, surface type ahead is not deep water.

Check limits for reaching next step.

Defined in:

AIRBOSS

Parameters:

#number X

X position of player unit.

#number Z

Z position of player unit.

Checkpoint.

Return value:

#boolean:

If true, checkpoint condition for next step was reached.

Checks if a player is in the pattern queue and has missed a step in Case II/III approach.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Check if heading or position of carrier have changed significantly.

Defined in:

AIRBOSS

Check if player in the landing pattern is too close to another aircarft in the pattern.

Defined in:

AIRBOSS

Parameter:

Player data.

Check current player status.

Defined in:

AIRBOSS

Check marshal and pattern queues.

Defined in:

AIRBOSS

Check radio queue for transmissions to be broadcasted.

Defined in:

AIRBOSS

Parameters:

#table radioqueue

The radio queue.

#string name

Name of the queue.

Function called by DCS timer.

Unused.

Defined in:

AIRBOSS

Parameters:

#table param

Parameters.

#number time

Time.

Check recovery times and start/stop recovery mode of aircraft.

Defined in:

AIRBOSS

Check if all elements of a flight were recovered.

This also checks potential section members. If so, flight is removed from the queue.

Defined in:

AIRBOSS

Parameter:

Flight group to check.

Return value:

#boolean:

If true, all elements landed.

LSO check if player needs to wave off.

Wave off conditions are:

  • Glideslope error <1.2 or >1.8 degrees.
  • |Line up error| > 3 degrees.
  • AoA check but only for TOPGUN graduates.

Defined in:

AIRBOSS

Parameters:

#number glideslopeError

Glideslope error in degrees.

#number lineupError

Line up error in degrees.

#number AoA

Angle of attack of player aircraft.

#AIRBOSS.PlayerData playerData

Player data.

Return value:

#boolean:

If true, player should wave off!

Clear flight for landing.

AI are removed from Marshal queue and the Marshal stack is collapsed. If next in line is an AI flight, this is done. If human player is next, we wait for "Commence" via F10 radio menu command.

Defined in:

AIRBOSS

Parameter:

Flight to go to pattern.

Collapse marshal stack.

Defined in:

AIRBOSS

Parameters:

Flight that left the marshal stack.

#boolean nopattern

If true, flight does not go to pattern.

Commence approach.

This step initializes the player data. Section members are also set to commence. Next step depends on recovery case:

  • Case 1: Initial
  • Case 2/3: Platform

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#boolean zonecheck

If true, zone is checked before player is released.

Aircraft commencing call (both for players and AI).

Defined in:

AIRBOSS

Parameters:

#string modex

Tail number.

unit

Return value:

Unit of player or nil.

Create a new flight group.

Usually when a flight appears in the CCA.

Defined in:

AIRBOSS

Parameter:

Aircraft group.

Return value:

Flight group.

Debrief player and set next step.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Dirty up and level out at 1200 ft for case III recovery.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Turn player's aircraft attitude display on or off.

Defined in:

AIRBOSS

Parameter:

#string _unitname

Name of the player unit.

Report information about carrier.

Defined in:

AIRBOSS

Parameter:

#string _unitname

Name of the player unit.

Report weather conditions at the carrier location.

Temperature, QFE pressure and wind data.

Defined in:

AIRBOSS

Parameter:

#string _unitname

Name of the player unit.

Display last debriefing.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Display top 10 player scores.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Display player status.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name of the player unit.

Display marshal or pattern queue.

Defined in:

AIRBOSS

Parameters:

#string _unitname

Name of the player unit.

#string qname

Name of the queue.

Display top 10 player scores.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Evaluate player's distance to the boat at checkpoint.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#number optdist

Optimal distance in meters.

Return values:

#string:

Feedback message text.

#string:

Debriefing text.

Distance radio call. Not implemented yet.

Grade player time in the groove - from turning to final until touchdown.

If time

  • < 9 seconds: No Grade "--"
  • 9-11 seconds: Fair "(OK)"
  • 12-21 seconds: OK (15-18 is ideal)
  • 22-24 seconds: Fair "(OK)
  • > 24 seconds: No Grade "--"

If you manage to be between 16.4 and and 16.6 seconds, you will even get and okay underline "_OK_". No groove time for Harrier on LHA, LHD set to Tgroove Unicorn as starting point to allow possible OK 5.0.

If time in the AV-8B

  • < 55 seconds: Fast V/STOL
  • < 75 seconds: OK V/STOL
  • > 76 Seconds: SLOW V/STOL (Early hover stop selection)

If you manage to be between 60.0 and 65.0 seconds in the AV-8B, you will even get and okay underline "_OK_"

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Return value:

#string:

LSO grade for time in groove, i.e. _OK_, OK, (OK), --.

Turn to final.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#boolean nocheck

If true, player is not checked to be in the right position.

Grade flight data.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#string groovestep

Step in the groove.

Flight data in the groove.

Return values:

#string:

LSO grade or empty string if flight data table is nil.

#number:

Number of deviations from perfect flight path.

Get short name of the grove step.

Defined in:

AIRBOSS

Parameters:

#string step

Player step.

#number n

Use -1 for previous or +1 for next. Default 0.

Return value:

#string:

Shortcut name "X", "RB", "IM", "AR", "IW".

Get aircraft nickname.

Defined in:

AIRBOSS

Parameter:

#string actype

Aircraft type name.

Return value:

#string:

Aircraft nickname. E.g. "Hornet" for the F/A-18C or "Tomcat" For the F-14A.

Get optimal aircraft AoA parameters..

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Return value:

AoA parameters for the given aircraft type.

Get optimal aircraft flight parameters at checkpoint.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#string step

Pattern step.

Return values:

#number:

Altitude in meters or nil.

#number:

Angle of Attack or nil.

#number:

Distance to carrier in meters or nil.

#number:

Speed in m/s or nil.

Get altitude of aircraft wrt carrier deck.

Should give zero when the aircraft touched down.

Defined in:

AIRBOSS

Parameter:

Aircraft unit.

Return value:

#number:

Altitude in meters wrt carrier height.

Convert altitude from meters to angels (thousands of feet).

Defined in:

AIRBOSS

Parameter:

alt

altitude in meters.

Return value:

#number:

Altitude in Anglels = thousands of feet using math.floor().

Calculate an estimate of the charlie time of the player based on how many other aircraft are in the marshal or pattern queue before him.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.FlightGroup flightgroup

Flight data.

Return value:

#number:

Charlie (abs) time in seconds. Or nil, if stack<0 or no recovery window will open.

Get difference between to headings in degrees taking into accound the [0,360) periodocity.

Defined in:

AIRBOSS

Parameters:

#number hdg1

Heading one.

#number hdg2

Heading two.

Return value:

#number:

Difference between the two headings in degrees.

Calculate distances between carrier and aircraft unit.

Defined in:

AIRBOSS

Parameter:

Aircraft unit.

Return values:

#number:

Distance [m] in the direction of the orientation of the carrier.

#number:

Distance [m] perpendicular to the orientation of the carrier.

#number:

Distance [m] to the carrier.

#number:

Angle [Deg] from carrier to plane. Phi=0 if the plane is directly behind the carrier, phi=90 if the plane is starboard, phi=180 if the plane is in front of the carrier.

Estimated the carrier position at some point in the future given the current waypoints and speeds.

Defined in:

AIRBOSS

Return value:

ETA abs. time in seconds.

Get element in flight.

Defined in:

AIRBOSS

Parameter:

#string unitname

Name of the unit.

Return values:

Element of the flight or nil.

#number:

Element index or nil.

The Flight group or nil

Get flight from group in a queue.

Defined in:

AIRBOSS

Parameters:

Group that will be removed from queue.

#table queue

The queue from which the group will be removed.

Return values:

Flight group or nil.

#number:

Queue index or nil.

Get section lead of a flight.

Defined in:

AIRBOSS

Parameter:

Return values:

The leader of the section. Could be the flight itself.

#boolean:

If true, flight is lead.

Get number of (airborne) units in a flight.

Defined in:

AIRBOSS

Parameters:

The flight group.

#boolean onground

If true, include units on the ground. By default only airborne units are counted.

Return values:

#number:

Number of units in flight including section members.

#number:

Number of units in flight excluding section members.

#number:

Number of section members.

Get next free Marshal stack.

Depending on AI/human and recovery case.

Defined in:

AIRBOSS

Parameters:

#boolean ai

If true, get a free stack for an AI flight group.

#number case

Recovery case. Default current (self) case in progress.

#boolean empty

Return lowest stack that is completely empty.

Return value:

#number:

Lowest free stack available for the given case or nil if all Case I stacks are taken.

Get next free Marshal stack.

Depending on AI/human and recovery case.

Defined in:

AIRBOSS

Parameters:

#boolean ai

If true, get a free stack for an AI flight group.

#number case

Recovery case. Default current (self) case in progress.

#boolean empty

Return lowest stack that is completely empty.

Return value:

#number:

Lowest free stack available for the given case or nil if all Case I stacks are taken.

Get fuel state in pounds.

Defined in:

AIRBOSS

Parameter:

The unit for which the mass is determined.

Return value:

#number:

Fuel state in pounds.

Get error margin depending on player skill.

  • Flight students: 10% and 20%
  • Naval Aviators: 5% and 10%
  • TOPGUN Graduates: 2.5% and 5%

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Return values:

#number:

Error margin for still being okay.

#number:

Error margin for really sucking.

Get groove data.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Return value:

Groove data table.

Get landing spot on Tarawa and others.

Defined in:

AIRBOSS

Return value:

Primary landing spot coordinate.

Get the lead flight group of a flight group.

Defined in:

AIRBOSS

Parameter:

Flight group to check.

Return value:

Flight group of the leader or flight itself if no other leader.

Get marshal altitude and two positions of a counter-clockwise race track pattern.

Defined in:

AIRBOSS

Parameters:

#number stack

Assigned stack number. Counting starts at one, i.e. stack=1 is the first stack.

#number case

Recovery case. Default is self.case.

Return values:

#number:

Holding altitude in meters.

First race track coordinate.

Second race track coordinate.

Get next marshal flight which is ready to enter the landing pattern.

Defined in:

AIRBOSS

Return value:

Marshal flight next in line and ready to enter the pattern. Or nil if no flight is ready.

Get next waypoint of the carrier.

Defined in:

AIRBOSS

Return values:

Coordinate of the next waypoint.

#number:

Number of waypoint.

Format text into SRS friendly string

Defined in:

AIRBOSS

Parameter:

#string text

Return value:

#string:

text

Get onboard number of player or client.

Defined in:

AIRBOSS

Parameter:

Aircraft group.

Return value:

#string:

Onboard number as string.

Get onboard numbers of all units in a group.

Defined in:

AIRBOSS

Parameters:

Aircraft group.

#boolean playeronly

If true, return the onboard number for player or client skill units.

Return value:

#table:

Table of onboard numbers.

Get optimal landing position of the aircraft.

Usually between second and third wire. In case of Tarawa, Canberrra, Juan Carlos and America we take the abeam landing spot 120 ft above and 21 ft abeam the 7.5 position, for the Juan Carlos I, HMS Invincible, and HMS Hermes and Invincible it is 120 ft above and 21 ft abeam the 5 position. For CASE III it is 120ft directly above the landing spot.

Defined in:

AIRBOSS

Return value:

Optimal landing coordinate.

Get player data from group object.

Defined in:

AIRBOSS

Parameter:

Group in question.

Return value:

Player data or nil if not player with this name or unit exists.

Get player data from unit object

Defined in:

AIRBOSS

Parameter:

Unit in question.

Return value:

Player data or nil if not player with this name or unit exists.

Returns the unit of a player and the player name from the self.players table if it exists.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name of the player unit.

Return values:

Unit of player or nil.

#string:

Name of player or nil.

Returns the unit of a player and the player name.

If the unit does not belong to a player, nil is returned.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name of the player unit.

Return values:

Unit of player or nil.

#string:

Name of the player or nil.

Get number of groups and units in queue, which are alive and airborne.

In units we count the section members as well.

Defined in:

AIRBOSS

Parameters:

#table queue

The queue. Can be self.flights, self.Qmarshal or self.Qpattern.

#number case

(Optional) Only count flights, which are in a specific recovery case. Note that you can use case=23 for flights that are either in Case II or III. By default all groups/units regardless of case are counted.

Return values:

#number:

Total number of flight groups in queue.

#number:

Total number of aircraft in queue since each flight group can contain multiple aircraft.

Get unit from which we want to transmit a radio message.

This has to be an aircraft for subtitles to work.

Defined in:

AIRBOSS

Parameter:

Airboss radio data.

Return value:

Sending aircraft unit or nil if was not setup, is not an aircraft or is not alive.

Get relative heading of player wrt carrier.

This is the angle between the direction/orientation vector of the carrier and the direction/orientation vector of the provided unit. Note that this is calculated in the X-Z plane, i.e. the altitude Y is not taken into account.

Defined in:

AIRBOSS

Parameters:

Player unit.

#boolean runway

(Optional) If true, return relative heading of unit wrt to angled runway of the carrier.

Return value:

#number:

Relative heading in degrees. An angle of 0 means, unit fly parallel to carrier. An angle of + or - 90 degrees means, unit flies perpendicular to carrier.

Get relative velocity of player unit wrt to carrier

Defined in:

AIRBOSS

Parameter:

Player unit.

Return value:

#number:

Relative velocity in m/s.

Get static weather of this mission from env.mission.weather.

Defined in:

AIRBOSS

Parameters:

#table Clouds

table which has entries "thickness", "density", "base", "iprecptns".

#number Visibility

distance in meters.

#table Fog

table, which has entries "thickness", "visibility" or nil if fog is disabled in the mission.

#number Dust

density or nil if dust is disabled in the mission.

Get "stern" coordinate.

Defined in:

AIRBOSS

Return value:

Coordinate at the rundown of the carrier.

Get time in the groove of player.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Return value:

#number:

Player's time in groove in seconds.

Get Tower frequency of carrier.

Defined in:

AIRBOSS

Get unit masses especially fuel from DCS descriptor values.

Defined in:

AIRBOSS

Parameter:

The unit for which the mass is determined.

Return values:

#number:

Mass of fuel in kg.

#number:

Empty weight of unit in kg.

#number:

Max weight of unit in kg.

#number:

Max cargo weight in kg.

Get wire from landing position.

Defined in:

AIRBOSS

Parameters:

Landing position.

#number dc

Distance correction. Shift the landing coord back if dc>0 and forward if dc<0.

Return value:

#number:

Trapped wire (1-4) or 99 if no wire was trapped.

Get wire from draw argument.

Defined in:

AIRBOSS

Parameter:

Landing position.

Return value:

#number:

Trapped wire (1-4) or 99 if no wire was trapped.

Allow for Clear to land call from LSO approaching abeam the landing spot if stable as per NATOPS 00-80T

Defined in:

AIRBOSS

Return value:

Zone surrounding landing runway.

Get arc in zone with radius 1 NM and DME 14 NM from the carrier.

Radial depends on recovery case.

Defined in:

AIRBOSS

Parameter:

#number case

Recovery case.

Return value:

Arc in zone.

Get arc out zone with radius 1 NM and DME 12 NM from the carrier.

Radial depends on recovery case.

Defined in:

AIRBOSS

Parameter:

#number case

Recovery case.

Return value:

Arc in zone.

Get Bullseye zone with radius 1 NM and DME 3 NM from the carrier.

Radial depends on recovery case.

Defined in:

AIRBOSS

Parameter:

#number case

Recovery case.

Return value:

Arc in zone.

Get zone of carrier.

Carrier is approximated as rectangle.

Defined in:

AIRBOSS

Return value:

Zone surrounding the carrier.

Get zone where player are automatically commence when enter.

Defined in:

AIRBOSS

Parameters:

#number case

Recovery case.

#number stack

Stack for Case II/III as we commence from stack>=1.

Return value:

Holding zone.

Get approach corridor zone.

Shape depends on recovery case.

Defined in:

AIRBOSS

Parameters:

#number case

Recovery case.

#number l

Length of the zone in NM. Default 31 (=21+10) NM.

Return value:

Get dirty up zone with radius 1 NM and DME 9 NM from the carrier.

Radial depends on recovery case.

Defined in:

AIRBOSS

Parameter:

#number case

Recovery case.

Return value:

Dirty up zone.

Get groove zone.

Defined in:

AIRBOSS

Parameters:

#number l

Length of the groove in NM. Default 1.5 NM.

#number w

Width of the groove in NM. Default 0.25 NM.

#number b

Width of the beginning in NM. Default 0.10 NM.

Return value:

Get holding zone of player.

Defined in:

AIRBOSS

Parameters:

#number case

Recovery case.

#number stack

Marshal stack number.

Return value:

Holding zone.

Get Initial zone for Case I or II.

Defined in:

AIRBOSS

Parameter:

#number case

Recovery Case.

Return value:

Get zone of the primary landing spot of the USS Tarawa.

Defined in:

AIRBOSS

Return value:

Zone surrounding landing runway.

Get lineup groove zone.

Defined in:

AIRBOSS

Return value:

Get platform zone with radius 1 NM and DME 19 NM from the carrier.

Radial depends on recovery case.

Defined in:

AIRBOSS

Parameter:

#number case

Recovery case.

Return value:

Circular platform zone.

Get zone of landing runway.

Defined in:

AIRBOSS

Return value:

Zone surrounding landing runway.

Get glide slope of aircraft unit.

Defined in:

AIRBOSS

Parameters:

Aircraft unit.

#number optangle

(Optional) Return glide slope relative to this angle, i.e. the error from the optimal glide slope ~3.5 degrees.

Return value:

#number:

Glide slope angle in degrees measured from the deck of the carrier and third wire.

Get glide slope of aircraft unit.

Defined in:

AIRBOSS

Parameters:

Aircraft unit.

#number optangle

(Optional) Return glide slope relative to this angle, i.e. the error from the optimal glide slope ~3.5 degrees.

Return value:

#number:

Glide slope angle in degrees measured from the deck of the carrier and third wire.

In the groove.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Holding.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Check if a group is in a queue.

Defined in:

AIRBOSS

Parameters:

#table queue

The queue to check.

The group to be checked.

Return value:

#boolean:

If true, group is in the queue. False otherwise.

Init parameters for LHA-6 America carrier.

Defined in:

AIRBOSS

Init parameters for L02 Canberra carrier.

Defined in:

AIRBOSS

Init parameters for Forrestal class super carriers.

Defined in:

AIRBOSS

Init parameters for R12 HMS Hermes carrier.

Defined in:

AIRBOSS

Init parameters for R05 HMS Invincible carrier.

Defined in:

AIRBOSS

Init parameters for L61 Juan Carlos carrier.

Defined in:

AIRBOSS

Init parameters for Nimitz class super carriers.

Defined in:

AIRBOSS

Initialize player data by (re-)setting parmeters to initial values.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#string step

(Optional) New player step. Default UNDEFINED.

Return value:

Initialized player data.

Init parameters for USS Stennis carrier.

Defined in:

AIRBOSS

Init parameters for LHA-1 Tarawa carrier.

Defined in:

AIRBOSS

Init voice over radio transmission call.

Defined in:

AIRBOSS

Initialize Mission Editor waypoints.

Defined in:

AIRBOSS

Return value:

self

Start pattern when player enters the initial zone in case I/II recoveries.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Return value:

#boolean:

True if player is in the initial zone.

Check if aircraft is capable of landing on this aircraft carrier.

Defined in:

AIRBOSS

Parameter:

Aircraft unit. (Will also work with groups as given parameter.)

Return value:

#boolean:

If true, aircraft can land on a carrier.

Checks if a group has a human player.

Defined in:

AIRBOSS

Parameter:

Aircraft group.

Return value:

#boolean:

If true, human player inside group.

Checks if a human player sits in the unit.

Defined in:

AIRBOSS

Parameter:

Aircraft unit.

Return value:

#boolean:

If true, human player inside the unit.

Check if text is an onboard number of a flight.

Defined in:

AIRBOSS

Parameter:

#string text

Text to check.

Return value:

#boolean:

If true, text is an onboard number of a flight.

AI aircraft calls the ball.

Defined in:

AIRBOSS

Parameters:

#string modex

Tail number.

#string nickname

Aircraft nickname.

#number fuelstate

Aircraft fuel state in thouthands of pounds.

LSO radio check.

Will broadcase LSO message at given LSO frequency.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

LSO advice radio call.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#number glideslopeError

Error in degrees.

#number lineupError

Error in degrees.

Grade approach.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Return values:

#string:

LSO grade, i.g. OK, OK, (OK), --, etc.

#number:

Points.

#string:

LSO analysis of flight path.

Tell AI to land on the carrier.

Defined in:

AIRBOSS

Parameter:

Flight group.

Get line up of player wrt to carrier.

Defined in:

AIRBOSS

Parameters:

Aircraft unit.

#boolean runway

If true, include angled runway.

Return value:

#number:

Line up with runway heading in degrees. 0 degrees = perfect line up. +1 too far left. -1 too far right.

Mark CASE I or II/II zones by either smoke or flares.

Defined in:

AIRBOSS

Parameters:

#string _unitName

Name of the player unit.

#boolean flare

If true, flare the zone. If false, smoke the zone.

Mark current marshal zone of player by either smoke or flares.

Defined in:

AIRBOSS

Parameters:

#string _unitName

Name of the player unit.

#boolean flare

If true, flare the zone. If false, smoke the zone.

Command AI flight to orbit at a specified position at a specified altitude with a specified speed.

If flight is not in the Marshal queue yet, it is added. This fixes the recovery case. If the flight is not already holding in the Marshal stack, it is guided there first.

Defined in:

AIRBOSS

Parameters:

Flight group.

#number nstack

Stack number of group. Can also be the current stack if AI position needs to be updated wrt to changed carrier position.

#boolean respawn

If true, respawn the flight otherwise update mission task with new waypoints.

Compile a radio call when Marshal tells a flight the holding altitude.

Defined in:

AIRBOSS

Parameters:

#string modex

Tail number.

#number case

Recovery case.

#number brc

Base recovery course.

#number altitude

Holding altitude.

#string charlie

Charlie Time estimate.

#number qfe

Alitmeter inHg.

Compile a radio call when Marshal tells a flight the holding altitude.

Defined in:

AIRBOSS

Parameter:

#number hdg

Heading in degrees.

Inform flight that he is cleared for recovery.

Defined in:

AIRBOSS

Parameters:

#string modex

Tail number.

#number case

Recovery case.

AI is bingo and goes to the divert field.

Defined in:

AIRBOSS

Parameters:

#string modex

Tail number.

#string divertname

Name of the divert field.

AI is bingo and goes to the recovery tanker.

Defined in:

AIRBOSS

Parameter:

#string modex

Tail number.

Inform everyone about new final bearing.

Defined in:

AIRBOSS

Parameter:

#number FB

Final Bearing in degrees.

Inform everyone that recovery is paused and will resume at a certain time.

Defined in:

AIRBOSS

Parameter:

#string clock

Time.

Inform everyone that recovery is paused and will resume at a certain time.

Defined in:

AIRBOSS

Compile a radio call when Marshal tells a flight the holding altitude.

Defined in:

AIRBOSS

Parameter:

case

Inform everyone that recovery ops are stopped and deck is closed.

Defined in:

AIRBOSS

Parameter:

#number case

Recovery case.

Inform everyone that recovery is resumed after pause.

Defined in:

AIRBOSS

Compile a radio call when Marshal tells a flight the holding altitude.

Defined in:

AIRBOSS

Parameters:

#string modex

Tail number.

#number nwaiting

Number of flights already waiting.

Orbit at a specified position at a specified altitude with a specified speed.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#number stack

The Marshal stack the player gets.

Marshal radio check.

Will broadcase Marshal message at given Marshal frequency.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Aircraft request marshal (Inbound call both for players and AI).

Defined in:

AIRBOSS

Parameters:

#string modex

Tail number.

unit

Return value:

Unit of player or nil.

Check if a call needs a subtitle because the complete voice overs are not available.

Defined in:

AIRBOSS

Parameter:

Radio sound files and subtitles.

Return value:

#boolean:

If true, call needs a subtitle.

Initialize player data after birth event of player unit.

Defined in:

AIRBOSS

Parameter:

#string unitname

Name of the player unit.

Return value:

Player data.

Generate a new radio call (deepcopy) from an existing default call.

Defined in:

AIRBOSS

Parameters:

Radio call to be enhanced.

#string sender

Sender of the message. Default is the radio alias.

#string subtitle

Subtitle of the message. Default from original radio call. Use "" for no subtitle.

#number subduration

Time in seconds the subtitle is displayed. Default 10 seconds.

#string modexreceiver

Onboard number of the receiver or nil.

#string modexsender

Onboard number of the sender or nil.

At the Ninety.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Convert a number (as string) into a radio message.

E.g. for board number or headings.

Defined in:

AIRBOSS

Parameters:

Radio used for transmission.

#string number

Number string, e.g. "032" or "183".

#number delay

Delay before transmission in seconds.

#number interval

Interval between the next call.

#boolean pilotcall

If true, use pilot sound files.

Return value:

#number:

Duration of the call in seconds.

Convert a number (as string) into an outsound and play it to a player group.

E.g. for board number or headings.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#string sender

Who is sending the call, either "LSO" or "MARSHAL".

#string number

Number string, e.g. "032" or "183".

#number delay

Delay before transmission in seconds.

Return value:

#number:

Duration of the call in seconds.

Function called when a group is passing a waypoint.

Defined in:

AIRBOSS

Parameters:

Group that passed the waypoint

#AIRBOSS airboss

Airboss object.

#number i

Waypoint number that has been reached.

#number final

Final waypoint number.

Find free path to the next waypoint.

Defined in:

AIRBOSS

Patrol carrier.

Defined in:

AIRBOSS

Parameter:

#number n

Next waypoint number.

Return value:

self

Platform at 5k ft for case II/III recoveries.

Descent at 2000 ft/min.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Display hint to player.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#number delay

Delay before playing sound messages. Default 0 sec.

#boolean soundoff

If true, don't play and sound hint.

Airboss event handler for event player leave unit.

Defined in:

AIRBOSS

Parameter:

function AIRBOSS:OnEventPlayerLeaveUnit(EventData)

Print holding queue.

Defined in:

AIRBOSS

Parameters:

#table queue

Queue to print.

#string name

Queue name.

Get full file name for radio call.

Defined in:

AIRBOSS

Parameters:

Radio sound files and subtitles.

#boolean loud

Use loud version of file if available.

#string channel

Radio channel alias "LSO" or "LSOCall", "MARSHAL" or "MarshalCall".

Return value:

#string:

The file name of the radio sound.

Create radio subtitle from radio call.

Defined in:

AIRBOSS

Parameters:

The radio used for transmission.

Radio sound files and subtitles.

#boolean loud

If true, append "!" else ".".

Return value:

#string:

Subtitle to be displayed.

Function called when a group has reached the holding zone.

Defined in:

AIRBOSS

Parameters:

Group that reached the holding zone.

#AIRBOSS airboss

Airboss object.

Flight group that has reached the holding zone.

Sets flag recovered=true for a flight element, which was successfully recovered (landed).

Defined in:

AIRBOSS

Parameter:

The aircraft unit that was recovered.

Return value:

Flight group of element.

Tell AI to refuel.

Either at the recovery tanker or at the nearest divert airfield.

Defined in:

AIRBOSS

Parameter:

Flight group.

Remove dead flight groups from all queues.

Defined in:

AIRBOSS

Parameter:

Aircraft group.

Return value:

Flight group.

Remove a flight from Marshal, Pattern and Waiting queues.

If flight is in Marhal queue, the above stack is collapsed. Also set player step to undefined if applicable or remove human flight if option completely is true.

Defined in:

AIRBOSS

Parameters:

The flight to be removed.

#boolean completely

If true, also remove human flight from all flights table.

Get element in flight.

Defined in:

AIRBOSS

Parameter:

#string unitname

Name of the unit.

Return value:

#boolean:

If true, element could be removed or nil otherwise.

Remove a flight group from the Marshal queue.

Marshal stack is collapsed, too, if flight was in the queue. Waiting flights are send to marshal.

Defined in:

AIRBOSS

Parameters:

Flight group that will be removed from queue.

#boolean nopattern

If true, flight is NOT going to landing pattern.

Return values:

#boolean:

True, flight was removed or false otherwise.

#number:

Table index of the flight in the Marshal queue.

Remove a flight group from a queue.

Defined in:

AIRBOSS

Parameters:

#table queue

The queue from which the group will be removed.

Flight group that will be removed from queue.

Return values:

#boolean:

True, flight was in Queue and removed. False otherwise.

#number:

Table index of removed queue element or nil.

Remove a flight, which is a member of a section, from this section.

Defined in:

AIRBOSS

Parameter:

The flight to be removed from the section

Remove a member from the player's section.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player

#AIRBOSS.PlayerData sectionmember

The section member to be removed.

Return value:

#boolean:

If true, flight was a section member and could be removed. False otherwise.

Remove a unit and its element from a flight group (e.g.

when landed) and update all queues if the whole flight group is gone.

Defined in:

AIRBOSS

Parameter:

The unit to be removed.

Request to commence landing approach.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Request emergency landing.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Request marshal.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Player requests refueling.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name of the player unit.

Request spinning.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Reset player status.

Player is removed from all queues and its status is set to undefined.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Carrier Strike Group resumes the route of the waypoints defined in the mission editor.

Defined in:

AIRBOSS

Parameters:

Carrier Strike Group that passed the waypoint.

#AIRBOSS airboss

Airboss object.

Go to coordinate before route is resumed.

Save trapsheet data.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

LSO grad data.

Scan carrier zone for (new) units.

Defined in:

AIRBOSS

Set difficulty level.

Defined in:

AIRBOSS

Parameters:

#string _unitname

Name of the player unit.

#AIRBOSS.Difficulty difficulty

Difficulty level.

Turn player's aircraft attitude display on or off.

Defined in:

AIRBOSS

Parameter:

#string _unitname

Name of the player unit.

Set player step.

Any warning is erased and next step hint shown.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#string step

Next step.

#number delay

(Optional) Set set after a delay in seconds.

Set all flights within 100 meters to be part of my section.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name of the player unit.

Set time in the groove for player.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Skipper set recovery offset angle.

Defined in:

AIRBOSS

Parameters:

#string _unitName

Name fo the player unit.

#number offset

Recovery holding offset angle in degrees for Case II/III.

Skipper set recovery speed.

Defined in:

AIRBOSS

Parameters:

#string _unitName

Name fo the player unit.

#number speed

Recovery speed in knots.

Skipper set recovery time.

Defined in:

AIRBOSS

Parameters:

#string _unitName

Name fo the player unit.

#number time

Recovery time in minutes.

Skipper set recovery speed.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Reset player status.

Player is removed from all queues and its status is set to undefined.

Defined in:

AIRBOSS

Parameters:

#string _unitName

Name fo the player unit.

#number case

Recovery case.

Skipper Stop recovery function.

Defined in:

AIRBOSS

Parameter:

#string _unitName

Name fo the player unit.

Evaluate player's speed.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data table.

#number speedopt

Optimal speed in m/s.

Return values:

#string:

Feedback text.

#string:

Debriefing text.

Radio call.

Spinning

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Check AI status.

Pattern queue AI in the groove? Marshal queue AI arrived in holding zone?

Defined in:

AIRBOSS

Display hint for flight students about the (next) step.

Message is displayed after one second.

Defined in:

AIRBOSS

Parameters:

#AIRBOSS.PlayerData playerData

Player data.

#string step

Step for which hint is given.

Turn radio subtitles of player on or off.

Defined in:

AIRBOSS

Parameter:

#string _unitname

Name of the player unit.

Function called when a group should be send to the Marshal stack.

If stack is full, it is send to wait.

Defined in:

AIRBOSS

Parameters:

Group that reached the holding zone.

#AIRBOSS airboss

Airboss object.

Flight group that has reached the holding zone.

Generate a text if a player is too far from where he should be.

Defined in:

AIRBOSS

Parameters:

#number X

X distance player to carrier.

#number Z

Z distance player to carrier.

Checkpoint data.

Trapped?

Check if in air or not after landing event.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Turn radio subtitles of player on or off.

Defined in:

AIRBOSS

Parameter:

#string _unitname

Name of the player unit.

Update section if a flight is removed.

If removed flight is member of a section, he is removed for the leaders section. If removed flight is the section lead, we try to find a new leader.

Defined in:

AIRBOSS

Parameter:

The flight to be removed.

Command AI flight to orbit outside the 10 NM zone and wait for a free Marshal stack.

If the flight is not already holding in the Marshal stack, it is guided there first.

Defined in:

AIRBOSS

Parameters:

Flight group.

#boolean respawn

If true respawn the group. Otherwise reset the mission task with new waypoints.

Tell player to wait outside the 10 NM zone until a Marshal stack is available.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

Waiting outside 10 NM zone for free Marshal stack.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data.

At the Wake.

Defined in:

AIRBOSS

Parameter:

#AIRBOSS.PlayerData playerData

Player data table.

Triggers the FSM delayed event "Idle" that puts the carrier into state "Idle" where no recoveries are carried out.

Defined in:

AIRBOSS

Parameter:

#number delay

Delay in seconds.

Triggers the FSM event "LSOGrade".

Delayed called when the LSO grades a player.

Defined in:

AIRBOSS

Parameters:

#number delay

Delay in seconds.

#AIRBOSS.PlayerData playerData

Player Data.

LSO grade.

Triggers the FSM delayed event "Load" that loads the player scores from a file.

AIRBOSS FSM must not be started at this point.

Defined in:

AIRBOSS

Parameters:

#number delay

Delay in seconds.

#string path

Path where the file is located. Default is the DCS installation root directory or your "Saved Games\DCS" folder if lfs was desanitized.

#string filename

(Optional) File name. Default is AIRBOSS-ALIAS_LSOgrades.csv.

Triggers the FSM event "Marshal".

Delayed call when a flight is send to the Marshal stack.

Defined in:

AIRBOSS

Parameters:

#number delay

Delay in seconds.

The flight group data.

Triggers the FSM delayed event "PassingWaypoint".

Called when the carrier passes a waypoint.

Defined in:

AIRBOSS

Parameters:

#number delay

Delay in seconds.

#number Case

Recovery case (1, 2 or 3) that is started.

#number Offset

Holding pattern offset angle in degrees for CASE II/III recoveries.

Triggers the delayed FSM event "RecoveryCase" that sets the used aircraft recovery case.

Defined in:

AIRBOSS

Parameters:

#number delay

Delay in seconds.

#number Case

The new recovery case (1, 2 or 3).

#number Offset

Holding pattern offset angle in degrees for CASE II/III recoveries.

Triggers the FSM delayed event "RecoveryPause" that pauses the recovery of aircraft.

Defined in:

AIRBOSS

Parameters:

#number delay

Delay in seconds.

#number duration

Duration of pause in seconds. After that recovery is automatically resumed.

Triggers the FSM delayed event "RecoveryStart" that starts the recovery of aircraft.

Marshalling aircraft are send to the landing pattern.

Defined in:

AIRBOSS

Parameters:

#number delay

Delay in seconds.

#number Case

Recovery case (1, 2 or 3) that is started.

#number Offset

Holding pattern offset angle in degrees for CASE II/III recoveries.

Triggers the FSM delayed event "RecoveryStop" that stops the recovery of aircraft.

Defined in:

AIRBOSS

Parameter:

#number delay

Delay in seconds.

Triggers the FSM delayed event "RecoveryUnpause" that resumes the recovery of aircraft if it was paused.

Defined in:

AIRBOSS

Parameter:

#number delay

Delay in seconds.

Triggers the FSM delayed event "Save" that saved the player scores to a file.

Defined in:

AIRBOSS

Parameters:

#number delay

Delay in seconds.

#string path

Path where the file is saved. Default is the DCS installation root directory or your "Saved Games\DCS" folder if lfs was desanitized.

#string filename

(Optional) File name. Default is AIRBOSS-ALIAS_LSOgrades.csv.

Triggers the FSM event "Start" that starts the airboss after a delay.

Initializes parameters and starts event handlers.

Defined in:

AIRBOSS

Parameter:

#number delay

Delay in seconds.

Triggers the FSM event "Stop" that stops the airboss after a delay.

Event handlers are stopped.

Defined in:

AIRBOSS

Parameter:

#number delay

Delay in seconds.

On after "Idle" event.

Carrier goes to state "Idle".

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "LSOGrade" event.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#AIRBOSS.PlayerData playerData

Player Data.

LSO grade.

On after "Load" event.

Loads grades of all players from file.

Defined in:

AIRBOSS

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#string path

Path where the file is loaded from. Default is the DCS root installation folder or your "Saved Games\DCS" folder if lfs was desanizied.

#string filename

(Optional) File name for saving the player grades. Default is "AIRBOSS-_LSOgrades.csv".