Banner Image

Module Ops.NavyGroup

Ops - Enhanced Naval Group.

Main Features:

  • Let the group steam into the wind
  • Command a full stop
  • Patrol waypoints ad infinitum
  • Collision warning, if group is heading towards a land mass
  • Automatic pathfinding, e.g. around islands
  • Let a submarine dive and surface
  • Manage TACAN and ICLS beacons
  • Dynamically add and remove waypoints
  • Sophisticated task queueing system (know when DCS tasks start and end)
  • Convenient checks when the group enters or leaves a zone
  • Detection events for new, known and lost units
  • Simple LASER and IR-pointer setup
  • Compatible with AUFTRAG class
  • Many additional events that the mission designer can hook into

Example Missions:

Demo missions can be found on github


Author: funkyfranky


Global(s)

Global NAVYGROUP

Something must be left to chance; nothing is sure in a sea fight above all. -- Horatio Nelson


Banner Image

The NAVYGROUP Concept

This class enhances naval groups.

#NAVYGROUP NAVYGROUP

Something must be left to chance; nothing is sure in a sea fight above all. -- Horatio Nelson


Banner Image

The NAVYGROUP Concept

This class enhances naval groups.

Type(s)

Fields and Methods inherited from NAVYGROUP Description

NAVYGROUP:AddTaskAttackGroup(TargetGroup, WeaponExpend, WeaponType, Clock, Prio)

Add a scheduled task.

NAVYGROUP:AddTaskFireAtPoint(Coordinate, Clock, Radius, Nshots, WeaponType, Prio)

Add a scheduled task.

NAVYGROUP:AddTaskWaypointFireAtPoint(Coordinate, Waypoint, Radius, Nshots, WeaponType, Prio, Duration)

Add a waypoint task.

NAVYGROUP:AddTurnIntoWind(starttime, stoptime, speed, uturn, offset)

Add a time window, where the groups steams into the wind.

NAVYGROUP:AddWaypoint(Coordinate, Speed, AfterWaypointWithID, Depth, Updateroute)

Add an a waypoint to the route.

NAVYGROUP:GetHeadingIntoWind(Offset)

Get heading of group into the wind.

NAVYGROUP:GetTurnIntoWindCurrent()

Get the turn into wind window, which is currently open.

NAVYGROUP:GetTurnIntoWindNext()

Get the next turn into wind window, which is not yet running.

NAVYGROUP:GetWind()

Get wind direction and speed at current position.

NAVYGROUP:IsCruising()

Check if the group is currently cruising.

NAVYGROUP:IsDiving()

Check if the group is currently diving.

NAVYGROUP:IsHolding()

Check if the group is currently holding its positon.

NAVYGROUP:IsOnDetour()

Check if the group is currently on a detour.

NAVYGROUP:IsSteamingIntoWind()

Check if the group is currently steaming into the wind.

NAVYGROUP:IsTurning()

Check if the group is currently turning.

NAVYGROUP:New(GroupName)

Create a new NAVYGROUP class object.

NAVYGROUP:OnEventBirth(EventData)

Event function handling the birth of a unit.

NAVYGROUP:OnEventDead(EventData)

Flightgroup event function handling the crash of a unit.

NAVYGROUP:OnEventRemoveUnit(EventData)

Flightgroup event function handling the crash of a unit.

NAVYGROUP.Qintowind

Queue of "into wind" turns.

NAVYGROUP:RemoveTurnIntoWind(IntoWindData)

Remove steam into wind window from queue.

NAVYGROUP:SetPathfinding(Switch, CorridorWidth)

Enable/disable pathfinding.

NAVYGROUP:SetPathfindingOff()

Disable pathfinding.

NAVYGROUP:SetPathfindingOn(CorridorWidth)

Enable pathfinding.

NAVYGROUP:SetPatrolAdInfinitum(switch)

Group patrols ad inifintum.

NAVYGROUP:_CheckFreePath(DistanceMax, dx)

Check for possible collisions between two coordinates.

NAVYGROUP:_CheckTurning()

Check if group is turning.

NAVYGROUP:_CheckTurnsIntoWind()

Check queued turns into wind.

NAVYGROUP:_CreateTurnIntoWind(starttime, stoptime, speed, uturn, offset)

Create a turn into wind window.

NAVYGROUP:_FindPathToNextWaypoint()

Find free path to next waypoint.

NAVYGROUP:_InitGroup()

Initialize group parameters.

NAVYGROUP:__Stop(delay)

Triggers the FSM event "Stop" after a delay.

NAVYGROUP.actype

NAVYGROUP.adinfinitum

NAVYGROUP.ammo

NAVYGROUP.collisionwarning

If true, collition warning.

NAVYGROUP.depth

Ordered depth in meters.

NAVYGROUP.descriptors

NAVYGROUP.groupinitialized

NAVYGROUP.icls

NAVYGROUP.intowind

Into wind info.

NAVYGROUP.intowindcounter

Counter of into wind IDs.

NAVYGROUP.isAI

NAVYGROUP.isAircraft

NAVYGROUP.isGround

NAVYGROUP.isLateActivated

NAVYGROUP.isNaval

NAVYGROUP.isNavygroup

NAVYGROUP.isUncontrolled

NAVYGROUP.ispathfinding

If true, group is currently path finding.

NAVYGROUP.lid

NAVYGROUP:onafterCollisionWarning(From, Event, To, Distance)

On after "CollisionWarning" event.

NAVYGROUP:onafterCruise(From, Event, To, Speed)

On after "Cruise" event.

NAVYGROUP:onafterDetour(From, Event, To, Coordinate, Speed, Depth, ResumeRoute)

On after "Detour" event.

NAVYGROUP:onafterDetourReached(From, Event, To)

On after "DetourReached" event.

NAVYGROUP:onafterDive(From, Event, To, Depth, Speed)

On after "Dive" event.

NAVYGROUP:onafterElementSpawned(From, Event, To, Element)

On after "ElementSpawned" event.

NAVYGROUP:onafterFullStop(From, Event, To)

On after "FullStop" event.

NAVYGROUP:onafterSpawned(From, Event, To)

On after "Spawned" event.

NAVYGROUP:onafterStatus(From, Event, To)

Update status.

NAVYGROUP:onafterStop(From, Event, To)

On after Start event.

NAVYGROUP:onafterSurface(From, Event, To, Speed)

On after "Surface" event.

NAVYGROUP:onafterTurnIntoWind(From, Event, To, Into, IntoWind)

On after "TurnIntoWind" event.

NAVYGROUP:onafterTurnIntoWindOver(From, Event, To, IntoWindData)

On after "TurnIntoWindOver" event.

NAVYGROUP:onafterTurnIntoWindStop(From, Event, To)

On after "TurnIntoWindStop" event.

NAVYGROUP:onafterTurningStarted(From, Event, To)

On after "TurningStarted" event.

NAVYGROUP:onafterTurningStopped(From, Event, To)

On after "TurningStarted" event.

NAVYGROUP:onafterUpdateRoute(From, Event, To, n, Speed, Depth)

On after "UpdateRoute" event.

NAVYGROUP:onbeforeStatus(From, Event, To)

  • Update status.

NAVYGROUP:onbeforeTurnIntoWindStop(From, Event, To)

On before "TurnIntoWindStop" event.

NAVYGROUP.passedfinalwp

NAVYGROUP.pathCorridor

Path corrdidor width in meters.

NAVYGROUP.pathfindingOn

If true, enable pathfining.

NAVYGROUP.respawning

NAVYGROUP.speedCruise

NAVYGROUP.speedMax

NAVYGROUP.speedWp

NAVYGROUP.tacan

NAVYGROUP.template

NAVYGROUP.timerCheckZone

NAVYGROUP.timerQueueUpdate

NAVYGROUP.turning

If true, group is currently turning.

NAVYGROUP.version

NavyGroup version.

Fields and Methods inherited from OPSGROUP Description

NAVYGROUP:Activate(delay)

Activate a late activated group.

NAVYGROUP:AddCheckZone(CheckZone)

Add a zone that triggers and event if the group enters or leaves any of the zones.

NAVYGROUP:AddMission(Mission)

Add mission to queue.

NAVYGROUP:AddTask(task, clock, description, prio, duration)

Add a scheduled task.

NAVYGROUP:AddTaskEnroute(task)

Add an enroute task.

NAVYGROUP:AddTaskWaypoint(task, Waypoint, description, prio, duration)

Add a waypoint task.

NAVYGROUP:AddWeaponRange(RangeMin, RangeMax, BitType)

Add a weapon range for ARTY auftrag.

NAVYGROUP.Astar

path finding.

NAVYGROUP:CheckTaskDescriptionUnique(description)

Check if task description is unique.

NAVYGROUP.ClassName

Name of the class.

NAVYGROUP:ClearTasks(DCSTask)

Clear DCS tasks.

NAVYGROUP:CountRemainingMissison()

Count remaining missons.

NAVYGROUP:CountRemainingTasks()

Count the number of tasks that still pending in the queue.

NAVYGROUP:CountTasksWaypoint(uid, id)

Count remaining waypoint tasks.

NAVYGROUP.Debug

Debug mode. Messages to all about status.

NAVYGROUP:Despawn(Delay, NoEventRemoveUnit)

Despawn the group.

NAVYGROUP:DespawnElement(Element, Delay, NoEventRemoveUnit)

Despawn an element/unit of the group.

NAVYGROUP:Destroy(Delay)

Destroy group.

NAVYGROUP.ElementStatus

NAVYGROUP:GetAlarmstate()

Get current Alarm State of the group.

NAVYGROUP:GetAmmo0()

Get inital amount of ammunition.

NAVYGROUP:GetAmmoElement(element)

Get the number of shells a unit or group currently has.

NAVYGROUP:GetAmmoTot()

Get total amount of ammunition of the whole group.

NAVYGROUP:GetAmmoUnit(unit, display)

Get the number of shells a unit or group currently has.

NAVYGROUP:GetCoalition()

Get coalition.

NAVYGROUP:GetCoordinate(NewObject)

Get current coordinate of the group.

NAVYGROUP:GetDCSGroup()

Get DCS GROUP object.

NAVYGROUP:GetDCSUnit(UnitNumber)

Get DCS GROUP object.

NAVYGROUP:GetDCSUnits()

Get DCS units.

NAVYGROUP:GetDetectedGroups()

Get set of detected groups.

NAVYGROUP:GetDetectedUnits()

Get set of detected units.

NAVYGROUP:GetDistanceToWaypoint(indx)

Get distance to waypoint.

NAVYGROUP:GetElementAlive()

Get the first element of a group, which is alive.

NAVYGROUP:GetElementByName(unitname)

Get the element of a group.

NAVYGROUP:GetExpectedSpeed()

Returns the currently expected speed.

NAVYGROUP:GetGroup()

Get MOOSE GROUP object.

NAVYGROUP:GetHeading()

Get current heading of the group.

NAVYGROUP:GetHighestThreat()

Get highest threat.

NAVYGROUP:GetLaserCode()

Get LASER code.

NAVYGROUP:GetLaserCoordinate()

Get current LASER coordinate, i.e.

NAVYGROUP:GetLaserTarget()

Get current target of the LASER.

NAVYGROUP:GetLifePoints()

Returns the absolute (average) life points of the group.

NAVYGROUP:GetMissionByID(id)

Get mission by its id (auftragsnummer).

NAVYGROUP:GetMissionByTaskID(taskid)

Get mission by its task id.

NAVYGROUP:GetMissionCurrent()

Get current mission.

NAVYGROUP:GetName()

Get the group name.

