Вопрос Иллюзии и мипо

Начинающий
Статус
Оффлайн
Регистрация
10 Янв 2023
Сообщения
19
Реакции[?]
0
Поинты[?]
0
Сумоны мипо считаются за иллюзии.Как это пофиксить и куда смотреть?
 
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
по баффам попробуй. "modifier_illusion". потести в одиночке со всякими дарксирами, террорблейдами, морфами, мипо и тд
dota_modifier_dump команда есть консольная логает все баффы на всех
 
Начинающий
Статус
Оффлайн
Регистрация
10 Янв 2023
Сообщения
19
Реакции[?]
0
Поинты[?]
0
по баффам попробуй. "modifier_illusion". потести в одиночке со всякими дарксирами, террорблейдами, морфами, мипо и тд
dota_modifier_dump команда есть консольная логает все баффы на всех
Ок попробую отпишусь,то есть прохожусь по массиву модифаеров вижу имя модифаера modifier_illusion ,и меняю цвет правильно же?
 
Начинающий
Статус
Оффлайн
Регистрация
10 Янв 2023
Сообщения
19
Реакции[?]
0
Поинты[?]
0
по баффам попробуй. "modifier_illusion". потести в одиночке со всякими дарксирами, террорблейдами, морфами, мипо и тд
dota_modifier_dump команда есть консольная логает все баффы на всех
В дампе modifier_illusion отображается,при этом при итерации по модифаерам их нету.Не знаешь что не так?GetModiferNum делает разыменование значения по оффсету 0x10.modifiernum меньше чем количество модифаеров в дампе.
Код:
const auto manager = reinterpret_cast<ModifierManager*>((uint64_t)BASE_NPC + offsets::PLayerEntity::m_ModifierManager);
                    if (!_stricmp("npc_dota_hero_meepo",BASE_NPC->GetIdentity()->GetName())) //&& BASE_NPC->getColor() == -1)
                    {
                        int modifiernum = manager->GetModifiersNum();
                        for (int i = 0; i < modifiernum; i++)
                        {
                            const auto name = manager->GetModifierArray()->modifer[i]->GetName();

                            std::cout << " Illusion ModifierName : " << name << std::endl;
                        }
                    }
P.S Я где то видел (то ли на форуме,не помню),что нетвар m_Inventory как то поможет в случае мипо,но как его применять так и не понял
 
Последнее редактирование:
Ревёрсер среднего звена
Пользователь
Статус
Оффлайн
Регистрация
24 Ноя 2022
Сообщения
303
Реакции[?]
108
Поинты[?]
57K
Сумоны мипо считаются за иллюзии.Как это пофиксить и куда смотреть?
Я лично просто фильтрую по SchemaBinding()->binaryName(того же клона арка), хотя в принципе подсветка клонов мипо как мне кажется будет полезной

В дампе modifier_illusion отображается,при этом при итерации по модифаерам их нету.Не знаешь что не так?GetModiferNum делает разыменование значения по оффсету 0x10.modifiernum меньше чем количество модифаеров в дампе.
Код:
const auto manager = reinterpret_cast<ModifierManager*>((uint64_t)BASE_NPC + offsets::PLayerEntity::m_ModifierManager);
                    if (!_stricmp("npc_dota_hero_meepo",BASE_NPC->GetIdentity()->GetName())) //&& BASE_NPC->getColor() == -1)
                    {
                        int modifiernum = manager->GetModifiersNum();
                        for (int i = 0; i < modifiernum; i++)
                        {
                            const auto name = manager->GetModifierArray()->modifer[i]->GetName();

                            std::cout << " Illusion ModifierName : " << name << std::endl;
                        }
                    }
P.S Я где то видел (то ли на форуме,не помню),что нетвар m_Inventory как то поможет в случае мипо,но как его применять так и не понял
Модифаеры это CUtlVector<T>(в нашем случае Т это Modifier*), там идёт int m_iSize, T* m_pElements, int m_iCapacity, лучше как цельную структуру это получать. Шо за дамп с модифаерами не знаю, протестить тему с modifier_illusion смогу позже
 
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
В дампе modifier_illusion отображается,при этом при итерации по модифаерам их нету.Не знаешь что не так?GetModiferNum делает разыменование значения по оффсету 0x10.modifiernum меньше чем количество модифаеров в дампе.
Код:
const auto manager = reinterpret_cast<ModifierManager*>((uint64_t)BASE_NPC + offsets::PLayerEntity::m_ModifierManager);
                    if (!_stricmp("npc_dota_hero_meepo",BASE_NPC->GetIdentity()->GetName())) //&& BASE_NPC->getColor() == -1)
                    {
                        int modifiernum = manager->GetModifiersNum();
                        for (int i = 0; i < modifiernum; i++)
                        {
                            const auto name = manager->GetModifierArray()->modifer[i]->GetName();

                            std::cout << " Illusion ModifierName : " << name << std::endl;
                        }
                    }
