Вопрос Хуки

ППХУДЕР
Начинающий
Статус
Оффлайн
Регистрация
10 Фев 2020
Сообщения
406
Реакции[?]
23
Поинты[?]
6K
Я видел на разных форумах как кодят анти аимы и хочу сделать свои. Везде в их кодах я видел обращение к pCmd и покопавшись в инете, вроде понял что это хук createmove. Где можно его достать?
 
Участник
Статус
Оффлайн
Регистрация
6 Сен 2020
Сообщения
749
Реакции[?]
364
Поинты[?]
8K
Индекс createmove - 24
дальше уже смотри как в твоём сдк сделаны хуки и просто создавай такой же с этим индексом
 
ППХУДЕР
Начинающий
Статус
Оффлайн
Регистрация
10 Фев 2020
Сообщения
406
Реакции[?]
23
Поинты[?]
6K
Индекс createmove - 24
дальше уже смотри как в твоём сдк сделаны хуки и просто создавай такой же с этим индексом
Но у меня нет никакого сдк, я пока что сделал просто меню и glow. Мб можешь скинуть сдк и сам хук?
 
Пользователь
Статус
Оффлайн
Регистрация
22 Июн 2020
Сообщения
185
Реакции[?]
69
Поинты[?]
41K
Но у меня нет никакого сдк, я пока что сделал просто меню и glow. Мб можешь скинуть сдк и сам хук?
VMT.cpp
C++:
#include "VMT.h"
#include <Windows.h>


bool VMT::Init(void* base) {
    this->vmt_base = base;
    if (!this->vmt) {
        this->vmt = *reinterpret_cast<uintptr_t**>(base);
        return true;
    }
    return false;
}

void* VMT::Hook(int index, void* hk) {
    DWORD protect;
    auto address = this->vmt + index;
    uintptr_t og = *(uintptr_t*)address;
    VirtualProtect(address, sizeof(address), PAGE_EXECUTE_READWRITE, &protect);
    *address = (uintptr_t)hk;
    VirtualProtect(address, sizeof(address), protect, &protect);
    return (void*)og;
}
VMT.h
C++:
class VMT {
private:
    void* vmt_base;
    uintptr_t* vmt;
public:
    bool Init(void* base);
    void* Hook(int index, void* hooked);
};
мои хуки, работают замечательно
 
ППХУДЕР
Начинающий
Статус
Оффлайн
Регистрация
10 Фев 2020
Сообщения
406
Реакции[?]
23
Поинты[?]
6K
VMT.cpp
C++:
#include "VMT.h"
#include <Windows.h>


bool VMT::Init(void* base) {
    this->vmt_base = base;
    if (!this->vmt) {
        this->vmt = *reinterpret_cast<uintptr_t**>(base);
        return true;
    }
    return false;
}

void* VMT::Hook(int index, void* hk) {
    DWORD protect;
    auto address = this->vmt + index;
    uintptr_t og = *(uintptr_t*)address;
    VirtualProtect(address, sizeof(address), PAGE_EXECUTE_READWRITE, &protect);
    *address = (uintptr_t)hk;
    VirtualProtect(address, sizeof(address), protect, &protect);
    return (void*)og;
}
VMT.h
C++:
class VMT {
private:
    void* vmt_base;
    uintptr_t* vmt;
public:
    bool Init(void* base);
    void* Hook(int index, void* hooked);
};
мои хуки, работают замечательно
А ты можешь предоставить пример работы с ними?
 
Участник
Статус
Оффлайн
Регистрация
6 Сен 2020
Сообщения
749
Реакции[?]
364
Поинты[?]
8K
Эксперт
Статус
Оффлайн
Регистрация
14 Июл 2019
Сообщения
1,102
Реакции[?]
496
Поинты[?]
31K
Keine panik!
Эксперт
Статус
Оффлайн
Регистрация
29 Апр 2020
Сообщения
812
Реакции[?]
417
Поинты[?]
49K
хочу сделать свои
Хук CreateMove это лишь песчинка в современных антиаимах.
Антиаимы теперь сложнее чем были раньше, ты по прежнему откладываешь одну команду (чокаешь ее), а вторую отправляешь (вместе с ней в одном тике идет и первая), но есть большая разница.
Раньше сервер первую исполнял сам, вторую передавал клиентам, т.к. невары синхронизируются от последней, а при обновлении состоянии анимации стояло ограничение на обновление раз в тик, это давало абсолютно независимые углы, которые было просто контролировать, это называлось фейк углы.
Затем валв таки обновили код чтобы пофиксить это, и убрали ограничение, так что сервер стал выполнять обе команды, а синхронизировать клиентам только последнюю, благодаря этому все еще есть разница между клиентами и сервером, но это называется уже десинк, с ним все стало гораздо сложнее, т.к. у него есть ограничения связанные с макс дельтой и его нужно контролировать.
В общем тебе нужно изучать код игры
Пожалуйста, авторизуйтесь для просмотра ссылки.
как она просчитывает состояние анимации.
 
Пользователь
Статус
Оффлайн
Регистрация
28 Апр 2018
Сообщения
540
Реакции[?]
130
Поинты[?]
2K
Хук CreateMove это лишь песчинка в современных антиаимах.
Антиаимы теперь сложнее чем были раньше, ты по прежнему откладываешь одну команду (чокаешь ее), а вторую отправляешь (вместе с ней в одном тике идет и первая), но есть большая разница.
Раньше сервер первую исполнял сам, вторую передавал клиентам, т.к. невары синхронизируются от последней, а при обновлении состоянии анимации стояло ограничение на обновление раз в тик, это давало абсолютно независимые углы, которые было просто контролировать, это называлось фейк углы.
Затем валв таки обновили код чтобы пофиксить это, и убрали ограничение, так что сервер стал выполнять обе команды, а синхронизировать клиентам только последнюю, благодаря этому все еще есть разница между клиентами и сервером, но это называется уже десинк, с ним все стало гораздо сложнее, т.к. у него есть ограничения связанные с макс дельтой и его нужно контролировать.
В общем тебе нужно изучать код игры
Пожалуйста, авторизуйтесь для просмотра ссылки.
как она просчитывает состояние анимации.
Забей, человек тебя не слышит:roflanBuldiga:
 
Сверху Снизу