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

ATCGROUNDCAUCASUS, extends #ATC_GROUND

Banner Image

The ATCGROUNDCAUCASUS class monitors the speed of the airplanes at the airbase during taxi.

ATC_GROUND_NEVADA

ATCGROUNDNEVADA, extends #ATC_GROUND

Banner Image

The ATCGROUNDNEVADA class monitors the speed of the airplanes at the airbase during taxi.

ATC_GROUND_NORMANDY

ATCGROUNDNORMANDY, extends #ATC_GROUND

Banner Image

The ATCGROUNDNORMANDY class monitors the speed of the airplanes at the airbase during taxi.

SSB

Type ATC_GROUND

ATC_GROUND.AirbaseList
ATC_GROUND.AirbaseMonitor
ATC_GROUND.Airbases
ATC_GROUND.KickSpeed
ATC_GROUND:New(Airbases, AirbaseList)

Creates a new ATC_GROUND object.

ATC_GROUND.SetClient
ATC_GROUND:SetKickSpeedKmph(KickSpeed)

Set the maximum speed in Kmph until the player gets kicked.

ATC_GROUND:SetKickSpeedMiph(KickSpeedMiph)

Set the maximum speed in Miph until the player gets kicked.

ATC_GROUND:SmokeRunways(SmokeColor)

Smoke the airbases runways.

ATC_GROUND:_AirbaseMonitor()

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: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

ATCGROUNDCAUCASUS, extends #ATC_GROUND

Banner Image

The ATCGROUNDCAUCASUS 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 maximum speed for the airbases at Caucasus is 50 km/h.

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.Caucasus enumeration to select the airbases to be monitored.

  • ´AIRBASE.Caucasus.Anapa_Vityazevo´
  • ´AIRBASE.Caucasus.Batumi´
  • ´AIRBASE.Caucasus.Beslan´
  • ´AIRBASE.Caucasus.Gelendzhik´
  • ´AIRBASE.Caucasus.Gudauta´
  • ´AIRBASE.Caucasus.Kobuleti´
  • ´AIRBASE.Caucasus.Krasnodar_Center´
  • ´AIRBASE.Caucasus.Krasnodar_Pashkovsky´
  • ´AIRBASE.Caucasus.Krymsk´
  • ´AIRBASE.Caucasus.Kutaisi´
  • ´AIRBASE.Caucasus.Maykop_Khanskaya´
  • ´AIRBASE.Caucasus.Mineralnye_Vody´
  • ´AIRBASE.Caucasus.Mozdok´
  • ´AIRBASE.Caucasus.Nalchik´
  • ´AIRBASE.Caucasus.Novorossiysk´
  • ´AIRBASE.Caucasus.Senaki_Kolkhi´
  • ´AIRBASE.Caucasus.Sochi_Adler´
  • ´AIRBASE.Caucasus.Soganlug´
  • ´AIRBASE.Caucasus.Sukhumi_Babushara´
  • ´AIRBASE.Caucasus.Tbilisi_Lochini´
  • ´AIRBASE.Caucasus.Vaziani´

Installation

In Single Player Missions

ATC_GROUND is fully functional in single player.

In Multi Player Missions

ATCGROUND is NOT functional in multi player, for client machines connecting to the server, running the mission. 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. ATCGROUND 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. ATCGROUNDCAUCASUS Constructor

Creates a new ATCGROUNDCAUCASUS object that will monitor pilots taxiing behaviour.

-- This creates a new ATC_GROUND_CAUCASUS object.

-- Monitor all the airbases.
AirbasePoliceCaucasus = ATC_GROUND_CAUCASUS:New()

-- Monitor specific airbases only.

ATC_Ground = ATC_GROUND_CAUCASUS:New(
  { AIRBASE.Caucasus.Gelendzhik,     
    AIRBASE.Caucasus.Krymsk          
  }                                  
)                                    

#ATC_GROUND_NEVADA ATC_GROUND_NEVADA

ATCGROUNDNEVADA, extends #ATC_GROUND

Banner Image