NAVYGROUP:GetNelements(status)

Get number of elements alive.

NAVYGROUP:GetNextWaypointCoordinate(cyclic)

Get coordinate of next waypoint of the group.

NAVYGROUP:GetOrientation()

Get current orientation of the first unit in the group.

NAVYGROUP:GetOrientationX()

Get current orientation of the first unit in the group.

NAVYGROUP:GetROE()

Get current ROE of the group.

NAVYGROUP:GetROT()

Get current ROT of the group.

NAVYGROUP:GetRadio()

Get current Radio frequency and modulation.

NAVYGROUP:GetSpeedCruise()

Get default cruise speed.

NAVYGROUP:GetSpeedToWaypoint(indx)

Returns a non-zero speed to the next waypoint (even if the waypoint speed is zero).

NAVYGROUP:GetTACAN()

Get current TACAN parameters.

NAVYGROUP:GetTaskByID(id, status)

Get task by its id.

NAVYGROUP:GetTaskCurrent()

Get the currently executed task if there is any.

NAVYGROUP:GetTasksWaypoint(id)

Get the unfinished waypoint tasks

NAVYGROUP:GetThreat(ThreatLevelMin, ThreatLevelMax)

Get highest detected threat.

NAVYGROUP:GetTimeToWaypoint(indx)

Get time to waypoint based on current velocity.

NAVYGROUP:GetUnit(UnitNumber)

Get MOOSE UNIT object.

NAVYGROUP:GetVec2()

Get current 2D position vector of the group.

NAVYGROUP:GetVec3()

Get current 3D position vector of the group.

NAVYGROUP:GetVelocity()

Get current velocity of the group.

NAVYGROUP:GetWaypoint(indx)

Get waypoint.

NAVYGROUP:GetWaypointByID(uid)

Get the waypoint from its unique ID.

NAVYGROUP:GetWaypointByIndex(index)

Get the waypoint from its index.

NAVYGROUP:GetWaypointCoordinate(index)

Get waypoint coordinates.

NAVYGROUP:GetWaypointCurrent()

Get current waypoint.

NAVYGROUP:GetWaypointFinal()

Get final waypoint.

NAVYGROUP:GetWaypointID(indx)

Get unique ID of waypoint given its index.

NAVYGROUP:GetWaypointIndex(uid)

Get the waypoint index (its position in the current waypoints table).

NAVYGROUP:GetWaypointIndexAfterID(uid)

Get waypoint index after waypoint with given ID.

NAVYGROUP:GetWaypointIndexCurrent()

Get current waypoint index.

NAVYGROUP:GetWaypointIndexNext(cyclic, i)

Get next waypoint index.

NAVYGROUP:GetWaypointNext(cyclic)

Get next waypoint.

NAVYGROUP:GetWaypointSpeed(indx)

Get waypoint speed.

NAVYGROUP:GetWaypointUID(waypoint)

Get unique ID of waypoint.

NAVYGROUP:GetWaypointUIDFromIndex(index)

Get the waypoint UID from its index, i.e.

NAVYGROUP:GetWaypoints()

Get the waypoints.

NAVYGROUP:GetWeaponData(BitType)

Get weapon data.

NAVYGROUP:HasLoS(Coordinate, Element, OffsetElement, OffsetCoordinate)

Check if an element of the group has line of sight to a coordinate.

NAVYGROUP:HasPassedFinalWaypoint()

Check if this group has passed its final waypoint.

NAVYGROUP:InitWaypoints()

Initialize Mission Editor waypoints.

NAVYGROUP:IsActive()

Check if group is activated.

NAVYGROUP:IsAlive()

Check if group is alive.

NAVYGROUP:IsDead()

Check if group is dead.

NAVYGROUP:IsEngaging()

Check if the group is engaging another unit or group.

NAVYGROUP:IsExist()

Check if group is exists.

NAVYGROUP:IsInUtero()

Check if group is in state in utero.

NAVYGROUP:IsLasing()

Check if the group has currently switched a LASER on.

NAVYGROUP:IsLateActivated()

Check if this group is currently "late activated" and needs to be "activated" to appear in the mission.

NAVYGROUP:IsRearming()

Check if the group is currently rearming.

NAVYGROUP:IsRetreating()

Check if the group is currently retreating.

NAVYGROUP:IsSpawned()

Check if group is in state spawned.

NAVYGROUP:IsStopped()

Check if FSM is stopped.

NAVYGROUP:IsUncontrolled()

Check if this group is currently "uncontrolled" and needs to be "started" to begin its route.

NAVYGROUP:MarkWaypoints(Duration)

Mark waypoints on F10 map.

NAVYGROUP.Ndestroyed

Number of destroyed units.

NAVYGROUP:New(Group)

Create a new OPSGROUP class object.

NAVYGROUP:NewTaskScheduled(task, clock, description, prio, duration)

Create a scheduled task.

NAVYGROUP.Nkills

Number kills of this groups.

NAVYGROUP:PushTask(DCSTask)

Push DCS task.

NAVYGROUP:RemoveMission(Mission)

Remove mission from queue.

NAVYGROUP:RemoveTask(Task)

Remove task from task queue.

NAVYGROUP:RemoveWaypoint(wpindex)

Remove a waypoint.

NAVYGROUP:RemoveWaypointByID(uid)

Remove a waypoint with a ceratin UID.

NAVYGROUP:RemoveWaypointMarkers(Delay)

Remove waypoints markers on the F10 map.

NAVYGROUP:Route(waypoints, delay)

Route group along waypoints.

NAVYGROUP:RouteToMission(mission, delay)

Route group to mission.

NAVYGROUP:SelfDestruction(Delay, ExplosionPower)

Self destruction of group.

NAVYGROUP:SetCheckZones(CheckZonesSet)

Define a SET of zones that trigger and event if the group enters or leaves any of the zones.

NAVYGROUP:SetDefaultAlarmstate(alarmstate)

Set the default Alarm State for the group.

NAVYGROUP:SetDefaultCallsign(CallsignName, CallsignNumber)

Set default callsign.

NAVYGROUP:SetDefaultFormation(Formation)

Set default formation.

NAVYGROUP:SetDefaultICLS(Channel, Morse, UnitName, OffSwitch)

Set default ICLS parameters.

NAVYGROUP:SetDefaultROE(roe)

Set the default ROE for the group.

NAVYGROUP:SetDefaultROT(rot)

Set the default ROT for the group.

NAVYGROUP:SetDefaultRadio(Frequency, Modulation, OffSwitch)

Set default Radio frequency and modulation.

NAVYGROUP:SetDefaultSpeed(Speed)

Set default cruise speed.

NAVYGROUP:SetDefaultTACAN(Channel, Morse, UnitName, Band, OffSwitch)

Set default TACAN parameters.

NAVYGROUP:SetDetection(Switch)

Set detection on or off.

NAVYGROUP:SetLaser(Code, CheckLOS, IROff, UpdateTime)

Set LASER parameters.

NAVYGROUP:SetLaserTarget(Target)

Set LASER target.

NAVYGROUP:SetTask(DCSTask)

Set DCS task.

NAVYGROUP:SetVerbosity(VerbosityLevel)

Set verbosity level.

NAVYGROUP:Status()

Triggers the FSM event "Status".

NAVYGROUP:SwitchAlarmstate(alarmstate)

Set current Alarm State of the group.

NAVYGROUP:SwitchCallsign(CallsignName, CallsignNumber)

Switch to a specific callsign.

NAVYGROUP:SwitchFormation(Formation)

Switch to a specific formation.

NAVYGROUP:SwitchICLS(Channel, Morse, UnitName)

Activate/switch ICLS beacon settings.

NAVYGROUP:SwitchROE(roe)

Set current ROE for the group.

NAVYGROUP:SwitchROT(rot)

Set ROT for the group.

NAVYGROUP:SwitchRadio(Frequency, Modulation)

Turn radio on or switch frequency/modulation.

NAVYGROUP:SwitchTACAN(Channel, Morse, UnitName, Band)

Activate/switch TACAN beacon settings.

NAVYGROUP.TaskStatus

NAVYGROUP.TaskType

NAVYGROUP.TpositionUpdate

NAVYGROUP:TurnOffICLS()

Deactivate ICLS beacon.

NAVYGROUP:TurnOffRadio()

Turn radio off.

NAVYGROUP:TurnOffTACAN()

Deactivate TACAN beacon.

NAVYGROUP:_AddWaypoint(waypoint, wpnumber)

Initialize Mission Editor waypoints.

NAVYGROUP:_AllSameStatus(unitname, status)

Check if all elements of the group have the same status (or are dead).

NAVYGROUP:_AllSimilarStatus(status)

Check if all elements of the group have the same status (or are dead).

NAVYGROUP:_CheckAmmoFull()

Check ammo is full.

NAVYGROUP:_CheckAmmoStatus()

Check ammo status.

NAVYGROUP:_CheckDamage()

Check damage.

NAVYGROUP:_CheckDetectedUnits()

Check detected units.

NAVYGROUP:_CheckGroupDone(delay)

Check if passed the final waypoint and, if necessary, update route.

NAVYGROUP:_CheckInZones()

Check if group is in zones.

NAVYGROUP:_CheckStuck()

Check if group got stuck.

NAVYGROUP:_CoordinateFromObject(Object)

Get coordinate from an object.

NAVYGROUP:_CreateWaypoint(Waypoint, waypoint)

Enhance waypoint table.

NAVYGROUP:_GetNextMission()

Get next mission.

NAVYGROUP:_GetNextTask()

Get next task in queue.

NAVYGROUP:_GetROEName(roe)

Get name of ROE corresponding to the numerical value.

NAVYGROUP:_MissileCategoryName(categorynumber)

Returns a name of a missile category.

NAVYGROUP._PassingWaypoint(group, opsgroup, uid)

Function called when a group is passing a waypoint.

NAVYGROUP:_PrintTaskAndMissionStatus()

Print info on mission and task status to DCS log file.

NAVYGROUP:_QueueUpdate()

On after "QueueUpdate" event.

NAVYGROUP:_SetElementStatusAll(status)

Set status for all elements (except dead ones).

NAVYGROUP:_SetWaypointTasks(Waypoint)

Set tasks at this waypoint

NAVYGROUP:_SortTaskQueue()

Sort task queue.

NAVYGROUP:_SwitchICLS(Icls)

Activate/switch ICLS beacon settings.

NAVYGROUP:_SwitchTACAN(Tacan)

Activate/switch TACAN beacon settings.

NAVYGROUP._TaskDone(group, opsgroup, task)

Function called when a task is done.

NAVYGROUP._TaskExecute(group, opsgroup, task)

Function called when a task is executed.

NAVYGROUP:_UpdateLaser()

Update laser point.

NAVYGROUP:_UpdatePosition()

Check if all elements of the group have the same status (or are dead).

NAVYGROUP:_UpdateStatus(element, newstatus, airbase)

Check if all elements of the group have the same status or are dead.

NAVYGROUP:_UpdateWaypointTasks(n)

Initialize Mission Editor waypoints.

NAVYGROUP:__Status(delay)

Triggers the FSM event "Status" after a delay.

NAVYGROUP:__Stop(delay)

Triggers the FSM event "Stop" after a delay.

NAVYGROUP.adinfinitum

Resume route at first waypoint when final waypoint is reached.

NAVYGROUP.ammo

Initial ammount of ammo.

NAVYGROUP.attribute

Generalized attribute.

NAVYGROUP.callsign

Current callsign settings.

NAVYGROUP.callsignDefault

Default callsign settings.

NAVYGROUP.checkzones

Set of zones.

