• MONEY за подписку! Ничего делать не надо совсем, всего-то подписаться на тг одмена и нажать кнопку "Принять участие" в розыгрыше: https://t.me/govthing/7650

Реверсим Warface RU и находим нужные адреса.

1693473033986.png


как это фиксить?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
привет. как сделать По кнопке один раз нажал и работает. второй раз нажал и отключилось? щас стоит по зажатию, а мне надо чтобы всегда работало без зажима.
if (pKey->GetKeyState(EKeyId::eKI_V, false)) { //дрон блеквуд, королева роя, урсула

hits = 100;

if (strstr(className, XorChar("ShootingTarget"))) {
if (strstr(pName, XorChar("ShootingTarget201")) || strstr(pName, XorChar("ShootingTarget185"))
|| strstr(pName, XorChar("Boss_ShootingTarget")) || strstr(pName, XorChar("BossEye")) || strstr(pName, XorChar("BossThroat"))) {

return true;
}
}
}
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
привет. как сделать По кнопке один раз нажал и работает. второй раз нажал и отключилось? щас стоит по зажатию, а мне надо чтобы всегда работало без зажима.
if (pKey->GetKeyState(EKeyId::eKI_V, false)) { //дрон блеквуд, королева роя, урсула

hits = 100;

if (strstr(className, XorChar("ShootingTarget"))) {
if (strstr(pName, XorChar("ShootingTarget201")) || strstr(pName, XorChar("ShootingTarget185"))
|| strstr(pName, XorChar("Boss_ShootingTarget")) || strstr(pName, XorChar("BossEye")) || strstr(pName, XorChar("BossThroat"))) {

return true;
}
}
}
false убери
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Как можно попасть в IGameFramework?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Последнее редактирование:
Люди добрые, помогите найти "GetEntityIterator" и "GetEntityFromPhysics". Уже 2-й день ищу адреса и заменяю код(сделал в районе 30-40 попыток запуска). Код не проходит дальше этого:
struct CEntitySystem
{
public:
CEntityIt* GetEntityIterator() { return Call<CEntityIt* (__thiscall*)(PVOID64)>(this, 0xA8)(this); }
IEntity* GetEntityFromPhysics(IPhysicalEntity* pPhysEntity) { return Call<IEntity* (__thiscall*)(PVOID64, IPhysicalEntity*)>(this, 0xD0)(this, pPhysEntity); }
};
 
Люди добрые, помогите найти "GetEntityIterator" и "GetEntityFromPhysics". Уже 2-й день ищу адреса и заменяю код(сделал в районе 30-40 попыток запуска). Код не проходит дальше этого:
struct CEntitySystem
{
public:
CEntityIt* GetEntityIterator() { return Call<CEntityIt* (__thiscall*)(PVOID64)>(this, 0xA8)(this); }
IEntity* GetEntityFromPhysics(IPhysicalEntity* pPhysEntity) { return Call<IEntity* (__thiscall*)(PVOID64, IPhysicalEntity*)>(this, 0xD0)(this, pPhysEntity); }
};
Так у тебя все валид. Ищи проблему в другом. Скинь, где вызываешь
 
Так у тебя все валид. Ищи проблему в другом. Скинь, где вызываешь
Его я прошел, теперь за той проблемой пошла новая. На этом этапе он не крашит игру.(Когда загружаешься в игру и начинается инициализация игрока и оружия)
Код:
Expand Collapse Copy
СGameRules* GetGameRules() {
Log11("Загрузка СGameRules:");
СGameRules* gameRules = Call<СGameRules * (__fastcall*)(PVOID)>(this, 0x448)(this);
Log11("Загружены СGameRules:");
return gameRules;
}
Либо тут:
Код:
Expand Collapse Copy
class СGameRules {
public:
    int RegisterHitMaterial(const char* materialName) {
        Log11("Загрузка СRulesHitMaterial:");
        return Call<int(__thiscall*)(PVOID64, const char*)>(this, 0x98)(this, materialName);
        Log11("Загружено СRulesHitMaterial:");
    } //CGameRules::RegisterHitMaterial
};
Код:
Expand Collapse Copy
auto pRules = sGameFramework->GetGameRules();                                                        
if (!pRules)
{
    Log("Ошибка загрузки pRules:");
    return;
}
Может и не из-за него, но основные оффы я сменил. И ещё, да, я копи-пастер, который собирает дерьмовую пасту. Но хочется уже чтобы она запустилась и убила хотя-бы двух ботов!
 