The ATCGROUNDNEVADA 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.Nevada enumeration to select the airbases to be monitored.

  • AIRBASE.Nevada.Beatty_Airport
  • AIRBASE.Nevada.Boulder_City_Airport
  • AIRBASE.Nevada.Creech_AFB
  • AIRBASE.Nevada.Echo_Bay
  • AIRBASE.Nevada.Groom_Lake_AFB
  • AIRBASE.Nevada.Henderson_Executive_Airport
  • AIRBASE.Nevada.Jean_Airport
  • AIRBASE.Nevada.Laughlin_Airport
  • AIRBASE.Nevada.Lincoln_County
  • AIRBASE.Nevada.McCarran_International_Airport
  • AIRBASE.Nevada.Mellan_Airstrip
  • AIRBASE.Nevada.Mesquite
  • AIRBASE.Nevada.Mina_Airport_3Q0
  • AIRBASE.Nevada.Nellis_AFB
  • AIRBASE.Nevada.North_Las_Vegas
  • AIRBASE.Nevada.Pahute_Mesa_Airstrip
  • AIRBASE.Nevada.Tonopah_Airport
  • AIRBASE.Nevada.Tonopah_Test_Range_Airfield

Installation

In Single Player Missions

ATC_GROUND is fully functional in single player.

In Multi Player Missions

ATCGROUND is NOT functional in multi player, for client machines connecting to the server, running the mission. 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. ATCGROUND 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.
AirbasePoliceCaucasus = 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
  }                                              
)                                                
#ATC_GROUND_NORMANDY ATC_GROUND_NORMANDY

ATCGROUNDNORMANDY, extends #ATC_GROUND

Banner Image

The ATCGROUNDNORMANDY 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.Normandy enumeration to select the airbases to be monitored.

  • ´AIRBASE.Normandy.Azeville´
  • ´AIRBASE.Normandy.Bazenville´
  • ´AIRBASE.Normandy.BenysurMer´
  • ´AIRBASE.Normandy.Beuzeville´
  • ´AIRBASE.Normandy.Biniville´
  • ´AIRBASE.Normandy.Brucheville´
  • ´AIRBASE.Normandy.Cardonville´
  • ´AIRBASE.Normandy.Carpiquet´
  • ´AIRBASE.Normandy.Chailey´
  • ´AIRBASE.Normandy.Chippelle´
  • ´AIRBASE.Normandy.Cretteville´
  • ´AIRBASE.Normandy.CricquevilleenBessin´
  • ´AIRBASE.Normandy.Deux_Jumeaux´
  • ´AIRBASE.Normandy.Evreux´
  • ´AIRBASE.Normandy.Ford´
  • ´AIRBASE.Normandy.Funtington´
  • ´AIRBASE.Normandy.Lantheuil´
  • ´AIRBASE.Normandy.Le_Molay´
  • ´AIRBASE.Normandy.Lessay´
  • ´AIRBASE.Normandy.Lignerolles´
  • ´AIRBASE.Normandy.LonguessurMer´
  • ´AIRBASE.Normandy.Maupertus´
  • ´AIRBASE.Normandy.Meautis´
  • ´AIRBASE.Normandy.NeedsOarPoint´
  • ´AIRBASE.Normandy.Picauville´
  • ´AIRBASE.Normandy.Rucqueville´
  • ´AIRBASE.Normandy.SaintPierredu_Mont´
  • ´AIRBASE.Normandy.SainteCroixsur_Mer´
  • ´AIRBASE.Normandy.SainteLaurentsur_Mer´
  • ´AIRBASE.Normandy.Sommervieu´
  • ´AIRBASE.Normandy.Tangmere´

Installation

In Single Player Missions

ATC_GROUND is fully functional in single player.

In Multi Player Missions

ATCGROUND is NOT functional in multi player, for client machines connecting to the server, running the mission. 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. ATCGROUND 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 
  } 
)
SSB

This is simple slot blocker is used on the server.

Type ATC_Ground

Type ATC_GROUND

Field(s)

ATC_GROUND.AirbaseList
ATC_GROUND.AirbaseMonitor
ATC_GROUND.Airbases
ATC_GROUND.KickSpeed
ATC_GROUND:New(Airbases, AirbaseList)

Creates a new ATC_GROUND object.

Parameters

  • Airbases : A table of Airbase Names.

  • AirbaseList :

Return value

#ATC_GROUND: self

Core.Set#SET_CLIENT ATC_GROUND.SetClient
ATC_GROUND:SetKickSpeedKmph(KickSpeed)

Set the maximum speed in Kmph until the player gets kicked.

Parameter

  • #number KickSpeed : Set the maximum speed in Kmph until the player gets kicked.

Return value

#ATC_GROUND: self

ATC_GROUND:SetKickSpeedMiph(KickSpeedMiph)

Set the maximum speed in Miph until the player gets kicked.

Parameter

  • #number KickSpeedMiph : Set the maximum speed in Mph until the player gets kicked.

Return value

#ATC_GROUND: self

ATC_GROUND:SmokeRunways(SmokeColor)

Smoke the airbases runways.

Parameter

Return value

#ATC_GROUND: self

ATC_GROUND:_AirbaseMonitor()

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