NAVYGROUP.coordinate

Current coordinate.

NAVYGROUP.currentmission

The ID (auftragsnummer) of the currently assigned AUFTRAG.

NAVYGROUP.currentwp

Current waypoint index. This is the index of the last passed waypoint.

NAVYGROUP.dTpositionUpdate

NAVYGROUP.detectedgroups

Set of detected groups.

NAVYGROUP.detectedunits

Set of detected units.

NAVYGROUP.detectionOn

If true, detected units of the group are analyzed.

NAVYGROUP.elements

Table of elements, i.e. units of the group.

NAVYGROUP.formation

NAVYGROUP.group

Group object.

NAVYGROUP.groupinitialized

If true, group parameters were initialized.

NAVYGROUP.groupname

Name of the group.

NAVYGROUP.heading

Heading of the group at last status check.

NAVYGROUP.headingLast

Backup of last heading to monitor changes.

NAVYGROUP.icls

Current ICLS settings.

NAVYGROUP.iclsDefault

Default ICLS settings.

NAVYGROUP.inzones

Set of zones in which the group is currently in.

NAVYGROUP.isAI

If true, group is purely AI.

NAVYGROUP.isAircraft

If true, group is airplane or helicopter.

NAVYGROUP.isArmygroup

Is an ARMYGROUP.

NAVYGROUP.isFlightgroup

Is a FLIGHTGROUP.

NAVYGROUP.isGround

If true, group is some ground unit.

NAVYGROUP.isLateActivated

Is the group late activated.

NAVYGROUP.isNaval

If true, group is ships or submarine.

NAVYGROUP.isNavygroup

Is a NAVYGROUP.

NAVYGROUP.isUncontrolled

Is the group uncontrolled.

NAVYGROUP.ispathfinding

If true, group is on pathfinding route.

NAVYGROUP.lid

Class id string for output to DCS log file.

NAVYGROUP.life

NAVYGROUP.missionpaused

Paused mission.

NAVYGROUP.missionqueue

Queue of missions.

NAVYGROUP:onafterDead(From, Event, To)

On after "Dead" event.

NAVYGROUP:onafterDetectedGroup(From, Event, To, Group)

On after "DetectedGroup" event.

NAVYGROUP:onafterDetectedGroupNew(From, Event, To, Group)

On after "DetectedGroupNew" event.

NAVYGROUP:onafterDetectedUnit(From, Event, To, Unit)

On after "DetectedUnit" event.

NAVYGROUP:onafterDetectedUnitNew(From, Event, To, Unit)

On after "DetectedUnitNew" event.

NAVYGROUP:onafterElementDead(From, Event, To, Element)

On after "ElementDead" event.

NAVYGROUP:onafterElementDestroyed(From, Event, To, Element)

On after "ElementDestroyed" event.

NAVYGROUP:onafterEnterZone(From, Event, To, Zone)

On after "EnterZone" event.

NAVYGROUP:onafterGotoWaypoint(From, Event, To, UID)

On after "GotoWaypoint" event.

NAVYGROUP:onafterLaserCode(From, Event, To, Code)

On after "LaserCode" event.

NAVYGROUP:onafterLaserGotLOS(From, Event, To)

On after "LaserGotLOS" event.

NAVYGROUP:onafterLaserLostLOS(From, Event, To)

On after "LaserLostLOS" event.

NAVYGROUP:onafterLaserOff(From, Event, To)

On after "LaserOff" event.

NAVYGROUP:onafterLaserOn(From, Event, To, Target)

On after "LaserOn" event.

NAVYGROUP:onafterLaserPause(From, Event, To)

On after "LaserPause" event.

NAVYGROUP:onafterLaserResume(From, Event, To)

On after "LaserResume" event.

NAVYGROUP:onafterLeaveZone(From, Event, To, Zone)

On after "LeaveZone" event.

NAVYGROUP:onafterMissionCancel(From, Event, To, Mission)

On after "MissionCancel" event.

NAVYGROUP:onafterMissionDone(From, Event, To, Mission)

On after "MissionDone" event.

NAVYGROUP:onafterMissionExecute(From, Event, To, Mission)

On after "MissionExecute" event.

NAVYGROUP:onafterMissionStart(From, Event, To, Mission)

On after "MissionStart" event.

NAVYGROUP:onafterPassingWaypoint(From, Event, To, Waypoint)

On after "PassingWaypoint" event.

NAVYGROUP:onafterPauseMission(From, Event, To)

On after "PauseMission" event.

NAVYGROUP:onafterStop(From, Event, To)

On after "Stop" event.

NAVYGROUP:onafterTaskCancel(From, Event, To, Task)

On after "TaskCancel" event.

NAVYGROUP:onafterTaskDone(From, Event, To, Task)

On after "TaskDone" event.

NAVYGROUP:onafterTaskExecute(From, Event, To, Task)

On after "TaskExecute" event.

NAVYGROUP:onafterUnpauseMission(From, Event, To)

On after "UnpauseMission" event.

NAVYGROUP:onbeforeDead(From, Event, To)

On before "Dead" event.

NAVYGROUP:onbeforeLaserOff(From, Event, To)

On before "LaserOff" event.

NAVYGROUP:onbeforeLaserOn(From, Event, To, Target)

On before "LaserOn" event.

NAVYGROUP:onbeforeLaserResume(From, Event, To)

On before "LaserResume" event.

NAVYGROUP:onbeforeMissionStart(From, Event, To, Mission)

On before "MissionStart" event.

NAVYGROUP:onbeforeTaskDone(From, Event, To, Task)

On before "TaskDone" event.

NAVYGROUP.option

Current optional settings.

NAVYGROUP.optionDefault

Default option settings.

NAVYGROUP.orientX

Orientation at last status check.

NAVYGROUP.orientXLast

Backup of last orientation to monitor changes.

NAVYGROUP.outofAmmo

NAVYGROUP.outofBombs

NAVYGROUP.outofGuns

NAVYGROUP.outofMissiles

NAVYGROUP.outofRockets

NAVYGROUP.outoffBombs

NAVYGROUP.outoffGuns

NAVYGROUP.outoffMissiles

NAVYGROUP.outoffRockets

NAVYGROUP.passedfinalwp

Group has passed the final waypoint.

NAVYGROUP.position

Position of the group at last status check.

NAVYGROUP.positionLast

Backup of last position vec to monitor changes.

NAVYGROUP.radio

Current radio settings.

NAVYGROUP.radioDefault

Default radio settings.

NAVYGROUP.radioQueue

Radio queue.

NAVYGROUP.respawning

Group is being respawned.

NAVYGROUP.speed

NAVYGROUP.speedCruise

Cruising speed in km/h.

NAVYGROUP.speedMax

Max speed in km/h.

NAVYGROUP.speedWp

Speed to the next waypoint in m/s.

NAVYGROUP.spot

Laser and IR spot.

NAVYGROUP.stuckTimestamp

NAVYGROUP.stuckVec3

NAVYGROUP.tacan

Current TACAN settings.

NAVYGROUP.tacanDefault

Default TACAN settings.

NAVYGROUP.taskcounter

Running number of task ids.

NAVYGROUP.taskcurrent

ID of current task. If 0, there is no current task assigned.

NAVYGROUP.taskenroute

Enroute task of the group.

NAVYGROUP.taskpaused

Paused tasks.

NAVYGROUP.taskqueue

Queue of tasks.

NAVYGROUP.template

Template of the group.

NAVYGROUP.timerCheckZone

Timer for check zones.

NAVYGROUP.timerQueueUpdate

Timer for queue updates.

NAVYGROUP.traveldist

Distance traveled in meters. This is a lower bound.

NAVYGROUP.travelds

NAVYGROUP.traveltime

Time.

NAVYGROUP.velocity

NAVYGROUP.velocityLast

NAVYGROUP.verbose

Verbosity level. 0=silent.

NAVYGROUP.version

NavyGroup version.

NAVYGROUP.waypoints

Table of waypoints.

NAVYGROUP.waypoints0

Table of initial waypoints.

NAVYGROUP.weaponData

Weapon data table with key=BitType.

NAVYGROUP.wpcounter

Running number counting waypoints.

Fields and Methods inherited from FSM Description

NAVYGROUP:AddEndState(State)

Adds an End state.

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

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

NAVYGROUP:AddScore(State, ScoreText, Score)

Adds a score for the FSM to be achieved.

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

Adds a score for the FSM_PROCESS to be achieved.

NAVYGROUP:AddTransition(From, Event, To)

Add a new transition rule to the FSM.

NAVYGROUP.CallScheduler

Call scheduler.

NAVYGROUP.ClassName

Name of the class.

NAVYGROUP.Events

NAVYGROUP:GetCurrentState()

Get current state.

NAVYGROUP:GetEndStates()

Returns the End states.

NAVYGROUP:GetProcess(From, Event)

NAVYGROUP:GetProcesses()

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

NAVYGROUP:GetScores(Scores)

Returns a table with the scores defined.

NAVYGROUP:GetStartState()

Returns the start state of the FSM.

NAVYGROUP:GetState()

Get current state.

NAVYGROUP:GetSubs()

Returns a table with the Subs defined.

NAVYGROUP:GetTransitions()

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

NAVYGROUP:Is(State)

Check if FSM is in state.

NAVYGROUP:LoadCallBacks(CallBackTable)

Load call backs.

NAVYGROUP:New()

Creates a new FSM object.

NAVYGROUP.Scores

Scores.

NAVYGROUP:SetProcess(From, Event, Fsm)

NAVYGROUP:SetStartState(State)

Sets the start state of the FSM.

NAVYGROUP._EndStates

NAVYGROUP._EventSchedules

NAVYGROUP._Processes

NAVYGROUP._Scores

NAVYGROUP._StartState

NAVYGROUP._Transitions

NAVYGROUP:_add_to_map(Map, Event)

Add to map.

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

Call handler.

NAVYGROUP:_create_transition(EventName)

Create transition.

NAVYGROUP:_delayed_transition(EventName)

Delayed transition.

NAVYGROUP:_eventmap(Events, EventStructure)

Event map.

NAVYGROUP:_gosub(ParentFrom, ParentEvent)

Go sub.

NAVYGROUP:_handler(EventName, ...)

Handler.

NAVYGROUP:_isendstate(Current)

Is end state.

NAVYGROUP:_submap(subs, sub, name)

Sub maps.

NAVYGROUP:can(e)

Check if can do an event.

NAVYGROUP:cannot(e)

Check if cannot do an event.

NAVYGROUP.current

Current state name.

NAVYGROUP.endstates

NAVYGROUP:is(State, state)

Check if FSM is in state.

NAVYGROUP.options

Options.

NAVYGROUP.subs

Subs.

Fields and Methods inherited from BASE Description

NAVYGROUP.ClassID

The ID number of the class.

NAVYGROUP.ClassName

The name of the class.

NAVYGROUP.ClassNameAndID

The name of the class concatenated with the ID number of the class.

NAVYGROUP:ClearState(Object, StateName)

Clear the state of an object.

NAVYGROUP:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

NAVYGROUP:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

NAVYGROUP:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

NAVYGROUP:CreateEventPlayerEnterAircraft(PlayerUnit)

Creation of a S_EVENT_PLAYER_ENTER_AIRCRAFT event.

NAVYGROUP:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

NAVYGROUP:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

NAVYGROUP:CreateEventUnitLost(EventTime, Initiator)

Creation of a Crash Event.

NAVYGROUP:E(Arguments)

Log an exception which will be traced always.

NAVYGROUP:EventDispatcher()

Returns the event dispatcher

NAVYGROUP:EventRemoveAll()