P.S Я где то видел (то ли на форуме,не помню),что нетвар m_Inventory как то поможет в случае мипо,но как его применять так и не понял
ну правильно что его там нету - я тебе напиздел ахахах(сорри ночью было, особо не вникал, тупанул) - dota_modifier_dump это серверная команда, она с сервера дампит(на сервере то есть модифаер а на клиенте вот его нет); ща одну хуйню протесщу и отпишусь
 
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
ну как вариант ты можешь просто чекать по герою(int32 m_iHeroID)/по имени героя/по классу героя - если это мипо/морф/варден - чекать специфичными способами - если это любой другой герой - просто m_hReplicatingOtherHeroModel
у мипо(C_DOTA_Unit_Hero_Meepo) работает нетвар client.dll/C_DOTA_BaseNPC/m_bIsIllusion (у других он просто не работает. у мипо он отдельно влючен габеном
+ MNetworkIncludeByName "m_bIsIllusion"
)
у морфа(C_DOTA_Unit_Hero_Morphling) если есть бафф modifier_morphling_replicate то значит это настоящий морф под ультой(в противном случае если баффа нет то через m_hReplicatingOtherHeroModel чекать)
у вардена(CDOTA_Unit_Hero_ArcWarden) если есть бафф modifier_arc_warden_tempest_double то значит это клон с ульты(в противном случае если баффа нет то через m_hReplicatingOtherHeroModel чекать)
ну и еще IsAlive к этому всему можно прикрутить(трупаков на иллюзии впринципе то и смысла нет чекать)
1676813056923.png
1676813146575.png
1676813402964.png
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
10 Янв 2023
Сообщения
19
Реакции[?]
0
Поинты[?]
0
ну как вариант ты можешь просто чекать по герою(int32 m_iHeroID)/по имени героя/по классу героя - если это мипо/морф/варден - чекать специфичными способами - если это любой другой герой - просто m_hReplicatingOtherHeroModel
у мипо(C_DOTA_Unit_Hero_Meepo) работает нетвар client.dll/C_DOTA_BaseNPC/m_bIsIllusion (у других он просто не работает. у мипо он отдельно влючен габеном
+ MNetworkIncludeByName "m_bIsIllusion"
)
у морфа(C_DOTA_Unit_Hero_Morphling) если есть бафф modifier_morphling_replicate то значит это настоящий морф под ультой(в противном случае если баффа нет то через m_hReplicatingOtherHeroModel чекать)
у вардена(CDOTA_Unit_Hero_ArcWarden) если есть бафф modifier_arc_warden_tempest_double то значит это клон с ульты(в противном случае если баффа нет то через m_hReplicatingOtherHeroModel чекать)
ну и еще IsAlive к этому всему можно прикрутить(трупаков на иллюзии впринципе то и смысла нет чекать)
Посмотреть вложение 239168
Посмотреть вложение 239169
Посмотреть вложение 239171
Спасибо огромное,что время уделил,,попробую отпишусь.

P.S на счет CUtlVector возьму на заметку,я думал что модифаеры это просто рандомная структура.

P.S Все работает спс ,а то єто кошмар как радражало.По поводу того чтобы ривилить скиллы типо чарджа бары,телепортов и тд.ВВ сторону нетчана смотерть?
 
Последнее редактирование:
Shitcode lord 💩
Забаненный
Статус
Оффлайн
Регистрация
25 Ноя 2020
Сообщения
272
Реакции[?]
84
Поинты[?]
8K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
По поводу того чтобы ривилить скиллы типо чарджа бары,телепортов и тд.ВВ сторону нетчана смотерть?
Чарж -- это модификатор modifier_spirit_breaker_charge_of_darkness_vision.
Еще из полезного -- modifier_sniper_assassinate, modifier_truesight, modifier_item_sphere.
С этими -- modifier_lina_light_strike_array, modifier_invoker_sun_strike, modifier_kunkka_torrent_thinker -- чуть посложней.
Они не на героя накладываются, а на npc_dota_thinker. Чекай нетвар m_hParent у модификатора, это хендл энтити (собсна синкера), ну и смотри его AbsOrigin -- это и будет место каста.
Телепорты -- в сторону нетчана. Создание партикли и установка контрол поинтов.
 
Ревёрсер среднего звена
Пользователь
Статус
Оффлайн
Регистрация
24 Ноя 2022
Сообщения
303
Реакции[?]
108
Поинты[?]
57K
Чарж -- это модификатор modifier_spirit_breaker_charge_of_darkness_vision.
Еще из полезного -- modifier_sniper_assassinate, modifier_truesight, modifier_item_sphere.
С этими -- modifier_lina_light_strike_array, modifier_invoker_sun_strike, modifier_kunkka_torrent_thinker -- чуть посложней.
Они не на героя накладываются, а на npc_dota_thinker. Чекай нетвар m_hParent у модификатора, это хендл энтити (собсна синкера), ну и смотри его AbsOrigin -- это и будет место каста.
Телепорты -- в сторону нетчана. Создание партикли и установка контрол поинтов.
Нихрена, в синкерах есть модификаторы
Никогда бы не подумал
 
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
Спасибо огромное,что время уделил,,попробую отпишусь.

P.S на счет CUtlVector возьму на заметку,я думал что модифаеры это просто рандомная структура.

P.S Все работает спс ,а то єто кошмар как радражало.По поводу того чтобы ривилить скиллы типо чарджа бары,телепортов и тд.ВВ сторону нетчана смотерть?
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Начинающий
Статус
Оффлайн
Регистрация
10 Янв 2023
Сообщения
19
Реакции[?]
0
Поинты[?]
0
Чарж -- это модификатор modifier_spirit_breaker_charge_of_darkness_vision.
Еще из полезного -- modifier_sniper_assassinate, modifier_truesight, modifier_item_sphere.
С этими -- modifier_lina_light_strike_array, modifier_invoker_sun_strike, modifier_kunkka_torrent_thinker -- чуть посложней.
Они не на героя накладываются, а на npc_dota_thinker. Чекай нетвар m_hParent у модификатора, это хендл энтити (собсна синкера), ну и смотри его AbsOrigin -- это и будет место каста.
Телепорты -- в сторону нетчана. Создание партикли и установка контрол поинтов.
О спасибо,не поудмал даже что нетвар m_hParent есть и можно его из шемы достать,я хардкодил
 
Последнее редактирование:
Сверху Снизу