diff --git a/Generals/Code/GameEngine/Source/GameLogic/Object/Update/HordeUpdate.cpp b/Generals/Code/GameEngine/Source/GameLogic/Object/Update/HordeUpdate.cpp index 259e4da582a..bb2c5c1d822 100644 --- a/Generals/Code/GameEngine/Source/GameLogic/Object/Update/HordeUpdate.cpp +++ b/Generals/Code/GameEngine/Source/GameLogic/Object/Update/HordeUpdate.cpp @@ -80,6 +80,12 @@ class PartitionFilterHordeMember : public PartitionFilter virtual Bool allow(Object *objOther) override { +#if !RETAIL_COMPATIBLE_CRC + // TheSuperHackers @bugfix Stubbjax 07/08/2026 Prevent dead units from being considered for horde membership. + if (objOther->isEffectivelyDead()) + return false; +#endif + // must be exact same type as us (well, maybe) if (m_data->m_exactMatch && m_obj->getTemplate() != objOther->getTemplate()) return false; diff --git a/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/HordeUpdate.cpp b/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/HordeUpdate.cpp index 524af685ed1..568820cbc07 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/HordeUpdate.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/HordeUpdate.cpp @@ -80,6 +80,12 @@ class PartitionFilterHordeMember : public PartitionFilter virtual Bool allow(Object *objOther) override { +#if !RETAIL_COMPATIBLE_CRC + // TheSuperHackers @bugfix Stubbjax 07/08/2026 Prevent dead units from being considered for horde membership. + if (objOther->isEffectivelyDead()) + return false; +#endif + // must be exact same type as us (well, maybe) if (m_data->m_exactMatch && m_obj->getTemplate() != objOther->getTemplate()) return false;