Remove all subscribed events

NAVYGROUP:F(Arguments)

Trace a function call.

NAVYGROUP:F2(Arguments)

Trace a function call level 2.

NAVYGROUP:F3(Arguments)

Trace a function call level 3.

NAVYGROUP:GetClassID()

Get the ClassID of the class instance.

NAVYGROUP:GetClassName()

Get the ClassName of the class instance.

NAVYGROUP:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

NAVYGROUP:GetEventPriority()

Get the Class Event processing Priority.

NAVYGROUP:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

NAVYGROUP:GetState(Object, Key)

Get a Value given a Key from the Object.

NAVYGROUP:HandleEvent(EventID, EventFunction)

Subscribe to a DCS Event.

NAVYGROUP:I(Arguments)

Log an information which will be traced always.

NAVYGROUP:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

NAVYGROUP:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

NAVYGROUP:IsTrace()

Enquires if tracing is on (for the class).

NAVYGROUP:New()

BASE constructor.

NAVYGROUP:OnEvent(EventData)

Occurs when an object is completely destroyed.

NAVYGROUP:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

NAVYGROUP:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

NAVYGROUP:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

NAVYGROUP:OnEventDead(EventData)

Occurs when an object is dead.

NAVYGROUP:OnEventDetailedFailure(EventData)

Unknown precisely what creates this event, likely tied into newer damage model.

NAVYGROUP:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

NAVYGROUP:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

NAVYGROUP:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

NAVYGROUP:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

NAVYGROUP:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

NAVYGROUP:OnEventKill(EventData)

Occurs on the death of a unit.

NAVYGROUP:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

NAVYGROUP:OnEventLandingAfterEjection(EventData)

Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.

NAVYGROUP:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

NAVYGROUP:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

NAVYGROUP:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

NAVYGROUP:OnEventMissionEnd(EventData)

Occurs when a mission ends

NAVYGROUP:OnEventMissionStart(EventData)

Occurs when a mission starts

NAVYGROUP:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

NAVYGROUP:OnEventPlayerEnterAircraft(EventData)

Occurs when a player enters a slot and takes control of an aircraft.

NAVYGROUP:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

NAVYGROUP:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

NAVYGROUP:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

NAVYGROUP:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

NAVYGROUP:OnEventScore(EventData)

Occurs when any modification to the "Score" as seen on the debrief menu would occur.

NAVYGROUP:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

NAVYGROUP:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

NAVYGROUP:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

NAVYGROUP:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

NAVYGROUP:OnEventUnitLost(EventData)

Occurs when the game thinks an object is destroyed.

NAVYGROUP:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

NAVYGROUP:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

NAVYGROUP:ScheduleStop(SchedulerFunction)

Stops the Schedule.

NAVYGROUP.Scheduler

NAVYGROUP:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

NAVYGROUP:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

NAVYGROUP:T(Arguments)

Trace a function logic level 1.

NAVYGROUP:T2(Arguments)

Trace a function logic level 2.

NAVYGROUP:T3(Arguments)

Trace a function logic level 3.

NAVYGROUP:TraceAll(TraceAll)

Trace all methods in MOOSE

NAVYGROUP:TraceClass(Class)

Set tracing for a class

NAVYGROUP:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

NAVYGROUP:TraceLevel(Level)

Set trace level

NAVYGROUP:TraceOff()

Set trace off.

NAVYGROUP:TraceOn()

Set trace on.

NAVYGROUP:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

NAVYGROUP:UnHandleEvent(EventID)

UnSubscribe to a DCS event.

NAVYGROUP._

NAVYGROUP:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

NAVYGROUP:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

NAVYGROUP.__

NAVYGROUP:onEvent(event)

Fields and Methods inherited from NAVYGROUP.IntoWind Description

NAVYGROUP.IntoWind.Coordinate

Coordinate where we left the route.

NAVYGROUP.IntoWind.Heading

Heading the boat will take in degrees.

NAVYGROUP.IntoWind.Id

Unique ID of the turn.

NAVYGROUP.IntoWind.Offset

Offset angle in degrees.

NAVYGROUP.IntoWind.Open

Currently active.

NAVYGROUP.IntoWind.Over

This turn is over.

NAVYGROUP.IntoWind.Speed

Speed in knots.

NAVYGROUP.IntoWind.Tstart

Time to start.

NAVYGROUP.IntoWind.Tstop

Time to stop.

NAVYGROUP.IntoWind.Uturn

U-turn.

NAVYGROUP.IntoWind.waypoint

Turn into wind waypoint.

NAVYGROUP class.

Field(s)

#table NAVYGROUP.Qintowind

Queue of "into wind" turns.

NAVYGROUP.ammo

Group ammo.

#boolean NAVYGROUP.collisionwarning

If true, collition warning.

#number NAVYGROUP.depth

Ordered depth in meters.

#boolean NAVYGROUP.groupinitialized

Init done.

#number NAVYGROUP.intowindcounter

Counter of into wind IDs.

#boolean NAVYGROUP.isAI

Ships are always AI.

#boolean NAVYGROUP.isAircraft

Define category.

NAVYGROUP.isLateActivated

Is (template) group late activated.

#boolean NAVYGROUP.isUncontrolled

Naval groups cannot be uncontrolled.

#boolean NAVYGROUP.ispathfinding

If true, group is currently path finding.

NAVYGROUP.lid

Set some string id for output to DCS.log file.

#number NAVYGROUP.pathCorridor

Path corrdidor width in meters.

#boolean NAVYGROUP.pathfindingOn

If true, enable pathfining.

NAVYGROUP.speedMax

Max speed in km/h.

NAVYGROUP.speedWp

Current set speed in m/s.

NAVYGROUP.template

Get template of group.

NAVYGROUP.timerCheckZone

Start check zone timer.

NAVYGROUP.timerQueueUpdate

Start queue update timer.

#boolean NAVYGROUP.turning

If true, group is currently turning.

#string NAVYGROUP.version

NavyGroup version.

Function(s)

Add a scheduled task.

Defined in:

NAVYGROUP

Parameters:

Wrapper.Group#GROUP TargetGroup

Target group.

#number WeaponExpend

How much weapons does are used.

#number WeaponType

Type of weapon. Default auto.

#string Clock

Time when to start the attack.

#number Prio

Priority of the task.

Return value:

The task data.

Add a scheduled task.

Defined in:

NAVYGROUP

Parameters:

Coordinate of the target.

#string Clock

Time when to start the attack.

#number Radius

Radius in meters. Default 100 m.

#number Nshots

Number of shots to fire. Default 3.

#number WeaponType

Type of weapon. Default auto.

#number Prio

Priority of the task.

Return value:

The task data.

Add a waypoint task.

Defined in:

NAVYGROUP

Parameters:

Coordinate of the target.

Where the task is executed. Default is next waypoint.

#number Radius

Radius in meters. Default 100 m.

#number Nshots

Number of shots to fire. Default 3.

#number WeaponType

Type of weapon. Default auto.

#number Prio

Priority of the task.

#number Duration

Duration in seconds after which the task is cancelled. Default never.

Return value:

The task table.

Add a time window, where the groups steams into the wind.

Defined in:

NAVYGROUP

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

#number offset

Offset angle in degrees, e.g. to account for an angled runway. Default 0 deg.

Return value:

Turn into window data table.

Add an a waypoint to the route.

Defined in:

NAVYGROUP

Parameters:

The coordinate of the waypoint. Use COORDINATE:SetAltitude(altitude) to define the altitude.

#number Speed

Speed in knots. Default is default cruise speed or 70% of max speed.

#number AfterWaypointWithID

Insert waypoint after waypoint given ID. Default is to insert as last waypoint.

#number Depth

Depth at waypoint in meters. Only for submarines.

#boolean Updateroute

If true or nil, call UpdateRoute. If false, no call.

Return value:

Get heading of group into the wind.

Defined in:

NAVYGROUP

Parameter:

#number Offset

Offset angle in degrees, e.g. to account for an angled runway.

Return value:

#number:

Carrier heading in degrees.

Get the turn into wind window, which is currently open.

Defined in:

NAVYGROUP

Return value:

Current into wind data. Could be nil if there is no window currenly open.

Get the next turn into wind window, which is not yet running.

Defined in:

NAVYGROUP

Return value:

Next into wind data. Could be nil if there is not next window.

Get wind direction and speed at current position.

Defined in:

NAVYGROUP

Return values:

#number:

Direction the wind is blowing from in degrees.

#number:

Wind speed in m/s.

Check if the group is currently cruising.

Defined in:

NAVYGROUP

Return value:

#boolean:

If true, group cruising.

Check if the group is currently diving.

Defined in:

NAVYGROUP

Return value:

#boolean:

If true, group is currently diving.

Check if the group is currently holding its positon.

Defined in:

NAVYGROUP

Return value:

#boolean:

If true, group was ordered to hold.

Check if the group is currently on a detour.

Defined in:

NAVYGROUP

Return value:

#boolean:

If true, group is on a detour

Check if the group is currently steaming into the wind.

Defined in:

NAVYGROUP

Return value:

#boolean:

If true, group is currently steaming into the wind.

Check if the group is currently turning.

Defined in:

NAVYGROUP

Return value:

#boolean:

If true, group is currently turning.

Create a new NAVYGROUP class object.

Defined in:

NAVYGROUP

Parameter:

#string GroupName

Name of the group.

Return value:

self

Event function handling the birth of a unit.

Defined in:

NAVYGROUP

Parameter:

Event data.

Flightgroup event function handling the crash of a unit.

Defined in:

NAVYGROUP

Parameter:

Event data.

Flightgroup event function handling the crash of a unit.

Defined in:

NAVYGROUP

Parameter:

Event data.

Remove steam into wind window from queue.

If the window is currently active, it is stopped first.

Defined in:

NAVYGROUP

Parameter:

#NAVYGROUP.IntoWind IntoWindData

Turn into window data table.

Return value:

self

Enable/disable pathfinding.

Defined in:

NAVYGROUP

Parameters:

#boolean Switch

If true, enable pathfinding.

#number CorridorWidth

Corridor with in meters. Default 400 m.

Return value:

self

Disable pathfinding.

Defined in:

NAVYGROUP

Return value:

self

Enable pathfinding.

Defined in:

NAVYGROUP

Parameter:

#number CorridorWidth

Corridor with in meters. Default 400 m.

Return value:

self

Group patrols ad inifintum.

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

Defined in:

NAVYGROUP

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

Check for possible collisions between two coordinates.

Defined in:

NAVYGROUP

Parameters:

#number DistanceMax

Max distance in meters ahead to check. Default 5000.

#number dx

Return value:

#number:

Free distance in meters.

Check if group is turning.

Defined in:

NAVYGROUP

Check queued turns into wind.

Defined in:

NAVYGROUP

Create a turn into wind window.

Note that this is not executed as it not added to the queue.

Defined in:

NAVYGROUP

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

#number offset

Offset angle in degrees, e.g. to account for an angled runway. Default 0 deg.

Return value:

Recovery window.

Find free path to next waypoint.

Defined in:

NAVYGROUP

Return value:

#boolean:

If true, a path was found.

Initialize group parameters.

Also initializes waypoints if self.waypoints is nil.

Defined in:

NAVYGROUP

Return value:

self

Triggers the FSM event "Stop" after a delay.

Stops the NAVYGROUP and all its event handlers.

Defined in:

NAVYGROUP

Parameter:

#number delay

Delay in seconds.

On after "CollisionWarning" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number Distance

Distance in meters where obstacle was detected.

On after "Cruise" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number Speed

