From 195e232cf58d0ef243166a6c564ce8c794e26eb0 Mon Sep 17 00:00:00 2001 From: iTracerFacer <134304944+iTracerFacer@users.noreply.github.com> Date: Sun, 9 Nov 2025 01:03:54 -0600 Subject: [PATCH] MEDEVAC system error and added extensive debug logging. The main issues were: 1. Nil Reference Error Fix The error attempt to call method 'getCoalition' (a nil value) occurred because the event handler was trying to call methods on a unit object that had already been destroyed. --- Moose_CTLD_Pure/Moose_CTLD.lua | 98 +++++++++++++++--- Moose_CTLD_Pure/Moose_CTLD_Pure.miz | Bin 881444 -> 881529 bytes .../catalogs/Moose_CTLD_Catalog.lua | 1 - 3 files changed, 86 insertions(+), 13 deletions(-) diff --git a/Moose_CTLD_Pure/Moose_CTLD.lua b/Moose_CTLD_Pure/Moose_CTLD.lua index 588034d..280e47f 100644 --- a/Moose_CTLD_Pure/Moose_CTLD.lua +++ b/Moose_CTLD_Pure/Moose_CTLD.lua @@ -4958,20 +4958,66 @@ function CTLD:InitMEDEVAC() local selfref = self function handler:OnEventDead(eventData) + -- Safely extract unit information from event data local unit = eventData.IniUnit - if not unit then return end + if not unit then + env.info('[Moose_CTLD][MEDEVAC] OnEventDead: No unit in eventData') + return + end - -- Only process ground units from our coalition - local unitCoalition = unit:GetCoalition() - if unitCoalition ~= selfref.Side then return end - if unit:GetCategory() ~= Unit.Category.GROUND_UNIT then return end + -- Get the underlying DCS unit to safely extract data + local dcsUnit = unit.DCSUnit or unit + if not dcsUnit then + env.info('[Moose_CTLD][MEDEVAC] OnEventDead: No DCS unit') + return + end + + -- Extract coalition from event data if available, otherwise from unit + local unitCoalition = eventData.IniCoalition or (unit.GetCoalition and unit:GetCoalition()) + if not unitCoalition then + env.info('[Moose_CTLD][MEDEVAC] OnEventDead: Could not determine coalition') + return + end + + if unitCoalition ~= selfref.Side then + env.info(string.format('[Moose_CTLD][MEDEVAC] OnEventDead: Wrong coalition (unit: %s, CTLD: %s)', tostring(unitCoalition), tostring(selfref.Side))) + return + end + + -- Extract category from event data if available + local unitCategory = eventData.IniCategory or (unit.GetCategory and unit:GetCategory()) + if not unitCategory then + env.info('[Moose_CTLD][MEDEVAC] OnEventDead: Could not determine category') + return + end + + if unitCategory ~= Unit.Category.GROUND_UNIT then + env.info(string.format('[Moose_CTLD][MEDEVAC] OnEventDead: Not a ground unit (category: %s)', tostring(unitCategory))) + return + end + + -- Extract unit type name + local unitType = eventData.IniTypeName or (unit.GetTypeName and unit:GetTypeName()) + if not unitType then + env.info('[Moose_CTLD][MEDEVAC] OnEventDead: Could not determine unit type') + return + end + + env.info(string.format('[Moose_CTLD][MEDEVAC] OnEventDead: Ground unit destroyed - %s', unitType)) -- Check if this unit type is eligible for MEDEVAC - local unitType = unit:GetTypeName() local catalogEntry = selfref:_FindCatalogEntryByUnitType(unitType) if catalogEntry and catalogEntry.MEDEVAC == true then - selfref:_SpawnMEDEVACCrew(unit, catalogEntry) + env.info(string.format('[Moose_CTLD][MEDEVAC] OnEventDead: %s is MEDEVAC eligible, spawning crew', unitType)) + -- Pass eventData instead of unit to get position/heading safely + selfref:_SpawnMEDEVACCrew(eventData, catalogEntry) + else + if catalogEntry then + env.info(string.format('[Moose_CTLD][MEDEVAC] OnEventDead: %s found in catalog but MEDEVAC=%s', unitType, tostring(catalogEntry.MEDEVAC))) + else + env.info(string.format('[Moose_CTLD][MEDEVAC] OnEventDead: %s not found in catalog', unitType)) + end end end @@ -5005,14 +5051,42 @@ function CTLD:_FindCatalogEntryByUnitType(unitType) end -- Spawn MEDEVAC crew when vehicle destroyed -function CTLD:_SpawnMEDEVACCrew(unit, catalogEntry) +function CTLD:_SpawnMEDEVACCrew(eventData, catalogEntry) local cfg = CTLD.MEDEVAC if not cfg or not cfg.Enabled then return end - local unitType = unit:GetTypeName() - local unitName = unit:GetName() - local pos = unit:GetPointVec3() - local heading = unit:GetHeading() or 0 + -- Extract data from eventData instead of calling methods on dead unit + local unit = eventData.IniUnit + local unitType = eventData.IniTypeName or (unit and unit.GetTypeName and unit:GetTypeName()) + local unitName = eventData.IniUnitName or (unit and unit.GetName and unit:GetName()) or 'Unknown' + + -- Get position - try multiple sources + local pos = nil + if unit and unit.GetPointVec3 then + local success, result = pcall(function() return unit:GetPointVec3() end) + if success and result then + pos = result + end + end + + -- Fallback to event position if unit method fails + if not pos and eventData.Place then + pos = eventData.Place + end + + if not pos or not unitType then + env.info('[Moose_CTLD][MEDEVAC] Cannot spawn crew - missing position or unit type') + return + end + + -- Get heading if possible + local heading = 0 + if unit and unit.GetHeading then + local success, result = pcall(function() return unit:GetHeading() end) + if success and result then + heading = result + end + end -- Determine crew size local crewSize = catalogEntry.crewSize or cfg.CrewDefaultSize or 2 diff --git a/Moose_CTLD_Pure/Moose_CTLD_Pure.miz b/Moose_CTLD_Pure/Moose_CTLD_Pure.miz index b7d59fc1210a3fe9f1f50f89cbfbc427cb141d35..a1dfa02be050a40557e0990a9f1f9a437aee1feb 100644 GIT binary patch delta 5630 zcmYL|2Q=JYu*dbjTJ+wDh~7KVOY}|leS!~z|3jf_Ms=}MvD`>ioaBA}X8Z7QwShdG#_(R2wmm>7VPa0Og-IN14dYGc zQPp>oQdz>^n(HPR>b^&1!E8A%ewuloXflm_!u>4R8<%i>XdpITu2x(&bqwm4N0hkZoJ8?S6mLCDY>*ieaaX6MSavbzZqhNN zdo%&2O7$)XMm>2SxiPD{7pV}$xD?B+feIsWS~=#fuxaC|;cXsDfvb&;)kpG|Wr&xB zCFT$C!6_zWEz(kU9hvR}9>F?P!}kKM9m_-LI$Ce6LN3-j)c?}oWh4Xw29M4U$Mh6# zMYa8a>9s@V&54KFSRq%wA{K2w##_xRM*GOc(cTrhYIMQ(QCT7 z&54XWB^VjEcb(sn#+GBxs%vyNHqEOj59`$R+= zhH^1q?sXA~?$PCVtHN~!(4{sEy`TwpI*;GFm>H-?sRl_y*@En9Kf@B2KiJrgq=-&4 zv_-83NgCV?J14k^XC18U5Cr%+nW~*6S{b6IB}%P7$?GqzN|Z)Z%YzjtA!efjc|xXv zC@SgMXfPQ74(Kq4DttM63q61t9A&(sHK{cBlhH25XUwAc(J>0B-RKomdt*_-B{)SoTA2Mt!VS- zzLZ@ZM3Eaf+7rmmXis+e~4l6KQzipPgVWLEc!$bAQ+i|^u`ToJ zS5haN0i~og zRPeGAhY*)vil)&Z4N$_4Lgf1ws^u=m z6$GpHWwn2}hU24fuMX$s;RQMK^e5o73Kgz3L+&pvj%S{7@

N(myu{zQNx08#;O2 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 delta 5520 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 diff --git a/Moose_CTLD_Pure/catalogs/Moose_CTLD_Catalog.lua b/Moose_CTLD_Pure/catalogs/Moose_CTLD_Catalog.lua index e64abde..246cf97 100644 --- a/Moose_CTLD_Pure/catalogs/Moose_CTLD_Catalog.lua +++ b/Moose_CTLD_Pure/catalogs/Moose_CTLD_Catalog.lua @@ -113,7 +113,6 @@ cat['BLUE_M1A2C_ABRAMS'] = { menuCategory='Combat Vehicles', menu='M1A2C Ab cat['RED_BTR82A'] = { menuCategory='Combat Vehicles', menu='BTR-82A', description='BTR-82A', dcsCargoType='container_cargo', required=1, initialStock=10, side=RED, category=Group.Category.GROUND, build=singleUnit('BTR-82A'), MEDEVAC=true, salvageValue=1, crewSize=3 } cat['RED_BRDM2'] = { menuCategory='Combat Vehicles', menu='BRDM-2', description='BRDM-2', dcsCargoType='container_cargo', required=1, initialStock=10, side=RED, category=Group.Category.GROUND, build=singleUnit('BRDM-2'), MEDEVAC=true, salvageValue=1, crewSize=2 } cat['RED_BMP3'] = { menuCategory='Combat Vehicles', menu='BMP-3', description='BMP-3', dcsCargoType='container_cargo', required=1, initialStock=10, side=RED, category=Group.Category.GROUND, build=singleUnit('BMP-3'), MEDEVAC=true, salvageValue=1, crewSize=3 } -cat['RED_T55'] = { menuCategory='Combat Vehicles', menu='T-55', description='T-55', dcsCargoType='container_cargo', required=1, initialStock=10, side=RED, category=Group.Category.GROUND, build=singleUnit('T-55'), MEDEVAC=true, salvageValue=1, crewSize=4 } cat['RED_T72B3'] = { menuCategory='Combat Vehicles', menu='T-72B3', description='T-72B3', dcsCargoType='container_cargo', required=1, initialStock=8, side=RED, category=Group.Category.GROUND, build=singleUnit('T-72B3'), MEDEVAC=true, salvageValue=1, crewSize=3 } -- Support (BLUE)