Последнее редактирование:
Его я прошел, теперь за той проблемой пошла новая. На этом этапе он не крашит игру.(Когда загружаешься в игру и начинается инициализация игрока и оружия)
Код:
Expand Collapse Copy
СGameRules* GetGameRules() {
Log11("Загрузка СGameRules:");
СGameRules* gameRules = Call<СGameRules * (__fastcall*)(PVOID)>(this, 0x448)(this);
Log11("Загружены СGameRules:");
return gameRules;
}
Либо тут:
Код:
Expand Collapse Copy
class СGameRules {
public:
    int RegisterHitMaterial(const char* materialName) {
        Log11("Загрузка СRulesHitMaterial:");
        return Call<int(__thiscall*)(PVOID64, const char*)>(this, 0x98)(this, materialName);
        Log11("Загружено СRulesHitMaterial:");
    } //CGameRules::RegisterHitMaterial
};
Код:
Expand Collapse Copy
auto pRules = sGameFramework->GetGameRules();                                                       
if (!pRules)
{
    Log("Ошибка загрузки pRules:");
    return;
}
Может и не из-за него, но основные оффы я сменил. И ещё, да, я копи-пастер, который собирает дерьмовую пасту. Но хочется уже чтобы она запустилась и убила хотя-бы двух ботов!
Итак, я видимо нашел проблему, и это:
Код:
Expand Collapse Copy
auto GetCurrentItem(bool includeVehicle = false) {
    Log11("Функция GetCurrentItem начата");
    IItem* currentItem = Call<IItem * (__thiscall*)(PVOID, bool)>(this, 464)(this, includeVehicle);
    Log11("Функция GetCurrentItem завершена");
    return currentItem;
}
Осталось только найти правильный адрес
 
Итак, я видимо нашел проблему, и это:
Код:
Expand Collapse Copy
auto GetCurrentItem(bool includeVehicle = false) {
    Log11("Функция GetCurrentItem начата");
    IItem* currentItem = Call<IItem * (__thiscall*)(PVOID, bool)>(this, 464)(this, includeVehicle);
    Log11("Функция GetCurrentItem завершена");
    return currentItem;
}
Осталось только найти правильный адрес

Чувак, вбей это в гугл "GetCurrentItem warface", открой самую первую строку, там тебе уже подробно расписали как искать индекс, затем скачай дизассемблер IDA Pro и почитай к нему документацию, и сделай поиск по строке. Все! Считай ты обновил. Пожалуйста, можешь не благодарить

Код:
Expand Collapse Copy
class СGameRules {
public:
    int RegisterHitMaterial(const char* materialName) {
        Log11("Загрузка СRulesHitMaterial:");
        return Call<int(__thiscall*)(PVOID64, const char*)>(this, 0x98)(this, materialName);
        Log11("Загружено СRulesHitMaterial:");
    } //CGameRules::RegisterHitMaterial
};

Виртуальная функция RegisterHitMaterial с vtbl CGameRules имеет индекс 936, а не 152

P.s. Не качай никакие сурсы из 2020-2024 годов, их делали школьники-гуманитарии из мбоу сош, качай исходники 2014-2019 от кодеров, разбирай их и на первое время возьми за основу. Изучай движок игры

Потом посмотри реализацию хитзапросов у ICoded'a, если они тебе так нужны
 
Последнее редактирование:
Чувак, вбей это в гугл "GetCurrentItem warface", открой самую первую строку, там тебе уже подробно расписали как искать индекс, затем скачай дизассемблер IDA Pro и почитай к нему документацию, и сделай поиск по строке. Все! Считай ты обновил. Пожалуйста, можешь не благодарить



Виртуальная функция RegisterHitMaterial с vtbl CGameRules имеет индекс 936, а не 152

P.s. Не качай никакие сурсы из 2020-2024 годов, их делали школьники-гуманитарии из мбоу сош, качай исходники 2014-2019 от кодеров, разбирай их и на первое время возьми за основу. Изучай движок игры

Потом посмотри реализацию хитзапросов у ICoded'a, если они тебе так нужны
Спасибо за правильно направление, очень ценю! Насчёт "школьники-гуманитарии" реально угранул, буду держать в курсе!
 
Виртуальная функция RegisterHitMaterial с vtbl CGameRules имеет индекс 936, а не 152
не строй из себя умного.
из твоего сообщения видно что индекс как раз таки 152, а 936 это оффсет виртуальной таблицы.

а если разобраться, то текущий индекс на это 117, а оффсет 0x3A8(936)

вместо RegisterHitMaterial вам нужен GetHitMaterialId индекс которого 118
 
Назад
Сверху Снизу