Speed in knots until next waypoint is reached. Default is speed set for waypoint.

On after "Detour" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

Coordinate where to go.

#number Speed

Speed in knots. Default cruise speed.

#number Depth

Depth in meters. Default 0 meters.

#number ResumeRoute

If true, resume route after detour point was reached. If false, the group will stop at the detour point and wait for futher commands.

On after "DetourReached" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "Dive" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number Depth

Dive depth in meters. Default 50 meters.

#number Speed

Speed in knots until next waypoint is reached.

On after "ElementSpawned" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The group element.

On after "FullStop" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "Spawned" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

Update status.

Defined in:

NAVYGROUP

Parameters:

From

Event

To

On after Start event.

Starts the NAVYGROUP FSM and event handlers.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "Surface" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number Speed

Speed in knots until next waypoint is reached.

On after "TurnIntoWind" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

wind parameters.

IntoWind

On after "TurnIntoWindOver" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#NAVYGROUP.IntoWind IntoWindData

Data table.

On after "TurnIntoWindStop" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "TurningStarted" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "TurningStarted" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "UpdateRoute" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number n

Waypoint number. Default is next waypoint.

#number Speed

Speed in knots to the next waypoint.

#number Depth

Depth in meters to the next waypoint.

  • Update status.

Defined in:

NAVYGROUP

Parameters:

From

Event

To

On before "TurnIntoWindStop" event.

Defined in:

NAVYGROUP

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

Field(s)

#table NAVYGROUP.Qintowind

Queue of "into wind" turns.

NAVYGROUP.ammo

Group ammo.

#boolean NAVYGROUP.collisionwarning

If true, collition warning.

#number NAVYGROUP.depth

Ordered depth in meters.

#boolean NAVYGROUP.groupinitialized

Init done.

#number NAVYGROUP.intowindcounter

Counter of into wind IDs.

#boolean NAVYGROUP.isAI

Ships are always AI.

#boolean NAVYGROUP.isAircraft

Define category.

NAVYGROUP.isLateActivated

Is (template) group late activated.

#boolean NAVYGROUP.isUncontrolled

Naval groups cannot be uncontrolled.

#boolean NAVYGROUP.ispathfinding

If true, group is currently path finding.

NAVYGROUP.lid

Set some string id for output to DCS.log file.

#number NAVYGROUP.pathCorridor

Path corrdidor width in meters.

#boolean NAVYGROUP.pathfindingOn

If true, enable pathfining.

NAVYGROUP.speedMax

Max speed in km/h.

NAVYGROUP.speedWp

Current set speed in m/s.

NAVYGROUP.template

Get template of group.

NAVYGROUP.timerCheckZone

Start check zone timer.

NAVYGROUP.timerQueueUpdate

Start queue update timer.

#boolean NAVYGROUP.turning

If true, group is currently turning.

#string NAVYGROUP.version

NavyGroup version.

Function(s)

Activate a late activated group.

Defined in:

Parameter:

#number delay

(Optional) Delay in seconds before the group is activated. Default is immediately.

Return value:

self

Add a zone that triggers and event if the group enters or leaves any of the zones.

Defined in:

Parameter:

Core.Zone#ZONE CheckZone

Zone to check.

Return value:

self

Add mission to queue.

Defined in:

Parameter:

Mission for this group.

Return value:

self

Add a scheduled task.

Defined in:

Parameters:

#table task

DCS task table structure.

#string clock

Mission time when task is executed. Default in 5 seconds. If argument passed as #number, it defines a relative delay in seconds.

#string description

Brief text describing the task, e.g. "Attack SAM".

#number prio

Priority of the task.

#number duration

Duration before task is cancelled in seconds counted after task started. Default never.

Return value:

The task structure.

Add an enroute task.

Defined in:

Parameter:

#table task

DCS task table structure.

Add a waypoint task.

Defined in:

Parameters:

#table task

DCS task table structure.

where the task is executed. Default is the at next waypoint.

#string description

Brief text describing the task, e.g. "Attack SAM".

#number prio

Priority of the task. Number between 1 and 100. Default is 50.

#number duration

Duration before task is cancelled in seconds counted after task started. Default never.

Return value:

The task structure.

Add a weapon range for ARTY auftrag.

Defined in:

Parameters:

#number RangeMin

Minimum range in nautical miles. Default 0 NM.

#number RangeMax

Maximum range in nautical miles. Default 10 NM.

#number BitType

Bit mask of weapon type for which the given min/max ranges apply. Default is ENUMS.WeaponFlag.Auto, i.e. for all weapon types.

Return value:

self

Check if task description is unique.

Defined in:

Parameter:

#string description

Task destription

Return value:

#boolean:

If true, no other task has the same description.

Clear DCS tasks.

Defined in:

Parameter:

#table DCSTask

DCS task structure.

Return value:

self

Count remaining missons.

Defined in:

Return value:

#number:

Number of missions to be done.

Count the number of tasks that still pending in the queue.

Defined in:

Return values:

#number:

Total number of tasks remaining.

#number:

Number of SCHEDULED tasks remaining.

#number:

Number of WAYPOINT tasks remaining.

Count remaining waypoint tasks.

Defined in:

Parameters:

#number uid

Unique waypoint ID.

id

Return value:

#number:

Number of waypoint tasks.

Despawn the group.

The whole group is despawned and (optionally) a "Remove Unit" event is generated for all current units of the group.

Defined in:

Parameters:

#number Delay

Delay in seconds before the group will be despawned. Default immediately.

#boolean NoEventRemoveUnit

If true, no event "Remove Unit" is generated.

Return value:

self

Despawn an element/unit of the group.

Defined in:

Parameters:

The element that will be despawned.

#number Delay

Delay in seconds before the element will be despawned. Default immediately.

#boolean NoEventRemoveUnit

If true, no event "Remove Unit" is generated.

Return value:

self

Destroy group.

The whole group is despawned and a Unit Lost for aircraft or Dead event for ground/naval units is generated for all current units.

Defined in:

Parameter:

#number Delay

Delay in seconds before the group will be destroyed. Default immediately.

Return value:

self

Get current Alarm State of the group.

Defined in:

Return value:

#number:

Current Alarm State.

Get inital amount of ammunition.

Defined in:

Return value:

Initial ammo table.

Get the number of shells a unit or group currently has.

For a group the ammo count of all units is summed up.

Defined in:

Parameter:

The element.

Return value:

Ammo data.

Get total amount of ammunition of the whole group.

Defined in:

Return value:

Ammo data.

Get the number of shells a unit or group currently has.

For a group the ammo count of all units is summed up.

Defined in:

Parameters:

The unit object.

#boolean display

Display ammo table as message to all. Default false.

Return value:

Ammo data.

Get coalition.

Defined in:

Return value:

#number:

Coalition side of carrier.

Get current coordinate of the group.

Defined in:

Parameter:

#boolean NewObject

Create a new coordiante object.

Return value:

The coordinate (of the first unit) of the group.

Get DCS GROUP object.

Defined in:

Return value:

DCS group object.

Get DCS GROUP object.

Defined in:

Parameter:

#number UnitNumber

Number of the unit in the group. Default first unit.

Return value:

DCS group object.

Get DCS units.

Defined in:

Return value:

#list<DCS#Unit>:

DCS units.

Get set of detected groups.

Defined in:

Return value:

Set of detected groups.

Get set of detected units.

Defined in:

Return value:

Set of detected units.

Get distance to waypoint.

Defined in:

Parameter:

#number indx

Waypoint index. Default is the next waypoint.

Return value:

#number:

Distance in meters.

Get the first element of a group, which is alive.

Defined in:

Return value:

The element or #nil if no element is alive any more.

Get the element of a group.

Defined in:

Parameter:

#string unitname

Name of unit.

Return value:

The element.

Returns the currently expected speed.

Defined in:

Return value:

#number:

Expected speed in m/s.

Get MOOSE GROUP object.

Defined in:

Return value:

Moose group object.

Get current heading of the group.

Defined in:

Return value:

#number:

Current heading of the group in degrees.

Get highest threat.

Defined in:

Return values:

The highest threat unit.

#number:

Threat level of the unit.

Get LASER code.

Defined in:

Return value:

#number:

Current Laser code.

Get current LASER coordinate, i.e.

where the beam is pointing at if the LASER is on.

Defined in:

Return value:

Current position where the LASER is pointing at.

Get current target of the LASER.

This can be a STATIC or UNIT object.

Defined in:

Return value:

Current target object.

Returns the absolute (average) life points of the group.

Defined in:

Return values:

#number:

Life points. If group contains more than one element, the average is given.

#number:

Initial life points.

Get mission by its id (auftragsnummer).

Defined in:

Parameter:

#number id

Mission id (auftragsnummer).

Return value:

The mission.

Get mission by its task id.

Defined in:

Parameter:

#number taskid

The id of the (waypoint) task of the mission.

Return value:

The mission.

Get current mission.

Defined in:

Return value:

The current mission or nil.

Get the group name.

Defined in:

Return value:

#string:

Group name.

Get number of elements alive.

Defined in:

Parameter:

#string status

(Optional) Only count number, which are in a special status.

Return value:

#number:

Number of elements.

Get coordinate of next waypoint of the group.

Defined in:

Parameter:

#boolean cyclic

If true, return first waypoint if last waypoint was reached.

Return value:

Coordinate of the next waypoint.

Get current orientation of the first unit in the group.

Defined in:

Return values:

Orientation X parallel to where the "nose" is pointing.

Orientation Y pointing "upwards".

Orientation Z perpendicular to the "nose".

Get current orientation of the first unit in the group.

Defined in:

Return value:

Orientation X parallel to where the "nose" is pointing.

Get current ROE of the group.

Defined in:

Return value:

#number:

Current ROE.

Get current ROT of the group.

Defined in:

Return value:

#number:

Current ROT.

Get current Radio frequency and modulation.

Defined in:

Return values:

#number:

Radio frequency in MHz or nil.

#number:

Radio modulation or nil.

#boolean:

If true, the radio is on. Otherwise, radio is turned off.

Get default cruise speed.

Defined in:

Return value:

#number:

Cruise speed (>0) in knots.

Returns a non-zero speed to the next waypoint (even if the waypoint speed is zero).

Defined in:

Parameter:

#number indx

Waypoint index.

Return value:

#number:

Speed to next waypoint (>0) in knots.

Get current TACAN parameters.

Defined in:

Return values:

#number:

TACAN channel.

#string:

TACAN Morse code.

#string:

TACAN band ("X" or "Y").

#boolean:

TACAN is On (true) or Off (false).

#string:

UnitName Name of the unit acting as beacon.

Get task by its id.

Defined in:

Parameters:

#number id

Task id.

#string status

(Optional) Only return tasks with this status, e.g. OPSGROUP.TaskStatus.SCHEDULED.

Return value:

The task or nil.

Get the currently executed task if there is any.

Defined in:

Return value:

Current task or nil.

Get the unfinished waypoint tasks

Defined in:

Parameter:

#number id

Unique waypoint ID.

Return value:

#table:

Table of tasks. Table could also be empty {}.

Get highest detected threat.

Detection must be turned on. The threat level is a number between 0 and 10, where 0 is the lowest, e.g. unarmed units.

Defined in:

Parameters:

#number ThreatLevelMin

Only consider threats with level greater or equal to this number. Default 1 (so unarmed units wont be considered).

#number ThreatLevelMax

Only consider threats with level smaller or queal to this number. Default 10.

Return values:

Highest threat unit detected by the group or nil if no threat is currently detected.

#number:

Threat level.

Get time to waypoint based on current velocity.

Defined in:

