diff --git a/Moose Development/Moose/AIBalancer.lua b/Moose Development/Moose/AIBalancer.lua index b0e4b393b..2c4fbbb2a 100644 --- a/Moose Development/Moose/AIBalancer.lua +++ b/Moose Development/Moose/AIBalancer.lua @@ -218,7 +218,7 @@ function AIBALANCER:_ClientAliveMonitorScheduler() self.PatrolZone.PatrolFloorAltitude, self.PatrolZone.PatrolCeilingAltitude, self.PatrolZone.PatrolMinSpeed, - self.PatrolPatrolMaxSpeed + self.PatrolZone.PatrolMaxSpeed ) if self.PatrolZone.PatrolManageFuel == true then diff --git a/Moose Development/Moose/PatrolZone.lua b/Moose Development/Moose/PatrolZone.lua index 1ce9c69fb..f4bc61b6f 100644 --- a/Moose Development/Moose/PatrolZone.lua +++ b/Moose Development/Moose/PatrolZone.lua @@ -161,10 +161,9 @@ function PATROLZONE:NewPatrolRoute() --- Define Speed and Altitude. local ToPatrolZoneAltitude = math.random( self.PatrolFloorAltitude, self.PatrolCeilingAltitude ) local ToPatrolZoneSpeed = self.PatrolMaxSpeed + self:T2( ToPatrolZoneSpeed ) --- Obtain a 3D @{Point} from the 2D point + altitude. - self:T2( ToPatrolZoneVec2.x ) - self:T2( ToPatrolZoneVec2.y ) local ToPatrolZonePointVec3 = POINT_VEC3:New( ToPatrolZoneVec2.x, ToPatrolZoneAltitude, ToPatrolZoneVec2.y ) --- Create a route point of type air. @@ -189,6 +188,7 @@ function PATROLZONE:NewPatrolRoute() --- Define Speed and Altitude. local ToTargetAltitude = math.random( self.PatrolFloorAltitude, self.PatrolCeilingAltitude ) local ToTargetSpeed = math.random( self.PatrolMinSpeed, self.PatrolMaxSpeed ) + self:T2( { self.PatrolMinSpeed, self.PatrolMaxSpeed, ToTargetSpeed } ) --- Obtain a 3D @{Point} from the 2D point + altitude. local ToTargetPointVec3 = POINT_VEC3:New( ToTargetVec2.x, ToTargetAltitude, ToTargetVec2.y ) diff --git a/Moose Development/Moose/Point.lua b/Moose Development/Moose/Point.lua index 9573b06e7..7fdd395a7 100644 --- a/Moose Development/Moose/Point.lua +++ b/Moose Development/Moose/Point.lua @@ -123,6 +123,7 @@ end -- @param #boolean SpeedLocked true means the speed is locked. -- @return #table The route point. function POINT_VEC3:RoutePointAir( AltType, Type, Action, Speed, SpeedLocked ) + self:F2( { AltType, Type, Action, Speed, SpeedLocked } ) local RoutePoint = {} RoutePoint.x = self.PointVec3.x @@ -133,16 +134,8 @@ function POINT_VEC3:RoutePointAir( AltType, Type, Action, Speed, SpeedLocked ) RoutePoint.type = Type RoutePoint.action = Action - RoutePoint.speed = Speed + RoutePoint.speed = Speed / 3.6 RoutePoint.speed_locked = true - - RoutePoint.properties = { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - } -- ["task"] = -- { diff --git a/Moose Mission Setup/Moose Mission Update/l10n/DEFAULT/Moose.lua b/Moose Mission Setup/Moose Mission Update/l10n/DEFAULT/Moose.lua index e07adf4ba..96327a527 100644 --- a/Moose Mission Setup/Moose Mission Update/l10n/DEFAULT/Moose.lua +++ b/Moose Mission Setup/Moose Mission Update/l10n/DEFAULT/Moose.lua @@ -1,5 +1,5 @@ env.info( '*** MOOSE STATIC INCLUDE START *** ' ) -env.info( 'Moose Generation Timestamp: 20160622_0930' ) +env.info( 'Moose Generation Timestamp: 20160622_1015' ) local base = _G Include = {} @@ -9086,6 +9086,314 @@ function STATIC:GetDCSUnit() return nil end +--- This module contains the AIRBASE classes. +-- +-- === +-- +-- 1) @{Airbase#AIRBASE} class, extends @{Base#BASE} +-- ================================================= +-- The @{AIRBASE} class is a wrapper class to handle the DCS Airbase objects: +-- +-- * Support all DCS Airbase APIs. +-- * Enhance with Airbase specific APIs not in the DCS Airbase API set. +-- +-- +-- 1.1) AIRBASE reference methods +-- ------------------------------ +-- For each DCS Airbase object alive within a running mission, a AIRBASE wrapper object (instance) will be created within the _@{DATABASE} object. +-- This is done at the beginning of the mission (when the mission starts). +-- +-- The AIRBASE class **does not contain a :New()** method, rather it provides **:Find()** methods to retrieve the object reference +-- using the DCS Airbase or the DCS AirbaseName. +-- +-- Another thing to know is that AIRBASE objects do not "contain" the DCS Airbase object. +-- The AIRBASE methods will reference the DCS Airbase object by name when it is needed during API execution. +-- If the DCS Airbase object does not exist or is nil, the AIRBASE methods will return nil and log an exception in the DCS.log file. +-- +-- The AIRBASE class provides the following functions to retrieve quickly the relevant AIRBASE instance: +-- +-- * @{#AIRBASE.Find}(): Find a AIRBASE instance from the _DATABASE object using a DCS Airbase object. +-- * @{#AIRBASE.FindByName}(): Find a AIRBASE instance from the _DATABASE object using a DCS Airbase name. +-- +-- IMPORTANT: ONE SHOULD NEVER SANATIZE these AIRBASE OBJECT REFERENCES! (make the AIRBASE object references nil). +-- +-- 1.2) DCS AIRBASE APIs +-- --------------------- +-- The DCS Airbase APIs are used extensively within MOOSE. The AIRBASE class has for each DCS Airbase API a corresponding method. +-- To be able to distinguish easily in your code the difference between a AIRBASE API call and a DCS Airbase API call, +-- the first letter of the method is also capitalized. So, by example, the DCS Airbase method @{DCSAirbase#Airbase.getName}() +-- is implemented in the AIRBASE class as @{#AIRBASE.GetName}(). +-- +-- More functions will be added +-- ---------------------------- +-- During the MOOSE development, more functions will be added. +-- +-- @module Airbase +-- @author FlightControl + + + + + +--- The AIRBASE class +-- @type AIRBASE +-- @extends Base#BASE +AIRBASE = { + ClassName="AIRBASE", + CategoryName = { + [Airbase.Category.AIRDROME] = "Airdrome", + [Airbase.Category.HELIPAD] = "Helipad", + [Airbase.Category.SHIP] = "Ship", + }, + } + +-- Registration. + +--- Create a new AIRBASE from DCSAirbase. +-- @param #AIRBASE self +-- @param DCSAirbase#Airbase DCSAirbase +-- @param Database#DATABASE Database +-- @return Airbase#AIRBASE +function AIRBASE:Register( AirbaseName ) + + local self = BASE:Inherit( self, BASE:New() ) + self:F2( AirbaseName ) + self.AirbaseName = AirbaseName + return self +end + +-- Reference methods. + +--- Finds a AIRBASE from the _DATABASE using a DCSAirbase object. +-- @param #AIRBASE self +-- @param DCSAirbase#Airbase DCSAirbase An existing DCS Airbase object reference. +-- @return Airbase#AIRBASE self +function AIRBASE:Find( DCSAirbase ) + + local AirbaseName = DCSAirbase:getName() + local AirbaseFound = _DATABASE:FindAirbase( AirbaseName ) + return AirbaseFound +end + +--- Find a AIRBASE in the _DATABASE using the name of an existing DCS Airbase. +-- @param #AIRBASE self +-- @param #string AirbaseName The Airbase Name. +-- @return Airbase#AIRBASE self +function AIRBASE:FindByName( AirbaseName ) + + local AirbaseFound = _DATABASE:FindAirbase( AirbaseName ) + return AirbaseFound +end + +function AIRBASE:GetDCSAirbase() + local DCSAirbase = Airbase.getByName( self.AirbaseName ) + + if DCSAirbase then + return DCSAirbase + end + + return nil +end + +--- Returns coalition of the Airbase. +-- @param Airbase#AIRBASE self +-- @return DCSCoalitionObject#coalition.side The side of the coalition. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetCoalition() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCoalition = DCSAirbase:getCoalition() + self:T3( AirbaseCoalition ) + return AirbaseCoalition + end + + return nil +end + +--- Returns country of the Airbase. +-- @param Airbase#AIRBASE self +-- @return DCScountry#country.id The country identifier. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetCountry() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCountry = DCSAirbase:getCountry() + self:T3( AirbaseCountry ) + return AirbaseCountry + end + + return nil +end + + +--- Returns DCS Airbase object name. +-- The function provides access to non-activated units too. +-- @param Airbase#AIRBASE self +-- @return #string The name of the DCS Airbase. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetName() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseName = self.AirbaseName + return AirbaseName + end + + return nil +end + + +--- Returns if the airbase is alive. +-- @param Airbase#AIRBASE self +-- @return #boolean true if Airbase is alive. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:IsAlive() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseIsAlive = DCSAirbase:isExist() + return AirbaseIsAlive + end + + return false +end + +--- Returns the unit's unique identifier. +-- @param Airbase#AIRBASE self +-- @return DCSAirbase#Airbase.ID Airbase ID +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetID() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseID = DCSAirbase:getID() + return AirbaseID + end + + return nil +end + +--- Returns the Airbase's callsign - the localized string. +-- @param Airbase#AIRBASE self +-- @return #string The Callsign of the Airbase. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetCallSign() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCallSign = DCSAirbase:getCallsign() + return AirbaseCallSign + end + + return nil +end + + + +--- Returns unit descriptor. Descriptor type depends on unit category. +-- @param Airbase#AIRBASE self +-- @return DCSAirbase#Airbase.Desc The Airbase descriptor. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetDesc() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseDesc = DCSAirbase:getDesc() + return AirbaseDesc + end + + return nil +end + + +--- Returns the type name of the DCS Airbase. +-- @param Airbase#AIRBASE self +-- @return #string The type name of the DCS Airbase. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetTypeName() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseTypeName = DCSAirbase:getTypeName() + self:T3( AirbaseTypeName ) + return AirbaseTypeName + end + + return nil +end + + +--- Returns the @{DCSTypes#Vec2} vector indicating the point in 2D of the DCS Airbase within the mission. +-- @param Airbase#AIRBASE self +-- @return DCSTypes#Vec2 The 2D point vector of the DCS Airbase. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetPointVec2() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbasePointVec3 = DCSAirbase:getPosition().p + + local AirbasePointVec2 = {} + AirbasePointVec2.x = AirbasePointVec3.x + AirbasePointVec2.y = AirbasePointVec3.z + + self:T3( AirbasePointVec2 ) + return AirbasePointVec2 + end + + return nil +end + +--- Returns the DCS Airbase category as defined within the DCS Airbase Descriptor. +-- @param Airbase#AIRBASE self +-- @return DCSAirbase#Airbase.Category The DCS Airbase Category +function AIRBASE:GetCategory() + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCategory = self:GetDesc().category + return AirbaseCategory + end + + return nil +end + + +--- Returns the DCS Airbase category name as defined within the DCS Airbase Descriptor. +-- @param Airbase#AIRBASE self +-- @return #string The DCS Airbase Category Name +function AIRBASE:GetCategoryName() + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCategoryName = self.CategoryName[ self:GetDesc().category ] + return AirbaseCategoryName + end + + return nil +end + + --- This module contains the DATABASE class, managing the database of mission objects. -- -- ==== @@ -11862,6 +12170,7 @@ end -- @param #boolean SpeedLocked true means the speed is locked. -- @return #table The route point. function POINT_VEC3:RoutePointAir( AltType, Type, Action, Speed, SpeedLocked ) + self:F2( { AltType, Type, Action, Speed, SpeedLocked } ) local RoutePoint = {} RoutePoint.x = self.PointVec3.x @@ -11872,16 +12181,8 @@ function POINT_VEC3:RoutePointAir( AltType, Type, Action, Speed, SpeedLocked ) RoutePoint.type = Type RoutePoint.action = Action - RoutePoint.speed = Speed + RoutePoint.speed = Speed / 3.6 RoutePoint.speed_locked = true - - RoutePoint.properties = { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - } -- ["task"] = -- { @@ -20828,7 +21129,271 @@ function MISSILETRAINER:_TrackMissiles() return true end ---- This module contains the AIBALANCER class. +--- This module contains the PATROLZONE class. +-- +-- === +-- +-- 1) @{Patrol#PATROLZONE} class, extends @{Base#BASE} +-- =================================================== +-- The @{Patrol#PATROLZONE} class implements the core functions to patrol a @{Zone}. +-- +-- 1.1) PATROLZONE constructor: +-- ---------------------------- +-- @{PatrolZone#PATROLZONE.New}(): Creates a new PATROLZONE object. +-- +-- 1.2) Modify the PATROLZONE parameters: +-- -------------------------------------- +-- The following methods are available to modify the parameters of a PATROLZONE object: +-- +-- * @{PatrolZone#PATROLZONE.SetGroup}(): Set the AI Patrol Group. +-- * @{PatrolZone#PATROLZONE.SetSpeed}(): Set the patrol speed of the AI, for the next patrol. +-- * @{PatrolZone#PATROLZONE.SetAltitude}(): Set altitude of the AI, for the next patrol. +-- +-- 1.3) Manage the out of fuel in the PATROLZONE: +-- ---------------------------------------------- +-- When the PatrolGroup is out of fuel, it is required that a new PatrolGroup is started, before the old PatrolGroup can return to the home base. +-- Therefore, with a parameter and a calculation of the distance to the home base, the fuel treshold is calculated. +-- When the fuel treshold is reached, the PatrolGroup will continue for a given time its patrol task in orbit, while a new PatrolGroup is targetted to the PATROLZONE. +-- Once the time is finished, the old PatrolGroup will return to the base. +-- Use the method @{PatrolZone#PATROLZONE.ManageFuel}() to have this proces in place. +-- +-- === +-- +-- @module PatrolZone +-- @author FlightControl + + +--- PATROLZONE class +-- @type PATROLZONE +-- @field Group#GROUP PatrolGroup The @{Group} patrolling. +-- @field Zone#ZONE_BASE PatrolZone The @{Zone} where the patrol needs to be executed. +-- @field DCSTypes#Altitude PatrolFloorAltitude The lowest altitude in meters where to execute the patrol. +-- @field DCSTypes#Altitude PatrolCeilingAltitude The highest altitude in meters where to execute the patrol. +-- @field DCSTypes#Speed PatrolMinSpeed The minimum speed of the @{Group} in km/h. +-- @field DCSTypes#Speed PatrolMaxSpeed The maximum speed of the @{Group} in km/h. +-- @extends Base#BASE +PATROLZONE = { + ClassName = "PATROLZONE", +} + +--- Creates a new PATROLZONE object, taking a @{Group} object as a parameter. The GROUP needs to be alive. +-- @param #PATROLZONE self +-- @param Zone#ZONE_BASE PatrolZone The @{Zone} where the patrol needs to be executed. +-- @param DCSTypes#Altitude PatrolFloorAltitude The lowest altitude in meters where to execute the patrol. +-- @param DCSTypes#Altitude PatrolCeilingAltitude The highest altitude in meters where to execute the patrol. +-- @param DCSTypes#Speed PatrolMinSpeed The minimum speed of the @{Group} in km/h. +-- @param DCSTypes#Speed PatrolMaxSpeed The maximum speed of the @{Group} in km/h. +-- @return #PATROLZONE self +-- @usage +-- -- Define a new PATROLZONE Object. This PatrolArea will patrol a group within PatrolZone between 3000 and 6000 meters, with a variying speed between 600 and 900 km/h. +-- PatrolZone = ZONE:New( 'PatrolZone' ) +-- PatrolGroup = GROUP:FindByName( "Patrol Group" ) +-- PatrolArea = PATROLZONE:New( PatrolGroup, PatrolZone, 3000, 6000, 600, 900 ) +function PATROLZONE:New( PatrolZone, PatrolFloorAltitude, PatrolCeilingAltitude, PatrolMinSpeed, PatrolMaxSpeed ) + + -- Inherits from BASE + local self = BASE:Inherit( self, BASE:New() ) + + self.PatrolZone = PatrolZone + self.PatrolFloorAltitude = PatrolFloorAltitude + self.PatrolCeilingAltitude = PatrolCeilingAltitude + self.PatrolMinSpeed = PatrolMinSpeed + self.PatrolMaxSpeed = PatrolMaxSpeed + + return self +end + +--- Set the @{Group} to act as the Patroller. +-- @param #PATROLZONE self +-- @param Group#GROUP PatrolGroup The @{Group} patrolling. +-- @return #PATROLZONE self +function PATROLZONE:SetGroup( PatrolGroup ) + + self.PatrolGroup = PatrolGroup + self.PatrolGroupTemplateName = PatrolGroup:GetName() + self:NewPatrolRoute() + + if not self.PatrolOutOfFuelMonitor then + self.PatrolOutOfFuelMonitor = SCHEDULER:New( nil, _MonitorOutOfFuelScheduled, { self }, 1, 120, 0 ) + self.SpawnPatrolGroup = SPAWN:New( self.PatrolGroupTemplateName ) + end + + return self +end + +--- Sets (modifies) the minimum and maximum speed of the patrol. +-- @param #PATROLZONE self +-- @param DCSTypes#Speed PatrolMinSpeed The minimum speed of the @{Group} in km/h. +-- @param DCSTypes#Speed PatrolMaxSpeed The maximum speed of the @{Group} in km/h. +-- @return #PATROLZONE self +function PATROLZONE:SetSpeed( PatrolMinSpeed, PatrolMaxSpeed ) + self:F2( { PatrolMinSpeed, PatrolMaxSpeed } ) + + self.PatrolMinSpeed = PatrolMinSpeed + self.PatrolMaxSpeed = PatrolMaxSpeed +end + +--- Sets the floor and ceiling altitude of the patrol. +-- @param #PATROLZONE self +-- @param DCSTypes#Altitude PatrolFloorAltitude The lowest altitude in meters where to execute the patrol. +-- @param DCSTypes#Altitude PatrolCeilingAltitude The highest altitude in meters where to execute the patrol. +-- @return #PATROLZONE self +function PATROLZONE:SetAltitude( PatrolFloorAltitude, PatrolCeilingAltitude ) + self:F2( { PatrolFloorAltitude, PatrolCeilingAltitude } ) + + self.PatrolFloorAltitude = PatrolFloorAltitude + self.PatrolCeilingAltitude = PatrolCeilingAltitude +end + + + +--- @param Group#GROUP PatrolGroup +function _NewPatrolRoute( PatrolGroup ) + + PatrolGroup:T( "NewPatrolRoute" ) + local PatrolZone = PatrolGroup:GetState( PatrolGroup, "PatrolZone" ) -- PatrolZone#PATROLZONE + PatrolZone:NewPatrolRoute() +end + +--- Defines a new patrol route using the @{PatrolZone} parameters and settings. +-- @param #PATROLZONE self +-- @return #PATROLZONE self +function PATROLZONE:NewPatrolRoute() + + self:F2() + + local PatrolRoute = {} + + if self.PatrolGroup:IsAlive() then + --- Determine if the PatrolGroup is within the PatrolZone. + -- If not, make a waypoint within the to that the PatrolGroup will fly at maximum speed to that point. + +-- --- Calculate the current route point. +-- local CurrentVec2 = self.PatrolGroup:GetPointVec2() +-- local CurrentAltitude = self.PatrolGroup:GetUnit(1):GetAltitude() +-- local CurrentPointVec3 = POINT_VEC3:New( CurrentVec2.x, CurrentAltitude, CurrentVec2.y ) +-- local CurrentRoutePoint = CurrentPointVec3:RoutePointAir( +-- POINT_VEC3.RoutePointAltType.BARO, +-- POINT_VEC3.RoutePointType.TurningPoint, +-- POINT_VEC3.RoutePointAction.TurningPoint, +-- ToPatrolZoneSpeed, +-- true +-- ) +-- +-- PatrolRoute[#PatrolRoute+1] = CurrentRoutePoint + + self:T2( PatrolRoute ) + + if self.PatrolGroup:IsNotInZone( self.PatrolZone ) then + --- Find a random 2D point in PatrolZone. + local ToPatrolZoneVec2 = self.PatrolZone:GetRandomVec2() + self:T2( ToPatrolZoneVec2 ) + + --- Define Speed and Altitude. + local ToPatrolZoneAltitude = math.random( self.PatrolFloorAltitude, self.PatrolCeilingAltitude ) + local ToPatrolZoneSpeed = self.PatrolMaxSpeed + self:T2( ToPatrolZoneSpeed ) + + --- Obtain a 3D @{Point} from the 2D point + altitude. + local ToPatrolZonePointVec3 = POINT_VEC3:New( ToPatrolZoneVec2.x, ToPatrolZoneAltitude, ToPatrolZoneVec2.y ) + + --- Create a route point of type air. + local ToPatrolZoneRoutePoint = ToPatrolZonePointVec3:RoutePointAir( + POINT_VEC3.RoutePointAltType.BARO, + POINT_VEC3.RoutePointType.TurningPoint, + POINT_VEC3.RoutePointAction.TurningPoint, + ToPatrolZoneSpeed, + true + ) + + PatrolRoute[#PatrolRoute+1] = ToPatrolZoneRoutePoint + + end + + --- Define a random point in the @{Zone}. The AI will fly to that point within the zone. + + --- Find a random 2D point in PatrolZone. + local ToTargetVec2 = self.PatrolZone:GetRandomVec2() + self:T2( ToTargetVec2 ) + + --- Define Speed and Altitude. + local ToTargetAltitude = math.random( self.PatrolFloorAltitude, self.PatrolCeilingAltitude ) + local ToTargetSpeed = math.random( self.PatrolMinSpeed, self.PatrolMaxSpeed ) + self:T2( { self.PatrolMinSpeed, self.PatrolMaxSpeed, ToTargetSpeed } ) + + --- Obtain a 3D @{Point} from the 2D point + altitude. + local ToTargetPointVec3 = POINT_VEC3:New( ToTargetVec2.x, ToTargetAltitude, ToTargetVec2.y ) + + --- Create a route point of type air. + local ToTargetRoutePoint = ToTargetPointVec3:RoutePointAir( + POINT_VEC3.RoutePointAltType.BARO, + POINT_VEC3.RoutePointType.TurningPoint, + POINT_VEC3.RoutePointAction.TurningPoint, + ToTargetSpeed, + true + ) + + --ToTargetPointVec3:SmokeRed() + + PatrolRoute[#PatrolRoute+1] = ToTargetRoutePoint + + --- Now we're going to do something special, we're going to call a function from a waypoint action at the PatrolGroup... + self.PatrolGroup:WayPointInitialize( PatrolRoute ) + + --- Do a trick, link the NewPatrolRoute function of the PATROLGROUP object to the PatrolGroup in a temporary variable ... + self.PatrolGroup:SetState( self.PatrolGroup, "PatrolZone", self ) + self.PatrolGroup:WayPointFunction( #PatrolRoute, 1, "_NewPatrolRoute" ) + + --- NOW ROUTE THE GROUP! + self.PatrolGroup:WayPointExecute( 1, 2 ) + end + +end + +--- When the PatrolGroup is out of fuel, it is required that a new PatrolGroup is started, before the old PatrolGroup can return to the home base. +-- Therefore, with a parameter and a calculation of the distance to the home base, the fuel treshold is calculated. +-- When the fuel treshold is reached, the PatrolGroup will continue for a given time its patrol task in orbit, while a new PatrolGroup is targetted to the PATROLZONE. +-- Once the time is finished, the old PatrolGroup will return to the base. +-- @param #PATROLZONE self +-- @param #number PatrolFuelTresholdPercentage The treshold in percentage (between 0 and 1) when the PatrolGroup is considered to get out of fuel. +-- @param #number PatrolOutOfFuelOrbitTime The amount of seconds the out of fuel PatrolGroup will orbit before returning to the base. +-- @return #PATROLZONE self +function PATROLZONE:ManageFuel( PatrolFuelTresholdPercentage, PatrolOutOfFuelOrbitTime ) + + self.PatrolManageFuel = true + self.PatrolFuelTresholdPercentage = PatrolFuelTresholdPercentage + self.PatrolOutOfFuelOrbitTime = PatrolOutOfFuelOrbitTime + + if self.PatrolGroup then + self.PatrolOutOfFuelMonitor = SCHEDULER:New( self, self._MonitorOutOfFuelScheduled, {}, 1, 120, 0 ) + self.SpawnPatrolGroup = SPAWN:New( self.PatrolGroupTemplateName ) + end + return self +end + +--- @param #PATROLZONE self +function _MonitorOutOfFuelScheduled( self ) + self:F2( "_MonitorOutOfFuelScheduled" ) + + if self.PatrolGroup and self.PatrolGroup:IsAlive() then + + local Fuel = self.PatrolGroup:GetUnit(1):GetFuel() + if Fuel < self.PatrolFuelTresholdPercentage then + local OldPatrolGroup = self.PatrolGroup + local PatrolGroupTemplate = self.PatrolGroup:GetTemplate() + + local OrbitTask = OldPatrolGroup:TaskOrbitCircle( math.random( self.PatrolFloorAltitude, self.PatrolCeilingAltitude ), self.PatrolMinSpeed ) + local TimedOrbitTask = OldPatrolGroup:TaskControlled( OrbitTask, OldPatrolGroup:TaskCondition(nil,nil,nil,nil,self.PatrolOutOfFuelOrbitTime,nil ) ) + OldPatrolGroup:SetTask( TimedOrbitTask, 10 ) + + local NewPatrolGroup = self.SpawnPatrolGroup:Spawn() + self.PatrolGroup = NewPatrolGroup + self:NewPatrolRoute() + end + else + self.PatrolOutOfFuelMonitor:Stop() + end +end--- This module contains the AIBALANCER class. -- -- === -- @@ -21048,7 +21613,7 @@ function AIBALANCER:_ClientAliveMonitorScheduler() self.PatrolZone.PatrolFloorAltitude, self.PatrolZone.PatrolCeilingAltitude, self.PatrolZone.PatrolMinSpeed, - self.PatrolPatrolMaxSpeed + self.PatrolZone.PatrolMaxSpeed ) if self.PatrolZone.PatrolManageFuel == true then diff --git a/Moose Mission Setup/Moose.lua b/Moose Mission Setup/Moose.lua index e07adf4ba..96327a527 100644 --- a/Moose Mission Setup/Moose.lua +++ b/Moose Mission Setup/Moose.lua @@ -1,5 +1,5 @@ env.info( '*** MOOSE STATIC INCLUDE START *** ' ) -env.info( 'Moose Generation Timestamp: 20160622_0930' ) +env.info( 'Moose Generation Timestamp: 20160622_1015' ) local base = _G Include = {} @@ -9086,6 +9086,314 @@ function STATIC:GetDCSUnit() return nil end +--- This module contains the AIRBASE classes. +-- +-- === +-- +-- 1) @{Airbase#AIRBASE} class, extends @{Base#BASE} +-- ================================================= +-- The @{AIRBASE} class is a wrapper class to handle the DCS Airbase objects: +-- +-- * Support all DCS Airbase APIs. +-- * Enhance with Airbase specific APIs not in the DCS Airbase API set. +-- +-- +-- 1.1) AIRBASE reference methods +-- ------------------------------ +-- For each DCS Airbase object alive within a running mission, a AIRBASE wrapper object (instance) will be created within the _@{DATABASE} object. +-- This is done at the beginning of the mission (when the mission starts). +-- +-- The AIRBASE class **does not contain a :New()** method, rather it provides **:Find()** methods to retrieve the object reference +-- using the DCS Airbase or the DCS AirbaseName. +-- +-- Another thing to know is that AIRBASE objects do not "contain" the DCS Airbase object. +-- The AIRBASE methods will reference the DCS Airbase object by name when it is needed during API execution. +-- If the DCS Airbase object does not exist or is nil, the AIRBASE methods will return nil and log an exception in the DCS.log file. +-- +-- The AIRBASE class provides the following functions to retrieve quickly the relevant AIRBASE instance: +-- +-- * @{#AIRBASE.Find}(): Find a AIRBASE instance from the _DATABASE object using a DCS Airbase object. +-- * @{#AIRBASE.FindByName}(): Find a AIRBASE instance from the _DATABASE object using a DCS Airbase name. +-- +-- IMPORTANT: ONE SHOULD NEVER SANATIZE these AIRBASE OBJECT REFERENCES! (make the AIRBASE object references nil). +-- +-- 1.2) DCS AIRBASE APIs +-- --------------------- +-- The DCS Airbase APIs are used extensively within MOOSE. The AIRBASE class has for each DCS Airbase API a corresponding method. +-- To be able to distinguish easily in your code the difference between a AIRBASE API call and a DCS Airbase API call, +-- the first letter of the method is also capitalized. So, by example, the DCS Airbase method @{DCSAirbase#Airbase.getName}() +-- is implemented in the AIRBASE class as @{#AIRBASE.GetName}(). +-- +-- More functions will be added +-- ---------------------------- +-- During the MOOSE development, more functions will be added. +-- +-- @module Airbase +-- @author FlightControl + + + + + +--- The AIRBASE class +-- @type AIRBASE +-- @extends Base#BASE +AIRBASE = { + ClassName="AIRBASE", + CategoryName = { + [Airbase.Category.AIRDROME] = "Airdrome", + [Airbase.Category.HELIPAD] = "Helipad", + [Airbase.Category.SHIP] = "Ship", + }, + } + +-- Registration. + +--- Create a new AIRBASE from DCSAirbase. +-- @param #AIRBASE self +-- @param DCSAirbase#Airbase DCSAirbase +-- @param Database#DATABASE Database +-- @return Airbase#AIRBASE +function AIRBASE:Register( AirbaseName ) + + local self = BASE:Inherit( self, BASE:New() ) + self:F2( AirbaseName ) + self.AirbaseName = AirbaseName + return self +end + +-- Reference methods. + +--- Finds a AIRBASE from the _DATABASE using a DCSAirbase object. +-- @param #AIRBASE self +-- @param DCSAirbase#Airbase DCSAirbase An existing DCS Airbase object reference. +-- @return Airbase#AIRBASE self +function AIRBASE:Find( DCSAirbase ) + + local AirbaseName = DCSAirbase:getName() + local AirbaseFound = _DATABASE:FindAirbase( AirbaseName ) + return AirbaseFound +end + +--- Find a AIRBASE in the _DATABASE using the name of an existing DCS Airbase. +-- @param #AIRBASE self +-- @param #string AirbaseName The Airbase Name. +-- @return Airbase#AIRBASE self +function AIRBASE:FindByName( AirbaseName ) + + local AirbaseFound = _DATABASE:FindAirbase( AirbaseName ) + return AirbaseFound +end + +function AIRBASE:GetDCSAirbase() + local DCSAirbase = Airbase.getByName( self.AirbaseName ) + + if DCSAirbase then + return DCSAirbase + end + + return nil +end + +--- Returns coalition of the Airbase. +-- @param Airbase#AIRBASE self +-- @return DCSCoalitionObject#coalition.side The side of the coalition. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetCoalition() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCoalition = DCSAirbase:getCoalition() + self:T3( AirbaseCoalition ) + return AirbaseCoalition + end + + return nil +end + +--- Returns country of the Airbase. +-- @param Airbase#AIRBASE self +-- @return DCScountry#country.id The country identifier. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetCountry() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCountry = DCSAirbase:getCountry() + self:T3( AirbaseCountry ) + return AirbaseCountry + end + + return nil +end + + +--- Returns DCS Airbase object name. +-- The function provides access to non-activated units too. +-- @param Airbase#AIRBASE self +-- @return #string The name of the DCS Airbase. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetName() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseName = self.AirbaseName + return AirbaseName + end + + return nil +end + + +--- Returns if the airbase is alive. +-- @param Airbase#AIRBASE self +-- @return #boolean true if Airbase is alive. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:IsAlive() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseIsAlive = DCSAirbase:isExist() + return AirbaseIsAlive + end + + return false +end + +--- Returns the unit's unique identifier. +-- @param Airbase#AIRBASE self +-- @return DCSAirbase#Airbase.ID Airbase ID +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetID() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseID = DCSAirbase:getID() + return AirbaseID + end + + return nil +end + +--- Returns the Airbase's callsign - the localized string. +-- @param Airbase#AIRBASE self +-- @return #string The Callsign of the Airbase. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetCallSign() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCallSign = DCSAirbase:getCallsign() + return AirbaseCallSign + end + + return nil +end + + + +--- Returns unit descriptor. Descriptor type depends on unit category. +-- @param Airbase#AIRBASE self +-- @return DCSAirbase#Airbase.Desc The Airbase descriptor. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetDesc() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseDesc = DCSAirbase:getDesc() + return AirbaseDesc + end + + return nil +end + + +--- Returns the type name of the DCS Airbase. +-- @param Airbase#AIRBASE self +-- @return #string The type name of the DCS Airbase. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetTypeName() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseTypeName = DCSAirbase:getTypeName() + self:T3( AirbaseTypeName ) + return AirbaseTypeName + end + + return nil +end + + +--- Returns the @{DCSTypes#Vec2} vector indicating the point in 2D of the DCS Airbase within the mission. +-- @param Airbase#AIRBASE self +-- @return DCSTypes#Vec2 The 2D point vector of the DCS Airbase. +-- @return #nil The DCS Airbase is not existing or alive. +function AIRBASE:GetPointVec2() + self:F2( self.AirbaseName ) + + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbasePointVec3 = DCSAirbase:getPosition().p + + local AirbasePointVec2 = {} + AirbasePointVec2.x = AirbasePointVec3.x + AirbasePointVec2.y = AirbasePointVec3.z + + self:T3( AirbasePointVec2 ) + return AirbasePointVec2 + end + + return nil +end + +--- Returns the DCS Airbase category as defined within the DCS Airbase Descriptor. +-- @param Airbase#AIRBASE self +-- @return DCSAirbase#Airbase.Category The DCS Airbase Category +function AIRBASE:GetCategory() + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCategory = self:GetDesc().category + return AirbaseCategory + end + + return nil +end + + +--- Returns the DCS Airbase category name as defined within the DCS Airbase Descriptor. +-- @param Airbase#AIRBASE self +-- @return #string The DCS Airbase Category Name +function AIRBASE:GetCategoryName() + local DCSAirbase = self:GetDCSAirbase() + + if DCSAirbase then + local AirbaseCategoryName = self.CategoryName[ self:GetDesc().category ] + return AirbaseCategoryName + end + + return nil +end + + --- This module contains the DATABASE class, managing the database of mission objects. -- -- ==== @@ -11862,6 +12170,7 @@ end -- @param #boolean SpeedLocked true means the speed is locked. -- @return #table The route point. function POINT_VEC3:RoutePointAir( AltType, Type, Action, Speed, SpeedLocked ) + self:F2( { AltType, Type, Action, Speed, SpeedLocked } ) local RoutePoint = {} RoutePoint.x = self.PointVec3.x @@ -11872,16 +12181,8 @@ function POINT_VEC3:RoutePointAir( AltType, Type, Action, Speed, SpeedLocked ) RoutePoint.type = Type RoutePoint.action = Action - RoutePoint.speed = Speed + RoutePoint.speed = Speed / 3.6 RoutePoint.speed_locked = true - - RoutePoint.properties = { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - } -- ["task"] = -- { @@ -20828,7 +21129,271 @@ function MISSILETRAINER:_TrackMissiles() return true end ---- This module contains the AIBALANCER class. +--- This module contains the PATROLZONE class. +-- +-- === +-- +-- 1) @{Patrol#PATROLZONE} class, extends @{Base#BASE} +-- =================================================== +-- The @{Patrol#PATROLZONE} class implements the core functions to patrol a @{Zone}. +-- +-- 1.1) PATROLZONE constructor: +-- ---------------------------- +-- @{PatrolZone#PATROLZONE.New}(): Creates a new PATROLZONE object. +-- +-- 1.2) Modify the PATROLZONE parameters: +-- -------------------------------------- +-- The following methods are available to modify the parameters of a PATROLZONE object: +-- +-- * @{PatrolZone#PATROLZONE.SetGroup}(): Set the AI Patrol Group. +-- * @{PatrolZone#PATROLZONE.SetSpeed}(): Set the patrol speed of the AI, for the next patrol. +-- * @{PatrolZone#PATROLZONE.SetAltitude}(): Set altitude of the AI, for the next patrol. +-- +-- 1.3) Manage the out of fuel in the PATROLZONE: +-- ---------------------------------------------- +-- When the PatrolGroup is out of fuel, it is required that a new PatrolGroup is started, before the old PatrolGroup can return to the home base. +-- Therefore, with a parameter and a calculation of the distance to the home base, the fuel treshold is calculated. +-- When the fuel treshold is reached, the PatrolGroup will continue for a given time its patrol task in orbit, while a new PatrolGroup is targetted to the PATROLZONE. +-- Once the time is finished, the old PatrolGroup will return to the base. +-- Use the method @{PatrolZone#PATROLZONE.ManageFuel}() to have this proces in place. +-- +-- === +-- +-- @module PatrolZone +-- @author FlightControl + + +--- PATROLZONE class +-- @type PATROLZONE +-- @field Group#GROUP PatrolGroup The @{Group} patrolling. +-- @field Zone#ZONE_BASE PatrolZone The @{Zone} where the patrol needs to be executed. +-- @field DCSTypes#Altitude PatrolFloorAltitude The lowest altitude in meters where to execute the patrol. +-- @field DCSTypes#Altitude PatrolCeilingAltitude The highest altitude in meters where to execute the patrol. +-- @field DCSTypes#Speed PatrolMinSpeed The minimum speed of the @{Group} in km/h. +-- @field DCSTypes#Speed PatrolMaxSpeed The maximum speed of the @{Group} in km/h. +-- @extends Base#BASE +PATROLZONE = { + ClassName = "PATROLZONE", +} + +--- Creates a new PATROLZONE object, taking a @{Group} object as a parameter. The GROUP needs to be alive. +-- @param #PATROLZONE self +-- @param Zone#ZONE_BASE PatrolZone The @{Zone} where the patrol needs to be executed. +-- @param DCSTypes#Altitude PatrolFloorAltitude The lowest altitude in meters where to execute the patrol. +-- @param DCSTypes#Altitude PatrolCeilingAltitude The highest altitude in meters where to execute the patrol. +-- @param DCSTypes#Speed PatrolMinSpeed The minimum speed of the @{Group} in km/h. +-- @param DCSTypes#Speed PatrolMaxSpeed The maximum speed of the @{Group} in km/h. +-- @return #PATROLZONE self +-- @usage +-- -- Define a new PATROLZONE Object. This PatrolArea will patrol a group within PatrolZone between 3000 and 6000 meters, with a variying speed between 600 and 900 km/h. +-- PatrolZone = ZONE:New( 'PatrolZone' ) +-- PatrolGroup = GROUP:FindByName( "Patrol Group" ) +-- PatrolArea = PATROLZONE:New( PatrolGroup, PatrolZone, 3000, 6000, 600, 900 ) +function PATROLZONE:New( PatrolZone, PatrolFloorAltitude, PatrolCeilingAltitude, PatrolMinSpeed, PatrolMaxSpeed ) + + -- Inherits from BASE + local self = BASE:Inherit( self, BASE:New() ) + + self.PatrolZone = PatrolZone + self.PatrolFloorAltitude = PatrolFloorAltitude + self.PatrolCeilingAltitude = PatrolCeilingAltitude + self.PatrolMinSpeed = PatrolMinSpeed + self.PatrolMaxSpeed = PatrolMaxSpeed + + return self +end + +--- Set the @{Group} to act as the Patroller. +-- @param #PATROLZONE self +-- @param Group#GROUP PatrolGroup The @{Group} patrolling. +-- @return #PATROLZONE self +function PATROLZONE:SetGroup( PatrolGroup ) + + self.PatrolGroup = PatrolGroup + self.PatrolGroupTemplateName = PatrolGroup:GetName() + self:NewPatrolRoute() + + if not self.PatrolOutOfFuelMonitor then + self.PatrolOutOfFuelMonitor = SCHEDULER:New( nil, _MonitorOutOfFuelScheduled, { self }, 1, 120, 0 ) + self.SpawnPatrolGroup = SPAWN:New( self.PatrolGroupTemplateName ) + end + + return self +end + +--- Sets (modifies) the minimum and maximum speed of the patrol. +-- @param #PATROLZONE self +-- @param DCSTypes#Speed PatrolMinSpeed The minimum speed of the @{Group} in km/h. +-- @param DCSTypes#Speed PatrolMaxSpeed The maximum speed of the @{Group} in km/h. +-- @return #PATROLZONE self +function PATROLZONE:SetSpeed( PatrolMinSpeed, PatrolMaxSpeed ) + self:F2( { PatrolMinSpeed, PatrolMaxSpeed } ) + + self.PatrolMinSpeed = PatrolMinSpeed + self.PatrolMaxSpeed = PatrolMaxSpeed +end + +--- Sets the floor and ceiling altitude of the patrol. +-- @param #PATROLZONE self +-- @param DCSTypes#Altitude PatrolFloorAltitude The lowest altitude in meters where to execute the patrol. +-- @param DCSTypes#Altitude PatrolCeilingAltitude The highest altitude in meters where to execute the patrol. +-- @return #PATROLZONE self +function PATROLZONE:SetAltitude( PatrolFloorAltitude, PatrolCeilingAltitude ) + self:F2( { PatrolFloorAltitude, PatrolCeilingAltitude } ) + + self.PatrolFloorAltitude = PatrolFloorAltitude + self.PatrolCeilingAltitude = PatrolCeilingAltitude +end + + + +--- @param Group#GROUP PatrolGroup +function _NewPatrolRoute( PatrolGroup ) + + PatrolGroup:T( "NewPatrolRoute" ) + local PatrolZone = PatrolGroup:GetState( PatrolGroup, "PatrolZone" ) -- PatrolZone#PATROLZONE + PatrolZone:NewPatrolRoute() +end + +--- Defines a new patrol route using the @{PatrolZone} parameters and settings. +-- @param #PATROLZONE self +-- @return #PATROLZONE self +function PATROLZONE:NewPatrolRoute() + + self:F2() + + local PatrolRoute = {} + + if self.PatrolGroup:IsAlive() then + --- Determine if the PatrolGroup is within the PatrolZone. + -- If not, make a waypoint within the to that the PatrolGroup will fly at maximum speed to that point. + +-- --- Calculate the current route point. +-- local CurrentVec2 = self.PatrolGroup:GetPointVec2() +-- local CurrentAltitude = self.PatrolGroup:GetUnit(1):GetAltitude() +-- local CurrentPointVec3 = POINT_VEC3:New( CurrentVec2.x, CurrentAltitude, CurrentVec2.y ) +-- local CurrentRoutePoint = CurrentPointVec3:RoutePointAir( +-- POINT_VEC3.RoutePointAltType.BARO, +-- POINT_VEC3.RoutePointType.TurningPoint, +-- POINT_VEC3.RoutePointAction.TurningPoint, +-- ToPatrolZoneSpeed, +-- true +-- ) +-- +-- PatrolRoute[#PatrolRoute+1] = CurrentRoutePoint + + self:T2( PatrolRoute ) + + if self.PatrolGroup:IsNotInZone( self.PatrolZone ) then + --- Find a random 2D point in PatrolZone. + local ToPatrolZoneVec2 = self.PatrolZone:GetRandomVec2() + self:T2( ToPatrolZoneVec2 ) + + --- Define Speed and Altitude. + local ToPatrolZoneAltitude = math.random( self.PatrolFloorAltitude, self.PatrolCeilingAltitude ) + local ToPatrolZoneSpeed = self.PatrolMaxSpeed + self:T2( ToPatrolZoneSpeed ) + + --- Obtain a 3D @{Point} from the 2D point + altitude. + local ToPatrolZonePointVec3 = POINT_VEC3:New( ToPatrolZoneVec2.x, ToPatrolZoneAltitude, ToPatrolZoneVec2.y ) + + --- Create a route point of type air. + local ToPatrolZoneRoutePoint = ToPatrolZonePointVec3:RoutePointAir( + POINT_VEC3.RoutePointAltType.BARO, + POINT_VEC3.RoutePointType.TurningPoint, + POINT_VEC3.RoutePointAction.TurningPoint, + ToPatrolZoneSpeed, + true + ) + + PatrolRoute[#PatrolRoute+1] = ToPatrolZoneRoutePoint + + end + + --- Define a random point in the @{Zone}. The AI will fly to that point within the zone. + + --- Find a random 2D point in PatrolZone. + local ToTargetVec2 = self.PatrolZone:GetRandomVec2() + self:T2( ToTargetVec2 ) + + --- Define Speed and Altitude. + local ToTargetAltitude = math.random( self.PatrolFloorAltitude, self.PatrolCeilingAltitude ) + local ToTargetSpeed = math.random( self.PatrolMinSpeed, self.PatrolMaxSpeed ) + self:T2( { self.PatrolMinSpeed, self.PatrolMaxSpeed, ToTargetSpeed } ) + + --- Obtain a 3D @{Point} from the 2D point + altitude. + local ToTargetPointVec3 = POINT_VEC3:New( ToTargetVec2.x, ToTargetAltitude, ToTargetVec2.y ) + + --- Create a route point of type air. + local ToTargetRoutePoint = ToTargetPointVec3:RoutePointAir( + POINT_VEC3.RoutePointAltType.BARO, + POINT_VEC3.RoutePointType.TurningPoint, + POINT_VEC3.RoutePointAction.TurningPoint, + ToTargetSpeed, + true + ) + + --ToTargetPointVec3:SmokeRed() + + PatrolRoute[#PatrolRoute+1] = ToTargetRoutePoint + + --- Now we're going to do something special, we're going to call a function from a waypoint action at the PatrolGroup... + self.PatrolGroup:WayPointInitialize( PatrolRoute ) + + --- Do a trick, link the NewPatrolRoute function of the PATROLGROUP object to the PatrolGroup in a temporary variable ... + self.PatrolGroup:SetState( self.PatrolGroup, "PatrolZone", self ) + self.PatrolGroup:WayPointFunction( #PatrolRoute, 1, "_NewPatrolRoute" ) + + --- NOW ROUTE THE GROUP! + self.PatrolGroup:WayPointExecute( 1, 2 ) + end + +end + +--- When the PatrolGroup is out of fuel, it is required that a new PatrolGroup is started, before the old PatrolGroup can return to the home base. +-- Therefore, with a parameter and a calculation of the distance to the home base, the fuel treshold is calculated. +-- When the fuel treshold is reached, the PatrolGroup will continue for a given time its patrol task in orbit, while a new PatrolGroup is targetted to the PATROLZONE. +-- Once the time is finished, the old PatrolGroup will return to the base. +-- @param #PATROLZONE self +-- @param #number PatrolFuelTresholdPercentage The treshold in percentage (between 0 and 1) when the PatrolGroup is considered to get out of fuel. +-- @param #number PatrolOutOfFuelOrbitTime The amount of seconds the out of fuel PatrolGroup will orbit before returning to the base. +-- @return #PATROLZONE self +function PATROLZONE:ManageFuel( PatrolFuelTresholdPercentage, PatrolOutOfFuelOrbitTime ) + + self.PatrolManageFuel = true + self.PatrolFuelTresholdPercentage = PatrolFuelTresholdPercentage + self.PatrolOutOfFuelOrbitTime = PatrolOutOfFuelOrbitTime + + if self.PatrolGroup then + self.PatrolOutOfFuelMonitor = SCHEDULER:New( self, self._MonitorOutOfFuelScheduled, {}, 1, 120, 0 ) + self.SpawnPatrolGroup = SPAWN:New( self.PatrolGroupTemplateName ) + end + return self +end + +--- @param #PATROLZONE self +function _MonitorOutOfFuelScheduled( self ) + self:F2( "_MonitorOutOfFuelScheduled" ) + + if self.PatrolGroup and self.PatrolGroup:IsAlive() then + + local Fuel = self.PatrolGroup:GetUnit(1):GetFuel() + if Fuel < self.PatrolFuelTresholdPercentage then + local OldPatrolGroup = self.PatrolGroup + local PatrolGroupTemplate = self.PatrolGroup:GetTemplate() + + local OrbitTask = OldPatrolGroup:TaskOrbitCircle( math.random( self.PatrolFloorAltitude, self.PatrolCeilingAltitude ), self.PatrolMinSpeed ) + local TimedOrbitTask = OldPatrolGroup:TaskControlled( OrbitTask, OldPatrolGroup:TaskCondition(nil,nil,nil,nil,self.PatrolOutOfFuelOrbitTime,nil ) ) + OldPatrolGroup:SetTask( TimedOrbitTask, 10 ) + + local NewPatrolGroup = self.SpawnPatrolGroup:Spawn() + self.PatrolGroup = NewPatrolGroup + self:NewPatrolRoute() + end + else + self.PatrolOutOfFuelMonitor:Stop() + end +end--- This module contains the AIBALANCER class. -- -- === -- @@ -21048,7 +21613,7 @@ function AIBALANCER:_ClientAliveMonitorScheduler() self.PatrolZone.PatrolFloorAltitude, self.PatrolZone.PatrolCeilingAltitude, self.PatrolZone.PatrolMinSpeed, - self.PatrolPatrolMaxSpeed + self.PatrolZone.PatrolMaxSpeed ) if self.PatrolZone.PatrolManageFuel == true then diff --git a/Moose Mission Setup/Moose_Create.bat b/Moose Mission Setup/Moose_Create.bat index c2007e1cb..755389210 100644 --- a/Moose Mission Setup/Moose_Create.bat +++ b/Moose Mission Setup/Moose_Create.bat @@ -48,6 +48,7 @@ COPY /b Moose.lua + %1\Unit.lua Moose.lua COPY /b Moose.lua + %1\Zone.lua Moose.lua COPY /b Moose.lua + %1\Client.lua Moose.lua COPY /b Moose.lua + %1\Static.lua Moose.lua +COPY /b Moose.lua + %1\Airbase.lua Moose.lua COPY /b Moose.lua + %1\Database.lua Moose.lua COPY /b Moose.lua + %1\Set.lua Moose.lua COPY /b Moose.lua + %1\Point.lua Moose.lua @@ -73,6 +74,7 @@ COPY /b Moose.lua + %1\Movement.lua Moose.lua COPY /b Moose.lua + %1\Sead.lua Moose.lua COPY /b Moose.lua + %1\Escort.lua Moose.lua COPY /b Moose.lua + %1\MissileTrainer.lua Moose.lua +COPY /b Moose.lua + %1\PatrolZone.lua Moose.lua COPY /b Moose.lua + %1\AIBalancer.lua Moose.lua COPY /b Moose.lua + %1\AirbasePolice.lua Moose.lua COPY /b Moose.lua + %1\Detection.lua Moose.lua diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER-DB.miz b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER-DB.miz deleted file mode 100644 index 15e89da8e..000000000 Binary files a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER-DB.miz and /dev/null differ diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER.miz b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER.miz index fa9df5d23..b51dfcbbe 100644 Binary files a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER.miz and b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER.miz differ diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/Server.lua b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/Server.lua deleted file mode 100644 index df77a168a..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/Server.lua +++ /dev/null @@ -1,209 +0,0 @@ --- View scripts --- Copyright (C) 2004, Eagle Dynamics. -DisableCombatViews = false -- F5 & Ctrl-F5 -ExternalObjectsLockDistance = 10000.0 -ShowTargetInfo = false -CameraTerrainRestriction = true -hAngleRearDefault = 180 -vAngleRearDefault = -8.0 -vAngleRearMin = -90 -- -8.0 -vAngleRearMax = 90.0 - -dbg_shell = "weapons.shells.PKT_7_62_T" -- 23mm shell --- dbg_shell = "weapons.shells.2A64_152" -- 152mm shell -dbg_shell_v0 = -1 -- Muzzle speed m/s (-1 - speed from shall database) -dbg_shell_fire_rate = 60 ---reformatted per-unit data to be mod system friendly ---this file is no longer should be edited for adding new flyable aircraft , DCS automatically check core database (i.e. where you define your aircraft in aircraft table just define ViewSettings and SnapViews tables) - -function default_fighter_player(t) - local res = { - CameraViewAngleLimits = {20.000000,140.000000}, - CameraAngleRestriction = {false ,90.000000,0.500000}, - EyePoint = {0.05 ,0.000000 ,0.000000}, - limits_6DOF = {x = {-0.050000,0.4500000},y ={-0.300000,0.100000},z = {-0.220000,0.220000},roll = 90.000000}, - Allow360rotation = false, - CameraAngleLimits = {200,-80.000000,110.000000}, - ShoulderSize = 0.2, -- move body when azimuth value more then 90 degrees - } - if t then - for i,o in pairs(t) do - res[i] = o - end - end - return res -end - -function fulcrum() - return { - Cockpit = { - default_fighter_player({CockpitLocalPoint = {4.71,1.28,0.000000}}) - }, - Chase = { - LocalPoint = {1.220000,3.750000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-15.080000,6.350000,0.000000}, - AnglesDefault = {0.000000,-8.000000}, - }, -- Arcade - } -end - -ViewSettings = {} -ViewSettings["A-10A"] = { - Cockpit = { - [1] = default_fighter_player({CockpitLocalPoint = {4.300000,1.282000,0.000000}, - EyePoint = {0.000000,0.000000,0.000000}, - limits_6DOF = {x = {-0.050000,0.600000}, - y = {-0.300000,0.100000}, - z = {-0.250000,0.250000}, - roll = 90.000000}}), - }, -- Cockpit - Chase = { - LocalPoint = {0.600000,3.682000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-27.000000,12.000000,0.000000}, - AnglesDefault = {0.000000,-12.000000}, - }, -- Arcade -} -ViewSettings["A-10C"] = { - Cockpit = { - [1] = default_fighter_player({CockpitLocalPoint = {4.300000,1.282000,0.000000}, - EyePoint = {0.000000,0.000000,0.000000}, - limits_6DOF = {x = {-0.050000,0.600000}, - y = {-0.300000,0.100000}, - z = {-0.250000,0.250000}, - roll = 90.000000}}), - }, -- Cockpit - Chase = { - LocalPoint = {0.600000,3.682000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-27.000000,12.000000,0.000000}, - AnglesDefault = {0.000000,-12.000000}, - }, -- Arcade -} -ViewSettings["F-15C"] = { - Cockpit = { - [1] = default_fighter_player({CockpitLocalPoint = {6.210000,1.204000,0.000000}})-- player slot 1 - }, -- Cockpit - Chase = { - LocalPoint = {2.510000,3.604000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-13.790000,6.204000,0.000000}, - AnglesDefault = {0.000000,-8.000000}, - }, -- Arcade -} -ViewSettings["Ka-50"] = { - Cockpit = { - [1] = {-- player slot 1 - CockpitLocalPoint = {3.188000,0.390000,0.000000}, - CameraViewAngleLimits = {20.000000,120.000000}, - CameraAngleRestriction = {false,60.000000,0.400000}, - CameraAngleLimits = {140.000000,-65.000000,90.000000}, - EyePoint = {0.090000,0.000000,0.000000}, - limits_6DOF = {x = {-0.020000,0.350000},y ={-0.150000,0.165000},z = {-0.170000,0.170000},roll = 90.000000}, - }, - }, -- Cockpit - Chase = { - LocalPoint = {-0.512000,2.790000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-16.812000,5.390000,0.000000}, - AnglesDefault = {0.000000,-8.000000}, - }, -- Arcade -} -ViewSettings["MiG-29A"] = fulcrum() -ViewSettings["MiG-29G"] = fulcrum() -ViewSettings["MiG-29S"] = fulcrum() - -ViewSettings["P-51D"] = { - Cockpit = { - [1] = {-- player slot 1 - CockpitLocalPoint = {-1.500000,0.618000,0.000000}, - CameraViewAngleLimits = {20.000000,120.000000}, - CameraAngleRestriction = {false,90.000000,0.500000}, - CameraAngleLimits = {200,-80.000000,90.000000}, - EyePoint = {0.025000,0.100000,0.000000}, - ShoulderSize = 0.15, - Allow360rotation = false, - limits_6DOF = {x = {-0.050000,0.450000},y ={-0.200000,0.200000},z = {-0.220000,0.220000},roll = 90.000000}, - }, - }, -- Cockpit - Chase = { - LocalPoint = {0.200000,-0.652000,-0.650000}, - AnglesDefault = {0.000000,0.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-21.500000,5.618000,0.000000}, - AnglesDefault = {0.000000,-8.000000}, - }, -- Arcade -} -ViewSettings["Su-25"] = { - Cockpit = { - [1] = default_fighter_player({CockpitLocalPoint = {3.352000,0.506000,0.000000}}),-- player slot 1 - }, -- Cockpit - Chase = { - LocalPoint = {-0.348000,2.906000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-16.648001,5.506000,0.000000}, - AnglesDefault = {0.000000,-8.000000}, - }, -- Arcade -} -ViewSettings["Su-25T"] = { - Cockpit = { - [1] = default_fighter_player({CockpitLocalPoint = {3.406000,0.466000,0.000000}}),-- player slot 1 - }, -- Cockpit - Chase = { - LocalPoint = {-0.294000,2.866000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-16.594000,5.466000,0.000000}, - AnglesDefault = {0.000000,-8.000000}, - }, -- Arcade -} -ViewSettings["Su-25TM"] = { - Cockpit = { - [1] = {-- player slot 1 - CockpitLocalPoint = {4.000000,1.000000,0.000000}, - CameraViewAngleLimits = {20.000000,140.000000}, - CameraAngleRestriction = {true,90.000000,0.400000}, - CameraAngleLimits = {160.000000,-70.000000,90.000000}, - EyePoint = {0.000000,0.000000,0.000000}, - limits_6DOF = {x = {-0.200000,0.200000},y ={-0.200000,0.200000},z = {-0.200000,0.200000},roll = 60.000000}, - }, - }, -- Cockpit - Chase = { - LocalPoint = {4.000000,2.000000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {4.000000,2.000000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Arcade -} -ViewSettings["Su-27"] = { - Cockpit = { - [1] = default_fighter_player({CockpitLocalPoint = {7.959000,1.419000,0.000000}})-- player slot 1 - }, -- Cockpit - Chase = { - LocalPoint = {4.259000,3.819000,0.000000}, - AnglesDefault = {180.000000,-8.000000}, - }, -- Chase - Arcade = { - LocalPoint = {-12.041000,6.419000,0.000000}, - AnglesDefault = {0.000000,-8.000000}, - }, -- Arcade -} - -ViewSettings["Su-33"] = ViewSettings["Su-27"] diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/SnapViewsDefault.lua b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/SnapViewsDefault.lua deleted file mode 100644 index 754522d55..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/SnapViewsDefault.lua +++ /dev/null @@ -1,1698 +0,0 @@ ---reformatted per-unit data to be mod system friendly ---this file is no longer should be edited for adding new flyable aircraft , DCS automatically check core database for this data(i.e. where you define your aircraft in aircraft table just define ViewSettings and SnapViews tables) --- result of ingame editing is saved to Saved Games//DCS/Config/View/SnapViews.lua -SnapViews = {} -SnapViews["A-10A"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 65.000000,--FOV - hAngle = 0.000000, - vAngle = -26.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 49.626770,--FOV - hAngle = 0.000000, - vAngle = -90.631294, - x_trans = 0.180499, - y_trans = -0.137064, - z_trans = -0.250000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 30.395041,--FOV - hAngle = 0.000000, - vAngle = -94.329208, - x_trans = 0.372718, - y_trans = -0.054055, - z_trans = 0.250000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 55.238567,--FOV - hAngle = 0.000000, - vAngle = -90.631294, - x_trans = 0.158523, - y_trans = -0.137064, - z_trans = 0.250000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 35.000000,--FOV - hAngle = 0.000000, - vAngle = -10.651850, - x_trans = 0.327622, - y_trans = -0.278207, - z_trans = -0.244799, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 34.340549,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 35.000000,--FOV - hAngle = 0.000000, - vAngle = -10.651850, - x_trans = 0.327622, - y_trans = -0.278207, - z_trans = 0.244799, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 68.628296,--FOV - hAngle = 68.292320, - vAngle = -11.477349, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 68.628296,--FOV - hAngle = 0.000000, - vAngle = 30.227919, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 68.628296,--FOV - hAngle = -67.172974, - vAngle = -11.477349, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 70.000000,--FOV - hAngle = 20.000000, - vAngle = 8.000000, - x_trans = 0.360000, - y_trans = -0.041337, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 70.000000,--FOV - hAngle = -20.000000, - vAngle = 8.000000, - x_trans = 0.360000, - y_trans = -0.041337, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 75.000000,--FOV - hAngle = 0.000000, - vAngle = -23.000000, - x_trans = 0.360000, - y_trans = -0.041337, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["A-10C"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 65.000000,--FOV - hAngle = 0.000000, - vAngle = -26.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 49.626770,--FOV - hAngle = 0.000000, - vAngle = -90.631294, - x_trans = 0.180499, - y_trans = -0.137064, - z_trans = -0.250000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 30.395041,--FOV - hAngle = 0.000000, - vAngle = -94.329208, - x_trans = 0.372718, - y_trans = -0.054055, - z_trans = 0.250000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 55.238567,--FOV - hAngle = 0.000000, - vAngle = -90.631294, - x_trans = 0.158523, - y_trans = -0.137064, - z_trans = 0.250000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 35.000000,--FOV - hAngle = 0.000000, - vAngle = -10.651850, - x_trans = 0.327622, - y_trans = -0.278207, - z_trans = -0.244799, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 34.340549,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 35.000000,--FOV - hAngle = 0.000000, - vAngle = -10.651850, - x_trans = 0.327622, - y_trans = -0.278207, - z_trans = 0.244799, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 68.628296,--FOV - hAngle = 68.292320, - vAngle = -11.477349, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 68.628296,--FOV - hAngle = 0.000000, - vAngle = 30.227919, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 68.628296,--FOV - hAngle = -67.172974, - vAngle = -11.477349, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 70.000000,--FOV - hAngle = 20.000000, - vAngle = 8.000000, - x_trans = 0.360000, - y_trans = -0.041337, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 70.000000,--FOV - hAngle = -20.000000, - vAngle = 8.000000, - x_trans = 0.360000, - y_trans = -0.041337, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 75.000000,--FOV - hAngle = 0.000000, - vAngle = -23.000000, - x_trans = 0.360000, - y_trans = -0.041337, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["F-15C"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 70.611748,--FOV - hAngle = -1.240272, - vAngle = -33.850250, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 32.704346,--FOV - hAngle = 25.696522, - vAngle = -34.778103, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 32.704346,--FOV - hAngle = 0.000000, - vAngle = -47.845268, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 36.106045,--FOV - hAngle = -28.878576, - vAngle = -36.780628, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 88.727844,--FOV - hAngle = 128.508865, - vAngle = 13.131046, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 41.928593,--FOV - hAngle = 0.000000, - vAngle = -4.630446, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 88.727844,--FOV - hAngle = -128.508865, - vAngle = 13.131046, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 88.727844,--FOV - hAngle = 81.648369, - vAngle = -9.500000, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 88.727844,--FOV - hAngle = 0.000000, - vAngle = 34.180634, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 88.727844,--FOV - hAngle = -80.997551, - vAngle = -9.500000, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 56.032040,--FOV - hAngle = 14.803060, - vAngle = 3.332499, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 56.032040,--FOV - hAngle = -14.414484, - vAngle = 3.332499, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 88.727844,--FOV - hAngle = 0.000000, - vAngle = -9.678451, - x_trans = 0.264295, - y_trans = -0.064373, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["Ka-50"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 67.452896,--FOV - hAngle = 0.000000, - vAngle = -40.067383, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 37.846794,--FOV - hAngle = 51.644135, - vAngle = -51.870411, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 36.178646,--FOV - hAngle = -1.912186, - vAngle = -34.446247, - x_trans = 0.000000, - y_trans = -0.025421, - z_trans = 0.073226, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 73.605141,--FOV - hAngle = -90.361992, - vAngle = -44.103138, - x_trans = 0.169696, - y_trans = -0.073508, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 91.348198,--FOV - hAngle = 109.752129, - vAngle = 1.484382, - x_trans = 0.190306, - y_trans = 0.044778, - z_trans = -0.150335, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 42.512844,--FOV - hAngle = 0.000000, - vAngle = -4.478010, - x_trans = 0.154018, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 91.348198,--FOV - hAngle = -108.852020, - vAngle = 0.085984, - x_trans = 0.190306, - y_trans = 0.044778, - z_trans = 0.139404, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 89.777542,--FOV - hAngle = 16.411518, - vAngle = -27.209915, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = -0.218292, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 88.727844,--FOV - hAngle = 0.000000, - vAngle = 34.042202, - x_trans = 0.142145, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 59.208893,--FOV - hAngle = -32.128311, - vAngle = -5.720805, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 56.032040,--FOV - hAngle = 14.803060, - vAngle = 3.332499, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 56.032040,--FOV - hAngle = -14.414484, - vAngle = 3.332499, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 89.777542,--FOV - hAngle = 0.000000, - vAngle = -15.592758, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["MiG-29A"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 76.124840,--FOV - hAngle = -2.623254, - vAngle = -26.566959, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 34.911949,--FOV - hAngle = 24.601770, - vAngle = -32.350807, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 26.184198,--FOV - hAngle = 12.026249, - vAngle = -40.075508, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 39.454399,--FOV - hAngle = -26.664328, - vAngle = -32.355324, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 81.240005,--FOV - hAngle = 131.503998, - vAngle = 10.804660, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 44.201855,--FOV - hAngle = 0.000000, - vAngle = -2.378299, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 81.240005,--FOV - hAngle = -131.503998, - vAngle = 10.804660, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 81.240005,--FOV - hAngle = 76.013145, - vAngle = 2.248441, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 81.240005,--FOV - hAngle = 0.000000, - vAngle = 36.304676, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 81.240005,--FOV - hAngle = -74.774559, - vAngle = 2.248441, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 68.250000,--FOV - hAngle = 13.070938, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 68.250000,--FOV - hAngle = -13.070938, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 81.240005,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["MiG-29G"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 76.124840,--FOV - hAngle = -2.623254, - vAngle = -26.566959, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 34.911949,--FOV - hAngle = 24.601770, - vAngle = -32.350807, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 26.184198,--FOV - hAngle = 12.026249, - vAngle = -40.075508, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 39.454399,--FOV - hAngle = -26.664328, - vAngle = -32.355324, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 81.240005,--FOV - hAngle = 131.503998, - vAngle = 10.804660, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 44.201855,--FOV - hAngle = 0.000000, - vAngle = -2.378299, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 81.240005,--FOV - hAngle = -131.503998, - vAngle = 10.804660, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 81.240005,--FOV - hAngle = 76.013145, - vAngle = 2.248441, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 81.240005,--FOV - hAngle = 0.000000, - vAngle = 36.304676, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 81.240005,--FOV - hAngle = -74.774559, - vAngle = 2.248441, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 68.250000,--FOV - hAngle = 13.070938, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 68.250000,--FOV - hAngle = -13.070938, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 81.240005,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["MiG-29K"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 65.000000,--FOV - hAngle = 0.000000, - vAngle = -26.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 30.000000,--FOV - hAngle = 20.000000, - vAngle = -43.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 30.000000,--FOV - hAngle = 0.000000, - vAngle = -43.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 30.000000,--FOV - hAngle = -20.000000, - vAngle = -43.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 30.000000,--FOV - hAngle = 20.000000, - vAngle = -23.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 30.000000,--FOV - hAngle = 0.000000, - vAngle = -23.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 30.000000,--FOV - hAngle = -20.000000, - vAngle = -23.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 30.000000,--FOV - hAngle = 20.000000, - vAngle = 2.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 30.000000,--FOV - hAngle = 0.000000, - vAngle = 2.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 30.000000,--FOV - hAngle = -20.000000, - vAngle = 2.000000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 68.250000,--FOV - hAngle = 13.070938, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 68.250000,--FOV - hAngle = -13.070938, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 60.000000,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["MiG-29S"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 76.124840,--FOV - hAngle = -2.623254, - vAngle = -26.566959, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 34.911949,--FOV - hAngle = 24.601770, - vAngle = -32.350807, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 26.184198,--FOV - hAngle = 12.026249, - vAngle = -40.075508, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 39.454399,--FOV - hAngle = -26.664328, - vAngle = -32.355324, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 81.240005,--FOV - hAngle = 131.503998, - vAngle = 10.804660, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 44.201855,--FOV - hAngle = 0.000000, - vAngle = -2.378299, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 81.240005,--FOV - hAngle = -131.503998, - vAngle = 10.804660, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 81.240005,--FOV - hAngle = 76.013145, - vAngle = 2.248441, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 81.240005,--FOV - hAngle = 0.000000, - vAngle = 36.304676, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 81.240005,--FOV - hAngle = -74.774559, - vAngle = 2.248441, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 68.250000,--FOV - hAngle = 13.070938, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 68.250000,--FOV - hAngle = -13.070938, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 81.240005,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["P-51D"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 80.000000,--FOV - hAngle = 0.000000, - vAngle = -45.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 80.000000,--FOV - hAngle = 45.000000, - vAngle = -45.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 80.000000,--FOV - hAngle = 0.000000, - vAngle = -75.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 80.000000,--FOV - hAngle = -45.000000, - vAngle = -45.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 91.040001,--FOV - hAngle = 157.332764, - vAngle = -28.359503, - x_trans = 0.063872, - y_trans = 0.082888, - z_trans = -0.116148, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 50.000000,--FOV - hAngle = 0.000000, - vAngle = -8.722581, - x_trans = 0.212078, - y_trans = 0.057813, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 80.000000,--FOV - hAngle = -143.000000, - vAngle = 0.000000, - x_trans = 0.350000, - y_trans = 0.059000, - z_trans = 0.100000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 80.000000,--FOV - hAngle = 45.000000, - vAngle = -5.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 80.000000,--FOV - hAngle = 0.000000, - vAngle = 10.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 80.000000,--FOV - hAngle = -45.000000, - vAngle = -5.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 80.000000,--FOV - hAngle = 0.000000, - vAngle = 10.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 80.000000,--FOV - hAngle = -20.000000, - vAngle = 8.000000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 80.000000,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.120000, - y_trans = 0.059000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["Su-25"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 68.767799,--FOV - hAngle = 1.929517, - vAngle = -30.846605, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 29.223452,--FOV - hAngle = 37.489525, - vAngle = -38.883888, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 40.635601,--FOV - hAngle = -0.438357, - vAngle = -33.138290, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 24.797405,--FOV - hAngle = -34.382549, - vAngle = -34.808853, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 69.302101,--FOV - hAngle = 89.405373, - vAngle = 1.213156, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 29.761202,--FOV - hAngle = 0.000000, - vAngle = -6.880077, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 69.302101,--FOV - hAngle = -89.691940, - vAngle = 4.554290, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 69.302101,--FOV - hAngle = 52.113377, - vAngle = -3.970644, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 72.856201,--FOV - hAngle = 0.000000, - vAngle = 30.866713, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 69.302101,--FOV - hAngle = -50.664936, - vAngle = -3.970644, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 47.680202,--FOV - hAngle = 43.054649, - vAngle = -7.799250, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 47.680202,--FOV - hAngle = -41.743240, - vAngle = -7.799250, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 69.302101,--FOV - hAngle = 0.000000, - vAngle = -15.137112, - x_trans = 0.050000, - y_trans = 0.010000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["Su-25T"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 80.663399,--FOV - hAngle = 0.000000, - vAngle = -30.619938, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 39.764698,--FOV - hAngle = 28.661316, - vAngle = -41.406044, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 38.090847,--FOV - hAngle = -24.622110, - vAngle = -45.153934, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 36.062012,--FOV - hAngle = -20.779360, - vAngle = -23.755520, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 80.663399,--FOV - hAngle = 99.816956, - vAngle = 8.032285, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 58.718098,--FOV - hAngle = 0.000000, - vAngle = -5.000803, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 80.663399,--FOV - hAngle = -99.999687, - vAngle = 8.032285, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 80.663399,--FOV - hAngle = 58.382488, - vAngle = -6.648195, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 94.037704,--FOV - hAngle = 0.000000, - vAngle = 41.421227, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 80.663399,--FOV - hAngle = -57.531212, - vAngle = -6.648195, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 60.203396,--FOV - hAngle = 55.124939, - vAngle = -8.400513, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 60.203396,--FOV - hAngle = -52.633553, - vAngle = -8.400513, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 90.000000,--FOV - hAngle = 0.000000, - vAngle = -18.382137, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["Su-25TM"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 80.663399,--FOV - hAngle = 0.000000, - vAngle = -30.619938, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 39.764698,--FOV - hAngle = 28.661316, - vAngle = -41.406044, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 38.090847,--FOV - hAngle = -24.622110, - vAngle = -45.153934, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 33.645596,--FOV - hAngle = -36.653450, - vAngle = -23.703861, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 80.663399,--FOV - hAngle = 99.816956, - vAngle = 8.032285, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 58.718098,--FOV - hAngle = 0.000000, - vAngle = -5.000803, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 80.663399,--FOV - hAngle = -99.999687, - vAngle = 8.032285, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 80.663399,--FOV - hAngle = 58.382488, - vAngle = -6.648195, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 94.037704,--FOV - hAngle = 0.000000, - vAngle = 41.421227, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 80.663399,--FOV - hAngle = -57.531212, - vAngle = -6.648195, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 60.203396,--FOV - hAngle = 55.124939, - vAngle = -8.400513, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 60.203396,--FOV - hAngle = -52.633553, - vAngle = -8.400513, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 90.000000,--FOV - hAngle = 0.000000, - vAngle = -18.382137, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["Su-27"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 71.824692,--FOV - hAngle = 0.000000, - vAngle = -32.458889, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 33.361835,--FOV - hAngle = 41.045925, - vAngle = -40.805656, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 30.427544,--FOV - hAngle = 0.000000, - vAngle = -41.808968, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 34.392349,--FOV - hAngle = -32.597401, - vAngle = -35.293747, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 87.468338,--FOV - hAngle = 129.012665, - vAngle = 14.547977, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 43.977936,--FOV - hAngle = 0.000000, - vAngle = -4.951577, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 87.468338,--FOV - hAngle = -129.012665, - vAngle = 14.491872, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 87.468338,--FOV - hAngle = 82.862923, - vAngle = -9.500000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 87.468338,--FOV - hAngle = 0.000000, - vAngle = 38.979362, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 87.468338,--FOV - hAngle = -82.461266, - vAngle = -12.843998, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 68.786629,--FOV - hAngle = 15.618313, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 69.165199,--FOV - hAngle = -15.683434, - vAngle = 8.549150, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 87.468338,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.113927, - y_trans = -0.004946, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} -SnapViews["Su-33"] = { -[1] = {-- player slot 1 - [1] = { - viewAngle = 71.824692,--FOV - hAngle = 0.000000, - vAngle = -32.458889, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [2] = { - viewAngle = 33.361835,--FOV - hAngle = 41.045925, - vAngle = -40.805656, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [3] = { - viewAngle = 30.427544,--FOV - hAngle = 0.000000, - vAngle = -41.808968, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [4] = { - viewAngle = 34.392349,--FOV - hAngle = -32.597401, - vAngle = -35.293747, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [5] = { - viewAngle = 87.468338,--FOV - hAngle = 129.012665, - vAngle = 14.547977, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [6] = { - viewAngle = 43.977936,--FOV - hAngle = 0.000000, - vAngle = -4.951577, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [7] = { - viewAngle = 87.468338,--FOV - hAngle = -129.012665, - vAngle = 14.491872, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [8] = { - viewAngle = 87.468338,--FOV - hAngle = 82.862923, - vAngle = -9.500000, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [9] = { - viewAngle = 87.468338,--FOV - hAngle = 0.000000, - vAngle = 38.979362, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [10] = { - viewAngle = 87.468338,--FOV - hAngle = -82.461266, - vAngle = -12.843998, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [11] = {--look at left mirror - viewAngle = 68.786629,--FOV - hAngle = 15.618313, - vAngle = 7.522498, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [12] = {--look at right mirror - viewAngle = 69.165199,--FOV - hAngle = -15.683434, - vAngle = 8.549150, - x_trans = 0.000000, - y_trans = 0.000000, - z_trans = 0.000000, - rollAngle = 0.000000, - }, - [13] = {--default view - viewAngle = 87.468338,--FOV - hAngle = 0.000000, - vAngle = -9.500000, - x_trans = 0.113927, - y_trans = -0.004946, - z_trans = 0.000000, - rollAngle = 0.000000, - }, -}, -} \ No newline at end of file diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/View.lua b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/View.lua deleted file mode 100644 index 9baf3b7df..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Config/View/View.lua +++ /dev/null @@ -1,128 +0,0 @@ --- View scripts --- Copyright (C) 2004, Eagle Dynamics. - -CockpitMouse = true --false -CockpitMouseSpeedSlow = 1.0 -CockpitMouseSpeedNormal = 10.0 -CockpitMouseSpeedFast = 20.0 -CockpitKeyboardAccelerationSlow = 5.0 -CockpitKeyboardAccelerationNormal = 30.0 -CockpitKeyboardAccelerationFast = 80.0 -CockpitKeyboardZoomAcceleration = 300.0 -DisableSnapViewsSaving = false -UseDefaultSnapViews = true -CockpitPanStepHor = 45.0 -CockpitPanStepVert = 30.0 -CockpitNyMove = true - -CockpitHAngleAccelerateTimeMax = 0.15 -CockpitVAngleAccelerateTimeMax = 0.15 -CockpitZoomAccelerateTimeMax = 0.2 - -function NaturalHeadMoving(tang, roll, omz) - local r = roll - if r > 90.0 then - r = 180.0 - r - elseif roll < -90.0 then - r = -180.0 - r - end - local hAngle = -0.25 * r - local vAngle = math.min(math.max(0.0, 0.4 * tang + 45.0 * omz), 90.0) - return hAngle, vAngle -end - -ExternalMouse = true -ExternalMouseSpeedSlow = 1.0 -ExternalMouseSpeedNormal = 5.0 -ExternalMouseSpeedFast = 20.0 -ExternalViewAngleMin = 3.0 -ExternalViewAngleMax = 170.0 -ExternalViewAngleDefault = 60.0 -ExternalKeyboardZoomAcceleration = 30.0 -ExternalKeyboardZoomAccelerateTimeMax = 1.0 -ExplosionExpoTime = 4.0 -ExternalKeyboardAccelerationSlow = 1.0 -ExternalKeyboardAccelerationNormal = 10.0 -ExternalKeyboardAccelerationFast = 30.0 -ExternalHAngleAccelerateTimeMax = 3.0 -ExternalVAngleAccelerateTimeMax = 3.0 -ExternalDistAccelerateTimeMax = 3.0 -ExternalHAngleLocalAccelerateTimeMax = 3.0 -ExternalVAngleLocalAccelerateTimeMax = 3.0 -ExternalAngleNormalDiscreteStep = 15.0/ExternalKeyboardAccelerationNormal -- When 'S' is pressed only -ChaseCameraNyMove = true -FreeCameraAngleIncrement = 3.0 -FreeCameraDistanceIncrement = 200.0 -FreeCameraLeftRightIncrement = 2.0 -FreeCameraAltitudeIncrement = 2.0 -FreeCameraScalarSpeedAcceleration = 0.1 -xMinMap = -300000 -xMaxMap = 500000 -yMinMap = -400000 -yMaxMap = 200000 -dxMap = 150000 -dyMap = 100000 - -head_roll_shaking = true -head_roll_shaking_max = 30.0 -head_roll_shaking_compensation_gain = 0.3 - --- CameraJiggle() and CameraFloat() functions make camera position --- dependent on FPS so be careful in using the Shift-J command with tracks, please. --- uncomment to use custom jiggle functions ---[[ -function CameraJiggle(t,rnd1,rnd2,rnd3) - local rotX, rotY, rotZ - rotX = 0.05 * rnd1 * math.sin(37.0 * (t - 0.0)) - rotY = 0.05 * rnd2 * math.sin(41.0 * (t - 1.0)) - rotZ = 0.05 * rnd3 * math.sin(53.0 * (t - 2.0)) - return rotX, rotY, rotZ -end - -function CameraFloat(t) - local dX, dY, dZ - dX = 0.61 * math.sin(0.7 * t) + 0.047 * math.sin(1.6 * t); - dY = 0.43 * math.sin(0.6 * t) + 0.067 * math.sin(1.7 * t); - dZ = 0.53 * math.sin(1.0 * t) + 0.083 * math.sin(1.9 * t); - return dX, dY, dZ -end ---]] ---Debug keys - -DEBUG_TEXT = 1 -DEBUG_GEOMETRY = 2 - -debug_keys = { - [DEBUG_TEXT] = 1, - [DEBUG_GEOMETRY] = 1 -} - -function onDebugCommand(command) - if command == 10000 then - if debug_keys[DEBUG_TEXT] ~= 0 or debug_keys[DEBUG_GEOMETRY] ~= 0 then - debug_keys[DEBUG_GEOMETRY] = 0 - debug_keys[DEBUG_TEXT] = 0 - else - debug_keys[DEBUG_GEOMETRY] = 1 - debug_keys[DEBUG_TEXT] = 1 - end - elseif command == 10001 then - if debug_keys[DEBUG_TEXT] ~= 0 then - debug_keys[DEBUG_TEXT] = 0 - else - debug_keys[DEBUG_TEXT] = 1 - end - elseif command == 10002 then - if debug_keys[DEBUG_GEOMETRY] ~= 0 then - debug_keys[DEBUG_GEOMETRY] = 0 - else - debug_keys[DEBUG_GEOMETRY] = 1 - end - end -end - --- gain values for TrackIR , to unify responce on diffrent types of aircraft -TrackIR_gain_x = -0.6 -TrackIR_gain_y = 0.3 -TrackIR_gain_z = -0.25 -TrackIR_gain_roll = -90 \ No newline at end of file diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Scripts/World/GPS_GNSS.lua b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Scripts/World/GPS_GNSS.lua deleted file mode 100644 index 2cb4a8e8d..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Scripts/World/GPS_GNSS.lua +++ /dev/null @@ -1,880 +0,0 @@ -SAT_SYS_GLONASS = 0 -SAT_SYS_GPS = 1 - -almanac = {} ---GPS -almanac[0] = {} -almanac[0]["System"] = SAT_SYS_GPS -almanac[0]["Number"] = 1 -almanac[0]["Orbital"] = "F" -almanac[0]["Eccentricity"] = 6.294000e-003 -almanac[0]["Time_of_Applicability"] = 5.898240e+005 -almanac[0]["Orbital_Inclination"] = 9.885676e-001 -almanac[0]["Rate_of_Right_Ascen"] = -7.862702e-009 -almanac[0]["SQRT_A"] = 5.153700e+003 -almanac[0]["Right_Ascen_at_Week"] = 8.096750e-001 -almanac[0]["Argument_of_Perigee"] = -1.777773e+000 -almanac[0]["Mean_Anom"] = -5.315745e-001 -almanac[0]["week"] = 1390 - -almanac[1] = {} -almanac[1]["System"] = SAT_SYS_GPS -almanac[1]["Number"] = 2 -almanac[1]["Orbital"] = "C" -almanac[1]["Eccentricity"] = 8.794000e-003 -almanac[1]["Time_of_Applicability"] = 5.898240e+005 -almanac[1]["Orbital_Inclination"] = 9.487811e-001 -almanac[1]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[1]["SQRT_A"] = 5.153700e+003 -almanac[1]["Right_Ascen_at_Week"] = -1.329172e+000 -almanac[1]["Argument_of_Perigee"] = 2.138637e+000 -almanac[1]["Mean_Anom"] = 7.311702e-001 -almanac[1]["week"] = 1390 - -almanac[2] = {} -almanac[2]["System"] = SAT_SYS_GPS -almanac[2]["Number"] = 3 -almanac[2]["Orbital"] = "F" -almanac[2]["Eccentricity"] = 8.424000e-003 -almanac[2]["Time_of_Applicability"] = 5.898240e+005 -almanac[2]["Orbital_Inclination"] = 9.262804e-001 -almanac[2]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[2]["SQRT_A"] = 5.153600e+003 -almanac[2]["Right_Ascen_at_Week"] = -2.341514e+000 -almanac[2]["Argument_of_Perigee"] = 6.749357e-001 -almanac[2]["Mean_Anom"] = -2.296153e-001 -almanac[2]["week"] = 1389 - -almanac[3] = {} -almanac[3]["System"] = SAT_SYS_GPS -almanac[3]["Number"] = 4 -almanac[3]["Orbital"] = "D" -almanac[3]["Eccentricity"] = 7.413000e-003 -almanac[3]["Time_of_Applicability"] = 5.898240e+005 -almanac[3]["Orbital_Inclination"] = 9.482889e-001 -almanac[3]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[3]["SQRT_A"] = 5.153600e+003 -almanac[3]["Right_Ascen_at_Week"] = -1.309589e+000 -almanac[3]["Argument_of_Perigee"] = 1.623504e-001 -almanac[3]["Mean_Anom"] = -3.022943e+000 -almanac[3]["week"] = 1390 - -almanac[4] = {} -almanac[4]["System"] = SAT_SYS_GPS -almanac[4]["Number"] = 5 -almanac[4]["Orbital"] = "B" -almanac[4]["Eccentricity"] = 7.432000e-003 -almanac[4]["Time_of_Applicability"] = 5.898240e+005 -almanac[4]["Orbital_Inclination"] = 9.387437e-001 -almanac[4]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[4]["SQRT_A"] = 5.153700e+003 -almanac[4]["Right_Ascen_at_Week"] = 2.779487e+000 -almanac[4]["Argument_of_Perigee"] = 1.099033e+000 -almanac[4]["Mean_Anom"] = 2.970984e+000 -almanac[4]["week"] = 1390 - -almanac[5] = {} -almanac[5]["System"] = SAT_SYS_GPS -almanac[5]["Number"] = 6 -almanac[5]["Orbital"] = "C" -almanac[5]["Eccentricity"] = 6.020000e-003 -almanac[5]["Time_of_Applicability"] = 5.898240e+005 -almanac[5]["Orbital_Inclination"] = 9.337591e-001 -almanac[5]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[5]["SQRT_A"] = 5.153600e+003 -almanac[5]["Right_Ascen_at_Week"] = -2.407627e+000 -almanac[5]["Argument_of_Perigee"] = -1.788263e+000 -almanac[5]["Mean_Anom"] = -2.149877e+000 -almanac[5]["week"] = 1390 - -almanac[6] = {} -almanac[6]["System"] = SAT_SYS_GPS -almanac[6]["Number"] = 7 -almanac[6]["Orbital"] = "C" -almanac[6]["Eccentricity"] = 1.052400e-002 -almanac[6]["Time_of_Applicability"] = 5.898240e+005 -almanac[6]["Orbital_Inclination"] = 9.353229e-001 -almanac[6]["Rate_of_Right_Ascen"] = -8.080868e-009 -almanac[6]["SQRT_A"] = 5.153700e+003 -almanac[6]["Right_Ascen_at_Week"] = -2.433580e+000 -almanac[6]["Argument_of_Perigee"] = -1.767301e+000 -almanac[6]["Mean_Anom"] = -3.141503e+000 -almanac[6]["week"] = 1390 - -almanac[7] = {} -almanac[7]["System"] = SAT_SYS_GPS -almanac[7]["Number"] = 8 -almanac[7]["Orbital"] = "A" -almanac[7]["Eccentricity"] = 9.822000e-003 -almanac[7]["Time_of_Applicability"] = 5.898240e+005 -almanac[7]["Orbital_Inclination"] = 9.741390e-001 -almanac[7]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[7]["SQRT_A"] = 5.153600e+003 -almanac[7]["Right_Ascen_at_Week"] = 1.857849e+000 -almanac[7]["Argument_of_Perigee"] = 2.674034e+000 -almanac[7]["Mean_Anom"] = -2.009745e+000 -almanac[7]["week"] = 1390 - -almanac[8] = {} -almanac[8]["System"] = SAT_SYS_GPS -almanac[8]["Number"] = 9 -almanac[8]["Orbital"] = "A" -almanac[8]["Eccentricity"] = 1.839300e-002 -almanac[8]["Time_of_Applicability"] = 5.898240e+005 -almanac[8]["Orbital_Inclination"] = 9.617541e-001 -almanac[8]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[8]["SQRT_A"] = 5.153600e+003 -almanac[8]["Right_Ascen_at_Week"] = 1.777005e+000 -almanac[8]["Argument_of_Perigee"] = 1.274962e+000 -almanac[8]["Mean_Anom"] = -2.349578e+000 -almanac[8]["week"] = 1390 - -almanac[9] = {} -almanac[9]["System"] = SAT_SYS_GPS -almanac[9]["Number"] = 10 -almanac[9]["Orbital"] = "E" -almanac[9]["Eccentricity"] = 7.061000e-003 -almanac[9]["Time_of_Applicability"] = 5.898240e+005 -almanac[9]["Orbital_Inclination"] = 9.728876e-001 -almanac[9]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[9]["SQRT_A"] = 5.153600e+003 -almanac[9]["Right_Ascen_at_Week"] = -2.563014e-001 -almanac[9]["Argument_of_Perigee"] = 4.377980e-001 -almanac[9]["Mean_Anom"] = 1.210716e+000 -almanac[9]["week"] = 1390 - -almanac[10] = {} -almanac[10]["System"] = SAT_SYS_GPS -almanac[10]["Number"] = 11 -almanac[10]["Orbital"] = "D" -almanac[10]["Eccentricity"] = 5.744000e-003 -almanac[10]["Time_of_Applicability"] = 5.898240e+005 -almanac[10]["Orbital_Inclination"] = 8.959309e-001 -almanac[10]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[10]["SQRT_A"] = 5.153600e+003 -almanac[10]["Right_Ascen_at_Week"] = -1.478816e+000 -almanac[10]["Argument_of_Perigee"] = 3.750011e-001 -almanac[10]["Mean_Anom"] = -1.522048e+000 -almanac[10]["week"] = 1390 - -almanac[11] = {} -almanac[11]["System"] = SAT_SYS_GPS -almanac[11]["Number"] = 13 -almanac[11]["Orbital"] = "F" -almanac[11]["Eccentricity"] = 3.088000e-003 -almanac[11]["Time_of_Applicability"] = 5.898240e+005 -almanac[11]["Orbital_Inclination"] = 9.927564e-001 -almanac[11]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[11]["SQRT_A"] = 5.153700e+003 -almanac[11]["Right_Ascen_at_Week"] = 7.956600e-001 -almanac[11]["Argument_of_Perigee"] = 1.279395e+000 -almanac[11]["Mean_Anom"] = 1.004349e+000 -almanac[11]["week"] = 1390 - -almanac[12] = {} -almanac[12]["System"] = SAT_SYS_GPS -almanac[12]["Number"] = 14 -almanac[12]["Orbital"] = "F" -almanac[12]["Eccentricity"] = 2.591000e-003 -almanac[12]["Time_of_Applicability"] = 5.898240e+005 -almanac[12]["Orbital_Inclination"] = 9.868729e-001 -almanac[12]["Rate_of_Right_Ascen"] = -7.885391e-009 -almanac[12]["SQRT_A"] = 5.153600e+003 -almanac[12]["Right_Ascen_at_Week"] = 7.819592e-001 -almanac[12]["Argument_of_Perigee"] = -2.158621e+000 -almanac[12]["Mean_Anom"] = 5.412611e-001 -almanac[12]["week"] = 1390 - -almanac[13] = {} -almanac[13]["System"] = SAT_SYS_GPS -almanac[13]["Number"] = 15 -almanac[13]["Orbital"] = "D" -almanac[13]["Eccentricity"] = 9.828000e-003 -almanac[13]["Time_of_Applicability"] = 3.194880e+005 -almanac[13]["Orbital_Inclination"] = 9.554204e-001 -almanac[13]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[13]["SQRT_A"] = 5.153600e+003 -almanac[13]["Right_Ascen_at_Week"] = -1.123869e+000 -almanac[13]["Argument_of_Perigee"] = 2.690266e+000 -almanac[13]["Mean_Anom"] = 2.220476e+000 -almanac[13]["week"] = 1389 - -almanac[14] = {} -almanac[14]["System"] = SAT_SYS_GPS -almanac[14]["Number"] = 16 -almanac[14]["Orbital"] = "B" -almanac[14]["Eccentricity"] = 3.494000e-003 -almanac[14]["Time_of_Applicability"] = 5.898240e+005 -almanac[14]["Orbital_Inclination"] = 9.629340e-001 -almanac[14]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[14]["SQRT_A"] = 5.153700e+003 -almanac[14]["Right_Ascen_at_Week"] = 2.873124e+000 -almanac[14]["Argument_of_Perigee"] = -7.819243e-001 -almanac[14]["Mean_Anom"] = 2.623629e+000 -almanac[14]["week"] = 1390 - -almanac[15] = {} -almanac[15]["System"] = SAT_SYS_GPS -almanac[15]["Number"] = 17 -almanac[15]["Orbital"] = "C" -almanac[15]["Eccentricity"] = 2.141000e-003 -almanac[15]["Time_of_Applicability"] = 5.898240e+005 -almanac[15]["Orbital_Inclination"] = 9.601170e-001 -almanac[15]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[15]["SQRT_A"] = 5.153700e+003 -almanac[15]["Right_Ascen_at_Week"] = -2.371499e+000 -almanac[15]["Argument_of_Perigee"] = 3.087694e+000 -almanac[15]["Mean_Anom"] = 1.611217e+000 -almanac[15]["week"] = 1390 - -almanac[16] = {} -almanac[16]["System"] = SAT_SYS_GPS -almanac[16]["Number"] = 18 -almanac[16]["Orbital"] = "E" -almanac[16]["Eccentricity"] = 7.636000e-003 -almanac[16]["Time_of_Applicability"] = 5.898240e+005 -almanac[16]["Orbital_Inclination"] = 9.569597e-001 -almanac[16]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[16]["SQRT_A"] = 5.153700e+003 -almanac[16]["Right_Ascen_at_Week"] = -2.359858e-001 -almanac[16]["Argument_of_Perigee"] = -2.649216e+000 -almanac[16]["Mean_Anom"] = 2.675029e+000 -almanac[16]["week"] = 1390 - -almanac[17] = {} -almanac[17]["System"] = SAT_SYS_GPS -almanac[17]["Number"] = 19 -almanac[17]["Orbital"] = "C" -almanac[17]["Eccentricity"] = 3.602000e-003 -almanac[17]["Time_of_Applicability"] = 5.898240e+005 -almanac[17]["Orbital_Inclination"] = 9.580209e-001 -almanac[17]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[17]["SQRT_A"] = 5.153600e+003 -almanac[17]["Right_Ascen_at_Week"] = -2.312385e+000 -almanac[17]["Argument_of_Perigee"] = -1.161079e+000 -almanac[17]["Mean_Anom"] = 1.310619e+000 -almanac[17]["week"] = 1390 - -almanac[18] = {} -almanac[18]["System"] = SAT_SYS_GPS -almanac[18]["Number"] = 20 -almanac[18]["Orbital"] = "E" -almanac[18]["Eccentricity"] = 2.796000e-003 -almanac[18]["Time_of_Applicability"] = 5.898240e+005 -almanac[18]["Orbital_Inclination"] = 9.564693e-001 -almanac[18]["Rate_of_Right_Ascen"] = -7.908080e-009 -almanac[18]["SQRT_A"] = 5.153600e+003 -almanac[18]["Right_Ascen_at_Week"] = -2.889565e-001 -almanac[18]["Argument_of_Perigee"] = 1.379612e+000 -almanac[18]["Mean_Anom"] = 2.461750e+000 -almanac[18]["week"] = 1390 - -almanac[19] = {} -almanac[19]["System"] = SAT_SYS_GPS -almanac[19]["Number"] = 21 -almanac[19]["Orbital"] = "D" -almanac[19]["Eccentricity"] = 1.162900e-002 -almanac[19]["Time_of_Applicability"] = 5.898240e+005 -almanac[19]["Orbital_Inclination"] = 9.418592e-001 -almanac[19]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[19]["SQRT_A"] = 5.153600e+003 -almanac[19]["Right_Ascen_at_Week"] = -1.289972e+000 -almanac[19]["Argument_of_Perigee"] = -2.923686e+000 -almanac[19]["Mean_Anom"] = -2.349194e+000 -almanac[19]["week"] = 1390 - -almanac[20] = {} -almanac[20]["System"] = SAT_SYS_GPS -almanac[20]["Number"] = 22 -almanac[20]["Orbital"] = "E" -almanac[20]["Eccentricity"] = 4.893000e-003 -almanac[20]["Time_of_Applicability"] = 5.898240e+005 -almanac[20]["Orbital_Inclination"] = 9.545093e-001 -almanac[20]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[20]["SQRT_A"] = 5.153600e+003 -almanac[20]["Right_Ascen_at_Week"] = -2.280969e-001 -almanac[20]["Argument_of_Perigee"] = -1.674502e+000 -almanac[20]["Mean_Anom"] = 1.106852e+000 -almanac[20]["week"] = 1390 - -almanac[21] = {} -almanac[21]["System"] = SAT_SYS_GPS -almanac[21]["Number"] = 23 -almanac[21]["Orbital"] = "F" -almanac[21]["Eccentricity"] = 4.822000e-003 -almanac[21]["Time_of_Applicability"] = 5.898240e+005 -almanac[21]["Orbital_Inclination"] = 9.691247e-001 -almanac[21]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[21]["SQRT_A"] = 5.153700e+003 -almanac[21]["Right_Ascen_at_Week"] = 7.667399e-001 -almanac[21]["Argument_of_Perigee"] = 2.497634e+000 -almanac[21]["Mean_Anom"] = 3.184700e-001 -almanac[21]["week"] = 1390 - -almanac[22] = {} -almanac[22]["System"] = SAT_SYS_GPS -almanac[22]["Number"] = 24 -almanac[22]["Orbital"] = "D" -almanac[22]["Eccentricity"] = 9.277000e-003 -almanac[22]["Time_of_Applicability"] = 5.898240e+005 -almanac[22]["Orbital_Inclination"] = 9.585183e-001 -almanac[22]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[22]["SQRT_A"] = 5.153900e+003 -almanac[22]["Right_Ascen_at_Week"] = -1.274840e+000 -almanac[22]["Argument_of_Perigee"] = -8.815651e-001 -almanac[22]["Mean_Anom"] = -1.695551e+000 -almanac[22]["week"] = 1390 - -almanac[23] = {} -almanac[23]["System"] = SAT_SYS_GPS -almanac[23]["Number"] = 25 -almanac[23]["Orbital"] = "A" -almanac[23]["Eccentricity"] = 1.257400e-002 -almanac[23]["Time_of_Applicability"] = 5.898240e+005 -almanac[23]["Orbital_Inclination"] = 9.551027e-001 -almanac[23]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[23]["SQRT_A"] = 5.153600e+003 -almanac[23]["Right_Ascen_at_Week"] = 1.721853e+000 -almanac[23]["Argument_of_Perigee"] = -1.329870e+000 -almanac[23]["Mean_Anom"] = -1.769623e+000 -almanac[23]["week"] = 1390 - -almanac[24] = {} -almanac[24]["System"] = SAT_SYS_GPS -almanac[24]["Number"] = 26 -almanac[24]["Orbital"] = "F" -almanac[24]["Eccentricity"] = 1.745700e-002 -almanac[24]["Time_of_Applicability"] = 5.898240e+005 -almanac[24]["Orbital_Inclination"] = 9.908749e-001 -almanac[24]["Rate_of_Right_Ascen"] = -7.840012e-009 -almanac[24]["SQRT_A"] = 5.153700e+003 -almanac[24]["Right_Ascen_at_Week"] = 7.961836e-001 -almanac[24]["Argument_of_Perigee"] = 8.161502e-001 -almanac[24]["Mean_Anom"] = -5.841961e-001 -almanac[24]["week"] = 1390 - -almanac[25] = {} -almanac[25]["System"] = SAT_SYS_GPS -almanac[25]["Number"] = 27 -almanac[25]["Orbital"] = "A" -almanac[25]["Eccentricity"] = 1.991000e-002 -almanac[25]["Time_of_Applicability"] = 5.898240e+005 -almanac[25]["Orbital_Inclination"] = 9.596563e-001 -almanac[25]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[25]["SQRT_A"] = 5.153600e+003 -almanac[25]["Right_Ascen_at_Week"] = 1.754124e+000 -almanac[25]["Argument_of_Perigee"] = -1.900854e+000 -almanac[25]["Mean_Anom"] = 3.046487e+000 -almanac[25]["week"] = 1390 - -almanac[26] = {} -almanac[26]["System"] = SAT_SYS_GPS -almanac[26]["Number"] = 28 -almanac[26]["Orbital"] = "B" -almanac[26]["Eccentricity"] = 1.162800e-002 -almanac[26]["Time_of_Applicability"] = 5.898240e+005 -almanac[26]["Orbital_Inclination"] = 9.610106e-001 -almanac[26]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[26]["SQRT_A"] = 5.153600e+003 -almanac[26]["Right_Ascen_at_Week"] = 2.882583e+000 -almanac[26]["Argument_of_Perigee"] = -2.242868e+000 -almanac[26]["Mean_Anom"] = 1.860642e+000 -almanac[26]["week"] = 1390 - -almanac[27] = {} -almanac[27]["System"] = SAT_SYS_GPS -almanac[27]["Number"] = 29 -almanac[27]["Orbital"] = "F" -almanac[27]["Eccentricity"] = 9.462000e-003 -almanac[27]["Time_of_Applicability"] = 1.474560e+005 -almanac[27]["Orbital_Inclination"] = 9.874838e-001 -almanac[27]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[27]["SQRT_A"] = 5.153700e+003 -almanac[27]["Right_Ascen_at_Week"] = 7.647503e-001 -almanac[27]["Argument_of_Perigee"] = -8.614589e-001 -almanac[27]["Mean_Anom"] = -4.488983e-001 -almanac[27]["week"] = 1390 - -almanac[28] = {} -almanac[28]["System"] = SAT_SYS_GPS -almanac[28]["Number"] = 30 -almanac[28]["Orbital"] = "B" -almanac[28]["Eccentricity"] = 9.296000e-003 -almanac[28]["Time_of_Applicability"] = 5.898240e+005 -almanac[28]["Orbital_Inclination"] = 9.452992e-001 -almanac[28]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[28]["SQRT_A"] = 5.153600e+003 -almanac[28]["Right_Ascen_at_Week"] = 2.826698e+000 -almanac[28]["Argument_of_Perigee"] = 1.306413e+000 -almanac[28]["Mean_Anom"] = 2.148725e+000 -almanac[28]["week"] = 1390 - - - - - - ---GLONASS ---1 îðáèòàëüíàÿ ïëîñêîñòü, íîìåðà 1-8 -almanac[29] = {} -almanac[29]["System"] = SAT_SYS_GLONASS -almanac[29]["Number"] = 1 -almanac[29]["Orbital"] = 1 -almanac[29]["GLONASS_Data"] = {} -almanac[29]["GLONASS_Data"]["NKU_Number"] = 796 -almanac[29]["GLONASS_Data"]["Cosmos_Number"] = 2411 -almanac[29]["Eccentricity"] = 1.184000e-003 -almanac[29]["Time_of_Applicability"] = 0.000000e+000 -almanac[29]["Orbital_Inclination"] = 1.126443e+000 -almanac[29]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[29]["SQRT_A"] = 5.050500e+003 -almanac[29]["Right_Ascen_at_Week"] = 5.979807e+000 -almanac[29]["Argument_of_Perigee"] = 2.622634e+000 -almanac[29]["Mean_Anom"] = -5.519651e+000 -almanac[29]["week"] = 1390 -almanac[29]["Commit_date"] = "06.02.2005" -almanac[29]["Life_dates"] = {} - -almanac[30] = {} -almanac[30]["System"] = SAT_SYS_GLONASS -almanac[30]["Number"] = 2 -almanac[30]["Orbital"] = 1 -almanac[30]["GLONASS_Data"] = {} -almanac[30]["GLONASS_Data"]["NKU_Number"] = 794 -almanac[30]["GLONASS_Data"]["Cosmos_Number"] = 2401 -almanac[30]["Eccentricity"] = 4.486000e-003 -almanac[30]["Time_of_Applicability"] = 0.000000e+000 -almanac[30]["Orbital_Inclination"] = 1.128459e+000 -almanac[30]["Rate_of_Right_Ascen"] = -6.759654e-009 -almanac[30]["SQRT_A"] = 5.050500e+003 -almanac[30]["Right_Ascen_at_Week"] = 5.997871e+000 -almanac[30]["Argument_of_Perigee"] = 1.709531e+000 -almanac[30]["Mean_Anom"] = -5.367633e+000 -almanac[30]["week"] = 1390 -almanac[30]["Commit_date"] = "02.02.2004" -almanac[30]["Life_dates"] = {} - -almanac[31] = {} -almanac[31]["System"] = SAT_SYS_GLONASS -almanac[31]["Number"] = 3 -almanac[31]["Orbital"] = 1 -almanac[31]["GLONASS_Data"] = {} -almanac[31]["GLONASS_Data"]["NKU_Number"] = 789 -almanac[31]["GLONASS_Data"]["Cosmos_Number"] = 2381 -almanac[31]["Eccentricity"] = 2.459000e-003 -almanac[31]["Time_of_Applicability"] = 0.000000e+000 -almanac[31]["Orbital_Inclination"] = 1.122958e+000 -almanac[31]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[31]["SQRT_A"] = 5.050500e+003 -almanac[31]["Right_Ascen_at_Week"] = 5.960713e+000 -almanac[31]["Argument_of_Perigee"] = -2.683407e+000 -almanac[31]["Mean_Anom"] = -1.791788e+000 -almanac[31]["week"] = 1390 -almanac[31]["Commit_date"] = "04.01.2002" -almanac[31]["Life_dates"] = {} - -almanac[32] = {} -almanac[32]["System"] = SAT_SYS_GLONASS -almanac[32]["Number"] = 4 -almanac[32]["Orbital"] = 1 -almanac[32]["GLONASS_Data"] = {} -almanac[32]["GLONASS_Data"]["NKU_Number"] = 795 -almanac[29]["GLONASS_Data"]["Cosmos_Number"] = 2403 -almanac[32]["Eccentricity"] = 4.054000e-003 -almanac[32]["Time_of_Applicability"] = 0.000000e+000 -almanac[32]["Orbital_Inclination"] = 1.128543e+000 -almanac[32]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[32]["SQRT_A"] = 5.050500e+003 -almanac[32]["Right_Ascen_at_Week"] = 5.998081e+000 -almanac[32]["Argument_of_Perigee"] = 1.497160e+000 -almanac[32]["Mean_Anom"] = -4.293681e-001 -almanac[32]["week"] = 1390 -almanac[32]["Commit_date"] = "29.01.2004" -almanac[32]["Life_dates"] = {} - -almanac[33] = {} -almanac[33]["System"] = SAT_SYS_GLONASS -almanac[33]["Number"] = 5 -almanac[33]["Orbital"] = 1 -almanac[33]["GLONASS_Data"] = {} -almanac[33]["GLONASS_Data"]["NKU_Number"] = 711 -almanac[33]["GLONASS_Data"]["Cosmos_Number"] = 2382 -almanac[33]["Eccentricity"] = 7.040000e-004 -almanac[33]["Time_of_Applicability"] = 0.000000e+000 -almanac[33]["Orbital_Inclination"] = 1.122886e+000 -almanac[33]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[33]["SQRT_A"] = 5.050600e+003 -almanac[33]["Right_Ascen_at_Week"] = 5.960713e+000 -almanac[33]["Argument_of_Perigee"] = 2.740933e+000 -almanac[33]["Mean_Anom"] = -2.523604e+000 -almanac[33]["week"] = 1390 -almanac[33]["Commit_date"] = "13.02.2003" -almanac[33]["Life_dates"] = {} - -almanac[34] = {} -almanac[34]["System"] = SAT_SYS_GLONASS -almanac[34]["Number"] = 6 -almanac[34]["Orbital"] = 1 -almanac[34]["GLONASS_Data"] = {} -almanac[34]["GLONASS_Data"]["NKU_Number"] = 701 -almanac[34]["GLONASS_Data"]["Cosmos_Number"] = 2404 -almanac[34]["Eccentricity"] = 4.766000e-003 -almanac[34]["Time_of_Applicability"] = 0.000000e+000 -almanac[34]["Orbital_Inclination"] = 1.128276e+000 -almanac[34]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[34]["SQRT_A"] = 5.050500e+003 -almanac[34]["Right_Ascen_at_Week"] = 5.997906e+000 -almanac[34]["Argument_of_Perigee"] = 1.802417e+000 -almanac[34]["Mean_Anom"] = -2.426512e+000 -almanac[34]["week"] = 1390 -almanac[34]["Commit_date"] = "08.12.2004" -almanac[34]["Life_dates"] = {} - -almanac[35] = {} -almanac[35]["System"] = SAT_SYS_GLONASS -almanac[35]["Number"] = 7 -almanac[35]["Orbital"] = 1 -almanac[35]["GLONASS_Data"] = {} -almanac[35]["GLONASS_Data"]["NKU_Number"] = 712 -almanac[35]["GLONASS_Data"]["Cosmos_Number"] = 2413 -almanac[35]["Eccentricity"] = 7.570000e-004 -almanac[35]["Time_of_Applicability"] = 0.000000e+000 -almanac[35]["Orbital_Inclination"] = 1.126344e+000 -almanac[35]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[35]["SQRT_A"] = 5.050500e+003 -almanac[35]["Right_Ascen_at_Week"] = 5.979388e+000 -almanac[35]["Argument_of_Perigee"] = 2.566068e+000 -almanac[35]["Mean_Anom"] = -3.921228e+000 -almanac[35]["week"] = 1390 -almanac[35]["Commit_date"] = "07.10.2005" -almanac[35]["Life_dates"] = {} - -almanac[36] = {} -almanac[36]["System"] = SAT_SYS_GLONASS -almanac[36]["GLONASS_Data"] = {} -almanac[36]["Number"] = 8 -almanac[36]["Orbital"] = 1 -almanac[36]["GLONASS_Data"] = {} -almanac[36]["GLONASS_Data"]["NKU_Number"] = 797 -almanac[36]["GLONASS_Data"]["Cosmos_Number"] = 2412 -almanac[36]["Eccentricity"] = 4.060000e-004 -almanac[36]["Time_of_Applicability"] = 0.000000e+000 -almanac[36]["Orbital_Inclination"] = 1.126564e+000 -almanac[36]["Rate_of_Right_Ascen"] = -6.785834e-009 -almanac[36]["SQRT_A"] = 5.050600e+003 -almanac[36]["Right_Ascen_at_Week"] = 5.980069e+000 -almanac[36]["Argument_of_Perigee"] = 2.673633e+000 -almanac[36]["Mean_Anom"] = -4.812026e+000 -almanac[36]["week"] = 1390 -almanac[36]["Commit_date"] = "06.02.2005" -almanac[36]["Life_dates"] = {} - ---3 îðáèòàëüíàÿ ïëîñêîñòü, íîìåðà 17-24 -almanac[37] = {} -almanac[37]["System"] = SAT_SYS_GLONASS -almanac[37]["Number"] = 17 -almanac[37]["Orbital"] = 3 -almanac[37]["GLONASS_Data"] = {} -almanac[37]["GLONASS_Data"]["NKU_Number"] = 787 -almanac[37]["GLONASS_Data"]["Cosmos_Number"] = 2375 -almanac[37]["Eccentricity"] = 5.670000e-004 -almanac[37]["Time_of_Applicability"] = 0.000000e+000 -almanac[37]["Orbital_Inclination"] = 1.126524e+000 -almanac[37]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[37]["SQRT_A"] = 5.050500e+003 -almanac[37]["Right_Ascen_at_Week"] = 3.895554e+000 -almanac[37]["Argument_of_Perigee"] = 6.085085e-001 -almanac[37]["Mean_Anom"] = -2.977407e+000 -almanac[37]["week"] = 1390 -almanac[37]["Commit_date"] = "04.11.2000" -almanac[37]["Life_dates"] = {} - - -almanac[38] = {} -almanac[38]["System"] = SAT_SYS_GLONASS -almanac[38]["Number"] = 18 -almanac[38]["Orbital"] = 3 -almanac[38]["GLONASS_Data"] = {} -almanac[38]["GLONASS_Data"]["NKU_Number"] = 783 -almanac[38]["GLONASS_Data"]["Cosmos_Number"] = 2374 -almanac[38]["Eccentricity"] = 4.520000e-003 -almanac[38]["Time_of_Applicability"] = 0.000000e+000 -almanac[38]["Orbital_Inclination"] = 1.126239e+000 -almanac[38]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[38]["SQRT_A"] = 5.050600e+003 -almanac[38]["Right_Ascen_at_Week"] = 3.894071e+000 -almanac[38]["Argument_of_Perigee"] = -2.509589e+000 -almanac[38]["Mean_Anom"] = -1.020057e+000 -almanac[38]["week"] = 1390 -almanac[38]["Commit_date"] = "05.01.2001" -almanac[38]["Life_dates"] = {} - -almanac[39] = {} -almanac[39]["System"] = SAT_SYS_GLONASS -almanac[39]["Number"] = 19 -almanac[39]["Orbital"] = 3 -almanac[39]["GLONASS_Data"] = {} -almanac[39]["GLONASS_Data"]["NKU_Number"] = 798 -almanac[39]["GLONASS_Data"]["Cosmos_Number"] = 2417 -almanac[39]["Eccentricity"] = 2.023000e-003 -almanac[39]["Time_of_Applicability"] = 0.000000e+000 -almanac[39]["Orbital_Inclination"] = 1.132205e+000 -almanac[39]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[39]["SQRT_A"] = 5.050500e+003 -almanac[39]["Right_Ascen_at_Week"] = 3.884018e+000 -almanac[39]["Argument_of_Perigee"] = 2.718313e+000 -almanac[39]["Mean_Anom"] = -3.933620e-001 -almanac[39]["week"] = 1390 -almanac[39]["Commit_date"] = "22.01.2006" -almanac[39]["Life_dates"] = {} - -almanac[40] = {} -almanac[40]["System"] = SAT_SYS_GLONASS -almanac[40]["Number"] = 20 -almanac[40]["Orbital"] = 3 -almanac[40]["GLONASS_Data"] = {} -almanac[40]["GLONASS_Data"]["NKU_Number"] = 793 -almanac[40]["GLONASS_Data"]["Cosmos_Number"] = 2396 -almanac[40]["Eccentricity"] = 1.822000e-003 -almanac[40]["Time_of_Applicability"] = 0.000000e+000 -almanac[40]["Orbital_Inclination"] = 1.129789e+000 -almanac[40]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[40]["SQRT_A"] = 5.050500e+003 -almanac[40]["Right_Ascen_at_Week"] = 3.896863e+000 -almanac[40]["Argument_of_Perigee"] = 2.723776e+000 -almanac[40]["Mean_Anom"] = -1.193647e+000 -almanac[40]["week"] = 1390 -almanac[40]["Commit_date"] = "31.01.2003" -almanac[40]["Life_dates"] = {} - -almanac[41] = {} -almanac[41]["System"] = SAT_SYS_GLONASS -almanac[41]["Number"] = 21 -almanac[41]["Orbital"] = 3 -almanac[41]["GLONASS_Data"] = {} -almanac[41]["GLONASS_Data"]["NKU_Number"] = 792 -almanac[41]["GLONASS_Data"]["Cosmos_Number"] = 2395 -almanac[41]["Eccentricity"] = 5.290000e-004 -almanac[41]["Time_of_Applicability"] = 0.000000e+000 -almanac[41]["Orbital_Inclination"] = 1.129957e+000 -almanac[41]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[41]["SQRT_A"] = 5.050500e+003 -almanac[41]["Right_Ascen_at_Week"] = 3.897806e+000 -almanac[41]["Argument_of_Perigee"] = -9.519367e-001 -almanac[41]["Mean_Anom"] = -4.578920e+000 -almanac[41]["week"] = 1390 -almanac[41]["Commit_date"] = "31.01.2003" -almanac[41]["Life_dates"] = {} - -almanac[42] = {} -almanac[42]["System"] = SAT_SYS_GLONASS -almanac[42]["Number"] = 22 -almanac[42]["Orbital"] = 3 -almanac[42]["GLONASS_Data"] = {} -almanac[42]["GLONASS_Data"]["NKU_Number"] = 791 -almanac[42]["GLONASS_Data"]["Cosmos_Number"] = 2394 -almanac[42]["Eccentricity"] = 9.200000e-005 -almanac[42]["Time_of_Applicability"] = 0.000000e+000 -almanac[42]["Orbital_Inclination"] = 1.129742e+000 -almanac[42]["Rate_of_Right_Ascen"] = -6.740456e-009 -almanac[42]["SQRT_A"] = 5.050500e+003 -almanac[42]["Right_Ascen_at_Week"] = 3.897404e+000 -almanac[42]["Argument_of_Perigee"] = 2.518211e+000 -almanac[42]["Mean_Anom"] = -2.530167e+000 -almanac[42]["week"] = 1390 -almanac[42]["Commit_date"] = "21.01.2003" -almanac[42]["Life_dates"] = {} - -almanac[43] = {} -almanac[43]["System"] = SAT_SYS_GLONASS -almanac[43]["Number"] = 23 -almanac[43]["Orbital"] = 3 -almanac[43]["GLONASS_Data"] = {} -almanac[43]["GLONASS_Data"]["NKU_Number"] = 714 -almanac[43]["GLONASS_Data"]["Cosmos_Number"] = 2419 -almanac[43]["Eccentricity"] = 8.730000e-004 -almanac[43]["Time_of_Applicability"] = 0.000000e+000 -almanac[43]["Orbital_Inclination"] = 1.132105e+000 -almanac[43]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[43]["SQRT_A"] = 5.050500e+003 -almanac[43]["Right_Ascen_at_Week"] = 3.883808e+000 -almanac[43]["Argument_of_Perigee"] = -3.039139e-001 -almanac[43]["Mean_Anom"] = -5.228304e-001 -almanac[43]["week"] = 1390 -almanac[43]["Commit_date"] = "31.08.2006" -almanac[43]["Life_dates"] = {} - -almanac[44] = {} -almanac[44]["System"] = SAT_SYS_GLONASS -almanac[44]["Number"] = 24 -almanac[44]["Orbital"] = 3 -almanac[44]["GLONASS_Data"] = {} -almanac[44]["GLONASS_Data"]["NKU_Number"] = 713 -almanac[44]["GLONASS_Data"]["Cosmos_Number"] = 2418 -almanac[44]["Eccentricity"] = 2.044000e-003 -almanac[44]["Time_of_Applicability"] = 0.000000e+000 -almanac[44]["Orbital_Inclination"] = 1.132430e+000 -almanac[44]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[44]["SQRT_A"] = 5.050500e+003 -almanac[44]["Right_Ascen_at_Week"] = 3.883983e+000 -almanac[44]["Argument_of_Perigee"] = -3.722784e-001 -almanac[44]["Mean_Anom"] = -1.240457e+000 -almanac[44]["week"] = 1390 -almanac[44]["Commit_date"] = "31.08.2006" -almanac[44]["Life_dates"] = {} - ---2 îðáèòàëüíàÿ ïëîñêîñòü, íîìåðà 9-16 -almanac[45] = {} -almanac[45]["System"] = SAT_SYS_GLONASS -almanac[45]["Number"] = 9 -almanac[45]["Orbital"] = 2 -almanac[45]["GLONASS_Data"] = {} -almanac[45]["GLONASS_Data"]["NKU_Number"] = "N/A" -almanac[45]["GLONASS_Data"]["Cosmos_Number"] = "N/A" -almanac[45]["Eccentricity"] = 1.184000e-003 -almanac[45]["Time_of_Applicability"] = 0.000000e+000 -almanac[45]["Orbital_Inclination"] = 1.126443e+000 -almanac[45]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[45]["SQRT_A"] = 5.050500e+003 -almanac[45]["Right_Ascen_at_Week"] = 1.79067e+000 -almanac[45]["Argument_of_Perigee"] = 2.88430067 -almanac[45]["Mean_Anom"] = -5.519651e+000 -almanac[45]["week"] = 1390 -almanac[45]["Commit_date"] = "N/A" -almanac[45]["Life_dates"] = {} - -almanac[46] = {} -almanac[46]["System"] = SAT_SYS_GLONASS -almanac[46]["Number"] = 10 -almanac[46]["Orbital"] = 2 -almanac[46]["GLONASS_Data"] = {} -almanac[46]["GLONASS_Data"]["NKU_Number"] = "N/A" -almanac[46]["GLONASS_Data"]["Cosmos_Number"] = "N/A" -almanac[46]["Eccentricity"] = 1.184000e-003 -almanac[46]["Time_of_Applicability"] = 0.000000e+000 -almanac[46]["Orbital_Inclination"] = 1.126443e+000 -almanac[46]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[46]["SQRT_A"] = 5.050500e+003 -almanac[46]["Right_Ascen_at_Week"] = 1.79067e+000 -almanac[46]["Argument_of_Perigee"] = 3.66930067 -almanac[46]["Mean_Anom"] = -5.519651e+000 -almanac[46]["week"] = 1390 -almanac[46]["Commit_date"] = "N/A" -almanac[46]["Life_dates"] = {} - -almanac[47] = {} -almanac[47]["System"] = SAT_SYS_GLONASS -almanac[47]["Number"] = 11 -almanac[47]["Orbital"] = 2 -almanac[47]["GLONASS_Data"] = {} -almanac[47]["GLONASS_Data"]["NKU_Number"] = "N/A" -almanac[47]["GLONASS_Data"]["Cosmos_Number"] = "N/A" -almanac[47]["Eccentricity"] = 1.184000e-003 -almanac[47]["Time_of_Applicability"] = 0.000000e+000 -almanac[47]["Orbital_Inclination"] = 1.126443e+000 -almanac[47]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[47]["SQRT_A"] = 5.050500e+003 -almanac[47]["Right_Ascen_at_Week"] = 1.79067e+000 -almanac[47]["Argument_of_Perigee"] = 4.45430067 -almanac[47]["Mean_Anom"] = -5.519651e+000 -almanac[47]["week"] = 1390 -almanac[47]["Commit_date"] = "N/A" -almanac[47]["Life_dates"] = {} - -almanac[48] = {} -almanac[48]["System"] = SAT_SYS_GLONASS -almanac[48]["Number"] = 12 -almanac[48]["Orbital"] = 2 -almanac[48]["GLONASS_Data"] = {} -almanac[48]["GLONASS_Data"]["NKU_Number"] = "N/A" -almanac[48]["GLONASS_Data"]["Cosmos_Number"] = "N/A" -almanac[48]["Eccentricity"] = 1.184000e-003 -almanac[48]["Time_of_Applicability"] = 0.000000e+000 -almanac[48]["Orbital_Inclination"] = 1.126443e+000 -almanac[48]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[48]["SQRT_A"] = 5.050500e+003 -almanac[48]["Right_Ascen_at_Week"] = 1.79067e+000 -almanac[48]["Argument_of_Perigee"] = 5.23930067 -almanac[48]["Mean_Anom"] = -5.519651e+000 -almanac[48]["week"] = 1390 -almanac[48]["Commit_date"] = "N/A" -almanac[48]["Life_dates"] = {} - -almanac[49] = {} -almanac[49]["System"] = SAT_SYS_GLONASS -almanac[49]["Number"] = 13 -almanac[49]["Orbital"] = 2 -almanac[49]["GLONASS_Data"] = {} -almanac[49]["GLONASS_Data"]["NKU_Number"] = "N/A" -almanac[49]["GLONASS_Data"]["Cosmos_Number"] = "N/A" -almanac[49]["Eccentricity"] = 1.184000e-003 -almanac[49]["Time_of_Applicability"] = 0.000000e+000 -almanac[49]["Orbital_Inclination"] = 1.126443e+000 -almanac[49]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[49]["SQRT_A"] = 5.050500e+003 -almanac[49]["Right_Ascen_at_Week"] = 1.79067e+000 -almanac[49]["Argument_of_Perigee"] = 6.02430067 -almanac[49]["Mean_Anom"] = -5.519651e+000 -almanac[49]["week"] = 1390 -almanac[49]["Commit_date"] = "N/A" -almanac[49]["Life_dates"] = {} - -almanac[50] = {} -almanac[50]["System"] = SAT_SYS_GLONASS -almanac[50]["Number"] = 14 -almanac[50]["Orbital"] = 2 -almanac[50]["GLONASS_Data"] = {} -almanac[50]["GLONASS_Data"]["NKU_Number"] = "N/A" -almanac[50]["GLONASS_Data"]["Cosmos_Number"] = "N/A" -almanac[50]["Eccentricity"] = 1.184000e-003 -almanac[50]["Time_of_Applicability"] = 0.000000e+000 -almanac[50]["Orbital_Inclination"] = 1.126443e+000 -almanac[50]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[50]["SQRT_A"] = 5.050500e+003 -almanac[50]["Right_Ascen_at_Week"] = 1.79067e+000 -almanac[50]["Argument_of_Perigee"] = 0.52930067 -almanac[50]["Mean_Anom"] = -5.519651e+000 -almanac[50]["week"] = 1390 -almanac[50]["Commit_date"] = "N/A" -almanac[50]["Life_dates"] = {} - -almanac[51] = {} -almanac[51]["System"] = SAT_SYS_GLONASS -almanac[51]["Number"] = 15 -almanac[51]["Orbital"] = 2 -almanac[51]["GLONASS_Data"] = {} -almanac[51]["GLONASS_Data"]["NKU_Number"] = "N/A" -almanac[51]["GLONASS_Data"]["Cosmos_Number"] = "N/A" -almanac[51]["Eccentricity"] = 1.184000e-003 -almanac[51]["Time_of_Applicability"] = 0.000000e+000 -almanac[51]["Orbital_Inclination"] = 1.126443e+000 -almanac[51]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[51]["SQRT_A"] = 5.050500e+003 -almanac[51]["Right_Ascen_at_Week"] = 1.79067e+000 -almanac[51]["Argument_of_Perigee"] = 1.31430067 -almanac[51]["Mean_Anom"] = -5.519651e+000 -almanac[51]["week"] = 1390 -almanac[51]["Commit_date"] = "N/A" -almanac[51]["Life_dates"] = {} - -almanac[52] = {} -almanac[52]["System"] = SAT_SYS_GLONASS -almanac[52]["Number"] = 16 -almanac[52]["Orbital"] = 2 -almanac[52]["GLONASS_Data"] = {} -almanac[52]["GLONASS_Data"]["NKU_Number"] = "N/A" -almanac[52]["GLONASS_Data"]["Cosmos_Number"] = "N/A" -almanac[52]["Eccentricity"] = 1.184000e-003 -almanac[52]["Time_of_Applicability"] = 0.000000e+000 -almanac[52]["Orbital_Inclination"] = 1.126443e+000 -almanac[52]["Rate_of_Right_Ascen"] = 0.000000e+000 -almanac[52]["SQRT_A"] = 5.050500e+003 -almanac[52]["Right_Ascen_at_Week"] = 1.79067e+000 -almanac[52]["Argument_of_Perigee"] = 2.09930067 -almanac[52]["Mean_Anom"] = -5.519651e+000 -almanac[52]["week"] = 1390 -almanac[52]["Commit_date"] = "N/A" -almanac[52]["Life_dates"] = {} - -SA_mode = false -AS_mode = false diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Scripts/World/birds.lua b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Scripts/World/birds.lua deleted file mode 100644 index 8aee1f700..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/Scripts/World/birds.lua +++ /dev/null @@ -1,27 +0,0 @@ -birds_avail = true --Birds availability. false - there is no birds -birds_maximum_hrad = 200 --Maximum altitude above ground al sea level bird could be met -birds_maximum_absolute_height = 8000 --Maximum absolute altitude bird could be met -birds_minimum_velocity = 40 --Minimum velocity bird could be met -birds_delta_time = 3.55 -birds_probability = {0.006333333*150, - 0.004166667*150, - 0.001966667*150, - 0.001090909*150, - 0.000741818*150, - 0.0006*150, - 0.000510545*150, - 0.000447273*150, - 0.000389455*150, - 0.000349091*150, - 0.000310909*150, - 0.000282545*150, - 0.000250909*150, - 0.000220364*150, - 0.000196364*150, - 0.000174545*150, - 0.000152727*150, - 0.000128727*150, - 0.000103636*150, - 7.63636E-05*150, - 0*150 -} diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/VHF_RADIO/SETTINGS.lua b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/VHF_RADIO/SETTINGS.lua deleted file mode 100644 index 92c6a42c4..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/VHF_RADIO/SETTINGS.lua +++ /dev/null @@ -1,14 +0,0 @@ -settings= -{ - ["dials"]= - { - ["channel"]=-1, - }, - ["presets"]= - { - [1]=124000000, - [2]=124000000, - [3]=131000000, - [4]=139000000, - }, -} diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/Moose.lua b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/Moose.lua deleted file mode 100644 index f4f99d16b..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/Moose.lua +++ /dev/null @@ -1,45 +0,0 @@ -env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' ) -env.info( 'Moose Generation Timestamp: 20160616_1305' ) - -local base = _G - -Include = {} - -Include.Path = function() - local str = debug.getinfo(2, "S").source - return str:match("(.*/)"):sub(1,-2):gsub("\\","/") -end - -Include.File = function( IncludeFile ) - if not Include.Files[ IncludeFile ] then - Include.Files[IncludeFile] = IncludeFile - env.info( "Include:" .. IncludeFile .. " from " .. Include.ProgramPath ) - local f = assert( base.loadfile( Include.ProgramPath .. IncludeFile .. ".lua" ) ) - if f == nil then - env.info( "Include:" .. IncludeFile .. " from " .. Include.MissionPath ) - local f = assert( base.loadfile( Include.MissionPath .. IncludeFile .. ".lua" ) ) - if f == nil then - error ("Could not load MOOSE file " .. IncludeFile .. ".lua" ) - else - env.info( "Include:" .. IncludeFile .. " loaded from " .. Include.MissionPath ) - return f() - end - else - env.info( "Include:" .. IncludeFile .. " loaded from " .. Include.ProgramPath ) - return f() - end - end -end - -Include.ProgramPath = "Scripts/Moose/" -Include.MissionPath = Include.Path() - -env.info( "Include.ProgramPath = " .. Include.ProgramPath) -env.info( "Include.MissionPath = " .. Include.MissionPath) - -Include.Files = {} - -Include.File( "Moose" ) - -BASE:TraceOnOff( true ) -env.info( '*** MOOSE INCLUDE END *** ' ) diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/Moose_Test_AIBALANCER.lua b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/Moose_Test_AIBALANCER.lua deleted file mode 100644 index ca7e91a91..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/Moose_Test_AIBALANCER.lua +++ /dev/null @@ -1,11 +0,0 @@ - -local US_PlanesClientSet = SET_CLIENT:New():FilterCountries( "USA" ):FilterCategories( "plane" ):FilterStart() -local US_PlanesSpawn = SPAWN:New( "AI US" ) -local US_AIBalancer = AIBALANCER:New( US_PlanesClientSet, US_PlanesSpawn ) - -local RU_PlanesClientSet = SET_CLIENT:New():FilterCountries( "RUSSIA" ):FilterCategories( "plane" ):FilterStart() -local RU_PlanesSpawn = SPAWN:New( "AI RU" ) -local RU_AIBalancer = AIBALANCER:New( RU_PlanesClientSet, RU_PlanesSpawn ) - -local RU_AirbasesSet = SET_AIRBASE:New():FilterCoalitions("red"):FilterStart() -RU_AIBalancer:ReturnToAirbases( 2000, RU_AirbasesSet ) \ No newline at end of file diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/dictionary b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/dictionary deleted file mode 100644 index 8e11eb5fc..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/dictionary +++ /dev/null @@ -1,57 +0,0 @@ -dictionary = -{ - ["DictKey_UnitName_43"] = "Client 5", - ["DictKey_GroupName_42"] = "Client Group 5", - ["DictKey_GroupName_30"] = "AI RU", - ["DictKey_UnitName_19"] = "Client 3", - ["DictKey_GroupName_24"] = "AI RU", - ["DictKey_GroupName_7"] = "Client Group 1", - ["DictKey_WptName_23"] = "", - ["DictKey_WptName_41"] = "", - ["DictKey_WptName_38"] = "", - ["DictKey_GroupName_33"] = "AI RU", - ["DictKey_GroupName_21"] = "Client Group 4", - ["DictKey_UnitName_31"] = "AI RU", - ["DictKey_WptName_48"] = "", - ["DictKey_GroupName_39"] = "Client Group 6", - ["DictKey_WptName_12"] = "", - ["DictKey_WptName_26"] = "", - ["DictKey_sortie_4"] = "", - ["DictKey_UnitName_25"] = "AI RU", - ["DictKey_WptName_49"] = "", - ["DictKey_WptName_32"] = "", - ["DictKey_WptName_50"] = "", - ["DictKey_ActionText_17"] = "BASE:TraceClass(\"SET_CLIENT\")\ -BASE:TraceClass(\"CLIENT\")\ -BASE:TraceClass(\"AIBALANCER\")\ -BASE:TraceLevel(3)", - ["DictKey_UnitName_28"] = "AI RU", - ["DictKey_WptName_52"] = "", - ["DictKey_GroupName_36"] = "AI RU", - ["DictKey_GroupName_18"] = "Client Group 3", - ["DictKey_WptName_47"] = "", - ["DictKey_UnitName_40"] = "Client 6", - ["DictKey_UnitName_11"] = "Client 2", - ["DictKey_WptName_29"] = "", - ["DictKey_UnitName_15"] = "AI US", - ["DictKey_WptName_9"] = "", - ["DictKey_GroupName_10"] = "Client Group 2", - ["DictKey_WptName_20"] = "", - ["DictKey_UnitName_37"] = "AI RU", - ["DictKey_UnitName_34"] = "AI RU", - ["DictKey_descriptionBlueTask_3"] = "", - ["DictKey_descriptionText_1"] = "", - ["DictKey_GroupName_45"] = "Client Group 7", - ["DictKey_WptName_35"] = "", - ["DictKey_UnitName_22"] = "Client 4", - ["DictKey_GroupName_14"] = "AI US", - ["DictKey_WptName_16"] = "", - ["DictKey_WptName_44"] = "", - ["DictKey_WptName_13"] = "", - ["DictKey_UnitName_46"] = "Client 7", - ["DictKey_WptName_51"] = "", - ["DictKey_WptName_53"] = "", - ["DictKey_descriptionRedTask_2"] = "", - ["DictKey_GroupName_27"] = "AI RU", - ["DictKey_UnitName_8"] = "Client 1", -} -- end of dictionary diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/mapResource b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/mapResource deleted file mode 100644 index 2ec60591c..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/l10n/DEFAULT/mapResource +++ /dev/null @@ -1,5 +0,0 @@ -mapResource = -{ - ["ResKey_Action_5"] = "Moose.lua", - ["ResKey_Action_6"] = "Moose_Test_AIBALANCER.lua", -} -- end of mapResource diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/mission b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/mission deleted file mode 100644 index afdf1e489..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/mission +++ /dev/null @@ -1,1625 +0,0 @@ -mission = -{ - ["trig"] = - { - ["actions"] = - { - [1] = "a_do_script_file(getValueResourceByKey(\"ResKey_Action_5\"));", - [2] = "a_do_script(getValueDictByKey(\"DictKey_ActionText_17\"));", - [3] = "a_do_script_file(getValueResourceByKey(\"ResKey_Action_6\"));", - }, -- end of ["actions"] - ["events"] = - { - }, -- end of ["events"] - ["custom"] = - { - }, -- end of ["custom"] - ["func"] = - { - }, -- end of ["func"] - ["flag"] = - { - [1] = true, - [2] = true, - [3] = true, - }, -- end of ["flag"] - ["conditions"] = - { - [1] = "return(true)", - [2] = "return(true)", - [3] = "return(true)", - }, -- end of ["conditions"] - ["customStartup"] = - { - }, -- end of ["customStartup"] - ["funcStartup"] = - { - [1] = "if mission.trig.conditions[1]() then mission.trig.actions[1]() end", - [2] = "if mission.trig.conditions[2]() then mission.trig.actions[2]() end", - [3] = "if mission.trig.conditions[3]() then mission.trig.actions[3]() end", - }, -- end of ["funcStartup"] - }, -- end of ["trig"] - ["result"] = - { - ["offline"] = - { - ["conditions"] = - { - }, -- end of ["conditions"] - ["actions"] = - { - }, -- end of ["actions"] - ["func"] = - { - }, -- end of ["func"] - }, -- end of ["offline"] - ["total"] = 0, - ["blue"] = - { - ["conditions"] = - { - }, -- end of ["conditions"] - ["actions"] = - { - }, -- end of ["actions"] - ["func"] = - { - }, -- end of ["func"] - }, -- end of ["blue"] - ["red"] = - { - ["conditions"] = - { - }, -- end of ["conditions"] - ["actions"] = - { - }, -- end of ["actions"] - ["func"] = - { - }, -- end of ["func"] - }, -- end of ["red"] - }, -- end of ["result"] - ["maxDictId"] = 53, - ["groundControl"] = - { - ["isPilotControlVehicles"] = false, - ["roles"] = - { - ["artillery_commander"] = - { - ["blue"] = 0, - ["red"] = 0, - }, -- end of ["artillery_commander"] - ["instructor"] = - { - ["blue"] = 0, - ["red"] = 0, - }, -- end of ["instructor"] - ["observer"] = - { - ["blue"] = 0, - ["red"] = 0, - }, -- end of ["observer"] - ["forward_observer"] = - { - ["blue"] = 0, - ["red"] = 0, - }, -- end of ["forward_observer"] - }, -- end of ["roles"] - }, -- end of ["groundControl"] - ["usedModules"] = - { - ["F-5E/E-3 by Belsimtek"] = true, - ["M-2000C by RAZBAM Sims"] = true, - ["SA342 AI by Polychop-Simulations"] = true, - ["Hawk T.1A by VEAO Simulations"] = true, - ["MiG-15bis AI by Eagle Dynamics"] = true, - ["C-101 Aviojet by AvioDev"] = true, - ["F-86F Sabre by Belsimtek"] = true, - ["F-15C"] = false, - ["M-2000C AI by RAZBAM Sims"] = true, - ["SA342 Gazelle by Polychop-Simulations"] = true, - ["Ka-50 Black Shark by Eagle Dynamics"] = true, - ["World War II AI Units by Eagle Dynamics"] = true, - ["MiG-21Bis by Leatherneck Simulations"] = false, - ["F-86F Sabre AI by Eagle Dynamics"] = true, - ["TF-51D Mustang by Eagle Dynamics"] = true, - ["Su-25T by Eagle Dynamics"] = true, - ["Mi-8MTV2 Hip by Belsimtek"] = true, - ["FW-190D9 Dora by Eagle Dynamics"] = true, - ["Su-27 Flanker by Eagle Dynamics"] = false, - ["L-39C"] = true, - ["UH-1H Huey by Belsimtek"] = true, - ["C-101 Aviojet"] = true, - ["./CoreMods/aircraft/MQ-9 Reaper"] = true, - ["Combined Arms by Eagle Dynamics"] = true, - ["Su-25A by Eagle Dynamics"] = false, - ["MiG-21Bis AI by Leatherneck Simulations"] = true, - ["L-39C/ZA by Eagle Dynamics"] = true, - ["Bf 109 K-4 by Eagle Dynamics"] = true, - ["Caucasus"] = true, - ["A-10A by Eagle Dynamics"] = false, - ["Hawk T.1A AI by VEAO Simulations"] = true, - ["P-51D Mustang by Eagle Dynamics"] = true, - ["MiG-15bis by Belsimtek"] = true, - ["A-10C Warthog by Eagle Dynamics"] = true, - ["Flaming Cliffs by Eagle Dynamics"] = true, - }, -- end of ["usedModules"] - ["triggers"] = - { - ["zones"] = - { - }, -- end of ["zones"] - }, -- end of ["triggers"] - ["weather"] = - { - ["atmosphere_type"] = 0, - ["wind"] = - { - ["at8000"] = - { - ["speed"] = 0, - ["dir"] = 0, - }, -- end of ["at8000"] - ["atGround"] = - { - ["speed"] = 0, - ["dir"] = 0, - }, -- end of ["atGround"] - ["at2000"] = - { - ["speed"] = 0, - ["dir"] = 0, - }, -- end of ["at2000"] - }, -- end of ["wind"] - ["enable_fog"] = false, - ["turbulence"] = - { - ["at8000"] = 0, - ["atGround"] = 0, - ["at2000"] = 0, - }, -- end of ["turbulence"] - ["season"] = - { - ["iseason"] = 1, - ["temperature"] = 20, - }, -- end of ["season"] - ["type_weather"] = 0, - ["qnh"] = 760, - ["cyclones"] = - { - }, -- end of ["cyclones"] - ["name"] = "Winter, clean sky", - ["fog"] = - { - ["thickness"] = 0, - ["visibility"] = 25, - ["density"] = 7, - }, -- end of ["fog"] - ["visibility"] = - { - ["distance"] = 80000, - }, -- end of ["visibility"] - ["clouds"] = - { - ["thickness"] = 200, - ["density"] = 0, - ["base"] = 300, - ["iprecptns"] = 0, - }, -- end of ["clouds"] - }, -- end of ["weather"] - ["theatre"] = "Caucasus", - ["needModules"] = - { - ["TF-51D Mustang by Eagle Dynamics"] = "TF-51D Mustang by Eagle Dynamics", - }, -- end of ["needModules"] - ["map"] = - { - ["centerY"] = 332658.57142857, - ["zoom"] = 500000, - ["centerX"] = -9701.4285714281, - }, -- end of ["map"] - ["coalitions"] = - { - ["blue"] = - { - [1] = 11, - [2] = 4, - [3] = 6, - [4] = 16, - [5] = 13, - [6] = 15, - [7] = 9, - [8] = 8, - [9] = 12, - [10] = 2, - [11] = 3, - [12] = 5, - [13] = 10, - [14] = 20, - [15] = 21, - [16] = 40, - [17] = 26, - [18] = 45, - [19] = 28, - }, -- end of ["blue"] - ["neutrals"] = - { - [1] = 7, - [2] = 17, - [3] = 22, - [4] = 23, - [5] = 25, - [6] = 29, - [7] = 30, - [8] = 31, - [9] = 32, - [10] = 33, - [11] = 35, - [12] = 36, - [13] = 39, - [14] = 41, - [15] = 42, - [16] = 44, - [17] = 46, - }, -- end of ["neutrals"] - ["red"] = - { - [1] = 0, - [2] = 1, - [3] = 18, - [4] = 19, - [5] = 37, - [6] = 24, - [7] = 27, - [8] = 43, - [9] = 47, - [10] = 34, - [11] = 38, - }, -- end of ["red"] - }, -- end of ["coalitions"] - ["descriptionText"] = "DictKey_descriptionText_1", - ["pictureFileNameR"] = - { - }, -- end of ["pictureFileNameR"] - ["descriptionBlueTask"] = "DictKey_descriptionBlueTask_3", - ["descriptionRedTask"] = "DictKey_descriptionRedTask_2", - ["pictureFileNameB"] = - { - }, -- end of ["pictureFileNameB"] - ["trigrules"] = - { - [1] = - { - ["rules"] = - { - }, -- end of ["rules"] - ["eventlist"] = "", - ["predicate"] = "triggerStart", - ["actions"] = - { - [1] = - { - ["file"] = "ResKey_Action_5", - ["predicate"] = "a_do_script_file", - ["ai_task"] = - { - [1] = "", - [2] = "", - }, -- end of ["ai_task"] - }, -- end of [1] - }, -- end of ["actions"] - ["comment"] = "Load Moose", - }, -- end of [1] - [2] = - { - ["rules"] = - { - }, -- end of ["rules"] - ["eventlist"] = "", - ["predicate"] = "triggerStart", - ["actions"] = - { - [1] = - { - ["KeyDict_text"] = "DictKey_ActionText_17", - ["text"] = "DictKey_ActionText_17", - ["predicate"] = "a_do_script", - ["ai_task"] = - { - [1] = "", - [2] = "", - }, -- end of ["ai_task"] - }, -- end of [1] - }, -- end of ["actions"] - ["comment"] = "Trace", - }, -- end of [2] - [3] = - { - ["rules"] = - { - }, -- end of ["rules"] - ["eventlist"] = "", - ["predicate"] = "triggerStart", - ["actions"] = - { - [1] = - { - ["file"] = "ResKey_Action_6", - ["predicate"] = "a_do_script_file", - ["ai_task"] = - { - [1] = "", - [2] = "", - }, -- end of ["ai_task"] - }, -- end of [1] - }, -- end of ["actions"] - ["comment"] = "Load Mission", - }, -- end of [3] - }, -- end of ["trigrules"] - ["coalition"] = - { - ["blue"] = - { - ["bullseye"] = - { - ["y"] = 617414, - ["x"] = -291014, - }, -- end of ["bullseye"] - ["nav_points"] = - { - }, -- end of ["nav_points"] - ["name"] = "blue", - ["country"] = - { - [1] = - { - ["id"] = 11, - ["name"] = "Belgium", - }, -- end of [1] - [2] = - { - ["id"] = 4, - ["name"] = "UK", - }, -- end of [2] - [3] = - { - ["id"] = 6, - ["name"] = "Germany", - }, -- end of [3] - [4] = - { - ["id"] = 16, - ["name"] = "Georgia", - }, -- end of [4] - [5] = - { - ["id"] = 13, - ["name"] = "Denmark", - }, -- end of [5] - [6] = - { - ["id"] = 15, - ["name"] = "Israel", - }, -- end of [6] - [7] = - { - ["id"] = 9, - ["name"] = "Spain", - }, -- end of [7] - [8] = - { - ["id"] = 8, - ["name"] = "Canada", - }, -- end of [8] - [9] = - { - ["id"] = 12, - ["name"] = "Norway", - }, -- end of [9] - [10] = - { - ["id"] = 2, - ["name"] = "USA", - ["plane"] = - { - ["group"] = - { - [1] = - { - ["modulation"] = 0, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "Reconnaissance", - ["uncontrolled"] = false, - ["route"] = - { - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParking", - ["action"] = "From Parking Area", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 13, - ["y"] = 369029.71875, - ["x"] = 11250.362304688, - ["name"] = "DictKey_WptName_9", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 1, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "Bare Metal", - ["skill"] = "Client", - ["parking"] = "3", - ["speed"] = 138.88888888889, - ["type"] = "TF-51D", - ["Radio"] = - { - [1] = - { - ["channels"] = - { - [1] = 124, - [2] = 124, - [4] = 139, - [3] = 131, - }, -- end of ["channels"] - }, -- end of [1] - }, -- end of ["Radio"] - ["unitId"] = 1, - ["psi"] = 0, - ["y"] = 369029.71875, - ["x"] = 11250.362304688, - ["name"] = "DictKey_UnitName_8", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = 340.68, - ["flare"] = 0, - ["chaff"] = 0, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = 0, - ["callsign"] = - { - [1] = 1, - [2] = 1, - [3] = 1, - ["name"] = "Enfield11", - }, -- end of ["callsign"] - ["onboard_num"] = "010", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 369029.71875, - ["x"] = 11250.362304688, - ["name"] = "DictKey_GroupName_7", - ["communication"] = true, - ["start_time"] = 0, - ["frequency"] = 124, - }, -- end of [1] - [2] = - { - ["modulation"] = 0, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "Reconnaissance", - ["uncontrolled"] = false, - ["route"] = - { - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParking", - ["action"] = "From Parking Area", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 13, - ["y"] = 369103.96875, - ["x"] = 11209.124023438, - ["name"] = "DictKey_WptName_12", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 2, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "Bare Metal", - ["skill"] = "Client", - ["parking"] = "4", - ["speed"] = 138.88888888889, - ["type"] = "TF-51D", - ["Radio"] = - { - [1] = - { - ["channels"] = - { - [1] = 124, - [2] = 124, - [4] = 139, - [3] = 131, - }, -- end of ["channels"] - }, -- end of [1] - }, -- end of ["Radio"] - ["unitId"] = 2, - ["psi"] = 0, - ["y"] = 369103.96875, - ["x"] = 11209.124023438, - ["name"] = "DictKey_UnitName_11", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = 340.68, - ["flare"] = 0, - ["chaff"] = 0, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = 0, - ["callsign"] = - { - [1] = 2, - [2] = 1, - [3] = 1, - ["name"] = "Springfield11", - }, -- end of ["callsign"] - ["onboard_num"] = "011", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 369103.96875, - ["x"] = 11209.124023438, - ["name"] = "DictKey_GroupName_10", - ["communication"] = true, - ["start_time"] = 0, - ["frequency"] = 124, - }, -- end of [2] - [3] = - { - ["lateActivation"] = true, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "Reconnaissance", - ["uncontrolled"] = false, - ["route"] = - { - ["routeRelativeTOT"] = true, - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParkingHot", - ["action"] = "From Parking Area Hot", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 13, - ["y"] = 369131.84375, - ["x"] = 11297.9140625, - ["name"] = "DictKey_WptName_16", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 3, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "Bare Metal", - ["skill"] = "High", - ["parking"] = "5", - ["speed"] = 138.88888888889, - ["type"] = "TF-51D", - ["unitId"] = 3, - ["psi"] = 0, - ["y"] = 369131.84375, - ["x"] = 11297.9140625, - ["name"] = "DictKey_UnitName_15", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = 340.68, - ["flare"] = 0, - ["chaff"] = 0, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = 0, - ["callsign"] = - { - [1] = 3, - [2] = 1, - [3] = 1, - ["name"] = "Uzi11", - }, -- end of ["callsign"] - ["onboard_num"] = "012", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 369131.84375, - ["x"] = 11297.9140625, - ["name"] = "DictKey_GroupName_14", - ["communication"] = true, - ["start_time"] = 0, - ["modulation"] = 0, - ["frequency"] = 124, - }, -- end of [3] - }, -- end of ["group"] - }, -- end of ["plane"] - }, -- end of [10] - [11] = - { - ["id"] = 3, - ["name"] = "Turkey", - }, -- end of [11] - [12] = - { - ["id"] = 5, - ["name"] = "France", - }, -- end of [12] - [13] = - { - ["id"] = 10, - ["name"] = "The Netherlands", - }, -- end of [13] - [14] = - { - ["id"] = 20, - ["name"] = "Italy", - }, -- end of [14] - [15] = - { - ["id"] = 21, - ["name"] = "Australia", - }, -- end of [15] - [16] = - { - ["id"] = 40, - ["name"] = "Poland", - }, -- end of [16] - [17] = - { - ["id"] = 26, - ["name"] = "Czech Republic", - }, -- end of [17] - [18] = - { - ["id"] = 45, - ["name"] = "South Korea", - }, -- end of [18] - [19] = - { - ["id"] = 28, - ["name"] = "Croatia", - }, -- end of [19] - }, -- end of ["country"] - }, -- end of ["blue"] - ["red"] = - { - ["bullseye"] = - { - ["y"] = 371700, - ["x"] = 11557, - }, -- end of ["bullseye"] - ["nav_points"] = - { - }, -- end of ["nav_points"] - ["name"] = "red", - ["country"] = - { - [1] = - { - ["id"] = 0, - ["name"] = "Russia", - ["plane"] = - { - ["group"] = - { - [1] = - { - ["modulation"] = 0, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "CAS", - ["uncontrolled"] = false, - ["route"] = - { - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParking", - ["action"] = "From Parking Area", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 15, - ["y"] = 293785.125, - ["x"] = -7523.8505859375, - ["name"] = "DictKey_WptName_20", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - [1] = - { - ["number"] = 1, - ["key"] = "CAS", - ["id"] = "EngageTargets", - ["enabled"] = true, - ["auto"] = true, - ["params"] = - { - ["targetTypes"] = - { - [1] = "Helicopters", - [2] = "Ground Units", - [3] = "Light armed ships", - }, -- end of ["targetTypes"] - ["priority"] = 0, - }, -- end of ["params"] - }, -- end of [1] - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 4, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "af standard 1", - ["skill"] = "Client", - ["parking"] = "2", - ["speed"] = 138.88888888889, - ["type"] = "Su-25T", - ["unitId"] = 4, - ["psi"] = 0, - ["y"] = 293785.125, - ["x"] = -7523.8505859375, - ["name"] = "DictKey_UnitName_19", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = "3790", - ["flare"] = 128, - ["chaff"] = 128, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = 0, - ["callsign"] = 101, - ["onboard_num"] = "013", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 293785.125, - ["x"] = -7523.8505859375, - ["name"] = "DictKey_GroupName_18", - ["communication"] = true, - ["start_time"] = 0, - ["frequency"] = 124, - }, -- end of [1] - [2] = - { - ["modulation"] = 0, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "CAS", - ["uncontrolled"] = false, - ["route"] = - { - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParking", - ["action"] = "From Parking Area", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 15, - ["y"] = 294994.1875, - ["x"] = -6702.66796875, - ["name"] = "DictKey_WptName_23", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - [1] = - { - ["number"] = 1, - ["key"] = "CAS", - ["id"] = "EngageTargets", - ["enabled"] = true, - ["auto"] = true, - ["params"] = - { - ["targetTypes"] = - { - [1] = "Helicopters", - [2] = "Ground Units", - [3] = "Light armed ships", - }, -- end of ["targetTypes"] - ["priority"] = 0, - }, -- end of ["params"] - }, -- end of [1] - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 5, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "af standard 1", - ["skill"] = "Client", - ["parking"] = "75", - ["speed"] = 138.88888888889, - ["type"] = "Su-25T", - ["unitId"] = 5, - ["psi"] = 0, - ["y"] = 294994.1875, - ["x"] = -6702.66796875, - ["name"] = "DictKey_UnitName_22", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = "3790", - ["flare"] = 128, - ["chaff"] = 128, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = 0, - ["callsign"] = 101, - ["onboard_num"] = "013", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 294994.1875, - ["x"] = -6702.66796875, - ["name"] = "DictKey_GroupName_21", - ["communication"] = true, - ["start_time"] = 0, - ["frequency"] = 124, - }, -- end of [2] - [3] = - { - ["lateActivation"] = true, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "CAS", - ["uncontrolled"] = false, - ["route"] = - { - ["routeRelativeTOT"] = true, - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParking", - ["action"] = "From Parking Area", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 15, - ["y"] = 294155.125, - ["x"] = -7498.103515625, - ["name"] = "DictKey_WptName_26", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - [1] = - { - ["number"] = 1, - ["key"] = "CAS", - ["id"] = "EngageTargets", - ["enabled"] = true, - ["auto"] = true, - ["params"] = - { - ["targetTypes"] = - { - [1] = "Helicopters", - [2] = "Ground Units", - [3] = "Light armed ships", - }, -- end of ["targetTypes"] - ["priority"] = 0, - }, -- end of ["params"] - }, -- end of [1] - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - [2] = - { - ["alt"] = 313, - ["type"] = "Turning Point", - ["action"] = "Turning Point", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 274.67610245895, - ["y"] = 279801.42857143, - ["x"] = -42844.285714285, - ["name"] = "DictKey_WptName_48", - ["speed"] = 138.88888888889, - ["ETA_locked"] = false, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [2] - [3] = - { - ["alt"] = 144, - ["type"] = "Turning Point", - ["action"] = "Turning Point", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 653.69455551249, - ["y"] = 229515.71428572, - ["x"] = -27272.857142857, - ["name"] = "DictKey_WptName_49", - ["speed"] = 138.88888888889, - ["ETA_locked"] = false, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [3] - [4] = - { - ["alt"] = 45, - ["type"] = "Land", - ["action"] = "Landing", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 527.81058817743, - ["airdromeId"] = 12, - ["y"] = 243127.2973737, - ["x"] = -5406.2803440839, - ["name"] = "DictKey_WptName_53", - ["speed"] = 138.88888888889, - ["ETA_locked"] = false, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [4] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 6, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "af standard 1", - ["skill"] = "High", - ["parking"] = "91", - ["speed"] = 138.88888888889, - ["type"] = "Su-25T", - ["unitId"] = 6, - ["psi"] = 2.755848169059, - ["y"] = 294155.125, - ["x"] = -7498.103515625, - ["name"] = "DictKey_UnitName_25", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = "3790", - ["flare"] = 128, - ["chaff"] = 128, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = -2.755848169059, - ["callsign"] = 101, - ["onboard_num"] = "013", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 294155.125, - ["x"] = -7498.103515625, - ["name"] = "DictKey_GroupName_24", - ["communication"] = true, - ["start_time"] = 0, - ["modulation"] = 0, - ["frequency"] = 124, - }, -- end of [3] - [4] = - { - ["modulation"] = 0, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "CAS", - ["uncontrolled"] = false, - ["route"] = - { - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParking", - ["action"] = "From Parking Area", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 15, - ["y"] = 295139.9375, - ["x"] = -6351.4077148438, - ["name"] = "DictKey_WptName_41", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - [1] = - { - ["number"] = 1, - ["key"] = "CAS", - ["id"] = "EngageTargets", - ["enabled"] = true, - ["auto"] = true, - ["params"] = - { - ["targetTypes"] = - { - [1] = "Helicopters", - [2] = "Ground Units", - [3] = "Light armed ships", - }, -- end of ["targetTypes"] - ["priority"] = 0, - }, -- end of ["params"] - }, -- end of [1] - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 11, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "af standard 1", - ["skill"] = "Client", - ["parking"] = "107", - ["speed"] = 138.88888888889, - ["type"] = "Su-25T", - ["unitId"] = 11, - ["psi"] = 0, - ["y"] = 295139.9375, - ["x"] = -6351.4077148438, - ["name"] = "DictKey_UnitName_40", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = "3790", - ["flare"] = 128, - ["chaff"] = 128, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = 0, - ["callsign"] = 101, - ["onboard_num"] = "013", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 295139.9375, - ["x"] = -6351.4077148438, - ["name"] = "DictKey_GroupName_39", - ["communication"] = true, - ["start_time"] = 0, - ["frequency"] = 124, - }, -- end of [4] - [5] = - { - ["modulation"] = 0, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "CAS", - ["uncontrolled"] = false, - ["route"] = - { - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParking", - ["action"] = "From Parking Area", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 15, - ["y"] = 295287.09375, - ["x"] = -6172.1333007813, - ["name"] = "DictKey_WptName_44", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - [1] = - { - ["number"] = 1, - ["key"] = "CAS", - ["id"] = "EngageTargets", - ["enabled"] = true, - ["auto"] = true, - ["params"] = - { - ["targetTypes"] = - { - [1] = "Helicopters", - [2] = "Ground Units", - [3] = "Light armed ships", - }, -- end of ["targetTypes"] - ["priority"] = 0, - }, -- end of ["params"] - }, -- end of [1] - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 12, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "af standard 1", - ["skill"] = "Client", - ["parking"] = "62", - ["speed"] = 138.88888888889, - ["type"] = "Su-25T", - ["unitId"] = 12, - ["psi"] = 0, - ["y"] = 295287.09375, - ["x"] = -6172.1333007813, - ["name"] = "DictKey_UnitName_43", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = "3790", - ["flare"] = 128, - ["chaff"] = 128, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = 0, - ["callsign"] = 101, - ["onboard_num"] = "013", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 295287.09375, - ["x"] = -6172.1333007813, - ["name"] = "DictKey_GroupName_42", - ["communication"] = true, - ["start_time"] = 0, - ["frequency"] = 124, - }, -- end of [5] - [6] = - { - ["modulation"] = 0, - ["tasks"] = - { - }, -- end of ["tasks"] - ["radioSet"] = false, - ["task"] = "CAS", - ["uncontrolled"] = false, - ["route"] = - { - ["points"] = - { - [1] = - { - ["alt"] = 88, - ["type"] = "TakeOffParking", - ["action"] = "From Parking Area", - ["alt_type"] = "BARO", - ["formation_template"] = "", - ["properties"] = - { - ["vnav"] = 1, - ["scale"] = 0, - ["angle"] = 0, - ["vangle"] = 0, - ["steer"] = 2, - }, -- end of ["properties"] - ["ETA"] = 0, - ["airdromeId"] = 15, - ["y"] = 295051.375, - ["x"] = -6629.2661132813, - ["name"] = "DictKey_WptName_47", - ["speed"] = 138.88888888889, - ["ETA_locked"] = true, - ["task"] = - { - ["id"] = "ComboTask", - ["params"] = - { - ["tasks"] = - { - [1] = - { - ["number"] = 1, - ["key"] = "CAS", - ["id"] = "EngageTargets", - ["enabled"] = true, - ["auto"] = true, - ["params"] = - { - ["targetTypes"] = - { - [1] = "Helicopters", - [2] = "Ground Units", - [3] = "Light armed ships", - }, -- end of ["targetTypes"] - ["priority"] = 0, - }, -- end of ["params"] - }, -- end of [1] - }, -- end of ["tasks"] - }, -- end of ["params"] - }, -- end of ["task"] - ["speed_locked"] = true, - }, -- end of [1] - }, -- end of ["points"] - }, -- end of ["route"] - ["groupId"] = 13, - ["hidden"] = false, - ["units"] = - { - [1] = - { - ["alt"] = 88, - ["alt_type"] = "BARO", - ["livery_id"] = "af standard 1", - ["skill"] = "Client", - ["parking"] = "76", - ["speed"] = 138.88888888889, - ["type"] = "Su-25T", - ["unitId"] = 13, - ["psi"] = 0, - ["y"] = 295051.375, - ["x"] = -6629.2661132813, - ["name"] = "DictKey_UnitName_46", - ["payload"] = - { - ["pylons"] = - { - }, -- end of ["pylons"] - ["fuel"] = "3790", - ["flare"] = 128, - ["chaff"] = 128, - ["gun"] = 100, - }, -- end of ["payload"] - ["heading"] = 0, - ["callsign"] = 101, - ["onboard_num"] = "013", - }, -- end of [1] - }, -- end of ["units"] - ["y"] = 295051.375, - ["x"] = -6629.2661132813, - ["name"] = "DictKey_GroupName_45", - ["communication"] = true, - ["start_time"] = 0, - ["frequency"] = 124, - }, -- end of [6] - }, -- end of ["group"] - }, -- end of ["plane"] - }, -- end of [1] - [2] = - { - ["id"] = 1, - ["name"] = "Ukraine", - }, -- end of [2] - [3] = - { - ["id"] = 18, - ["name"] = "Abkhazia", - }, -- end of [3] - [4] = - { - ["id"] = 19, - ["name"] = "South Ossetia", - }, -- end of [4] - [5] = - { - ["id"] = 37, - ["name"] = "Kazakhstan", - }, -- end of [5] - [6] = - { - ["id"] = 24, - ["name"] = "Belarus", - }, -- end of [6] - [7] = - { - ["id"] = 27, - ["name"] = "China", - }, -- end of [7] - [8] = - { - ["id"] = 43, - ["name"] = "Serbia", - }, -- end of [8] - [9] = - { - ["id"] = 47, - ["name"] = "Syria", - }, -- end of [9] - [10] = - { - ["id"] = 34, - ["name"] = "Iran", - }, -- end of [10] - [11] = - { - ["id"] = 38, - ["name"] = "North Korea", - }, -- end of [11] - }, -- end of ["country"] - }, -- end of ["red"] - }, -- end of ["coalition"] - ["sortie"] = "DictKey_sortie_4", - ["version"] = 11, - ["goals"] = - { - }, -- end of ["goals"] - ["currentKey"] = 510, - ["start_time"] = 43200, - ["forcedOptions"] = - { - }, -- end of ["forcedOptions"] - ["failures"] = - { - }, -- end of ["failures"] -} -- end of mission diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/options b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/options deleted file mode 100644 index e68f02ebd..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/options +++ /dev/null @@ -1,212 +0,0 @@ -options = -{ - ["difficulty"] = - { - ["fuel"] = false, - ["labels"] = false, - ["easyRadar"] = false, - ["easyCommunication"] = true, - ["miniHUD"] = false, - ["setGlobal"] = true, - ["birds"] = 0, - ["optionsView"] = "optview_all", - ["permitCrash"] = true, - ["immortal"] = false, - ["avionicsLanguage"] = "native", - ["cockpitVisualRM"] = true, - ["padlock"] = true, - ["reports"] = true, - ["hideStick"] = false, - ["radio"] = true, - ["map"] = true, - ["externalViews"] = true, - ["spectatorExternalViews"] = true, - ["cockpitLanguage"] = "english", - ["tips"] = true, - ["userSnapView"] = true, - ["units"] = "metric", - ["impostors"] = "medium", - ["iconsTheme"] = "nato", - ["easyFlight"] = false, - ["weapons"] = false, - ["cockpitStatusBarAllowed"] = false, - ["geffect"] = "realistic", - }, -- end of ["difficulty"] - ["playerName"] = "Killer", - ["graphics"] = - { - ["OculusRift"] = false, - ["color"] = "32", - ["preloadRadius"] = 73885, - ["heatBlr"] = 2, - ["scenes"] = "high", - ["water"] = 2, - ["visibRange"] = "High", - ["treesVisibility"] = 25000, - ["aspect"] = 1.7777777777778, - ["lights"] = 2, - ["HDR"] = 1, - ["MSAA"] = 6, - ["civTraffic"] = "high", - ["clutterMaxDistance"] = 1500, - ["terrainTextures"] = "max", - ["multiMonitorSetup"] = "1camera", - ["shadowTree"] = true, - ["fullScreen"] = false, - ["disableAero"] = false, - ["DOF"] = 0, - ["clouds"] = 1, - ["flatTerrainShadows"] = 1, - ["cockpitShadows"] = true, - ["height"] = 900, - ["width"] = 1600, - ["shadows"] = 5, - ["textures"] = 2, - ["sync"] = true, - ["LensEffects"] = 3, - ["anisotropy"] = 4, - ["TranspSSAA"] = false, - ["haze"] = 1, - ["effects"] = 3, - }, -- end of ["graphics"] - ["plugins"] = - { - ["CA"] = - { - ["kompass_options"] = 1, - ["ground_target_info"] = true, - ["ground_aim_helper"] = true, - ["ground_platform_shake"] = true, - ["ground_automatic"] = true, - }, -- end of ["CA"] - ["M-2000C"] = - { - ["TDC_"] = false, - ["CPLocalList"] = "default", - }, -- end of ["M-2000C"] - ["A-10C"] = - { - ["CPLocalList"] = "default", - }, -- end of ["A-10C"] - ["FC3"] = - { - ["CPLocalList_F-15C"] = "default", - ["CPLocalList_MiG-29S"] = "default", - ["CPLocalList_MiG-29A"] = "default", - ["CPLocalList_Su-25"] = "default", - ["CPLocalList_A-10A"] = "default", - ["CPLocalList_Su-27"] = "chinese", - ["CPLocalList_MiG-29G"] = "default", - ["CPLocalList_Su-33"] = "default", - }, -- end of ["FC3"] - ["Hawk"] = - { - ["CPLocalList"] = "high", - }, -- end of ["Hawk"] - ["P-51D"] = - { - ["assistance"] = 100, - ["CPLocalList"] = "default", - ["autoRudder"] = false, - }, -- end of ["P-51D"] - ["TF-51D"] = - { - ["assistance"] = 100, - ["CPLocalList"] = "default", - ["autoRudder"] = false, - }, -- end of ["TF-51D"] - ["MiG-21Bis"] = - { - ["Engine"] = false, - ["Shake"] = 100, - ["CustomCockpit"] = false, - ["Reticle"] = false, - ["Freeze"] = false, - }, -- end of ["MiG-21Bis"] - ["F-86F"] = - { - ["landSeatAdjustF86"] = true, - ["CPLocalList"] = "default", - ["NoseWheelSteeringSimpleBehaviourF86"] = true, - ["gunCamera"] = 0, - }, -- end of ["F-86F"] - ["Su-25T"] = - { - ["CPLocalList"] = "default", - }, -- end of ["Su-25T"] - ["Mi-8MTV2"] = - { - ["altMi8TrimmingMethod"] = false, - ["Mi8AutopilotAdjustment"] = false, - ["Mi8RudderTrimmer"] = false, - ["controlHelperMi8"] = false, - ["CPLocalList"] = "default", - ["weapTooltipsMi8"] = true, - ["Mi8FOV"] = 120, - }, -- end of ["Mi-8MTV2"] - ["MiG-15bis"] = - { - ["autoLeanToAimMiG15"] = true, - ["CPLocalList"] = "chinese", - ["gunCamera"] = 0, - ["aiHelper"] = false, - }, -- end of ["MiG-15bis"] - ["FW-190D9"] = - { - ["assistance"] = 100, - ["CPLocalList"] = "default", - ["autoRudder"] = false, - }, -- end of ["FW-190D9"] - ["UH-1H"] = - { - ["UHRudderTrimmer"] = false, - ["autoPilot"] = true, - ["altUHTrimmingMethod"] = false, - ["CPLocalList"] = "default", - ["weapTooltips"] = true, - ["UHTrackIRAiming"] = true, - }, -- end of ["UH-1H"] - ["Ka-50"] = - { - ["altTrimmingMethod"] = false, - ["Ka50RudderTrimmer"] = false, - ["CPLocalList"] = "english", - }, -- end of ["Ka-50"] - }, -- end of ["plugins"] - ["views"] = - { - ["cockpit"] = - { - ["mirrors"] = false, - ["reflections"] = false, - ["avionics"] = 3, - ["russianHud"] = false, - }, -- end of ["cockpit"] - }, -- end of ["views"] - ["sound"] = - { - ["hear_in_helmet"] = true, - ["headphones"] = -15, - ["cockpit"] = 0, - ["GBreathEffect"] = true, - ["gui"] = 0, - ["volume"] = 0, - ["radioSpeech"] = true, - ["music"] = -100, - ["subtitles"] = true, - ["world"] = 0, - }, -- end of ["sound"] - ["miscellaneous"] = - { - ["headmove"] = true, - ["f5_nearest_ac"] = true, - ["f11_free_camera"] = true, - ["F2_view_effects"] = 2, - ["f10_awacs"] = true, - ["Coordinate_Display"] = "Lat Long", - ["accidental_failures"] = false, - ["force_feedback_enabled"] = true, - ["synchronize_controls"] = false, - ["show_pilot_body"] = true, - }, -- end of ["miscellaneous"] -} -- end of options diff --git a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/warehouses b/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/warehouses deleted file mode 100644 index 86cce835c..000000000 --- a/Moose Test Missions/Moose_Test_AIBALANCER/Moose_Test_AIBALANCER/warehouses +++ /dev/null @@ -1,807 +0,0 @@ -warehouses = -{ - ["airports"] = - { - [12] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "RED", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [12] - [13] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "BLUE", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [13] - [14] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [14] - [15] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "RED", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [15] - [16] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [16] - [17] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "RED", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [17] - [18] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [18] - [19] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [19] - [20] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [20] - [21] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [21] - [22] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [22] - [23] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [23] - [24] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [24] - [25] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [25] - [26] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [26] - [27] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [27] - [28] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [28] - [29] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [29] - [30] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [30] - [31] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [31] - [32] = - { - ["gasoline"] = - { - ["InitFuel"] = 100, - }, -- end of ["gasoline"] - ["unlimitedMunitions"] = true, - ["methanol_mixture"] = - { - ["InitFuel"] = 100, - }, -- end of ["methanol_mixture"] - ["OperatingLevel_Air"] = 10, - ["diesel"] = - { - ["InitFuel"] = 100, - }, -- end of ["diesel"] - ["speed"] = 16.666666, - ["size"] = 100, - ["periodicity"] = 30, - ["suppliers"] = - { - }, -- end of ["suppliers"] - ["coalition"] = "NEUTRAL", - ["jet_fuel"] = - { - ["InitFuel"] = 100, - }, -- end of ["jet_fuel"] - ["OperatingLevel_Eqp"] = 10, - ["unlimitedFuel"] = true, - ["aircrafts"] = - { - }, -- end of ["aircrafts"] - ["weapons"] = - { - }, -- end of ["weapons"] - ["OperatingLevel_Fuel"] = 10, - ["unlimitedAircrafts"] = true, - }, -- end of [32] - }, -- end of ["airports"] - ["warehouses"] = - { - }, -- end of ["warehouses"] -} -- end of warehouses diff --git a/Moose Test Missions/Moose_Test_AIRBASEPOLICE/Moose_Test_AIRBASEPOLICE.miz b/Moose Test Missions/Moose_Test_AIRBASEPOLICE/Moose_Test_AIRBASEPOLICE.miz index 889c0c02b..ee87ab15c 100644 Binary files a/Moose Test Missions/Moose_Test_AIRBASEPOLICE/Moose_Test_AIRBASEPOLICE.miz and b/Moose Test Missions/Moose_Test_AIRBASEPOLICE/Moose_Test_AIRBASEPOLICE.miz differ diff --git a/Moose Test Missions/Moose_Test_BASE/Moose_Test_AIRBLANCER_with_Moose.miz b/Moose Test Missions/Moose_Test_BASE/Moose_Test_AIRBLANCER_with_Moose.miz index 9c062463a..dcaf24ee0 100644 Binary files a/Moose Test Missions/Moose_Test_BASE/Moose_Test_AIRBLANCER_with_Moose.miz and b/Moose Test Missions/Moose_Test_BASE/Moose_Test_AIRBLANCER_with_Moose.miz differ diff --git a/Moose Test Missions/Moose_Test_BASE/Moose_Test_AIRBLANCER_without_Moose.miz b/Moose Test Missions/Moose_Test_BASE/Moose_Test_AIRBLANCER_without_Moose.miz index a9f5cb2c9..dc9a48785 100644 Binary files a/Moose Test Missions/Moose_Test_BASE/Moose_Test_AIRBLANCER_without_Moose.miz and b/Moose Test Missions/Moose_Test_BASE/Moose_Test_AIRBLANCER_without_Moose.miz differ diff --git a/Moose Test Missions/Moose_Test_BASE/Moose_Test_BASE.miz b/Moose Test Missions/Moose_Test_BASE/Moose_Test_BASE.miz index bdd4c750e..7615cb2ae 100644 Binary files a/Moose Test Missions/Moose_Test_BASE/Moose_Test_BASE.miz and b/Moose Test Missions/Moose_Test_BASE/Moose_Test_BASE.miz differ diff --git a/Moose Test Missions/Moose_Test_CLEANUP/Moose_Test_CLEANUP.miz b/Moose Test Missions/Moose_Test_CLEANUP/Moose_Test_CLEANUP.miz index 8498701f6..49f75907b 100644 Binary files a/Moose Test Missions/Moose_Test_CLEANUP/Moose_Test_CLEANUP.miz and b/Moose Test Missions/Moose_Test_CLEANUP/Moose_Test_CLEANUP.miz differ diff --git a/Moose Test Missions/Moose_Test_DESTROY/MOOSE_Test_DESTROY.miz b/Moose Test Missions/Moose_Test_DESTROY/MOOSE_Test_DESTROY.miz index f55c36cdf..04b7ae103 100644 Binary files a/Moose Test Missions/Moose_Test_DESTROY/MOOSE_Test_DESTROY.miz and b/Moose Test Missions/Moose_Test_DESTROY/MOOSE_Test_DESTROY.miz differ diff --git a/Moose Test Missions/Moose_Test_DETECTION/Moose_Test_DETECTION.miz b/Moose Test Missions/Moose_Test_DETECTION/Moose_Test_DETECTION.miz index 31bfe81b3..e38e6baec 100644 Binary files a/Moose Test Missions/Moose_Test_DETECTION/Moose_Test_DETECTION.miz and b/Moose Test Missions/Moose_Test_DETECTION/Moose_Test_DETECTION.miz differ diff --git a/Moose Test Missions/Moose_Test_ESCORT/MOOSE_Test_ESCORT.miz b/Moose Test Missions/Moose_Test_ESCORT/MOOSE_Test_ESCORT.miz index 5118021e3..67402b0e0 100644 Binary files a/Moose Test Missions/Moose_Test_ESCORT/MOOSE_Test_ESCORT.miz and b/Moose Test Missions/Moose_Test_ESCORT/MOOSE_Test_ESCORT.miz differ diff --git a/Moose Test Missions/Moose_Test_MISSILETRAINER/Moose_Test_MISSILETRAINER.miz b/Moose Test Missions/Moose_Test_MISSILETRAINER/Moose_Test_MISSILETRAINER.miz index 44779ba59..36b04e028 100644 Binary files a/Moose Test Missions/Moose_Test_MISSILETRAINER/Moose_Test_MISSILETRAINER.miz and b/Moose Test Missions/Moose_Test_MISSILETRAINER/Moose_Test_MISSILETRAINER.miz differ diff --git a/Moose Test Missions/Moose_Test_PATROLZONE/MOOSE_Test_PATROLZONE.miz b/Moose Test Missions/Moose_Test_PATROLZONE/MOOSE_Test_PATROLZONE.miz index d89ee55f1..e2e59094d 100644 Binary files a/Moose Test Missions/Moose_Test_PATROLZONE/MOOSE_Test_PATROLZONE.miz and b/Moose Test Missions/Moose_Test_PATROLZONE/MOOSE_Test_PATROLZONE.miz differ diff --git a/Moose Test Missions/Moose_Test_SEAD/MOOSE_Test_SEAD.miz b/Moose Test Missions/Moose_Test_SEAD/MOOSE_Test_SEAD.miz index feeb3e21e..6906e080b 100644 Binary files a/Moose Test Missions/Moose_Test_SEAD/MOOSE_Test_SEAD.miz and b/Moose Test Missions/Moose_Test_SEAD/MOOSE_Test_SEAD.miz differ diff --git a/Moose Test Missions/Moose_Test_SET_AIRBASE/Moose_Test_SET_AIRBASE.miz b/Moose Test Missions/Moose_Test_SET_AIRBASE/Moose_Test_SET_AIRBASE.miz index ef83f1d5f..183e0bbed 100644 Binary files a/Moose Test Missions/Moose_Test_SET_AIRBASE/Moose_Test_SET_AIRBASE.miz and b/Moose Test Missions/Moose_Test_SET_AIRBASE/Moose_Test_SET_AIRBASE.miz differ diff --git a/Moose Test Missions/Moose_Test_SET_CLIENT/Moose_Test_SET_CLIENT.miz b/Moose Test Missions/Moose_Test_SET_CLIENT/Moose_Test_SET_CLIENT.miz index 688d5dfe2..ad1789241 100644 Binary files a/Moose Test Missions/Moose_Test_SET_CLIENT/Moose_Test_SET_CLIENT.miz and b/Moose Test Missions/Moose_Test_SET_CLIENT/Moose_Test_SET_CLIENT.miz differ diff --git a/Moose Test Missions/Moose_Test_SET_GROUP/Moose_Test_SET_GROUP.miz b/Moose Test Missions/Moose_Test_SET_GROUP/Moose_Test_SET_GROUP.miz index ce45cccc9..928ebdd77 100644 Binary files a/Moose Test Missions/Moose_Test_SET_GROUP/Moose_Test_SET_GROUP.miz and b/Moose Test Missions/Moose_Test_SET_GROUP/Moose_Test_SET_GROUP.miz differ diff --git a/Moose Test Missions/Moose_Test_SPAWN/MOOSE_Test_SPAWN.miz b/Moose Test Missions/Moose_Test_SPAWN/MOOSE_Test_SPAWN.miz index 081240f50..4834e32a9 100644 Binary files a/Moose Test Missions/Moose_Test_SPAWN/MOOSE_Test_SPAWN.miz and b/Moose Test Missions/Moose_Test_SPAWN/MOOSE_Test_SPAWN.miz differ diff --git a/Moose Test Missions/Moose_Test_SPAWN_Repeat/MOOSE_Test_SPAWN_Repeat.miz b/Moose Test Missions/Moose_Test_SPAWN_Repeat/MOOSE_Test_SPAWN_Repeat.miz index 9e1ae2aa2..e1dfb43fd 100644 Binary files a/Moose Test Missions/Moose_Test_SPAWN_Repeat/MOOSE_Test_SPAWN_Repeat.miz and b/Moose Test Missions/Moose_Test_SPAWN_Repeat/MOOSE_Test_SPAWN_Repeat.miz differ diff --git a/Moose Test Missions/Moose_Test_TASK_Pickup_and_Deploy/MOOSE_Test_TASK_Pickup_and_Deploy.miz b/Moose Test Missions/Moose_Test_TASK_Pickup_and_Deploy/MOOSE_Test_TASK_Pickup_and_Deploy.miz index 9e16f307d..1dfa11a42 100644 Binary files a/Moose Test Missions/Moose_Test_TASK_Pickup_and_Deploy/MOOSE_Test_TASK_Pickup_and_Deploy.miz and b/Moose Test Missions/Moose_Test_TASK_Pickup_and_Deploy/MOOSE_Test_TASK_Pickup_and_Deploy.miz differ diff --git a/Moose Test Missions/Moose_Test_WRAPPER/Moose_Test_WRAPPER.miz b/Moose Test Missions/Moose_Test_WRAPPER/Moose_Test_WRAPPER.miz index 366fdb2a7..872ac8d46 100644 Binary files a/Moose Test Missions/Moose_Test_WRAPPER/Moose_Test_WRAPPER.miz and b/Moose Test Missions/Moose_Test_WRAPPER/Moose_Test_WRAPPER.miz differ diff --git a/Moose Test Missions/Moose_Test_ZONE/Moose_Test_ZONE.miz b/Moose Test Missions/Moose_Test_ZONE/Moose_Test_ZONE.miz index 07def4d67..a0fd5873b 100644 Binary files a/Moose Test Missions/Moose_Test_ZONE/Moose_Test_ZONE.miz and b/Moose Test Missions/Moose_Test_ZONE/Moose_Test_ZONE.miz differ diff --git a/Moose Test Missions/Moose_Test_ZONE_POLYGON/Moose_Test_ZONE_POLYGON.miz b/Moose Test Missions/Moose_Test_ZONE_POLYGON/Moose_Test_ZONE_POLYGON.miz index d1564ffee..ecd9294f0 100644 Binary files a/Moose Test Missions/Moose_Test_ZONE_POLYGON/Moose_Test_ZONE_POLYGON.miz and b/Moose Test Missions/Moose_Test_ZONE_POLYGON/Moose_Test_ZONE_POLYGON.miz differ diff --git a/Moose Test Missions/Moose_Test_ZONE_RADIUS/Moose_Test_ZONE_RADIUS.miz b/Moose Test Missions/Moose_Test_ZONE_RADIUS/Moose_Test_ZONE_RADIUS.miz index 0e9111de0..f3d1fb35c 100644 Binary files a/Moose Test Missions/Moose_Test_ZONE_RADIUS/Moose_Test_ZONE_RADIUS.miz and b/Moose Test Missions/Moose_Test_ZONE_RADIUS/Moose_Test_ZONE_RADIUS.miz differ diff --git a/Moose Test Missions/Moose_Test_ZONE_UNIT/Moose_Test_ZONE_UNIT.miz b/Moose Test Missions/Moose_Test_ZONE_UNIT/Moose_Test_ZONE_UNIT.miz index d634ccd7f..1758a601d 100644 Binary files a/Moose Test Missions/Moose_Test_ZONE_UNIT/Moose_Test_ZONE_UNIT.miz and b/Moose Test Missions/Moose_Test_ZONE_UNIT/Moose_Test_ZONE_UNIT.miz differ