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

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

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

whyega52

Гений, миллионер, плейбой, долбаеб
Модератор
2,786
2,613
Как правильно закаставать импорт в сишную функцию?
IMG_20230915_143554_598.jpg
 

whyega52

Гений, миллионер, плейбой, долбаеб
Модератор
2,786
2,613
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 дня понял, что не то соглашение о вызове было....
 
Последнее редактирование:

whyega52

Гений, миллионер, плейбой, долбаеб
Модератор
2,786
2,613
Есть вмтракклиента, но не совсем понимаю, что делает первый ее метод, в данном случае: sub_10030F40
1695218850715.png

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

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

kin4stat

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

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

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

ARMOR

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

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

Ya Zaregalsya

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