Другое С/С++ Вопрос - Ответ

AnWu

https://t.me/anwublog
Всефорумный модератор
4,768
5,370
Что мешает использовать directx sdk?
 

loganhackerdff

Известный
868
519
я его и использую, хукаю Present, а для этого нужен указатель на девайс, я не могу его найти
Ребят, не думайте что я тупенький в этом, так и есть
 
Последнее редактирование:

ucciModd

Новичок
18
2
emulateGTAKey из сампфункса это функция игры? Если да, то какой её адрес?
 

Deprecation

Потрачен
7
25
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
emulateGTAKey из сампфункса это функция игры? Если да, то какой её адрес?
Не нашел ничего по этому поводу, но держи несколько ссылок - может помогут для достижения твоей цели.
 
  • Влюблен
Реакции: ucciModd

Deprecation

Потрачен
7
25
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
как можно сделать активацию на команду в asi?
C++:
#define SAMP_INPUT_INFO                0x21A0E8
#define SAMP_FUNC_REGISTERCMD          0x65AD0

BOOL RegisterChatCommand(LPCSTR sName, LPVOID lpvFunction)
{
  
    DWORD dwSAMPAddress = reinterpret_cast<DWORD>(GetModuleHandleA("SAMP.DLL"));
  
    if (dwSAMPAddress)
    {

        LPVOID lpvInputInfo = *reinterpret_cast<LPVOID *>(dwSAMPAddress + SAMP_INPUT_INFO);

        if (lpvInputInfo)
        {
          
            reinterpret_cast<VOID(__thiscall *)(LPVOID, LPCSTR, LPVOID)>(dwSAMPAddress + SAMP_FUNC_REGISTERCMD)
                (lpvInputInfo, sName, lpvFunction);

            return TRUE;

        }

    }

    return FALSE;

}

/*

    Example:

        LPVOID CommandHandler(LPCSTR sParams)
        {
            // sParams - command parameters.
        }

        RegisterChatCommand("CommandName", CommandHandler);

*/
 
  • Нравится
Реакции: whyega52 и loganhackerdff

ucciModd

Новичок
18
2
Сообщением ранее искал адрес памяти для клавиш гта и получил ответ. Выполнил следующий код:
C++:
while (bThread)
{
    *(int*)(0xB73458 + 0x3) = 255;
}
Все работает, но довольно часто останавливается, будто на микросекунду отжал клавишу
 

Deprecation

Потрачен
7
25
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Сообщением ранее искал адрес памяти для клавиш гта и получил ответ. Выполнил следующий код:
C++:
while (bThread)
{
    *(int*)(0xB73458 + 0x3) = 255;
}
Все работает, но довольно часто останавливается, будто на микросекунду отжал клавишу
Все из за цикла while, возникают несостыковки с основным циклом игры. Как я понял, ты для этих дел создаешь поток, но в твоем случае нужно хукнуть основной цикл игры, и там уже ставить статус клавише. Пример хука можно поглядеть вот тут:
 
  • Нравится
Реакции: ucciModd

ucciModd

Новичок
18
2
Все из за цикла while, возникают несостыковки с основным циклом игры. Как я понял, ты для этих дел создаешь поток, но в твоем случае нужно хукнуть основной цикл игры, и там уже ставить статус клавише. Пример хука можно поглядеть вот тут:
Теперь перестал воспроизводить нажатие, хотя любой другой код исполняется

C++:
SA->getSignals()->onLoop += [&]() {
    if (bTest)
        *(int*)(0xB73458 + 0x3) = 255;
};
 

ucciModd

Новичок
18
2
Смотри, когда ты присваиваешь 128 - ты зажимаешь клавишу, когда 0 - отжимаешь.
Можешь просто присвоить 128 и он у тебя вечно бежать будет.
Ну я понимаю, что 128 - воспроизведение клавиши, а 0 - отжатие. Если просто поставить 128, то он все равно на микросекунду остановится. А если делать 0/128, то он просто это делает по заданному времени
 

SR_team

like pancake
BH Team
4,802
6,474
Ну я понимаю, что 128 - воспроизведение клавиши, а 0 - отжатие. Если просто поставить 128, то он все равно на микросекунду остановится. А если делать 0/128, то он просто это делает по заданному времени
Попробуй писать еще и по этому адресу: 0x00B7358C