Parameter:

#number indx

Waypoint index. Default is the next waypoint.

Return value:

#number:

Time in seconds. If velocity is 0

Get MOOSE UNIT object.

Defined in:

Parameter:

#number UnitNumber

Number of the unit in the group. Default first unit.

Return value:

The MOOSE UNIT object.

Get current 2D position vector of the group.

Defined in:

Return value:

Vector with x,y components.

Get current 3D position vector of the group.

Defined in:

Return value:

Vector with x,y,z components.

Get current velocity of the group.

Defined in:

Return value:

#number:

Velocity in m/s.

Get waypoint.

Defined in:

Parameter:

#number indx

Waypoint index.

Return value:

Waypoint table.

Get the waypoint from its unique ID.

Defined in:

Parameter:

#number uid

Waypoint unique ID.

Return value:

Waypoint data.

Get the waypoint from its index.

Defined in:

Parameter:

#number index

Waypoint index.

Return value:

Waypoint data.

Get waypoint coordinates.

Defined in:

Parameter:

#number index

Waypoint index.

Return value:

Coordinate of the next waypoint.

Get current waypoint.

Defined in:

Return value:

Current waypoint table.

Get final waypoint.

Defined in:

Return value:

Final waypoint table.

Get unique ID of waypoint given its index.

Defined in:

Parameter:

#number indx

Waypoint index.

Return value:

#number:

Unique ID.

Get the waypoint index (its position in the current waypoints table).

Defined in:

Parameter:

#number uid

Waypoint unique ID.

Return value:

Waypoint data.

Get waypoint index after waypoint with given ID.

So if the waypoint has index 3 it will return 4.

Defined in:

Parameter:

#number uid

Unique ID of the waypoint. Default is new waypoint index after the last current one.

Return value:

#number:

Index after waypoint with given ID.

Get current waypoint index.

This is the index of the last passed waypoint.

Defined in:

Return value:

#number:

Current waypoint index.

Get next waypoint index.

Defined in:

Parameters:

#boolean cyclic

If true, return first waypoint if last waypoint was reached. Default is patrol ad infinitum value set.

#number i

Waypoint index from which the next index is returned. Default is the last waypoint passed.

Return value:

#number:

Next waypoint index.

Get next waypoint.

Defined in:

Parameter:

#boolean cyclic

If true, return first waypoint if last waypoint was reached.

Return value:

Next waypoint table.

Get waypoint speed.

Defined in:

Parameter:

#number indx

Waypoint index.

Return value:

#number:

Speed set at waypoint in knots.

Get unique ID of waypoint.

Defined in:

Parameter:

The waypoint data table.

Return value:

#number:

Unique ID.

Get the waypoint UID from its index, i.e.

its current position in the waypoints table.

Defined in:

Parameter:

#number index

Waypoint index.

Return value:

#number:

Unique waypoint ID.

Get the waypoints.

Defined in:

Return value:

#table:

Table of all waypoints.

Get weapon data.

Defined in:

Parameter:

#number BitType

Type of weapon.

Return value:

Weapon range data.

Check if an element of the group has line of sight to a coordinate.

Defined in:

Parameters:

The position to which we check the LoS.

The (optinal) element. If not given, all elements are checked.

DCS#Vec3 OffsetElement

Offset vector of the element.

DCS#Vec3 OffsetCoordinate

Offset vector of the coordinate.

Return value:

#boolean:

If true, there is line of sight to the specified coordinate.

Check if this group has passed its final waypoint.

Defined in:

Return value:

#boolean:

If true, this group has passed the final waypoint.

Initialize Mission Editor waypoints.

Defined in:

Return value:

self

Check if group is activated.

Defined in:

Return value:

#boolean:

If true, the group exists or false if the group does not exist. If nil, the DCS group could not be found.

Check if group is alive.

Defined in:

Return value:

#boolean:

true if group is exists and is activated, false if group is exist but is NOT activated. nil otherwise, e.g. the GROUP object is nil or the group is not spawned yet.

Check if group is dead.

Defined in:

Return value:

#boolean:

If true, all units/elements of the group are dead.

Check if the group is engaging another unit or group.

Defined in:

Return value:

#boolean:

If true, group is engaging.

Check if group is exists.

Defined in:

Return value:

#boolean:

If true, the group exists or false if the group does not exist. If nil, the DCS group could not be found.

Check if group is in state in utero.

Defined in:

Return value:

#boolean:

If true, group is not spawned yet.

Check if the group has currently switched a LASER on.

Defined in:

Return value:

#boolean:

If true, LASER of the group is on.

Check if this group is currently "late activated" and needs to be "activated" to appear in the mission.

Defined in:

Return value:

#boolean:

Is this the group late activated?

Check if the group is currently rearming.

Defined in:

Return value:

#boolean:

If true, group is rearming.

Check if the group is currently retreating.

Defined in:

Return value:

#boolean:

If true, group is retreating.

Check if group is in state spawned.

Defined in:

Return value:

#boolean:

If true, group is spawned.

Check if FSM is stopped.

Defined in:

Return value:

#boolean:

If true, FSM state is stopped.

Check if this group is currently "uncontrolled" and needs to be "started" to begin its route.

Defined in:

Return value:

#boolean:

If true, this group uncontrolled.

Mark waypoints on F10 map.

Defined in:

Parameter:

#number Duration

Duration in seconds how long the waypoints are displayed before they are automatically removed. Default is that they are never removed.

Return value:

self

Create a new OPSGROUP class object.

Defined in:

Parameter:

The group object. Can also be given by its group name as #string.

Return value:

self

Create a scheduled task.

Defined in:

Parameters:

#table task

DCS task table structure.

#string clock

Mission time when task is executed. Default in 5 seconds. If argument passed as #number, it defines a relative delay in seconds.

#string description

Brief text describing the task, e.g. "Attack SAM".

#number prio

Priority of the task.

#number duration

Duration before task is cancelled in seconds counted after task started. Default never.

Return value:

The task structure.

Push DCS task.

Defined in:

Parameter:

#table DCSTask

DCS task structure.

Return value:

self

Remove mission from queue.

Defined in:

Parameter:

Mission to be removed.

Return value:

self

Remove task from task queue.

Defined in:

Parameter:

The task to be removed from the queue.

Return value:

#boolean:

True if task could be removed.

Remove a waypoint.

Defined in:

Parameter:

#number wpindex

Waypoint number.

Return value:

self

Remove a waypoint with a ceratin UID.

Defined in:

Parameter:

#number uid

Waypoint UID.

Return value:

self

Remove waypoints markers on the F10 map.

Defined in:

Parameter:

#number Delay

Delay in seconds before the markers are removed. Default is immediately.

Return value:

self

Route group along waypoints.

Defined in:

Parameters:

#table waypoints

Table of waypoints.

#number delay

Delay in seconds.

Return value:

self

Route group to mission.

Defined in:

Parameters:

The mission table.

#number delay

Delay in seconds.

Self destruction of group.

An explosion is created at the position of each element.

Defined in:

Parameters:

#number Delay

Delay in seconds. Default now.

#number ExplosionPower

(Optional) Explosion power in kg TNT. Default 500 kg.

Return value:

#number:

Relative fuel in percent.

Define a SET of zones that trigger and event if the group enters or leaves any of the zones.

Defined in:

Parameter:

Core.Set#SET_ZONE CheckZonesSet

Set of zones.

Return value:

self

Set the default Alarm State for the group.

This is the state gets when the group is spawned or to which it defaults back after a mission.

Defined in:

Parameter:

#number alarmstate

Alarm state of group. Default is AI.Option.Ground.val.ALARM_STATE.AUTO (0).

Return value:

self

Set default callsign.

Defined in:

Parameters:

#number CallsignName

Callsign name.

#number CallsignNumber

Callsign number.

Return value:

self

Set default formation.

Defined in:

Parameter:

#number Formation

The formation the groups flies in.

Return value:

self

Set default ICLS parameters.

Defined in:

Parameters:

#number Channel

ICLS channel. Default is 1.

#string Morse

Morse code. Default "XXX".

#string UnitName

Name of the unit acting as beacon.

#boolean OffSwitch

If true, TACAN is off by default.

Return value:

self

Set the default ROE for the group.

This is the ROE state gets when the group is spawned or to which it defaults back after a mission.

Defined in:

Parameter:

#number roe

ROE of group. Default is ENUMS.ROE.ReturnFire.

Return value:

self

Set the default ROT for the group.

This is the ROT state gets when the group is spawned or to which it defaults back after a mission.

Defined in:

Parameter:

#number rot

ROT of group. Default is ENUMS.ROT.PassiveDefense.

Return value:

self

Set default Radio frequency and modulation.

Defined in:

Parameters:

#number Frequency

Radio frequency in MHz. Default 251 MHz.

#number Modulation

Radio modulation. Default radio.Modulation.AM.

#boolean OffSwitch

If true, radio is OFF by default.

Return value:

self

Set default cruise speed.

Defined in:

Parameter:

#number Speed

Speed in knots.

Return value:

self

Set default TACAN parameters.

Defined in:

Parameters:

#number Channel

TACAN channel. Default is 74.

#string Morse

Morse code. Default "XXX".

#string UnitName

Name of the unit acting as beacon.

#string Band

TACAN mode. Default is "X" for ground and "Y" for airborne units.

#boolean OffSwitch

If true, TACAN is off by default.

Return value:

self

Set detection on or off.

If detection is on, detected targets of the group will be evaluated and FSM events triggered.

Defined in:

Parameter:

#boolean Switch

If true, detection is on. If false or nil, detection is off. Default is off.

Return value:

self

Set LASER parameters.

Defined in:

Parameters:

#number Code

Laser code. Default 1688.

#boolean CheckLOS

Check if lasing unit has line of sight to target coordinate. Default is true.

#boolean IROff

If true, then dont switch on the additional IR pointer.

#number UpdateTime

Time interval in seconds the beam gets up for moving targets. Default every 0.5 sec.

Return value:

self

Set LASER target.

Defined in:

Parameter:

The target to lase. Can also be a COORDINATE object.

Set DCS task.

Enroute tasks are injected automatically.

Defined in:

Parameter:

#table DCSTask

DCS task structure.

Return value:

self

Set verbosity level.

Defined in:

Parameter:

#number VerbosityLevel

Level of output (higher=more). Default 0.

Return value:

self

Triggers the FSM event "Status".

Defined in:

Set current Alarm State of the group.

  • 0 = "Auto"
  • 1 = "Green"
  • 2 = "Red"

Defined in:

Parameter:

#number alarmstate

Alarm state of group. Default is 0="Auto".

Return value:

self

Switch to a specific callsign.

Defined in:

Parameters:

#number CallsignName

Callsign name.

#number CallsignNumber

Callsign number.

Return value:

self

Switch to a specific formation.

Defined in:

Parameter:

#number Formation

New formation the group will fly in. Default is the setting of SetDefaultFormation().

Return value:

self

Activate/switch ICLS beacon settings.

Defined in:

Parameters:

#number Channel

ICLS Channel. Default is what is set in SetDefaultICLS() so usually channel 1.

#string Morse

ICLS morse code. Default is what is set in SetDefaultICLS() so usually "XXX".

#string UnitName

Name of the unit in the group which should activate the ICLS beacon. Can also be given as #number to specify the unit number. Default is the first unit of the group.

Return value:

self

Set current ROE for the group.

Defined in:

Parameter:

#string roe

ROE of group. Default is value set in SetDefaultROE (usually ENUMS.ROE.ReturnFire).

Return value:

self

Set ROT for the group.

Defined in:

Parameter:

#string rot

