Name Index

https://qweme.dev
Пользователь
Статус
Оффлайн
Регистрация
25 Май 2022
Сообщения
165
Реакции[?]
87
Поинты[?]
21K
1656281115370.png
вопрос как с индекса имени получить само имя в виде строчки
 
🤡
Пользователь
Статус
Оффлайн
Регистрация
28 Апр 2014
Сообщения
127
Реакции[?]
163
Поинты[?]
21K
Я конечно не уверен, но возможно надо глядеть в сторону CNetworkStringTableContainer.
 
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
Я конечно не уверен, но возможно надо глядеть в сторону CNetworkStringTableContainer.
++, тоже не уверен(не тестил некогда пока), но тоже позырил и вроде звучит заманчиво
engine2.dll:
Source2EngineToServerStringTable001 -> CNetworkStringTableContainer
Source2EngineToClientStringTable001 -> CNetworkStringTableContainer
 
https://qweme.dev
Пользователь
Статус
Оффлайн
Регистрация
25 Май 2022
Сообщения
165
Реакции[?]
87
Поинты[?]
21K
++, тоже не уверен(не тестил некогда пока), но тоже позырил и вроде звучит заманчиво
engine2.dll:
Source2EngineToServerStringTable001 -> CNetworkStringTableContainer
Source2EngineToClientStringTable001 -> CNetworkStringTableContainer
еще такая темка хз почему так в крейт партикле лежит хендл ентити в какой то игре он валидный в какой то нет тоесть абсолютный рандом

я пытался сделать мапхак но это полная хуйня что одну игру он работает вторую уже нет

C++:
if (ParticleType == GAME_PARTICLE_MANAGER_EVENT_CREATE) {
    int index = Particle->index();
    uint32_t handle = Particle->create_particle().entity_handle();
    CBaseEntity* entity = vmt.EntitySystem->FindEntityByHandle(handle);

    if (entity)
        DEBUG("Particle owner is %s", entity->EntityName());
...
 
Последнее редактирование:
🤡
Пользователь
Статус
Оффлайн
Регистрация
28 Апр 2014
Сообщения
127
Реакции[?]
163
Поинты[?]
21K
еще такая темка хз почему так в крейт партикле лежит хендл ентити в какой то игре он валидный в какой то нет тоесть абсолютный рандом

я пытался сделать мапхак но это полная хуйня что одну игру он работает вторую уже нет

C++:
if (ParticleType == GAME_PARTICLE_MANAGER_EVENT_CREATE) {
    int index = Particle->index();
    uint32_t handle = Particle->create_particle().entity_handle();
    CBaseEntity* entity = vmt.EntitySystem->FindEntityByHandle(handle);

    if (entity)
        DEBUG("Particle owner is %s", entity->EntityName());
...
Еще бы по этому коду понять чот.
Это от хука CreateParticleCollection или как ты кидал, из нетворка entity handle?
 
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
еще такая темка хз почему так в крейт партикле лежит хендл ентити в какой то игре он валидный в какой то нет тоесть абсолютный рандом

я пытался сделать мапхак но это полная хуйня что одну игру он работает вторую уже нет

C++:
if (ParticleType == GAME_PARTICLE_MANAGER_EVENT_CREATE) {
    int index = Particle->index();
    uint32_t handle = Particle->create_particle().entity_handle();
    CBaseEntity* entity = vmt.EntitySystem->FindEntityByHandle(handle);

    if (entity)
        DEBUG("Particle owner is %s", entity->EntityName());
...
индекс для начала просто логни(= handle & 0x7FFF) и потом посмотри существует ли такая сущность по индексу(cl_ent_find_index XXX) дабы удостовериться
Еще бы по этому коду понять чот.
Это от хука CreateParticleCollection или как ты кидал, из нетворка entity handle?
это я так понимаю от хука PostReceivedMessage
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
https://qweme.dev
Пользователь
Статус
Оффлайн
Регистрация
25 Май 2022
Сообщения
165
Реакции[?]
87
Поинты[?]
21K
индекс для начала просто логни(= handle & 0x7FFF) и потом посмотри существует ли такая сущность по индексу(cl_ent_find_index XXX) дабы удостовериться

это я так понимаю от хука PostReceivedMessage
Пожалуйста, авторизуйтесь для просмотра ссылки.
hkPostReceivedNetMessage да

дергаю сферки на вокере
1656360814244.png
коил сфа
1656360898983.png
емп в тумане войны
1656361019223.png

типо лол койл сфа это дерево ?>
Еще бы по этому коду понять чот.
Это от хука CreateParticleCollection или как ты кидал, из нетворка entity handle?
CreateParticleCollection у меня тоже хукнут просто решил весь мапхак перенести на нетчан так сказать
 
Последнее редактирование:
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
hkPostReceivedNetMessage да

дергаю сферки на вокере
Посмотреть вложение 209630
коил сфа
Посмотреть вложение 209632
емп в тумане войны
Посмотреть вложение 209633

типо лол койл сфа это дерево ?>

CreateParticleCollection у меня тоже хукнут просто решил весь мапхак перенести на нетчан так сказать
бля ну хуй знает попробуй маску & 0x3FFF(16k) вместо 0x7FFF(32k) вроде рабоатет
да и вроде хуйню какуюто интересную нашел связанную с этим но хз
1656366656000.png
0xFFC000(я так понял это типо маска серийника. ток не серийник это нихуя а какаято подобная хуита) если инвертировать то будет как раз 0x3FFF
 
Последнее редактирование:
https://qweme.dev
Пользователь
Статус
Оффлайн
Регистрация
25 Май 2022
Сообщения
165
Реакции[?]
87
Поинты[?]
21K
бля ну хуй знает попробуй маску & 0x3FFF(16k) вместо 0x7FFF(32k) вроде рабоатет
да и вроде хуйню какуюто интересную нашел связанную с этим но хз
Посмотреть вложение 209650
0xFFC000(я так понял это типо маска серийника. ток не серийник это нихуя а какаято подобная хуита) если инвертировать то будет как раз 0x3FFF
ты гений
1656373905384.png

UPD сферки вокера)
1656374110645.png
 
https://qweme.dev
Пользователь
Статус
Оффлайн
Регистрация
25 Май 2022
Сообщения
165
Реакции[?]
87
Поинты[?]
21K
++, тоже не уверен(не тестил некогда пока), но тоже позырил и вроде звучит заманчиво
engine2.dll:
Source2EngineToServerStringTable001 -> CNetworkStringTableContainer
Source2EngineToClientStringTable001 -> CNetworkStringTableContainer
я порыл эту штуку и не нашел ничего :/ а про хендлы да там маска 16к (0x3FFF)
 
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
я порыл эту штуку и не нашел ничего :/ а про хендлы да там маска 16к (0x3FFF)
я так понял это хеш ресурса(ResourceID_t). пореверси.
CResourceSystem::GetInstance().GetResourceByHash<"vpcf">(particle_name_index)
type: GAME_PARTICLE_MANAGER_EVENT_CREATE
index: 0
create_particle {
particle_name_index: 9671291843391061224
attach_type: 2
entity_handle: 16777215
entity_handle_for_modifiers: 15777948
apply_voice_ban_rules: false
}
}
9671291843391061224 -> 0x863754B0DC74FCE8
1656481426900.png
1656481691300.png
а из оригинального поста хеш получается резолвится в
[Dota2Test] rsrc id -> 0xE1863545BB64B997
[Dota2Test] CResourceSystem rsrc: particles/generic_gameplay/damage_flash.vpcf -> 0x00000183914B2540
 
Сверху Снизу