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

мистер вселенная

Известный
22
4
всем привет! есть загрузка txd, грузит все отлично, но бывает, что игра периодически зависает при загрузке этого тхд (повторная попытка захода все решает). есть идеи?
 

why ega

РП игрок
Модератор
2,554
2,246
Как правильно закаставать импорт в сишную функцию?
IMG_20230915_143554_598.jpg
 

why ega

РП игрок
Модератор
2,554
2,246
C++:
auto recvfrom = *reinterpret_cast<int (__stdcall**)(                   )>(0x100e542c);
а, видимо я что-то сделал не так при вызове, раз у меня все было также

с чем может быть связан краш игры после подгрузки bass.dll
C++:
HMODULE WINAPI LoadLibraryAHooked(const decltype(LoadLibraryAHook)& hook, _In_ LPCSTR lpLibFileName) {
    HMODULE libraryHandle = hook.get_trampoline()(_In_ lpLibFileName);
   
    if (libraryHandle == NULL)
        return libraryHandle;

    MessageBoxA(NULL, lpLibFileName, "LOAD LIB", MB_OK); // дебагер1337
   
    if (lpLibFileName == "MoonLoader.asi") {      
        setURLDownloadToFileAHook(libraryHandle);
        LoadLibraryAHook.remove();                      
    }

    return libraryHandle;  
}


void initializePlugin() {  
    HMODULE moonHandle = GetModuleHandleA("MoonLoader.asi");
    if (moonHandle != NULL) {
        setURLDownloadToFileAHook(moonHandle);
    } else {
        HMODULE kernelHandle = GetModuleHandleA("kernel32.dll");
        if (kernelHandle != NULL) {          
            LPVOID pvLoadLibrary = GetProcAddress(kernelHandle, "LoadLibraryA");
            if (pvLoadLibrary != NULL) {
                LoadLibraryAHook.set_dest(pvLoadLibrary);
                LoadLibraryAHook.set_cb(&LoadLibraryAHooked);
                LoadLibraryAHook.install();
            }
        }  
    }      
}
upd: Спустя 2 дня понял, что не то соглашение о вызове было....
 
Последнее редактирование:

why ega

РП игрок
Модератор
2,554
2,246
Есть вмтракклиента, но не совсем понимаю, что делает первый ее метод, в данном случае: sub_10030F40
1695218850715.png

функция, в которую можно перейти спустя несколько оберток:
1695218992072.png

off_100D52E8 - та переменная, которая хранит в себе указатель на функцию из первого скрина
 

kin4stat

mq-team · kin4@naebalovo.team
Всефорумный модератор
2,731
4,714
Есть вмтракклиента, но не совсем понимаю, что делает первый ее метод, в данном случае: sub_10030F40
Посмотреть вложение 215588
функция, в которую можно перейти спустя несколько оберток:
Посмотреть вложение 215589
off_100D52E8 - та переменная, которая хранит в себе указатель на функцию из первого скрина
виртуальный деструктор
 
  • Нравится
Реакции: why ega

мистер вселенная

Известный
22
4
всем привет! получаю cped из айди игрока (samp), но при каких-либо манипуляциях с возвращаемым спед - краш. что может быть?
1695299170097.png
 
Последнее редактирование:

ARMOR

kjor32 is legend
Модератор
4,852
6,083
( Не актуально )
При вызове опкода 0165: в сампе цвет блипа берется из цвета клиста игрока чей ид укажешь вместо указания HEX цвета. Есть ли возможность менять цвет блипа через HEX цвет вместо клиста?

Решение: Юзать не самповскую функцию вызова опкодов, а игровую, например из Plugin SDK
 
Последнее редактирование:
  • Ха-ха
Реакции: Ya Zaregalsya

Ya Zaregalsya

Известный
370
127
В каких случаях отправляется такой тип буллет синхры?: BULLET_HIT_TYPE_PLAYER_OBJECT (4 id).