ROT of group. Default is value set in :SetDefaultROT (usually ENUMS.ROT.PassiveDefense).

Return value:

self

Turn radio on or switch frequency/modulation.

Defined in:

Parameters:

#number Frequency

Radio frequency in MHz. Default is value set in SetDefaultRadio (usually 251 MHz).

#number Modulation

Radio modulation. Default is value set in SetDefaultRadio (usually radio.Modulation.AM).

Return value:

self

Activate/switch TACAN beacon settings.

Defined in:

Parameters:

#number Channel

TACAN Channel.

#string Morse

TACAN morse code. Default is the value set in OPSGROUP.SetDefaultTACAN or if not set "XXX".

#string UnitName

Name of the unit in the group which should activate the TACAN beacon. Can also be given as #number to specify the unit number. Default is the first unit of the group.

#string Band

TACAN channel mode "X" or "Y". Default is "Y" for aircraft and "X" for ground and naval groups.

Return value:

self

Deactivate ICLS beacon.

Defined in:

Return value:

self

Turn radio off.

Defined in:

Return value:

self

Deactivate TACAN beacon.

Defined in:

Return value:

self

Initialize Mission Editor waypoints.

Defined in:

Parameters:

Waypoint data.

#number wpnumber

Waypoint index/number. Default is as last waypoint.

Check if all elements of the group have the same status (or are dead).

Defined in:

Parameters:

#string unitname

Name of unit.

status

Check if all elements of the group have the same status (or are dead).

Defined in:

Parameter:

#string status

Status to check.

Return value:

#boolean:

If true, all elements have a similar status.

Check ammo is full.

Defined in:

Return value:

#boolean:

If true, ammo is full.

Check ammo status.

Defined in:

Check damage.

Defined in:

Return value:

self

Check detected units.

Defined in:

Check if passed the final waypoint and, if necessary, update route.

Defined in:

Parameter:

#number delay

Delay in seconds.

Check if group is in zones.

Defined in:

Check if group got stuck.

Defined in:

Get coordinate from an object.

Defined in:

Parameter:

The object.

Return value:

The coordinate of the object.

Enhance waypoint table.

Defined in:

Parameters:

data.

waypoint

Return value:

Modified waypoint data.

Get next mission.

Defined in:

Return value:

Next mission or nil.

Get next task in queue.

Task needs to be in state SCHEDULED and time must have passed.

Defined in:

Return value:

The next task in line or nil.

Get name of ROE corresponding to the numerical value.

Defined in:

Parameter:

roe

Return value:

#string:

Name of ROE.

Returns a name of a missile category.

Defined in:

Parameter:

#number categorynumber

Number of missile category from weapon missile category enumerator. See https://wiki.hoggitworld.com/view/DCS_Class_Weapon

Return value:

#string:

Missile category name.

Function called when a group is passing a waypoint.

Defined in:

Parameters:

Group that passed the waypoint.

#OPSGROUP opsgroup

Ops group object.

#number uid

Waypoint UID.

Print info on mission and task status to DCS log file.

Defined in:

On after "QueueUpdate" event.

Defined in:

Set status for all elements (except dead ones).

Defined in:

Parameter:

#string status

Element status.

Set tasks at this waypoint

Defined in:

Parameter:

The waypoint.

Return value:

#number:

Number of tasks.

Sort task queue.

Defined in:

Activate/switch ICLS beacon settings.

Defined in:

Parameter:

ICLS data table.

Return value:

self

Activate/switch TACAN beacon settings.

Defined in:

Parameter:

TACAN data table. Default is the default TACAN settings.

Return value:

self

Function called when a task is done.

Defined in:

Parameters:

Group for which the task is done.

#OPSGROUP opsgroup

Ops group.

Task.

Function called when a task is executed.

Defined in:

Parameters:

Group which should execute the task.

#OPSGROUP opsgroup

Ops group.

Task.

Update laser point.

Defined in:

Check if all elements of the group have the same status (or are dead).

Defined in:

Return value:

self

Check if all elements of the group have the same status or are dead.

Defined in:

Parameters:

Element.

#string newstatus

New status of element

Airbase if applicable.

Initialize Mission Editor waypoints.

Defined in:

Parameter:

#number n

Waypoint

Triggers the FSM event "Status" after a delay.

Defined in:

Parameter:

#number delay

Delay in seconds.

Triggers the FSM event "Stop" after a delay.

Stops the OPSGROUP and all its event handlers.

Defined in:

Parameter:

#number delay

Delay in seconds.

On after "Dead" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "DetectedGroup" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The detected Group.

On after "DetectedGroupNew" event.

Add newly detected group to detected group set.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The detected group.

On after "DetectedUnit" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The detected unit.

On after "DetectedUnitNew" event.

Add newly detected unit to detected unit set.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The detected unit.

On after "ElementDead" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The flight group element.

On after "ElementDestroyed" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The flight group element.

On after "EnterZone" event.

Sets self.inzones[zonename]=true.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The zone that the group entered.

On after "GotoWaypoint" event.

Group will got to the given waypoint and execute its route from there.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number UID

The goto waypoint unique ID.

On after "LaserCode" event.

Changes the LASER code.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

#number Code

Laser code. Default is 1688.

On after "LaserGotLOS" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "LaserLostLOS" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "LaserOff" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "LaserOn" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

Target Coordinate. Target can also be any POSITIONABLE from which we can obtain its coordinates.

On after "LaserPause" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "LaserResume" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "LeaveZone" event.

Sets self.inzones[zonename]=false.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The zone that the group entered.

On after "MissionCancel" event.

Cancels the mission.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The mission to be cancelled.

On after "MissionDone" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "MissionExecute" event.

Mission execution began.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The mission table.

On after "MissionStart" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The mission table.

On after "PassingWaypoint" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

Waypoint data passed.

On after "PauseMission" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "Stop" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "TaskCancel" event.

Cancels the current task or simply sets the status to DONE if the task is not the current one.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The task to cancel. Default is the current task (if any).

On after "TaskDone" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "TaskExecute" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On after "UnpauseMission" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On before "Dead" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On before "LaserOff" event.

Check if LASER is on.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On before "LaserOn" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

Target Coordinate. Target can also be any POSITIONABLE from which we can obtain its coordinates.

On before "LaserResume" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

On before "MissionStart" event.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

The mission table.

On before "TaskDone" event.

Deny transition if task status is PAUSED.

Defined in:

Parameters:

#string From

From state.

#string Event

Event.

#string To

To state.

Field(s)

#table NAVYGROUP.Qintowind

Queue of "into wind" turns.

NAVYGROUP.ammo

Group ammo.

#boolean NAVYGROUP.collisionwarning

If true, collition warning.

#number NAVYGROUP.depth

Ordered depth in meters.

#boolean NAVYGROUP.groupinitialized

Init done.

#number NAVYGROUP.intowindcounter

Counter of into wind IDs.

#boolean NAVYGROUP.isAI

Ships are always AI.

#boolean NAVYGROUP.isAircraft

Define category.

NAVYGROUP.isLateActivated

Is (template) group late activated.

#boolean NAVYGROUP.isUncontrolled

Naval groups cannot be uncontrolled.

#boolean NAVYGROUP.ispathfinding

If true, group is currently path finding.

NAVYGROUP.lid

Set some string id for output to DCS.log file.

#number NAVYGROUP.pathCorridor

Path corrdidor width in meters.

#boolean NAVYGROUP.pathfindingOn

If true, enable pathfining.

NAVYGROUP.speedMax

Max speed in km/h.

NAVYGROUP.speedWp

Current set speed in m/s.

NAVYGROUP.template

Get template of group.

NAVYGROUP.timerCheckZone

Start check zone timer.

NAVYGROUP.timerQueueUpdate

Start queue update timer.

#boolean NAVYGROUP.turning

If true, group is currently turning.

#string NAVYGROUP.version

NavyGroup version.

Function(s)

Adds an End state.

Defined in:

Parameter:

#string State

The FSM state.

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

Defined in:

Parameters:

#table From

Can contain a string indicating the From state or a table of strings containing multiple From states.

#string Event

The Event name.

An sub-process FSM.

#table ReturnEvents

A table indicating for which returned events of the SubFSM which Event must be triggered in the FSM.

Return value:

The SubFSM.

Adds a score for the FSM to be achieved.

Defined in:

Parameters:

#string State

is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).

#string ScoreText

is a text describing the score that is given according the status.

#number Score

is a number providing the score of the status.

Return value:

#FSM:

self

Adds a score for the FSM_PROCESS to be achieved.

Defined in:

Parameters:

#string From

is the From State of the main process.

#string Event

is the Event of the main process.

#string State

is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).

#string ScoreText

is a text describing the score that is given according the status.

#number Score

is a number providing the score of the status.

Return value:

#FSM:

self

Add a new transition rule to the FSM.

A transition rule defines when and if the FSM can transition from a state towards another state upon a triggered event.

Defined in:

Parameters:

#table From

Can contain a string indicating the From state or a table of strings containing multiple From states.

#string Event

The Event name.

#string To

The To state.

Get current state.

Defined in:

Return value:

#string:

Current FSM state.

Returns the End states.

Defined in:

Return value:

#table:

End states.

Defined in:

Parameters:

From

Event

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

Defined in:

Return value:

#table:

Sub processes.

Returns a table with the scores defined.

Defined in:

Parameter:

#table Scores

Returns the start state of the FSM.

Defined in:

Return value:

#string:

A string containing the start state.

Get current state.

Defined in:

Return value:

#string:

Current FSM state.

Returns a table with the Subs defined.

Defined in:

Return value:

#table:

Sub processes.

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

Defined in:

Return value:

#table:

Transitions.

Check if FSM is in state.

Defined in:

Parameter:

#string State

State name.

Return value:

#boolean:

If true, FSM is in this state.

Load call backs.

Defined in:

Parameter:

#table CallBackTable

Table of call backs.

Creates a new FSM object.

Defined in:

Return value:

#FSM:

Defined in:

Parameters:

From

Event

Fsm

Sets the start state of the FSM.

Defined in:

Parameter:

#string State

A string defining the start state.

Add to map.

Defined in:

Parameters:

#table Map

Map.

#table Event

Event table.

Call handler.

Defined in:

Parameters:

#string step

Step "onafter", "onbefore", "onenter", "onleave".

#string trigger

Trigger.

#table params

Parameters.

#string EventName

Event name.

Return value:

Value.

Create transition.

Defined in:

Parameter:

#string EventName

Event name.

Return value:

#function:

Function.

Delayed transition.

Defined in:

Parameter:

#string EventName

Event name.

Return value:

#function:

Function.

Event map.

Defined in:

Parameters:

#table Events

Events.

#table EventStructure

Event structure.

Go sub.

Defined in:

Parameters:

#string ParentFrom

Parent from state.

#string ParentEvent

Parent event name.

Return value:

#table:

Subs.

Handler.

Defined in:

Parameters:

#string EventName

Event name.

...

Arguments.

Is end state.

Defined in:

Parameter:

#string Current

Current state name.

Return values:

#table:

FSM parent.

#string:

Event name.

Sub maps.

Defined in:

Parameters:

#table subs

Subs.

#table sub

Sub.

#string name

Name.

Check if can do an event.

Defined in:

Parameter:

#string e

Event name.

Return values:

#boolean:

If true, FSM can do the event.

#string:

To state.

Check if cannot do an event.

Defined in:

Parameter:

#string e

Event name.

Return value:

#boolean:

If true, FSM cannot do the event.

Check if FSM is in state.

Defined in:

Parameters:

#string State

State name.

state

Return value:

