Module ATC_Ground
Functional -- The ATC_GROUND classes monitor airbase traffic and regulate speed while taxiing.
Contributions: Dutch Baron - Concept & Testing
Author: FlightControl - Framework Design & Programming
Global(s)
| ATC_GROUND |
Base class for ATC_GROUND implementations. |
| ATC_GROUND_CAUCASUS |
ATC_GROUND_CAUCASUS, extends #ATC_GROUNDThe ATC_GROUND_CAUCASUS class monitors the speed of the airplanes at the airbase during taxi. |
| ATC_GROUND_NEVADA |
ATC_GROUND_NEVADA, extends #ATC_GROUNDThe ATC_GROUND_NEVADA class monitors the speed of the airplanes at the airbase during taxi. |
| ATC_GROUND_NORMANDY |
ATC_GROUND_NORMANDY, extends #ATC_GROUNDThe ATC_GROUND_NORMANDY class monitors the speed of the airplanes at the airbase during taxi. |
| SSB |
Type ATC_GROUND
Type ATC_GROUND_CAUCASUS
| ATC_GROUND_CAUCASUS:New(AirbaseNames) |
Creates a new ATCGROUNDCAUCASUS object. |
Type ATC_GROUND_NEVADA
| ATC_GROUND_NEVADA:New(AirbaseNames) |
Creates a new ATCGROUNDNEVADA object. |
Type ATC_GROUND_NORMANDY
| ATC_GROUND_NORMANDY.AirbaseMonitor | |
| ATC_GROUND_NORMANDY:New(AirbaseNames) |
Creates a new ATCGROUNDNORMANDY object. |
Global(s)
- #ATC_GROUND ATC_GROUND
-
Base class for ATC_GROUND implementations.
- #ATC_GROUND_CAUCASUS ATC_GROUND_CAUCASUS
-
ATC_GROUND_CAUCASUS, extends #ATC_GROUND
The ATC_GROUND_CAUCASUS class monitors the speed of the airplanes at the airbase during taxi.
The pilots may not drive faster than the maximum speed for the airbase, or they will be despawned.
The default maximum speed for the airbases at Caucasus is 50 km/h. Warnings are given if this speed limit is trespassed. Players will be immediately kicked when driving faster than 150 km/h on the taxi way.
The pilot will receive 3 times a warning during speeding. After the 3rd warning, if the pilot is still driving faster than the maximum allowed speed, the pilot will be kicked.
Different airbases have different maximum speeds, according safety regulations.
Airbases monitored
The following airbases are monitored at the Caucasus region. Use the Airbase#AIRBASE.Caucasus enumeration to select the airbases to be monitored.
AIRBASE.Caucasus.Anapa_VityazevoAIRBASE.Caucasus.BatumiAIRBASE.Caucasus.BeslanAIRBASE.Caucasus.GelendzhikAIRBASE.Caucasus.GudautaAIRBASE.Caucasus.KobuletiAIRBASE.Caucasus.Krasnodar_CenterAIRBASE.Caucasus.Krasnodar_PashkovskyAIRBASE.Caucasus.KrymskAIRBASE.Caucasus.KutaisiAIRBASE.Caucasus.Maykop_KhanskayaAIRBASE.Caucasus.Mineralnye_VodyAIRBASE.Caucasus.MozdokAIRBASE.Caucasus.NalchikAIRBASE.Caucasus.NovorossiyskAIRBASE.Caucasus.Senaki_KolkhiAIRBASE.Caucasus.Sochi_AdlerAIRBASE.Caucasus.SoganlugAIRBASE.Caucasus.Sukhumi_BabusharaAIRBASE.Caucasus.Tbilisi_LochiniAIRBASE.Caucasus.Vaziani
Installation
In Single Player Missions
ATC_GROUND is fully functional in single player.
In Multi Player Missions
ATC_GROUND is functional in multi player, however ...
Due to a bug in DCS since release 1.5, the despawning of clients are not anymore working in multi player. To work around this problem, a much better solution has been made, using the slot blocker script designed by Ciribob.
With the help of Ciribob, this script has been extended to also kick client players while in flight. ATC_GROUND is communicating with this modified script to kick players!
Install the file SimpleSlotBlockGameGUI.lua on the server, following the installation instructions described by Ciribob.
Simple Slot Blocker from Ciribob & FlightControl
Script it!
1. ATC_GROUND_CAUCASUS Constructor
Creates a new ATCGROUNDCAUCASUS object that will monitor pilots taxiing behaviour.
-- This creates a new ATC_GROUND_CAUCASUS object. -- Monitor all the airbases. ATC_Ground = ATC_GROUND_CAUCASUS:New() -- Monitor specific airbases only. ATC_Ground = ATC_GROUND_CAUCASUS:New( { AIRBASE.Caucasus.Gelendzhik, AIRBASE.Caucasus.Krymsk } )2. Set various options
There are various methods that you can use to tweak the behaviour of the ATC_GROUND classes.
2.1 Speed limit at an airbase.
- ATC_GROUND.SetKickSpeed(): Set the speed limit allowed at an airbase in meters per second.
- ATC_GROUND.SetKickSpeedKmph(): Set the speed limit allowed at an airbase in kilometers per hour.
- ATC_GROUND.SetKickSpeedMiph(): Set the speed limit allowed at an airbase in miles per hour.
2.2 Prevent Takeoff at an airbase. Players will be kicked immediately.
- ATC_GROUND.SetMaximumKickSpeed(): Set the maximum speed allowed at an airbase in meters per second.
- ATC_GROUND.SetMaximumKickSpeedKmph(): Set the maximum speed allowed at an airbase in kilometers per hour.
- ATC_GROUND.SetMaximumKickSpeedMiph(): Set the maximum speed allowed at an airbase in miles per hour.
- #ATC_GROUND_NEVADA ATC_GROUND_NEVADA
-
ATC_GROUND_NEVADA, extends #ATC_GROUND
The ATC_GROUND_NEVADA class monitors the speed of the airplanes at the airbase during taxi.
The pilots may not drive faster than the maximum speed for the airbase, or they will be despawned.
The default maximum speed for the airbases at Nevada is 50 km/h. Warnings are given if this speed limit is trespassed. Players will be immediately kicked when driving faster than 150 km/h on the taxi way.
The ATC_GROUND_NEVADA class monitors the speed of the airplanes at the airbase during taxi. The pilots may not drive faster than the maximum speed for the airbase, or they will be despawned.
The pilot will receive 3 times a warning during speeding. After the 3rd warning, if the pilot is still driving faster than the maximum allowed speed, the pilot will be kicked.
Different airbases have different maximum speeds, according safety regulations.
Airbases monitored
The following airbases are monitored at the Nevada region. Use the Airbase#AIRBASE.Nevada enumeration to select the airbases to be monitored.
AIRBASE.Nevada.Beatty_AirportAIRBASE.Nevada.Boulder_City_AirportAIRBASE.Nevada.Creech_AFBAIRBASE.Nevada.Echo_BayAIRBASE.Nevada.Groom_Lake_AFBAIRBASE.Nevada.Henderson_Executive_AirportAIRBASE.Nevada.Jean_AirportAIRBASE.Nevada.Laughlin_AirportAIRBASE.Nevada.Lincoln_CountyAIRBASE.Nevada.McCarran_International_AirportAIRBASE.Nevada.Mellan_AirstripAIRBASE.Nevada.MesquiteAIRBASE.Nevada.Mina_Airport_3Q0AIRBASE.Nevada.Nellis_AFBAIRBASE.Nevada.North_Las_VegasAIRBASE.Nevada.Pahute_Mesa_AirstripAIRBASE.Nevada.Tonopah_AirportAIRBASE.Nevada.Tonopah_Test_Range_Airfield
Installation
In Single Player Missions
ATC_GROUND is fully functional in single player.
In Multi Player Missions
ATC_GROUND is functional in multi player, however ...
Due to a bug in DCS since release 1.5, the despawning of clients are not anymore working in multi player. To work around this problem, a much better solution has been made, using the slot blocker script designed by Ciribob.
With the help of Ciribob, this script has been extended to also kick client players while in flight. ATC_GROUND is communicating with this modified script to kick players!
Install the file SimpleSlotBlockGameGUI.lua on the server, following the installation instructions described by Ciribob.
Simple Slot Blocker from Ciribob & FlightControl
Script it!
1. ATCGROUNDNEVADA Constructor
Creates a new ATCGROUNDNEVADA object that will monitor pilots taxiing behaviour.
-- This creates a new ATC_GROUND_NEVADA object. -- Monitor all the airbases. ATC_Ground = ATC_GROUND_NEVADA:New() -- Monitor specific airbases. ATC_Ground = ATC_GROUND_NEVADA:New( { AIRBASE.Nevada.Laughlin_Airport, AIRBASE.Nevada.Mellan_Airstrip, AIRBASE.Nevada.Lincoln_County, AIRBASE.Nevada.North_Las_Vegas, AIRBASE.Nevada.McCarran_International_Airport } )2. Set various options
There are various methods that you can use to tweak the behaviour of the ATC_GROUND classes.
2.1 Speed limit at an airbase.
- ATC_GROUND.SetKickSpeed(): Set the speed limit allowed at an airbase in meters per second.
- ATC_GROUND.SetKickSpeedKmph(): Set the speed limit allowed at an airbase in kilometers per hour.
- ATC_GROUND.SetKickSpeedMiph(): Set the speed limit allowed at an airbase in miles per hour.
2.2 Prevent Takeoff at an airbase. Players will be kicked immediately.
- ATC_GROUND.SetMaximumKickSpeed(): Set the maximum speed allowed at an airbase in meters per second.
- ATC_GROUND.SetMaximumKickSpeedKmph(): Set the maximum speed allowed at an airbase in kilometers per hour.
- ATC_GROUND.SetMaximumKickSpeedMiph(): Set the maximum speed allowed at an airbase in miles per hour.
- #ATC_GROUND_NORMANDY ATC_GROUND_NORMANDY
-
ATC_GROUND_NORMANDY, extends #ATC_GROUND
The ATC_GROUND_NORMANDY class monitors the speed of the airplanes at the airbase during taxi.
The pilots may not drive faster than the maximum speed for the airbase, or they will be despawned.
The default maximum speed for the airbases at Caucasus is 40 km/h. Warnings are given if this speed limit is trespassed. Players will be immediately kicked when driving faster than 100 km/h on the taxi way.
The ATC_GROUND_NORMANDY class monitors the speed of the airplanes at the airbase during taxi. The pilots may not drive faster than the maximum speed for the airbase, or they will be despawned.
The pilot will receive 3 times a warning during speeding. After the 3rd warning, if the pilot is still driving faster than the maximum allowed speed, the pilot will be kicked.
Different airbases have different maximum speeds, according safety regulations.
Airbases monitored
The following airbases are monitored at the Normandy region. Use the Airbase#AIRBASE.Normandy enumeration to select the airbases to be monitored.
AIRBASE.Normandy.AzevilleAIRBASE.Normandy.BazenvilleAIRBASE.Normandy.Beny_sur_MerAIRBASE.Normandy.BeuzevilleAIRBASE.Normandy.BinivilleAIRBASE.Normandy.BruchevilleAIRBASE.Normandy.CardonvilleAIRBASE.Normandy.CarpiquetAIRBASE.Normandy.ChaileyAIRBASE.Normandy.ChippelleAIRBASE.Normandy.CrettevilleAIRBASE.Normandy.Cricqueville_en_BessinAIRBASE.Normandy.Deux_JumeauxAIRBASE.Normandy.EvreuxAIRBASE.Normandy.FordAIRBASE.Normandy.FuntingtonAIRBASE.Normandy.LantheuilAIRBASE.Normandy.Le_MolayAIRBASE.Normandy.LessayAIRBASE.Normandy.LignerollesAIRBASE.Normandy.Longues_sur_MerAIRBASE.Normandy.MaupertusAIRBASE.Normandy.MeautisAIRBASE.Normandy.Needs_Oar_PointAIRBASE.Normandy.PicauvilleAIRBASE.Normandy.RucquevilleAIRBASE.Normandy.Saint_Pierre_du_MontAIRBASE.Normandy.Sainte_Croix_sur_MerAIRBASE.Normandy.Sainte_Laurent_sur_MerAIRBASE.Normandy.SommervieuAIRBASE.Normandy.Tangmere
Installation
In Single Player Missions
ATC_GROUND is fully functional in single player.
In Multi Player Missions
ATC_GROUND is functional in multi player, however ...
Due to a bug in DCS since release 1.5, the despawning of clients are not anymore working in multi player. To work around this problem, a much better solution has been made, using the slot blocker script designed by Ciribob.
With the help of Ciribob, this script has been extended to also kick client players while in flight. ATC_GROUND is communicating with this modified script to kick players!
Install the file SimpleSlotBlockGameGUI.lua on the server, following the installation instructions described by Ciribob.
Simple Slot Blocker from Ciribob & FlightControl
Script it!
1. ATCGROUNDNORMANDY Constructor
Creates a new ATCGROUNDNORMANDY object that will monitor pilots taxiing behaviour.
-- This creates a new ATC_GROUND_NORMANDY object. -- Monitor for these clients the airbases. AirbasePoliceCaucasus = ATC_GROUND_NORMANDY:New() ATC_Ground = ATC_GROUND_NORMANDY:New( { AIRBASE.Normandy.Chippelle, AIRBASE.Normandy.Beuzeville } )2. Set various options
There are various methods that you can use to tweak the behaviour of the ATC_GROUND classes.
2.1 Speed limit at an airbase.
- ATC_GROUND.SetKickSpeed(): Set the speed limit allowed at an airbase in meters per second.
- ATC_GROUND.SetKickSpeedKmph(): Set the speed limit allowed at an airbase in kilometers per hour.
- ATC_GROUND.SetKickSpeedMiph(): Set the speed limit allowed at an airbase in miles per hour.
2.2 Prevent Takeoff at an airbase. Players will be kicked immediately.
- ATC_GROUND.SetMaximumKickSpeed(): Set the maximum speed allowed at an airbase in meters per second.
- ATC_GROUND.SetMaximumKickSpeedKmph(): Set the maximum speed allowed at an airbase in kilometers per hour.
- ATC_GROUND.SetMaximumKickSpeedMiph(): Set the maximum speed allowed at an airbase in miles per hour.
- SSB
-
This is simple slot blocker is used on the server.
Type ATC_Ground
Type ATC_GROUND
Field(s)
- ATC_GROUND:New(Airbases, AirbaseList)
-
Creates a new ATC_GROUND object.
Parameters
-
Airbases: A table of Airbase Names. -
AirbaseList:
Return value
#ATC_GROUND: self
-
- ATC_GROUND:SetKickSpeed(KickSpeed, Airbase)
-
Set the maximum speed in meters per second (Mps) until the player gets kicked.
An airbase can be specified to set the kick speed for.
Parameters
-
#number KickSpeed: The speed in Mps. -
Wrapper.Airbase#AIRBASE Airbase: (optional) The airbase to set the kick speed for.
Return value
#ATC_GROUND: self
Usage:
-- Declare Atc_Ground using one of those, depending on the map. Atc_Ground = ATC_GROUND_CAUCAUS:New() Atc_Ground = ATC_GROUND_NEVADA:New() Atc_Ground = ATC_GROUND_NORMANDY:New() -- Then use one of these methods... Atc_Ground:SetKickSpeed( UTILS.KmphToMps( 80 ) ) -- Kick the players at 80 kilometers per hour Atc_Ground:SetKickSpeed( UTILS.MiphToMps( 100 ) ) -- Kick the players at 100 miles per hour Atc_Ground:SetKickSpeed( 24 ) -- Kick the players at 24 meters per second ( 24 * 3.6 = 86.4 kilometers per hour ) -
- ATC_GROUND:SetKickSpeedKmph(KickSpeed, Airbase)
-
Set the maximum speed in Kmph until the player gets kicked.
Parameters
-
#number KickSpeed: Set the speed in Kmph. -
Wrapper.Airbase#AIRBASE Airbase: (optional) The airbase to set the kick speed for.
Return value
#ATC_GROUND: self
Atc_Ground:SetKickSpeedKmph( 80 ) -- Kick the players at 80 kilometers per hour
-
- ATC_GROUND:SetKickSpeedMiph(KickSpeedMiph, Airbase)
-
Set the maximum speed in Miph until the player gets kicked.
Parameters
-
#number KickSpeedMiph: Set the speed in Mph. -
Wrapper.Airbase#AIRBASE Airbase: (optional) The airbase to set the kick speed for.
Return value
#ATC_GROUND: self
Atc_Ground:SetKickSpeedMiph( 100 ) -- Kick the players at 100 miles per hour
-
- ATC_GROUND:SetMaximumKickSpeed(MaximumKickSpeed, Airbase)
-
Set the maximum kick speed in meters per second (Mps) until the player gets kicked.
There are no warnings given if this speed is reached, and is to prevent players to take off from the airbase! An airbase can be specified to set the maximum kick speed for.
Parameters
-
#number MaximumKickSpeed: The speed in Mps. -
Wrapper.Airbase#AIRBASE Airbase: (optional) The airbase to set the kick speed for.
Return value
#ATC_GROUND: self
Usage:
-- Declare Atc_Ground using one of those, depending on the map. Atc_Ground = ATC_GROUND_CAUCAUS:New() Atc_Ground = ATC_GROUND_NEVADA:New() Atc_Ground = ATC_GROUND_NORMANDY:New() -- Then use one of these methods... Atc_Ground:SetMaximumKickSpeed( UTILS.KmphToMps( 80 ) ) -- Kick the players at 80 kilometers per hour Atc_Ground:SetMaximumKickSpeed( UTILS.MiphToMps( 100 ) ) -- Kick the players at 100 miles per hour Atc_Ground:SetMaximumKickSpeed( 24 ) -- Kick the players at 24 meters per second ( 24 * 3.6 = 86.4 kilometers per hour ) -
- ATC_GROUND:SetMaximumKickSpeedKmph(MaximumKickSpeed, Airbase)
-
Set the maximum kick speed in kilometers per hour (Kmph) until the player gets kicked.
There are no warnings given if this speed is reached, and is to prevent players to take off from the airbase! An airbase can be specified to set the maximum kick speed for.
Parameters
-
#number MaximumKickSpeed: Set the speed in Kmph. -
Wrapper.Airbase#AIRBASE Airbase: (optional) The airbase to set the kick speed for.
Return value
#ATC_GROUND: self
Atc_Ground:SetMaximumKickSpeedKmph( 150 ) -- Kick the players at 150 kilometers per hour
-
- ATC_GROUND:SetMaximumKickSpeedMiph(MaximumKickSpeedMiph, Airbase)
-
Set the maximum kick speed in miles per hour (Miph) until the player gets kicked.
There are no warnings given if this speed is reached, and is to prevent players to take off from the airbase! An airbase can be specified to set the maximum kick speed for.
Parameters
-
#number MaximumKickSpeedMiph: Set the speed in Mph. -
Wrapper.Airbase#AIRBASE Airbase: (optional) The airbase to set the kick speed for.
Return value
#ATC_GROUND: self
Atc_Ground:SetMaximumKickSpeedMiph( 100 ) -- Kick the players at 100 miles per hour
-
- ATC_GROUND:SmokeRunways(SmokeColor)
-
Smoke the airbases runways.
Parameter
-
Utilities.Utils#SMOKECOLOR SmokeColor: The color of the smoke around the runways.
Return value
#ATC_GROUND: self
-
Type ATC_GROUND.AirbaseNames
Type ATC_GROUND_CAUCASUS
Field(s)
- ATC_GROUND_CAUCASUS:New(AirbaseNames)
-
Creates a new ATCGROUNDCAUCASUS object.
Parameter
-
AirbaseNames: A list {} of airbase names (Use AIRBASE.Caucasus enumerator).
Return value
#ATCGROUNDCAUCASUS: self
-
Type ATC_GROUND_NEVADA
Field(s)
- ATC_GROUND_NEVADA:New(AirbaseNames)
-
Creates a new ATCGROUNDNEVADA object.
Parameter
-
AirbaseNames: A list {} of airbase names (Use AIRBASE.Nevada enumerator).
Return value
#ATCGROUNDNEVADA: self
-
Type ATC_GROUND_NORMANDY
Field(s)
- ATC_GROUND_NORMANDY:New(AirbaseNames)
-
Creates a new ATCGROUNDNORMANDY object.
Parameter
-
AirbaseNames: A list {} of airbase names (Use AIRBASE.Normandy enumerator).
Return value
#ATCGROUNDNORMANDY: self
-