From 0233b9e2d7106ac78f8d259c1c40e00783246220 Mon Sep 17 00:00:00 2001 From: dutchie031 Date: Sun, 1 Jun 2025 18:58:35 +0200 Subject: [PATCH] Cap rework (#48) - Refactored all CAP classes. - Improved timing - Zones are now not tied to MissionStages - CAPROUTE__ - routeID is now what is used in the naming convention. - Units taxi back to their spawn parking space and rearm there. (Units destroyed while in the Rearming or Repairing state are not taken into account) --- _docs/pages/reference.html | 16 +- _miz/SPEARHEADDEV.miz | Bin 161396 -> 158320 bytes _miz/SPEARHEAD_CAP_DEV.miz | Bin 0 -> 31106 bytes classes/capClasses/AirGroup.lua | 74 --- classes/capClasses/CapAirbase.lua | 300 ++++++------ classes/capClasses/CapGroup.lua | 429 ------------------ classes/capClasses/airGroups/AirGroup.lua | 427 +++++++++++++++++ classes/capClasses/airGroups/CapGroup.lua | 144 ++++++ .../runwayBombing/RunwayBombingTracker.lua | 6 +- classes/capClasses/taskings/CAP.lua | 327 +++++++++++++ classes/capClasses/taskings/RTB.lua | 201 ++++++++ classes/configuration/CapConfig.lua | 112 +++-- classes/spearhead_base.lua | 114 ++++- classes/spearhead_db.lua | 148 ++---- .../stageClasses/SpecialZones/StageBase.lua | 10 +- .../stageClasses/helpers/BattleManager.lua | 8 +- .../helpers/MissionCommandsHelper.lua | 6 +- .../helpers/SupplyUnitsTracker.lua | 1 + config.lua | 19 +- dev/dev_classes.lua | 5 +- dev/dev_config.lua | 4 +- 21 files changed, 1519 insertions(+), 832 deletions(-) create mode 100644 _miz/SPEARHEAD_CAP_DEV.miz delete mode 100644 classes/capClasses/AirGroup.lua delete mode 100644 classes/capClasses/CapGroup.lua create mode 100644 classes/capClasses/airGroups/AirGroup.lua create mode 100644 classes/capClasses/airGroups/CapGroup.lua create mode 100644 classes/capClasses/taskings/CAP.lua create mode 100644 classes/capClasses/taskings/RTB.lua diff --git a/_docs/pages/reference.html b/_docs/pages/reference.html index 6352d42..15b9d1c 100644 --- a/_docs/pages/reference.html +++ b/_docs/pages/reference.html @@ -145,8 +145,8 @@

CAP Routes

- Format: CAPROUTE_[Name]
- Example: CAPROUTE_ALPHA + Format: CAPROUTE_[routeID]_[Name]
+ Example: CAPROUTE_103_ALPHA

CAP routes define the patrol paths for CAP units. They are tied to specific stages and zones. @@ -249,18 +249,16 @@

CAP Group Config

-                1 at x:               [<activeStage>]<capStage>
-                n and n  at x:        [<activeStage>,<activeStage>]<capStage>
-                n till n at x:        [<activeStage>-<activeStage>]<capStage>
-                n till n and n at x:  [<activeStage>-<activeStage>,<activeStage>]<capStage>
-                n till n at Active:   [<activeStage>-<activeStage>]A
+                1 at x:               [<activeStage>]<CapRouteID>
+                n and n  at x:        [<activeStage>,<activeStage>]<CapRouteID>
+                n till n at x:        [<activeStage>-<activeStage>]<CapRouteID>
+                n till n and n at x:  [<activeStage>-<activeStage>,<activeStage>]<CapRouteID>
 
                 Divider: |
 
                 Examples:
                 CAP_A[1-4,6]7|[5,7]8_SomeName => Will fly CAP at stage 7 when stages 1 through 4 and 6 are active and will fly CAP at 8 when 5 and 7 are active.
-                CAP_A[2-5]5|[6]6_SomeName => Will fly CAP at stage 5 when stages 2 through 5 are active and will fly CAP at 6 when 6 is active.
-                CAP_A[1-5]A|[6]7_SomeName => Will fly CAP at the ACTIVE stage if stages 1-5 are active. Then when 6 is active, it will fly in 7.
+                CAP_A[2-5]5|[6]6_SomeName => Will fly CAP at stage 5 when stages 2 through 5 are active and will fly CAP at CapRoute 6 when 6 is active.
                 

Active and Backup CAP

diff --git a/_miz/SPEARHEADDEV.miz b/_miz/SPEARHEADDEV.miz index 1b1cbfe394b15bfcb216abb6b1dcf7d41bad84f9..8f67eb8643b1412776c50ef6c9457487758e4216 100644 GIT binary patch delta 145918 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

&604ujZUhjcrc6$7x| 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�XE-fqR5LuO(6U*xeGT6&T

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 zldⅆQUd|T@5XQSAqzXqmG;zONz;I4)FtcH53nDW*L-x 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 SPX_U|o4$dAgS{@n!Tk^E7=rNt delta 149042 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

sYk^niUL5#^0$cNSiU!6 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 diff --git a/_miz/SPEARHEAD_CAP_DEV.miz b/_miz/SPEARHEAD_CAP_DEV.miz new file mode 100644 index 0000000000000000000000000000000000000000..697738bb202dfd9f17194624eac1131307d9da67 GIT binary patch literal 31106 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 literal 0 HcmV?d00001 diff --git a/classes/capClasses/AirGroup.lua b/classes/capClasses/AirGroup.lua deleted file mode 100644 index 9ebfc66..0000000 --- a/classes/capClasses/AirGroup.lua +++ /dev/null @@ -1,74 +0,0 @@ - - ----@class AirGroup ----@field groupName string ----@field groupState GroupState -local AirGroup = {} - ----@alias GroupState ----| "UnSpawned" ----| "ReadOnTheRamp ----| "InTransit" ----| "OnStation" ----| "RtbInTen" ----| "Rtb" ----| "Dead" ----| "Rearming" - - ----@alias AirGroupType ----| "CAP" - ----| "CAS" ----| "SEAD" ----| "INTERCEPT" ----| "" - - ----@class GroupNameData ----@field type AirGroupType ----@field isBackup boolean ----@field zonesConfig table - -local function parseGroupName(groupName) - - local split_string = Spearhead.Util.split_string(groupName, "_") - local partCount = Spearhead.Util.tableLength(split_string) - - if partCount >= 3 then - - ---@type boolean - local isBackup = false - - do -- config - - - end - - else - Spearhead.AddMissionEditorWarning("CAP Group with name: " .. groupName .. "should have at least 3 parts, but has " .. partCount) - return nil - end - - -end - - ----comment ----@generic T: AirGroup ----@param o T ----@param groupName string ----@return T -function AirGroup.New(o, groupName) - AirGroup.__index = AirGroup - local o = o or {} - local self = setmetatable(o, AirGroup) - - self.groupName = groupName - self.groupState = "UnSpawned" - - - - return self -end - diff --git a/classes/capClasses/CapAirbase.lua b/classes/capClasses/CapAirbase.lua index 29741fb..f601487 100644 --- a/classes/capClasses/CapAirbase.lua +++ b/classes/capClasses/CapAirbase.lua @@ -1,22 +1,18 @@ ---@class CapBase : OnStageChangedListener ----@field groupNames Array ----@field database Database ----@field airbaseName string ----@field logger table ----@field activeStage number ----@field capConfig table ----@field activeCapStages number ----@field lastStatesByName table ----@field groupsByName table ----@field PrimaryGroups Array ----@field BackupGroups Array +---@field private airbaseName string +---@field private logger table +---@field private database Database +---@field private activeStage number +---@field private capConfig table +---@field private capGroupsByName table ---@field private runwayBombingTracker RunwayBombingTracker ---@field private runwayStrikeMissions table local CapBase = {} -local CheckReschedulingAsync = function(self, time) +local CheckStateContinuous = function(self, time) self:CheckAndScheduleCAP() + return time + 15 end ---comment @@ -28,181 +24,201 @@ end ---@param runwayBombingTracker RunwayBombingTracker ---@return CapBase function CapBase.new(airbaseName, database, logger, capConfig, stageConfig, runwayBombingTracker) - CapBase.__index = CapBase local self = setmetatable({}, { __index = CapBase }) --[[@as CapBase]] - local baseData = database:getAirbaseDataForZone(airbaseName) - local groupNames = {} - if baseData then groupNames = baseData.CapGroups or {} end - - self.groupNames = groupNames - self.database = database self.runwayBombingTracker = runwayBombingTracker self.runwayStrikeMissions = {} - + self.airbaseName = airbaseName self.logger = logger self.activeStage = 0 self.capConfig = capConfig - self.activeCapStages = (stageConfig or {}).capActiveStages or 10 + self.database = database + self.capGroupsByName = {} - self.lastStatesByName = {} - self.groupsByName = {} - self.PrimaryGroups = {} - self.BackupGroups = {} - - for key, name in pairs(self.groupNames) do - local capGroup = Spearhead.classes.capClasses.CapGroup.new(name, airbaseName, logger, database, capConfig) - if capGroup then - self.groupsByName[name] = capGroup - - if capGroup.isBackup ==true then - table.insert(self.BackupGroups, capGroup) - else - table.insert(self.PrimaryGroups, capGroup) + local baseData = database:getAirbaseDataForZone(airbaseName) + if baseData and baseData.CapGroups then + for key, name in pairs(baseData.CapGroups) do + local capGroup = Spearhead.classes.capClasses.airGroups.CapGroup.New(name, capConfig, logger) + if capGroup then + self.capGroupsByName[name] = capGroup end - - capGroup:AddOnStateUpdatedListener(self) end end - logger:info("Airbase with name '" .. airbaseName .. "' has a total of " .. Spearhead.Util.tableLength(self.groupsByName) .. " cap flights registered") - self:CreateRunwayStrikeMission() + logger:info("Airbase with name '" .. + airbaseName .. "' has a total of " .. Spearhead.Util.tableLength(self.capGroupsByName) .. " cap flights registered") + + self:CreateRunwayStrikeMission(database) Spearhead.Events.AddStageNumberChangedListener(self) - return self + timer.scheduleFunction(CheckStateContinuous, self, timer.getTime() + 15) + + return self end ---@private -function CapBase:CreateRunwayStrikeMission() - +---@param database Database +function CapBase:CreateRunwayStrikeMission(database) local airbase = Airbase.getByName(self.airbaseName) - if not airbase then + if not airbase then self.logger:debug("Could not find a airbase with name to create runway mission" .. self.airbaseName) - return + return end for _, runway in pairs(airbase:getRunways()) do if runway then - self.logger:debug("Runway " .. runway.Name .. " at airbase " .. self.airbaseName .. " with heading " .. runway.course .. " and length " .. runway.length .. " and width " .. runway.width) - local mission = Spearhead.classes.stageClasses.missions.RunwayStrikeMission.new(runway, self.airbaseName, self.database, self.logger, self.runwayBombingTracker) + self.logger:debug("Runway " .. + runway.Name .. + " at airbase " .. + self.airbaseName .. + " with heading " .. runway.course .. " and length " .. runway.length .. " and width " .. runway.width) + local mission = Spearhead.classes.stageClasses.missions.RunwayStrikeMission.new(runway, self.airbaseName, + database, self.logger, self.runwayBombingTracker) self.runwayStrikeMissions[runway.Name] = mission end end end -function CapBase:onGroupStateUpdated(capGroup) - --[[ - There is no update needed for INTRANSIT, ONSTATION or REARMING as the PREVIOUS state already was checked and nothing changes in the actual overal state. - ]]-- - if capGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.INTRANSIT - or capGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.ONSTATION - or capGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.REARMING - then - return +function CapBase:SpawnIfApplicable() + self.logger:debug("Check spawns for airbase " .. self.airbaseName) + for groupName, capGroup in pairs(self.capGroupsByName) do + local targetStage = capGroup:GetZoneIDWhenStageID(tostring(self.activeStage)) + + if targetStage ~= nil and capGroup:GetState() == "UnSpawned" then + capGroup:Spawn() + end end - timer.scheduleFunction(CheckReschedulingAsync, self, timer.getTime() + 1) end -function CapBase:SpawnIfApplicable() - self.logger:debug("Check spawns for airbase " .. self.airbaseName ) - for groupName, capGroup in pairs(self.groupsByName) do - - local targetStage = capGroup:GetTargetZone(self.activeStage) +function CapBase:CheckAndScheduleCAP() + self.logger:debug("Check taskings for airbase " .. self.airbaseName) - if targetStage ~= nil and capGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.UNSPAWNED then - capGroup:SpawnOnTheRamp() - end - end + local countPerStage = {} + local requiredPerStage = {} + + local airbase = Airbase.getByName(self.airbaseName) + if not airbase then + return nil end -function CapBase:CheckAndScheduleCAP() + local activeStageID = tostring(self.activeStage) - self.logger:debug("Check taskings for airbase " .. self.airbaseName ) - - local countPerStage = {} - local requiredPerStage = {} + --Count back up groups that are active or reassign to the new zone if that's needed + for _, group in pairs(self.capGroupsByName) do + if group:IsBackup() == true then + local state = group:GetState() + if state == "InTransit" or state == "OnStation" or state == "RtbInTen" then + + local supposedTargetZoneID = group:GetZoneIDWhenStageID(activeStageID) + local currentTargetZone = group:GetCurrentTargetZoneID() - --Count back up groups that are active or reassign to the new zone if that's needed - for _, backupGroup in pairs(self.BackupGroups) do - if backupGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.INTRANSIT or backupGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.ONSTATION then - local supposedTargetStage = backupGroup:GetTargetZone(self.activeStage) - if supposedTargetStage then - if supposedTargetStage ~= backupGroup.assignedStageNumber then - backupGroup:SendToStage(supposedTargetStage) - end - - if countPerStage[supposedTargetStage] == nil then - countPerStage[supposedTargetStage] = 0 - end - countPerStage[supposedTargetStage] = countPerStage[supposedTargetStage] + 1 + if supposedTargetZoneID == nil then + self.logger:debug("CapGroup " .. group:GetName() .. " has no target zone for stage " .. activeStageID) + group:SendRTB(airbase) else - backupGroup:SendRTBAndDespawn() - end - elseif backupGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.RTBINTEN and backupGroup:GetTargetZone(self.activeStage) ~= backupGroup.assignedStageNumber then - backupGroup:SendRTB() - end - end - - --Schedule or reassign primary units if applicable - for _, primaryGroup in pairs(self.PrimaryGroups) do - local supposedTargetStage = primaryGroup:GetTargetZone(self.activeStage) - if supposedTargetStage then - if requiredPerStage[supposedTargetStage] == nil then - requiredPerStage[supposedTargetStage] = 0 - end - - if countPerStage[supposedTargetStage] == nil - then - countPerStage[supposedTargetStage] = 0 - end - - requiredPerStage[supposedTargetStage] = requiredPerStage[supposedTargetStage] + 1 - - if primaryGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.READYONRAMP then - if countPerStage[supposedTargetStage] < requiredPerStage[supposedTargetStage] then - primaryGroup:SendToStage(supposedTargetStage) - countPerStage[supposedTargetStage] = countPerStage[supposedTargetStage] + 1 - end - elseif primaryGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.INTRANSIT or primaryGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.ONSTATION then - if supposedTargetStage ~= primaryGroup.assignedStageNumber then - if countPerStage[supposedTargetStage] < requiredPerStage[supposedTargetStage] then - primaryGroup:SendToStage(supposedTargetStage) + if supposedTargetZoneID and supposedTargetZoneID ~= currentTargetZone then + if state == "RtbInTen" then + self.logger:debug("CapGroup " .. group:GetName() .. " is RTB in 10 minutes, sending to RTB already") + group:SendRTB(airbase) else - countPerStage[supposedTargetStage] = countPerStage[supposedTargetStage] + 1 - primaryGroup:SendRTB() + local triggerZone = self.database:GetCapZoneForZoneID(supposedTargetZoneID) + if triggerZone then + group:SendToZone(triggerZone, supposedTargetZoneID, airbase) + else + self.logger:debug("CapGroup " .. group:GetName() .. " has no trigger zone for stage " .. activeStageID) + group:SendRTB(airbase) + end end end - countPerStage[supposedTargetStage] = countPerStage[supposedTargetStage] + 1 - elseif primaryGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.RTBINTEN and primaryGroup:GetTargetZone(self.activeStage) ~= primaryGroup.assignedStageNumber then - primaryGroup:SendRTB() - end - else - primaryGroup:SendRTBAndDespawn() - end - end + + if countPerStage[supposedTargetZoneID] == nil then + countPerStage[supposedTargetZoneID] = 0 + end - for _, backupGroup in pairs(self.BackupGroups) do - if backupGroup.state == Spearhead.classes.capClasses.CapGroup.GroupState.READYONRAMP then - local supposedTargetStage = backupGroup:GetTargetZone(self.activeStage) - if supposedTargetStage then - if countPerStage[supposedTargetStage] == nil then - countPerStage[supposedTargetStage] = 0 + if supposedTargetZoneID == group:GetCurrentTargetZoneID() and (state == "OnStation" or state =="InTransit") then + countPerStage[supposedTargetZoneID] = countPerStage[supposedTargetZoneID] + 1 end - - if countPerStage[supposedTargetStage] < requiredPerStage[supposedTargetStage] then - backupGroup:SendToStage(supposedTargetStage) - countPerStage[supposedTargetStage] = countPerStage[supposedTargetStage] + 1 - end - else - backupGroup:SendRTBAndDespawn() end end end end + --Schedule or reassign primary units if applicable + for _, group in pairs(self.capGroupsByName) do + if group:IsBackup() == false then + local state = group:GetState() + local supposedZone = group:GetZoneIDWhenStageID(activeStageID) + if supposedZone then + if requiredPerStage[supposedZone] == nil then + requiredPerStage[supposedZone] = 0 + end + + if countPerStage[supposedZone] == nil then + countPerStage[supposedZone] = 0 + end + + requiredPerStage[supposedZone] = requiredPerStage[supposedZone] + 1 + + if state == "ReadyOnTheRamp" then + if countPerStage[supposedZone] < requiredPerStage[supposedZone] then + local triggerZone = self.database:GetCapZoneForZoneID(supposedZone) + if triggerZone then + group:SendToZone(triggerZone, supposedZone, airbase) + end + + countPerStage[supposedZone] = countPerStage[supposedZone] + 1 + end + elseif state == "InTransit" or state == "OnStation" then + + if supposedZone ~= group:GetCurrentTargetZoneID() then + if countPerStage[supposedZone] < requiredPerStage[supposedZone] then + local triggerZone = self.database:GetCapZoneForZoneID(supposedZone) + if triggerZone then + group:SendToZone(triggerZone, supposedZone, airbase) + else + group:SendRTB(airbase) + end + end + end + countPerStage[supposedZone] = countPerStage[supposedZone] + 1 + elseif state == "RtbInTen" and supposedZone ~= group:GetCurrentTargetZoneID() then + group:SendRTB(airbase) + end + else + if state == "InTransit" or state == "OnStation" or state == "RtbInTen" then + -- If the group is in transit or on station but has no target zone, send it back to base + group:SendRTB(airbase) + end + end + end + end + + for _, group in pairs(self.capGroupsByName) do + if group:IsBackup() == true then + if group:GetState() == "ReadyOnTheRamp" then + local supposedZone = group:GetZoneIDWhenStageID(activeStageID) + if supposedZone then + if countPerStage[supposedZone] == nil then + countPerStage[supposedZone] = 0 + end + + if countPerStage[supposedZone] < requiredPerStage[supposedZone] then + local triggerZone = self.database:GetCapZoneForZoneID(supposedZone) + if triggerZone then + group:SendToZone(triggerZone, supposedZone, airbase) + end + + countPerStage[supposedZone] = countPerStage[supposedZone] + 1 + end + end + end + end + end +end + function CapBase:OnStageNumberChanged(number) self.activeStage = number @@ -211,25 +227,21 @@ function CapBase:OnStageNumberChanged(number) mission:SpawnActive() end end - self:SpawnIfApplicable() - timer.scheduleFunction(CheckReschedulingAsync, self, timer.getTime() + 5) end - ---@param stageNumber number ---@return boolean function CapBase:IsBaseActiveWhenStageIsActive(stageNumber) - for _, group in pairs(self.PrimaryGroups) do - local target = group:GetTargetZone(stageNumber) - if target ~= nil then + for _, group in pairs(self.capGroupsByName) do + local target = group:GetZoneIDWhenStageID(tostring(stageNumber)) + if group:IsBackup() == false and target ~= nil then return true end end return false end - if not Spearhead then Spearhead = {} end if not Spearhead.classes then Spearhead.classes = {} end if not Spearhead.classes.capClasses then Spearhead.classes.capClasses = {} end diff --git a/classes/capClasses/CapGroup.lua b/classes/capClasses/CapGroup.lua deleted file mode 100644 index 0039699..0000000 --- a/classes/capClasses/CapGroup.lua +++ /dev/null @@ -1,429 +0,0 @@ - - -local CapHelper = {} -do - ---comment - ---@param groupName string - ---@return table? - CapHelper.ParseGroupName = function(groupName) - local split_string = Spearhead.Util.split_string(groupName, "_") - local partCount = Spearhead.Util.tableLength(split_string) - if partCount >= 3 then - local result = {} - result.zonesConfig = {} - - -- CAP_[1-5]5|[6]6|[7]7_Sukhoi - -- CAP_[1-5,7]A|[6]7_Sukhoi - - local configPart = split_string[2] - local first = configPart:sub(1, 1) - if first == "A" then - result.isBackup = false - configPart = string.sub(configPart, 2, #configPart) - elseif first == "B" then - configPart = string.sub(configPart, 2, #configPart) - result.isBackup = true - elseif first == "[" then - result.isBackup = false - else - Spearhead.AddMissionEditorWarning("Could not parse the CAP config for group: " .. groupName) - return nil - end - - local subsplit = Spearhead.Util.split_string(configPart, "|") - if subsplit then - for key, value in pairs(subsplit) do - local keySplit = Spearhead.Util.split_string(value, "]") - local targetZone = keySplit[2] - local allActives = string.sub(keySplit[1], 2, #keySplit[1]) - local commaSeperated = Spearhead.Util.split_string(allActives, ",") - for _, value in pairs(commaSeperated) do - local dashSeperated = Spearhead.Util.split_string(value, "-") - if Spearhead.Util.tableLength(dashSeperated) > 1 then - local from = tonumber(dashSeperated[1]) - local till = tonumber(dashSeperated[2]) - - for i = from, till do - if targetZone == "A" then - result.zonesConfig[tostring(i)] = tostring(i) - else - result.zonesConfig[tostring(i)] = tostring(targetZone) - end - end - else - if targetZone == "A" then - result.zonesConfig[tostring(dashSeperated[1])] = tostring(dashSeperated[1]) - else - result.zonesConfig[tostring(dashSeperated[1])] = tostring(targetZone) - end - end - end - end - end - return result - else - Spearhead.AddMissionEditorWarning("CAP Group with name: " .. groupName .. "should have at least 3 parts, but has " .. partCount) - return nil - end - end -end - ----comment ----@param input table { groupName, task, logger } ----@param time number ----@return nil -local function setTaskAsync(input, time) - local task = input.task - local groupName = input.groupName - local group = Group.getByName(groupName) - - if task and group then - group:getController():setTask(task) - if input.logger ~= nil then - input.logger:debug("task set succesfully to group " .. groupName) - end - end - return nil -end - - ----@class OnUpdateListener ----@field onGroupStateUpdated fun(self: OnUpdateListener, capGroup: CapGroup) - ----@class CapGroup : OnUnitLostListener ----@field isBackup boolean ----@field groupName string ----@field assignedStageNumber string ----@field private airbaseName string ----@field private logger Logger ----@field private database Database ----@field private capConfig table ----@field private capZonesConfig table ----@field private aliveUnits table ----@field private onStatusUpdatedListener Array -local CapGroup = {} - -CapGroup.GroupState = { - UNSPAWNED = 0, - READYONRAMP = 1, - INTRANSIT = 2, - ONSTATION = 3, - RTBINTEN = 4, - RTB = 5, - DEAD = 6, - REARMING = 7 -} - -local function SetReadyOnRampAsync(self, time) - self:SetState(CapGroup.GroupState.READYONRAMP) -end - -local RESPAWN_AFTER_TOUCHDOWN_SECONDS = 180 - ----comment ----@param groupName string ----@param airbaseName string ----@param logger Logger logger dependency injection ----@param database Database database dependency injection ----@param capConfig table config dependency injection ----@return CapGroup? self -function CapGroup.new(groupName, airbaseName, logger, database, capConfig) - - CapGroup.__index = CapGroup - local self = setmetatable({}, CapGroup) - - Spearhead.DcsUtil.DestroyGroup(groupName) - - -- initials - self.groupName = groupName - self.airbaseName = airbaseName - - local airbase = Airbase.getByName(airbaseName) - if airbase == nil then - logger:error("Airbase with name " .. airbaseName .. " does not exist") - return nil - end - - self.airbaseId = airbase:getID() - self.logger = logger - self.database = database - - local parsed = CapHelper.ParseGroupName(groupName) - if parsed == nil then return nil end - self.capZonesConfig = parsed.zonesConfig - self.isBackup = parsed.isBackup - - --vars - self.assignedStageNumber = nil - - self.state = CapGroup.GroupState.UNSPAWNED - self.aliveUnits = {} - self.landedUnits = {} - self.unitCount = 0 - self.onStationSince = 0 - self.currentCapTaskingDuration = 0 - self.markedForDespawn = false - - self.onStatusUpdatedListener = {} - - --config - self.capConfig = capConfig - - Spearhead.Events.addOnGroupRTBListener(self.groupName, self) - Spearhead.Events.addOnGroupRTBInTenListener(self.groupName, self) - Spearhead.Events.addOnGroupOnStationListener(self.groupName, self) - local units = Group.getByName(groupName):getUnits() - for key, unit in pairs(units) do - Spearhead.Events.addOnUnitLandEventListener(unit:getName(), self) - Spearhead.Events.addOnUnitLostEventListener(unit:getName(), self) - end - - return self -end - ----@param currentActive number ----@return string -function CapGroup:GetTargetZone(currentActive) - return self.capZonesConfig[tostring(currentActive)] -end - -function CapGroup:SetState(state) - self.state = state - self:PublishUnitUpdatedEvent() -end - -function CapGroup:StartRearm() - self:SpawnOnTheRamp() - self:SetState(CapGroup.GroupState.REARMING) - timer.scheduleFunction(SetReadyOnRampAsync, self, timer.getTime() + self.capConfig:getRearmDelay() - RESPAWN_AFTER_TOUCHDOWN_SECONDS) -end - -function CapGroup:SpawnOnTheRamp() - self.markedForDespawn = false - self.logger:debug("Spawning group " .. self.groupName) - self.aliveUnits = {} - self.landedUnits = {} - self.onStationSince = 0 - - local group = Spearhead.DcsUtil.SpawnGroupTemplate(self.groupName, nil, nil, true) - if group then - self.unitCount = group:getInitialSize() - - if self.state == CapGroup.GroupState.UNSPAWNED then - self:SetState(CapGroup.GroupState.READYONRAMP) - end - - for _, unit in pairs(group:getUnits()) do - local name = unit:getName() - self.aliveUnits[name] = true - self.landedUnits[name] = false - end - end -end - -function CapGroup:Despawn() - self.logger:debug("Despawning group " .. self.groupName) - Spearhead.DcsUtil.DestroyGroup(self.groupName) - self:SetState(CapGroup.GroupState.UNSPAWNED) -end - -function CapGroup:SendRTB() - local group = Group.getByName(self.groupName) - if group and group:isExist() then - local speed = math.random(self.capConfig:getMinSpeed(), self.capConfig:getMaxSpeed()) - local rtbTask, errormessage = Spearhead.RouteUtil.CreateRTBMission(self.groupName, self.airbaseId, speed) - if rtbTask then - timer.scheduleFunction(setTaskAsync, { task = rtbTask, groupName = self.groupName, logger = self.logger }, timer.getTime() + 3) - else - self.logger:error("No RTB task could be created for group: " .. self.groupName .. " due to " .. errormessage) - if self.markedForDespawn == true then - self:Despawn() - end - end - end -end - -function CapGroup:SendRTBAndDespawn() - self.markedForDespawn = true - self:SendRTB() -end - ----@param stageZoneNumber string -function CapGroup:SendToStage(stageZoneNumber) - if self.state == CapGroup.GroupState.DEAD or self.state == CapGroup.GroupState.RTB then - return --Can't task a unit that's dead or RTB - end - - self.assignedStageNumber = stageZoneNumber - local group = Group.getByName(self.groupName) - if group and group:isExist() then - self.logger:debug("Sending group out " .. self.groupName) - local controller = group:getController() - local capPoints = self.database:getCapRouteInZone(stageZoneNumber, self.airbaseName) - - if not capPoints then - self.logger:error("No CAP route found for group " .. self.groupName .. " in zone " .. stageZoneNumber) - return - end - - local altitude = math.random(self.capConfig:getMinAlt(), self.capConfig:getMaxAlt()) - local speed = math.random(self.capConfig:getMinSpeed(), self.capConfig:getMaxSpeed()) - local attackHelos = false - local deviationDistance = self.capConfig:getMaxDeviationRange() - local capTask - if self.state == CapGroup.GroupState.ONRAMP or self.onStationSince == 0 then - controller:setCommand({ - id = 'Start', - params = {} - }) - local duration = math.random(self.capConfig:getMinDurationOnStation(), self.capConfig:getmaxDurationOnStation()) - self.currentCapTaskingDuration = duration - - - capTask = Spearhead.RouteUtil.createCapMission(self.groupName, self.airbaseId, capPoints.point1, capPoints.point2, altitude, speed, duration, attackHelos, deviationDistance) - else - local duration = self.currentCapTaskingDuration - (timer.getTime() - self.onStationSince) - capTask = Spearhead.RouteUtil.createCapMission(self.groupName, self.airbaseId, capPoints.point1, capPoints.point2, altitude, speed, duration, attackHelos, deviationDistance) - end - - if capTask then - timer.scheduleFunction(setTaskAsync, - { task = capTask, groupName = self.groupName, logger = self.logger }, timer.getTime() + 3) - end - self:SetState(CapGroup.GroupState.INTRANSIT) - end -end - ----@param airdomeId any -function CapGroup:SendToAirbase(airdomeId) - self.airbaseId = airdomeId - local speed = math.random(self.capConfig:getMinSpeed(), self.capConfig:getMaxSpeed()) - local rtbTask = Spearhead.RouteUtil.CreateRTBMission(self.groupName, airdomeId, speed) - local group = Group.getByName(self.groupName) - - if not group then return end - local controller = group:getController() - controller:setCommand({ - id = 'Start', - params = {} - }) - timer.scheduleFunction(setTaskAsync, { task = rtbTask, groupName = self.groupName, logger = self.logger }, - timer.getTime() + 5) -end - -function CapGroup:OnGroupRTB(groupName) - if groupName == self.groupName then - self.logger:debug("Setting group " .. - groupName .. - " to state RTB after a total of " .. - timer.getTime() - self.onStationSince .. "s of the " .. self.currentCapTaskingDuration .. "s") - self:SetState(CapGroup.GroupState.RTB) - end -end - -function CapGroup:OnGroupRTBInTen(groupName) - if groupName == self.groupName then - self:SetState(CapGroup.GroupState.RTBINTEN) - end -end - -function CapGroup:OnGroupOnStation(groupName) - if groupName == self.groupName then - self.onStationSince = timer.getTime() - self.logger:debug("Setting group " .. groupName .. " to state Onstation") - self:SetState(CapGroup.GroupState.ONSTATION) - end -end - - ----@param proActive boolean Will check all units in group for aliveness -function CapGroup:UpdateState(proActive) - local landed = false - local landedCount = 0 - for name, landedBool in pairs(self.landedUnits) do - if landedBool == true then - landedCount = landedCount + 1 - landed = true - end - end - - local deadCount = 0 - for name, isAlive in pairs(self.aliveUnits) do - if isAlive == false then - deadCount = deadCount + 1 - end - end - - local function DelayedStartRearm(input, time) - local capGroup = input.self - capGroup:StartRearm() - end - - if landedCount + deadCount == self.unitCount then - if landed then - if self.markedForDespawn == true then - self:Despawn() - else - timer.scheduleFunction(DelayedStartRearm, { self = self }, timer.getTime() + RESPAWN_AFTER_TOUCHDOWN_SECONDS) - end - else - if self.markedForDespawn == true then - self:Despawn() - else - local delay = self.capConfig:getDeathDelay() - self.capConfig:getRearmDelay() + RESPAWN_AFTER_TOUCHDOWN_SECONDS - timer.scheduleFunction(DelayedStartRearm, { self = self }, timer.getTime() + delay) - end - end - end -end - - ----@param listener table object with function OnGroupStateUpdated(capGroupTable) -function CapGroup:AddOnStateUpdatedListener(listener) - if type(listener) ~= "table" then - self.logger:error("Listener not of type table for AddOnStateUpdatedListener") - return - end - - if listener.onGroupStateUpdated == nil then - self.logger:error("Listener does not implement onGroupStateUpdated") - return - end - table.insert(self.onStatusUpdatedListener, listener) -end - -function CapGroup:PublishUnitUpdatedEvent() - for _, callable in pairs(self.onStatusUpdatedListener) do - local _, error = pcall(function() - callable:onGroupStateUpdated(self) - end) - if error then - self.logger:error(error) - end - end -end - -function CapGroup:OnUnitLanded(initiatorUnit, airbase) - if airbase then - self.airbaseName = airbase:getName() - end - local name = initiatorUnit:getName() - self.logger:debug("Received unit land event for unit " .. name .. " of group " .. self.groupName) - - self.landedUnits[name] = true - self:UpdateState(false) -end - -function CapGroup:OnUnitLost(initiatorUnit) - self.logger:debug("Received unit lost event for group " .. self.groupName) - if initiatorUnit then - self.aliveUnits[initiatorUnit:getName()] = false - end - self:UpdateState(false) -end - - -if not Spearhead then Spearhead = {} end -if not Spearhead.classes then Spearhead.classes = {} end -if not Spearhead.classes.capClasses then Spearhead.classes.capClasses = {} end -Spearhead.classes.capClasses.CapGroup = CapGroup diff --git a/classes/capClasses/airGroups/AirGroup.lua b/classes/capClasses/airGroups/AirGroup.lua new file mode 100644 index 0000000..39ac951 --- /dev/null +++ b/classes/capClasses/airGroups/AirGroup.lua @@ -0,0 +1,427 @@ +---@class AirGroup : OnUnitLostListener +---@field protected _logger Logger +---@field protected _groupName string +---@field protected _groupType AirGroupType +---@field protected _state AirGroupState +---@field protected _isSpawned boolean +---@field protected _config CapConfig +---@field protected _checkLivenessNumber number +local AirGroup = {} +AirGroup.__index = AirGroup + +---@param logger Logger +---@param groupName string +---@param groupType AirGroupType +---@param config CapConfig +function AirGroup:New(groupName, groupType, config, logger) + self._groupName = groupName + self._groupType = groupType + self._isSpawned = false + self._state = "UnSpawned" -- Default state + self._config = config + self._logger = logger + + local group = Group.getByName(self._groupName) + if group then + Spearhead.Events.addOnGroupRTBListener(self._groupName, self) + Spearhead.Events.addOnGroupRTBInTenListener(self._groupName, self) + Spearhead.Events.addOnGroupOnStationListener(self._groupName, self) + + for _, unit in pairs(group:getUnits()) do + Spearhead.Events.addOnUnitLostEventListener(unit:getName(), self) + Spearhead.Events.addOnUnitLandEventListener(unit:getName(), self) + end + Spearhead.DcsUtil.DestroyGroup(self._groupName) + end +end + +function AirGroup:GetState() + return self._state +end + +function AirGroup:GetName() + return self._groupName +end + +function AirGroup:MarkRearmComplete() + self:Respawn(false) + if self._state == "Rearming" then + self:SetState("ReadyOnTheRamp") + end +end + +---@protected +function AirGroup:SetMission(mission) + self:SetState("InTransit") + + local group = Group.getByName(self._groupName) + if group then + local controller = group:getController() + if controller then + controller:setCommand({ + id = 'Start', + params = {} + }) + end + end + + local setMissionDelayed = function(data, time) + data.self:SetMissionPrivate(data.mission) + end + + local data = { + self = self, + mission = mission + } + + timer.scheduleFunction(setMissionDelayed, data, timer.getTime() + 5) +end + +function AirGroup:SetMissionPrivate(mission) + self:SetState("InTransit") + local group = Group.getByName(self._groupName) + if group and mission then + group:getController():setTask(mission) + self._logger:debug("mission - Task set for group: " .. self._groupName) + end +end + +---@param airbase Airbase +function AirGroup:SendRTB(airbase) + self._logger:debug("AirGroup:SendRTB called for group: " .. self._groupName) + self:SetState("Rtb") + local group = Group.getByName(self._groupName) + if group then + ---@type Vec3 + local location = nil + for _, unit in pairs(group:getUnits()) do + if unit and unit:isExist() == true and unit:inAir() == true then + location = unit:getPoint() + break + end + end + if location then + local mission = Spearhead.classes.capClasses.taskings.RTB.getAsMission(airbase, { x= location.x, y= location.z }, self._config) + group:getController():setTask(mission) + self._logger:debug("AirGroup:SendRTB - Task set for group: " .. self._groupName) + end + end +end + +function AirGroup:Spawn() + if self._isSpawned then return end + self:SpawnInternal(false) +end + +---@param force boolean +---@param withoutLoadout boolean? +---@protected +function AirGroup:SpawnInternal(force, withoutLoadout) + + if withoutLoadout == nil then withoutLoadout = false end + + if self._isSpawned and force ~= true then return end + + local group, isStatic = Spearhead.DcsUtil.SpawnGroupTemplate(self._groupName, nil, nil, true, nil, withoutLoadout) + if isStatic == true then + --- If For Some reaons someone tries to schedule static units as CAP classes + self._state = "UnSpawned" + return + end + + if group then + self._group = group + self._isSpawned = true + self._initialSize = #group:getUnits() + self._liveState = {} + else + self._logger:error("Failed to spawn group: " .. self._groupName) + end + + if self._state == "UnSpawned" then + self:SetState("ReadyOnTheRamp") + end + + ---@param selfA AirGroup + local function CheckLivenessTask(selfA, time) + local interval = selfA:CheckLiveness() + if not interval then return end + return time + interval + end + + if self._checkLivenessNumber then + timer.removeFunction(self._checkLivenessNumber) + end + + self._checkLivenessNumber = timer.scheduleFunction(CheckLivenessTask, self, timer.getTime() + 5) +end + + +---@param withoutLoadout boolean? +function AirGroup:Respawn(withoutLoadout) + self:SpawnInternal(true, withoutLoadout) +end + +---@protected +---@param state AirGroupState +function AirGroup:SetState(state) + if self._state == state then return end + self._state = state + self._logger:debug("AirGroup:State changed for group: " .. self._groupName .. " to state: " .. state) +end + +---@return number? timeInterval +function AirGroup:CheckLiveness() + local isAlive = false + local group = Group.getByName(self._groupName) + + if group and group:isExist() == true then + for _, unit in pairs(group:getUnits()) do + if unit and unit:isExist() == true and unit:getLife() > (unit:getLife0() * 0.3) then + isAlive = true + end + end + end + + if isAlive == false then + self:SetState("Dead") + self:CheckStateAndStartRepairRearm() + return nil + end + + return 10 +end + +---@protected +function AirGroup:OnLastUnitLanded() + --- Once landed monitor the units until it's at it's designated location (or died) + + -- Units + + ---@class CheckGroupForRestartData + ---@field self AirGroup + ---@field lastLocations table + ---@field lastChangeTime number + + ---@param data CheckGroupForRestartData + ---@param time number + local checkGroupForRestart = function(data, time) + local group = Group.getByName(data.self:GetName()) + if not group then + self:CheckStateAndStartRepairRearm() + return + end + + for _, unit in pairs(group:getUnits()) do + if unit and unit:isExist() then + local pos = unit:getPoint() + + + if data.lastLocations[unit:getName()] == nil then + data.lastLocations[unit:getName()] = pos + return time + 5 + end + + if pos and Spearhead.Util.VectorDistance3d(pos, data.lastLocations[unit:getName()]) > 10 then + data.lastChangeTime = time + end + data.lastLocations[unit:getName()] = pos + end + end + + if data.lastChangeTime + 30 < time then + -- If no change in 30 seconds, assume all units are parked + local withoutLoadout = true + data.self:Respawn(withoutLoadout) + data.self:CheckStateAndStartRepairRearm() + return + end + + return time + 5 + end + + ---@type CheckGroupForRestartData + local data = { + self = self, + lastLocations = {}, + lastChangeTime = timer.getTime() + } + + local group = Group.getByName(self._groupName) + if group then + for _, unit in pairs(group:getUnits()) do + data.lastLocations[unit:getName()] = unit:getPoint() + end + end + timer.scheduleFunction(checkGroupForRestart, data, timer.getTime() + 5) + self._logger:debug("AirGroup:OnLastUnitLanded - Monitoring group: " .. self._groupName) +end + +function AirGroup:CheckStateAndStartRepairRearm() + self._logger:debug("AirGroup:CheckStateAndStartRepairRearm called for group: " .. self._groupName) + local group = Group.getByName(self._groupName) + local anyAlive = false + local allAlive = true + + if group then + for _, unit in pairs(group:getUnits()) do + if unit and unit:isExist() == true and unit:getLife() > (unit:getLife0() * 0.3) then + anyAlive = true + else + allAlive = false + end + end + end + + if anyAlive == false then + -- Schedule Spawn + Repair + Rearm + self:StartRespawn() + return + end + + if allAlive == false then + --- Schedule Spawn + Repair + Rearm + self:StartRepair() + return + end + + --- Reschedule Spawn + Rearm + self:StartRearm() +end + +do --- RESPAWN FUNCTIONS + --[[ + TODO: Checks to be added to the functions in case a group is destroyed while waiting for repair/rearm. + ]] + + function AirGroup:StartRespawn() + self:SetState("Dead") + + local respawnTask = function(selfA, time) + selfA:RepairDelayed() + end + + local delay = self._config:getDeathDelay() + if delay < 2 then + delay = 2 + end + return timer.scheduleFunction(respawnTask, self, timer.getTime() + delay) + end + + function AirGroup:StartRepair() + self:SetState("Repairing") + + if self._isSpawned == false then + self:Spawn() + end + + local rearmTask = function(selfA, time) + self:StartRearm() + end + + local delay = self._config:getRepairDelay() + if delay < 2 then + delay = 2 + end + + return timer.scheduleFunction(rearmTask, self, timer.getTime() + delay) + end + + function AirGroup:StartRearm() + self:SetState("Rearming") + + if self._isSpawned == false then + self:Spawn() + end + + local rearmDelay = self._config:getRearmDelay() + if rearmDelay < 2 then + rearmDelay = 2 + end + + ---@param selfA AirGroup + local rearmTask = function(selfA, time) + selfA:MarkRearmComplete() + end + + -- Schedule Rearm Complete + return timer.scheduleFunction(rearmTask, self, timer.getTime() + rearmDelay) + end +end + + +do --EVENT LISTENERS + ---@param unit Unit + function AirGroup:OnUnitLost(unit) + self:CheckLiveness() + end + + ---@param groupName string + function AirGroup:OnGroupRTBInTen(groupName) + if self._groupName == groupName then + self._logger:debug("AirGroup:OnGroupRTBInTen called for group: " .. self._groupName) + self:SetState("RtbInTen") + end + end + + ---@param groupName string + function AirGroup:OnGroupRTB(groupName) + if self._groupName == groupName then + self._logger:debug("AirGroup:OnGroupRTB called for group: " .. self._groupName) + self:SetState("Rtb") + end + end + + function AirGroup:OnUnitLanded(unit, airbase) + local anyInAir = false + local group = Group.getByName(self._groupName) + if group then + for _, u in pairs(group:getUnits()) do + if u and u:isExist() == true and u:inAir() == true then + anyInAir = true + break + end + end + end + + if not anyInAir then + self:OnLastUnitLanded() + end + end + + function AirGroup:OnGroupOnStation(groupName) + if self._groupName == groupName then + self:SetState("OnStation") + end + end +end + +function AirGroup:Destroy() + Spearhead.DcsUtil.DestroyGroup(self._groupName) +end + +if not Spearhead then Spearhead = {} end +if not Spearhead.classes then Spearhead.classes = {} end +if not Spearhead.classes.capClasses then Spearhead.classes.capClasses = {} end +if not Spearhead.classes.capClasses.airGroups then Spearhead.classes.capClasses.airGroups = {} end +Spearhead.classes.capClasses.airGroups.AirGroup = AirGroup + +---@alias AirGroupState +---| "UnSpawned" +---| "ReadyOnTheRamp +---| "InTransit" +---| "OnStation" +---| "RtbInTen" +---| "Rtb" +---| "Dead" +---| "Repairing" +---| "Rearming" + + +---@alias AirGroupType +---| "CAP" + +---| "CAS" +---| "SEAD" +---| "INTERCEPT" +---| "" diff --git a/classes/capClasses/airGroups/CapGroup.lua b/classes/capClasses/airGroups/CapGroup.lua new file mode 100644 index 0000000..f489302 --- /dev/null +++ b/classes/capClasses/airGroups/CapGroup.lua @@ -0,0 +1,144 @@ + +---@class CapGroup : AirGroup +---@field private _targetZoneIdPerStage table +---@field private _isBackup boolean +---@field private _currentTargetZoneID string? +local CapGroup = {} +CapGroup.__index = CapGroup + + +---@param groupName string +---@param config CapConfig +---@param logger Logger +---@return CapGroup +function CapGroup.New(groupName, config, logger) + + setmetatable(CapGroup, Spearhead.classes.capClasses.airGroups.AirGroup) + local self = setmetatable({}, CapGroup) --[[@as CapGroup]] + Spearhead.classes.capClasses.airGroups.AirGroup.New(self, groupName, "CAP", config, logger) + + self._targetZoneIdPerStage = {} + + self:InitWithName(groupName) + + return self +end + +---@return boolean +function CapGroup:IsBackup() + return self._isBackup +end + +---@return string? +function CapGroup:GetZoneIDWhenStageID(stageID) + return self._targetZoneIdPerStage[stageID] +end + +---@return string? +function CapGroup:GetCurrentTargetZoneID() + return self._currentTargetZoneID +end + +---@param zone SpearheadTriggerZone +---@param targetZoneID string +---@param airbase Airbase +function CapGroup:SendToZone(zone, targetZoneID, airbase) + + self._logger:debug("Airgroup " .. self._groupName .. " called to zone: " .. zone.name) + + self._currentTargetZoneID = targetZoneID + local group = Group.getByName(self._groupName) + + local isInAir = false + if group then + local units = group:getUnits() + for _, unit in pairs(units) do + if unit:inAir() == true then + isInAir = true + break + end + end + else + self._logger:debug("CapGroup:SendToZone - Group not found: " .. self._groupName) + return + end + + if isInAir == true then + local mission = Spearhead.classes.capClasses.taskings.CAP.getAsMission(self._groupName, airbase, zone, self._config) + self:SetMission(mission) + else + local mission = Spearhead.classes.capClasses.taskings.CAP.getAsMissionFromAirbase(self._groupName, airbase, zone, self._config) + if mission then + self:SetMission(mission) + else + self._logger:warn("CapGroup:SendToZone - Mission could not be created for group: " .. self._groupName) + return + end + end +end + +---@private +function CapGroup:InitWithName(groupName) + local split_string = Spearhead.Util.split_string(groupName, "_") + local partCount = Spearhead.Util.tableLength(split_string) + if partCount >= 3 then + + local configPart = split_string[2] + local first = configPart:sub(1, 1) + if first == "A" then + self._isBackup = false + configPart = string.sub(configPart, 2, #configPart) + elseif first == "B" then + configPart = string.sub(configPart, 2, #configPart) + self._isBackup = true + elseif first == "[" then + self._isBackup = false + else + Spearhead.AddMissionEditorWarning("Could not parse the CAP config for group: " .. groupName) + return + end + + local subsplit = Spearhead.Util.split_string(configPart, "|") + if subsplit then + for key, value in pairs(subsplit) do + local keySplit = Spearhead.Util.split_string(value, "]") + local targetZone = keySplit[2] + local allActives = string.sub(keySplit[1], 2, #keySplit[1]) + local commaSeperated = Spearhead.Util.split_string(allActives, ",") + for _, value in pairs(commaSeperated) do + local dashSeperated = Spearhead.Util.split_string(value, "-") + if Spearhead.Util.tableLength(dashSeperated) > 1 then + local from = tonumber(dashSeperated[1]) + local till = tonumber(dashSeperated[2]) + + for i = from, till do + if targetZone == "A" then + self._targetZoneIdPerStage[tostring(i)] = tostring(i) + else + self._targetZoneIdPerStage[tostring(i)] = targetZone + end + end + else + if targetZone == "A" then + self._targetZoneIdPerStage[tostring(dashSeperated[1])] = tostring(dashSeperated[1]) + else + self._targetZoneIdPerStage[tostring(dashSeperated[1])] = targetZone + end + end + end + end + end + + env.info("Capgroup parsed with table: " .. Spearhead.Util.toString(self._targetZoneIdPerStage)) + + else + Spearhead.AddMissionEditorWarning("CAP Group with name: " .. groupName .. "should have at least 3 parts, but has " .. partCount) + return nil + end +end + +if not Spearhead then Spearhead = {} end +if not Spearhead.classes then Spearhead.classes = {} end +if not Spearhead.classes.capClasses then Spearhead.classes.capClasses = {} end +if not Spearhead.classes.capClasses.airGroups then Spearhead.classes.capClasses.airGroups = {} end +Spearhead.classes.capClasses.airGroups.CapGroup = CapGroup \ No newline at end of file diff --git a/classes/capClasses/runwayBombing/RunwayBombingTracker.lua b/classes/capClasses/runwayBombing/RunwayBombingTracker.lua index ab64ceb..b6a945c 100644 --- a/classes/capClasses/runwayBombing/RunwayBombingTracker.lua +++ b/classes/capClasses/runwayBombing/RunwayBombingTracker.lua @@ -21,16 +21,12 @@ end ---@param weapon Weapon function RunwayBombingTracker:OnWeaponFired(unit, weapon, target) - if weapon == nil then + if weapon == nil then return end - self._logger:debug("Tracking weapon for runway impact onWeaponFired") - local desc = weapon:getDesc() - local isTrackable = desc.category == Weapon.Category.BOMB or (desc.category == Weapon.Category.MISSILE and desc.missileCategory == Weapon.MissileCategory.CRUISE) - if isTrackable == true then ---@type WeaponTrackingArgs diff --git a/classes/capClasses/taskings/CAP.lua b/classes/capClasses/taskings/CAP.lua new file mode 100644 index 0000000..d198e39 --- /dev/null +++ b/classes/capClasses/taskings/CAP.lua @@ -0,0 +1,327 @@ +---@class CAPTasking +local CAP = {} + +---@param attackHelos boolean +---@return table +local function GetCAPTargetTypes(attackHelos) + local targetTypes = { + [1] = "Planes", + } + + if attackHelos then + targetTypes[2] = "Helicopters" + end + + return targetTypes +end + +---@class CapTaskingOptions +---@field furthest Vec2 +---@field closest Vec2 +---@field legLength number +---@field width number +---@field hotLegDir number + + +---@param capZone SpearheadTriggerZone +---@param airBase Airbase +---@return CapTaskingOptions +local function GetCAPPointFromTriggerZone(airBase, capZone) + local furthestA = nil + local furthestB = nil + + local furthestFromBase = nil + local furthestFromBaseDistance = 0 + + local furthestDistance = 0 + + for indexA, pointA in ipairs(capZone.verts) do + for indexB, pointB in ipairs(capZone.verts) do + if pointA ~= pointB then + local distance = Spearhead.Util.VectorDistance2d(pointA, pointB) + if distance > furthestDistance then + furthestDistance = distance + furthestA = indexA + furthestB = indexB + end + end + end + end + + local baseVec3 = airBase:getPoint() + + ---@type Vec2 + local baseVec2 = { x = baseVec3.x, y = baseVec3.z } + + local pointA = capZone.verts[furthestA] + local pointB = capZone.verts[furthestB] + local furthest = pointA + local closest = pointB + + local heading = Spearhead.Util.vectorHeadingFromTo(pointA, pointB) + + if Spearhead.Util.VectorDistance2d(baseVec2, pointB) > Spearhead.Util.VectorDistance2d(baseVec2, pointA) then + furthest = pointB + closest = pointA + heading = Spearhead.Util.vectorHeadingFromTo(pointB, pointA) + end + + local distance = furthestDistance + if distance > 15000 then + distance = distance - 10000 + end + + return { + width = 10000, + furthest = furthest, + closest = closest, + legLength = distance, + hotLegDir = math.rad(heading), + orbitOriginPoint = closest + } +end + +---@param airbase Airbase +---@param capZone SpearheadTriggerZone +---@param capConfig CapConfig +local GetOutboundTask = function(airbase, capZone, capConfig) + local airbaseVec3 = airbase:getPoint() + local airbaseVec2 = { x = airbaseVec3.x, y = airbaseVec3.z } + local heading = Spearhead.Util.vectorHeadingFromTo(airbaseVec2, capZone.location) + local point = Spearhead.Util.vectorMove(airbaseVec2, heading, 18520) + + return { + alt = 2000, + action = "Fly Over Point", + type = "Turning Point", + alt_type = "BARO", + speed = capConfig:getMinSpeed(), + ETA = 0, + ETA_locked = false, + x = point.x, + y = point.y, + speed_locked = false, + formation_template = "", + task = { + id = "ComboTask", + params = { + tasks = { + [1] = { + id = 'EngageTargets', + params = { + maxDist = capConfig:getMaxDeviationRange() + 10 * 1852, + maxDistEnabled = capConfig:getMaxDeviationRange() > 0, -- required to check maxDist + targetTypes = GetCAPTargetTypes(false), + priority = 0 + } + }, + } + } + } + } +end + +---@param groupName string +---@param airbase Airbase +---@param capZone SpearheadTriggerZone +---@param capConfig CapConfig +function CAP.getAsMissionFromAirbase(groupName, airbase, capZone, capConfig) + local points = { + [1] = GetOutboundTask(airbase, capZone, capConfig), + [2] = GetOutboundTask(airbase, capZone, capConfig), + [3] = CAP.getAsTasking(groupName, airbase, capZone, capConfig), + [4] = Spearhead.classes.capClasses.taskings.RTB.getApproachPoint(airbase, capZone.location, capConfig), + [5] = Spearhead.classes.capClasses.taskings.RTB.getInitialPoint(airbase), + [6] = Spearhead.classes.capClasses.taskings.RTB.getLandingPoint(airbase) + } + + local mission = { + id = 'Mission', + params = { + airborne = true, + route = { + points = points + } + } + } + + return mission +end + +---@param groupName string +---@param airbase Airbase +---@param capZone SpearheadTriggerZone +---@param capConfig CapConfig +function CAP.getAsMission(groupName, airbase, capZone, capConfig) + local points = { + [1] = CAP.getAsTasking(groupName, airbase, capZone, capConfig), + [2] = Spearhead.classes.capClasses.taskings.RTB.getApproachPoint(airbase, capZone.location, capConfig), + [3] = Spearhead.classes.capClasses.taskings.RTB.getInitialPoint(airbase), + [4] = Spearhead.classes.capClasses.taskings.RTB.getLandingPoint(airbase) + } + + local mission = { + id = 'Mission', + params = { + airborne = true, + route = { + points = points + } + } + } + + return mission +end + +---@private +---@param groupName string +---@param airbase Airbase +---@param capZone SpearheadTriggerZone +---@param capConfig CapConfig +function CAP.getAsTasking(groupName, airbase, capZone, capConfig) + local duration = math.random(capConfig:getMinDurationOnStation(), capConfig:getMaxDurationOnStation()) or 1500 + + local capTaskingOptions = GetCAPPointFromTriggerZone(airbase, capZone) + + local durationBefore10 = duration - 600 + if durationBefore10 < 0 then durationBefore10 = 0 end + local durationAfter10 = 600 + if duration < 600 then + durationAfter10 = duration + end + + local alt = math.random(capConfig:getMinAlt(), capConfig:getMaxAlt()) + local speed = math.random(capConfig:getMinSpeed(), capConfig:getMaxSpeed()) + + return { + alt = alt, + action = "Turning Point", + alt_type = "BARO", + speed = speed, + ETA = 0, + ETA_locked = false, + x = capTaskingOptions.closest.x, + y = capTaskingOptions.closest.y, + speed_locked = true, + formation_template = "", + task = { + id = "ComboTask", + params = { + tasks = { + [1] = { + number = 1, + auto = false, + id = "WrappedAction", + enabled = "true", + params = { + action = { + id = "Script", + params = { + command = "pcall(Spearhead.Events.PublishOnStation, \"" .. groupName .. "\")" + } + } + } + }, + + [2] = { + id = 'EngageTargets', + params = { + maxDist = capConfig:getMaxDeviationRange(), + maxDistEnabled = capConfig:getMaxDeviationRange() >= 0, -- required to check maxDist + targetTypes = GetCAPTargetTypes(false), + priority = 0 + } + }, + [3] = { + number = 3, + auto = false, + id = "ControlledTask", + enabled = true, + params = { + task = { + id = "Orbit", + params = { + altitude = alt, + pattern = "Anchored", + speed = speed, + point = { + x = capTaskingOptions.closest.x, + y = capTaskingOptions.closest.y + }, + speedEdited = true, + clockWise = false, + hotLegDir = capTaskingOptions.hotLegDir, + legLength = capTaskingOptions.legLength, + width = capTaskingOptions.width, + } + }, + stopCondition = { + duration = durationBefore10, + condition = "return Spearhead.DcsUtil.NeedsRTBInTen(\"" .. groupName .. "\", 0.10)", + } + } + }, + [4] = { + number = 4, + auto = false, + id = "WrappedAction", + enabled = "true", + params = { + action = { + id = "Script", + params = { + command = "pcall(Spearhead.Events.PublishRTBInTen, \"" .. groupName .. "\")" + } + } + } + }, + [5] = { + number = 5, + auto = false, + id = "ControlledTask", + enabled = true, + params = { + task = { + id = "Orbit", + params = { + altitude = alt, + pattern = "Circle", + speed = speed, + -- speedEdited = true, + -- clockWise = false, + -- hotLegDir = capTaskingOptions.hotLegDir, + -- legLength = capTaskingOptions.legLength, + -- width = capTaskingOptions.width, + } + }, + stopCondition = { + duration = durationAfter10, + condition = "return Spearhead.DcsUtil.IsBingoFuel(\"" .. groupName .. "\")", + } + } + }, + [6] = { + number = 6, + auto = false, + id = "WrappedAction", + enabled = "true", + params = { + action = { + id = "Script", + params = { + command = "pcall(Spearhead.Events.PublishRTB, \"" .. groupName .. "\")" + } + } + } + } + } + } + } + } +end + +if not Spearhead then Spearhead = {} end +if not Spearhead.classes then Spearhead.classes = {} end +if not Spearhead.classes.capClasses then Spearhead.classes.capClasses = {} end +if not Spearhead.classes.capClasses.taskings then Spearhead.classes.capClasses.taskings = {} end +Spearhead.classes.capClasses.taskings.CAP = CAP diff --git a/classes/capClasses/taskings/RTB.lua b/classes/capClasses/taskings/RTB.lua new file mode 100644 index 0000000..c00108c --- /dev/null +++ b/classes/capClasses/taskings/RTB.lua @@ -0,0 +1,201 @@ + +---@class RTBTasking +local RTB = {} + + +---@param airbase Airbase +---@param missionPoint Vec2 +---@param capConfig CapConfig +function RTB.getAsMission(airbase, missionPoint, capConfig) + return { + id = "Mission", + params = { + airborne = true, + route = { + points = { + [1] = RTB.getApproachPoint(airbase, missionPoint, capConfig), + [2] = RTB.getInitialPoint(airbase), + [3] = RTB.getLandingPoint(airbase) + } + } + } + } + +end + +---@param airbase Airbase +---@return number +local getRunwayIntoWindCourseRad = function(airbase) + + local activeCourse = nil + local minAlignment = nil + + local runways = airbase:getRunways() + + local windVec = atmosphere.getWind(airbase:getPoint()) + local mPerS = Spearhead.Util.vectorMagnitude(windVec) + + if mPerS > 0 then + for i = 1, #runways do + local runway = runways[i] + + do --normal + local rad = runway.course + if rad < 0 then + rad = math.abs(rad) + else + rad = 0 - rad + end + + local runwayVec = {x = math.cos(rad), z = math.sin(rad), y = 0} + local alignment = Spearhead.Util.vectorAlignment(windVec, runwayVec) + + if minAlignment == nil or alignment < minAlignment then + activeCourse = i + minAlignment = alignment + end + end + + do --inverse + local degree = math.deg(runway.course) + degree = (degree + 180) % 360 + + local rad = math.rad(degree) + if rad < 0 then + rad = math.abs(rad) + else + rad = 0 - rad + end + + local runwayVec = {x = math.cos(rad), z = math.sin(rad), y = 0} + local alignment = Spearhead.Util.vectorAlignment(windVec, runwayVec) + + if minAlignment == nil or alignment < minAlignment then + activeCourse = i + minAlignment = alignment + end + end + end + end + + local rad = runways[1].course + + if activeCourse ~= nil then + rad = runways[activeCourse].course + end + + if rad < 0 then + return math.abs(rad) + else + return 0 - rad + end + +end + +---comment +---@param airbase Airbase +---@return Vec2 +---@return number headingFromRunwayDegrees +local function calcInitialPoint(airbase) + local runwayCourseRad = getRunwayIntoWindCourseRad(airbase) + local heading = math.deg(runwayCourseRad) + local flipped = (heading + 180) % 360 + local basePoint = airbase:getPoint() + local basePointVec2 = {x = basePoint.x, y = basePoint.z} + local point = Spearhead.Util.vectorMove(basePointVec2, flipped, 22000) + + return point, flipped + +end + + +---comment +---@param airbase Airbase +---@param missionPoint Vec2 +---@param capConfig CapConfig +function RTB.getApproachPoint(airbase, missionPoint, capConfig) + + local initialPoint, headingFromRunway = calcInitialPoint(airbase) + local pointA = Spearhead.Util.vectorMove(initialPoint, headingFromRunway - 45, 9000) + local pointB = Spearhead.Util.vectorMove(initialPoint, headingFromRunway + 45, 9000) + + if Spearhead.Util.VectorDistance2d(missionPoint, pointA) > Spearhead.Util.VectorDistance2d(missionPoint, pointB) then + pointA = pointB + end + + return { + alt = 3000, + action = "Turning Point", + alt_type = "BARO", + speed = capConfig:getMinSpeed(), + ETA = 0, + ETA_locked = false, + x = pointA.x, + y = pointA.y, + speed_locked = true, + formation_template = "", + type = "Turning Point", + task = { + id = "ComboTask", + params = { + tasks = {} + } + } + } + +end + +---@param airbase Airbase +function RTB.getInitialPoint(airbase) + local point = calcInitialPoint(airbase) + return { + alt = 600, + action = "Turning Point", + alt_type = "BARO", + speed = 180, + ETA = 0, + ETA_locked = false, + x = point.x, + y = point.y, + speed_locked = true, + formation_template = "", + type = "Turning Point", + task = { + id = "ComboTask", + params = { + tasks = {} + } + } + } +end + +function RTB.getLandingPoint(airbase) + local basePoint = airbase:getPoint() + return { + alt = basePoint.y, + action = "Landing", + alt_type = "BARO", + speed = 70, + ETA = 0, + ETA_locked = false, + x = basePoint.x, + y = basePoint.z, + speed_locked = true, + formation_template = "", + airdromeId = airbase:getID(), + type = "Land", + task = { + id = "ComboTask", + params = { + tasks = {} + } + } + } +end + + +if not Spearhead then Spearhead = {} end +if not Spearhead.classes then Spearhead.classes = {} end +if not Spearhead.classes.capClasses then Spearhead.classes.capClasses = {} end +if not Spearhead.classes.capClasses.taskings then Spearhead.classes.capClasses.taskings = {} end +Spearhead.classes.capClasses.taskings.RTB = RTB \ No newline at end of file diff --git a/classes/configuration/CapConfig.lua b/classes/configuration/CapConfig.lua index a88c40e..bac55f3 100644 --- a/classes/configuration/CapConfig.lua +++ b/classes/configuration/CapConfig.lua @@ -1,56 +1,98 @@ - +---@class CapConfig +---@field private _isEnabled boolean +---@field private _minSpeed number +---@field private _maxSpeed number +---@field private _minAlt number +---@field private _maxAlt number +---@field private _minDurationOnStation number +---@field private _maxDurationOnStation number +---@field private _maxDeviationRange number +---@field private _rearmDelay number +---@field private _repairDelay number +---@field private _deathDelay number local CapConfig = {}; -function CapConfig:new() - local o = {} - setmetatable(o, { __index = self }) +CapConfig.__index = CapConfig + +---@return CapConfig +function CapConfig.new() + local self = setmetatable({}, CapConfig) if SpearheadConfig == nil then SpearheadConfig = {} end if SpearheadConfig.CapConfig == nil then SpearheadConfig.CapConfig = {} end local enabled = SpearheadConfig.CapConfig.enabled if enabled == nil then enabled = true end - ---@return boolean - o.isEnabled = function(self) return enabled == true end + self._isEnabled = enabled - local minSpeed = (tonumber(SpearheadConfig.CapConfig.minSpeed) or 400) * 0.514444 - ---@return number - o.getMinSpeed = function(self) return minSpeed end + self._minSpeed = (tonumber(SpearheadConfig.CapConfig.minSpeed) or 400) * 0.514444 + self._maxSpeed = (tonumber(SpearheadConfig.CapConfig.maxSpeed) or 400) * 0.514444 - local maxSpeed = (tonumber(SpearheadConfig.CapConfig.maxSpeed) or 400) * 0.514444 - ---@return number - o.getMaxSpeed = function(self) return maxSpeed end + self._minAlt = (tonumber(SpearheadConfig.CapConfig.minAlt) or 18000) * 0.3048 + self._maxAlt = (tonumber(SpearheadConfig.CapConfig.maxAlt) or 28000) * 0.3048 - local minAlt = (tonumber(SpearheadConfig.CapConfig.minAlt) or 18000) * 0.3048 - ---@return number - o.getMinAlt = function(self) return minAlt end + self._minDurationOnStation = 1200 + self._maxDurationOnStation = 2700 - local maxAlt = (tonumber(SpearheadConfig.CapConfig.maxAlt) or 28000) * 0.3048 - ---@return number - o.getMaxAlt = function(self) return maxAlt end + self._maxDeviationRange = 35 * 1852 -- in meters + self._rearmDelay = tonumber(SpearheadConfig.CapConfig.rearmDelay) or 600 + self._repairDelay = tonumber(SpearheadConfig.CapConfig.repairDelay) or 600 + self._deathDelay = tonumber(SpearheadConfig.CapConfig.deathDelay) or 1800 - local minDurationOnStation = 1200 - ---@return number - o.getMinDurationOnStation = function(self) return minDurationOnStation end + return self; +end - local maxDurationOnStation = 2700 - ---@return number - o.getmaxDurationOnStation = function(self) return maxDurationOnStation end +function CapConfig:isEnabled() + return self._isEnabled +end - local maxDeviationRange = 20 * 1852; - ---@return number - o.getMaxDeviationRange = function(self) return maxDeviationRange end +---@return number +function CapConfig:getMinSpeed() + return self._minSpeed +end - local rearmDelay = tonumber(SpearheadConfig.CapConfig.rearmDelay) or 600 - ---@return number - o.getRearmDelay = function(self) return rearmDelay end +---@return number +function CapConfig:getMaxSpeed() + return self._maxSpeed +end - local deathDelay = tonumber(SpearheadConfig.CapConfig.deathDelay) or 1800 - ---@return number - o.getDeathDelay = function(self) return deathDelay end - o.logLevel = "INFO" +---@return number +function CapConfig:getMinAlt() + return self._minAlt +end - return o; +---@return number +function CapConfig:getMaxAlt() + return self._maxAlt +end + +---@return number +function CapConfig:getMinDurationOnStation() + return self._minDurationOnStation +end + +---@return number +function CapConfig:getMaxDurationOnStation() + return self._maxDurationOnStation +end + +---@return number +function CapConfig:getMaxDeviationRange() + return self._maxDeviationRange +end + +---@return number +function CapConfig:getRearmDelay() + return self._rearmDelay +end + +function CapConfig:getRepairDelay() + return self._repairDelay +end + +---@return number +function CapConfig:getDeathDelay() + return self._deathDelay end if not Spearhead.internal then Spearhead.internal = {} end diff --git a/classes/spearhead_base.lua b/classes/spearhead_base.lua index e0826d4..d6b78f5 100644 --- a/classes/spearhead_base.lua +++ b/classes/spearhead_base.lua @@ -36,15 +36,15 @@ do -- INIT UTIL ---@param orig table ---@return table copy - function UTIL.copyTable(orig) + function UTIL.deepCopyTable(orig) local orig_type = type(orig) local copy if orig_type == 'table' then copy = {} for orig_key, orig_value in next, orig, nil do - copy[UTIL.copyTable(orig_key)] = UTIL.copyTable(orig_value) + copy[UTIL.deepCopyTable(orig_key)] = UTIL.deepCopyTable(orig_value) end - setmetatable(copy, UTIL.copyTable(getmetatable(orig))) + setmetatable(copy, UTIL.deepCopyTable(getmetatable(orig))) else -- number, string, boolean, etc copy = orig end @@ -88,15 +88,15 @@ do -- INIT UTIL table.insert(sb, string.rep(" ", indent)) -- indent it if type(value) == "table" and not done[value] then done[value] = true - table.insert(sb, key .. " = {\n"); + table.insert(sb, "[\"" ..key .. "\"]" .. " = {\n"); table.insert(sb, table_print(value, indent + 2, done)) table.insert(sb, string.rep(" ", indent)) -- indent it - table.insert(sb, "}\n"); + table.insert(sb, "},\n"); elseif "number" == type(key) then - table.insert(sb, string.format("\"%s\"\n", tostring(value))) + table.insert(sb, string.format("\"%s\",\n", tostring(value))) else table.insert(sb, string.format( - "%s = \"%s\"\n", tostring(key), tostring(value))) + "[\"%s\"] = \"%s\",\n", tostring(key), tostring(value))) end end return table.concat(sb) @@ -172,6 +172,54 @@ do -- INIT UTIL return (vec.x ^ 2 + vec.y ^ 2 + vec.z ^ 2) ^ 0.5 end + ---@param vec Vec3 + ---@return Vec3 + function UTIL.vectorNormalize(vec) + local magnitude = UTIL.vectorMagnitude(vec) + if magnitude == 0 then + return { x = 0, y = 0, z = 0 } + end + return { x = vec.x / magnitude, y = vec.y / magnitude, z = vec.z / magnitude } + end + + ---@param vec Vec2 + ---@param direction number @in degrees + ---@param distance number + ---@return Vec2 + function UTIL.vectorMove(vec, direction, distance) + local rad = math.rad(direction) + local x = vec.x + (math.cos(rad) * distance) + local y = vec.y + (math.sin(rad) * distance) + + return { x = x, y = y} + end + + ---comment + ---@param vec1 Vec2 + ---@param vec2 Vec2 + ---@return number in degrees + function UTIL.vectorHeadingFromTo(vec1, vec2) + local dx = vec2.x - vec1.x + local dy = vec2.y - vec1.y + local heading = math.deg(math.atan2(dy, dx)) + if heading < 0 then + heading = heading + 360 + end + return heading + end + + + + ---@param vec1 Vec3 + ---@param vec2 Vec3 + ---@return number alignment a number in range [-1,1]. > 0 same direction. < 0 opposite direction + function UTIL.vectorAlignment(vec1, vec2) + local vec1Norm = UTIL.vectorNormalize(vec1) + local vec2Norm = UTIL.vectorNormalize(vec2) + + return ((vec1Norm.x * vec2Norm.x) + (vec1Norm.y * vec2Norm.y) + (vec1Norm.z * vec2Norm.z)) + end + local function isInComplexPolygon(polygon, x, y) local function getEdges(poly) local result = {} @@ -706,7 +754,7 @@ do -- INIT DCS_UTIL ---@param groupName string function DCS_UTIL.IsGroupStatic(groupName) if DCS_UTIL.__miz_groups[groupName] then - return DCS_UTIL.__miz_groups[groupName].category == DCS_UTIL.GroupCategory.STATIC; + return DCS_UTIL.__miz_groups[groupName].category == DCS_UTIL.GroupCategory.STATIC end return StaticObject.getByName(groupName) ~= nil @@ -1255,9 +1303,10 @@ do -- INIT DCS_UTIL ---@param route table? route of the group. If nil wil be the default route. ---@param uncontrolled boolean? Sets the group to be uncontrolled on spawn ---@param countryId CountryID? Overwrites the country + ---@param emptyLoadouts boolean? If true, the group will spawn with empty loadouts ---@return table? new_group the Group class that was spawned ---@return boolean? isStatic whether the group is a static or not - function DCS_UTIL.SpawnGroupTemplate(groupName, location, route, uncontrolled, countryId) + function DCS_UTIL.SpawnGroupTemplate(groupName, location, route, uncontrolled, countryId, emptyLoadouts) if groupName == nil then return nil, nil end @@ -1280,7 +1329,7 @@ do -- INIT DCS_UTIL return object, true end else - local spawn_template = template.group_template + local spawn_template = Spearhead.Util.deepCopyTable(template.group_template) if location ~= nil then local x_offset if location.x ~= nil then x_offset = spawn_template.x - location.x end @@ -1298,6 +1347,26 @@ do -- INIT DCS_UTIL end end + if spawn_template.units then + for _, unit in pairs(spawn_template.units) do + if unit["parking"] then + unit["parking_landing"] = unit["parking"] + end + + if unit["parking_id"] then + unit["parking_landing_id"] = unit["parking_id"] + end + end + + if emptyLoadouts == true then + for _, unit in pairs(spawn_template.units) do + if unit["payload"] and unit["payload"]["pylons"] then + unit["payload"]["pylons"] = {} + end + end + end + end + if route ~= nil then spawn_template.route = route end @@ -1305,6 +1374,7 @@ do -- INIT DCS_UTIL if uncontrolled ~= nil then spawn_template.uncontrolled = uncontrolled end + local country = countryId or template.country_id local new_group = coalition.addGroup(country, template.category, spawn_template) return new_group, false @@ -1320,6 +1390,30 @@ do -- INIT DCS_UTIL end end + + function DCS_UTIL.NeedsRTBInTen(groupName, fuelOffset) + + local isBingo = Spearhead.DcsUtil.IsBingoFuel(groupName, fuelOffset) + if isBingo then return true end + + local aliveUnits = 0 + local group = Group.getByName(groupName) + if group then + for _ , unit in pairs(group:getUnits()) do + if unit and unit:isExist() == true and unit:inAir() == true then + aliveUnits = aliveUnits + 1 + end + end + + if aliveUnits / group:getInitialSize() <= 0.5 then + return true + end + end + + return false + end + + ---@return boolean function DCS_UTIL.IsBingoFuel(groupName, offset) if offset == nil then offset = 0 end local bingoSetting = 0.20 diff --git a/classes/spearhead_db.lua b/classes/spearhead_db.lua index 52236a7..dc71dcf 100644 --- a/classes/spearhead_db.lua +++ b/classes/spearhead_db.lua @@ -8,7 +8,7 @@ ---@field StageZonesByNumber table> Stage zones grouped by index number ---@field AllFarpZones Array ---@field CapRoutes Array All Cap route zone names ----@field CapDataPerStageNumber table table +---@field capZonesByCapZoneID table table ---@field CarrierRouteZones Array All Carrier routes zones ---@field BlueSams Array All blue sam zones ---@field SupplyHubZones Array All supply hub zones @@ -19,13 +19,10 @@ ---@field FarpZoneData table ---@field missionCodes table ----@class CapData ----@field routes Array ----@field current integer ---@class CapRoute ----@field point1 Vec3 ----@field point2 Vec3? +---@field zones Array +---@field current number ---@class MissionAnnotations ---@field description string? @@ -82,7 +79,7 @@ function Database.New(Logger) AllZoneNames = {}, BlueSams = {}, CapRoutes = {}, - CapDataPerStageNumber = {}, + capZonesByCapZoneID = {}, CarrierRouteZones = {}, MissionZones = {}, MissionZonesLocations = {}, @@ -367,55 +364,21 @@ function Database.New(Logger) self:loadMiscGroupsInStages() - for _, zoneData in pairs(self._tables.StageZones) do - local number = zoneData.StageIndex + for _, cap_route_zone in pairs(self._tables.CapRoutes) do + local split = Spearhead.Util.split_string(cap_route_zone, "_") + local zoneID = split[2] - for _, cap_route_zone in pairs(self._tables.CapRoutes) do - if Spearhead.DcsUtil.isZoneInZone(cap_route_zone, zoneData.StageZoneName) == true then - local zone = Spearhead.DcsUtil.getZoneByName(cap_route_zone) - if zone then - ---@type CapData - local capData = self._tables.CapDataPerStageNumber[number] - if capData == nil then - capData = { - routes = {}, - current = 0 - } - self._tables.CapDataPerStageNumber[number] = capData - end + if zoneID then + if tables.capZonesByCapZoneID[zoneID] == nil then + tables.capZonesByCapZoneID[zoneID] = { + zones = {}, + current = 1 + } + end - - if zone.zone_type == Spearhead.DcsUtil.ZoneType.Cilinder then - table.insert(capData.routes, - { point1 = { x = zone.location.x, z = zone.location.y, y = 0 }, point2 = nil }) - else - local biggest = nil - local biggestA = nil - local biggestB = nil - - for i = 1, 3 do - for ii = i + 1, 4 do - local a = zone.verts[i] - local b = zone.verts[ii] - local dist = Spearhead.Util.VectorDistance2d(a, b) - - if biggest == nil or dist > biggest then - biggestA = a - biggestB = b - biggest = dist - end - end - end - - if biggestA and biggestB then - table.insert(capData.routes, - { - point1 = { x = biggestA.x, z = biggestA.y }, - point2 = { x = biggestB.x, z = biggestB.y } - }) - end - end - end + local zone = Spearhead.DcsUtil.getZoneByName(cap_route_zone) + if zone then + table.insert(tables.capZonesByCapZoneID[zoneID].zones, zone) end end end @@ -842,66 +805,31 @@ function Database:GetLocationForMissionZone(missionZoneName) return self._tables.MissionZonesLocations[missionZoneName] end ----comment ----@param stageNumber string ----@param baseName string ----@return table? -function Database:getCapRouteInZone(stageNumber, baseName) - local stageNumber = tostring(stageNumber) or "nothing" - local routeData = self._tables.CapDataPerStageNumber[stageNumber] - if routeData then - local count = Spearhead.Util.tableLength(routeData.routes) - if count > 0 then - routeData.current = routeData.current + 1 - if count < routeData.current then - routeData.current = 1 - end - return routeData.routes[routeData.current] - end - end - do - local function GetClosestPointOnCircle(pC, radius, p) - local vX = p.x - pC.x; - local vY = p.z - pC.z; - local magV = math.sqrt(vX * vX + vY * vY); - local aX = pC.x + vX / magV * radius; - local aY = pC.z + vY / magV * radius; - return { x = aX, z = aY } - end - local stageZoneName = Spearhead.Util.randomFromList(self._tables.StageZonesByNumber[stageNumber]) or "none" - local stagezone = Spearhead.DcsUtil.getZoneByName(stageZoneName) - if stagezone then - ---@type Airbase? - local base = Airbase.getByName(baseName) - if base then - local closest = nil - if stagezone.zone_type == Spearhead.DcsUtil.ZoneType.Cilinder then - closest = GetClosestPointOnCircle({ x = stagezone.location.x, z = stagezone.location.y }, - stagezone.radius, - base:getPoint()) - else - local closestDistance = -1 - for _, vert in pairs(stagezone.verts) do - local pos = base:getPoint() - local vec2 = { x = pos.x, y = pos.z } - local distance = Spearhead.Util.VectorDistance2d(vert, vec2) - if closestDistance == -1 or distance < closestDistance then - closestDistance = distance - closest = vert - end - end - end +---@param zoneID string +---@return SpearheadTriggerZone? +function Database:GetCapZoneForZoneID(zoneID) + zoneID = tostring(zoneID) or "nothing" - if math.random(1, 2) % 2 == 0 then - return { point1 = closest, point2 = { x = stagezone.location.x, z = stagezone.location.y } } - else - return { point1 = { x = stagezone.location.x, z = stagezone.location.y }, point2 = closest } - end - end + local capZonesForID = self._tables.capZonesByCapZoneID[zoneID] + + if capZonesForID and capZonesForID.zones then + + local count = Spearhead.Util.tableLength(capZonesForID.zones) + if count == 0 then + self._logger:warn("Tried to get cap zone for zoneID: " .. zoneID .. " but cap zones were empty for this ID") + return nil end - return nil + capZonesForID.current = capZonesForID.current + 1 + if Spearhead.Util.tableLength(capZonesForID.zones) < capZonesForID.current then + capZonesForID.current = 1 + end + return capZonesForID.zones[capZonesForID.current] + else + self._logger:warn("Tried to get cap zone for zoneID: " .. zoneID .. " but no cap zones were found for this ID") end + + return nil end ---@return Array result a list of stage zone names diff --git a/classes/stageClasses/SpecialZones/StageBase.lua b/classes/stageClasses/SpecialZones/StageBase.lua index dc20472..18be081 100644 --- a/classes/stageClasses/SpecialZones/StageBase.lua +++ b/classes/stageClasses/SpecialZones/StageBase.lua @@ -159,14 +159,17 @@ function StageBase:SpawnBlueUnits() end function StageBase:ActivateRedStage() - if self._initialSide == 2 and self._airbase then - self._airbase:setCoalition(1) + self._logger:debug("Activate red stage for airbase: " .. self._airbase:getName()) + if self._airbase and (self._initialSide == 2 or self._initialSide == 1) then + self._airbase:setCoalition(coalition.side.RED) self._airbase:autoCapture(false) end self:SpawnRedUnits() end function StageBase:ActivateBlueStage() + self._logger:debug("Activate blue stage for airbase: " .. self._airbase:getName()) + self:CleanRedUnits() if self._buildableMission and self._buildableMission:getState() ~= "COMPLETED" then @@ -178,7 +181,8 @@ end function StageBase:FinaliseBlueStage() if self._initialSide == 2 and self._airbase then - self._airbase:setCoalition(2) + self._airbase:setCoalition(coalition.side.BLUE) + self._airbase:autoCapture(false) end self:SpawnBlueUnits() diff --git a/classes/stageClasses/helpers/BattleManager.lua b/classes/stageClasses/helpers/BattleManager.lua index 3215526..c589653 100644 --- a/classes/stageClasses/helpers/BattleManager.lua +++ b/classes/stageClasses/helpers/BattleManager.lua @@ -9,6 +9,8 @@ local BattleManager = {} BattleManager.__index = BattleManager +local debugDrawing = false + ---@param redGroups Array ---@param blueGroups Array ---@param name string @@ -131,12 +133,10 @@ function BattleManager:LetUnitsShoot(groups, targetGroups) } } - if SpearheadConfig and SpearheadConfig.debugEnabled == true then + if debugDrawing == true then self:DrawDebugLine(point, unit) end - self._logger:debug("Red unit " .. unit:getName() .. " will shoot " .. qty .. " rounds at point: " .. tostring(point)) - local controller = unit:getController() if controller then controller:setTask(shootTask) @@ -241,7 +241,7 @@ function BattleManager:GetRandomPoint(origin, groupHulls) if not hull then return nil end local shootPoints = Spearhead.Util.GetTangentHullPointsFromOrigin(hull, origin) - if SpearheadConfig and SpearheadConfig.debugEnabled == true then + if debugDrawing == true then self:DrawDebugZone({ hull }) end diff --git a/classes/stageClasses/helpers/MissionCommandsHelper.lua b/classes/stageClasses/helpers/MissionCommandsHelper.lua index 086ae6d..ed0cbf3 100644 --- a/classes/stageClasses/helpers/MissionCommandsHelper.lua +++ b/classes/stageClasses/helpers/MissionCommandsHelper.lua @@ -271,8 +271,8 @@ function MissionCommandsHelper:AddAllMissionCommandsToGroup(groupID) local mission = self.missionsByCode[code] if mission and mission.priority == "primary" then count = count + 1 - if count <= perFolder then - local copied = Spearhead.Util.copyTable(path) + if count <= perFolder then + local copied = Spearhead.Util.deepCopyTable(path) self:addMissionCommands(groupID, copied, mission) else local name = "Next Menu ..." @@ -294,7 +294,7 @@ function MissionCommandsHelper:AddAllMissionCommandsToGroup(groupID) if mission and mission.priority == "secondary" then count = count + 1 if count <= perFolder then - local copied = Spearhead.Util.copyTable(path) + local copied = Spearhead.Util.deepCopyTable(path) self:addMissionCommands(groupID, copied, mission) else local name = "Next Menu ..." diff --git a/classes/stageClasses/helpers/SupplyUnitsTracker.lua b/classes/stageClasses/helpers/SupplyUnitsTracker.lua index 0baa4af..72c7797 100644 --- a/classes/stageClasses/helpers/SupplyUnitsTracker.lua +++ b/classes/stageClasses/helpers/SupplyUnitsTracker.lua @@ -29,6 +29,7 @@ function SupplyUnitsTracker.getOrCreate(logLevel) singleton._supplyUnitsByName = {} singleton._droppedCrates = {} singleton._registeredHubs = {} + singleton._supplyUnitSpawnedListener = {} singleton._commandsHelper = Spearhead.classes.stageClasses.helpers.MissionCommandsHelper.getOrCreate(singleton._logger.LogLevel) diff --git a/config.lua b/config.lua index b075651..3024d25 100644 --- a/config.lua +++ b/config.lua @@ -25,13 +25,26 @@ SpearheadConfig = { -- unit: feet maxAlt = 28000, -- default 28000 + -- DELAYS. + -- Delays work as follow. + -- When an aircraft lands alive and well it will be rearmed and ready to go. + -- When part of the flight died it will be repaired and then rearmed. (both delays) + -- When the entire group dies it will first wait for the deathDelay, then it will be repaired and rearmed. + -- while rearming: Spawned on the ramp. + -- while repairing: Spawned on the ramp. + -- while deathDelay no unit is spawned. + --Delay for aircraft from touchdown to off the chocks. -- unit: seconds rearmDelay = 600, -- default 600 - --Delay for aircraft from death to takeoff. - --When the seconds remaining is the same at the rearmDelay it will be spawned on the ramp and follow the rearm logic. - -- !! Can not be lower than rearmDelay + -- Delay for aircraft that has died to be repaired before rearming starts. + -- unit: seconds + repairDelay = 600, -- default 600 + + --Delay for aircraft before the repairing and rearming cycles begin. + -- applied when the whole group dies. + -- (see this as an additional bonus delay for destroying an entire group) -- unit: seconds deathDelay = 1800, -- default 1800 }, diff --git a/dev/dev_classes.lua b/dev/dev_classes.lua index c1efe59..fc7d9c5 100644 --- a/dev/dev_classes.lua +++ b/dev/dev_classes.lua @@ -44,7 +44,10 @@ assert(loadfile(classPath .. "stageClasses\\SpecialZones\\BlueSam.lua"))() assert(loadfile(classPath .. "stageClasses\\SpecialZones\\FarpZone.lua"))() assert(loadfile(classPath .. "stageClasses\\SpecialZones\\SupplyHub.lua"))() -assert(loadfile(classPath .. "capClasses\\CapGroup.lua"))() +assert(loadfile(classPath .. "capClasses\\taskings\\RTB.lua"))() +assert(loadfile(classPath .. "capClasses\\taskings\\CAP.lua"))() +assert(loadfile(classPath .. "capClasses\\airGroups\\AirGroup.lua"))() +assert(loadfile(classPath .. "capClasses\\airGroups\\CapGroup.lua"))() assert(loadfile(classPath .. "capClasses\\GlobalCapManager.lua"))() assert(loadfile(classPath .. "capClasses\\CapAirbase.lua"))() assert(loadfile(classPath .. "capClasses\\runwayBombing\\RunwayBombingTracker.lua"))() diff --git a/dev/dev_config.lua b/dev/dev_config.lua index e5ceaae..2cec94a 100644 --- a/dev/dev_config.lua +++ b/dev/dev_config.lua @@ -25,8 +25,8 @@ SpearheadConfig = { --Delay for aircraft from touchdown to off the chocks. -- unit: seconds - rearmDelay = 600, -- default 600 - + rearmDelay = 180, -- default 600 + repairDelay = 600, -- default 600 --Delay for aircraft from death to takeoff. --When the seconds remaining is the same at the rearmDelay it will be spawned on the ramp and follow the rearm logic. -- !! Can not be lower than rearmDelay