#boolean:

If true, FSM is in this state.

Field(s)

#table NAVYGROUP.Qintowind

Queue of "into wind" turns.

NAVYGROUP.ammo

Group ammo.

#boolean NAVYGROUP.collisionwarning

If true, collition warning.

#number NAVYGROUP.depth

Ordered depth in meters.

#boolean NAVYGROUP.groupinitialized

Init done.

#number NAVYGROUP.intowindcounter

Counter of into wind IDs.

#boolean NAVYGROUP.isAI

Ships are always AI.

#boolean NAVYGROUP.isAircraft

Define category.

NAVYGROUP.isLateActivated

Is (template) group late activated.

#boolean NAVYGROUP.isUncontrolled

Naval groups cannot be uncontrolled.

#boolean NAVYGROUP.ispathfinding

If true, group is currently path finding.

NAVYGROUP.lid

Set some string id for output to DCS.log file.

#number NAVYGROUP.pathCorridor

Path corrdidor width in meters.

#boolean NAVYGROUP.pathfindingOn

If true, enable pathfining.

NAVYGROUP.speedMax

Max speed in km/h.

NAVYGROUP.speedWp

Current set speed in m/s.

NAVYGROUP.template

Get template of group.

NAVYGROUP.timerCheckZone

Start check zone timer.

NAVYGROUP.timerQueueUpdate

Start queue update timer.

#boolean NAVYGROUP.turning

If true, group is currently turning.

#string NAVYGROUP.version

NavyGroup version.

Function(s)

Clear the state of an object.

Defined in:

Parameters:

Object

The object that holds the Value set by the Key.

StateName

The key that is should be cleared.

Creation of a Birth Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

#string IniUnitName

The initiating unit name.

place

subplace

Creation of a Crash Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Dead Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a S_EVENT_PLAYER_ENTER_AIRCRAFT event.

Defined in:

Parameter:

Wrapper.Unit#UNIT PlayerUnit

The aircraft unit the player entered.

Creation of a Remove Unit Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Takeoff Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Crash Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Log an exception which will be traced always.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Returns the event dispatcher

Defined in:

Return value:

Remove all subscribed events

Defined in:

Return value:

Trace a function call.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function call level 2.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function call level 3.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Get the ClassID of the class instance.

Defined in:

Return value:

#string:

The ClassID of the class instance.

Get the ClassName of the class instance.

Defined in:

Return value:

#string:

The ClassName of the class instance.

Get the ClassName + ClassID of the class instance.

The ClassName + ClassID is formatted as '%s#%09d'.

Defined in:

Return value:

#string:

The ClassName + ClassID of the class instance.

Get the Class Event processing Priority.

The Event processing Priority is a number from 1 to 10, reflecting the order of the classes subscribed to the Event to be processed.

Defined in:

Return value:

#number:

The Event processing Priority.

This is the worker method to retrieve the Parent class.

Note that the Parent class must be passed to call the parent class method.

self:GetParent(self):ParentMethod()


Defined in:

Parameters:

#BASE Child

This is the Child class from which the Parent class needs to be retrieved.

#BASE FromClass

(Optional) The class from which to get the parent.

Return value:

Get a Value given a Key from the Object.

Note that if the Object is destroyed, nillified or garbage collected, then the Values and Keys will also be gone.

Defined in:

Parameters:

Object

The object that holds the Value set by the Key.

Key

The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!

Return value:

The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.

Subscribe to a DCS Event.

Defined in:

Parameters:

Event ID.

#function EventFunction

(optional) The function to be called when the event occurs for the unit.

Return value:

Log an information which will be traced always.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

This is the worker method to inherit from a parent class.

Defined in:

Parameters:

Child

is the Child class that inherits.

#BASE Parent

is the Parent class that the Child inherits from.

Return value:

Child

This is the worker method to check if an object is an (sub)instance of a class.

Examples:

  • ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false

Defined in:

Parameter:

ClassName

is the name of the class or the class itself to run the check against

Return value:

#boolean:

Enquires if tracing is on (for the class).

Defined in:

Return value:

#boolean:

BASE constructor.

This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.

function EVENT:New()
  local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
  return self
end
  

Defined in:

Return value:

Occurs when an object is completely destroyed.

initiator : The unit that is was destroyed.

Defined in:

Parameter:

The EventData structure.

Occurs when a ground unit captures either an airbase or a farp.

initiator : The unit that captured the base place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.

Defined in:

Parameter:

The EventData structure.

Occurs when any object is spawned into the mission.

initiator : The unit that was spawned

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft crashes into the ground and is completely destroyed.

initiator : The unit that has crashed

Defined in:

Parameter:

The EventData structure.

Occurs when an object is dead.

initiator : The unit that is dead.

Defined in:

Parameter:

The EventData structure.

Unknown precisely what creates this event, likely tied into newer damage model.

Will update this page when new information become available.

  • initiator: The unit that had the failure.

Defined in:

Parameter:

The EventData structure.

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft shuts down its engines.

initiator : The unit that is stopping its engines.

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft starts its engines.

initiator : The unit that is starting its engines.

Defined in:

Parameter:

The EventData structure.

Occurs whenever an object is hit by a weapon.

initiator : The unit object the fired the weapon weapon: Weapon object that hit the target target: The Object that was hit.

Defined in:

Parameter:

The EventData structure.

Occurs when any system fails on a human controlled aircraft.

initiator : The unit that had the failure

Defined in:

Parameter:

The EventData structure.

Occurs on the death of a unit.

Contains more and different information. Similar to unit_lost it will occur for aircraft before the aircraft crash event occurs.

  • initiator: The unit that killed the target
  • target: Target Object
  • weapon: Weapon Object

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

Can be an Airbase Object, FARP, or Ships

Defined in:

Parameter:

The EventData structure.

Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.

Event does not occur if the pilot lands in the water and sub combs to Davey Jones Locker.

  • initiator: Static object representing the ejected pilot. Place : Aircraft that the pilot ejected from.
  • place: may not return as a valid object if the aircraft has crashed into the ground and no longer exists.
  • subplace: is always 0 for unknown reasons.

Defined in:

Parameter:

The EventData structure.

Occurs when a new mark was added.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mark text was changed.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mark was removed.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mission ends

Defined in:

Parameter:

The EventData structure.

Occurs when a mission starts

Defined in:

Parameter:

The EventData structure.

Occurs when the pilot of an aircraft is killed.

Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. initiator : The unit that the pilot has died in.

Defined in:

Parameter:

The EventData structure.

Occurs when a player enters a slot and takes control of an aircraft.

NOTE: This is a workaround of a long standing DCS bug with the PLAYER_ENTER_UNIT event. initiator : The unit that is being taken control of.

Defined in:

Parameter:

The EventData structure.

Occurs when any player assumes direct control of a unit.

initiator : The unit that is being taken control of.

Defined in:

Parameter:

The EventData structure.

Occurs when any player relieves control of a unit to the AI.

initiator : The unit that the player left.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft connects with a tanker and begins taking on fuel.

initiator : The unit that is receiving fuel.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft is finished taking fuel.

initiator : The unit that was receiving fuel.

Defined in:

Parameter:

The EventData structure.

Occurs when any modification to the "Score" as seen on the debrief menu would occur.

There is no information on what values the score was changed to. Event is likely similar to player_comment in this regard.

Defined in:

Parameter:

The EventData structure.

Occurs when any unit stops firing its weapon.

Event will always correspond with a shooting start event. initiator : The unit that was doing the shooting.

Defined in:

Parameter:

The EventData structure.

Occurs when any unit begins firing a weapon that has a high rate of fire.

Most common with aircraft cannons (GAU-8), autocannons, and machine guns. initiator : The unit that is doing the shooting. target: The unit that is being targeted.

Defined in:

Parameter:

The EventData structure.

Occurs whenever any unit in a mission fires a weapon.

But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft takes off from an airbase, farp, or ship.

initiator : The unit that tookoff place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships

Defined in:

Parameter:

The EventData structure.

Occurs when the game thinks an object is destroyed.

  • initiator: The unit that is was destroyed.

Defined in:

Parameter:

The EventData structure.

Schedule a new time event.

Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.

Defined in:

Parameters:

#number Start

Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

#table ...

Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.

Return value:

#number:

The ScheduleID of the planned schedule.

Schedule a new time event.

Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.

Defined in:

Parameters:

#number Start

Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.

#number Repeat

Specifies the interval in seconds when the scheduler will call the event function.

#number RandomizeFactor

Specifies a randomization factor between 0 and 1 to randomize the Repeat.

#number Stop

Specifies the amount of seconds when the scheduler will be stopped.

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

#table ...

Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.

Return value:

#number:

The ScheduleID of the planned schedule.

Stops the Schedule.

Defined in:

Parameter:

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

Set the Class Event processing Priority.

The Event processing Priority is a number from 1 to 10, reflecting the order of the classes subscribed to the Event to be processed.

Defined in:

Parameter:

#number EventPriority

The Event processing Priority.

Return value:

self

Set a state or property of the Object given a Key and a Value.

Note that if the Object is destroyed, nillified or garbage collected, then the Values and Keys will also be gone.

Defined in:

Parameters:

Object

The object that will hold the Value set by the Key.

Key

The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!

Value

The value to is stored in the object.

Return value:

The Value set.

Trace a function logic level 1.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function logic level 2.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function logic level 3.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace all methods in MOOSE

Defined in:

Parameter:

#boolean TraceAll

true = trace all methods in MOOSE.

Set tracing for a class

Defined in:

Parameter:

#string Class

Set tracing for a specific method of class

Defined in:

Parameters:

#string Class

#string Method

Set trace level

Defined in:

Parameter:

#number Level

Set trace off.

Defined in:

Usage:

-- Switch the tracing Off
BASE:TraceOff()

Set trace on.

Defined in:

Usage:

-- Switch the tracing On
BASE:TraceOn()

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

So tracing must be switched on manually in your mission if you are using Moose statically. When moose is loading dynamically (for moose class development), tracing is switched on by default.

Defined in:

Parameter:

#boolean TraceOnOff

Switch the tracing on or off.

Usage:

-- Switch the tracing On
BASE:TraceOnOff( true )

-- Switch the tracing Off
BASE:TraceOnOff( false )

UnSubscribe to a DCS event.

Defined in:

Parameter:

Event ID.

Return value:

Trace a function call.

This function is private.

Defined in:

Parameters:

Arguments

A #table or any field.

DebugInfoCurrentParam

DebugInfoFromParam

Trace a function logic.

Defined in:

Parameters:

Arguments

A #table or any field.

DebugInfoCurrentParam

DebugInfoFromParam

TODO: Complete DCS#Event structure.
- The main event handling function... This function captures all events generated for the class. @param #BASE self @param DCS#Event event

Defined in:

Parameter:

event

Navy group element.

Field(s)

Core.Point#COORDINATE NAVYGROUP.IntoWind.Coordinate

Coordinate where we left the route.

#number NAVYGROUP.IntoWind.Heading

Heading the boat will take in degrees.

#number NAVYGROUP.IntoWind.Id

Unique ID of the turn.

#number NAVYGROUP.IntoWind.Offset

Offset angle in degrees.

#boolean NAVYGROUP.IntoWind.Open

Currently active.

#boolean NAVYGROUP.IntoWind.Over

This turn is over.

#number NAVYGROUP.IntoWind.Speed

Speed in knots.

#number NAVYGROUP.IntoWind.Tstart

Time to start.

#number NAVYGROUP.IntoWind.Tstop

Time to stop.

#boolean NAVYGROUP.IntoWind.Uturn

U-turn.

Function(s)